Lara has a fixed number of weapons as follows.
The file cfg/weapons.json5 contains properties for these weapon types, each
described in the table below.
| Property | Type | Description |
|---|---|---|
aim_speed |
Integer | Determines how quickly Lara's arms rotate into position when aiming at a target. |
damage |
Integer | The HP damage value to subtract from targets when struck by this weapon type. This value is doubled when playing either Japanese or Japanese NG+ modes. |
draw_frame |
Integer | For rifle type weapons, the relative frame number of the equip animation where the object mesh swap is performed e.g. removing the shotgun from Lara's back and putting it in her hand. |
equip_anim_idx |
Integer | For rifle type weapons, the relative equip animation index of the associated object e.g. O_LARA_SHOTGUN. |
flash_pos / flash_pos_alt |
XYZ | Specifies the offset position where the weapon flash object (O_GUN_FLASH / O_M16_FLASH / O_FLARE_FIRE) will be drawn. flash_pos_alt is used only for discarded flares. |
flash_shade |
Integer | Specifies the shade applied when drawing the weapon flash object (O_GUN_FLASH / O_M16_FLASH / O_FLARE_FIRE). |
flash_color |
Float array (length 3) | Specifies the color applied when drawing the weapon flash object (O_GUN_FLASH / O_M16_FLASH / O_FLARE_FIRE), used in TR3 lighting system. |
glow_color |
Float array (length 3) | Specifies the color applied when drawing the weapon glow object (O_GLOW), used in TR3 lighting system. |
glow_pos |
XYZ | Specifies the additional offset to apply to the glow sprite position. |
flash_time |
Integer | Determines the number of frames to show the weapon flash object (O_GUN_FLASH / O_M16_FLASH) after firing a weapon. |
muzzle_pos |
XYZ | Specifies the additional offset to apply to the muzzle for smoke effects (right hand). |
muzzle_pos_alt |
XYZ | Specifies the additional offset to apply to the muzzle for smoke effects (left hand for dual pistols). |
smoke_count |
Integer | How many smoke effect instances to spawn upon shooting. |
shell_pos |
XYZ | Specifies the additional offset to apply to the gun for shells (right hand). |
shell_pos_alt |
XYZ | Specifies the additional offset to apply to the gun for shells (left hand for dual pistols). |
gun_height |
Integer | Used to determine the start Y position when firing a weapon, and to determine if Lara is too far submerged in water to be able to use a weapon (other than the harpoon). |
is_available |
Boolean | Determines if a weapon can be given to Lara when using item cheats. Pickups for unavailable weapons/flares will still work normally. |
left_angles |
Integer array (length 4) | These values determine if Lara has lost target on her left arm. |
lock_angles |
Integer array (length 4) | These values are used to test if Lara is able to lock on to a target. |
pickup_qty |
Integer | The amount of ammo given for the weapon when equivalent ammo object is picked up. |
pickup_qty_alt |
Integer | As per pickup_qty, but this applies exclusively to flares when playing Japanese NG. |
recoil_frame |
Integer | For pistol type weapons, this value determines when Lara should snap back to the aiming frame after the weapon is fired i.e. Uzis have a lower value than Pistols for faster fire rate. |
right_angles |
Integer array (length 4) | These values determine if Lara has lost target on her right arm. |
sample_num |
String | The sound effect to play when the weapon is fired (see ./11-SAMPLES.md). |
shot_accuracy |
Integer | Adds a random factor to angles used when firing a weapon. Higher values mean less accuracy. |
target_dist |
Float | The maximum distance (in world sectors) that a target can be from Lara in order for her to lock on. |
type |
String |
The category that determines how the gun is handled. Accepted values are as follows.
|
undraw_frame |
Integer | For rifle type weapons, the relative frame number of the unequip animation where the object mesh swap is performed e.g. removing the shotgun from Lara's hand and putting it on her back. |