uwarp-space
2026-04-01
uwarp-explorer shared library, PvPContext orchestrator, key mapping and display parity
74 files · 7,783+ · 3,019-
uwarp-explorer shared library
10 files changed
__init__.pyPublic TW2002 client API exported from __init__session.pyTW2002Session type aliasio.pyI/O primitives: send, recv, expectscreen.pyScreen parsing with inlined extract_semantic_kvlogin.pyLogin flowrecovery.pyBBS recoverynav.pyNavigation helperssysop.pySysop API helperstrade.pyTrading helpersuwarp-explorer-design.mdShared TW2002 library design spec
- uwarp-explorer package extracts the shared TW2002 client library into dedicated modules: session type alias, I/O primitives, screen parsing, login, BBS recovery, navigation, sysop API, and trading. All internal parity _helpers modules replaced with shims pointing to the promoted API. Public API exported from init. parse_display_screen, parse_sector_display, extract_int, parse_credits, and parse_sector added to the public API.
instantiate
behavioral
2 files
__init__.pyio.py
PvPContext orchestrator and PvP parallel runner
2 files changed
pvp.pyPvPContext orchestrator: action/screen/wait_for primitives for multi-player PvP test coordinationpvp_runner.pyPvP parallel runner: runs multi-player PvP tests across simultaneous game connections
- PvPContext orchestrator provides action/screen/wait_for primitives for coordinating multi-player PvP scenarios. PvP parallel runner executes PvP test groups simultaneously across two game connections. PvP test groups exported from uwarp-explorer init.
instantiate
behavioral
1 file
pvp.py
Key mappings and display parity fixes
2 files changed
input_adapter.py@, ;, ^ global key mappings added; all key mappings aligned with TWGS Gold help screen; M→move, backtick→broadcastdisplay.pyTWGS Gold date format; box-drawing separator in quick stats; (unexplored) suffix for unvisited sectors; trailing === divider removed; Who's Playing header removed from # command; trader rank title removed from rank/exp line
- @, ;, ^ global key mappings added for TWGS Gold parity. All key bindings aligned with the TWGS Gold help screen. M mapped to move; backtick mapped to broadcast instead of comms_log. Date format changed to TWGS Gold format instead of ‘Today’. Quick stats uses box-drawing separator. Unvisited sectors show ‘(unexplored)’ suffix. Trailing === divider and Who’s Playing header removed.
remediate
behavioral
2 files
input_adapter.pydisplay.py
Stardock port menu, turn recovery, navigation Y/N/!
3 files changed
stardock.pyStardock port menu matching TWGS Gold paritycomms.pyTurn recovery after sub-space broadcast — matches TWGS Goldnavigation.pyY/N/! TWGS Gold parity: NavPoint Settings menu displayed on Y; waypoints correctly handled
- Stardock port menu rewritten to match TWGS Gold format. Turn recovery added after sub-space broadcast to match TWGS Gold behavior. Navigation Y key shows TWGS-style NavPoint Settings menu. Combat auto-target on A command matches TWGS Gold flow. Mine-type prompt text and interdictor ship check fixed.
remediate
behavioral
3 files
stardock.pycomms.pynavigation.py
Corp_id lookup fix and last 3 parity failures resolved
2 files changed
corporation.pyrequire_corp uses get_corp() lookup; corp_id assigned to empty slots during parsing and creation; positional corp_id assigned correctlyparity_check.pyLast 3 parity failures resolved: alien rank (KNOWN_DIFF), FedSpace attack message, send mail, and surrender
- require_corp now uses get_corp() lookup instead of raw list index, fixing off-by-one corp access. Corp_id correctly assigned to empty slots during both parsing and in-game corp creation. Last 3 parity failures resolved: alien rank marked as KNOWN_DIFF (requires .RNK file parsing), FedSpace attack message text corrected, and remaining send mail/surrender flows fixed.
remediate
behavioral
2 files
corporation.pyparity_check.py