Jump to content
TrinityCore

Mapextractor on Dragonflight beta


Kovrizha
 Share

Recommended Posts

Greetings!

I'm trying to make mmaps for 10.0.2. Unsuccessfully. Looking for any help. I'll be greatly appreciated.

I provided ExtractorDB2LoadInfo.h some field update for 10.0.2 from WoWDBDefs.
But It seems that there is something more. CascOpenFile failes almost at the start:

d:\World of Warcraft\_beta_>mapextractor.exe -p wow_beta
Opened casc storage 'd:/World of Warcraft\_beta_\Data'
Opened casc storage 'd:/World of Warcraft\_beta_\Data'
Detected client build 46157 for locale enUS

Extracting dbc/db2 files...
locale enUS output path d:\World of Warcraft\_beta_\dbc\enUS
Unable to open file CinematicCamera.db2 in the archive for locale enUS: FILE_NOT_FOUND
Unable to open file GameObjectDisplayInfo.db2 in the archive for locale enUS: FILE_NOT_FOUND
Unable to open file LiquidMaterial.db2 in the archive for locale enUS: FILE_NOT_FOUND
Unable to open file LiquidObject.db2 in the archive for locale enUS: FILE_NOT_FOUND
Unable to open file LiquidType.db2 in the archive for locale enUS: FILE_NOT_FOUND
Unable to open file Map.db2 in the archive for locale enUS: FILE_NOT_FOUND
Extracted 0 files

 

I tried to debug and it seems the problem lies in empty object m_pItemArray while calling PCASC_FILE_NODE CASC_FILE_TREE::FindById(1294214):

{m_pItemArray=0x0000000000000000 <NULL> m_ItemCountMax=0 m_ItemCount=0 m_ItemSize=0}

When running on retail it looks like:    
{m_pItemArray=0x00000236e7e9c070 "" m_ItemCountMax=8388608 m_ItemCount=4615200 m_ItemSize=8}

Now I'm trying to find out where this structure is filling up...

Update.

My primitive investigation revealed that function RootHandler_CreateWoW (from CascRootFile_WoW.cpp) is not called for 10.0.2 beta build.
The necessary data parsing happens there.

LoadBuildManifest (from CascOpenStorage.cpp) recognizes FileSignature (type of the ROOT file) as CASC_TVFS_ROOT_SIGNATURE and calls corresponding line for it: RootHandler_CreateTVFS (instead of RootHandler_CreateWoW)

Update2:

After a quick fix in LoadBuildManifest it runs RootHandler_CreateWoW. Then it failes in CaptureRootGroup (from CascRootFile_WoW.cpp) at the line:
// Validate the array of file data IDs
if((pbRootPtr + (sizeof(DWORD) * RootGroup.Header.NumberOfFiles)) >= pbRootEnd)
    return NULL;

Edited by Kovrizha
Update3
Link to comment
Share on other sites

Guys, the time is critical for me at that moment. I can't waste it digging in this.
So I'll donate $200 to the first person who will help me solve this issue. I need working version of mapextractor for 10.0.2 beta. You can also contact me on ownedcore@kovrizha.

Link to comment
Share on other sites

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...