mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-26 00:40:15 +00:00
game,warden,assets: fix unknown player names, warden heap overlap, and Vanilla Item.dbc
- game: clear pendingNameQueries on player out-of-range and DESTROY_OBJECT so re-entering players get a fresh name query instead of being silently skipped - game: add 5s periodic name resync scan that re-queries players with empty names and no pending query, recovering from dropped CMSG_NAME_QUERY responses - warden: fix UC_ERR_MAP by moving HEAP_BASE from 0x200000 to 0x20000000; the old heap [0x200000, 0x1200000) overlapped the module at 0x400000, causing Unicorn to reject the heap mapping and abort emulator initialisation - warden: add early overlap check between module and heap regions to catch future layout bugs at init time - assets: add loadDBCOptional() which logs at DEBUG level when a DBC is absent, for files that are not distributed on all expansions - assets: use loadDBCOptional for Item.dbc (absent on Vanilla 1.12 clients) and fall back to server-sent itemInfoCache displayInfoId for NPC weapon resolution
This commit is contained in:
parent
dc2aab5e90
commit
3cdaf78369
5 changed files with 114 additions and 3 deletions
|
|
@ -66,6 +66,14 @@ public:
|
|||
*/
|
||||
std::shared_ptr<DBCFile> loadDBC(const std::string& name);
|
||||
|
||||
/**
|
||||
* Load a DBC file that is optional (not all expansions ship it).
|
||||
* Returns nullptr quietly (debug-level log only) when the file is absent.
|
||||
* @param name DBC file name (e.g., "Item.dbc")
|
||||
* @return Loaded DBC file, or nullptr if not available
|
||||
*/
|
||||
std::shared_ptr<DBCFile> loadDBCOptional(const std::string& name);
|
||||
|
||||
/**
|
||||
* Get a cached DBC file
|
||||
* @param name DBC file name
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue