Skip to content

History / Roadmap

Revisions

  • Regenerate the reference with tombstones, bootstrap 5aae370 - Messages-Unsorted comes back as a tombstone pointing at Messages, so links to it from outside work again - 747 of 747 in run 39104724887; the protocol reference's tests now cover tombstones

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Give the codec its system pages and supersede its design - Codec explains how declarations, the generator, the registries and the facts check fit together, why, and what was rejected - Codec declarations, Codec layout tree and Codec facts check carry the facts to look up, checked against bootstrap c3409ba - Codec design keeps the decisions and the history of how the codec was built, its count history now a table of runs - Home, the sidebar and every link to a moved section point at them

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • State the audit's progress as it stands, not as a trail of commits - Roadmap's step 2 and audit paragraphs, and step 5 of the audit's order of work, give the current counts and link the reference

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Regenerate the reference with logout read, bootstrap c3409ba - LogoutRequest and LogoutConfirm at Fields, LogoutCountdown at Purpose - Client protocol's Leaving section gains the logout steps, and Owners design the map's side of them - Counts from run 39100555948: 53 read to fields, 1,066 unverified, 742 of 742

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Design the map side from the approved Stage 2a plan - Map scheduler design and Timer wheel design, moved out of Server core design with the plan's rulings - Owners design gains the map owners, the hand back and the second login; Gateway design locks tagged routing - Harness design gains stepped maps and the world scenarios - The handling gate by verified members (decided 2026-10-18) on Message audit design, Gateway design and Roadmap

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Add the generated opcode table and commands pages, bootstrap efc697d - Gateway-opcode-table and Command-layer-commands, generated from the opcode table and the server's command list - Command layer's hand-kept table and Gateway's opcode paragraph point at them; Home, the sidebar and Running a server link both - Regenerate the message pages at efc697d; 742 of 742 in run 39092971388

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Regenerate the reference with its reworded area lines, bootstrap 7c25b27 An area page with nothing at Purpose now says it groups messages by the client feature and that a message may sit there provisionally; Unsettled says its messages wait for their feature. ZoneChange moved to Movement. Message audit design and Repository layout say 597 of the 1,084 world messages are placed from the client and 487 are provisional. Run 39092007107: 734 tests.

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Regenerate the reference by the client's feature areas, bootstrap 029ceb6 Every world message now sits in the folder of the client feature it serves: 49 areas, with 127 messages still unsettled. The reference has a page per area and no Unsorted page. World entry's messages are on WorldEntry, Entity, Movement and PlayerPath, and the tagged wrapper on Connection. Counts from run 39091424166: 733 tests.

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Record the verified-address answer and ClientConnector's folder fix Sign-on now answers the client's request for its verified addresses with an empty list, so the client no longer reconnects after login. ClientConnector finds the client and its settings beside itself however it's started. Re-verified against bootstrap 8b753e2, run 39089128777: 731 tests.

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Clear the last owed check: ClientConnector works with a real client It wrote its settings from the first-run prompts and started the client, when run from the client's Client64 folder; from elsewhere its first run fails, so the guide says where to put it. A mixed-case email now logs in with the real client too.

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Point the wiki at main, now that main has the work main was fast-forwarded to bootstrap at 3bdebd6, so every ref badge, the reference pages and the README and CONTRIBUTING links now name main. Roadmap says each step is done on main and one run-time check is still owed; Branches and workflow says what main now holds. Gateway and Running a server cover the debug-level message log. Counts from run 39087772844: 724 tests in 13 applications.

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Record the per-member gate for sending A message may be sent once it's at Purpose and every member the server sets is verified, the rest going as defaults; handling a client message still needs Fields. Decided 2026-10-18 and built with the map side, so the gateway still sends only at Fields until then. Message audit design also takes the client-identifier rule for naming values.

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Document step 3's first stage as built, at bootstrap e8da4aa The real client logs in through our own server and creates a character. Host, Gateway, Owners, Persistence, Command layer and Harness each get an explanation page checked against the merged code, and Running a server is the guide to running it. The six design pages say their first stage is built and stay the direction for the rest. Repository layout, Running the tests, Roadmap, Client protocol and Server core design catch up; Home groups pages by area now the wiki is past twenty. Counts from run 39083384598: 718 tests in 13 applications.

    @rebaserHEAD rebaserHEAD committed Oct 18, 2026
  • Document PlayerState at purpose, bootstrap 48bb36d 0x025E is PlayerState, verified to its purpose: the player's own values, kept apart from the unit, which the client doesn't need to finish entering the world. Roadmap no longer says it carries items and abilities. Reference pages regenerated; counts unchanged, run 39061867784.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Document the movement messages at bootstrap 1b7e100 Taking control, ending it and the zone change are verified to their fields, and the movement messages to their purpose. Client protocol walks the receipt, the zone change and movement after a grant; MovementInterval is the period of the client's movement timer, not how often it sends. 0x0635 is client to server only. Counts from run 39057431917: 51 read to fields, 1,068 unverified.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Record the client facts checked again for the map side Server core design marks four client facts as re-checked to two readings, labels the movement correction recipe as inferred, and says the client keeps an interval set in one world until the next world's WorldSettings. Owners design no longer claims seven protocols cover every flow: two rare ones, account to realm and account to map, are open. Roadmap's 0x025E row says its lists can start empty.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Compare the same bits on every path, at bootstrap cb7a9f0 The facts check now accepts a run of fields split differently from the client's when the totals meet and nothing depends on the split, and fails a message at fields that splits a value the client reads whole. 1,087 agree and 43 are pinned. Codec design and Message audit design carry the rule and the gate; counts from run 39054474869, 318 tests.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Document UnitCreate's members and PlayerUnit's faction refusal The reference pages are regenerated at bootstrap 7e90db0 with UnitCreate's members, stats and type arms documented. Client protocol and Roadmap say a PlayerUnit refused for a missing base faction still sets the player, so the client refuses every later one. Counts unchanged, run 39049099887.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Document TaggedMessage and correct which messages travel tagged 0x038C is TaggedMessage, verified to its fields: one message under a tag fixed by its opcode. The client sends tagged messages before the world as well as in it, and sends others on their own, so pregame isn't untagged as the pages said. What each tag stands for is our reading, not yet verified. Counts from run 39006780626: 48 read to fields, 1,071 unverified.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Document UnitCreate at purpose, bootstrap c136cc7 0x0262 is UnitCreate, verified to its purpose. The facts check treats two more pairs of forms as the same bits, which with three corrected arms settles 48 pins: 1,030 agree and 104 are pinned. The reference pages are regenerated; counts from run 39003475287, 289 tests.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Correct the player's own data and the movement interval 0x025E is never a stub: most of the client's interface waits for it, and it's the only way items, abilities, currencies and experience arrive. The interval in WorldSettings sets how often the client sends its own movement; whether it plays out others at it is now an open question. Roadmap names the audit's path to milestone one and the account messages character select may need.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Move step 3's first systems onto design pages of their own Step 3's first stage is approved and being built, so the host, gateway, owners, persistence, command layer and harness get their own design pages, moved off Server core design with their knobs and rejected ideas, and filled in from the stage's plan. The map scheduler and timer wheel stay until the map side is planned. Home, the sidebar and Roadmap's step 3 point at them.

    @rebaserHEAD rebaserHEAD committed Oct 17, 2026
  • Document LoginRequest at fields, bootstrap f1e5c15 LoginRequest is verified to its fields, so pregame has 41 of its 42. The reference pages are regenerated, which also corrects how many strings a realm notice carries. Client protocol says what the login request holds and drops its own trust row; counts from run 38973272246: 47 read to fields, 1,072 unverified.

    @rebaserHEAD rebaserHEAD committed Oct 16, 2026
  • Document world entry at bootstrap 7c68ecc Six world-entry messages verified to their fields: the reference pages regenerated, Client protocol follows the conversation to the end of the loading screen, and Roadmap's milestone one table takes their names and the client's WorldReady. Counts from run 38972717843: 273 tests, 46 read to fields, 1,073 unverified. Repository layout carries the reference tool's two new tests.

    @rebaserHEAD rebaserHEAD committed Oct 16, 2026
  • Publish the generated message reference at bootstrap 58cb3ba Messages and a page per area, generated by Tools/NexusTomorrow.ProtocolReference at 58cb3ba: 1,119 messages on 40 pages. Home, the sidebar, Client protocol, Codec design and Message audit design link it. Repository layout gains the Tools folder, the generator and its tests; the counts move to 271 tests in six applications. Code pages re-verified against 58cb3ba, run 38964363277.

    @rebaserHEAD rebaserHEAD committed Oct 16, 2026
  • Record the build reorder: step 2 closed, the audit alongside step 3 The codec's third stage closed after its review at c6b56e9, and the core skeleton starts on the messages already verified rather than after the whole audit, so the project can stop depending on the old server; milestone one's messages are checked first and the rest alongside the build. Roadmap marks step 2 done and step 3's pregame stage planned and waiting on review; the audit page records decision 2's change with its reason; Codec-design closes stage 3.

    @rebaserHEAD rebaserHEAD committed Oct 16, 2026
  • Re-verify against bootstrap c6b56e9, pins that carry their problem Each facts-check pin records the exact problem it covers, and the check fails when that text changes (run 38955532713, 263 of 263; counts unchanged).

    @rebaserHEAD rebaserHEAD committed Oct 16, 2026
  • Add Client protocol, the pregame conversation as far as it's verified An explanation page for how the 16042 client talks to a server: its three connections, the envelopes and keys, the greeting's build and protocol checks, and the pregame conversation from logging in through character select, realm select and transfers to entering the world, named by the verified declarations. Sign-on is labelled as carried over from the old code. Linked from Home, the sidebar, Roadmap and the audit page.

    @rebaserHEAD rebaserHEAD committed Oct 16, 2026
  • Record pregame done for milestone one, at bootstrap b9b7eea Character creation reaches Fields: 40 of pregame's 42 messages are verified to their fields (run 38939303230, 263 of 263; 40 read to fields, 1,079 unverified). LoginRequest stays at Purpose and 0x03EF unverified. Roadmap names milestone one's next areas.

    @rebaserHEAD rebaserHEAD committed Oct 16, 2026
  • Record the character list and world entry at Fields, at bootstrap 585b32a Pregame has 39 messages verified to their fields (run 38935110817, 263 of 263; 39 read to fields, 1,080 unverified); two stay at Purpose. EnterWorld's three floats are a point the world loads around, not the character's position, so milestone one's table says so.

    @rebaserHEAD rebaserHEAD committed Oct 16, 2026