/tg/ Station 13 - Modules - TypesVar Details - Proc Details

gun

Vars

burst_delayDelay between shots in a burst.
can_hold_upCan we hold up our target with this? Default to yes
can_unsuppressWhether a gun can be unsuppressed. for ballistics, also determines if it generates a suppressor overlay
chambered_attack_blockIf TRUE, will fire ITEM_INTERACT_BLOCKING (melee, etc) if the gun has a round already in the chamber, and is waiting to be fired (but cant, usually due to waiting on fire_delay). If FALSE, nothing changed.
doafter_self_shootIf TRUE, and we aim at ourselves, it will initiate a do after to fire at ourselves. If FALSE it will just try to fire at ourselves straight up.
fire_cdfiring cooldown, true if this gun shouldn't be allowed to manually fire
fire_delayDelay between bursts (if burst-firing) or individual shots (if weapon is single-fire).
flip_cooldownCooldown for the visible message sent from gun flipping.
light_timeMuzzle Flash Duration
min_recoilUsed as the min value when calculating recoil Affected by a player's min_recoil_multiplier preference, so keep in mind it can ultimately be 0 regardless Often utilized as a "purely visual" form of recoil (as it can be disabled)
pinlessTrue if a gun dosen't need a pin, mostly used for abstract guns like tentacles and meathooks
projectile_damage_multiplierJust 'slightly' snowflakey way to modify projectile damage for projectiles fired from this gun.
projectile_speed_multiplierThe most reasonable way to modify projectile speed values for projectile fired from this gun. Honest. Lower values are worse, higher values are better.
projectile_wound_bonusEven snowflakier way to modify projectile wounding bonus/potential for projectiles fired from this gun.
recoilScreen shake when the weapon is fired
recoil_backtime_multipliera multiplier of the duration the recoil takes to go back to normal view, this is (recoil*recoil_backtime_multiplier)+1
recoil_deviationthis is how much deviation the gun recoil can have, recoil pushes the screen towards the reverse angle you shot + some deviation which this is the max.
suppressedWhether or not a message is displayed when fired

Procs

add_bayonet_pointSimilarly to add_seclight_point(), handles the bayonet attachment component
add_seclight_pointHandles adding the seclite mount component to the gun. If the gun shouldn't have a seclight mount, override this with a return. Or, if a child of a gun with a seclite mount has slightly different behavior or icons, extend this.
calculate_recoilCalculates the final recoil value applied when firing a gun.
clear_suppressorClears var and updates icon.
process_firereturns true if the gun successfully fires
simulate_recoilSimulates firearm recoil and applies camera feedback when firing.

Var Details

burst_delay

Delay between shots in a burst.

can_hold_up

Can we hold up our target with this? Default to yes

can_unsuppress

Whether a gun can be unsuppressed. for ballistics, also determines if it generates a suppressor overlay

chambered_attack_block

If TRUE, will fire ITEM_INTERACT_BLOCKING (melee, etc) if the gun has a round already in the chamber, and is waiting to be fired (but cant, usually due to waiting on fire_delay). If FALSE, nothing changed.

doafter_self_shoot

If TRUE, and we aim at ourselves, it will initiate a do after to fire at ourselves. If FALSE it will just try to fire at ourselves straight up.

fire_cd

firing cooldown, true if this gun shouldn't be allowed to manually fire

fire_delay

Delay between bursts (if burst-firing) or individual shots (if weapon is single-fire).

flip_cooldown

Cooldown for the visible message sent from gun flipping.

light_time

Muzzle Flash Duration

min_recoil

Used as the min value when calculating recoil Affected by a player's min_recoil_multiplier preference, so keep in mind it can ultimately be 0 regardless Often utilized as a "purely visual" form of recoil (as it can be disabled)

pinless

True if a gun dosen't need a pin, mostly used for abstract guns like tentacles and meathooks

projectile_damage_multiplier

Just 'slightly' snowflakey way to modify projectile damage for projectiles fired from this gun.

projectile_speed_multiplier

The most reasonable way to modify projectile speed values for projectile fired from this gun. Honest. Lower values are worse, higher values are better.

projectile_wound_bonus

Even snowflakier way to modify projectile wounding bonus/potential for projectiles fired from this gun.

recoil

Screen shake when the weapon is fired

recoil_backtime_multiplier

a multiplier of the duration the recoil takes to go back to normal view, this is (recoil*recoil_backtime_multiplier)+1

recoil_deviation

this is how much deviation the gun recoil can have, recoil pushes the screen towards the reverse angle you shot + some deviation which this is the max.

suppressed

Whether or not a message is displayed when fired

Proc Details

add_bayonet_point

Similarly to add_seclight_point(), handles the bayonet attachment component

add_seclight_point

Handles adding the seclite mount component to the gun. If the gun shouldn't have a seclight mount, override this with a return. Or, if a child of a gun with a seclite mount has slightly different behavior or icons, extend this.

calculate_recoil

Calculates the final recoil value applied when firing a gun.

Arguments:

Returns: The clamped recoil value after applying all modifiers.

clear_suppressor

Clears var and updates icon.

process_fire

returns true if the gun successfully fires

simulate_recoil

Simulates firearm recoil and applies camera feedback when firing.

Arguments: