wow_optimize v2.0.0
Performance optimization DLL for World of Warcraft 3.3.5a (WotLK).
What's New in v2.0.0
GetSpellInfo Permanent Cache
- Caches static spell data (name, rank, icon, cost, cast time, range) — 9 return values
- 2048-slot hash table, keyed by spellId or spell name
- 95%+ hit rate after warmup, eliminates thousands of DBC lookups per second
- Auto-cleared on
/reload
Background Logging
- Ring buffer (2048 entries) + background thread for all disk I/O
- Eliminates 1-10ms stalls from main thread during log writes
Frame Budget Manager
- Skips non-essential work on slow frames (>33ms skip stat reads, >50ms skip GC)
- Prevents DLL optimization from making lag spikes worse
Other Improvements
- 25 unnecessary InterlockedIncrement → ++ (single-threaded contexts, ~500 cycles/frame saved)
- Thread affinity removed (was pinning multiple clients to same core)
- Thread priority ABOVE_NORMAL (was HIGHEST — starved other threads)
- SetCombat passthrough for combat log event processing
All Features (21 total)
- mimalloc allocator (CRT + Lua VM)
- Adaptive GC with 4-tier stepping (combat/normal/idle/loading)
- Full network stack (TCP_NODELAY, ACK frequency, QoS, keepalive)
- UI Widget Cache (10 hooks: SetText, SetValue, SetTexture, SetAlpha, etc.)
- GetSpellInfo permanent cache (NEW)
- Combat log optimizer (retention + periodic cleanup)
- MPQ read-ahead cache (64KB)
- GetTickCount QPC precision
- CriticalSection spin counts
- Background logging
- Frame budget manager
- GC step sync with LuaBoost addon
Installation
Option A (recommended): Copy version.dll + wow_optimize.dll to WoW folder. Launch normally.
Option B: Copy wow_loader.exe + wow_optimize.dll to WoW folder. Launch via wow_loader.exe.
Verify: check Logs/wow_optimize.log for [ OK ] on all modules.
Requirements
- WoW 3.3.5a (build 12340)
- Windows 10/11
- Compatible with DXVK, LAA patch, HD client
Companion Addon
For maximum optimization, use with !LuaBoost v1.8.0 — provides GC settings GUI, SpeedyLoad, memory leak scanner, and diagnostics.