Correcting the fresh-game equipment and palette
Following the original startup code revealed that the fresh hero needed a different equipment selection and palette allocation than the earlier conditional model.
Retrospective on October 13, 2026. Published here on October 25, 2026.
Preservation includes correcting our own assumptions. Tracing the new-character initialization showed that the original fresh game equips weapon 9 and chooses auxiliary palette 24. The earlier model had used a conditional reset selection.
Build 0.15 corrected those selectors and the palette banks used on the opening log and at Sword Falls. The original body sprite PNGs, program binaries and fifteen main body colors stayed unchanged.
The browser also gained an explicit controller-packet interface that retains opposed direction bits. That is a source-input foundation, not a claim that native player controls are finished.
What changed
- Corrected fresh equipment, auxiliary palette selection and the full-word palette-bank allocation.
- Kept only the currently verified 20 object-palette words marked as known.
- Added transactional no-button and direction-input helpers without bypassing required refresh effects.
What we verified
- Java direction-input checks passed 45,790 assertions; no-button selector checks passed 496,172.
- Source-data audits verified the palette correction while retaining the older artwork fingerprint.
- The native browser opening retained its source camera and held at the unfinished post-event input boundary.
What remains unfinished
- Full native player control and the required stat/graphics refresh were still pending in this build.
Next in the rebuild
Implement the real stat and graphics callbacks rather than treating a no-button packet as a no-op.