Titanium compatibility. A modern native client.
The goal is a complete Rust replacement for playing Kartonath: classic EverQuest behavior and original assets, with responsive input, modern rendering, a polished interface and reliable native Linux and Windows support.
The replacement is still in development. This page separates implemented player systems from the remaining acceptance work. Neither a successful build nor a test count means the entire client is complete or AAA-quality.
Current update: original wheel-camera controls
Ordinary wheel chase now follows Titanium's original one-unit slow steps, five-unit rapid steps inside 50 ms, smooth distance interpolation and 53-unit limit. Model minimums are read from the original reference: normally 3 units, basilisk 5 and bear 6. Scrolling inward returns to first person; scrolling outward enters wheel chase. F9 preset views ignore the wheel, as the original does.
The camera uses the original interpolated trigonometry, pitch limits, posture anchors and world/door collision checks. Insert/Delete now adjusts only eligible F9 cameras (modes 2/3/4) with the original frame-scaled increment; it no longer switches first person into wheel chase. Modern camera-distance options remain available as an additional control.
Linux update patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20261001-259000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
37 focused camera tests; 593 library / 622 all-target tests pass, with 83 opt-in tests ignored by default. Original-client numeric captures and model metadata were checked. Both platforms passed ordinary North Qeynos login, rendered-world, wheel transition, F9 exclusion and camp checks. All 110,023 assets remain unchanged and hash-verified. Installer safety, patch rehearsal and archive integrity checks passed.
Coverage is ordinary unmounted camera behavior, not every race, mount or camera combination. First-person, mounted and keyboard-pitch comparisons remain open, alongside other client and all-zone acceptance. Windows used Wine/software Vulkan; physical hardware/audio acceptance remains open. No production spectator, live service, server data, network, era-gate or updater changes. Full client parity is not complete.
Linux verification · Windows verification · Linux checksums · Windows checksum
Both-platform North Qeynos camera checks
linux: linux roster

linux: linux north rendered

linux: linux camera first

linux: linux camera wheel one

linux: linux camera wheel two

linux: linux camera return first

linux: linux camera f9

linux: linux camera f9 wheel ignored

windows: windows roster ready

windows: windows north world ready

windows: windows camera first

windows: windows camera wheel one

windows: windows camera wheel two

windows: windows camera return first

windows: windows camera f9

windows: windows camera f9 wheel ignored

Previous repair: original ambient volumes and randomized voices
Titanium's original constructor defaults flat ambience to 0.2 and positional/randomized ambience to 1.0. The previous extractor substituted different defaults. This build corrects 5,552 volume variants across 99 metadata files, including the Qeynos zones. Forty-eight cases executed the original constructor's dispatch fragment with a stubbed converter; the numerical conversion itself follows the original disassembly and is not claimed as original-function execution.
Randomized type3 ambience now places each new voice around the listener using the original angle and linear-radius distribution. Each voice keeps its own world position and stereo attenuation as the listener moves, with minimum distance 8 and maximum 100. The RNG algorithm matches the original CRT, but its local stream is not synchronized with every random call in the original application. Earlier multiplier and fade repairs remain intact.
Linux update patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20261001-258000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
38 focused audio tests; 582 library / 611 all-target tests pass, with 82 opt-in tests ignored by default. The explicit 6,365-row original-record check and both-platform North Qeynos login/render/camp smoke checks passed. All 110,023 assets were hash-verified; only 99 metadata files were replaced, and older release assets remain untouched. Installer safety, patch rehearsal and archive integrity checks passed.
The QA host has no working audio output: numerical/sample validation is not physical listening acceptance. Negative regions, original whole-engine bus volume routing, reverb, Doppler and music remain open. Modern master/ambient sliders remain an outer linear gain bus. Windows used Wine/software Vulkan. No production spectator, live service, server data, network, era-gate or updater changes. Full client parity is not complete.
Linux verification · Windows verification · Linux checksums · Windows checksum
Both-platform North Qeynos rendering smoke checks (not audio evidence)
linux: linux roster

linux: linux north rendered

windows: windows roster ready

windows: windows north world ready

Previous repair: corrected ambient fields and source fades
Further tracing found an extraction error in earlier builds: the night fade duration was being read as the distance multiplier. The export now follows Titanium's actual loader: separate day/night fade durations at offsets 68/72 and multipliers at 76/80. This corrects 3,795 rows across 200 metadata files, including North Qeynos, South Qeynos and Qeynos Hills. The previous mixer comparison remains valid, but it could not detect incorrect inputs from the exporter.
Outgoing continuous ambience now fades in source-volume space before positional mixing. Returning to the source starts a new voice without extending its old fade. Detached flat one-shots keep playing outside their start radius. The original records contain 1,848 nonzero fade values; the parser accepts 1,847 of those variants. The remaining Halas record has no sound name.
Linux update patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20261001-257000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
32 focused audio tests; 576 library / 605 all-target tests pass, with 82 opt-in tests ignored by default. The explicit 6,365-row original-record check and both-platform North Qeynos login/render/camp smoke checks passed. All 110,023 assets were hash-verified; only 200 metadata files were replaced, and older release assets remain untouched. Installer safety, patch rehearsal and archive integrity checks passed.
The QA host has no working audio output: numerical/sample validation is not physical listening acceptance. Type3 randomized placement, negative regions, original source/bus volume routing, reverb, Doppler and music remain open. Modern master/ambient sliders remain an outer linear gain bus. Windows used Wine/software Vulkan. No production spectator, live service, server data, network, era-gate or updater changes. Full client parity is not complete.
Linux verification · Windows verification · Linux checksums · Windows checksum
Both-platform North Qeynos rendering smoke checks (not audio evidence)
linux: linux roster

linux: linux north rendered

windows: windows roster ready

windows: windows north world ready

Previous repair: original positional ambience mixer
Type2 ambient sounds now preserve their original minimum-distance setting and use Titanium's selected Miles provider's distance fade, volume response, left/right balance and rear attenuation. The listener follows the active camera, including F9/orbit views. Existing one-shots continue beyond their smaller start radius, subject to the provider's maximum distance.
The comparison executes the original provider in isolation: 9,504 cases, including translated listeners and rotated directions. The Rust mixer matches all 9,408 finite reference outputs within 0.000001. The other 96 original cases produce invalid gains from a rounding error; the new mixer safely clamps that error.
Linux update patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-256000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
25 focused audio tests; 569 library / 598 all-target tests pass, with 81 opt-in tests ignored by default. The explicit 6,365-row sound-data check and both-platform North Qeynos login/render/camp smoke checks passed. All 110,023 assets remain unchanged and hash-verified. Installer safety, patch rehearsal and archive integrity checks passed.
The QA host has no working audio output: numerical/sample validation is not physical listening acceptance. Type3 randomized placement, negative regions, whole-engine bus routing, source fades, reverb, Doppler and music remain open. Modern master/ambient sliders remain an outer linear gain bus. Windows used Wine/software Vulkan. No production spectator, live service, server data, network, era-gate or updater changes. Full client parity is not complete.
Linux verification · Windows verification · Linux checksums · Windows checksum
Both-platform North Qeynos rendering smoke checks (not audio evidence)
linux: linux roster

linux: linux north world

windows: windows roster ready

windows: windows north world ready

Previous repair: original ambience activation ranges
Positional and randomized ambient sources now use Titanium's 100-unit activation cap, with smaller authored radii respected. Flat sources retain their own radius. The exact boundary is out of range. One valid zero-radius positional source also uses the original capped fallback; negative-region sounds are not guessed as global.
The explicit source-data test checks all 6,365 rows, including 979 capped day/night variants and 103 decoded sound names. All 110,023 assets are unchanged from the previous release and hash-verified on both builds.
Linux update patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-255000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
559 library / 588 all-target tests pass; 81 are opt-in. The full sound-asset test ran explicitly. Both builds passed North Qeynos login, rendered-world, metadata/clock and confirmed-camp checks. Installer safety, patch rehearsal and archive integrity checks passed.
The QA host has no working audio output: this validates source data and activation calculations, not audible playback. Within-range gain remains approximate. Spatialization, randomized placement, negative-region handling, music and physical hardware acceptance remain open. Windows used Wine/software Vulkan. No production spectator, live service, server data, network, era-gate or updater changes.
Linux verification · Windows verification · Linux checksums · Windows checksum
View both-platform North Qeynos smoke checks (not audio evidence)
linux: linux roster

linux: linux north world

windows: windows roster

windows: windows northaudit selected

windows: windows north world

Previous repair: original flat ambience restored
The old sound export merged flat and positional day/night sounds. This update restores original type metadata in 200 files across 111 zones, verified against 6,365 Titanium sound records. Flat sounds now retain their authored volume within their activation radius instead of being faded like positional sounds.
Four zero-radius flat records (eight day/night variants) also use the original fallback radius. Negative radii are region selectors and remain unsupported, not guessed as global sounds. Existing sound names, positions, volume values and timing fields are unchanged. The previous release's files remain intact.
Linux controls patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-254000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
557 library / 586 all-target tests pass; 81 are opt-in. The full typed-asset check ran explicitly, including 5,065 flat variants and decoding 103 referenced sound names. Both builds passed North Qeynos login, rendered-world, emitter-count, clock and confirmed-camp checks. All 110,023 asset hashes were checked on both platforms; only 200 sound metadata files changed.
The QA host has no working sound output device: these are parsing, gain and sample-queue checks, not a listening test. Positional falloff remains approximate; randomized placement, negative-region handling, music and physical audio acceptance remain open. Windows used Wine/software Vulkan. No server data, production spectator, era gates, networking or updater changes.
Linux verification · Windows verification · Linux checksums · Windows checksum
View both-platform North Qeynos smoke checks (not audio evidence)
linux: linux roster

linux: linux north world

linux: linux north shop

linux: linux north npc

windows: windows roster

windows: windows northaudit selected

windows: windows north loaded

Previous repair: complete character creation test cycle
Creation now validates and capitalizes names before requesting approval, rejects duplicate/full-roster requests locally, and bounds both server-response waits. Malformed or repeated approvals cannot resend creation. Success is reported only when the server's refreshed roster lists the new character, without automatically entering the world.
Both builds completed one ordinary-UI cycle: allocate all 25 points, choose a female Human Warrior and classic face, create the character, enter South Qeynos, inspect starter inventory, camp to the roster and delete only that disposable character. Read-only server checks confirmed the chosen attributes and appearance, preserved all six original characters and verified recoverable soft-delete archives. No direct database edits were used.
Linux controls patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-253000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
554 library / 583 all-target tests pass; 80 tests are opt-in. Creation and roster rendering, packet/timeout guards and nine installer checks ran explicitly. All 110,023 assets remain unchanged.
This is not all-character or full-client acceptance. Other race/class/deity combinations, tutorial/home routing, preview camera/lighting and remaining client layers are unfinished. Windows used Wine/software Vulkan, not physical Windows hardware. Initial HP status clears after the live server update; it is not substituted with guessed health. Production spectator, era gates, networking and updater remain unchanged.
Linux verification · Windows verification · Linux checksums · Windows checksum
View Linux and Windows lifecycle checks
linux: creation empty

linux: creation named

linux: creation female

linux: creation face

linux: creation allocated

linux: creation submitted

linux: lifecycle resources ready

linux: lifecycle inventory

linux: lifecycle roster ready

linux: lifecycle delete confirm

linux: lifecycle deleted roster

windows: creation empty

windows: creation named ready

windows: creation female

windows: creation face

windows: creation allocated

windows: creation submitted

windows: lifecycle world rendered

windows: lifecycle resources ready

windows: lifecycle inventory ready

windows: lifecycle roster confirmed

windows: lifecycle delete confirm

windows: lifecycle deleted roster

Previous repair: camp destinations and safe re-entry
Ordinary /camp returns to character selection. /camp server returns to the server list; /camp desktop closes the client. Repeating /camp cancels an active countdown. The client sends Titanium's four-byte destination and waits for the server's logout confirmation before changing screens.
Original Titanium was checked live for ordinary camp-to-roster behavior, and its executable supplied destination and cancellation details. Both Rust builds passed cancellation, character selection, server selection, three real world entries and confirmed desktop exit. Selection does not automatically enter a character.
Linux controls patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-252000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
549 library / 578 all-target tests pass; 80 tests are opt-in. UI rendering, camp packet/state guards and nine installer checks ran explicitly. All 110,023 assets remain unchanged.
Full creation/deletion lifecycle, tutorial/home and other client layers remain open. Windows used Wine/software Vulkan, not physical hardware. Original camp-to-server/desktop behavior was inspected in code, not exercised live. No characters created/deleted or direct database edits; production spectator, era gates, firewall and updater are unchanged.
Linux verification · Windows verification · Linux checksums · Windows checksum
View original and both-platform camp checks
linux: original world no tip

linux: original camp started

linux: original camp progress

linux: linux roster

linux: linux world rendered

linux: linux camp start

linux: linux camp cancel

linux: linux cancel stays

linux: linux default roster ready

linux: linux reentry loading

linux: linux server list ready

linux: linux server reentry roster

linux: linux world third

windows: roster

windows: world first

windows: camp start

windows: camp cancel

windows: cancel past deadline

windows: default roster

windows: world second

windows: server list ready

windows: server reentry roster

windows: world third

Previous repair: return through characters, servers and login
Back to Servers and Escape now return from the character roster to a freshly authenticated server list. Back to Login and Escape return from servers to the login form without closing the application. Reconnecting restores the authoritative roster and does not automatically enter a character.
These controls cannot interrupt an outstanding character creation/deletion request, world handoff or in-world connection. Creation and deletion dialogs keep their own cancellation behavior.
Linux controls patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-251000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
544 library / 573 all-target tests pass; 80 tests are opt-in. Seven roster UI sizes, modal layering, connection-state guards and nine installer checks ran explicitly. Native Linux and Windows under Wine passed live button/Escape roundtrips, world entry and normal camp. All 110,023 assets remain unchanged.
Full creation/deletion lifecycle, camp-to-selection, tutorial/home and the other client layers remain open. Windows used Wine/software Vulkan, not physical hardware. No direct database edits; the production spectator, era gates, firewall and updater are unchanged.
Linux verification · Windows verification · Linux checksums · Windows checksum
View both-platform navigation checks
linux: first servers

linux: server button login

linux: server escape login

linux: first roster ready

linux: roster button servers

linux: roster after button

linux: compact roster

linux: roster escape servers

linux: compact reconnected roster

linux: restored roster

linux: world ready

windows: first servers

windows: server button login

windows: server escape login

windows: first roster

windows: roster button servers

windows: roster after button

windows: compact roster

windows: roster escape servers

windows: compact reconnected roster

windows: restored roster

windows: world ready

Previous repair: explicit character-deletion confirmation
The roster now offers Delete with a modal naming the selected character. Cancel, Escape and Enter dismiss it without a request. Clicking behind the modal cannot select, create or enter another character. The confirmation is tied to the actual roster entry, not an index that could change.
The original Titanium executable sends opcode 0x26c9 with the selected name and terminating zero. The Rust request follows that format, blocks duplicate/create/enter requests while waiting, and uses the server's refreshed roster as the result. An unchanged roster is not reported as success; a timeout requires reconnecting, without automatic destructive retries.
The patch requires unmodified Linux 20260930-250000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
543 library / 572 all-target tests pass; 80 tests are opt-in. Seven roster/modal UI sizes, local reliable-packet/roster/timeout tests and nine installer checks ran explicitly. Native Linux and Windows under Wine passed live cancel-only checks, world entry and normal camp. All 110,023 assets remain unchanged.
Successful live deletion is not yet accepted: no existing character was deleted during this check. Original confirmation and No cancellation were inspected; exact original keyboard-dialog behavior is not claimed. Full creation lifecycle, back-navigation, tutorial/home and the other client layers remain open. Windows used Wine/software Vulkan, not physical hardware. No direct database edits; the production spectator, era gates, firewall and updater are unchanged.
Linux verification · Windows verification · Linux checksums · Windows checksum
View original and both-platform cancellation checks
linux: original delete dialog

linux: original delete cancelled

linux: native fixed roster ready

linux: native delete dialog

linux: native background blocked

linux: native cancel button

linux: native compact roster

linux: native compact dialog

linux: native enter cancel

linux: native escape dialog

linux: native escape cancel

linux: native restored

linux: native world rendered

windows: roster ready

windows: delete dialog

windows: background blocked

windows: cancel button

windows: compact roster

windows: compact dialog

windows: enter cancel

windows: escape dialog

windows: escape cancel

windows: restored

windows: world rendered

Previous repair: usable creation controls in compact windows
A live 800×480 check reproduced hidden Back and Create buttons in the previous build. Character creation now adapts its spacing so every identity selector, face control, attribute button, Reset, Back and Create fits. The appearance preview retains its aspect ratio.
Escape now cancels a local creation draft and restores the selected character and equipped preview instead of closing the client. Back does the same. Controls remain blocked while an actual creation request is pending.
Linux controls patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-249000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
539 library / 568 all-target tests pass; 79 tests are opt-in. Rendered controls tests at seven window sizes and nine installer checks ran explicitly. Native Linux and Windows under Wine passed compact controls, attribute adjustment/reset, appearance changes, Back/Escape restoration, world entry and normal camp. All 110,023 assets remain unchanged.
Full Titanium parity remains unfinished. Successful end-to-end creation, deletion, tutorial/home, all-race previews and exact preview camera/lighting remain open. Pending-submission blocking was tested offscreen, not by delaying the live server. No characters were created or deleted; no direct database edits were made. Windows used Wine/software Vulkan, not physical Windows hardware. The production spectator, era gates, firewall and updater are unchanged.
Linux verification · Windows verification · Linux checksums · Windows checksum
View before/after and both-platform checks
linux: windows creation 800x480 before

linux: native roster

linux: native creation 1280

linux: native creation 800

linux: native stat plus

linux: native stat reset

linux: native gender

linux: native face

linux: native back roster

linux: native reopen

linux: native escape roster

linux: native restored

linux: native world ready

windows: roster

windows: creation 1280

windows: creation 800

windows: stat plus

windows: stat reset

windows: gender

windows: face

windows: back roster

windows: reopen

windows: escape roster

windows: restored

windows: world current

Previous repair: original standing pose and unstretched portraits
The live original client uses standing action 32 (p01) in character selection. The Rust preview was choosing the arms-at-sides p08 fallback, which lowered male arms and held equipment. Character selection now applies the original clip to the body and both item attachment bones, without changing world-idle behavior.
Read-only original-client captures identify the ranger, female warrior and monk by name and confirm action 32. Source-model replay and Linux/Windows-Wine screenshots check the correction. Portrait layout now preserves the render target's aspect ratio at seven tested sizes, including 4K, ultrawide and portrait windows.
Linux controls patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-248000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client as your normal user. Settings and recovery copies are preserved. Extract full downloads into a new folder.
538 library / 567 all-target tests pass; 78 tests are opt-in. The original-pose replay, seven-resolution UI test and nine installer checks ran explicitly. All 110,023 assets remain unchanged.
This fixes the wrong idle clip; it does not establish pixel-perfect pose, camera, lighting or backdrop parity. All-race/gear acceptance, compact character-creation layout and delete/tutorial/home flows remain open. Windows testing used Wine/software Vulkan, not physical Windows hardware. No characters were created or deleted; no direct database edits were made. The production spectator, era gates, firewall and updater are unchanged.
Linux verification · Windows verification · Linux checksums · Windows checksum
View original and both-platform preview comparisons
linux: original trackaudit

linux: original frontaudit

linux: original northaudit

linux: native trackaudit

linux: native frontaudit

linux: native northaudit

linux: native creation

linux: native creation back

linux: native trackaudit restored

linux: native world ready

windows: trackaudit

windows: frontaudit

windows: northaudit

windows: creation

windows: creation back

windows: trackaudit restored

windows: world ready

Previous repair: real character details and appearance previews
Character selection now decodes Titanium's complete roster structure instead of scanning the packet for name-like strings. The screen shows server-provided level, race, class and last location, with the selected character's face, clothing, equipment colours and both held items. Click/keyboard selection, preview rotation and returning from creation are connected.
Every roster field for six real QA characters matches a bounded, read-only capture from the original Titanium client. Human male, human female face and monk equipment cases were inspected in the original and both native builds. The 122 Kartonath location labels come from Titanium's original executable; 59 differ from the server catalogue's labels.
Linux controls patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-247000. Close the game, extract it separately and run ./apply-update.sh /path/to/eq-client without sudo. It verifies the base and preserves settings and recovery copies. Extract full downloads into a new folder.
536 library / 565 all-target tests pass; 77 source/GPU tests are opt-in. Original roster and zone-label replay, UI interaction checks at four resolutions and nine installer tests ran explicitly. All 110,023 assets remain unchanged.
The male held-item idle pose still differs from the original preview. Exact preview animation/lighting/backdrop, all races and gear, and delete/tutorial/home flows remain open. This is a functional roster/preview improvement, not full front-end or full client parity. Windows was exercised under Wine/software Vulkan; physical Windows graphics/audio and outside connectivity remain unverified. No characters were created or deleted, and no direct database edits were made. The production spectator, era gates, firewall and updater are unchanged.
Linux verification · Windows verification · Linux checksums · Windows checksum
View original and Linux/Windows-Wine character selection checks
linux: original character list

linux: original frontaudit

linux: original northaudit

linux: native trackaudit

linux: native frontaudit

linux: native northaudit

linux: native rotate on

linux: native rotated

linux: native rotation stopped

linux: native creation

linux: native creation back

linux: native trackaudit restored

linux: native world ready

windows: trackaudit

windows: frontaudit

windows: northaudit

windows: rotate on

windows: rotated

windows: rotation stopped

windows: creation

windows: creation back

windows: trackaudit restored

windows: world ready

Previous repair: Titanium tracking filters and sorting
Rangers now have the five original sort modes and six NPC colour filters. Player filtering, saved preferences, classic slash commands and Cancel stopping active tracking are implemented. The list remains server-provided. Original Titanium's local consider thresholds and equal-value sorting behavior are reproduced.
A captured 25-entry original Titanium roster matches across ten sequential sort/filter states. Linux and Windows/Wine live sessions check sorting, hiding red entries, hiding and restoring white entries, selecting a real fish, receiving direction messages and stopping them with Cancel. Saved preferences and normal camp are checked too.
Linux controls patch Full Linux download Windows x64 downloadThe patch requires unmodified Linux 20260930-246000. Close the client, extract the patch separately and run ./apply-update.sh /path/to/eq-client without sudo. It verifies the base and preserves settings and recovery copies. Extract full downloads into a new folder.
530 library / 559 all-target tests pass; 75 source/GPU tests are opt-in. Original tracking replay, UI checks at four resolutions and nine installer tests ran explicitly. All 110,023 assets are unchanged from the previous lighting repair.
This completes the checked tracking cases, not full Titanium parity. Populated player/group and pet-name cases still need live acceptance. Character-selection metadata and existing-character previews are the next identified front-end gap. Physical Windows graphics/audio and external connectivity remain unverified. The production spectator, database, era gates, firewall and automatic updater are unchanged.
Linux verification · Windows verification · Linux checksums · Windows checksum
View original, Linux and Windows/Wine tracking checks
linux: original hide red

linux: native world ready

linux: native tracking list
linux: native distance

linux: native hide red

linux: native hide all

linux: native fish restored

linux: native selected

linux: native tracking active
linux: native active list

linux: native cancelled

linux: native restored

windows: world ready

windows: tracking list
windows: distance

windows: hide red

windows: hide all

windows: fish restored

windows: selected

windows: tracking active
windows: active list

windows: cancelled

windows: restored

Previous repair: original lighting data restored in 99 zones
An old export clipped intermediate vertex colours and lighting alpha to full brightness. Those zones have now been rebuilt from the original archives with normalized colour channels. The client retains the existing geometry, UVs, normals, materials, textures and collision repairs; only the lost lighting data is restored.
The shipping loader verified 16,601,791 triangles and 4,851 floor/water samples. Direct Titanium comparison reproduces Surefall's measured character brightness within the recorded tolerance, plus its encoded ambient and shadow-floor values. Linux and Windows/Wine both pass normal login, inventory and camp checks.
Linux lighting + assets patch Full Linux download Windows x64 downloadThe smaller patch requires unmodified Linux 20260930-245000. Close the game, extract the patch separately, and run ./apply-update.sh /path/to/eq-client without sudo. It verifies the previous files, preserves settings and keeps recovery backups of replaced assets. Full downloads should be extracted into a new folder.
524 library / 553 all-target tests pass; 74 source/GPU tests are opt-in. The original brightness regression, 99-zone runtime check, colour-delta corruption checks and nine installer checks were run explicitly. 110,023 asset files are hash-verified. Original buffers and previous releases remain available for recovery.
This is an asset-lighting repair, not 99 completed zones or full client parity. Original-camera/pixel matching, broader live zone behavior and the remaining player-system acceptance work stay open. Windows runtime was checked under Wine/software Vulkan, not physical Windows graphics or audio. The production spectator, server database, era gates, firewall and automatic updater are unchanged.
Per-zone asset evidence · Linux verification · Windows verification · Linux checksums · Windows checksum
Show all 99 repaired zone asset sets
These are completed colour-data repairs, not overall classic-zone percentages.
| Zone | Triangles verified | Floor/water samples |
|---|---|---|
| qrg | 16,162 | 49 |
| airplane | 31,538 | 49 |
| arena | 4,875 | 49 |
| befallen | 64,216 | 49 |
| akanon | 54,226 | 49 |
| beholder | 12,084 | 49 |
| burningwood | 494,932 | 49 |
| blackburrow | 33,328 | 49 |
| cabeast | 71,708 | 49 |
| cabwest | 39,259 | 49 |
| butcher | 136,111 | 49 |
| cauldron | 30,933 | 49 |
| charasis | 69,371 | 49 |
| chardok | 76,847 | 49 |
| cazicthule | 59,464 | 49 |
| commons | 71,172 | 49 |
| dalnir | 34,916 | 49 |
| dreadlands | 337,563 | 49 |
| crushbone | 31,936 | 49 |
| eastkarana | 66,543 | 49 |
| ecommons | 84,558 | 49 |
| erudnext | 60,137 | 49 |
| emeraldjungle | 1,950,053 | 49 |
| erudnint | 77,933 | 49 |
| erudsxing | 11,618 | 49 |
| fearplane | 65,441 | 49 |
| everfrost | 111,660 | 49 |
| feerrott | 126,568 | 49 |
| felwithea | 30,943 | 49 |
| felwitheb | 23,438 | 49 |
| fieldofbone | 207,884 | 49 |
| firiona | 326,583 | 49 |
| freporte | 126,553 | 49 |
| freportn | 89,057 | 49 |
| frontiermtns | 322,139 | 49 |
| freportw | 96,242 | 49 |
| gfaydark | 186,709 | 49 |
| grobb | 34,493 | 49 |
| gukbottom | 60,388 | 49 |
| guktop | 53,397 | 49 |
| hateplane | 138,882 | 49 |
| halas | 59,695 | 49 |
| hateplaneb | 1,119,276 | 49 |
| highkeep | 73,883 | 49 |
| highpass | 56,949 | 49 |
| hole | 288,739 | 49 |
| innothule | 125,703 | 49 |
| kaesora | 52,140 | 49 |
| jaggedpine | 757,533 | 49 |
| kaladima | 39,618 | 49 |
| karnor | 58,581 | 49 |
| kaladimb | 42,103 | 49 |
| kedge | 22,732 | 49 |
| kerraridge | 32,038 | 49 |
| kithicor | 96,429 | 49 |
| kurn | 62,496 | 49 |
| lfaydark | 111,074 | 49 |
| mistmoore | 46,421 | 49 |
| misty | 39,154 | 49 |
| najena | 58,699 | 49 |
| lakeofillomen | 349,590 | 49 |
| nektulos | 43,781 | 49 |
| neriaka | 62,105 | 49 |
| nedaria | 374,638 | 49 |
| neriakb | 69,980 | 49 |
| northkarana | 80,011 | 49 |
| neriakc | 77,831 | 49 |
| nro | 30,400 | 49 |
| oasis | 30,585 | 49 |
| oggok | 32,557 | 49 |
| oot | 68,641 | 49 |
| paineel | 146,190 | 49 |
| permafrost | 38,995 | 49 |
| overthere | 517,777 | 49 |
| qcat | 15,772 | 49 |
| qey2hh1 | 153,989 | 49 |
| qeynos | 67,303 | 49 |
| qeytoqrg | 25,171 | 49 |
| rivervale | 61,821 | 49 |
| rathemtn | 119,239 | 49 |
| runnyeye | 62,130 | 49 |
| sebilis | 84,817 | 49 |
| soldunga | 70,207 | 49 |
| soldungb | 49,125 | 49 |
| soltemple | 33,299 | 49 |
| skyfire | 351,360 | 49 |
| sro | 46,758 | 49 |
| steamfont | 46,440 | 49 |
| southkarana | 149,236 | 49 |
| swampofnohope | 785,527 | 49 |
| tox | 59,209 | 49 |
| timorous | 411,421 | 49 |
| tutoriala | 218,290 | 49 |
| tutorialb | 193,599 | 49 |
| unrest | 35,920 | 49 |
| veeshan | 71,840 | 49 |
| trakanon | 1,803,333 | 49 |
| warslikswood | 646,400 | 49 |
| lakerathe | 51,381 | 49 |
View original Titanium and both native-client checks
original qrg actor

native qrg color restored

native inventory color restored

Windows/Wine: windows restored colors

Windows/Wine: windows inventory

Previous repair: retained Titanium lighting in hidden-sky zones
Surefall disables sky drawing but still uses the original sky colour map for lighting. The Rust client now retains that map while sky/weather updates are frozen, keeps the current-clock sun/moon selection, and leaves server fog unchanged. This repairs missing source lighting without inventing colours or modifying assets.
The first candidate was rejected after direct visual comparison: it incorrectly advanced hidden night/snow colours. The corrected Linux and Windows builds match Titanium's captured Surefall ambient values. Normal login, world rendering, inventory and camp checks pass.
Linux lighting patch Full Linux download Windows x64 downloadPatch base: unmodified Linux 20260930-244000. Close the client and run ./apply-update.sh /path/to/eq-client without sudo. Settings and assets are preserved with a rollback backup. Extract full downloads into a new folder; on Windows run run-kartonath.bat.
524 library / 553 all-target tests pass. An explicit GPU regression checks 121 original zone catalogs, three times and two weather states, retained metadata, frozen/resumed transitions and fog/draw gates. All 109,924 asset hashes are unchanged.
This is a verified lighting-state repair, not complete zone or client parity. Exact camera/pixel matching, observer/actor brightness and broader original cross-zone transitions remain open. Windows runtime was checked under Wine/software Vulkan, not native Windows hardware or audio. No spectator, server database, firewall, era-gate or automatic-updater changes.
Linux checksums · Linux verification · Windows checksum · Windows verification
View original Titanium, Linux and Windows lighting checks
original qrg lighting245

original repeat world245

final native hidden sky

final native inventory

windows hidden sky

windows inventory

Previous repair: visible world stations and manual crafting
Fixed a live missing-model problem: server ground objects were received but never drawn. The Rust client now loads their original exported models, including the Surefall forge, with material animation, model-based clicking and authored collision flags. Missing models are logged rather than replaced.
Click a station to open its server-owned container. Actual carried crafting containers also expose Combine. Original empty, stacked-ingredient, cursor and class/race guards prevent invalid requests. Server messages own results, consumption and returns; a combine acknowledgement is not treated as success.
Linux crafting patch Full Linux downloadPatch base: unmodified Linux 20260930-243000. Close the client and run ./apply-update.sh /path/to/eq-client without sudo. Assets and settings are preserved with a rollback backup. Use a new folder for the full download.
524 library / 553 all-target tests pass. Two explicit GPU/input and original-asset tests cover four UI sizes, triangle picking, model namespaces and non-solid faces. Original Titanium and native Rust forge tests verified empty/stack guards and item return; Rust additionally verified server rejection of an invalid recipe without losing the ingredient. All 109,924 asset hashes remain unchanged.
Successful recipes, skill gains, populated carried kits and recipe search remain open. The server's IT10804 object has no matching original exported model and is reported. The visual checks do not claim exact camera/pixel parity. Full Titanium parity is unfinished. Matching Windows244000 station checks passed under Wine; native Windows hardware remains unverified. No spectator, database-fixture, firewall, era-gate or updater changes.
Checksums · Verification and limitations
View original Titanium and Rust forge checks
original forge experiment

original forge stack guard

original forge escape

final forge world

final forge open

final forge invalid

final forge stack guard

final forge escape return

Previous repair: Titanium stack quantities and inventory swaps
Clicking a stack now opens a real quantity selector, starting at the full stack. Control-click picks one; Shift-click picks all. Type a number, drag the slider or use plus/minus, then Accept. Escape cancels without moving anything. Focus changes preserve the chosen number.
Fixed stack swaps with a different item: they now use the server's whole-item swap operation instead of a rejected split request. The old placeholder quantity display is gone.
Linux inventory patch Full Linux downloadPatch base: unmodified Linux 20260930-242000. Close the client, extract the patch and run from controls-patch:
./apply-update.sh "$HOME/Downloads/eq-client"
The installer verifies the old executable and assets, preserves settings and creates a rollback backup. Use a new folder for the full download.
514 library / 543 all-target tests pass. Quantity GPU/input checks pass at four resolutions. Actual original Titanium and Rust sessions both split twenty bandages into thirteen plus seven; read-only server checks verified shortcuts, merges, swaps, cancellation and restored inventory after camp. All 109,924 asset hashes are unchanged.
Original Titanium showed its existing XML compatibility warning; executable controls and server inventory were observed. Bank/container corner cases, simultaneous modifiers, broader crafting/inventory and full client parity remain unfinished. Matching Windows243000 inventory checks passed under Wine; native Windows hardware remains unverified. No spectator, server-record fixture, firewall or updater changes.
Checksums · Verification and limitations
View original Titanium and Rust inventory checks
Original Titanium quantity selector

Original Titanium: seven picked, thirteen remaining

Rust client: seven selected after a focus change

Rust client: matching seven/thirteen split

Control-click picks one

Shift-click picks the whole stack

Unlike-item swap accepted by the server

Inventory restored before normal camp

Previous repair: pet commands and raid state
Fixed a dangerous protocol mismatch: pet attack now sends Titanium command 7, not dismiss command 2. Back-off, follow, health and taunt use the correct original IDs. Unknown commands send nothing; pet targeting is local.
The pet window now uses actual ownership, health and level, supports real commands and all 30 server-reported effects, and clears stale identity on charm release, death and zone changes. The hardcoded fake pet is gone. Raid updates handle the short join packet, keep other members during group moves, show ungrouped members, and paginate the full roster and message of the day.
Linux pet/raid patch Full Linux downloadPatch base: unmodified Linux 20260930-241000. Close the client, extract the patch and run from controls-patch:
./apply-update.sh "$HOME/Downloads/eq-client"
The installer checks the old executable and assets, preserves settings and creates a rollback backup. Use the full download in a new folder for other versions.
509 library / 538 all-target tests pass. Pet and raid GPU/input checks pass at four resolutions. A normal North Qeynos login verifies no-pet, no-raid and unguilded windows, local target/typo rejection and the health-command wire ID. All 109,924 asset hashes remain unchanged.
Populated pet combat, raids and guilds, original-client side-by-side behavior, pet toggle states and raid administration remain open. Synthetic images are labeled. The matching Windows242000 runtime has also passed the ordinary login and empty-state window checks under Wine. Full client parity is unfinished; no spectator, server records or updater changes.
Checksums · Verification and limitations
View pet and raid verification
Actual North Qeynos character: no pet, local target and typo rejection

Actual North Qeynos character: not in a raid

Synthetic pet status and command layout, not live combat

Synthetic pet effects 25 through 30

Synthetic 72-member raid including ungrouped members

Synthetic paginated raid message

Previous repair: guild roster and presence
Guild rosters now apply complete server responses atomically: valid empty lists clear old members, while truncated or malformed packets cannot fabricate partial rows. Presence updates use the original little-endian packet and current guild ID. Online status comes from the server's zone field, not a last-login timestamp guess.
The member window separates rank from zone/status, paginates the full roster and displays public notes when a member is selected. It no longer treats a member's name as an item to inspect. Guild/zone resets clear stale state.
Linux guild-roster patch Full Linux downloadPatch base: unmodified Linux 20260930-240000. Close the client, extract the patch, open a terminal in controls-patch, and run:
./apply-update.sh "$HOME/Downloads/eq-client"
The installer validates the previous executable and assets, preserves settings and creates a rollback backup. For other versions, use the full download in a new folder.
497 library and 526 all-target tests pass. Four-resolution GPU/input tests cover pagination, selection, empty responses and overlapping windows. A normal North Qeynos login correctly displays the QA character as unguilded. All 109,924 asset hashes are unchanged.
The populated roster images below are clearly labeled synthetic tests. Live populated guilds, online/offline changes, guild administration, original-client comparisons and human-readable remote zone labels remain open. The published Windows build remains 240000; 241000 compilation passes but runtime has not been accepted. Full client parity is unfinished. No server records, spectator services or automatic updater were changed.
Checksums · Verification and limitations
View guild-window verification
Actual unguilded character in North Qeynos.

Synthetic 25-member roster and valid empty response—not a live guild.


Previous repair: real player Tracking
Tracking now displays the server's actual trackable entities and distances instead of sample names. Selecting a row selects that entity; the Track button sends its ID and starts Titanium's local direction messages. Despawned or dead targets are cleared, including when an entity ID is reused. Zoning clears the list.
The original executable supplies the direction buckets, left/right calculation, two-second message cadence and six-minute timeout. A real level-1 ranger logged in normally in Surefall Glade, received 19 server entries, tracked Hager Sureshot and received changing directions after turning. No character records, skill values or NPC records were edited.
Linux Tracking patch Full Linux downloadPatch base: unmodified Linux 20260930-239000. Close the client, extract the patch, open a terminal in controls-patch, and run:
./apply-update.sh "$HOME/Downloads/eq-client"
The installer verifies the previous executable and assets, preserves settings and creates a rollback backup. Other installed versions should use the full download in a new folder.
492 library and 521 all-target tests pass. Tracking-window GPU/input checks pass at four resolutions. All 109,924 shipped asset hashes are unchanged. The matching Windows build has also passed a real ranger Tracking test under Wine and is available below.
Tracking's original con filters, sort modes and player filters are still open, as is a side-by-side original-client direction test. These checks do not establish full client parity, AAA performance or hardware acceptance. The spectator and automatic updater are unchanged.
Checksums · Verification and limitations
View real ranger Tracking evidence
Actual server list and explicit NPC selection.
Local direction messages before and after turning.
Previous repair: sliding doors and larger gates
Implemented the original horizontal movement for door types 10–12, 15–17, 20–22 and 25–27, plus parameter-height vertical gates 75–77. Travel distance, the original world-axis heading rules, signed parameter values, endpoint states and local return timing are traced from Titanium. Horizontal travel is 7 world units per second; model size and incline do not incorrectly multiply its distance.
Visible geometry, clicking and authored collision move together. These are the exported original models, including sliding rocks, bookcases and panels—not substitute boxes or holes cut into terrain. Expansion access and the server database were not changed.
Linux sliding-doors patch Full Linux downloadPatch base: unmodified Linux 20260930-238000. Close the client, extract the patch, open a terminal in controls-patch, and run:
./apply-update.sh "$HOME/Downloads/eq-client"
The installer checks the previous executable and assets, preserves settings and creates a rollback backup. For other installed versions, use the full download in a new folder.
483 library and 512 all-target tests pass. Five explicit asset tests additionally cover 27 sliding-door placements, 36 parameter-height gate cases, prior gate collision checks and 15 production-renderer comparisons. Open renders match independently translated source meshes pixel-for-pixel; returned renders match the closed frame. All 109,924 assets retain their hashes.
These are isolated source/asset/render checks plus ordinary login in North Qeynos, not a claim that every live gate has been compared with the original client. Combined-motion doors, elevators, riders and obstruction/damage handling remain open. The matching Windows build is now runtime-tested under Wine and available below. Full client parity is unfinished. The spectator and automatic updater are unchanged.
Checksums · Verification and limitations
View original door movement and in-game evidence
Felwithe panel before and after horizontal travel.


Permafrost sliding rock.


Mischief non-cardinal heading uses Titanium's original direction rule.


Chardok parameter-height gate.


Ordinary login into North Qeynos with this Linux build.

Previous repair: casting cancels camp
Fixed an in-game defect where a spell could complete while the camp timer continued toward logout. Spell gems, item clicks and disciplines now share a cast-request path that cancels camp only when the request is queued. Your own server-confirmed cast also cancels camp before the logout timer is checked. Camping during active casting or spell learning is blocked.
The server still owns casting success, interruption, mana, item charges and cooldowns. A failed or invalid cast request does not invent success. Other characters' casting does not cancel your camp.
Linux camp/casting patch Full Linux downloadPatch base: unmodified Linux 20260930-237000. Close the game, extract the patch, open a terminal in controls-patch, and run:
./apply-update.sh "$HOME/Downloads/eq-client"
The installer verifies the previous executable and assets, preserves settings and creates a rollback backup. For other installed versions, extract the full download into a new folder.
477 library and 506 all-target tests pass. In the actual Linux client, the ordinary QA character started camp, cast Minor Healing, received server recovery, and remained connected more than 40 seconds after the cast—past the cancelled logout deadline. A new, uninterrupted camp then closed normally. All 109,924 asset hashes are unchanged.
This run verifies spell-gem camp cancellation on software Vulkan, not hardware performance or original-client runtime equivalence. Live item and discipline variants remain open. Previous gate, combat-control and asset fixes are retained. The matching Windows build passed the same live spell-gem camp-cancellation check. Full client parity is unfinished; the production spectator and automatic updater are unchanged.
Checksums · Verification and limitations
View the live camp/casting regression
Camp started normally.

Casting cancels camp and the server responds.

Still connected more than 40 seconds after casting.

Previous repair: original vertical gate motion
Previously static vertical gates now rise and lower using the original Titanium movement code: types 60–62 travel 8 units, 65–67 travel 10, and 70–72 travel 14. Opening speed is 9 units/sec; closing is 5. The 20-second return, inverted defaults, mid-travel reversal and signed no-return parameters are preserved.
The same moved geometry drives drawing, clicking and collision. Original zone-specific solidity is retained: South Qeynos PORT1414 is exported non-solid, while Permafrost's same-named model is solid. No generic replacement colliders or asset edits were added.
Linux vertical-gates patch Full Linux downloadPatch base: unmodified Linux 20260930-236000. Close the game, extract the patch, open a terminal in controls-patch, and run:
./apply-update.sh "$HOME/Downloads/eq-client"
The installer checks the base executable and all assets, preserves settings and creates a rollback backup. Use the full download in a new folder if your installed version differs.
474 library and 503 all-target tests pass. Separate real-asset checks cover 15 gate/heading/scale/incline scenarios. Three production GPU comparisons match independently translated source meshes exactly and return pixel-identically to the closed pose. Ordinary North Qeynos login and normal camp passed; production spectator unchanged.
This is not complete door or client parity. Live original-client gate interaction, elevator riders, parameter-height/horizontal/combined motion and obstruction handling remain open. GPU captures use software Vulkan, not hardware performance acceptance. Existing combat controls and earlier repairs are retained. The matching Windows package is now published with the runtime scope described below.
Checksums · Verification and limitations
View gate movement and world evidence
South Qeynos original gate, closed and raised. These are isolated production-renderer asset tests, not live gate interactions.


Blackburrow gate, closed and raised.


Actual new Linux build in North Qeynos after normal login.

Previous Windows build 20260930-244000
Includes the same original-model ground objects, clickable world stations and manual crafting guards. Normal Surefall Glade gameplay verified forge selection, empty/stack guards, the server invalid-recipe response, component preservation and persisted inventory after camp.
Download Windows x64Extract into a new folder and run run-kartonath.bat. Keep the old installation for rollback. All 109,924 asset hashes match Linux.
Runtime checked under Wine/software Vulkan, not native Windows hardware. Successful recipes, populated carried kits, recipe search, source sky lighting and full client parity remain open. No audio, hardware-performance or outside-connectivity acceptance claim.
Checksums · Verification and limitations
View Windows forge checks







Previous Windows build 20260930-243000
Includes the same Titanium stack quantity selector, Control-one/Shift-all shortcuts and corrected unlike-item swaps. Normal North Qeynos gameplay and read-only server checks verified thirteen-plus-seven splitting, single and whole-stack pickup, swapping, cancellation, restoration and persistence after camp.
Download Windows x64Extract into a new folder and run run-kartonath.bat. Retain your old installation for rollback. All 109,924 asset hashes match Linux.
Runtime checked under Wine/software Vulkan, not native Windows hardware. Bank/container corner cases, simultaneous modifiers, crafting and full client parity remain open. No audio, hardware-performance or outside-connectivity acceptance claim.
Checksums · Verification and limitations
View Windows inventory checks








Previous Windows build 20260930-242000
The native Windows x64 executable includes the same corrected Titanium pet commands, real pet ownership/buffs/charm lifecycle, full raid roster/MOTD pagination and guild roster/presence repairs. A normal North Qeynos login verified the character's no-pet, no-raid and unguilded windows, inventory and normal camp.
Download Windows x64Extract into a new folder and run run-kartonath.bat. Keep your old installation for rollback. All 109,924 assets match the Linux release hashes.
Runtime checked under Wine/software Vulkan, not native Windows hardware. Populated live pet/raid/guild scenarios, original-client comparisons, audio, hardware performance and outside-network connectivity remain open. Full client parity is unfinished.
Checksums · Windows verification and limitations
View Windows pet, raid and guild empty-state checks




Previous Windows build 20260930-240000
The native Windows x64 executable includes the same real server Tracking lists, entity selection, original local direction messages and stale-target protection. The level-1 ranger logged in normally in Surefall Glade, selected Hager Sureshot, received changing directions after turning, opened inventory and camped normally.
Download Windows x64Extract into a new folder and run run-kartonath.bat. Keep your existing installation for rollback; do not merge assets. All 109,924 assets match the Linux release hashes.
Runtime checked under Wine with software Vulkan, not on native Windows hardware. Audio, hardware performance and outside-network connectivity remain unverified. Tracking's original filters/sort and original-client live comparison remain open. Full client parity is unfinished.
Checksums · Windows verification and limitations
View Windows ranger Tracking evidence


Previous Windows build 20260930-239000
The native Windows x64 executable includes the horizontal sliding-door and parameter-height gate motion, casting/camp cancellation fix and previous fixed-height vertical gates plus the learned-discipline protocol, Alt+C combat window with eight saved buttons, discipline hotkeys and skill-tome protection, with the same 109,924 assets as Linux. Extract into a new folder and run run-kartonath.bat; retain your old installation for rollback.
The actual Windows executable passed an isolated Wine/Vulkan gameplay smoke test: normal login, character selection, North Qeynos rendering, Alt+C, the S selector, inventory, spellbook, self-targeting, Minor Healing and normal camp. Casting during camp cancelled the pending logout; the same character remained connected more than 40 seconds after the cast. The production spectator was not restarted.
Not native Windows hardware approval. This environment uses software Vulkan and has no audio output device; hardware performance and Windows sound remain unverified. This run used the internal server route, not an external connectivity test. The test character has no learned disciplines: successful discipline use and tome hand-in remain open. Live item-click and discipline camp cancellation remain unverified. Gate interactions against the original client, elevator riders and other motion types also remain unverified. The automatic updater and firewall are unchanged.
Windows checksum · Build information · Verification and limitations
View Windows runtime evidence
Eight combat buttons opened with Alt+C.

The S selector shows this character's real, empty learned-discipline list.

Actual Windows executable under Wine after self-targeted Minor Healing.

Inventory and player preview.

Learned spellbook. Early stale captures were rejected and are not used as evidence.

Camp started, then casting cancelled it.

Still in North Qeynos beyond the cancelled logout deadline.

Using the new player systems
Banking: right-click a nearby banker. Coin buttons transfer the exact denomination shown; they do not convert your money. Right-click a bank container to open it, then use Inventory to reach carried slots. Click an item and its destination to move it. Bank transfers require proximity to a banker. Shared-bank controls, denomination conversion and original coin-cursor gestures remain open.
Trading: use /trade on your target, or receive a trade request. Add exact coin denominations with the amount buttons. Use Inventory to pick up an item, then the Trade button to return and place it in your offer. Right-click either side's item to inspect it. Cancel returns the entire offer; no local duplicate refund is manufactured. NO DROP items are blocked from player offers. General inventory and equipped stackable items now show their counts.
| System | Behavior |
|---|---|
| Spell-gem readiness | After memorization is confirmed, the gem waits its spell's recast time plus one second. Queued casts reserve readiness for ten seconds while awaiting the server. Failed-cast resource replies release that reservation; successful replies replace it with spell reuse and shared recovery. A later mana update cannot wipe the successful cooldown. Icons and linked hotbuttons show seconds remaining. |
| Cast lifecycle and zoning | The server's keepcasting flag preserves an active cast during resource updates. The progress bar no longer decides when a cast has finished. Fizzles, interruptions and missed notes have distinct messages. A fresh zone-in profile restores each gem's remaining reuse milliseconds and clears stale cast state. Live Divine Aura logout/reconnect checks restore the long cooldown and block an early retry. |
| Linked reuse | The server's group timer is decoded from its end/start seconds and mapped using the original spell table's timer index. Ordinary mana updates do not erase it. Known groups survive same-character zone transitions; a fresh login clears old state and seeds groups from nonzero profile gem timers. An unseen group with no server/profile timer remains server-enforced. Shared-group combinations and broader discipline/bard cases still need live acceptance. |
| Spellbook access and timing | Warrior, Monk, Rogue and Berserker cannot open the book. Low-level hybrids can open it before their first spell level. Canceling a learning operation retains its timer; completing it resets that timer. Scribing and memorization use independent clocks. |
| Spellbook posture | Opening sits you down and stops auto-attack when changing from standing. Closing restores standing only if opening caused the sit. Already-seated characters stay seated. Standing closes the book and interrupts learning. Moving or disabled characters cannot open it. Chat entry and focus loss release held input without cancelling an active learning counter. |
| Arrange learned spells | Ctrl+B opens the 400-slot spellbook. Right-click a learned spell, then right-click its destination to move or swap. Selection survives page turns; the source has a gold outline and a named status line. Escape cancels without changing the book. |
| Delete a learned spell | Right-click the spell and press Delete. The native confirmation names the spell and explains that another scroll is needed to relearn it. Keep spell or Escape cancels. The book changes only after a successful server reply; this does not automatically forget an already memorized gem. |
| Scribe and memorize | Put a single scroll on the cursor and click an empty book slot. Click a learned spell, then an empty spell gem to memorize it; right-click an occupied gem to forget it. Duplicate memorized spells are rejected. Learning now has progress instead of an immediate request. Escape, movement, standing, closing the book or losing the scroll interrupts before sending. Server replies confirm completion. |
| Interrupted edits | Only one spellbook operation is sent at a time. A delayed swap remains locked until its reply or a fresh profile on reconnect; it is never blindly retried. Focus loss cancels selection, and zoning or reconnect clears old spellbook requests. A lost scribe/memorize reply also requires reconnect before further edits. |
| Close camera | Local-body visibility now accounts for the near clipping plane. The minimum close chase zoom no longer fills the view with the avatar's back in the tested North Qeynos case. This is a targeted visibility fix, not completion of the remaining camera controllers or collision cases. |
| Inventory gestures | Short right-click uses an item's click effect, opens a bag or reads a book. Hold right-click or Alt-click to inspect without activation; Info buttons remain available. Hold-to-inspect uses a 0.5-second native threshold; that exact delay has not been measured against Titanium. |
| Item effects | The client sends the selected item's actual spell ID and inventory slot. The server decides acceptance, duration, reuse and charge consumption. Equipment-only, class/level and empty-charge checks prevent invalid requests. As in Titanium, move click-cast items out of bags before use. |
| Inventory hotbuttons | Hold left-click on a personal inventory slot for about three seconds, then place the link on the hotbar. This does not move the item. The button follows the slot's current item, icon and charges; an empty slot is labeled explicitly. Escape or right-click cancels placement. Normal short clicks still pick up/place inventory items. |
| Books and notes | Right-click readable items or use their inventory hotbutton. The filename comes from the server item, and text comes from the book reply—not a local mockup. Previous/Next paginate long text; Close or Escape returns to the existing inventory or bag window. |
| Bags and merchants | Bag headers and occupied bag slots have Info buttons. Right-click a merchant listing or ordinary bank item to inspect it; right-click a bank bag to open its contents. Closing the details overlay returns to the existing window without ending the shop session or moving items. |
| Reliable details | Inspection is a snapshot of the selected server item, not a name-based guess from the bundled catalog. Names received from another player's inspection do not include stats and are explicitly shown as name-only. Longer details use Previous/Next pages. |
| Ability slots | Alt+M opens Actions. Abilities has six slots; Combat has four. Click an empty slot or right-click a slot to assign a supported skill. Main retains the convenience actions. |
| Ability commands | /doability 1–6 activates Abilities; /doability 7–10 activates Combat. Drag a configured slot to the hotbar; that hotbutton follows the slot's current assignment. |
| Skill values | The chooser shows the server's current skill value and updates when skill packets arrive. Assignment does not grant a skill. The server still decides class/level eligibility, range, equipment, cooldown and success. |
| Hotbuttons | 1–9 and 0 activate buttons. Shift+number selects one of ten pages. Click an empty slot or right-click a button to assign an action, spell gem or social. |
| Moving buttons | Drag to another hotbar slot to swap. Hold for three seconds to pick up a button, then click its destination. Escape/right-click cancels without discarding the source. |
| Actions and socials | Alt+M opens Actions. Drag actions, socials or memorized spell gems onto the hotbar. Right-click a social to edit. There are 120 saved social slots, separate for each login and character. |
| Social editor | Five command lines, Tab/Shift+Tab field navigation, caret editing, Ctrl+A and Ctrl+Enter to save. Cancel leaves the saved social unchanged. |
| Social execution | /pause 10, /loc executes the command, then waits one second before the next line. Only one social runs at a time; /stopsocial cancels. Death, zoning and disconnect cancel pending commands. |
| Chat | Left/Right, Home/End, Delete/Backspace, Shift selection and Ctrl+A edit the line. Up/Down recalls history and restores an unfinished draft. Text input does not steer your character. |
First-run buttons include Attack, Hail, Consider, Sit/Stand, Assist, Location, Inventory and Spellbook. These are editable native-client conveniences, not a claim that the original client's default layout was identical. Spell buttons refer to gem slots and follow their current memorized spells.
Social command reference
/hotbutton Loc /loc
/dosocial Loc
/dosocial 1
/dohotbutton 9
/stopsocialPause accepts 1–600 tenths of a second. Target substitutions include %t, %s, %o, %p, %r and %m for the pet. Execution is scheduled without sleeping the render/input thread. Commands still use the real server; buttons do not bypass class, range, resource or cooldown rules.
Verification
593 library / 622 all-target tests pass; 83 opt-in tests are ignored by default. Original wheel-camera comparisons and model metadata were checked explicitly. Full layer acceptance remains unfinished.
View actor-lighting evidence
Actual original Titanium and native Rust views of the cleric guild. They were captured at different server times: these are rendering checks, not pixel-equality evidence. Lighting, materials and some appearance details remain under review. Software-rendered frames do not establish gaming-GPU performance.


The automated GPU comparison gives two actors different source brightness in a single draw, reverses their order and then clears the override. Assertions check pixel values; screenshots are retained in the local audit. This prevents shared or stale lighting values across crowd groups.
View original and native camera comparisons
Actual original-client and native-client captures in North Qeynos. These are not pixel-identical: lighting, materials, interface and some model details still differ. The trailing view also does not reproduce the original numerical drift. Software-rendered captures are not gaming-GPU performance evidence.
First person


Overhead


Close rear


Fixed-angle view 1


Fixed-angle view 2


Trailing


View audio verification and remaining gaps
Per-zone scheduler audit · Acceptance evidence
103 referenced sound-name variants decode successfully after Linux case normalization. The two unresolved Skyshrine references request emit index 12 from an original bank containing only 11 emit names; no guessed sound was substituted.
Fourteen original region/global-radius rows are explicitly excluded from the supported-emitter count and listed in the audit. The current export schema merges 2D and 3D day/night types; full spatial behavior requires additional original metadata. Numeric and software mixer tests do not prove audible output or exact acoustic equivalence.

View shared-animation before and after
These are real offline renders through the native renderer at the same movement phase, not generated artwork. Model bounds are fitted independently. GRM uses OGF, RIF uses DWF, CLM uses DWM, NYD uses the zone-local NYM, and QCM uses ELM. The clockwork's eye effects/materials still require original-client comparison.










View added-zone and actor evidence
These are actual offline renders through the native renderer, not AI-generated images or live expansion sessions. Twenty overview renders and selected ground/actor views were inspected. They establish asset presence, not pixel-identical Titanium appearance, lighting, every animation or zone-specific gameplay.
| Added zone | Triangles | Floor samples found |
|---|---|---|
| stonebrunt | 182,683 | 306 |
| warrens | 45,806 | 144 |
| iceclad | 172,655 | 576 |
| frozenshadow | 151,280 | 213 |
| velketor | 49,335 | 340 |
| kael | 95,174 | 96 |
| skyshrine | 183,243 | 209 |
| thurgadina | 135,839 | 104 |
| eastwastes | 227,349 | 217 |
| cobaltscar | 45,733 | 168 |
| greatdivide | 164,652 | 424 |
| wakening | 1,017,151 | 553 |
| westwastes | 127,954 | 536 |
| crystal | 130,852 | 109 |
| necropolis | 101,662 | 265 |
| templeveeshan | 73,955 | 158 |
| mischiefplane | 331,609 | 258 |
| growthplane | 1,074,617 | 534 |
| sleeper | 37,551 | 177 |
| thurgadinb | 62,088 | 77 |






One original raft is rigid and has no animation clips. Race 508, staff-only CSHome (source archive absent), historical zone-version selection, EQG shading and exhaustive original-client comparisons remain separate acceptance work.
View current sky evidence
Retained build 20260930-140000, live Steamfont at night. Original starfield and night dome now render. This is not a pixel-identical scene: lighting, clouds and satellites remain unfinished. Software-rendered QA is not a hardware GPU benchmark.
View rotating-object evidence
Previous build 20260930-130000: native windmill rotation measures 60.0000 angle units/second versus Titanium's 59.9995 across 600 samples. The old bright night sky visible in this retained clip is fixed by the current sky-catalog update above. Acceleration remains update-dependent as in the original; this clip is not a GPU benchmark.
Earlier live bank and player-trade tests remain included: exact coin denominations, bank containers and persistence, two-way player item/coin transfers and server-returned cancellations. Those targeted checks are not exhaustive banking or trading acceptance.
View in-game evidence
Isolated South Qeynos test character. Software-rendered QA captures are not a performance benchmark for a gaming GPU.
Whole-client acceptance—not a percentage
Layer-by-layer acceptance plan. Every required layer remains open until its checks have evidence. Completed individual fixes do not turn a whole layer green.
| Area | Remaining requirements |
|---|---|
| Controls and camera | Exact original wheel/keyboard zoom, sensitivity/pitch limits, mounted cameras, broader collision and posture matrices, movement modifiers and swimming acceptance. The six ordinary F9 views are implemented with targeted verification. |
| Gameplay interface | Broader inventory-hotbutton and click-effect acceptance, remaining active skills, exact class/level filtering, cooldown/readiness presentation, specialized item modifiers, original book skins and broader readable-item cases, remaining sample/inert windows, and complete party, pet, trade, quest, combat and death flows. |
| World and visuals | Complete historical source-to-release inventory and remaining unresolved records; runtime appearance variants, water/particles/materials, environment lighting and matched original-client routes and visual checks. Twenty added zones are asset-checked, not fully accepted. |
| Modern quality | Frame-time and input-latency measurements on real GPUs, loading/stutter work, consistent window behavior and accessibility/readability checks. |
| Delivery | Matching Linux and Windows packages are available. Windows gameplay passed under Wine/Vulkan; native hardware/audio, broader reconnect testing and full update/recovery acceptance remain open. |
This update changes the native client, not bot behavior or the server's era database. It does not increase a zone's content-audit percentage. The production spectator and old binary-only updater remain unchanged; previous releases remain available.
Build caches, current working files, release archives, screenshots and QA logs now use the data disk rather than the OS disk. Older verified download duplicates were replaced with links to preserved data-disk copies; existing URLs remain available.