Beam ship weapons:

  • Strike instantly,

  • Have unlimited ammo,

  • Have link:#_targeting_arc,

  • Have distinct mount sizes:

    • Normal — medium range,

    • Heavy — long range, increased damage, can target ships only,

    • Point Defense — short range, lower damage, increased accuracy, will auto-fire at incoming fliers when possible,

  • Damage is halved against planets,

Targeting Arc

  • Forward — normal size, fires only at targets in a forward quadrant,

  • Backward — same, only backward,

  • Forward Extended — increased size, fires at targets not in backward quadrant,

  • Backward Extended — same, only backward,

  • 360 — yet bigger size, fires at any direction,

Damage Formula

The damage may be affected by:

  • attacker’s Beam Attack

  • target’s Beam Defense

  • targets’s Missile Defense

  • attacker’s or target’s special devices

  • weapon modification

  • target’s shield

Accuracy

Several things determine the chance to hit, but it boils down to three factors: Beam Attack, Beam Defense and Range Penalty.

Beam Attack Modifiers

Beam Attack (BA) is a way of rating the firing ship’s beam offense capability. It is calculated based on the type of computer on board, ship systems like battle scanner, crew experience, leaders and racial bonuses. Battlestation and Star Fortress give an additional BA bonus to all ships in the defensive fleet. Individual beam weapons get additional bonuses based on mount type (Pd +25 BA) and mods (Co +25 BA, AF -20 BA).

Beam Defense Modifiers

Beam Defense (BD) is a rating of the target ship’s dodging ability, calculated basis 5x its combat speed plus bonuses from ship systems like inertial stabilizer, crew experience, leaders and race.

Beam Defense of Missiles

Missile Beam Defense is calculated as follows:

5 * Speed + MissileBonus
Speed = BaseSpeed of Missile + 2 * (FTLlevel - 1) + FastBonus

BaseSpeed is 12 and FastBonus is 4 for all missile types.

Drive FTL level Speed Missile MissileBonus

None

0

10

Nuclear

-10

Nuclear

1

12

Merculite

15

Fusion

2

14

Pulson

40

Ion

3

16

Zeon

70

Anti-Matter

4

18

Hyper

5

20

Interphased

6

22

Beam Defense of Fighters

Fighter Beam Defense is calculated as follows:

5 * Speed + RacialShipDefenseBonus + FighterPilotBonus +
HelmsmanBonus (in 1.50 only).
Speed = BaseSpeed of Fighter + 2 * (FTLlevel - 1) + TDBonus

TransDimensionalBonus is 4 for all fighter types.

Fighter BaseSpeed

Interceptor

10

Assault Shuttle

6

Bomber

8

Heavy Fighter

8

Range Penalty to Accuracy

The farther away a target is, the less likely it becomes for a beam weapon to hit it. The range penalty to a beam’s accuracy comes from below table:

Range

0

1

2

3

4

5

6

7

8

Penalty

0

0

10

20

30

40

55

70

85

One range unit equals 3 squares. At range 0 two opponents share the same square, for example when interceptors are on top of the target ship. At range 1 opponents are adjacent to each other or have 1-2 squares between them.

For calculation purposes, Point Defense weapons get a penalty as if range is doubled and for Heavy mount weapons the actual range is halved (and rounded down):

Range 0 1 2 3 4 5 6 7 8

Regular (sq)

0

1-3

4-6

7-9

10-12

13-15

16-18

19-21

22-24

PD (sq)

0

1-3

4-6

7-9

10-12

Hv (sq)

0-3

4-9

10-15

16-21

22-27

28-33

34-39

40-45

46-51

Penalty

0

0

10

20

30

40

55

70

85

Classic Fusion Beam, Plasma Cannon and Mauler Device have an inherent 2x range to-hit penalty (weapon flag #1). This mod doubles the calculated penalty. So after all Hv/ Reg/ PD calculations are done and Rangemaster Unit effect is applied, the result is doubled. Obviously for the Mauler Device which always hits, there is no effect and therefore this mod has been removed from Mauler in 1.50. In the 1.50 improved mod, the penalty has also been removed from Fusion Beam so only the Plasma Cannon keeps it.

Classic Chance to Hit Formula

Then it’s a matter of chance. A random number between 1 and 100 (inclusive) is rolled and the following formulae apply:

HIT IF: (with max dmg)
[1] random(100) roll > 95
ELSE HIT IF: (with max dmg)
[2] BA+CO-AF-BD >= 99
ELSE HIT IF: (real penalty affects dmg distribution)
[3a] BA+CO-AF-BD + random(100) roll >= hit_threshold
[3b] hit_threshold = min(40 + range_penalty * - PD_bonus; 95)
    *doubled for inherent 2x range to-hit penalty mod

Thus, if the random number is greater than 95 (a 5% lucky shot, no matter the odds), or BA+CO-AF-BD is larger than 98, the beam strikes the target. Else, BA+CO-AF-BD minus the range penalty (plus possible PD bonus) must be 39 or higher to ensure a hit.

Note that Mauler Device and Energy Absorber always hit unless the target ship has a Displacement Device while Stellar Converter always hits regardless of the presence of a Displacement Device.

1.50 Alternative Chance to Hit Formula (Optional)

The chance to hit formula contains a major flaw: Range penalties, being a big deal in theory, don’t work well in reality, up to having no effect at all. Formula 3 contains a cap of 95, making range penalty above 55 for non-PD beam or 80 for PD beam of no additional effect (despite being present in the game). Moreover, formula 2 contains a deeper flaw: with good BA and low BD the range penalty is ignored altogether. Among good examples of this flaw are 'sure-hit-no-matter-the-distance' situations, low usability of Rangemaster Unit (especially compared with Battle Scanner), and a very low effect of the inherent 2x range to-hit penalty weapon mod.

Setting simplified_beam_formula = 1 enables a more straightforward way of chance to-hit calculations, with distance penalties consistently affecting chance:

HIT IF: (with max dmg)
[1] random(100) roll > 95
ELSE HIT IF: (with max dmg)
[2] BA+CO-AF-BD - range_penalty + PD_bonus >= 99
ELSE HIT IF: (real penalty affects dmg distribution)
[3] BA+CO-AF-BD - range_penalty + PD_bonus + random(100) roll >= 40

Damage Potential

There are 2 pairs of types of beam weapons, affecting damage distribution:

  1. Not reduced by range / Reduced by range.

  2. Equal min-max damage / Different min-max damage.

Damage values of both types are later modified with Hv, PD, HEF and Ordnance effects.

Not Reduced by Range

If a beam hits, it does damage. For weapons of which the damage is not reduced by range, like Mass Driver, Gauss and Disrupter, no dissipation penalty applies. Note that a Laser Cannon with NR mod can still do lower than 4 damage (1-3 dmg), in cases of low accuracy. Example: The lowest damage of a NR Laser with base damage 10-40 instead of 1-4 is 10, whereas an unmodded 10-40 Laser can have a damage as low as 4 at range.

Reduced by Range

For weapons of which the damage is reduced by range (dissipation), a penalty based on the distance the beam must travel to the target is taken into account, lowering the damage potential (round to nearest applies and the minimum damage potential is always 1). Below table of damage potential by range includes examples for Laser Cannon, Phasor, Mauler and Death Ray:

Range (sq) 0 1-3 4-6 7-9 10-12 13-15 16-18 19-21 22-24

Penalty

0

0

-10

-20

-30

-40

-50

-60

-65

Dmg

100%

90%

80%

70%

60%

50%

40%

35%

Laser

1-4

1-4

1-3

1-3

1-2

1-2

1-1

1-1

Phasor

5-20

5-18

4-16

4-14

3-12

3-10

2-8

2-7

Mauler

100-100

90

80

70

60

50

40

35

Death

Ray

50-100

45-90

Equal Min-Max Damage

As can be seen from the table, for Mauler Device because min=max dmg the actual damage is known after applying the damage dissipation and Hv, PD, HEF and Ordnance effects. If the beam hits, the min damage value (possibly modified with effects named above) will be applied. For weapons with different min-max damages there is still no final damage value and the story continues:

Different Min-Max Damage

The actual damage for weapons with different min-max damages is based on the damage potential modified with the accuracy of the shot, using the following formula:

UNCAPPED DAMAGE IS:
min_dmg + (max_dmg-min_dmg+1) * A / B
WHERE:
A = roll_plus_attack - hit_threshold
B = 100 - hit_threshold
roll_plus_attack = min(random(100) roll + BA+CO-AF-BD; 100)
hit_threshold = min(40 + range_penalty * - PD_bonus; 95)
     *doubled for inherent 2x range to-hit penalty mod
CAPPED DAMAGE IS:
The overall result is capped at max_dmg.
Examples
  1. Death Ray’s dmg at 23 sq, assuming roll=85 and (BA+CO-AF-BD-range_penalty)=10:

    18 + (35-18+1) * A / B
    A = ((85 + 10) - (40 - -85)) = (95 - 95) = 0
    B = (100       - (40 - -85)) = (100 - 95) = 5

Thus, actual damage is equal to min_dmg = 18.

  1. If the target is closer, and the distance is only 11 squares:

    35 + (70-35+1) * A / B
    A = ((85 + 10) - (40 - -30)) = (95 - 70) = 25
    B = (100       - (40 - -30)) = (100 - 70) = 30

And it follows that the actual damage is min_dmg + 5⁄6 (max_dmg-min_dmg + 1) = 65.

Hv, PD, HEF & Ordnance

These bonuses are percentages of damage of a regular mount beam. (In 1.50 the HEF bonus can be set for each mount separately.) Their interaction is not multiplicative but additive and they work the same way as dissipation range penalty, modifying min&max damage, so these bonuses are not subject to dissipation themselves.

Ordnance works best for (regular) ship beams, since they benefit from rounding up, so a 10% Ordnance bonus for a 5 damage ship beam will mean +1, while for a 5-9 damage fighter beam or missile it will still be +0.

Examples for a 50-100 beam with dissipation Range_penalty of 30:

Hv

 50*(100 {base} + 50 {Hv} - 30 {Range_penalty})% =  60;
100*(100 {base} + 50 {Hv} - 30 {Range_penalty})% = 120.

Hv+HEF

 50*(100 {base} + 50 {Hv} + 50 {HEF} - 30 {Range_penalty})% =  85;
100*(100 {base} + 50 {Hv} + 50 {HEF} - 30 {Range_penalty})% = 170.

PD

 50*(100 {base} - 50 {PD} - 30 {Range_penalty})% = 10;
100*(100 {base} - 50 {PD} - 30 {Range_penalty})% = 20.

PD of beam with 2x penalty set to applying for dissipation

 50*(100 {base} - 50 {PD} - 2*(30) {Range_penalty})% =  -5;
100*(100 {base} - 50 {PD} - 2*(30) {Range_penalty})% = -10

Note: in this case actual min and max damage will be 1.

At max distance all PD beams that are reduced by range will do a puny 1 dmg without HEF/Ordnance, no matter their max dmg strength. Even a 1000 dmg PD beam will still do only 1 dmg at max range. So PD does less damage at range than one might expect.

PD + HEF of beam with 2x penalty set to applying for dissipation

 50*(100 {base} - 50 {PD} + 50 {HEF} - 2*(30) {Range_penalty})% = 20;
100*(100 {base} - 50 {PD} + 50 {HEF} - 2*(30) {Range_penalty})% = 40.