Viking

Members
  • Content Count

    483
  • Joined

  • Last visited

  • Days Won

    22

Viking last won the day on December 6 2021

Viking had the most liked content!

Community Reputation

48 Excellent

About Viking

  • Rank
    Senior Member

Converted

  • Site
    https://discord.gg/wDV8Eeu

Recent Profile Visitors

2258 profile views
  1. loop through all players and either suicide them (if you don't care about the kills counting towards the nuke launcher), or call the damage function on them.
  2. sounds are usually inside the iwd files which are just renamed zip extensions. some people directly compile sound into the ff files but that's really uncommon because then the file size explodes pretty fast. However, there is a ff decompiler for cod5 to extract these kind of sounds, maybe it works for cod4 too. https://wiki.zeroy.com/index.php?title=Call_of_Duty_5:_FastFile_Decompiler
  3. use hud.label with localized strings if possible, they don't count towards the configstring limit. like instead of hud setText("hello World") ; you can do hud.label = &"hello World"; this also works with single variables, like hud.label = &"Money: &&1"; hud setValue(100); However to set string variables into the label you (again) need setText()
  4. well, team should obviously be defined as the team that should see the icons. in your case the opposite team of the camper.
  5. use newTeamHudElem( team ); instead of newHudElem();
  6. Sorry for the late reply. I did some tests myself and noticed that you don't even have to spawn a new trigger, you can move the existing ones :) here is a very fast script which does your job, just add the locations of the desired maps to the switch statement. Backlot is just an example and should not be used. setNewBombZoneLocation(zoneId, trigger, visuals) { newLocation = []; switch(level.script) { case "mp_backlot": newLocation[0] = (-1211, -239, 294); newLocation[1] = (-196, -36, 112); break; case "mp_mapname": newLocation[0] = (-1211, -239, 294); newLocation[1] = (-196, -36, 112); break; default: return; } curLocation = trigger.origin; //move the bombzone radius trigger to the new location if(isDefined(newLocation[zoneId])) trigger.origin = newLocation[zoneId]; //move the visual model to the new location for(i=0;i<visuals.size;i++) { offset = curLocation - visuals[i].origin; visuals[i].origin = newLocation[zoneId] + offset - (0,0,40); //40 is the half of the height of the default bomb zone trigger } //find the blockers of the bombzone and move them to the new location brushmodels = getEntArray("script_brushmodel", "classname"); for(i=0;i<brushmodels.size;i++) { if(isDefined(brushmodels[i].script_gameobjectname) && brushmodels[i].script_gameobjectname == "bombzone") { if(Distance(brushmodels[i].origin, curLocation) <= 200) { offset = curLocation - brushmodels[i].origin; brushmodels[i].origin = newLocation[zoneId] + offset; } } } } I am calling the code from the script in sd.gsc where the bombzones are created. In default sd.gsc this is at line 520+ level.bombZones = []; bombZones = getEntArray( "bombzone", "targetname" ); for ( index = 0; index < bombZones.size; index++ ) { trigger = bombZones[index]; visuals = getEntArray( bombZones[index].target, "targetname" ); setNewBombZoneLocation(index, trigger, visuals); //and so on...
  7. The bombzone entities are identified by their targetname. The prefab in map: https://github.com/promod/CoD4-Mod-Tools/blob/master/map_source/prefabs/MP/sd_bombzone_nuke_a.map The code snippet loading the bombzones: https://github.com/promod/CoD4-Mod-Tools/blob/7e538c6632a5f2311a2a16f86e5b6786b4e65d16/raw/maps/mp/gametypes/sd.gsc#L517 As mentioned above the trigger (drop zone) is used for the identification of the whole bombzone. let me know when you need further help, should not be much work to modify the script.
  8. the bombzone itself is an entity (trigger_use_touch) and the clip of the bombzone is a script_brushmodel. the model is a script_model. So moving the bombzones to a new location should be possible. What i am not sure about is the trigger, you might have to delete the existing trigger and spawn a new one at the new location.
  9. Viking

    System

    are you using the latest files?
  10. Just a shot into the blue because i did not check the Scripts. cant you increase the intermission time to show the scoreboard for a longer time? scr_intermission_time
  11. This is not a bug of cod4 or cod4x. It's simply the end of the arm model, which got visible because you play with a changed field of view setting. Reduce your field of view and it's gone. I am not sure if there is a setting in the options menu, if not then type /cg_fov into the console. default is 65 iirc
  12. Try to disable the mouse raw input in the control settings.
  13. Viking

    System

    I don't think so because of some reasons: It would destroy the core intention of the vote -> predefined votes are not dynamic anymore Predefined votes would not consider all maps in your rotation, especially not when you change the runtime while the server is already running When the iwds are stored in the mod folder it's wasting a lot of space and at the end it would not work because of two reasons the game stores all loaded iwds in a dvar that is used to check the hash to find out if it requires a (re-)download. the lentgh of any dvar string is limited and might not cover all iwds in the end the game loads iwds in alphabetical order, so the content of mvcrash.iwd is ignored when there is a mvconvoy.iwd When the iwds are stored outside the modfolder it won't work either because of the sv_pure dvar. All clients with an additional iwd (let's say mvcrash.iwd) would be kicked when the server is using mvconvoy.iwd I don't see a problem with the upload/download on every new map because the size of the mapvote.iwd is quite small. With the original loadscreen images of cod4 stock maps i get a size of 3-4 MB which is nowadays a download of a few seconds. If you want to lower the size you can change the resolution of the loadscreen images at any time. Also, servers nowadays usually come without a traffic limit. I agree that the short lag (connection interrupt) when the new iwd is zipped and uploaded is annoying, but to be honest i don't know how to tell the plugin to run the function as a new thread. Maybe anybody knows and can fix this issue. If not then that short lag should not really be a problem because for me it lasts about 1-2 seconds only at a point where it's not interrupting any gameplay. Thanks for your feedback and suggestions so far
  14. Viking

    System

    I think i found a way to handle the upload to a fastdl that is running on a different server and/or ip. Please try the new scripts, don't forget to update your config as well. I forgot to upload the material sources to allow others to add it to their mod projects. I am sorry about that and will upload the missing files in a minute, as well as an updated readme that tells you how to add it to your mod.