RDB Data Extractor
With this program, you can extract the resources from ".rdbdata" files in Age of Conan.
To extract files, mark any entries in the listview and select the menu item "Dump Chunks" under the File menu, or you can use F12 as well.
When files are dumped with this function, they will be placed in a folder named "Dumps" in the program directory.
If you prefer just having the file extracted to open it with it's associated program, you can use F3.
Certain files needs to be modified slightly in the extract process to become a proper file for an external program to open, if you for some
reason want to get the raw unchanged RDB data entry, use the shortcut F11.
Why is There no Viewer for Pictures or Sound?
The reason for this is quite simple. Each user has his or her own prefered programs for pictures and sound, so there is little point in trying
to add that to this program as well. I want to keep it simple and just focus on browsing through the RDB files. Use the F3 shortcut to extract
the selected file and run it with the associated program instead.
Where are the files which contain ...?
As I work with this tool, I try to map out each ident ID and what they contain, and put them into the "idents.lst" so it is quickly to see what each
section contains. Unfortunately this job is far from done, there is still many idents which I've not yet identified and require help to do so.
Further down in this readme file you can get a rough idea about what each rdbdata file contains, but it wont tell you which ident to look for.
Setting up the Internal Filename List
There is a resource file which contain names of some files in the RDBs. But for this program to use them, you must first manually extract the file.
To do so, you'll have to find the correct data chunk, look for the navy blue entry in the left list with the ident number 1000010. You may find several
chunks under this ident, select the one with the highest RDB number. Now you must go to the "Dump" menu, and select the "Extract 1000010:1" item.
After having done this, a file is created which afterwards will be used to cache filenames and make it easier to lookup the resources.
As the Age of Conan RDB files gets updated, so will this file, so after each update of Age of Conan, rescan the RDB files and extract this again.
Maps Merged (JPG)
You can find these files under the 1010013 ident. Each file chunk entry actually have several hundreds of jpg files in it.
Use the special dump function found in the "Dump" menu to split these.
Which AoC file contains what data?
This list is shamelessly copied from here "http://aoc.wikia.com/wiki/User:Illnab1024/Resources" thanks for posting it Illnab1024.
The meaning of this list becomes fairly useless if you optimise the database throught the AoC SimpleConfig tool.
00 - scripts (10); map indices (371); mesh index; named indices; item names (37488); other binary/xml data nodes
01 - xml, gameobject placement, materials (skins?), event processes,
02 - materials (skins?)
03 - materials (skins?)
04 - more materials, mesh skeleton rigs
05 - mesh skeleton rigs, textures
06 - textures
07 - textures
08 - textures
09 - textures
10 - textures
11 - textures
12 - textures
13 - textures, trees/flora
14 - flora, textures, icons, textures, scripts, binds, mesh?
15 - mesh?, formations, anim resource index, gobjects, map/zone info, speech (ogg), LIP. files
16 - LIP files
17 - LIP files, *Unknown*, Zone Music & Ambience (OGG)
18 - Zone Music & Ambience (OGG), resource index, string resources, constructions, buff strings, xml render data
19 - event/binary, textures... (black textures and weird maps)
20 - more bump maps, scripts, dds textures (mipmapped)
21 - more dds textures, odd format textures, more dds textures... minimaps!.
22 - dds textures, mesh/anim?, zone xml data, material/shaders, LIP. files, string resources, anim resources, spell strings, spell effects, scripted implements.
23 - assorted indices?, buff texts, scripted effects/rules, spell redefinitions.
Lacking Features, Ideas & Problems
- FCTX DDS files of the type "MIXD" are not converted properly and shows up as grayscale.
- Implementation of LMXB (Binary XML).
RDB Data Extractor Changes | 2011 Jun 05
- On file dump, if the file type was not determined, it will use the internal filename extension instead of just using ".dat".
- The chunk data array is now properly downsized after the RDB File scan method, freeing up some memory.
- RDB scanning shortcuts F5 and F6 swapped. Done due to how the data is stored in RDB files, it's not possible to tell when a valid chunk ends and when an invalid starts, so now the only valid scanning method, is pretty much by the "le.idx" index file.
- Added a few more ident descriptions (3107156, 3117154, 3117155).
- An ident with many chunk entries, could take a long time to add all its items to the listview, so this process can now be aborted by pressing [Escape].
- Added an option to disable the right side viewer.
RDB Data Extractor Changes | 2009 Nov 30
- Swapped some of the menu items around, to group up the "Scanning" functions.
- Added a proper "About" box.
- Cleaned up the code a bit.
RDB Data Extractor Changes | 2008 Aug 08
- New option added to disable the Chunk Header scanning which previously added somewhat to the long scanning time. With this option on, the header for each chunk isn't scanned until selected in the list view.
- Improved the scanning speed slightly.
- Added "le.idx" scanning method, this is much faster, but it might not find all data chunks.
RDB Data Extractor Changes | 2008 Aug 01
- You can now cancel some dump and scan operations with "Escape".
- A progress bar has been added to many operations.
- Big change in how the program scans the RDB Files. Rather than having to open one file for scanning, all RDB files are now scanned to generate a database. This database is saved, so you only have to do this once every time AOC is updated. I felt the old method was inadequate for generating a proper overview, as you had no idea what RDB file to look in for a certain data file.
- Fixed a "read beyond end of file" error.
- Better and optimised file header detection.
- More settings are now saved to the "config.ini".
- Thanks to "acdr", who also made an RDB Browser, I found out that FunCom Textures just stores the mips the other way around. So now the FCTX to DDS conversion actually works, except for "MIXD" textures which are shown as "ATI1" textures in gray scale for now.
- The FCTX to DDS converter now also works for those files which has a 12 byte chunk header in the actual data.
- Added a "Dump All Chunks" function, but note that doing this, will take long time and use a lot of disk space.
RDB Data Extractor Changes | 2008 Jul 20
- Configurations of the window size is now saved to a "config.ini" file along with the sort method.
- The RDB file is now opened permanently from the start, and not closed again until you close the program, load another file or select Close File from the menu.
- Added the ability to extract the data file from the 1000010 ident and use it to build a filename cache. This file contains the filenames for many chunks in the rdb files and could be very useful for browsing the RDBs. Please refer to the readme file for more information on how to do this.
- Added a few more entries to the "idents.lst" file, and fixed some previous ones which had invalid file characters in them, resulting in files in those idents were unable to be extracted.
- Dump method added to split the JPEG files seen in the "14.rdbfile", under ident 1010013.
RDB Data Extractor Changes | 2008 Jun 30
- Viewer option changes now take effect without having to re-click the chunk entry.
- The viewer will now exclude the header of the files, unless the option in the "Viewer" menu to include it is enabled.
- A few more ident descriptions has been added.
- Added the ident description to the directory which the files are dumped to, making it easier to navigate the "Dumps" folder.
- The total size of all its sub chunks has been added to each entry in the ident list.
- Now writes the correct amount of Mips when converting from FCTX to DDS (I think).
- LMXB is a Binary XML file, extension changed to "bxml", decoding not yet implemented.