System Instructions

Comprehensive fitting system overview and design guidance

🆕 Custom Module & Slot System

Module Types

Beyond the base types (Power, Ammo, Utility), you can now create custom module types like:

  • Weapon - Specialized offensive modules
  • Shield - Defensive barrier systems
  • Engine - Propulsion and mobility
  • Sensor - Detection and targeting
  • Any custom type you can imagine...

Hybrid Slots

Slots can accept multiple module types with bandwidth penalties:

  • Hybrid-PA - Accepts Power & Ammo
  • Hybrid-PU - Accepts Power & Utility
  • Hybrid-AU - Accepts Ammo & Utility
  • Hybrid-PAU - Universal (all types)
  • Custom combinations with your own rules...

How It Works

  1. Create module types in /admin/module-types
  2. Define custom slots in /admin/slots
  3. Specify which module types each slot accepts
  4. Set bandwidth multipliers for non-preferred types
  5. Create modules with your custom types

Example: A "Weapon" slot that accepts both Weapon and Power modules, but Power modules use 1.3x bandwidth when placed there.

If primaries are the verb…

They define what your ship does on the battlefield.

"I shoot," "I heal," "I mine," "I jam," "I drone."

Big, identity-defining actions.

…then secondaries are the adjectives/adverbs…

They describe how your ship does it in a given fight.

  • "I shoot, but I can also ram."
  • "I mine, but I can also jam a scout."

Tactical, situational color.

…and universals are the grammar.

They define the tone, efficiency, and constraints of that action.

Universals don't change what you do, they shape the quality, rhythm, and emphasis.

  • "I shoot faster."
  • "I mine quieter."
  • "I heat slower."
  • "I drift less."

Soft Archetype System

Archetypes guide, they do not gate. Hulls advertise tags they handle well, and modules/primaries carry tags. Matching tags grant efficiency and stability; mismatches still work but create bandwidth pressure and handling penalties.

Support

Signal augmentation, comms, repair. Slot bias to Utility, central Power spine. Synergy with tags: support, signal, precision.

Defender

Shielding, triage, counter-fire. Contiguous Utility clusters, generous bandwidth, high Power capacity.

Assault

Close to mid-range bruiser. Heavy Power spine, tight bandwidth to force trade-offs. Likes mobility kits.

Artillery

Long-range pressure and burst. Alternating Ammo/Power lanes, minimal Utility. High bandwidth but low mobility.

Recon

Precision strikes, scouting, counter-stealth. Balanced slots with prow/stern Utility. Higher evasion, moderate bandwidth.

Infiltrator

ECM, signature suppression, sabotage. Utility heavy edges, scattered Power. Lower bandwidth cap, modest Power capacity.

Carrier

Drone operations, distributed fire control. Utility dominates stern/midline; Ammo blocks for depots. Highest bandwidth.

Bulwark

Attrition tanking, area denial. Dense Power+Utility core with Ammo outboard. Very high bandwidth with built-in mismatch friction.

Fitting, from a Designer's Perspective

How the picker decides what to show

  • Power budget: primary + chosen secondaries must fit the hull's Power Capacity.
  • Slot skeleton: the hull's Power/Ammo/Utility counts must satisfy the primary's minima after secondary deltas.
  • Tags: hull incompatible tags hide choices; compatible tags are preferred so the list stays readable.

Bandwidth & placement

Universals add bandwidth (BW). If a module covers cells whose slot doesn't match its own, BW cost rises. Over BW Limit never blocks the build — it just makes the ship feel heavier (lower responsiveness).

BW effective ≈ baseBW × (1 + mismatchPenalty) × (1 − synergyRebate)
Where mismatchPenalty comes from covered cells whose slot differs from the module slot, and synergyRebate comes from tags that match the hull focus.

Shape Templates

Use these canonical footprints for universals. Bars for rails/masts, blocks for heavy frames, L‑shapes for wing/edge gear.

S1 — 1×1
S2 — 1×2 bar
S3 — 1×3 bar
S3 — L triomino
M2 — 2×2 block
MT — 2×3 block
SL — 2×2 locked
Rotation locked (anchored)

Slot Legend

Power Ammo Utility Hybrid-PA Hybrid-PU Universal

Why you sometimes do not see an item

  • Primary asks for more minimum slots than the hull has after secondary deltas.
  • Power draw would exceed capacity; we hide extreme outliers to avoid noise.
  • Hull has incompatible tags for that item and we are prioritizing readability.
  • Variant resolution prunes size‑inappropriate options for your hull size.
  • NEW: Module type doesn't match any slot types the hull provides.

Designer's checklist

  • Hulls: bias slot density to the role; give holes to force interesting placement.
  • Primaries: keep 2–3 headline stats and a clear power/slot ask; tag the role.
  • Secondaries: make effects short and tactical; only add ΔP/A/U when you want grid pressure.
  • Universals: small, literal stat bumps; shapes and BW are the real constraints.
  • Over BW should feel deliberate, not accidental; reward matching slots with cheaper BW.
  • NEW: Create specialized module types for unique systems (weapons, engines, shields).
  • NEW: Use hybrid slots strategically to allow flexibility at a bandwidth cost.

Authoring Notes & Data Mapping

Primaries
  • Use metadata: range (optimal/falloff/radius), tempo (rof, burst, reload), resources (power, BW, heat).
  • Give one archetype focus tag to drive synergy.
  • Ammo variants can adjust damage, range, status; keep to 2–3 clear choices.
Secondaries
  • Short duration tactical effects; avoid passive always‑on.
  • Use ΔP/A/U to push grid trade‑offs, not to lock content.
  • Tag for role so hull synergies can rebate BW or add stability.
Universals
  • Choose a template shape (S1, S2, S3, M2, MT, SL) and derive baseBW from footprint complexity.
  • Map effects to concrete stats: rofBonus, trackingBonus, emissions_pct, powerGen, armor, shieldStrength, etc.
  • Prefer small, explicit numbers over vague copy; stack to feel.
  • NEW: Assign custom module types for specialized systems.
Custom Types
  • NEW: Define module types beyond Power/Ammo/Utility.
  • NEW: Create hybrid slots that accept multiple types.
  • NEW: Set bandwidth multipliers for type mismatches.
  • NEW: Use colors and categories to organize modules.