WeaponList

Informs the client of the weapons it will encounter as well as their properties.

String
Weapon name, e.g. "weapon_bitegun"
Byte
Ammotype.  Known ammotypes are -1 (melee), 1 (mines), 2 (lmg), 3 (pistol), 4 (shotgun), 5 (hmg), 6 (gl)
Byte
Ammomax.  That maximum amount of ammo this weapon can hold in reserve.
Byte
Unknown.  Always -1.
Byte
Damage.  The damage this weapon can do.  Probably used for client-side prediction.  -1 for weapons such as umbra.
17/12/03: A note from mahnsawce: It's more than likely used for the auto help display, rather than for client-side prediction. Look in titles.txt for the weapon help, and it'll be like "Spikes - Long-range instant-hit weapon. Damage: %d".
Byte
Slot.  Which bucket on the HUD this weapon takes.  Zero-based.
Byte
Slotpos.  The position within the slot.
Byte
ID.  The unique ID for this weapon.
Byte
Flags.  Unknown.

Each weapon type must have a unique slot/slotpos.