New
- A/B Test a Feature turns one feature on and off in stints while you play
and compares the two halves. Press SET UP A MEASUREMENT RUN in the launcher
and it does the setup for you. - Flight Recorder keeps the last 512 frames. Press Scroll Lock when you see
something wrong and they go into the log. On by default; writes nothing until
something marks it. - Every log now opens with what went wrong this session: freezes, long loads,
disconnects, address space running out, bad SavedVariables filenames. - Bone Matrix Upload (SSE2) replaces the bone matrix transpose in the draw
path. 3.35% of main-thread time in the profile; measured 8.6% faster per frame
in one session, on too few samples to call it settled. Off by default. - Object Tick Prefetch prefetches the two fields the object tick reads.
1.39% of main-thread time in a measured session. Off by default. - No Client Patches stops the DLL writing anything into WoW.exe. See the
warning at the top of this file. Off by default. - Table Emptiness Census and Leave Lua Garbage Collection Alone are
diagnostics for the Lua collector. Off by default.
Fixed
- Garbled SavedVariables filenames, reported by
txtsd -ElvUI.luawritten as)_.lua. The client
had run out of contiguous memory below 2GB and nothing here reacted, because
the two things watching it were reading the wrong half of the address space. - WoWCircle disconnects, reported by
Flokj and confirmed by
asslol. Fixed by the new No Client Patches option, which turns the
optimizations off - a trade, not a fix. - Glowing characters, weapons and shoulder pads, reported by
txtsd. Spread Model Animation skipped material and
attachment animation along with the bones. - Crash in the game's error formatter with Reuse Compiled Scripts on.
- Combat Log Filter did nothing unless a second, unrelated option was on.
Reported by Anarom. - Freezes of eight to fifteen seconds were never captured. The watchdog only
fired past 45 seconds. - The DLL needed the Visual C++ Redistributable. It does not now.
- Steadier Shadows did nothing unless the diagnostic probe was also on. It
still does not fix the flicker; leave it off. - Stalls of 40ms every five minutes caused by this tool's own reporting.
- Roughly 120 locked instructions removed from hot paths.
- Several options were gated behind unrelated ones and are now separate, each
keeping your existing setting: Render Hooks, Async Worker Pool,
Thread Affinity, SSE2 Frustum Cull and Quaternion Normalize, Cache
Script Handlers, Unit API Fast Path. - Wrong numbers in the log: feature counts, draw calls per frame, the CVar
watchdog reporting a corrupted client in every log ever collected, and short
sessions printing no report at all.
Install:
extract all files next to wow.exe and run wow_optimize_launcher.exe.
On WoWCircle the server drops you for the patches this makes to WoW.exe. Tick No Client Patches if you play there