Why the numbers

10 g on orders, 5 g in a fight: why the Striker flies as it does

Published

The Striker is the carrier’s fighter. Here is why it flies and fights the way it does.

18 m long, 15 t

Why: every ship is anchored on a real counterpart of its size and role. The Striker’s is the Super Hornet: 18.31 m long and 14,552 kg empty[1]. It has no jump drive: it rides along docked.

Decided 2026-10-25 · scripts/ship_catalog.gd SHIPS["Striker"] = 18 m, MASS["Striker"] = 15 t

10 g on orders

Why: “10g max for now”: the brief maximum a pilot can take. Pilots train in centrifuges at around 9 g[2]. Speeding up, braking, turning and climbing all share that one 10 g budget, so a Striker at full speed turns about 11° a second and slows to turn round. Before this, the hull could pull 25 g, which would kill a pilot.

Decided 2026-10-26 · scripts/ship_catalog.gd HULLS["Carrier-based fighter"] max_g = 10.0

5 g in a fight

Why: “keep 5g for now”. A fight lasts minutes, not seconds, so the pilot flies at a level they can hold: half the 10 g cap.

Decided 2026-10-26 · scripts/space_fighter.gd SUSTAINED_G := 0.5

The Mark sets the g cap

Why: “let order use mk’s G too”. An older fighter has a weaker engine and less protection for its pilot. Mk3 10 g on orders and 5 g in a fight; Mk2 8 and 4; Mk1 6 and 3; Mk0 5 and 2.5.

Decided 2026-10-26 · scripts/marks.gd MARKS[m]["speed"] = 0.5 / 0.6 / 0.8 / 1.0

500 m/s at Mk3

Why: “yes marks on top speed, use 500 base”. One number for the hull, scaled by Mark: Mk3 500, Mk2 400, Mk1 300, Mk0 250 m/s, the same on orders and in a fight. Speeds are compressed for fun, and the same in air and in space.

Decided 2026-10-26 · scripts/ship_catalog.gd HULLS["Carrier-based fighter"] max_speed = 500.0

Side thrusters at 30 %

Why: “30 % keeps a sidestep, but braking or turning hard needs the main engine”. Real manoeuvring thrusters are much weaker than that; 30 % is a choice so facing starts to cost: to brake hard, the tail has to swing round and the gun comes off target.

Decided 2026-10-26 · scripts/space_fighter.gd SIDE_SHARE := 0.3

A steep Mark ladder

Why: “steep and readable at a glance”: “oh, a Mk3 fighter: it just wasted 30 Mk1s, no worries”. The aim is one rule a player learns once: one Mark up is worth about 5 of the one below, two up about 30, three up can’t be touched. The numbers are still being tuned to that rule.

MarkAccuracyEvasionHull
Mk045 %0 %45
Mk160 %5 %90
Mk275 %30 %180
Mk390 %70 %360

Decided 2026-10-23, ladder 2026-10-24 · scripts/marks.gd MARKS, HULLS

Hull 90 at Mk1

Why: even fights should last long enough to pull out. With the old hull of 10, a fight between two Mk3 fighters was over in about 2 seconds. Now a fighter takes about 36 hits from its equal.

Decided 2026-10-23 · scripts/marks.gd HULLS

Gun reach from spread

Derived: range = 2 × 2.5 m ÷ spread, the distance at which the spread is no wider than a fighter. Mk3 groups its rounds within 4 mrad and reaches 1,250 m; Mk0 to Mk2 reach 500, 625 and 833 m. The Mk0 to Mk2 spreads are guesses, labelled as such in the design notes.

Decided 2026-10-26 · scripts/marks.gd SPREAD["gun"], weapon_range()

Guns only, for now

Why: guns only while the fights are tuned. Missiles exist in the code, set to zero at every Mark.

Decided 2026-10-23 · scripts/marks.gd MISSILES = 0

Stances: evasive, cautious, reckless

Why: “to disengage, set evasive”. An evasive fighter turns its guns off and puts everything into running: +10 % speed and thrust, +20 % evasion, and it keeps 300 m outside every enemy’s reach. A cautious fighter comes in at 45°: “this prevents a cautious fighter running head-first into an incoming enemy”. Below half its hull it switches itself to evasive.

Decided 2026-10-24 · scripts/space_fighter.gd EVADE_SPEED := 1.1, EVADE_MARGIN; marks.gd EVADE_BONUS := 0.2

Orders win

Why: “orders win; the pilot is a turret on the way”. A Striker on a move order starts no fights; it fires at what it passes and keeps going, so a group ordered through enemy fighters cuts through them in formation.

Decided 2026-10-23 · scripts/main.gd give()

One of each Mark at the start

Why: “one of each, to compare”. The four Strikers start at Mk0, Mk1, Mk2 and Mk3, so the ladder can be seen side by side.

Decided 2026-10-26 · scripts/main.gd striker_marks := [0, 1, 2, 3]

Related

Sources

  1. Boeing F/A-18E/F Super Hornet: specifications, Wikipedia. Length: 60 ft 1.25 in (18.31 m) … Empty weight: 32,081 lb (14,552 kg)
  2. G-LOC, Wikipedia. with some profiles exposing pilots to 9 gs for a sustained length of time