Weapon TDF Information

Last updated:  09/29/98 19:33

Wow, I thought this was going to be a pretty short section until I compiled the list of weapon variables!

In the following

[Hellfire_LASER]
{
    ID=243;
    name=High Energy Laser;
    rendertype=0;
    lineofsight=1;
    turret=1;
    range=460;
    reloadtime=.865;
    weaponvelocity=400;
    areaofeffect=15;
    duration=.2;
    soundstart=ion;
    soundhit=Laser2;
    firestarter=100;
    beamweapon=1;
    color=165; /*Pink & Dark Pink*/
    color2=225;
    tolerance=8000;
    explosiongaf=hellfirelaser;
    explosionart=pinkboom1;
    waterexplosiongaf=fx;
    waterexplosionart=h2oboom1;
    lavaexplosiongaf=fx;
    lavaexplosionart=lavasplashsm;
    startsmoke=1;
    [DAMAGE]
    {
        default=130;
    }
}

From the default weapons.tdf file included with Total Annihilation comes the following statements:  A weapon must fit into one of these basic categories :

  1. Ballistic - Weapon is fired according to a ballistic path using gravity
  2. Lineofsight - Weapon is fired in a straight line, gravity does not effect path
  3. Dropped - Weapon is dropped in order to use it, typically a bomb but could be a chemical
Variable Description Examples
[DAMAGE] A section within the weapon description itself, it contains two parts:
A default value, which defines how much damage the weapon does to an enemy unit by default.
A list of specific values (on a per-unit basis) that defines how much damage is done by the weapon to a particular unit.  (Units such as the "ARM Shooter" use this feature to enable it to inflict extra damage on Cans, Sumos, and Krogoths, and less damage to a Commander).
[DAMAGE]
{
    default=1230;
    corkrog=2460;
    armcom=615;
    corcom=820;
    corcan=2810;
    corsumo=5000;
}
accuracy Amount of accuracy in 64K deg that weapon is good for, 0=100%  
aimrate How fast (on average) the weapon aims, in 64K deg / sec.   Used by UnitView.  
areaofeffect The total area that receives that damage, one impact per unit in the area areaofeffect=8;
ballistic Is this a "ballistic" weapon? ballistic=1;
beamweapon Weapon is a straight beam weapon like a laser. beamweapon=1;
burnblow Weapon will detonate when it comes to the end of its range burnblow=1;
burst How many repeat times a weapon fires in one burst, such as the Flamethrower or EMG.  
burstrate The time delay when in burst mode between events  
color Color of beam weapon from the game palette color=144; /* Purple */
color2 Color to use on the beam weapon to make better and cooler, CGT color2=217;
commandfire This weapon will need to be expressly fired by the user each and every time it is used commandfire=1;
cruise   cruise=1;
dropped Is the weapon dropped?   (like a bomb out of a bomber) dropped=1;
duration   duration=.2;
edgeeffectiveness The percentage (1.0 = 100%) of the damage that is
inflicted at the edge of the area of effect.  Used for drop-off (i.e. units at the outskirts of the weapon's area of effect can take on less damage).
edgeeffectiveness =0.1;
endsmoke Draw a puff of smoke when weapon terminates endsmoke=1;
energy Amount of energy needed  
energypershot How much energy is consumed each time the weapon is fired.   Most use none. energypershot=1500;
explosionart The name of the image within the GAF file specified that is the actual animation sequence.  (For example, "pinkboom1" is the animation sequence within "hellfirelaser.gaf" that models a pink explosion).    Name of animation sequence for explosion. explosionart =explode5;
explosiongaf The name of the GAF file that describes the particular type of explosion animation.  .GAF file that the explosion art is in. explosiongaf=fx;
firestarter What is the (percentage) chance that this weapon will start a fire if something flamable is hit.  Weapon will cause fires, expressed as a %, where 100% guarantees a fire. firestarter=90;
flighttime The time the unit will fly for after it enters the second phase of operation, used for starburst missiles flighttime=400;
groundbounce Weapon will not detonate with the ground but instead bounce  
guidance Indicates that weapon is guided and uses the turn rate specified totrack enemy unit guidance=1;
ID What is the Weapon ID for the unit.  Weapon ID's, much like Unit ID's, must be unique.  Total Annihilation has a hard-coded limit of 255 weapon ID's, and TA and the expansion packs used up over 200 of them, so it may be difficult to find a unique ID for your unit considering the many 3rd party groups out there making their own units. ID=160;
lavaexplosionart The name of the image within the GAF file specified that is the actual animation sequence.  (For example, "pinkboom1" is the animation sequence within "hellfirelaser.gaf" that models a pink explosion). lavaexplosionart =lavasplashsm;
lavaexplosiongaf The name of the GAF file that describes the particular type of explosion animation. lavaexplosiongaf=fx;
lineofsight   lineofsight=1;
metal Amount of metal needed  
metalpershot How much metal is consumed each time the weapon is fired. metalpershot=5;
meteor   meteor=1;
minbarrelangle The minimum angle (in degrees) the barrels can point, usedin ballistic calculations minbarrelangle=-15;
model 3D model to use as this weapon model=missile;
name Name of the weapon, for reference. name=Annihilator Weapon;
noautorange When set the weapon will not detonate at range automatically, used mostly for heavy rockets noautorange=1;
noexplode No explosion when weapon impacts target noexplode=1;
noradar   noradar=1;
paralyzer Does the weapon act as a paralyzer?  Weapon will stun the enemy for a length of time described in the
damage field, time=ticks.
paralyzer=1;
pitchtolerance   pitchtolerance=12000;
propeller if the model has a propeller that spins propeller=1;
randomdecay Maximum time delta that burst weapon will randomly decay at end of path  
range The weapon's range, in pixels. range=600;
reloadtime Seconds between shots (floating point allowed) reloadtime=20;
rendertype Type of rendering system to use, 3D model, bitmap, etc rendertype=0;
selfprop Is the weapon self-propelled?  Weapon is self propelled with a burn time described by flighttime selfprop=1;
shakeduration When an earthquake is caused by the weapon, how long does it last? shakeduration=2;
shakemagnitude When an earthquake is caused by the weapon, how strong is it? shakemagnitude=32;
smokedelay Smoke dispersal interval expressed in seconds smokedelay=.1;
smoketrail Indicates whether or not a weapon will emit a smoke trail smoketrail=1;
soundhit Sound to make when the weapon detonates (if the weapon detonates) soundhit=xplolrg1;
soundstart Sound to make when the weapon fires. soundstart =annigun1;
soundtrigger Make the weapon sound when the weapon fires in burst mode soundtrigger=1;
soundwater Sound to make when the weapon hits the water  
sprayangle Maximum deviation from the straight line to the target the
weapon strays, used for burst weapons
sprayangle=1024;
startsmoke Draw a puff of smoke when the weapon fires startsmoke=1;
startvelocity Weapon will start at this velocity instead of 0 startvelocity=250;
stockpile   stockpile=1;
targetable   targetable=1;
tolerance Amount of accuracy weapon will use when aiming, most are default 0 tolerance=8000;
tracks When set the weapon will track a moving target after a weapon conversion tracks=1;
turnrate Used for guided weapons, is in angular units (0-64k)/second turnrate=32768;
turret Does the weapon originate (i.e. is it fired) from a turret?  (as opposed to being launched vertically, I guess)  Weapon must be deployed from a turret with a 360 deg rotation and pitch turret=1;
twophase Indicates weapon operates in two phases twophase=1;
unitsonly Does the weapon only affect other units?  Weapon will only detonate on enemy units as opposed to
obstructing terrain.
unitsonly=1;
vlaunch Is the weapon launched vertically? vlaunch=1;
waterexplosionart The name of the image within the GAF file specified that is the actual animation sequence.  (For example, "pinkboom1" is the animation sequence within "hellfirelaser.gaf" that models a pink explosion).  Name of animation sequence for water explosion. waterexplosionart =h2oboom1;
waterexplosiongaf The name of the GAF file that describes the particular type of explosion animation.  .GAF file that the water explosion art is in. waterexplosiongaf=fx;
waterweapon Weapon is meant to travel through water waterweapon=1;
weaponacceleration Expressed in pixels/second/second weaponacceleratoin =120;
weapontimer How long weapon is active in seconds (floating point allowed), trajectory weapons use 0 so it is calculated weapontimer=2;
weapontype2 Describes another weapon that the weapon turns into in the second phase  
weaponvelocity Maximum attainable weapon veolocity in pixels/second weaponvelocity=1000;

A utility exists to help in the creation of a weapon TDF file called Total Weapon.   It can be downloaded from TADD's download area.  It does not allow for the setting of all the variables listed here, but it is a good start, and a good reference to figuring out what all these variables mean.