uwarp-space 2026-02-18
TW2002 Gold v3.34b parity reached with 43 TEDIT fields wired, tech debt cleaned, and 1,187 tests passing
211 files · 9,581+ · 7,594-

TW2002 Gold v3.34b parity (5-phase implementation)

10 files changed
  • entertainment.py TriCront gambling implemented
  • tricront.py TriCront slot machine logic
  • gold_planet.py Gold Planet Class system: 7 types with weighted random assignment
  • service.py ServerConfig fields for all TEDIT settings with proper defaults and validation bounds
  • constants.py Grouped TEDIT settings as General Editor One/Two/Three matching TEDIT UI structure
  • banking.py Bank caps and corp size settings wired
  • combat.py Capture formulas and photon settings wired
  • movement.py Navigation hazard and turn accumulation settings wired
  • planet.py Planet limits and production settings wired
  • maintenance_executor.py Maintenance ticks: bust clearing, radiation decay, configurable accumulation
  • starting_credits: 5000 → 300, starting_fighters: 20 → 30 decouple internal
    1 file
    • service.py
  • inactive_prune_days: 14 → 30, port_regen_pct: 20 → 5 decouple internal
    1 file
    • service.py
  • 6 hardware prices corrected, max_colonists: 1M → 100K remediate internal
    1 file
    • hardware.py
  • capture_fail_percent: 30 → 0, podless_captures: false → true decouple internal
    1 file
    • combat.py
  • max_photon_fire: 5 → 1, death_delay_seconds: 0 → 86400 decouple internal
    1 file
    • combat.py
  • All TEDIT settings now have corresponding ServerConfig fields with proper defaults and validation bounds baseline internal
    1 file
    • service.py
  • Grouped as General Editor One (14), Two (15), Three (14) matching TEDIT UI structure decouple behavioral
    1 file
    • constants.py
  • Bank caps, course length, planet limits, corp size, rob/steal formulas decouple internal
    2 files
    • banking.py
    • planet.py
  • FedSpace ship limit, photon disables, steal-from-buy-port margin internal
    1 file
    • movement.py
  • New player planet grants, game timing delays instantiate internal
    1 file
    • service.py
  • Bust clearing, radiation decay, configurable navhaz/turn accumulation decouple internal
    1 file
    • maintenance_executor.py
  • TriCront gambling (Stardock) decouple internal
    2 files
    • entertainment.py
    • tricront.py
  • Gold Planet Class system: 7 types with weighted random assignment decouple internal
    1 file
    • gold_planet.py

Config-driven transwarp pricing

2 files changed
  • movement.py Transwarp lock/cost mechanics and inactive_days config wired
  • navigation.py Transwarp pricing driven by ServerConfig
  • Wired transwarp lock/cost mechanics and inactive_days config baseline internal
    1 file
    • movement.py
  • Transwarp pricing, Ferrengi depreciation, and tournament entry gates now driven by ServerConfig rather than hard-coded values decouple internal
    1 file
    • navigation.py
  • PortClass.STARDOCK enum used instead of magic number 0 in stardock sector cache streamline internal
    1 file
    • __init__.py

Remaining TEDIT wiring gaps fixed

2 files changed
  • combat.py photon_wave_duration wired
  • underground.py Underground password wired
  • Fixed photon_wave_duration, underground password, and tournament_lockout_mode missing wiring remediate internal
    2 files
    • combat.py
    • underground.py
  • Fixed tournament lockout mode tests: use gameplay_player fixture and set mode explicitly qualify internal
    1 file
    • test_tournament_reset.py

O(1) indexed lookups and scalability

2 files changed
  • service.py O(1) indexes added; bounded metrics; error handling improvements
  • agent.py get_stats() extracted; StarDock sector lookup cached; O(n²) pruning fixed
  • Replaced remaining linear scans with indexed lookups and direct array access decouple internal
    1 file
    • service.py
  • Extracted get_stats(), cached StarDock sector lookup, fixed O(n²) sector pruning loop streamline internal
    1 file
    • agent.py
  • Added O(1) indexes, bounded metrics, and error handling improvements remediate internal
    1 file
    • service.py
  • Fixed three scalability TODOs: locking, persistence, and connection management remediate internal
    1 file
    • service.py

Tech debt cleanup (136 files, net −733 lines)

2 files changed
  • utils.py EmptyArgs, is_cancel(), require_corp(), require_ceo(), require_planet(), reset_player_to_start(), normalize_commodity() extracted
  • economy.py get_player_cargo/add_player_cargo moved here from inline patterns
  • Dead code removed: deleted orphaned CLI files, unused shims — parsers.py, mercenary_manager.py, state.py, limpet_manager.py, multi_ship.py, npc_manager.py deprecate behavioral
    6 files
    • parsers.py
    • mercenary_manager.py
    • state.py
    • limpet_manager.py
    • multi_ship.py
    • npc_manager.py
  • Deduplication: extracted EmptyArgs, is_cancel(), require_corp(), require_ceo(), require_planet(), reset_player_to_start(), normalize_commodity() into utils.py; moved get_player_cargo/add_player_cargo to core/rules/economy.py; replaced inline patterns across 50+ command files decouple behavioral
    2 files
    • utils.py
    • economy.py
  • Config cleanup: removed duplicate STARTING_* constants from login.py and agent.py; use ServerConfig values directly for character creation deprecate errata
    1 file
    • agent.py
  • Bug fixes: wired parked_ships and avoid_sectors to persistence (data was lost on restart); fixed broken import in maintenance_executor.py remediate internal
    1 file
    • maintenance_executor.py
  • All 1,187 tests passing after cleanup qualify errata
    1 file
    • pytest.ini

TEDIT reference documentation

5 files changed
  • README.md TEDIT documentation tree root
  • general-editor-one.md General Editor One reference
  • general-editor-two.md General Editor Two reference
  • general-editor-three.md General Editor Three reference
  • gold-ship-editor.md Gold ship editor reference with binary source annotations
  • Added comprehensive TEDIT documentation tree (docs/tedit/) with per-editor reference pages specify internal
    4 files
    • README.md
    • general-editor-one.md
    • general-editor-two.md
    • general-editor-three.md
  • Added binary source annotations documenting exact byte offsets in TEDIT config format specify errata
    1 file
    • gold-ship-editor.md