# Transcendence Wiki

Documenting the Universe.

### Site Tools

modding:xml:weapon

## Overview

Weapons are item types that fire projectiles. The <Weapon> element defines both the way in which projectiles are fired (e.g., the rate of fire, the power consumed, etc.) and the nature of the projectiles themselves (e.g., the speed of the projectile, the damage caused, etc.)

Some weapons fire a single type of projectile; in that case, the definition of the weapon and the projectile are both included in the <Weapon> element. See: Example 1.

Other times, the weapon fires more than one type of projectile. In that case, the definition of the projectiles are in the <Missiles> sub-element. See: Example 2.

Here is a comprehensive thread that describes how weapons are defined: Weapons Overview (basic++)

## Basic Parameters

These are the attributes for a weapon that define how the projectiles are fired.

• fireRate= The number of game seconds that elapse between shots. By default, a game second is half a tick, so this is twice the number of ticks between shots.
• powerUse= The amount of power consumed each tick while the weapon is firing. Power is expressed in tenths of megawatts, so a value of 10 equals 1 MW.
• idlePowerUse= The amount of power consumed each tick while the weapon is not firing. Optional. Defaults to 10% of powerUse. (New in 1.06)
• recoil= If non-zero, this accelerates the ship opposite to the direction of fire. The acceleration is proportional to the square of the value (e.g., a value of 2 has a recoil four times stronger than a value of 1).
• failureChance= The % chance that the weapon will fail when it fires.
• charges= If true, the weapon uses up a charge when it is fired. The weapon will not fire if it has no charges left.
• counter= Used to limit how often a weapon can be fired in a certain time period. “temperature” makes the counter represent the weapon's temperature, which should start at 0 and increase with each shot. At 100, the weapon begins to overheat; if fired, an overheating weapon may fire normally, get jammed, become disabled, or damage itself, each with a 25% chance. At 120, the weapon always jams. “capacitor” means that the counter represents the weapon's stored power, which should start at 100 and decrease with each shot. When the capacitor is low, the weapon usually cannot fire as fast.
• Number of shots the deplete the counter once = (60 / fireRate) * 100 / ((60 / fireRate) * counterActivate - (30 / counterUpdateRate) * |counterUpdate|)
• Number of seconds to recharge the counter once = 100 / ((30 / counterUpdateRate) * |counterUpdate|)
• Number of ticks between shots when the counter is depleted = (30 * counterActivate) / ((30 / counterUpdateRate) * |counterUpdate|)
• Fire rate when the counter is depleted = counterActivate / ((30 / counterUpdateRate) * |counterUpdate|)
• Number of seconds to deplete the counter once = 100 / ((60 / fireRate) * counterActivate - (30 / counterUpdateRate) * |counterUpdate|)
• counterActivate= The change in the counter value every time the weapon is fired. Should be positive for “temperature” counters and negative for “capacitor” counters. For “capacitor” counters, this is also the minimum counter value required to fire the weapon.
• counterUpdate= The change in the counter value every time the counter updates. Should be negative for “temperature” counters and positive for “capacitor” counters.
• counterUpdateRate= The ticks between each counter update

## Launchers

A weapon with more than one <Missile> sub-element is automatically considered a launcher. Launchers take up a different slot and are fired with a different trigger. Moreover, the player may select which missile to fire with the launcher. [In contrast, non-launchers can only fire a single type of projectile.]

• launcher= If set to true, this parameter specifies that the weapon should be treated as a launcher regardless of the number of <Missile> sub-elements. With this settings, even ammo-less weapons can be treated as launchers.
• reportAmmo= For purposes of statistics, when a launcher is fired, the engine collects statistics about the number of times the launcher fired and the number of each type of missile fired. Since non-launchers can only fire one type of projectile, we don't keep track of both. If you want to override this behavior for non-launchers, then set reportAmmo=“true”.

## Fire Direction

By default a weapon fires forward at 0 degrees. You may change the direction of fire with the following attributes:

• omnidirectional= If true, the weapon is mounted on a turret that can fire in any direction. On a player ship the weapon will fire at the currently selected target (friendly or enemy) or, if no target is selected, at the nearest enemy ship.
• minFireArc= A non-zero value indicates that the weapon swivels to aim at targets. This is the minimum angle of the swivel. Within the fire arc defined by minFireArc and maxFireArc, the weapon will fire as an omnidirectional weapons, i.e., aiming at the currently selected target or the nearest enemy ship.
• maxFireArc= The maximum angle of the swivel.
• If minFireArc and maxFireArc are equal but non-zero then the weapon fires in the specified direction. For example, minFireArc=“180” and maxFireArc=“180” means that the weapon always fires to the rear of the ship.

NOTE: A weapon's fire direction interacts with the fire direction specified in the device slot (the <Devices> section of the <ShipClass>). In effect there are three classes of fire direction:

• omnidirectional: The weapon can fire in any direction without restriction.
• swivel: The weapon can fire across a specific fire arc of less then 360 degrees.
• fixed: The weapon fires at a fixed angle (no necessarily 0 degrees).

Since both the weapon and the device slot can specify a fire direction, there are nine possible results:

```                                      DEVICE SLOT
omni                swivel              fixed
WEAPON -------------------------------------------------------------------------
omni   |            omni                 omni                omni
|
|
swivel |            omni              device slot          swivel in
|                                swivel          fixed direction
|
fixed  |            omni              device slot      fixed in weapon+device
|                                swivel             direction```
 Device Slot Fire Direction omnidirectional omnidirectional omnidirectional omnidirectional omnidirectional device slot swivel Swivel in fixed direction omnidirectional device slot swivel Fixed in weapon+slot direction

For example, a swivel device slot always overrides any swiveling in the weapon; but a fixed device slot combines with the fire direction of the weapon.

By default a weapon only fires when it is the selected weapon and when the player presses the appropriate fire key ([Ctrl] for primaries, [Shift] for launchers).

• linkedFire= The linkedFire attribute removes the weapon from the selection rotation (i.e., the weapon can never be selected). Instead, the weapon will fire whenever the selected weapon fires. A launcher with the linkedFire attribute will fire whenever the launcher fires; a linked primary will fire whenever the selected primary fires. The linkedFire attribute can have one of the following values:
• “always” : With this value, the linked-fire weapon will always fire, regardless of the position or existance of a target.
• “whenInFireArc” : With this value, the linked-fire weapon will fire only if the selected target or an enemy ship is within its fire arc.

In general, forward-facing weapons should use the always value while others should use the whenInFireArc value.

## Configurations

A weapon can fire multiple projectiles at the same time. There are two ways to specify this.

• configuration= This attribute specifies a standard configuration. The following values are valid:
• “alternating”: Fires one projectile offset from the weapon position at 12 pixels left, then fires one projectile at 12 pixels right.
• “dual”: Similar to “alternating”, but fires both projectiles at once.
• “spread2”: Fires one projectile aimed 5 degrees to the left and one aimed 5 degrees to the right.
• “spread3”: Similar to “spread2”, but includes a projectile aimed directly forward.
• “spread5”: Similar to “spread3”, but includes a projectile aimed 2 degrees to the left and another aimed 2 degrees to the right.
• “wall”: Similar to “dual”, but includes one projectile offset 24 pixels to the left, one from the weapon position, and one offset 24 pixels to the right.

### <Configuration>

A better way to specify how projectiles are fired is to use the <Configuration> sub-element.

For example:

```   <Configuration aimTolerance="5" alternating="true">
</Configuration>```

You can place aimTolerance=“how much angle you want the weapon to deviate from a straight line” within <Configuration>. In addition, alternating=true can be placed within <Configuration> to make the weapon fire each shot sequentially. The advantage of using alternating=true in <Configuration> as opposed to specifying configuration=“alternating” under <Weapon> is that the former allows a weapon to fire more than two shots in sequence; the sequence is determined by the order in which each <Shot> is placed inside <Configuration>. In the above example, <Shot posAngle=“90” posRadius=“12” angle=“3d5-9”/> will always be fired first, followed by <Shot posAngle=“270” posRadius=“12” angle=“3d5-9”/>.

```<Weapon
type=            "missile"

damage=            "kinetic:0"
repeating=          "150000"
fireRate=         "30"
hitPoints=         "25"
interaction=      "5"
hitEffect=         "&efShieldHit1;"
missileSpeed=      "17"
accelerationFactor=   "75"
powerUse=         "100"
deviceSlots=      "0"
noFriendlyFire=      "true"
>
<Configuration aimTolerance="5">
</Configuration>
<Effect>
<Image imageID="&rsParticles;" imageX="0" imageY="0" imageWidth="16" imageHeight="16" imageFrameCount="4" imageTicksPerFrame="1" randomStartFrame="true"/>
</Effect>
</Weapon>```
`<shot>`

means one shot. In this example, 6 shots are fired at the same time each time the weapon is fired.

`posAngle="180"`

posAngle is the angle you want it to fire from. 0 is facing upwards (as in the nose of the Sapphire at the 1st facing.)

`posRadius="20"`

means how far you want the shot to appear from the angle [in pixels] , which means that the shot shows up 20 pixels from center, towards the nose of the craft.

`angle="0-180"`

means how much you want the shot to deviate (as in it can fire from angle x to y) from the initial firing. Since some of it is 0-180, and others are 360-181, that means all of the shots cover the full 360 degrees. This is different from posAngle and posRadius because posAngle and posRadius determine where the shot comes out, angle determines where the shot goes. Angles 0 and 360 is the same from what I've seen, and 90 is to the left of the playership. If you want a smaller angle, use something like 355-10 to have a narrow cone in front of your ship.

maxHPBonus If specified, this is the maximum HP bonus enhancement for the device. For example, a value of 100 means that the weapon cannot be enhanced beyond 100% bonus damage. The default is 150. [API Version 17]

## Defining Projectiles

The following attributes may be used in the <Weapon> element to define a single projectile type or they may be used in a <Missile> sub-element.

• ammoID= If specified, this is the UNID of the item type that will be used as ammo for this projectile.
• type= The type of projectile defines its basic nature. The following types are supported:
• area
• beam
• missile
• particles
• damage= The damage done by the projectile. Damage is expressed as a damage descriptor string.
• lifetime= The number of ticks that the projectile will live for. This is expressed as a dice range. Projectiles with fragments will automatically detonate at the end of their lifetime unless they are destroyed by something else.
• repeating= If specified, this is the number of extra shots that will fire.
• missileSpeed= The speed of the projectile, in % of light-speed. If this attribute is not specified, then the projectile travels at light-speed. This is expressed as a dice range.
• initialDelay= If non-zero, the projectile doesn't appear for this number of ticks, expressed as a dice range.
• canHitSource= If true then this projectile can hit the object that fired it. By default, this is false.
• noFriendlyFire= If true then the projectile never hits any friendly objects.
• noImmobileHits= Prevents the missile from hitting immobile targets, such as sentries. False by default.
• noImmutableHits= Prevents the missile from hitting immutable objects, such as stargates. False by default.
• noShipHits= Prevents the missile from hitting ship objects. False by default.
• noStationHits= Prevents the missile from hitting station objects. False by default.
• noWorldHits= Prevents the missile from hitting objects with “scale= world”, such as asteroids and planets. Example: Pteravores. False by default.
• autoAcquireTarget= If true then the projectile will automatically acquire an enemy target within 30 ls when fired.1)
• multiTarget= If true, then each projectile can have its own target. Not all projectiles may aim for the selected target, but at least one projectile will as long as it is in range. If the number of projectiles is greater than the number of targets, then one target can have multiple projectiles.
• targetRequired= If “true”, then firing or detonation cannot occur unless there is a target.
• fragmentTarget= If “true”, then projectiles from fragments will be aimed towards targets upon detonation.
• fragmentCount= DEPRECATED: Use count attribute on fragments instead.
• passthrough= If specified, this is the chance that the projectile will continue in its path even after it hits and damages an object. NOTE: For area weapons the default is 80; for all others the default is 0.
• sound= The sound effect UNID to be played when the projectile is fired.

Be careful when using type=“whatever”. Some weapons, like beam, do not accept tags like <effect>.

### type=beam

Certain weapontypes only take certain effects: “beam” is known to take these configurations:

“starblaster”→ Used on the katana. can specify colors using hexadecimal.

```                                beamType=			"starblaster"
primaryColor=		"0x00, 0x80, 0xff"
secondaryColor=		"0x80, 0xc0, 0xff"```

“lightning”→ Used on the Ares lightning turret. Can specify colors using hexadecimal as well as intensity

```                                beamType=			"lightning"
primaryColor=		"0xf0, 0xff, 0xa0"
secondaryColor=		"0xa9, 0xff, 0x00"
intensity=			"5"```

“blaster”→ used on the bolide

`                                beamType=			"blaster"`

“heavyblaser”→ used on the TeV9

```                                beamType=			"heavyblaster"
primaryColor=		"0x33, 0xff, 0x33"
secondaryColor=		"0x00, 0x99, 0x00"
intensity=			"5"```

“laser”→ used on the mining laser

```                                beamType=			"laser"
primaryColor=		"0xf1, 0x5f, 0x2a"
secondaryColor=		"0xff, 0x00, 0x00"
sound=				"&snLaserCannon;"```

“greenparticle”→ cool looking one. Used on the lancer cannon

`                                beamType=			"greenparticle"`

“blueparticle”→ not used in Vanilla, is the same as greenparticle, only blue.

`				beamType=			"blueparticle"`

NOTE: intensity is a parameter used by SOME beam type weapon projectiles. Valid beams include heavy blaster & lightning. Note that intensity of less than 4 will not work on beams due to a strange bug that causes them to disappear at 0, 90 180 and 270 degrees. Intensity will basically increase the size of the projectile.

### type=missile

The following attributes are exclusive to missiles

• accelerationFactor= The percentage at which the projectile's speed increases by every 10 ticks (1/3 seconds).
• maxMissileSpeed= The maximum speed that a projectile can reach, due to accelerationFactor= or otherwise.
• stealth= The stealth value of the projectile.
• hitPoints= The amount of damage needed to destroy this projectile in flight. 2) If applicable, projectiles automatically detonate upon destruction.
• interaction= The solidity of the projectile; the chance that this projectile may interact with other projectiles, or vice versa. Defaults to 0 for beams and 100 for everything else (this ensures that beams never collide with each other unless they are specified to).3)

If two projectiles collide and one of them has 100 interaction, then they will interact. If the two both have 0 * interaction, then they will just pass through each other. Otherwise, the highest interaction of the two is the percent chance that they will interact.

• maneuverability= The time in ticks that this projectile takes in between maneuvering.4) Defaults to 1 if maneuverRate is defined.5) Automatically makes this projectile tracking.
• maneuverRate= The maximum angle that this projectile can turn when maneuvering.6) If maneuverability is defined, this defaults to 18.7)

### type=area

Used to make shockwaves

• expansionSpeed= The speed (in % of light-speed) at which the damaging travel outward. Defaults to 20.8)
• areaDamageDensity= The number of damaging points along the edge of the shockwave. Defaults to 32.9)

### type=particles

Releases a cloud of particles

• minDamage= The minimum damage done by each projectile 10)

### <Effect>

The <Effect> sub-element defines how to paint the projectile. If the element is omitted, the projectile will be invisible. See the page on Effects for a full description.

### <HitEffect>

This optional sub-element defines how to paint the explosion that results when the projectile hits a target. If the element is omitted, a default hit effect is used. See the page on Effects for a full description.

### <FireEffect>

This optional sub-element defines how to paint the muzzle-flash effect when a weapon fires. If the element is omitted, no fire effect is painted. See the page on Effects for a full description.

### Vapor Trail

• vaporTrailLength= integer, probably pixels, default is 64
• vaporTrailWidth= integer, probably pixels
• vaporTrailWidthInc= integer, has something to do with how trapezoidal the trail is probably, default is 25
• vaporTrailColor= presumably the same color formats as are used elsewhere

quick notes from looking at one place in the source –Weaver

## Fragments

All projectiles with non-periodic fragmentation automatically detonate within range of a target. Fragments can have the same attributes as weapons.

• count= The number of projectiles released per detonation.
• failsafe= Minimum ticks until the projectile can detonate 12)
• fragmentInterval= The number of ticks between each detonation. Sets fragmentation to be periodic and disables proximity detonation.

## Standard Stats

 Level 1 2 3 4 5 Damage (per 180 ticks) Power Cost Ammo Cost Over Under 4 10 350 0.6 0 0 5 20 800 1.2 0 -20 7 50 1850 3.0 0 -50 9 100 4000 6.0 0 -100 12 200 8500 12.0 5 -170 16 300 18500 18.0 5 -250 21 500 39000 30.0 5 -300 27 1000 78500 60.0 10 -300 35 2000 158000 120.0 10 -300 46 3000 320000 180.0 10 -300 60 4000 640000 240.0 25 -300 78 6000 1300000 360.0 25 -300 101 8000 2700000 480.0 25 -300 131 10000 5300000 600.0 100 -300 170 12000 10600000 720.0 100 -300 221 15000 21300000 900.0 100 -300 287 20000 42600000 1200.0 200 -300 373 25000 85200000 1500.0 200 -300 485 30000 170000000 1800.0 200 -300 631 35000 341000000 2100.0 200 -300 820 40000 682000000 2400.0 200 -300 1066 50000 1400000000 3000.0 200 -300 1386 60000 2700000000 3600.0 200 -300 1802 70000 5500000000 4200.0 200 -300 2343 80000 10900000000 4800.0 200 -300
• The standard fire delay is 8 ticks (or 3.75 shots per second)
• The standard range is 60 ls
• The standard ammo mass is 10.0 kg
• The Over and Under values are Balance Points; they are used when determining the overpoweredness or underpoweredness of a weapon. Rather than being chosen based on the level of the weapon, they are chosen based on the difference between
Damage Level 1 1 4 4 7 7 10 10 13 13 16 16 19 19 22 22

This table shows the standard weapon level that each damage type is associated with.

## Properties

• ammoTypes If the weapon uses ammo, this is a list of UNIDs for every compatible ammo item type.
• averageDamage This is the average unadjusted damage dealt every time the weapon is fired. This assumes that all projectiles hit the same target.
• balance The percentage to which the weapon is overpowered relative to its level. 100 means 100% overpowered and -100 means 100% underpowered
• balanceDamage The damage per 180 ticks that the weapon should have in order to balance it.
• balanceCost The value that the weapon should have in order to balance it.
• balanceExcludeCost The balance value of the weapon, excluding any balance points lost due to value.
• damage Total damage per 180 ticks, assuming continuous fire and 100% accuracy.
• damagePerProjectile The damage of a single projectile 13)
• damageWMD180 Total damage per 180 ticks, multiplied by the weapon's WMD percentage
• damaged Whether this weapon is damaged and has reduced functionality.
• effectiveRange= The maximum range (in light-seconds) in which the weapon is effective. Includes the maximum range of the first fragment and its subfragments
• For area weapons: (expansionSpeed/100) * (lifetime/30) * 0.75
• For tracking weapons: ((missileSpeed + maxMissileSpeed) / 2) * (lifetime * 0.75)
• For all other weapons (if lifetime > 100, replace it with 100): ((missileSpeed + maxMissileSpeed) * lifetime)
• fireArc The weapon's ability to automatically aim at targets
• For omnidirectional weapons: “omnidirectional”
• For swivel weapons: (list minFireArc maxFireArc)
• For fixed weapons: Device slot angle + Weapon angle
• fireDelay The time in ticks between shots
• fireRate The max number of shots per 1000 ticks
• lifetime The maximum value (in ticks) of the weapon's lifetime attribute
• linkedFireOptions Returns a list with a single string:
• “always”
• “whenInFireArc”
• “targetInRange”
• maxDamage
• minDamage
• omnidirectional
• secondary
• stdCost
• tracking

## Events

Weapon items support the following events (which can be added in the <Events> element for an <ItemType>).

#### <OnCreateShot>

• gSource The shot
• aTargetObj
• aAttacker
• aOrderGiver
• aWeaponType

#### <OnDamageOverlay>

This event is called when a projectile from this weapon hits an overlay on a ship. If the event returns an integer, the value is interpreted as the amount of damage to pass to shields (before adjustments for damage type). If the event returns Nil, the original damage amount is unchanged.

• gSource is the object that was hit by the projectile.
• aAttacker is the object that fired the projectile.
• aCause is the projectile object.
• aDamageHP is the adjusted damage (in hit points) that reached the armor.
• aDamageType is the type of damage.
• aArmorSeg is the armor segment number on the object that was hit (not the actual armor item itself).
• aHitDir is the absolute direction that the projectile came from.
• aHitPos is the vector position where the shot hit.
• aOrderGiver is the object that ordered the attacker.
• aOverlayID is the ID of the overlay that was hit.
• aWeaponType is the UNID of the weapon (for missile weapons, this is the UNID of the missile).

#### <OnDamageShields>

This event is called when a projectile from this weapon hits the shields on a ship.

If the event returns Nil, the shields process the damage normally.

If the event returns an integer, then the shields are by-passed and the value is interpreted as the amount of damage to do to armor.

If the event returns the string “reflect”, then the projectile is reflected and neither shields nor armor take any damage.

If the event returns a list, then the list must have three elements. The first element is either the string “reflect” or Nil. The second element is the number of HP to subtract from the current shield level. The third element is the number of HP to do to armor.

• gSource is the object that was hit by the projectile.
• aArmorDamageHP is the number of hit points of damage that will be passed to armor after the shields absorb some.
• aAttacker is the object that fired the projectile.
• aCause is the projectile object.
• aDamageHP is the amount of damage (in hit points) that reached the armor. It has not been adjusted for damage type.
• aDamageType is the type of damage.
• aDeviceItem is the shield item.
• aArmorSeg is the armor segment number on the object that was hit (not the actual armor item itself).
• aHitDir is the absolute direction that the projectile came from.
• aHitPos is the vector position where the shot hit.
• aOrderGiver is the object that ordered the attacker.
• aOriginalArmorDamageHP if the shot will be reflected, this is the number of hit points that would have been dealt to armor if the shot had not been reflected.
• aOriginalShieldDamageHP if the shot will be reflected, this is the number of hit points that would have been dealt to shields if the shot had not been reflected.
• aShieldDamageHP is the number of hit points of damage that the hit will do to shields.
• aShieldHP is the current number of hit points on the shields.
• aShieldReflect is the string “reflect” is the shield will reflect this projectile. Otherwise, its value is Nil.
• aWeaponType is the UNID of the weapon (for missile weapons, this is the UNID of the missile).

#### <OnDamageArmor>

This event is called when a projectile from this weapon hits the armor of a ship. If the event returns an integer, the value is interpreted as the amount of damage to do to armor (before adjustments for damage type). If the event returns Nil, the original damage amount is unchanged.

• gSource is the object that was hit by the projectile.
• aArmorSeg is the armor segment number on the object that was hit (not the actual armor item itself).
• aAttacker is the object that fired the projectile.
• aCause is the projectile object.
• aDamageHP is the adjusted damage (in hit points) that reached the armor.
• aDamageType is the type of damage.
• aHitDir is the absolute direction that the projectile came from.
• aHitPos is the vector position where the shot hit.
• aOrderGiver is the object that ordered the attacker.
• aWeaponType is the UNID of the weapon (for missile weapons, this is the UNID of the missile).

• gSource
• aCause
• aAttacker
• aOrderGiver
• aHitPos
• aHitDir
• aWeaponType

#### <OnDestroyShot>

• gSource The shot
• aWeaponType
• aAttacker
• aOrderGiver

#### <OnFireWeapon>

This event is called on weapon items when the weapon fires. For weapons with multi-projectile configurations or for repeating weapons, the event is called once per projectile. The event may use sysCreateWeaponFire to create projectiles. If the event returns Nil, then the normal projectile is created.

• gSource is the object that fired the weapon.
• gItem is the weapon itself (for missile weapons, this is the launcher).
• aFireAngle is the angle that the weapon fired at.
• aFirePos is the position where the weapon fire originates.
• aTargetObj is the target object (if any).
• aWeaponBonus is the %bonus confered by any enhancements.
• aWeaponType is the UNID of the weapon (for missile weapons, this is the UNID of the missile).

#### <OnFragment>

This event is called on a weapon when a shot from that weapon fragments due to either proximity or reaching the end of its lifetime.

• aNearestObj The object that triggered the fragmentation (or Nil)
• aTargetObj The object that the attacker was targeting (or Nil if no target)
• aHitPos The detonation position
• aHitDir The direction that the shot was traveling
• aWeaponType The UNID of the weapon that fired
• aWeaponFragment An identifier for the fragmentation (in case a fragment also fragments)
• aCause The shot object
• aAttacker The attacker
• aOrderGiver The object that ordered the attack (in case aAttacker is an auton)
1)
CSystem.cpp, 453, Metric MAX_AUTO_TARGET_DISTANCE
2)
CMissile.cpp, 575-648
3)
CSpaceObject.cpp, 4874-4890, InteractsWith
4)
TSEWeaponFireDesc.cpp, 455, IsTrackingTime
5)
CWeaponFireDesc.cpp, 1987
6)
TSEWeaponFireDesc.h, 521, int m_iManeuverRate
7)
CWeaponFireDesc.cpp, 1985
8)
TSEWeaponFireDesc.cpp, 528, DiceRange m_ExpansionSpeed;
9)