Changing max ammo in HL2: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Cleaned up somewhat and removed signature. (Signing is against wiki policy.))
(Appended failsafe instructions; took me at least an hour to figure it out -_-.)
Line 5: Line 5:
# Place the extracted file in <code>Steam/Steamapps/Sourcemods/yourmodname/cfg/</code>.
# Place the extracted file in <code>Steam/Steamapps/Sourcemods/yourmodname/cfg/</code>.
# In this file, go down to the ''Weapons'' part, and edit the lines starting with <code>sk_max_*</code>, where <code>*</code> is the name of the weapon (such as pistol, 357, ar2, etc).
# In this file, go down to the ''Weapons'' part, and edit the lines starting with <code>sk_max_*</code>, where <code>*</code> is the name of the weapon (such as pistol, 357, ar2, etc).
If you follow those steps and they do not work, follow these as well:
# In hl2mp_gamerules.cpp (or equivalent), in the function <code>*GetAmmoDef()</code>, find the <code>AddAmmoType()</code> function for the ammo you want to change, and change the sixth parameter.
Example <code>AddAmmoType()</code> from Half-Life 2: Deathmatch code (shotgun):
def.AddAmmoType("Buckshot", DMG_BULLET | DMG_BUCKSHOT, TRACER_LINE, 0, 0, 30, BULLET_IMPULSE(400, 1200), 0 );
                                                                          ^^ Change the 30.
Though the actual line has lots of tabs in it (to align it neatly with the other <code>AddAmmoType()</code>s and their parameters).


[[Category:Programming]]
[[Category:Programming]]

Revision as of 20:40, 27 May 2007

Many people that make a total conversion mod will want to change the maximum ammunition settings in Half-Life 2. This small tutorial will tell you just how to do that.

  1. Using GCFScape, open the GCF file called source engine.gcf.
  2. In this file, browse to Root/hl2/cfg/ and extract the file called skill.cfg.
  3. Place the extracted file in Steam/Steamapps/Sourcemods/yourmodname/cfg/.
  4. In this file, go down to the Weapons part, and edit the lines starting with sk_max_*, where * is the name of the weapon (such as pistol, 357, ar2, etc).

If you follow those steps and they do not work, follow these as well:

  1. In hl2mp_gamerules.cpp (or equivalent), in the function *GetAmmoDef(), find the AddAmmoType() function for the ammo you want to change, and change the sixth parameter.

Example AddAmmoType() from Half-Life 2: Deathmatch code (shotgun):

def.AddAmmoType("Buckshot", DMG_BULLET | DMG_BUCKSHOT, TRACER_LINE, 0, 0, 30, BULLET_IMPULSE(400, 1200), 0 );
                                                                          ^^ Change the 30.

Though the actual line has lots of tabs in it (to align it neatly with the other AddAmmoType()s and their parameters).