What this is

Every documented hull in the game ships with the same passive: jack_of_all (Jack of All Trades). The passive system supports 16 distinct passives, but only one of them is wired up to any hull. The other 15 are defined in src/starship-survivors/data/passives/ and registered in the PASSIVES map, but no hull references them.

The rule

The default passive assignment is set once on BASELINE_STATS in src/starship-survivors/data/ships.ts:

FieldValue
BASELINE_STATS.passiveIdjack_of_all

The 300-entry roster (60 hull classes × 5 star tiers) is generated by iterating HULL_CLASSES and copying BASELINE_STATS.passiveId directly into every ShipDef. The per-hull SHIP_STATS_S1 override map covers stat fields (hp, shield, armor, speed, weapon slots, sprite tuning, starting weapon, etc.) but does not list passiveId as an override field, and no entry in SHIP_STATS_S1 sets passiveId. There is no path by which a hull receives a non-baseline passive.

Per-rank values for jack_of_all (applied as a percent buff to all stats):

RarityRank indexValue
Common03%
Uncommon16%
Rare210%
Epic315%
Legendary422%

What it means in practice

All 37 documented hulls (Solaris, Backwater, Industria, Junkrats, Prism, Ancients, and the remaining factions present in HULL_CLASSES) carry Jack of All Trades regardless of faction identity or rarity tier. Faction flavor is expressed through stat overrides (hp, shield, armor, speed, weapon loadout) — not through passive choice.

PropertyOutcome
Passive variance across hullsNone — all hulls run jack_of_all
Passive variance across rarityOnly the value scales (3 → 22%)
Faction-specific passiveNone active
Passive description shown in UI+{value}% to all stats with {value} resolved per rarity

The 15 unassigned passives

Defined and registered in src/starship-survivors/data/passives/index.ts but not referenced by any hull:

Passive idFile
afterburnerpassives/afterburner.ts
predator_instinctpassives/predator-instinct.ts
payload_deliverypassives/payload-delivery.ts
heavy_platingpassives/heavy-plating.ts
shield_capacitorpassives/shield-capacitor.ts
phase_drivepassives/phase-drive.ts
reinforced_hullpassives/reinforced-hull.ts
thermal_ventspassives/thermal-vents.ts
ram_prowpassives/ram-prow.ts
organic_regenpassives/organic-regen.ts
prismatic_agilitypassives/prismatic-agility.ts
tractor_arraypassives/tractor-array.ts
fortune_corepassives/fortune-core.ts
precision_salvagepassives/precision-salvage.ts
void_siphonpassives/void-siphon.ts