Repository navigation
v1.0.0 "Sextant" — autonomous T2A client + observation frontend
First public release of uo-client — a from-scratch Ultima Online T2A
(protocol 2.0.7) client built as an automation/bot engine with a graphical
frontend that recreates the look of the original client. It targets the
reverse-engineered UO Demo server.
What works now
Protocol & networking
- Full 2.0.7 login → in-world handshake (nocrypt), Huffman-decompressed game
stream, length-table framing - Mobiles, items, stats/skills, speech & journal, light levels, war mode and
death — handled and cached - JSONL + console packet logging;
--headlessmode for a pure console client
Navigation bot
- A* pathfinding over real MUL data, run on a background thread (
goto,follow) - Predict-and-reconcile movement, door opening, and live avoidance of mobiles,
dynamic items and dead-ends; stamina/fatigue handling - Path lookahead with cheap local rerouting around newly-appeared obstacles
Renderer (the observation frontend)
- Software isometric view recreating the 2.0.7 client: land, statics and dynamic
items in painter's-order - Animated mobiles with equipment, hues, mounts and chair-seating, plus
combat/death animation states - Procedural night lighting with per-light coronas, a radar minimap, and a HUD
(status bars, system log/journal, overhead text, chat, UO walk cursor)
Supervision controls
- Right-click to walk, arrow-key manual steps, war/peace toggle, minimap toggle,
open-door, and in-window chat
Known limitations
- Combat reactions are a hook only (engage / flee / recall are TODO)
- Single backend — the UO Demo server (other shards are out of scope)
- Map 0 (Britannia) only
Requires
- Windows + MSVC (32-bit), built via
scripts\build.bat - Your own UO T2A
*.muldata files (none are distributed)
Built entirely through LLM-driven development and reverse engineering
(Codex 5.5 + Claude Opus 4.7), continuously verified against the decompiled
client_2.0.7.exe.