Login x
User Name:
Password:
Social Links Facebook Twitter YouTube Steam RSS News Feeds

Members Online

»
0 Active | 93 Guests
Online:

LATEST FORUM THREADS

»
CoD: Battle Royale
CoD+UO Map + Mod Releases
Damaged .pk3's
CoD Mapping
heli to attack ai
CoD4 SP Mapping

Call of Duty

»
Share |

Support for CoD Modders?

Posted by StrYdeR in Call of Duty on Sep 18, 2004
It seems that Gray Matter has put out a little FAQ to help with the transition to Call Of Duty United Offensive. It is not much - but at the same time it is more than IW ever gave us

Call of Duty™: United Offensive™ Mod FAQ (v0.1)

 The purpose of this FAQ is to help map makers/modders who are currently working with multiplayer Call of Duty™ to migrate over to Call of Duty™: United Offensive™. This FAQ is most likely incomplete since it is being written at the end of our year long development cycle and I do not remember all of the changes that we have made over the course of the year. I am going to try to update this as I hear more specifically what people are interested in knowing. 

Index:

1. Whats New

2. cvars

 2.1 Code cvars

 2.2 Script cvars

 2.2.1 Common script cvars

 2.2.2

 2.2.3 Vehicle cvars

 2.2.4 Base Assault cvars

 2.2.5 Capture the Flag cvars

 2.2.6 Domination cvars

 3. Mapping

 3.1 LMG mount areas

 3.2 Vehicles

 4. Scripting

 5. Weapons

 5.1 Weapon Types

 5.1 Weapon Settings Changes

 5.1.1 Bullet Weapons

 6. Modeling

 6.1 Weapons

 6.2 Vehicles

 6.3 Characters

 7. Animating

 7.1 Weapons

 7.2 Vehicles

 7.3 Characters

1. Whats New:

 

9/14/04: (whats new in Call of Duty: United Offensive)

· Sounds:

Changed the way sounds are loaded for the game. Instead of loading all sound alias files and determining which sound aliases should be loaded from the loadspec column a new loadspec csv was introduced to determine which sound alias files should be looked at. These can be found in the soundloadspecs folder. 

· Weapons:

Upped the maximum weapon limit to 128. Call of Duty: United Offensive is currently using about 64. Weapons have been modified so you are going to have to update your weapon files with the new fields. You will need new weapon gdf’s and converter to make these files.

· Scripting:

Some of the base script files (_team.gsc, etc.) have been modified so if you have made a new one for original Call of Duty you are going to need to change over to the new version. Several new script commands have been added.

· CVARS:

Several new cvars have been added. Look here for information on the additions.

· Downloading:

HTTP redirect has been added. Having a pak file with “_svr_” in the name will prevent the client from downloading it.

· Menu Files:

  Upped the limit of in game menu files to 100. Call of Duty: United Offensive is using around 64 of these.

2. cvars

2.1 Code cvars

cg_tracerchanceLMG [percent] – Controls the frequency of tracers for light machine guns and vehicle weapons.

cg_tracerwidthLMG [size] – Sets the width of the tracers for light machine guns and vehicle weapons.

cg_tracerlengthLMG [size] – Sets the length of the tracers for light machine guns and vehicle weapons.

cg_tracerNightScale [percent] – Sets the scaling of all of the night time versions of the tracers. Will only be used if sv_night is set to 1 for the map in question.

cl_autocmd [0/1] – If this is zero then anything typed in the console will be treated a “say”. If this is 1 (default) then anything typed in the console will be treated as a command.

g_allowvotemaprestart [0/1] – If set to true then clients can vote on map restart. Defaults on.

g_allowvotemaprotate [0/1] – If set to true then clients can vote on rotating to the next map. Defaults on.

g_allowvotetypemap [0/1] – If set to true then clients can vote on changing the gametype and map (using the “/vote typemap” command or the vote menu). Defaults on.

g_allowvotemap [0/1] – If set to true then clients can vote on changing the map (using the “/vote map” command or the vote menu). Defaults on.

g_allowvotegametype [0/1] – If set to true then clients can vote on changing the gametype (using the “/vote g_gametype” command). Defaults on.

g_allowvotekick [0/1] – If set to true then clients can vote on kicking a client (using the “/vote kick” command or the vote menu). Defaults off.

g_allowvoteclientkick [0/1] – If set to true then clients can vote on kicking a client by id(using the “/vote clientkick” command). Defaults off.

g_allowvotetempbanuser [0/1] – If set to true then clients can vote on temporarily banning a player (using the “/vote tempbanuser” command or the vote menu). Defaults off.

g_allowvotetempbanclient [0/1] – If set to true then clients can vote on temporarily banning a player (using the “/vote tempbanclient” command). Defaults off.

g_inactivityspectator [secs]– Functions the same as g_inactivity except is works for spectators. When this cvar is set to some number of seconds any spectator who is idle for that period of time will automatically be kicked from the server. Zero (default) is off.

sv_wwwDownload [0/1] – Turns on and off http/ftp client downloading. Off is default.

sv_wwwDlDisconnected [0/1] – If on then clients will be disconnected from the server when they are performing a http/ftp download. The client will automatically reconnect when downloading is done.

sv_wwwBaseURL [http/ftp URL] – This is the url the clients will use to download map/mod paks. The url needs to point to a directory one directory below the directory where the pak files are kept.

sv_night [0/1] – This controls the current map being treated as a night map or not. Night maps get bigger tracers. Nighttime maps should set this cvar in their gsc file.

sv_obituary [0/1]– This allows the server to control the clients seeing obituary (death/kill) notifications. Default is on.

 2.2 Script cvars

 2.2.1 Common script cvars

 

scr_battlerank [0/1] – Turns battle rank on and off. Default is on.

scr_drawfriend [0/1] – When battle rank is on this shows the rank symbols over the head of all of your teammates. If battle rank is off it shows the team icon as in original Call of Duty. Default is on.

 scr_drophealth [0/1] – If drop health is on then when a player is killed health will be dropped. Default is on.

 scr_shellshock [0/1] – If this is on then explosions will cause the shell shock effect. Default is on.

 2.2.2 Weapon cvars

 

scr_allow_gewehr43 [0/1] – Allows the Gewehr 43 to be used. Defaults on.

scr_allow_svt40 [0/1] – Allows the Tokarev SVT40 to be used. Defaults on.

scr_allow_30cal [0/1] – Allows the M1919A6 .30 cal to be used. Defaults on.

scr_allow_mg34 [0/1] – Allows the MG34 to be used. Defaults on.

scr_allow_dp28 [0/1] – Allows the Degtyarev DP28 to be used. Defaults on.

scr_allow_panzerschreck [0/1] – Allows the Panzerschreck to be used. Defaults on.

scr_allow_bazooka [0/1] – Allows the Bazooka to be used. Defaults on.

scr_allow_artillery [0/1] – Allows the artillery strikes to be used. Defaults on.

scr_allow_grenades [0/1] – Allows the grenades to be used. Defaults on.

scr_allow_smoke [0/1] – Allows the smoke grenades to be used. Defaults on.

scr_allow_satchel [0/1] – Allows the satchel charge to be used. Defaults on.

scr_allow_pistols [0/1] – Allows pistols to be used. Defaults on.

scr_allow_flamethrower [0/1] – Allows the flamethrower to be used. Defaults on.

 2.2.3 Vehicle cvars

 

 scr_allow_willyjeep [0/1] – Allows the American jeep to be used. Defaults on.

 scr_allow_gaz67b [0/1] – Allows the Russian jeep to be used. Defaults on.

 scr_allow_horch [0/1] – Allows the German car to be used. Defaults on.

 scr_allow_sherman [0/1] – Allows the American tank to be used. Defaults on.

 scr_allow_t34 [0/1] – Allows the Russian tank to be used. Defaults on.

 scr_allow_panzeriv [0/1] – Allows the German tank to be used. Defaults on.

 scr_allow_elefant [0/1] – Allows the German heavy tank to be used. Defaults on.

 scr_allow_su152 [0/1] – Allows the Russian heavy tank to be used. Defaults on.

 scr_allow_flak88 [0/1] – Allows the Flak88 to be used. Defaults on.

 2.2.4 Base Assault cvars

 

scr_bas_clearscoreseachround [0/1] – If set to 1 (default) the player scores will reset each round (also resets the rank). If 0 the scores will carry over to the next round.

scr_bas_endrounddelay [seconds] – Delay at the end of the round before the next round starts.

scr_bas_respawn_wave_time [seconds] – How long from when the first person who dies on a team to when everyone who is currently dead respawns.

scr_bas_roundlength [seconds] – Time allowed to play during one round before round ends.

scr_bas_roundlimit [count] – Amount of rounds on one map allowed before map automatically rotates.

scr_bas_scorelimit [count] – Maximum team score allowed before map automatically rotates.

scr_bas_startrounddelay [seconds] – Delay before round starts when there is at least one person on each team.

scr_bas_timelimit [seconds] – Time allowed to play on one map before map automatically rotates.

 

 2.2.5 Capture the Flag cvars

 

scr_ctf_clearscoreseachround [0/1] – If set to 1 (default) the player scores will reset each round (also resets the rank). If 0 the scores will carry over to the next round.

scr_ctf_endrounddelay [seconds] – Delay at the end of the round before the next round starts.

scr_ctf_roundlength [seconds] – Time allowed to play during one round before round ends.

scr_ctf_roundlimit [count] – Amount of rounds on one map allowed before map automatically rotates.

scr_ctf_scorelimit [count] – Maximum team score allowed before map automatically rotates.

scr_ctf_showoncompass [seconds] – If this is set then after the given number of seconds the flag positions will appear on the radar ala Behind Enemy Lines. Default is 0 (off).

scr_ctf_startrounddelay [seconds] – Delay before round starts when there is at least one person on each team.

scr_ctf_timelimit [seconds] – Time allowed to play on one map before map automatically rotates.

 

 2.2.6 Domination cvars

 

scr_dom_clearscoreseachround [0/1] – If set to 1 (default) the player scores will reset each round (also resets the rank). If 0 the scores will carry over to the next round.

scr_dom_endrounddelay [seconds] – Delay at the end of the round before the next round starts.

scr_dom_respawn_wave_time [seconds] – How long from when the first person who dies on a team to when everyone who is currently dead respawns.

scr_dom_roundlength [seconds] – Time allowed to play during one round before round ends.

scr_dom_roundlimit [count] – Amount of rounds on one map allowed before map automatically rotates.

scr_dom_scorelimit [count] – Maximum team score allowed before map automatically rotates.

scr_dom_startrounddelay [seconds] – Delay before round starts when there is at least one person on each team.

scr_dom_timelimit [seconds] – Time allowed to play on one map before map automatically rotates.

 

3. Mapping

 

No major changes have been made in regards to mapping. There are a few new things to consider when making maps but for the most part it is the same.

 3.1 LMG mount areas

 

There are two new common textures for LMG setup areas, one for standing and one for crouching. Anywhere you would like a player to be able to set up a LMG you just need to create a brush to signify that the gun can be setup in this spot. The players will get an icon when they enter into these areas. Care should be taken with the placement and size of these brushes, as it is best if they are only allowed to set up on an object and not in space somewhere around the object. The point on the player that needs to be inside of this brush before the player can setup is a point about 16 units in front of the player. This is to allow you to directionalize the setup. You should be careful not to make the brush to high as it may allow the player to stand on the object and still be able to setup in a standing or crouching pose. This can look rather silly to say the least.

 3.2 Vehicles

 

There is not much that needs to be done to add vehicles to a map. You just need to add a script_vehicle entity to the map and set its model and vehicletype. You can look in the vehicles subdirectory to find valid vehicletype names. Unfortunately the vehicles have to be compiled into the map and cannot be spawned on the fly in script. This is due to the collision hulls needing to be in the BSP.

4. Scripting

There is quite a lot of new scripting functionality, which has been added. Too much for me to go into or remember right now. Hopefully sometime soon I can compile a list of the new script functions. If you are interested in the changes the best way to know what is new/different is to look through the script files in the maps\mp and maps\mp\gametypes directory. You should be aware however that if you have a mod which has modified any of the base multiplayer script files (_teams.gsc, _loadout.gsc, etc.) that you will have to update/redo your files to take into account changes that were made in UO.

 Here are a couple useful things, which I can remember right now:

- Added the ability to know when a script_model is being shot at/damaged. If you use the new settakedamage([0/1]) function the model will send out damage notifies when it has been shot. The model will NOT do any form of health or dying. If you want this functionality you will have to implement it yourself in script. A good example of this is the bases in Base Assault. 

- Several more parameters are now returned on the damage notify. Now the damage notify will return the amount, the attacker, the direction of damage, the point of damage, the mod (means of death), and the inflictor (not necessarily the same as the attacker). If you look in maps\mp\_tankdrive_gmi.gsc you can see examples of this new functionality.

- script_gameobjectname – This cvar has been modified to allow multiple gametypes to be specified. If for example you had a script_model set with “script_gameobjectname tdm dom” then the script_model would be deleted in every game type except for tdm and dom.

- You can now modify the hud elements UV coordinates on the right hand edge and the bottom. There are now two more optional parameters at the end of the setshader command. Look at maps\mp\gametypes\dom.gsc for an example of how this is used. The domination icons at the bottom of the screen use this.

5. Weapons

Weapons have been fairly heavily changed. If you have already setup your own weaponsettings_mp.gdt file you will need to remake it using the Call of Duty: United Offensive version as a template. Several new weapon types and a bunch of new fields have been added. Major changes to the bullet weapons include a damage falloff over distance scheme, different accuracies for all ads stances, and different sets of particles for different weapon types.

 5.1 Weapon Types

Two new weapon types have been added in Call of Duty: United Offensive:

- gasweapon – For flamethrowers.

- spotterweapon – For binoculars.

 5.1 Weapon Settings Changes

 5.1.1 Bullet Weapons

 

- ammotype – This allows you to specify what type of particle effects get played for the weapon. Instead of having just large and small bullet effect types we changed it so there are now a different set of particle effects for each weapon class (pistol, rifle, smg, lmg).

- damageInnerRadius – This is part of the damage fall off over distance scheme. Inside of this radius the weapon does full damage. The damage fall off is linear between the inner and outer radius.

- damageOuterRadius – This is part of the damage fall off over distance scheme. Outside of this radius the weapon does minimum damage. The damage fall off is linear between the inner and outer radius.

- minDamagePercent – This is part of the damage fall off over distance scheme. This the percentage of the damage that is the minimum damage that the weapon will do. Outside of the damageOuterRadius this is the damage that will be applied.

- lmgDeployedAnim – This is the first person idle animation that is used when you are deployed with a lmg.

- lmgDeployAnim – This is the first person animation used when a player is deploying a lmg.

- lmgBreakdownAnim – This is the first person animation used when a player is breaking down a lmg.

- adsSpread – This is the minimum spread value used when the player is standing ads.

- adsSpreadDucked – This is the minimum spread value used when the player is crouching ads.

- adsSpreadProne – This is the minimum spread value used when the player is prone ads.

- adsSensitivity – This is a scalar that gets applied to the mouse movement when the weapon is in ads.

- pickupModel – Optional model specified for the weapon while it is lying on the ground. If no model is specified the model will default to the world model.

- loopFireSound – Optional looping sound which can be use while firing instead of the fireSound. This is for machine guns that sound better looping.

- stopFireSound – This is the tail end of the loop sound which gets played after the firing is done.

- deploySound – The sound that gets played on an LMG when deploying.

- breakdownSound – The sound that gets played on an LMG when breakingdown.

- sprintMoveF – This is the amount the first person gun model will be moved forward while sprinting.

- sprintMoveR – This is the amount the first person gun model will be moved right while sprinting.

- sprintMoveU – This is the amount the first person gun model will be moved up while sprinting.

- sprintRotF – This is the amount the first person gun model will be rotated forward while sprinting.

- sprintRotR – This is the amount the first person gun model will be rotated right while sprinting.

- sprintRotU – This is the amount the first person gun model will be rotated up while sprinting.

- sprintMoveMinSpeed – This is the minimum speed at which the gun will move to its offsets while sprinting.

- sprintRotMinSpeed – This is the minimum speed at which the gun will rotate to its offsets while sprinting.

 5.1.2 Grenade Weapons

 

- minDamagePercent – This really has no meaning for the grenades and is simply there to provide the code with a default of 100 percent damage.

- vehiclescale – This gets applied to the damage done against a vehicle. This allows you to make a grenade more or less damaging to vehicles.

- takedamage – This means that the grenade will blow up when shot if set to 1.

- adsSensitivity – This really has no meaning for the grenades and is simply there to provide the code with a default of 100 percent.

- pickupModel – Optional model specified for the weapon while it is lying on the ground. If no model is specified the model will default to the world model.

- cloth – Specifies that the grenade is cloth (satchel) and causes it to use a different bounce sound.

- sprintMoveF – This is the amount the first person gun model will be moved forward while sprinting.

- sprintMoveR – This is the amount the first person gun model will be moved right while sprinting.

- sprintMoveU – This is the amount the first person gun model will be moved up while sprinting.

- sprintRotF – This is the amount the first person gun model will be rotated forward while sprinting.

- sprintRotR – This is the amount the first person gun model will be rotated right while sprinting.

- sprintRotU – This is the amount the first person gun model will be rotated up while sprinting.

- sprintMoveMinSpeed – This is the minimum speed at which the gun will move to its offsets while sprinting.

- sprintRotMinSpeed – This is the minimum speed at which the gun will rotate to its offsets while sprinting.

 5.1.3 Projectile Weapons

 

- damageInnerRadius – This is part of the damage fall off over distance scheme. Inside of this radius the weapon does full damage. The damage fall off is linear between the inner and outer radius.

- damageOuterRadius – This is part of the damage fall off over distance scheme. Outside of this radius the weapon does minimum damage. The damage fall off is linear between the inner and outer radius.

- minDamagePercent – This is part of the damage fall off over distance scheme. This the percentage of the damage that is the minimum damage that the weapon will do. Outside of the damageOuterRadius this is the damage that will be applied.

- adsSpread – This is the minimum spread value used when the player is standing ads.

- adsSpreadDucked – This is the minimum spread value used when the player is crouching ads.

- adsSpreadProne – This is the minimum spread value used when the player is prone ads.

- adsSensitivity – This is a scalar that gets applied to the mouse movement when the weapon is in ads.

- adsSensitivity – This really has no meaning for the grenades and is simply there to provide the code with a default of 100 percent.

- pickupModel – Optional model specified for the weapon while it is lying on the ground. If no model is specified the model will default to the world model.

- cloth – Specifies that the grenade is cloth (satchel) and causes it to use a different bounce sound.

- sprintMoveF – This is the amount the first person gun model will be moved forward while sprinting.

- sprintMoveR – This is the amount the first person gun model will be moved right while sprinting.

- sprintMoveU – This is the amount the first person gun model will be moved up while sprinting.

- sprintRotF – This is the amount the first person gun model will be rotated forward while sprinting.

- sprintRotR – This is the amount the first person gun model will be rotated right while sprinting.

- sprintRotU – This is the amount the first person gun model will be rotated up while sprinting.

- sprintMoveMinSpeed – This is the minimum speed at which the gun will move to its offsets while sprinting.

- sprintRotMinSpeed – This is the minimum speed at which the gun will rotate to its offsets while sprinting.

 5.1.1 Turret Weapons

 

- ammotype – This allows you to specify what type of particle effects get played for the weapon if this is a bullet weapon. Instead of having just large and small bullet effect types we changed it so there are now a different set of particle effects for each weapon class (pistol, rifle, smg, lmg).

- projExplosionType – This allows you to specify what type of particle effects get played for the weapon if this is a projectile weapon. There is a different set of particle effects for each projectile weapon type (none, grenade, rocket, mortar, artillery).

- damageInnerRadius – This is part of the damage fall off over distance scheme. Inside of this radius the weapon does full damage. The damage fall off is linear between the inner and outer radius.

- damageOuterRadius – This is part of the damage fall off over distance scheme. Outside of this radius the weapon does minimum damage. The damage fall off is linear between the inner and outer radius.

- minDamagePercent – This is part of the damage fall off over distance scheme. This the percentage of the damage that is the minimum damage that the weapon will do. Outside of the damageOuterRadius this is the damage that will be applied.

- minSpread – This is the minimum spread value used applied to the weapon. The spread will be somewhere randomly between the min and max.

- maxSpread – This is the maximum spread value used applied to the weapon. The spread will be somewhere randomly between the min and max.

- projectilemodel – This is the model which gets used for the projectile.

- turret_fov – This sets the players FOV while they are on the turret.

- fireHeat – This is how much heat percentage get added each time the gun gets fired. When the gun reaches 100 percent the gun will no longer fire.

- cooldownRate – This is how quickly the gun will cool off.

6. Modeling

 6.1 Weapons

Weapons for the most part remain the same. The only change is now you can specify a pickup model as well as a world model for third person use. The pickup model will be used to represent the weapon when it is on the ground. If no pickup model is defined then the game will default to using the world model as before.

 6.2 Vehicles 

 

Vehicles require several new nodes/tags in addition to the original Call of Duty single player vehicle skeleton. Not every tag needed is listed below. All original Call of Duty sp tags/bones are also needed in the vehicles (wheels, turret, etc).

“tag_aimdownbarrel” – Optional tag. This is that tag that is used on the artillery pieces for the ads view on the gun. Otherwise the view defaults to “tag_barrel”.

“tag_coaxel” – This is for the drivers melee machine gun on tanks.

“tag_secondary_view” – Optional tag. This is for the machine gun mounted on top of the tanks or the 4 wheel vehicles. This represents the view position of the gunner. If this is not specified then the view defaults to a fixed offset from the tag the gunner is attached to.

“tag_secondary_base” - This is the point the gunner player model is attached to on the 4 wheel vehicles.

“tag_secondary_player” – This is the point the gunner player model is attached to on the tanks.

“tag_secondary_gun” – This is the rotation point for the gunner gun. The gun mesh should be attached to this so it can be correctly rotated.

“tag_passenger” – This is the point where the passenger is attached. This tag is only necessary if you plan on allowing a passenger in the vehicle (other then the gunner).

“tag_turret” – This is the point that the driver is attached to in the 4 wheel vehicles and artillery.

“tag_chasecam” – This is the camera point for the third person vehicle camera.

“tag_flash” – This is the point where the particle effect plays for the main gun on the tanks. 

“tag_altfire” – This is the point where the particle effect plays for the driver melee gun on the tanks.

“tag_secondary_flash” – This is the point where the particle effect plays for the gunner gun on the tanks and 4 wheel vehicles.

Please let me know if any of the preceding is incorrect. It has been a while and there are so many tags I am getting confused just trying to write this doc. J

 6.3 Characters

 

There are no changes from Call of Duty.

 

7. Animating

 

For the most part the animations are exactly the same as in Call of Duty. There are a few differences in regards to the new weapons and the vehicles.   

 

7.1 Weapons

 

The new LMG (mg34) and spotter weapon (binoculars) types do not follow the standard format for animating weapon viewmodels. First there are no ads animations for these weapon types. Three new animations have been added to complete the functionality of these weapon types:

 lmgDeployAnim - Used when the gun is being set up or in the case of the binoculars it raises them to the eyes.

 lmgBreakdownAnim – Used when the gun is being broken down or undeployed.

 lmgDeployedAnim – Idle animation which is used while the gun is deployed.

 7.2 Vehicles

The vehicles do not animate. The passengers who are visible in the vehicle are animated however. You can see examples of the way the animations are set up by looking in the “multiplayer.atr” file, which is located in the animtrees directory. This file can be loaded with a text editor.

7.3 Characters

The only new thing for character animation are the new weapon classes (LMG and spotter) and the deploy and breakdown animations. You can see examples of the way the animations are set up by looking in the “multiplayer.atr” file, which is located in the animtrees directory. This file can be loaded with a text editor.

 

Latest Syndicated News

»
Codutility.com up and runn...
Nice, and there still using the logo and template for the screenshots, which...
Codutility.com up and runn...
dundy writes...Quote:Call of Duty modding and mapping is barly alive only a ...
Codutility.com up and runn...
Mystic writes...Quote:It seems to me the like the site is completely dead? ...
Codutility.com up and runn...
It seems to me the like the site is completely dead?

Partners & Friends

»