Kartonath native Rust client - 20260930-248000

Character selection now decodes the real Titanium roster: level, race, class,
location, appearance, equipment colours and both held items. Existing-character
previews, click/keyboard selection and rotation controls are connected.
All six QA characters match a read-only original Titanium roster capture.
122 Kartonath location names use the original executable's zone-name table.
No assets changed; the previous original-lighting and tracking fixes remain.

536 library / 565 all-target tests pass.
77 tests are opt-in; source roster/name checks and UI checks
at four resolutions ran explicitly. This is not full Titanium parity.
The original male held-item idle pose still differs; exact preview lighting,
backdrop, broader race/gear coverage and delete/tutorial/home flows remain open.
The production spectator, database, era gates, firewall and updater are unchanged.

Evidence and remaining layers:
https://eq.kaptohmat.com/client-modernization.html

LINUX
Extract the full download to a NEW folder and run ./run-kartonath.sh.
The dependency helper supports modern Ubuntu libasound2t64.
The smaller controls patch requires unmodified Linux 20260930-247000.
Close the game, extract the patch separately and run as your normal user:
  ./apply-update.sh /path/to/eq-client
It verifies the base, preserves settings and retains recovery files in a
private .controls-backup-* directory. Detected failures attempt rollback;
keep backups and do not launch if recovery fails. Abrupt power loss may
require manual recovery.
