The weapon is usually referenced at the bottom of the UnitObj, under "Weapon". The weapon config is generally much simpler than the object that creates it. Here is the Guardian's weapon config.
NULL - The NULL node stlyle indicates that no manipulation is required. This is the default. There should be no nodes specified for this node style.
XYZ - The XYZ node style freely rotates about a single node. There should be one node specified for this node style.
X - The X node style rotates only about the X (right) axis. There should be one node specified for this node style.
Y - The Y node style rotates only about the Y (up) axis. There should be one node specified for this node style.
Y_X - The Y_X node style rotates about the Y (up) axis and then about the X (right) axis. There should be two nodes specified for this node style.
Amount - How much damage is done with each shot.
Effective - Percentage of the total damage amount that the weapon can do against a specific armor type. The default is 0%, so every armor type that you want to damage must be listed. Keep in mind that hit point numbers vary widely between different unit categories, so giving equal effectiveness against infantry and vehicles will still allow vehicles to last longer under fire. Also, flyers generally have very low hit points, so doing a relatively small amount of damage will still be effective. The game has six armor types, listed as follows.
Armor_Infantry - Units that are on foot. This generally falls in line with units that have the biological filter, though there are some exceptions.
Armor_Vehicle - Any ground unit that has wheels, tracks, or hover ability. It corresponds to the unit having some kind of armored shell that must be pierced in order for the unit to be destroyed.
Armor_Structure - Used for buildings and turrets. Most anything that doesn't move has this armor type.
Armor_Flyer - Air units. This armor type is very important, as there are currently very few units that can hit it.
Armor_Naval - Boats. Generally its percentages are close to vehicle, but a little bit lower to give boats more of an advantage.
Armor_Mine - This is the wild card of the bunch. It is used for mines, but it is also used for units that create short-range explosions with radius damage. If you want to prevent a unit from hurting itself with its own explosion, give it an armor type of mine in its UnitObj and give its explosion a 0% effectiveness against that armor type. This technique is used with the Baron Samedi, so that it can do lots of damage when it slams its fists on the ground without killing itself.
Delay - Rate of fire. Multiply the amount of damage a unit does by its effectiveness % against a targeted unit, then multiply that number by the delay to get its damage per second against a specific armor type.
FirePoints - This connects the weapon that we are creating to the hardpoint on the art asset. In order for it to work, the art asset needs to have an existing hardpoint with the name that is referenced inside the FirePoint's scope.
VERY IMPORTANT NOTE: Many units have multiple hardpoints, such as the Scorpion Tank and the Lightning Tower. If the weapon it is firing is a Projectile, you must divide the amount of damage it does per shot by the number of hardpoints to get the total damage done per shot.
Example: Say you want the Lightning Tower to do 40 points of damage every time it fires. Looking at the art asset, you will notice that it fires from 4 different hardpoints. So you must divide the amount of damage done by 4, thus doing 10 points of damage from each hardpoint each time it fires.
VERY IMPORTANT SUB-NOTE: Dividing the damage amounts between hardpoints does not apply if it is an Instant weapon. Instant weapons do not create projectiles, so no matter how many hardpoints it has, you still list the total amount of damage per shot. See the Judas config for an example of this.
TurnRate - Number of degrees per second that the turret rotates. The unit must have a turret in the art asset and have the nodes properly configured for this to work.
Ammunition - Number of shots that a unit can fire. This is only used on some flyers in the game. The unit will automatically display its ammo as a yellow bar at the top of its HUD if this entry is used.
Fixed - A unit with the Fixed flag set will always fire in the direction its hardpoint is pointed. This is used on the Sky Fortress to get it to always shoot straight down.
KillUser - If this flag is set, the unit will automatically self-destruct when it fires. It is used on the Suicide Tograns in the J04 mission.
HighTrajectory - Fires arc projectiles at a steeper angle. Arc projectiles are defined in the ProjectileObj. This flag is not currently used in the game.
OneShot - Fires once and then stops firing.
LeadAngle - Weapon will fire at the predicted position of the target. Can make hitting of moving targets better. Used on most projectile weapons.
PotShot - Allows unit to fire while moving. Used to great affect on the Scorpion Tank and the Gogo, as well as a few others.
Speed - The initial speed of projectiles in kilometers per hour.
Projectile - The name of the projectile that is fired by the weapon. Should point to an existing projectile object.