Weapons.tbl

From FreeSpace Wiki
Revision as of 22:23, 30 March 2008 by Backslash (talk | contribs) (Add javelin missile type)
Jump to: navigation, search

Revision information..

3.6.x branch: 2.180.2.24
3.7 branch: 4564


Contents

Special Case Weapons

Beam Cannons

Flak Guns

  • REQUIRE: "flak" and "particle spew" flags
  • Must have inner and outer radius defined to have any effect.
  • Does not use any model or weapon effect though model must be defined, usually Hornet.pof. Instead it uses particle spew. Trails can also be added.

Weapons Table

General Format

  • The weapons table consist of several sections
  • All sections beginning with # need #End before the next section.
    • #Primary Weapons
      • Defines all standard primaries weapons as well as beam cannons and flak cannons.
    • #Secondary Weapons
      • Defines all secondary weapons.
    • #Beam Weapons
      • I haven't got any ideas for this one.
    • #Countermeasures
      • Defines the used countermeasure.
    • $Player Weapon Precedence
      • Player Weapon Precedence is used in weapon selection when a default specified by the mission designer is not available to the player. The next weapon on the list is used in its place (assuming that weapon is allowed for the player).

Core Table

$Name:

  • This is the name of the weapon. If it's going to be used by the player, keep it under 12 characters so it doesn't spill over the HUD box. If the weapon has an @ symbol in front of it, it means it's allowed in the demo. It doesn't really do anything in the retail version.
  • Syntax: String


$Subtype:

FS2 Open, 3.6.x:


+Title:

  • This is the title of the weapon in the Weapons loadout screen. Only needed for player allowed weapons. Title may be anything. Numerical value is a reference to translations in Tstrings.tbl
  • Syntax: XSTR("String", -1)


+Description:

  • This is the description you see in the weapons loadout screen. Again, these aren't based on any hard numbers, just approximations. Only needed for player allowed weapons. Numerical value is a reference to translations in Tstrings.tbl
Example
XSTR(
"''Standard Issue
''Level 3 Hull Damage
''Level 2 Shield Damage''", -1)
$end_multi_text


+Tech Title:

  • Title of the weapon in the Tech room. Only needed for player allowed weapons.
  • Syntax: XSTR("String", -1)


+Tech Anim:

  • Animation used for the weapon in the Tech room. Only needed for player allowed weapons.
  • Syntax: String, animation filename
    • Example: Tech_Subach_HL-7


+Tech Description:

  • Descriptive text you see in the tech room. Only needed for player allowed weapons. Numerical value is a reference to translations in Tstrings.tbl
Example
XSTR(
"''The Subach-Innes HL-7...''", 3245)
$end_multi_text


$Tech Model:

FS2 Open, 3.6.x:
  • Defines model used in wing loadout screen and in Tech Room for the weapon.
  • Syntax: String.pof, model filename


$HUD Image:

FS2 Open, 3.6.x:
  • Defines the picture used to represent the weapon in HUD loadout list
  • Syntax: String, filename


$Model File:

  • Filename of the model file (.pof) at data/models folder. Additional fields beginning from @Laser Bitmap: and ending to @Laser Tail Radius: are not needed if a model has been defined for the weapon.
  • Standard primaries and beam cannons do not use specific models so for those the name is 'none'.
  • Flak weapons and secondaries use models, though the exact model is not important with the flak weapons.
  • Syntax: String.pof or none, model filename
    • Example: none


$POF target LOD:

FS2 Open, 3.6.x:
  • Defines the LOD (Level-Of-Detail) of the model used in HUD targetting view
  • Syntax: Integer


$External Model File:

FS2 Open, 3.6.x:
  • Defines the models shown on the gunpoint, used with Bobb's external-visible-weapon code.
  • Syntax: String.pof, model filename


$Submodel Rotation Speed:

FS2 Open, 3.6.x:
  • Defines the rotation speed of the external weapon model
  • Syntax: Float


$Submodel Rotation Acceleration:

FS2 Open, 3.6.x:
  • Defines the rotation acceleration of the external weapon model
  • Syntax: Float


@Laser Bitmap:

    • The graphic file to be used as the weapon effect if no model is defined.
    • Syntax: String, filename


@Laser Glow:

    • The graphic file that determines the glow of the weapon effect if no model is defined
    • Syntax: String, filename


@Laser Color:

    • The color of the weapon effect when you fire it.
    • Syntax: Color, red, green, blue respectively, value from 0 to 255
      • Example: 250, 0, 0


@Laser Color2:

    • The color of the weapon effect at its maximum range.
    • Syntax: Color, red, green, blue respectively, value from 0 to 255
      • Example: 0, 0, 250


@Laser Length:

    • Length of the weapon effect.
    • Syntax: Float, meters


@Laser Head Radius:

    • Width of the head of the weapon effect.
    • Syntax: Float, meters


@Laser Tail Radius:

    • Width of the tail of the weapon effect.
    • Syntax: Float, meters


$Mass:

  • How much of a kinetic effect this weapon has on its target. 3+ gives you the Flail effect. Set it to 10 and you can knock cruisers around.
  • This is somehow multiplied by the speed. ie $Mass: 3 and $Velocity: 200 has much weaker kinetic effect than $Mass: 3 and $Velocity: 1000. Also $Mass is used to calculate intensity of "shudder" effect if flagged.
  • Syntax: Float, blast effect


$Velocity:

  • How fast the weapon travels. Is also used to define the weapon range, $Velocity x $Lifetime = range.
  • Beams travel instantly so this field has effect only on weapon range and AI beam targetting with certain beam types. $Velocity of beam also applies to its kinetic effect along with $Mass.
  • Syntax: Float, meters per second


$Fire Wait:

  • Time in seconds between firings
  • Syntax: Float, seconds


$Damage:

  • Base damage this weapon does. The actual damage is this number multiplied by the factors below.
  • Base damage this beam does is continuous damage, damage is 5.5 times the damage value per second. The actual damage is this number multiplied by one of the factors below.
  • Syntax: Float, damage


$Damage Type:

FS2 Open, 3.6.x:
  • Defines the damage type that this weapon uses. All armor effects are applied after shield and have no function against shockwave or subsystem damage. REQUIRES ADDITIONAL TABLE.
  • Syntax: String, name of the damage type as defined in armor.tbl


$Arm time:

FS2 Open, 3.6.x:
  • Defines the time after the launch that is required before the weapon comes hot
  • If the time has not been reached when the weapon detonates the Dinky explosion is used
  • Syntax: Float, seconds


$Arm distance:

FS2 Open, 3.6.x:
  • Defines the distance from the firing ships that is required before the weapon comes hot
  • If the distance has not been reached when the weapon detonates the Dinky explosion is used
  • Syntax: Float, meters


$Arm radius:

FS2 Open, 3.6.x:
  • Defines the distance from the target where the weapon will arm itself
  • Syntax: Float, meters


$Detonation Range:

FS2 Open, 3.6.x:
  • Defines the distance from the point in space that the weapon was launched where the weapon will detonate
  • Syntax: Float, meters


$Detonation Radius:

FS2 Open, 3.7:
  • Defines the distance between the target center point point and the weapon which detonates the weapon.
  • Syntax: Float, meters


$Shockwave damage:

FS2 Open, 3.6.x:
  • Override for the damage caused by shockwaves
  • Syntax: Float, damage


$Shockwave Damage Type:

FS2 Open, 3.6.x:
  • REQUIRES ADDITIONAL TABLE. Defines the damage type used for the weapon explosions
  • Syntax: String, name as defined in armor.tbl


$Blast Force:

  • The intensity of the blast effect when ship is within the outer radius of the explosion. Comes in effect only if inner and outer radius are defined.
  • Syntax: Float, blast effect


$Inner Radius:

  • Radius at which the full explosion damage is done. Marks the line where damage attenuation begins.
  • Syntax: Float, meters


$Outer Radius:

  • Maximum radius at which any damage is done
  • Syntax: Float, meters


$Shockwave Speed:

  • Speed shockwave expands at. Zero means no shockwave and that damage is applied immediately
  • Syntax: Float, meters per second


$Shockwave rotation:

FS2 Open, 3.6.x:
  • Defines how the 3D shockwave is rotated.
  • Syntax: Angle, three values, pitch, bank, heading respectively, in degrees


$Shockwave model:

FS2 Open, 3.6.x:
  • Defines the model file (.pof) used as a shockwave for the 3D shockwaves.
  • Syntax: String.pof, model filename


$Shockwave name:

FS2 Open, 3.6.x:
  • Defines the name of the animation used for the 2D shockwave
  • Syntax: String, filename


$Dinky shockwave:

FS2 Open, 3.6.x:
  • Dinky shockwave are used if the weapon is shot down before arming or if the conditions marked at Arm time and Arm distance are not reached before impact
  • It uses exactly same entries as the standard shockwaves
  • +Shockwave damage:
  • +Shockwave damage type:
  • +Blast Force:
  • +Inner Radius:
  • +Outer Radius:
  • +Shockwave Speed:
  • +Shockwave Rotation:
  • +Shockwave Model:
  • +Shockwave Name:


$Armor Factor:

  • Multiplier for the damage done to armor
  • Syntax: Float, damage multiplier


$Shield Factor:

  • Multiplier for the damage done to shields
  • Syntax: Float, damage multiplier


$Subsystem Factor:

  • Multiplier for the damage done to subsystems
  • Syntax: Float, damage multiplier


$Lifetime Min:

FS2 Open, 3.6.x:
  • Defines the minimum lifetime of the weapon
  • Syntax: Float, seconds


$Lifetime Max:

FS2 Open, 3.6.x:
  • Defines the maximum lifetime of the weapon
  • Syntax: Float, seconds


$Lifetime:

  • Time before the standard primaries fizzle out and secondaries self destruct. Multiply this by the speed to get the range. If values are too low (below framerate) then the collision detection and graphic effects may suffer.
  • This field has no effect for the beams apart from weapon range and AI beam targeting with certain beam types
  • Syntax: Float, seconds


$Energy Consumed:

  • The amount of energy each bolt drains firing ship. Has no effect on turretted weapons.
  • Syntax: Float


$Cargo Size:

  • Cargo size, is not used with non-ballistic primaries.
  • Amount of missiles available = Bank capacity / Cargo Size.
  • Syntax: Float

$Homing:

  • Only for secondaries. You can't have homing primaries. If this is set to YES with primaries, then the bolts turn to face their target but keep moving in the same direction. If the field is set to NO then following fields are not required in the table.
  • Defines if the missiles in question is homing
  • Syntax: Boolean, yes or no
  • +Type:
    • Defines the homing method
    • Syntax: String, ASPECT or HEAT
FS2 Open, 3.6.x: An additional option, JAVELIN, has been added. This behaves like an aspect missile but automatically only locks onto the engines of a target, and only if the engines are in sight.
  • +Turn Time:
    • Defines how well missile maneuvers. Number of seconds it takes the missile to do a 360 degree circle
    • Syntax: Float, seconds
  • +View Cone:
    • Heat-seeking missiles only, this is then number of degrees the missile sees. Value / 2 gives the angle from the missile's centerline.
    • Syntax: Float, degrees
FS2 Open, 3.6.x: Has been enabled also to aspect seekers as an option.
  • +Min Lock Time:
    • For aspect/javelin missiles only, the minimum number of seconds to gain target lock
    • Syntax: Float, seconds
  • +Lock Pixels/Sec:
    • For aspect/javelin missiles only, pixels the aspect triangle moves per second while attempting lock-on
    • Syntax: Integer, pixels per second
  • +Catch-up Pixels/Sec:
    • For aspect/javelin missiles only, pixels moved per second while attempting to catch up to the target
    • Syntax: Integer, pixels per second
  • +Catch-up Penalty:
    • For aspect/javelin missiles only, extra pixels to move after catching up ????
    • Syntax: Integer, pixels
FS2 Open, 3.6.x:
  • +Seeker Strength:
    • Defines the seeking ability of the homing system. Default of heat seekers is 3 and for aspect seekers 2. Spoofing change is defined as cm type effectiveness/seeker strength.
    • Syntax: Float, seeker strength


$Swarm:

  • The number of missiles to fire per volley if it's a swarm missile
  • Can be issued to Standard primaries also. Causes single part turrets to malfunction but causes multi part turrets to fire only on their barrel line. Can be used for 'burst fire weapons'.
  • Is incompatible with "Corkscrew" option.
  • Syntax: Integer, number of shots in a swarm
FS2 Open, 3.6.x:
  • +SwarmWait:
    • Defines the time between weapons fired in a swarm
    • Syntax: Float, seconds
      • Default: 0.150


$Free Flight Time:

FS2 Open, 3.6.x:
  • Defines the free flight time of homing weapons. During this time weapon flies at 1/4 of its velocity + firing ships velocity in a straight line.
  • Syntax: Float, seconds
    • Default: 0.25


$LaunchSnd:

  • Corresponding sound effect when the weapon is launched.
  • Syntax: Integer or String, name or identification number of the sound as defined in sounds.tbl


$ImpactSnd:

  • Sound the weapon makes when it hits a hull.
  • Syntax: Integer or String, name or identification number of the sound as defined in sounds.tbl


$Disarmed ImpactSnd:

FS2 Open, 3.6.x:
  • Sound the weapon makes when it hits a hull before being armed.
  • Syntax: Integer or String, name or identification number of the sound as defined in sounds.tbl


$FlyBySnd:

  • The sound this weapon makes if it narrowly misses you. -1 is no sound.
  • Syntax: Integer or String, name or identification number of the sound as defined in sounds.tbl, usually -1


$Model:

FS2 Open, 3.6.x:
  • Defines used model file. Included for compatibility with countermeasures as they have been merged with weapons in the code.
  • Syntax: String.pof, model filename


$Rearm Rate:

  • Defines the rate the weapons are loaded to the ship
  • Syntax: Float, missiles loaded per second


+Weapon Range:

  • Defines the range to the target where the weapons under AI will start firing.
  • Syntax: Float, meters


+Weapon Min Range:

FS2 Open, 3.6.x:
  • Defines the minimum range to the target where the weapons under AI will still fire.
  • Implemented before FS_Open 3.6.5
  • Syntax: Float, meters


$Flags:


$Trail:

  • This is used if you want your weapon to have a trail. Trail is often used only with secondaries though it works with standard primaries as well.
  • +Start Width:
    • How wide the head of the trail is.
    • Syntax: Float, meters
  • +End Width:
    • How wide the tail of the trail is.
    • Syntax: Float, meters
  • +Start Alpha:
    • The opacity of the trail head.
    • Syntax: Float, value between 0 and 1
  • +End Alpha:
    • The opacity of the trail tail.
    • Syntax: Float, value between 0 and 1
  • +Max Life:
    • How long the trail lasts.
    • Syntax: Float, seconds
  • +Bitmap:
    • The graphic file to use for the trail.
    • Syntax: String, filename


$Icon:

  • Loadout icon used in the weapons selection screen.
  • Syntax: String, filename


$Anim:

  • Green grid animation used on the weapons screen.
  • Syntax: String, filename


$Collide Ship:

FS2 Open, 3.6.x:
  • Hook for Lua scripting
  • Globals: "Self", weapon with class that the hook is defined in. "Ship", ship that the weapon collided with.
  • Override: Turns off all damage effects from weapon, as well as weapon being destroyed.


FS2 Open, 3.7:


$Collide Weapon:

FS2 Open, 3.6.x:
  • Hook for Lua scripting
  • Globals: "Self", weapon with class that the hook is defined in. "Weapon", other weapon.
  • Override: Turns off weapon killing types with bombs. If two weapons, weapon "A" (arbitrary) is preferred


FS2 Open, 3.7:


$Impact Explosion:

  • Impact explosion used. Must be defined in weapon_expl.tbl,
  • Syntax: String, filename or none


$Impact Explosion Radius:

  • Radius of the defined impact explosion.
  • Syntax: Float, meters


$Dinky impact explosion:

FS2 Open, 3.6.x:
  • Same as Impact explosion but for Dinky (not armed) explosions
  • Syntax: String, filename or none


$Dinky impact explosion radius:

FS2 Open, 3.6.x:
  • Same as Impact explosion radius but for Dinky explosions
  • Syntax: Float, meters


$Muzzleflash:

  • Normally only with flak cannons.
  • Defines the muzzle flash the weapon uses
  • Syntax: String, muzzleflash name, as defined in mflash.tbl


$EMP Intensity:

    • If it has an EMP effect, how deeply it scrambles your electronics
    • Syntax: Float


$EMP Time:

    • Duration of the EMP effect
    • Syntax: Float, seconds


$Leech Weapon:

    • The amount of weapon energy to drain with each hit
    • Syntax: Float


$Leech Afterburner:

    • The amount of afterburner fuel to drain with each hit
    • Syntax: Float


$Corkscrew:

FS2 Open, 3.6.x:
  • Allow corkscrew parameters to be defined
  • +Num Fired:
    • Defines the number of weapons fired in sequence. Same as the standard swarm entry but for corkscrew missiles
    • Syntax: Integer, number of missiles
  • +Radius:
    • Defines the radius used in the corkscrew motion
    • Syntax: Float, meters
  • +Fire Delay:
    • Defines the delay between missile firings
    • Syntax: Integer, milliseconds
  • +Counter rotate:
    • Defines if every other missile rotates to a different direction (clockwise / anticlockwise)
    • Syntax: Boolean, 0 or 1, no or yes
  • +Twist:
    • Defines the speed of rotation movement on the radius of corkscrew motion.
    • Syntax: Float, radians per second


$Electronics:

FS2 Open, 3.6.x:
  • Defines the weapons effect against electronics. Requires "electronics" flag. +New Style: and +Old Style: options are mutually exclusive.
  • +New Style:
    • Defines that the electronics use the new style which enables more options.
  • +Old Style:
    • Defines that the electronics use the old style. The old style was the way the D-Missile worked in Descent:Freespace.
  • +Intensity:
    • May only be used with +New Style: electronics. Defines how much the electronics hit affects larger ships. An intensity of 1.0 will disrupt a cruiser without trouble.
    • Syntax: Float
  • +Lifetime:
    • Syntax: Integer, milliseconds
  • +Engine Multiplier:
    • May only be used with +New Style: electronics. Defines how much longer the disruption effect lasts for engine subsytems.
    • Syntax: Float
  • +Weapon Multiplier:
    • May only be used with +New Style: electronics. Defines how much longer the disruption effect lasts for non-beam turrets.
    • Syntax: Float
  • +Beam Turret Multiplier:
    • May only be used with +New Style: electronics. Defines how much longer the disruption effect lasts for beam turrets.
    • Syntax: Float
  • +Sensors Multiplier:
    • May only be used with +New Style: electronics. Defines how much longer the disruption effect lasts for sensor subsystems.
    • Syntax: Float
  • +Randomness Time:
    • Defines the randomness of duration target suffers from the electronics hit. A random number between 0 and this time will be added or subtracted from the disruption time.
    • Syntax: Integer, milliseconds
  • Without any electronics parameters, a weapon with the "electronics" flag will default to the Old Style mode with a lifetime of 6000 milliseconds and a randomness of 4000 milliseconds. Thus any ship that gets hit can get disrupted for anywhere between 2 to 10 seconds.


$Spawn Angle:

FS2 Open, 3.6.x:
  • Defines the cone (with an angle) where the spawned weapons appear. Value gives the angle from the missiles centerline. The maximum possible angle between any two child weapons would be Value*2.
  • Syntax: Float, degrees


$Local SSM:

FS2 Open, 3.6.x:
  • Defines the local SSM (Subspace Missile). In effect missile moves via subspace to a position close to the target and starts homing.
  • Weapon must be aspect seeking missile and must have local ssm flag.
  • +Warpout Delay:
    • Defines the time between the missile launch and the subspace jump.
    • Syntax: Integer, milliseconds
  • +Warpin Delay:
    • Defines the time missile stays in subspace before exiting.
    • Syntax: Integer, milliseconds
  • +Stage 5 Velocity:
    • Defines the velocity of the missile after the subspace jump.
    • Syntax: Float, meters per second
  • +Warpin Radius:
    • Defines how far from the SSM will appear from the outer radius of the target.
    • Syntax: Float, meters
  • +Lock Range:
    • Defines the maximum range where SSM can achieve target lock
    • Syntax: Float, meters


$Countermeasure:

FS2 Open, 3.6.x:
  • Defines the countermeasure effectiveness and radius
  • +Heat Effectiveness:
    • Defines the countermeasures effectiveness against heat seeking missiles
    • Syntax: Float, cm effectiveness
      • Default: 1
  • +Aspect Effectiveness:
    • Defines the countermeasures effectiveness against aspect seeking missiles
    • Syntax: Float, cm effectiveness
      • Default: 1
  • +Effective Radius:
    • Defines the countermeasures effective radius
    • Syntax: Float, meters
      • Default: 300


$BeamInfo:

  • +Type:
    • Defines the type of beam in question. Beam types: 0 is a standard non-slashing type beam. 1 is a slashing type beam. 2 is a targetting beam that doesn't seem to have much of an effect on anything. 3 is a beam type that fires pulses in anti-fighter role and acts like type 0 beam in other roles. 4 is a beam that is restricted to what is directly in front of it, along turrets firepoints normal.
    • Syntax: Integer,, only values from 0 to 4 are legal
  • +Life:
    • How long it lasts once the beam is actually firing.
    • Syntax: Float, seconds
  • +Warmup:
    • Warmup time
    • Syntax: Integer, milliseconds
  • +Warmdown:
    • Warmdown time
    • Syntax: Integer, milliseconds
  • +Radius:
    • Muzzle glow radius
    • Syntax: Float, meters
  • +PCount:
    • Particles spewed every interval. ??
    • Syntax: Integer
  • +PRadius:
    • Particle radius
    • Syntax: Float, meters
  • +PAngle:
    • Defines the random "cone" where the particles are generated
    • Syntax: Float, angle of the cone
  • +PAni:
    • Animation used to represent the particles
    • Syntax: String, filename
  • +Miss Factor:
    • The higher the numbers, the more likely that this beam will miss. One value for every difficulty level
    • Syntax: Miss Factor, five floats, very easy, easy, moderate, hard, insane, respectively.
      • Example: 0.5 0.975 1.35 1.875 2.5
  • +BeamSound:
    • Corresponding looping sound effect when the beam is firing.
    • Syntax: Integer or String, name or identification number of the sound as defined in sounds.tbl
  • +WarmupSound:
    • Corresponding sound effect when the beam is beam warmed up.
    • Syntax: Integer or String, name or identification number of the sound as defined in sounds.tbl
  • +WarmdownSound:
    • Corresponding sound effect when the beam is warming down.
    • Syntax: Integer or String, name or identification number of the sound as defined in sounds.tbl
  • +Muzzleglow:
    • Defines the bitmap used to create the muzzle glow
    • Syntax: String, filename
  • +Shots:
    • Defines into how may invidual shots the type 3 (AAA) beams are divided. Note total firing is the same as the +Life:
    • Syntax: Integer
  • +ShrinkFactor:
    • What percentage of lifetime where beam starts shrinking (0.1 == 10% life left)
    • Syntax: Float
  • +ShrinkPct:
    • What percentage of max width we subtract per second
    • Syntax: Float
FS2 Open, 3.6.x:
  • +Range:
    • Defines the maximum range where the beam still has any effect.
    • Syntax: Float, meters
  • +Attenuation:
    • Defines the point where the damage caused by the beam starts to attenuate. At maximum range damage is zero.
    • Syntax: Float, from 0 - firing point to 1 - no effect
      • Default: 1
  • $Section:
    • Beams are made up of up to five sections layered atop one another to create the effect. Each section has its own parameters.
FS2 Open, 3.6.x:
  • +Index:
    • Field used to define with Modular Tables the beam section which is edited.
    • Syntax: Integer, index number legal values are from 0 to 5
  • +remove
    • Removes the set beam section.
  • +nocreate
    • Does not create new section for the beam
  • +Width:
    • Width of the section
    • Syntax: Float, meters
  • +Texture:
    • Texture for the section
    • Syntax: String, filename
  • +RGBA Inner:
    • Defines the color and transparency of the center of the section
    • Syntax: Color, red, green, blue, alpha, respectively, value from 0 to 255
      • Example: 255 255 255 255
  • +RGBA Outer:
    • Defines the color and transparency of the edges of the section
    • Syntax: Color, red, green, blue, alpha, respectively, value from 0 to 255
      • Example: 150 150 150 10
  • +Flicker:
    • Defines how much the section flickers
    • Syntax: Float, value from 0 to 1
  • +Zadd:
    • Defines the 'thickness' of the section. The higher the Zadd, the closer the section appears to be.
    • Syntax: Float
FS2 Open, 3.6.x:
  • +Tile Factor:
    • Defines the beam texture tileing factor. Second number defines the tileing type. Type 0 tiles the graphic in the beam as many times as defined by the 1st number. Type 1 uses the 1st value as the lenght of the tile.
    • Syntax: Float, Integer
  • +Translation:
    • Defines the speed of translation of the beam, a positive value moves from the impact point to the firing point, while a negative value moves away from the firing point towards the impact point. Measured in tiles per second, where the tile count is defined in the "+Tile Factor:" field above.
    • Syntax: Float


$Pspew:

FS2 Open, 3.6.x:
  • Defines a particle spew effect for the given weapon
  • +Count:
    • Defines how many particles are spawn when they are ready to be created
    • Syntax: Integer
  • +Time:
    • Defines the time in milliseconds between next particle(s) spewed
    • Syntax: Integer, milliseconds
  • +Vel:
    • Defines the created particles velocity as percentage of the weapons velocity
    • Syntax: Float
  • +Radius:
    • Defines the size of the created particles
    • Syntax: Float, meters
  • +Life:
    • Defines how long the particles last.
    • Syntax: Float, seconds
  • +Scale:
    • Defines the particle spread. Small value will make particles group together
    • Syntax: Float
  • +Bitmap:
    • Defines the animation used to create the particle spew effect
    • Syntax: String, filename


$Tag:

  • Allowed for secondary weapons
  • Location: After $Impact Explosion Radius:
  • Sets this weapon as a TAG missile, level 1, 2, or 3. The second number is the duration in seconds.
  • TAG Level 1 will illuminate hidden targets such as stealth fighters or ships normally obscured by nebula conditions.
  • TAG Level 2 illiminates targets much like TAG Level 1, but turrets will prefer to shoot at them over other ships.
  • TAG Level 3 has no effect in retail.
  • Syntax: Integer Float, TAG level and seconds respectively


$SSM:

FS2 Open, 3.6.x:
  • Defines the weapons SSM index number:
  • Syntax: Integer


$FOF:

FS2 Open, 3.6.x:
  • Defines the field of fire for the weapon. Causes weapon to fire into a firing cone instead of direct firing line thus causing light inaccuracy
  • Syntax: Float, degrees


$Shots:

FS2 Open, 3.6.x:
  • Defines the number of shots every time the weapon is fired.
  • Syntax: Integer, number of shots


$decal:

FS2 Open, 3.6.x:
  • Defines impact decals if they are in use
  • Currently broken
  • +texture:
    • Defines the texture used for impact decals (can use -burn and -glow textures)
    • Syntax: String, filename
  • +backface texture:
    • Defines ???
    • Syntax: String, filename
  • +radius:
    • Defines the size of the impact decals on target
    • Syntax: Float, meters
  • +burn time:
    • Defines the time the -burn texture appears on the target
    • Syntax: Integer, milliseconds


$Transparent:

FS2 Open, 3.6.x:
  • Defines weapon effect as transparent. Enables optional fields for 'alpha animations'
  • +Alpha:
    • Defines the strenght of the alpha (transparency). And also the maximum value for the alpha cycle option
    • Syntax: Float, from 0 to 1
  • +Alpha Min:
    • Defines the minimum alpha value for alpha cycle option
    • Syntax: Float, from 0 to 1
  • +Alpha Cycle:
    • Defines the change in alpha per frame, between Alpha and Alpha Min values
    • Syntax: Float


Weapon Flags

"Electronics"

  • Will seize up the weapons and engines systems of any ship for a short period of time.


"Spawn Name,Value"

  • Will spawn the specified number of defined missiles upon detonation.


"Remote Detonate"

  • Can be triggered remotely via a second press on the trigger


"Puncture"

  • Reduces hull damage by 25%


"Big Ship"

  • These weapons cannot be mounted on small ships like fighters, bombers, sentry guns etc.


"Huge"

  • Allows this weapon to do the final 10% damage to a ship with the "Big Damage" flag.


"Supercap"

  • Allows this weapon to do the final 75% damage to a ship with the "supercap" flag.


"Bomber+"

  • The AI will prefer to use this weapon against bombers


"child"

  • Cannot be set as a weapon on any ship, but is instead a child of a weapon. Usually defined with "Spawn Name,Value"


"Bomb"

  • Makes this weapon targetable with the B key, and the AI prefers to use it against large ships


"No Dumbfire"

  • Missile will not fire without a lock


"in tech database"

  • Has the weapon in the tech database at the start of the campaign


"Player allowed"

  • Allows this weapon as a player weapon.
FS2 Open, 3.6.x:
  • EXTREMELY IMPORTANT NOTE:
    • Whenever you plan to use a weapon as a player one in your campaign or missions, DO USE THIS FLAG.
    • Not using it can cause problems within fs_open and it's a BAD MOD DESIGN.
    • In the future, fs_open will maybe be able to avoid these problems but, nevertheless, it's still a BAD DESIGN.
    • As another possible example: be careful to update "retail" tables if you plan to use Shivan weapons in player fighters.


"Particle Spew"

  • Makes the weapon projectile spew out particles
FS2 Open, 3.6.x:


"EMP"

  • This weapon will have an EMP effect on any ship within the blast radius
  • Can be defined with EMP Intensity and EMP Time


"Esuck"


"Flak"


"Corkscrew"

  • Makes this weapon spiral AND swarm 4.
FS2 Open, 3.6.x:


"Shudder"

  • Makes your ship shudder while you're firing the weapon


"lockarm"

  • Requires a target lock in order to arm its warhead. In other words weapon causes less damage if it hits the target without target lock.


"beam"


"stream"

  • Gives this weapon a streaming effect. In effect weapon keeps firing when firing button is kept pressed.


"puncture"

  • Reduces hull damage by 75%


"supercap"

  • Makes weapon capable of causing real damage against ships with "supercap" flag.


"countermeasure"

FS2 Open, 3.6.x:
  • Defines the weapon as a countermeasure


"Ballistic"

FS2 Open, 3.6.x:
  • Defines the weapon as a ballistic weapon that needs ammunition.
  • Make sure you define the size and reload rate for ballistic weapons


"pierce shields"

FS2 Open, 3.6.x:
  • Causes weapons to penetrate shield without causing damage to it.


"no pierce shields"

FS2 Open, 3.6.x:
  • Prevents weapons (beams) from piercing shields causing shields to be damaged by weapons first.


"local ssm"

FS2 Open, 3.6.x:


"tagged only"

FS2 Open, 3.6.x:
  • Weapon can only be fired at tagged targets


"beam no whack"

FS2 Open, 3.6.x:
  • Disables beam whacking (push). Practically same as setting beam mass to zero.


"cycle"

FS2 Open, 3.6.x:
  • Causes weapon to alternate between firing points


"small only"

FS2 Open, 3.6.x:
  • Causes AI to use the weapon only on small targets (fighters, bombers etc.)


"same turret cooldown"

FS2 Open, 3.6.x:
  • Forces the turrets to fire on the designated rate of fire on all difficulty levels and all AI levels


"apply no light"

FS2 Open, 3.6.x:
  • Prevents light from being applied to the weapon model.


"inherit parent target"

FS2 Open, 3.7:
  • Sets spawned 'chield' weapons to use parent weapon's target-


"training"

FS2 Open, 3.7:
  • Sets weapon to be of training weapon type. ?


Countermeasures

  • Usually not altered. Only one can exist
FS2 Open, 3.6.x:
  • More than one can exist


$Name:

  • Name of the countermeasure
  • Syntax: String, name


$Velocity:

  • Defines the spped of the countermeasure, relative to the ship.
  • Syntax: Float, meter per second


$Fire Wait:

  • Definies the minumum time between the countermeasure launches
  • Syntax: Float, seconds


Lifetime

  • Countermeasure's life time is defined between with minimum and maximum lifetime
  • $Lifetime Min:
    • Syntax: Float, seconds
  • $Lifetime Max:
    • Syntax: Float, seconds


$LaunchSnd:

  • Defines the sound for the countermeasure launch
  • Syntax: Integer or String, name or identification number of the sound as defined in sounds.tbl


$Model:

  • Defines the used model file (.pof)
  • Syntax: String.pof, model filename


Player Weapon Precedence

  • First the primary weapons are defined, from most powerful to least powerful, and then the same for secondaries
  • Syntax: ( "String" "String"), names of the weapons
  • Example:
$Player Weapon Precedence: (
     "UD-8 Kayser"
     "Prometheus R"
     "Subach HL-7"
     "Harpoon"
     "Tempest"
     "Rockeye"   )

Sample

#Primary Weapons

$Name:                            @Subach HL-7
   +Title:                           XSTR("GTW Subach HL-7", 3243)
   +Description:
XSTR( "Standard Issue
Level 3 Hull Damage
Level 2 Shield Damage", 3244)
$end_multi_text
   +Tech Title:                      XSTR("Subach HL-7", 146)
   +Tech Anim:                       Tech_Subach_HL-7
   +Tech Description:
XSTR(
"Descriptive text...", -1)
$end_multi_text
$Model File:                      none
   @Laser Bitmap:                    newglo9
   @Laser Glow:                      2_laserglow03
   @Laser Color:                     250, 0, 0
   @Laser Color2:                    0, 0, 250
   @Laser Length:                    10.0
   @Laser Head Radius:               0.90
   @Laser Tail Radius:               0.90
$Mass:                            0.2
$Velocity:                        450.0
$Fire Wait:                       0.2
$Damage:                          15
$Armor Factor:                    0.9
$Shield Factor:                   0.7
$Subsystem Factor:                0.3
$Lifetime:                        2.0
$Energy Consumed:                 0.20
$Cargo Size:                      0.0
$Homing:                          NO
$LaunchSnd:                       76
$ImpactSnd:                       85
$Flags:                           (  "in tech database"
                                     "player allowed"
                                     "stream")
$Icon:                            iconSD4
$Anim:                            SD4
$Impact Explosion:                none

#End


#Secondary Weapons

$Name:                            EMP Adv.
   +Title:                           XSTR("GTM-14 EMP Adv.", 3396)
   +Description:
XSTR( "Advanced Missile
Electromagnetic Pulse Weapon
General Purpose Suppression", 3397)
$end_multi_text
   +Tech Title:                      XSTR("GTM-14 EM Pulse Adv.", 3398)
   +Tech Anim:                       Tech_EMP
   +Tech Description:
XSTR(
"Descriptive text...", -1)
$end_multi_text
$Model File:                      EMPulse2.pof
$Mass:                            15.0
$Velocity:                        275.0
$Fire Wait:                       2.0
$Damage:                          45
$Blast Force:                     20.0
$Inner Radius:                    80.0
$Outer Radius:                    300.0
$Shockwave Speed:                 120.0
$Armor Factor:                    1.0
$Shield Factor:                   0.8
$Subsystem Factor:                0.5
$Lifetime:                        5.0
$Energy Consumed:                 0.0
$Cargo Size:                      4.0
$Homing:                          YES
   +Type:                            ASPECT
   +Turn Time:                       1.0
   +Min Lock Time:                   2.0
   +Lock Pixels/Sec:                 70
   +Catch-up Pixels/Sec:             100
   +Catch-up Penalty:                30
$LaunchSnd:                       118
$ImpactSnd:                       88
$FlyBySnd:                        -1
$Rearm Rate:                      2.0
$Flags:                           (  "player allowed"
                                     "EMP")
$Trail:
   +Start Width:                     0.25
   +End Width:                       0.75
   +Start Alpha:                     1.0
   +End Alpha:                       0.0
   +Max Life:                        1.5
   +Bitmap:                          MissileTrail04
$Icon:                            iconEMPulse
$Anim:                            ecm
$Impact Explosion:                ExpMissileHit1
$Impact Explosion Radius:         10.0
$EMP Intensity:                   375.0
$EMP Time:                        20.0

#End

$Player Weapon Precedence: (
     "Subach HL-7"
     "EMP Adv."   )