Files
moonwell-client-core/reference/README.md
T
sindoring d1961e79fc Sync upstream through b2473e60 and retain ruRU (#8)
Integrate 182 upstream commits through b2473e60 while retaining MoonWell packaging, branding and the community ruRU pack.

Upstream replaces the C Lua/mlua host with benilla-lua/benilla-mlua and the native glue screens with stock GlueXML. The update also includes the new locale/DBC/name rules, cache and interaction handling, rendering, quest log and chat behavior, including the latest quest completion and timed-quest failure fixes. Fork adaptations use the new APIs: stock Wow.ini locales remain intact, while the ruRU overlay reads column zero and retains its ruRU authentication tag and Lua identity. Russian names keep their twelve-letter policy and Unicode roster matching; fonts, spell costs, race/class labels and translated options retain real-pack regression coverage.

Windows regression fixes keep the locale-default test valid under instrumented window overrides and the shader assertion independent of checkout line endings. The original C Lua 5.1 host, rebuilt from c0630f3d in an isolated directory, reproduces the complete Windows cos-sweep answer byte for byte; cos now uses platform-specific goldens.

Validation on Windows: scripts/gates.sh passed all automatic gates, including real-data and no-install workspace tests, reference tables, documentation, message catalog, render-pass lint, player clippy/tests and engine boots with and without data. MoonWell player clippy also passed with -D warnings. The committed tree exactly matches the full green stamp; five vendored Kira files retain the tested checkout's line endings, with normalized contents unchanged. All three actual ruRU pack regressions passed in both builds. Fifteen test archives were restored read-only from the published client and SHA-256 checked.

Each real-data/player rung skipped 31 tests because the optional addon corpus is absent (24 general, 7 Quiver). Live smoke was not run: no declared probe account; no player-account login or character creation was performed. Linux/macOS changes were not locally built.
2026-10-17 21:10:31 +03:00

2.3 KiB

reference/: benilla-re's tables, vendored

Byte-for-byte copies of the benilla-re tables benilla reads, under their benilla-re names, taken at the commit PIN holds (40 hex digits). benilla-re documents every column (tables/README.md) and rebuilds each table from the client's exe; nothing here is edited by hand, and nothing here is Blizzard content.

The pin moves when a change needs a row benilla-re has after it, and with that change: to a commit on benilla-re's main (the script refuses any other), then the sync, then the tests that read the table. Update: put the new benilla-re commit in PIN, then

scripts/sync-reference.py <benilla-re checkout>            # copy the tables at the PIN
scripts/sync-reference.py <benilla-re checkout> --check    # fail when a copy differs

scripts/gates.sh runs the check when it finds a benilla-re checkout (BENILLA_RE, ../benilla-re beside the repo or beside the main checkout) and skips with a line otherwise; it fails instead where the gates require the install data. cargo xtask vendored <benilla> --strict in benilla-re makes the same comparison from its side. To vendor another table, add its name to TABLES in the script.

file read by
bindings.tsv ui_script/shape_gate.rs, script/tests/widget_surface.rs, script/tests/glue_surface.rs
events.tsv script/glue.rs (the in-game event table, compiled in), ui_script/event_shape_gate.rs
glue_events.tsv script/glue.rs (the glue event table, compiled in), script/tests/glue_surface.rs
event_args.tsv ui_script/event_shape_gate.rs
verb_events.tsv ui_script/verb_event_gate.rs
glue_surface.tsv script/tests/glue_surface.rs, ui_script/glue.rs
lua_globals.tsv script/tests/reference_surface.rs, ui_script/surface_gate.rs, ui_script/layer_tests.rs, ui_script/reference_ui.rs, tests/message_keys.rs, examples/addon_harness.rs, scripts/api-coverage.sh
messages.tsv scripts/gen-message-catalog.py, which writes messages/catalog.rs; the gates check it regenerates byte for byte
chat_types.tsv script/chat_types.rs (its DEFAULTS test)
chat_groups.tsv script/chat_window.rs (its MESSAGE_GROUPS test)
cvars.tsv cvars/reference_table.rs (the CVar table's reference column)