MpqViewer
| Last Update: | March 31, 2008 (5 months ago) |
|---|---|
| Category: | Development & Debugging and Applications |
| Tags: | blp, extraction, mpq, and viewer |
| Project Manager: | Maggi89 |
| Current Version: | MpqViewer 1.5.2 |
| Downloads Today: | 45 |
| Downloads Total: | 10,793 |
| Favorites: | 27 |
| Comments: | 10 |
- Screenshot
- More
- More Information
| Created On: | Aug. 5, 2007 |
|---|---|
| Compatible: |
|
| Localized: |
|
- About MpqViewer
The MpqViewer is a tool to view and extract files from *.mpq archive files used by Blizzard. It's written in C# so you have to install Microsoft .NET Framework 2.0 or higher and it utilizes the C# MpqLibrary published by "The Hungry Programmers" (http://www.hungry.com/).
Check the changes section for updates.
Functions:
- extract any file from any *.mpq archive
- view files directly from the archive, without the need to export
- convert *.blp to *.png images by default on extraction
- filtering of the displayed file list
- scripting through lua (http://www.lua.org) and the luanet api (http://www.lua.inf.puc-rio.br/luanet/)
How to use:
- Load a *.mpq file using the "File" -> "Open File..." dialog
- double click on a file to view it (*.blp files are displayed as image, *.wav files are displayed in a mini sound player, all other files are shown as text files)
- select one or multiple files from the file list
- export the selected files using the "Export" -> "Save File..." dialog
Options:
- "Options" -> "Switch to LuaMode" will open the lua console (see 'Scripting')
- "Options" -> "Keep Archive Structure" will, when it's checked, export the folder structure from the archive to the selected export folder e.g. you export the file "DBFilesClient\spell.dbc" to "MyExportFolder" it will create the folder "DBFilesClient" and put the "spell.dbc" in there, so you can find it under "MyExportFolder\DBFilesClient\spell.dbc", by default this behavior is disabled
- "Options" -> "Use RegexFilter" will enable Regular Expressions in the filter field (see 'Filtering')
- "Options" -> "Use RawExport" will enable export of files without converting them, this only has an effect on *.blp files, which are converted to *.png files on export
Filtering:
- you may filter the file list of the opened *.mpq file to find a certain file or type of file much faster
- there are two filters implemented: the "default" filter works like the file search on Windows, the second is the "regex" filter, it allows you to filter the list using Regular Expressions (see http://msdn2.microsoft.com/en-us/library/2k3te2cs(VS.90).aspx for details about Regex and the .NET Framework)
- "default" filter example: "FrameXML" will display only files starting with this string, in this example this are all UI files; "*.blp" will display only files ending with the string ".blp" (image files), so you see it's a quiet simple and basic filter...
Scripting:
- switch to LuaMode through "Options" -> "Switch to LuaMode"
- load a *.lua script by clicking on "File" -> "Open LuaScript..."
- you may set a workspace through "File" -> "Open Workspace...", the default is "C:\"
- you may use any .NET class because we use the luanet api (see the documentation at http://www.lua.inf.puc-rio.br/luanet/)
- you can write to the console using print(...) (or interop.print(str) with only one param), clear the console calling interop.clear() and to keep the MpqViewer GUI unblocked when running long operations you may call interop.pulse()
- the mpq functions avaiable are: mpq.OpenFile(string srcFile) to get the Stream of a file in the currently opened archive, mpq.ExportFile(string srcFile, string dstFile) to export a file, mpq.FilterFileList(string FilterPattern) to get a list of files using the "default" filter and mpq.RegexFilterFileList(string FilterPattern) to get a list of files using the "regex" filter
- for an example look at the ExtractAndBuildMinimap.lua, on execution it will build the Minimap combining it from the hundreds of small pieces found in common.mpq
Changelog:
1.5.2:
- fixed compatibility issue with Microsoft .NET Framework so you can use framework version 2.0 again instead of 3.5
- when opening multiple *.mpq files they are sorted by date of last change so you get always the most recent file version out of the archives
1.5.1:
- added support for DXT5 compressed *.blp images
- added boolean return value to mpq.ExportFile(...) wether the export succeded or not
1.5:
- added preview for files
1.0:
- initial release
- Downloads (4)
- Screenshots (2)
- Tickets
- Comments
- RSS
You need to login or register to post comments.
Benefits of Registration
- Interact with hundreds of thousands of other gamers on an open social network.
- Post your stories, news, images, videos, and other content to share.
- Create a network with your fellow gamers or join an existing one.
- Gain reputation for everything you do.
- Similar Tools
- 388 Faster Ping Applications
- 241 Ace2 / Ace Development & Debugging
- 122 Cosmos feat. Khaos Development & Debugging
- 79 Vent 2.3 Applications
- 58 WoW Macro Creator Applications
- 388 Faster Ping Applications
- 241 Ace2 / Ace Development & Debugging
- 122 Cosmos feat. Khaos Development & Debugging
- 88 WOWmodelview Miscellaneous
- 79 Vent 2.3 Applications
Advertisement





- +0
- Thumbs Down
- Thumbs Up
MacReiben-FR saidI'm looking for a programm which can generate the instance minimap from the mpq files. Does anyone know anything like this ?
- +0
- Thumbs Down
- Thumbs Up
MacReiben-FR saidI noticed a bug under Vista plus DotNet 3.5 framework. I had the following issue :
- First I had the invalid args problem, I fix it myself.
- The it tells me it can't concatenate act_dir at nil value.
So I run the program with the administrator profile and bingo !
Hope it helps someone ;)
- +0
- Thumbs Down
- Thumbs Up
Maggi89 saidThe return value wether the export succeded or not, will be added in the next release
- +0
- Thumbs Down
- Thumbs Up
dangilbert saidOne additional request: case-insensitivity (optional?) when extracting a file from an MPQ. thanks again for the nice utility!
- +1
- Thumbs Down
- Thumbs Up
dangilbert saidThis program is exactly what I was looking for and you've done an excellent job. Thank you so much!
I was wondering if you could add a return value on mpq.ExportFile() which would report the success or failure of the operation? Right now there's no way to verify, and it makes testing scripts a little harder.
Once again, you rock. Cheers,
Dan
- +0
- Thumbs Down
- Thumbs Up
Maggi89 saidoh well I'm sorry I had to change the parameter list of 'mpq.ExportFile(...)'
mpq.ExportFile(src_path..src_name, dst_path..dst_name, false);
should fix the problem...
there will be a fix in the next release
- +0
- Thumbs Down
- Thumbs Up
Frstrm saidThe issue appears to be with the following command line
mpq.ExportFile(src_path..src_name, dst_path..dst_name);
- +0
- Thumbs Down
- Thumbs Up
Frstrm saidWhen attempting to run the ExtractAndBuildMinimap.lua I get the following:
-- Exporting Minimap Files
---- AhnQiraj --
invalid arguments to method call
I opened the App,
File:Open File:Common.mpq,
Options:Switch to LuaMode
LuaWindow:File:Open LuaScript:ExtractAndBuildMinimap.lua
Is there something i'm missing?
- +0
- Thumbs Down
- Thumbs Up
Eovein saidProblems with mpq file from 2.2 preload part of patch. Opens it, but after Extract makes error
- +0
- Thumbs Down
- Thumbs Up
Maggi89 saidfeel free to leave your comment or suggestion here