Download
(5 MB)
Download
Updated: 08/31/22 09:10 AM
Pictures
File Info
Compatibility:
Lost Depths (8.1.5)
High Isle (8.0.0)
Ascending Tide (7.3.5)
Deadlands (7.2.5)
Waking Flame (7.1.5)
Blackwood (7.0.5)
Flames of Ambition (6.3.5)
Markarth (6.2.5)
Stonethorn (6.1.5)
Greymoor (6.0.5)
Updated:08/31/22 09:10 AM
Created:12/19/15 12:20 PM
Monthly downloads:827
Total downloads:21,262
Favorites:17
MD5:
Categories:ESO Tools & Utilities, Developer Utilities
EsoExtractData  Popular! (More than 5000 hits)
Version: 0.52
by: Uesp [More]
EsoExtractData is a Windows command line utility program used to extract data from ESO's MNF/DAT files. For complete documentation see the Online Manual for EsoExtracData.

Features
  • Extract filenames and data from MNF/DAT files.
  • Save meta data on the files stored within MNF/DAT files.
  • Convert DDS files to PNG.
  • Convert LANG files to CSV and Pootle compatible TXT files.
  • Convert CSV/TXT back into LANG files.
  • Compare LANG files for differences.
  • Options for full or partial extraction of data.


Installation
  • Download the ZIP file
  • Unzip into a directory of your choice (preferably a new directory).
  • Run the program from the Windows command line (ex: Start::Run::cmd) or similar shell.


Typical Usage

IMPORTANT NOTE -- Exporting all files from the three ESO MNF files will take several hours and require over 100GB of disk free space.

View basic program usage and command options:
Code:
EsoExtractData --help or EsoExtractData -h
Extract the given MNF file and outputs to the given path:
Code:
EsoExtractData \path\to\game.mnf \export\path\
Extract the MNF file and outputs a ZOSFT and MNF directory listing to the specified files:
EsoExtractData \path\to\game.mnf \export\path\ -z \export\path\zosft.txt -m \export\path\mnf.txt
Converts all DDS files recursively in the given path:
Code:
ConvertDDS \export\path\
v0.52 -- 25 August 2022
  • Added the --debugoutput/-v option for outputting additional messages to the log and output. Default is off (so less messages). Set a bunch of error/warning messages to debug only. Note that all messages are still saved to the log file.
  • Fixed the format of the subfile index which prevents a bunch of error messages from the ESO00000.DAT file.
  • Adjusted tab levels of text output for a little neater visual output.
  • Introduced the EsoExtractDataGui program (simple Windows graphical program for basic extraction).
  • Fixed a memory leak when converting RIFF files to WAV.

[b]v0.51 -- 28 April 2022[.b]
  • Added the --matchfilename option for only outputting files that contain the given sub-string.
  • Added the --baselangfile option that uses the given LANG file as for base/missing entries when creating a new LANG file.

v0.50 -- 28 June 2021
  • RIFF files are automatically converted to OGG/WAV files. Use the "--noriffconvert" command line option to disable.

v0.42 -- 30 April 2021
  • Removed extra "." in DDS files exported from XV4 files.
  • Model/animation names from GR2 Granny files are used to output named files if possible.

v0.41 -- 17 September 2020
  • Removed the -c/--convertdds option.
  • Added the --luafilelist option.
  • Added the --luastartindex option.
  • Added the -y/--fileext option.

v0.40 -- 6 February 2020
  • Changed to a 64 bit build (to support Oodle decompression).
  • Supports the new DAT format introduced in update 25 PTS.
  • Skips empty DAT files which reduces the number of error messages.
  • Added the "--oodleraw" option which saves subfiles in their original Oodle compression format.

v0.34 -- 30 May 2019
  • Fix default for the "-n" / "--filename" option.

v0.33 -- 19 April 2019
  • Added the "-n" / "--filename" option.

v0.32 -- 24 October 2018
  • Fixed crash from null pointer reference received from Granny API.
  • Updated Granny2.dll file which permits more original GR2 filenames to be extracted.

v0.31 -- 17 April 2017
  • Fixed extraction of the ZOSFT from ESO MNF in update 14 PTS files. Unsure how this will work with prior file versions however (is fine with update 13 at least).

v0.30 -- 18 January 2017
  • Added more matching magic bytes for recognizing GR2 (Granny) files.
  • GR2 model/animation files are output acccording to their internal original path/filename in addition to their ZOSFT filename (if it exists) and numeric file index. The original path will be created under the "Granny" path in the base export path.
  • Recognize binary Havok files and assign them with the HKX extension.
  • Recognize file data containing compressed sub-files and assign them the EsoFileData extensions.
  • Recognize file data containing unknown ID data and assign them the EsoIdData extensions.
  • Recognize file data for the PSB2 format (unsure exactly what it is though).
  • Recognize file data containing more text data (including books) and give it the "TextData" extension.
  • Recognize "FFX" file data.
  • Recognize UTF-8 text files starting with the byte order mark EF BB BF and give the extension "TXT".
  • Recognize the unknown XV4 file which seems to be just a DDS with 12 bytes of extra header data and 4 bytes of extra footer. The original file and a DDS version without the extra header is saved.
  • Include the "--noparsegr2" parameter to prevent the parsing of GR2 files to extract their original filename.
  • Added the "--extractsubfile" option for extracting compressed data from some file types:
  • --extractsubfile none : Default, does nothing
  • --extractsubfile combined : Outputs all compressed files in one large file.
  • --extractsubfile seperate : Outputs files individually (Warning: This creates over 1 million files and adds several hours to the extraction).

v0.29 -- 5 September 2016
  • Fixed an infinite loop due to a truncated compressed file in file eso0002.dat from the update 12 PTS.

v0.28 -- 8 March 2016
  • Fixed a crash when extracting Game.Mnf data from the Thieves Guild DLC release.

v0.27 -- 4 February 2016
  • Added support for the 1.9 update on PTS (Thieves Guild DLC) for finding the ZOSFT in the ESO.MNF file. File index for the ZOSFT was changed from 0xFFFFF to 0xFFFFFF.

v0.26 -- 19 August 2015
  • When using -d the changed CSV file contains the original translation text supplied with -g if it exists in the last column ([id columns], [new], [old], [translated]).
  • If the ID file used with -i and -i1 is the same you can omit one or the other parameter on the command line. For example, the following commands would be identical:
    Code:
    EsoExtractData -g tr.txt -i id.txt -d old.txt new.txt -i1 id.txt -i2 new.id.txt
    EsoExtractData -g tr.txt -i id.txt -d old.txt new.txt            -i2 new.id.txt
    EsoExtractData -g tr.txt           -d old.txt new.txt -i1 id.txt -i2 new.id.txt


v0.25 -- 28 August 2015
  • Added the "-d" option for comparing LANG/CSV/TXT files.
  • Added the "-i2" option for specifying the second ID file when comparing files.
  • Added the "-g" option for specifying a source text for unchanged entries.

v0.24 -- 9 June 2015
  • Added the "-i" option to input an ID text.
  • An ID file (.id.txt) is output when converting a LANG file.
  • Convert a text file along with an ID file to a LANG file.

v0.23 -- 11 April 2015
  • Added the ''-t'' option for saving LANG files in a plain text format.

v0.22 -- 9 April 2015
  • Added the "--posourcetext" to use the source text column (2) in a PO-CSV file when converting it to a LANG file.
  • Assume a PO-CSV file (3 columns) when the -p option is used with -x.
  • Fix the location column (1) when creating a PO-CSV file (offset was used instead of index).

v0.21 -- 9 April 2015
  • Escape quotes in text as double-quotes ("") instead of \" in CSV files to import correctly.
  • Added the "-o" option for specifying the output filename for -l/-x commands.
  • Added the "-p" option for outputting LANG CSV files in a PO compatible format.

v0.20 -- 9 April 2015
  • All cells are quoted when saving a LANG file as a CSV.
  • Translate DOS linefeeds in LANG file texts as "\r" (was "\n" as previously).
  • Convert a language CSV file back to a LANG file using the "-x" option:
  • First row must be a header: ID,Unknown,Index,Offset,Text
  • Column order is currently fixed.
  • Convert \r, \n and \" to their respectice characters.
  • Text column must be quoted to preserve commas in texts.
  • Resulting LANG file will be larger than the original due to duplicate texts not being merged.
  • Output filename will be the same filename with ".CSV" replaced with ".LANG".

v0.18 - 23 November 2014
  • Fixed output of Game.Mnf with filenames.

v0.17 - 7 November 2014
  • Name changed from EsoExportMnf to EsoExtractData.
  • Now has better, automatic loading of ZOSFT entries for filename correlation.
  • Fixed incorrect filename assignment to files with the same ID.
  • Added missing , to MNF file table CSV export.
  • Added the "UserData" column to the ZOSFT file table CSV export. Currently is the number of file entries found in the MNF data.
  • Converts any .lang file to a CSV format if it can.
  • Language file now exported in a normal CSV format (with commas and internal double-quotes escaped to \").
  • Added the -b/--beginarchiveoption to start at a specific DAT file index.
  • Added the -l/--lang option to convert a .LANG file to a CSV.

v0.16 - March 2014
  • Updated to support the patch for the 14 Mar 2014 beta.

v0.15 - February 2014
  • Updated to support the patch for the 8 Feb 2014 beta.
Optional Files (0)


Archived Files (13)
File Name
Version
Size
Uploader
Date
0.50
2MB
Uesp
09/08/21 12:08 PM
0.41
2MB
Uesp
09/17/20 06:56 AM
0.40
2MB
Uesp
02/07/20 09:54 AM
0.34
1MB
Uesp
05/30/19 11:07 AM
0.33
1MB
Uesp
04/19/19 08:54 AM
0.32
1MB
Uesp
10/24/18 06:41 AM
0.31
1MB
Uesp
04/17/17 06:41 PM
0.30
1MB
Uesp
01/18/17 06:11 PM
0.29
796kB
Uesp
09/05/16 09:20 AM
0.28
796kB
Uesp
03/08/16 11:33 AM
0.27
772kB
Uesp
02/04/16 05:29 PM
0.27
775kB
Uesp
02/04/16 02:59 PM
0.26
775kB
Uesp
12/19/15 12:20 PM


Post A Reply Comment Options
Unread 04/11/17, 07:46 PM  
Hoft
 
Hoft's Avatar
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 1713
Uploads: 12
Successfully extracted 412077 sub-files in 6281 sec!
Thank you!
Report comment to moderator  
Reply With Quote
Unread 02/06/17, 03:56 PM  
Unbound

Forum posts: 0
File comments: 1
Uploads: 0
Error

I keep getting this error message:
Invalid command line parameter received...aborting!

I've looked at the wiki page and tried a bunch of different paths, but the same thing keeps coming up even when I try a different command.
Report comment to moderator  
Reply With Quote
Unread 01/19/17, 03:44 PM  
dominoid
AddOn Author - Click to view AddOns

Forum posts: 34
File comments: 276
Uploads: 2
Love the updates. Any chance at auto recognizing the music files? TIA
Report comment to moderator  
Reply With Quote
Unread 10/20/16, 03:46 PM  
WalterMort

Forum posts: 0
File comments: 3
Uploads: 0
Unpack dat file

Can I unpack a single *.dat file ?
Report comment to moderator  
Reply With Quote
Unread 10/18/16, 09:56 AM  
kerb9729
AddOn Author - Click to view AddOns

Forum posts: 56
File comments: 118
Uploads: 2
Missing convertDDS?

Hi,

The documentation refers to convertDDS.bat, but no such file exists in any version of EsoExtractData that I can find.

Where can I get it?

Thanks!

** edit **

I found it in the revision history at http://www.uesp.net/wiki/File:EsoExtractData.zip
I just downloaded the oldest revision and it was there.
Last edited by kerb9729 : 10/18/16 at 10:00 AM.
Report comment to moderator  
Reply With Quote
Unread 09/05/16, 11:28 AM  
dominoid
AddOn Author - Click to view AddOns

Forum posts: 34
File comments: 276
Uploads: 2
Originally Posted by Uesp
Originally Posted by Ayantir
Just to say that 0.28 fails to extract eso.mnf (stucked without any error at eso0002.dat loading.
Didn't looked a lot for now.
I just uploaded v0.29 which fixes this issue. It seems there was a truncated compressed file in the eso00002.dat file which caused an infinite loop trying to inflate it. I've successfully extracted everything from the update 12 PTS but let me know if you run into further issues!
Thank you.
Report comment to moderator  
Reply With Quote
Unread 09/05/16, 09:21 AM  
Uesp
AddOn Author - Click to view AddOns

Forum posts: 15
File comments: 47
Uploads: 3
Originally Posted by Ayantir
Just to say that 0.28 fails to extract eso.mnf (stucked without any error at eso0002.dat loading.
Didn't looked a lot for now.
I just uploaded v0.29 which fixes this issue. It seems there was a truncated compressed file in the eso00002.dat file which caused an infinite loop trying to inflate it. I've successfully extracted everything from the update 12 PTS but let me know if you run into further issues!
Report comment to moderator  
Reply With Quote
Unread 09/04/16, 06:41 PM  
dominoid
AddOn Author - Click to view AddOns

Forum posts: 34
File comments: 276
Uploads: 2
Originally Posted by Ayantir
Just to say that 0.28 fails to extract eso.mnf (stucked without any error at eso0002.dat loading.
Didn't looked a lot for now.
Same. I'm asking Terabit how he got at the files for the Crown Store datamining.
Report comment to moderator  
Reply With Quote
Unread 09/03/16, 07:42 PM  
Ayantir
 
Ayantir's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1019
File comments: 1531
Uploads: 31
Just to say that 0.28 fails to extract eso.mnf (stucked without any error at eso0002.dat loading.
Didn't looked a lot for now.
Report comment to moderator  
Reply With Quote
Unread 08/01/16, 08:50 AM  
Uesp
AddOn Author - Click to view AddOns

Forum posts: 15
File comments: 47
Uploads: 3
Re: Problem with the extraction

Originally Posted by borisbaer
Hello there! I'm working on a quite ambitious project for The Elder Scrolls Online. I want to mark every single 'named' NPC and every readable document on the maps. But first I'd need to extract all those maps. Unfortunately it doesn't work for me to extract the files with this file. I'm using the Steam version of the game... could someone please tell me if it's possible to extract from this version, too? And if so could you please tell me what I need to do to start the extraction. Big thanks in advance!
There should be no problem with the Steam version of the game...just make sure your run the launcher to update the game to the most latest version. Have you checked out the wiki page for some basics on running the command line program?

If you let me know the specific problem you are having I can help you with it (error code, screenshots, or more details would help). Note that the game doesn't store most locations in the client side data so you may not be able to find what you're looking for.
Report comment to moderator  
Reply With Quote
Unread 08/01/16, 05:45 AM  
borisbaer

Forum posts: 0
File comments: 1
Uploads: 0
Problem with the extraction

Hello there! I'm working on a quite ambitious project for The Elder Scrolls Online. I want to mark every single 'named' NPC and every readable document on the maps. But first I'd need to extract all those maps. Unfortunately it doesn't work for me to extract the files with this file. I'm using the Steam version of the game... could someone please tell me if it's possible to extract from this version, too? And if so could you please tell me what I need to do to start the extraction. Big thanks in advance!
Report comment to moderator  
Reply With Quote
Unread 07/05/16, 10:04 AM  
Uesp
AddOn Author - Click to view AddOns

Forum posts: 15
File comments: 47
Uploads: 3
Re: Tutorial on how use this stuff?

Originally Posted by Rheap
I can't run it Error 0x00000c7b

I need help how to run this in windows command line...
There's some more detailed help and examples for the utility on our wiki. As for Windows command line help you'd be better off just Googling some basic tutorials for that as there's plenty out there.
Report comment to moderator  
Reply With Quote
Unread 06/25/16, 06:09 AM  
Rheap

Forum posts: 0
File comments: 1
Uploads: 0
Tutorial on how use this stuff?

I can't run it Error 0x00000c7b

I need help how to run this in windows command line...
Last edited by Rheap : 06/25/16 at 06:28 AM.
Report comment to moderator  
Reply With Quote
Unread 05/03/16, 03:45 AM  
Keldor
 
Keldor's Avatar
AddOn Author - Click to view AddOns

Forum posts: 101
File comments: 79
Uploads: 6
You're right. It was my fault. The EsoExtractData process was isolated to a virtual desktop by Comodo Antivirus without any warning.
Report comment to moderator  
Reply With Quote
Unread 05/02/16, 10:48 AM  
Ayantir
 
Ayantir's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1019
File comments: 1531
Uploads: 31
I didn't had any issue, neither with 2.4.0 or 2.4.1 (done just now).
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: