Skip to content

Docking Slips

A docking slip is the physical berth a ship occupies while at a station. They aren't infinite — every station has a finite count, and at busy stations they fill up. Outside of Capital-tier stations and the Central Nexus, slip availability is genuinely scarce. The most-restricted slips are the construction berths at TradeDock shipyards where players build ships like the Warp Jumper — those are rare facilities with long queues, reputation gates, and competitive reservation cycles.

This doc covers the four-class slip taxonomy, per-station-class slip counts, the construction-slip restriction tiers (which shipyards can build which hulls), the queue and reservation system, and the pricing model that scales with scarcity.

The closely-related docs: - ./port-ownership.md — station ownership and revenue. - ./station-protection.md — security tiers and docking-fee economics. Slips and protection are independent dimensions; a Premium-tier station may still have only 4 transient slips because that's the station's hull capacity. - ./tradedock-shipyard.md — TradeDock shipyard mechanics; construction-slip restriction tiers introduced below extend that doc.

Slip taxonomy

Four canonical slip classes. Each station carries a per-class count; some classes are zero at most stations.

Class Purpose Typical hold time Reservation?
Transient Routine docking — trading, refueling, market visits, brief player breaks 5 minutes – 24 hours No (FIFO availability)
Long-term mooring Multi-day stays for out-of-game players, NPC traders between routes, stored ships 1–30 days Optional pre-booking
Construction Active ship-build projects at TradeDocks 3–14 real-time days Required — pre-book + reputation gate
Specialized construction Restricted hull types (Carrier, Warp Jumper) at Tier-A TradeDocks 7–17 real-time days Required — high-tier reputation gate + competitive queue

Slip class is a property of the slip itself; a station with 50 Transient slips and 8 Long-term slips can serve both at once but cannot build ships unless it also carries Construction slips.

Per-station-class slip counts

Capital stations and Central Nexus hubs are the only generous-slip facilities in the universe. Everywhere else, slips are limited. The galaxy generator's Phase 11 (anchored guarantees) sets these counts; player-ownable stations gain owner-tunable upgrades to add more slips at credit + time cost.

Station class Transient slips Long-term slips Construction slips Specialized construction slips
Capital station (regional) 80 30 0 0
Central Nexus Starport Prime 200 50 0 0
Class 0–2 (basic trading) 8 2 0 0
Class 3–6 (mid-tier trading) 12 4 0 0
Class 7–10 (premium / refining) 20 6 0 0
Class 11 (Premium Tech Specialist) 24 8 0 0
SpaceDock (per DECISIONS AU4-4) 30 10 0 0
TradeDock (Tier-B — standard) 20 8 12 0
TradeDock (Tier-A — Warp-Jumper-capable) 24 8 8 4
Pirate / outlaw outpost 6 2 0 (small black-market shipwright at 📐 future tier) 0
Frontier outpost 4 1 0 0

A Class-3 trading station has 12 transient slips total. During a normal day on a moderately-trafficked region, those slips are usually all occupied. A player attempting to dock with all slips full gets ERR_NO_SLIPS_AVAILABLE and can: - Wait in the sector for a slip to free up (FIFO queue). - Travel to a different station with slip availability. - Pay an emergency-priority fee (5× the normal docking fee) to bump the longest-occupant transient slip — only works if the occupant has been there ≥4 hours and is themselves a transient.

Capital stations and Starport Prime are sized for full-traffic surge handling — they don't hit the no-slips condition under normal play. The scarcity is a real Class-3-and-below-station problem.

Construction slip restriction tiers

The four Specialized construction slots in the universe are gated by TradeDock tier. Not every TradeDock can build every ship. The restriction is structural: building a Warp Jumper requires Quantum-resonance harmonization equipment, Lumen-Crystal-grade fabrication, and a 1,000,000-credit-grade hull bay — facilities that exist at only a handful of TradeDocks galaxy-wide.

Tier-B TradeDocks (the dominant case)

Build the 7 standard hull types: Light Freighter, Fast Courier, Scout, Cargo Hauler, Colony Ship, Defender. Cannot build Carrier or Warp Jumper. 12 standard construction slips. Tier-B is the "normal" TradeDock — most regions have 1–2 of them.

Tier-A TradeDocks (the rare case)

Build the 9 craft-able hull types — all of the above plus Carrier and Warp Jumper. 8 standard construction slips + 4 specialized construction slips dedicated to Carrier or Warp Jumper builds. Tier-A is the rare facility: typically 0–1 per region at launch (the Central Nexus has 2; Terran Space has 1; player regions have 1 if and only if the Region Owner has paid the Tier-A upgrade premium per ./tradedock-shipyard.md).

A new player who wants to build a Warp Jumper may need to travel cross-region via the Nexus warp gates to reach a Tier-A TradeDock, queue for a specialized slip, and meet the reputation requirements before construction can begin.

Per-tier reputation gates

Construction-slip queues require minimum reputation with the TradeDock's controlling faction. Higher-tier slots gate harder.

Slip class Tier-B TradeDock Tier-A TradeDock
Standard construction RECOGNIZED (≥ +50) ACKNOWLEDGED (≥ +100)
Specialized (Carrier) n/a TRUSTED (≥ +200)
Specialized (Warp Jumper) n/a HONORED (≥ +500)

A player at NEUTRAL rep (-49 to +49) cannot enter the construction queue at any TradeDock. Faction reputation is the single largest gate; faction-rep grinding is part of the path to a Warp Jumper.

Queue and reservation system

Construction slips are strictly reservation-based. A player who wants a slip submits a ConstructionReservation with target hull type, posted deposit, and faction-rep snapshot. The TradeDock processes reservations using a deterministic lexicographic sort key:

priority_sort_key = (
  slip_class_match,         // boolean: matches the slip class? (only true rows eligible)
  priority_bumps_count,     // DESC — purchased advantage
  faction_rep_tier,         // DESC — HONORED=4, TRUSTED=3, ACKNOWLEDGED=2, RECOGNIZED=1
  posted_deposit_cr,        // DESC — credible signal of intent
  created_at                // ASC — FIFO tiebreaker
)

In plain reading order:

  1. Slip class match — only reservations matching the slip class are eligible.
  2. Priority bumps — within eligible, more bumps go first.
  3. Reputation tier — then higher-rep players.
  4. Posted deposit — then larger deposits.
  5. Reservation timestamp — then earlier reservations (FIFO).

When a reservation is accepted (the reservation reaches the front of the queue and the next slip frees), the player has 24 hours to arrive at the TradeDock with the required deposit + initial resources. Missed arrival forfeits the deposit (50% to the next-in-queue player as a goodwill payout, 50% to the TradeDock).

Reservation queue depths (typical)

Slip class Average queue depth Wait time at queue tail
Tier-B standard 2–4 reservations 5–14 days
Tier-A standard 4–8 reservations 14–30 days
Tier-A Carrier specialized 3–5 reservations 21–45 days
Tier-A Warp Jumper specialized 8–15 reservations 45–90 days (universe peak)

A Warp Jumper queue with 12 reservations ahead of you means ~9 weeks wall-clock before your build can start, and that's after you've reached HONORED reputation. This is the canonical answer to "why is the Warp Jumper a 1.1M cr risk capital ship" — the time investment is real, the queue is real, the prerequisite reputation is real.

Priority bump

Players can pay a priority bump fee to advance their reservation in the queue. Cost scales steeply:

  • Bump 1 position: 5% of total project cost
  • Bump 5 positions: 25% of total project cost
  • Bump 10 positions: 60% of total project cost
  • Bump to front: 100% of total project cost (effectively doubling the build cost)

The bumped reservations behind the buyer slide back one position each; their hold-time fees (📐) accrue accordingly. Priority-bump revenue is split per the standard TradeDock fee distribution.

Reservation cancellation

A player can cancel their reservation at any time before the slip becomes theirs. Refund schedule per DECISIONS AU2-6 (region-funded TradeDock construction lifecycle decision):

  • Cancel before active build starts: pro-rata deposit refund minus 25% restocking fee.
  • Cancel after build phase 1 begins: see ./tradedock-shipyard.md for phase-by-phase refund schedule.

Resources delivered are consumed irreversibly per delivery batch — see ADR-0039 (the cancel-and-rebook resource-reuse loophole resolution).

Slip rental fee structure

Independent of docking fees, slip rental scales with class and station type. A transient slip at a Class-3 station is 100 cr/hour; a specialized Warp Jumper slip is 50,000 cr/day.

Slip class Fee
Transient (Capital / Nexus / Class-11 / SpaceDock) 100 cr/hour or daily cap (1,500 cr/day)
Transient (Class 0–10) 50 cr/hour or daily cap (750 cr/day)
Long-term mooring 200 cr/day
Construction (Tier-B standard) 5,000 cr/day
Construction (Tier-A standard) 8,000 cr/day
Specialized Carrier 20,000 cr/day
Specialized Warp Jumper 50,000 cr/day

Construction slip fees compound across the build duration — a 14-day Warp Jumper build accumulates 700,000 cr in slip rental alone, on top of the materials and the Warp Jumper hull cost. This is folded into the all-in 1.1M cr figure quoted in ../galaxy/warp-gates.md gate-construction prerequisites.

Slip rental is not waived for owner-team-mates or allied factions (unlike docking fees) — slips are scarce; the station can't afford to give them away.

Schema impact

Station.docking_slip_inventory JSONB

A new column on Station (✅ Shipped) carrying the per-class slip count and current occupancy:

{
  "transient": {"total": 80, "occupied": 47, "queue_depth": 0},
  "long_term": {"total": 30, "occupied": 24, "queue_depth": 2},
  "construction": {"total": 0, "occupied": 0, "queue_depth": 0},
  "specialized_construction": {"total": 0, "occupied": 0, "queue_depth": 0}
}

Updated atomically on every slip transition (acquire / release / queue advance). Player-client UI reads this directly for dock-availability indicators.

TradeDock tier discriminator

The existing TradeDock model (per ../../DATA_MODELS/stations.md) gains a tier enum field:

Field Type Notes
tier Enum tradedock_tier tier_b (standard, dominant case) / tier_a (Warp-Jumper-capable, rare)
specialized_slip_capable_hulls JSONB array Which hulls can be specialized-slip-built. Tier-B = []; Tier-A = ["CARRIER", "WARP_JUMPER"].
region_assignment_role Enum primary_tier_b / secondary_tier_b / tier_a_facility — used by the galaxy generator's Phase 10.5 (per ADR-0041) to ensure each region has at least one Tier-B TradeDock and at most one Tier-A.

ConstructionReservation table

A table (✅ Shipped) for the queue:

Field Type Notes
id UUID PK
tradedock_id UUID FK The TradeDock the reservation is held against.
slip_class Enum standard_construction / specialized_construction
target_hull Enum ship_type The hull the player wants to build.
player_id UUID FK The reserving player.
team_id UUID FK If reserved for a team treasury build.
posted_deposit_cr Integer Deposit at reservation time (10% of project cost; refunded per cancellation rules).
faction_rep_snapshot Integer Player's rep with the TradeDock's faction at reservation time; used for queue ordering.
priority_bumps_count Integer How many priority bumps have been purchased.
current_queue_position Integer Live position; recomputed on bump / cancel events.
expires_at DateTime Reservation auto-cancels if not honored within (e.g.) 30 days at the front of the queue.
created_at DateTime
updated_at DateTime

Slip-availability service

The runtime service that processes slip transitions, queue advancement, and reservation acceptance. Runs on every dock attempt and on slip-release events.

Player UX

A player visiting Class-3 station "Auriga Spaceport" sees: - "Auriga Spaceport — Transient slips: 11/12 occupied. Estimated wait: 0 min (next slip frees in ~14 min)." - They can dock immediately if a slip is free, queue if full, or pay the emergency-priority fee.

A player at a Tier-A TradeDock checking Warp Jumper construction: - "Warp Jumper specialized slot — 12 reservations ahead. Estimated wait: 67 days. Your reputation tier: HONORED (eligible). Bump fee for front-of-queue: 1,100,000 cr."

A team coordinating a Warp Jumper build: - "Reservation #847 — 3 positions ahead. Slip available: estimated 2026-06-12. Posted deposit: 110,000 cr (refundable per cancellation rules)."

This is the load-bearing UX that gives gate-building real strategic weight. A player can't just decide on Tuesday "I'll build a Warp Jumper" — they need to plan months ahead, grind reputation, manage their reservation, and possibly outbid competitors via priority bumps.

Status

🚧 Partial. The slip-occupancy store, ConstructionReservation table, Tier-A / Tier-B TradeDock discriminator, and queue-and-reservation runtime service exist; the transient slip pool and FIFO wait queue are enforced, while the full four-class taxonomy is the launch target. The TradeDock model carries total_slips = 12 as a flat count without the four-class taxonomy. Migrating from "12 generic slips" to "8 standard + 4 specialized at Tier-A; 12 standard at Tier-B" is the launch-target schema; the live ConstructionSlip.status enum (available / reserved / building / claim_pending / abandoned) survives the migration without change.

✅ Shipped — long-term mooring. POST /trading/mooring/long-term (1–30 days, 200 cr/day, separate long-term slip pool) and POST /trading/mooring/long-term/release route to docking_service.acquire_long_term / release_long_term, which enforce the duration, per-day fee, separate pool, and same-sector / reputation / credit / capacity gates.

Cross-references