DAMF (damage factor) is a configurable ship-class value that scales damage from the weapons that use it. It describes resistance to those hits, not the ship's cargo capacity or current cargo load.

Introduction in classic GE

The classic 3.2c release notes (December 1993) introduce the SnnDAMF ship-class option in place of the former SnnRES1 reserved field. The stated goal was to let a large ship be fragile or a small ship be tough, rather than making damage resistance follow ship size. The setting remains in the 3.2e class table as SnnDAMF in MBMGESHP.MSG.

Classic applies DAMF to mine, torpedo, and missile damage through ton_fact(). Despite that helper's old name, it uses the target class's DAMF:

adjusted damage = raw damage / (DAMF / 100)

Thus DAMF 100 leaves that damage unchanged, DAMF 200 halves it, and DAMF 50 doubles it. These are damage ratios, not exact survival times: shields and other combat mechanics still matter.

The classic phaser exception

Classic standard and hyper-phasers do not use DAMF. They divide their calculated damage by 1 + (class maximum cargo tons / 15000). The class's configured cargo capacity is used even when its hold is empty. This is the incomplete transition documented in Classic bug: Phaser durability uses cargo capacity.

The stock Sarten Obliterator illustrates the difference. Its maximum cargo capacity is 234,000 tons and its DAMF is 500, so classic uses these divisors:

Mine, torpedo, missile:  500 / 100 = 5       (20% of raw damage)
Standard, hyper-phaser: 1 + 234000 / 15000 = 16.6  (about 6% of raw damage)

For comparison, the stock Cyberquad has 12,500 tons of cargo capacity, giving it a phaser divisor of about 1.83. For equal pre-divisor phaser damage, the Obliterator therefore takes roughly one-ninth as much as the Cyberquad. Its phaser resistance behaves like a DAMF of 1660, not its configured 500. This does not describe a Sarten-specific defense; it follows from the old cargo-based phaser formula, before any other hit or shield effects.

Damage outside DAMF

DAMF is not a universal reduction to every form of damage. In classic, the phaser exception above is the most important ordinary-weapon case. Ion cannons also use their own damage calculation rather than the target's DAMF. A planet collision destroys the ship directly, while wormhole damage, perimeter damage, Enforcer Planet damage, and overspeed damage are applied by separate paths. Self-destruct blast damage likewise does not use the target's DAMF as a defensive divisor. These examples should not be read as promising that every future or administrator-created damage source uses DAMF.

ge-next

Since ge-next 0.2, standard and hyper-phasers use the same DAMF-based helper as mines, torpedoes, and missiles. Cargo capacity no longer acts as hidden phaser armor. This changes the balance of large-capacity and high-DAMF classes compared with classic. Installed armor plating can further reduce applicable incoming weapon damage after that scaling.

ge-next also uses the exploding ship's DAMF when sizing its outgoing self-destruct blast. That is an offensive use of the value, not protection granted by the target's DAMF.

Minimum configurable value

ge-next limits SnnDAMF to 77 or higher. This protects a 16-bit missile-energy field from the amplified result of applying a very low DAMF to a maximum-strength classic missile. Classic permits a missile with 50,000 energy; on impact, it applies the target's DAMF to that energy and stores the result back in an unsigned 16-bit field, whose maximum is 65,535.

DAMF 76: 50000 / (76 / 100) = 65789.47...  (too large)
DAMF 77: 50000 / (77 / 100) = 64935.06...  (fits)

Thus 77 is the first whole-number DAMF that keeps the classic maximum within the field. This prevents an out-of-range conversion, not division by zero or arithmetic underflow. ge-next normally limits newly launched missiles to 20,000 energy; even at DAMF 77, their adjusted energy is only about 25,974. The 77 bound is therefore conservative for the current normal launch path.

The lower launch-energy limit does not mean ge-next missiles deal only two-fifths as much damage. After DAMF adjusts the stored energy, ge-next divides it by 20,000 when calculating missile damage, where classic divided it by 50,000. A 20,000-energy ge-next missile therefore reaches the same fraction of this calculation as a 50,000-energy classic missile. ge-next also raises the default MDAMMAX from 25 to 35, so their actual damage is not identical. The 77 limit concerns the energy stored in the unsigned 16-bit field before the later damage calculation.

See also