weapons.dat Format

Label

Offset
0x0000
Length
260 bytes (2 bytes / Weapon)
Description
Label displayed for this weapon in unit's status bar. Corresponds to an entry in the rez\stat_txt.tbl file.
Values
Integer value from 0 to the last index of the rez\stat_txt.tbl file.

Missile Sprite

Offset
0x0104
Length
520 bytes (4 bytes / Weapon)
Description
Sprite displayed when the weapon is fired. Corresponds to an entry in the flingy.dat file.
Values
Integer value between 0 and the # of entries in flingy.dat

Special Attack

Offset
0x030C
Length
130 bytes (1 byte / Weapon)
Description
Spell/special effect to use with this weapon.
Bits
0x00
Nothing
0x01
Lockdown
0x02
EMP Shockwave
0x03
Spider Mines
0x04
Normal
0x05
No Damage
0x06
No Damage
0x07
Irradiate
0x08
Yamato Gun
0x09
No Damage
0x0A
No Damage
0x0B
No Damage
0x0C
No Damage
0x0D
Broodling
0x0E
Dark Swarm
0x0F
Plague
0x10
Consume
0x11
Ensnare
0x12
Parasite
0x13
Psi Storm
0x14
Normal
0x15
Normal
0x16
Stasis
0x17
1/4 Damage
0x18
Restoration
0x19
Disruption Web
0x1A
Unknown
0x1B
Unknown
0x1C
Unknown
0x1D
Feedback
0x1E
Optical Flare
0x1F
Maelstrom/Spines
0x20
Unknown
0x21
Unknown
0x22
Unknown
0x23
Unknown
0x24
Unknown
0x25
Unknown
0x26
Unknown
0x27
Unknown
0x28
Unknown
0x29
Unknown
0x2A
Unknown
0x2B
Unknown
0x2C
None

Attack Type

Offset
0x038E
Length
260 bytes (2 bytes / Weapon)
Description
Restrictions for where the weapon can be used.
Bits
0x0001
Air Only
0x0002
Ground Only
0x0003
Air and Ground
0x0004
Units Only (No Buildings)
0x0012
Ground Units (No Hover or Buildings)
0x0013
Ground Units Only (No Buildings
0x0019
Mechanical Only
0x0043
Non-mechanical Only
0x0053
Ground, Ground Units
0x00B2
Ground Units (No Buildings, No Archon)
0x011B
Owned Units (Consume)

Minimum Range

Offset
0x0492
Length
520 bytes (4 bytes / Weapon)
Description
Minimum range required for this weapon.
Values
Integer value between 0 and 255.

Maximum Range

Offset
0x069A
Length
520 bytes (4 bytes / Weapon)
Description
Maximum range required to use this weapon.
Values
Integer value between 0 and 255.

Upgrade Group

Offset
0x08A2
Length
130 bytes (1 byte / Weapon)
Description
Upgrade group which applies to this weapon.
Values
Integer value between 0 and the last index of the Upgrades.dat file. Common values are:
Bits
0x07
Terran Infantry
0x08
Terran Vehicle
0x09
Terran Ship
0x0A
Zerg Melee
0x0B
Zerg Missile
0x0C
Zerg Flyer
0x0D
Protoss Ground
0x0E
Protoss Air
0x23
Scarab
0x3C
No upgrades

Weapon Type

Offset
0x0924
Length
130 bytes (1 byte / Weapon)
Description
The type of this weapon.
Bits
0x00
Unknown
0x01
Explosive
0x02
Concussive
0x03
Normal
0x04
Special

Weapon Behavior

Offset
0x09A6
Length
130 bytes (1 byte / Weapon)
Description
The behavior this weapon uses.
Bits
0x00
Flies to target
0x01
Seeks Target
0x02
Appears on Target
0x03
Unknown
0x04
Persistant Explosion
0x05
Normal hit
0x06
Suicide
0x07
Bounce
0x08
Spin around (Halo)
0x09
Bursts thru ground (Sub. Spines)

Missile Type

Offset
0x0A28
Length
130 bytes (1 byte / Weapon)
Description
The type of missile this Weapon emulates.
Bits
0x1E
Homing
0x3C
Bouncing
0xFF
Normal

Explosion Type

Offset
0x0AAA
Length
Description
Type of explosion which occurs after the weapon hits its target.
Bits
0x00
None
0x01
Normal
0x02
Radial Splash
0x03
Line Splash
0x04
Lockdown
0x05
Unknown
0x06
Parasite
0x07
Spawn Broodlings
0x08
EMP Shockwave
0x09
Irradiate
0x0A
Ensnare
0x0B
Plague
0x0C
Stasis
0x0D
Dark Swarm
0x0E
Radial Splash
0x0F
Line Splash
0x10
Restoration
0x11
Disruption Web
0x12
Corrosive Acid
0x13
Mind Control
0x14
Feedback
0x15
Optical Flare
0x16
Maelstrom
0x17
Unknown
0x18
Air Splash

Splash Value 1

Offset
0x0B2C
Length
260 bytes (2 bytes / Weapon)
Description
Smallest of 3 radii which the Explosion Type uses to deal damage.
Values
Integer value between 0 and 65535.

Splash Value 2

Offset
0x0C30
Length
260 bytes (2 bytes / Weapon)
Description
Middle of 3 radii which the Explosion Type uses to deal damage.
Values
Integer values between 0 and 65535.

Splash Value 3

Offset
0x0D34
Length
260 bytes (2 bytes / Weapon)
Description
Largest of 3 radii which the Explosion Type uses to deal damage.
Values
Integer value between 0 and 65535.

Damage Amount

Offset
0x0E38
Length
260 bytes (2 bytes / Weapon)
Description
Amount of damage dealt to target. May be adjusted based on the type of unit.
Values
Integer value between 0 and 65535.

Damage Bonus

Offset
0x0F3C
Length
260 bytes (2 bytes / Weapon)
Description
Amount added to damage when the weapon is upgraded.
Values
Integer value between 0 and 65535.

Cooldown Delay

Offset
0x1040
Length
130 bytes (1 byte / Weapon)
Description
Delay between attacks with this weapon. Lower values make the weapon attack faster, and higher values make the weapon attack slower.
Values
Integer value between 1 and 255.

Damage Factor

Offset
0x10C2
Length
130 bytes (1 byte / Weapon)
Description
The number of "copies" of this weapon a unit assigned this weapon has. To get the actual damage amount for units with more than 1 in the factor category, multiply this value by the Damage Amount.
Values
Integer value from 0 to 255.

Coordinate Group 1

Offset
0x1144
Length
260 Bytes (2 bytes / Weapon)
Description
Actually an x-y pair of values. The first byte is actually the X coordinate, and the second is the Y coordinate.
Values
Integer values between 0 and 255 for both the X and Y parts of the coordinate.

Coordinate Group 2

Offset
0x1248
Length
260 Bytes (2 bytes / Weapon)
Description
Actually an x-y pair of values. The first byte is actually the X coordinate, and the second is the Y coordinate.
Values
Integer values between 0 and 255 for both the X and Y parts of the coordinate.

Error Message

Offset
0x134C
Length
260 bytes (2 bytes / Weapon)
Description
Index in the rez\stat_txt.tbl file which this weapon displays if it cannot be used for some reason.
Values
Integer value between 0 and the last index in rez\stat_txt.tbl

Icon

Offset
0x1450
Length
260 bytes (2 bytes / Weapon)
Description
Icon displayed for this weapon in the unit's status bar.
Values
Integer value between 0 and 65535.