MPQ Archives

Warcraft III Maps

Protected Maps

Many authors protect their maps. A "protection" is basically making the file malformed, so it is still read by the game, but MPQ viewers (including MPQEditor) either crash or are unable to open such map. If you encounter such map and MPQEditor is unable to open it, send me the map.

Unknown file names in protected maps

Many protected maps today have listfiles removed. Due to the nature of MPQs, it is complicated to use the file without the file name, because the file name serves as a key.

If you come across such map, you basically have two options:

MPQ Editor's Map File Scanner

The map scanner in MPQ Editor tries to parse all text files, scripts, and some binary files that are mandatory to every Warcraft III map. All names are extracted from these files, and these names are then used as file names. This method is not perfect, but can find a fair amount of unknown files in any map.

To use Map File Scanner, open a map in MPQ Editor. You can specify a list file if you want - specifying a listfile has usually better results. After opening the map, go to menu "Tools/W3X Name Scanner", and click the "Map File Scanner" button.

MPQEditor's Name Scanner

Let the name scanner work. After all names will have been tried (and eventually confirmed to exist in the MPQ), MPQ Editor will show a summary of discovered files. The result might look like this:

MPQEditor's Name Scanner Results

MPQ Editor's Live Game Scanner

The Live Game Scanner works on a different principle. It (ab)uses the fact that no matter how hidden the file name is, it eventually must come as parameter to the Storm.dll!SFileOpenFileEx, which is exported as ordinal #268. When you select this mode, MPQ Editor launches the game of Warcraft III with the given map and intercepts all calls to storm!SFileOpenFileEx. The obtained names are then tested for existance and if they are confirmed, they are added to the list. The result list looks pretty much the same like the previous one.