From dabdf51383fd629afd5e66bfe54d6e2c20dadf9e Mon Sep 17 00:00:00 2001 From: DownloadPizza Date: Tue, 16 Jun 2026 18:33:02 +0200 Subject: [PATCH] walker naming convention in CLAUDE.md (first/secondNameIndex 0-31 via name_index.json); add Veteran Beast copy --- CLAUDE.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CLAUDE.md b/CLAUDE.md index 33976f3..031de30 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -58,6 +58,13 @@ load: gunzip -> XOR decrypt -> Newtonsoft-BSON parse If a game update changes the key, recover it with no RE via `walker/recover_key.py`. - `pymongo`'s `bson.encode` reproduces Newtonsoft.Bson byte-for-byte, so decode→encode is identity. +### Walker naming convention +A walker's display name is **two indices**, not a string: top-level `firstNameIndex` + `secondNameIndex` +(BSON int32, **0–31 each**). Resolve them via `name_index.json` → `first_name` / `second_name` tables +(e.g. `(16,5)` = "Veteran Veteran", second `6` = "…Beast"). The top-level `name` field is **null/unused** +— the shown name comes from the indices. "name1" = `firstNameIndex`, "name2" = `secondNameIndex`. Set +both with `build_wbt.py rename -o out`, or edit the index directly when copying. + ### The 5 hashes (a `.wbt` is a serialized `WalkerBlueprintDto`) All = `MD5(UTF8(JsonConvert.SerializeObject(obj))).hexUPPER` — Newtonsoft compact JSON: no whitespace,