Fix Russian spell costs, player labels and character names #6

Merged
sindoring merged 2 commits from fix/ruru-player-text into main 2026-10-11 17:05:06 +03:00

2 Commits

Author SHA1 Message Date
sindoring 80fe28f9b5 Apply the reference name-field limit on character creation
Initialize the actual CreateSelection name field with 12 letters, as the
stock CharacterCreate.xml CharacterCreateNameEdit letters="12" declares.
The UTF-8 packet test now uses reset's actual field and checks both a short
Russian name and truncation at 12 Cyrillic letters / 24 bytes.

Verified the field property in the real MPQ's GlueXML and the reset path.
Formatting and workspace clippy pass; full land gates are running on this
source tree before merge. The preceding three symptom instruments passed
on real ruRU and adjacent English UI data. Windows only.
2026-10-11 17:52:14 +04:00
sindoring 9c5a1c1f6b Localize spell costs and race/class labels; accept Cyrillic names
Fill the selected GlobalStrings resource-cost templates and carry selected
ChrRaces/ChrClasses display names into the player record and live unit feeds.
Keep race/class file tokens unchanged. Accept Unicode letters in name input
and compare recased UTF-8 roster names when selecting a created character.

Reference: stock PaperDollFrame_SetLevel reads UnitRace/UnitClass; ruRU data
provides the cost templates and DBC names. vmangos normalizePlayerName reads
UTF-8, uppercases the first letter and lowercases the rest.

Verified: original symptoms reproduced by three numeric instruments on real
client data, then all three passed with the corrected paths in ruRU and enUS.
The probes cover the actual CharacterLevelText, spell costs, a second unit,
keyboard input, paste, backspace and a 12-character/24-byte Cyrillic limit.
Formatting and workspace clippy are green. Full land gates run before merge.
Built on Windows; no live player-account login or character creation.
2026-10-11 17:37:02 +04:00