This is tutorial, for tools I’m using. Not every files type can export, and export tool already stop develop, so there have lot bugs, and weird error.
joakibj’s tswrdb tool
First, I’m using joakibj’s tswrdb tool: https://github.com/joakibj/tswrdb
This tool can export many resource files like game icon, images, localized text, etc.
tswrdb tool readme page already have guide, but few steps didn’t included.
First, you need Java for sbt, the tool only compatible Java 6 and Java 7, NOT compatible with Java 8 and above. And Java 6 already stop maintenance, so you can download Java 7. Once your Java 7 install complete, and unzip sbt. you can download joakibj’s tswrdb .zip in his Github page, and unzip it in to sbt\bin folder.
[info] 1000010 File Names –A very helpful file, store name of models, textures, and indexs, for next tool.
[info] 1000624 Media – Flash –All ingame icon and Notepad, include ability icon, gear icon etc. they are all .swf format.
[info] 1000636 Media – Images –some ingame images resource, they are all .png format.
[info] 1010013 Maps Merged — All ingame maps, include mini-maps image. They are all .jpg format.
[info] 1010042 Loading Screen Images — All ingame loading screen images, they are all .jpg format.
[info] 1020002 Sound Effects — All sound effects audio, they are all .ogg format.
[info] 1020003 Lip Sync Voices — All ingame voice sound audio, they are all .dat format.
[info] 1020005 Music –All ingame music audio, they are all .ogg format.
[info] 1030002 Strings –All ingame text.
TSW RDB Extractor
Original credit for the code goes to CupBoy, with slight modifications by oldbushie.
This tool very nice for export models, textures, also very bugged. Download click here.
If you want to export TSW in-game models(like monster, Weapon, etc), you need to know some 3D artist knowledge, can use some 3D software like 3ds Max, Maya, or Blender. some model have wrong UVs, material ID, or different parts. Like Ororchi tower(vista), Orochi tank. So, some models need you to manually fix it, of course those have issues model very few.
Even though Funcom using Substance Designer, but TSW still using Phong, not PBR. Some model’s texture only have mask channels or base diffuse + mask, The tokyo content have many.
As I said, this tool very buggy, some path maybe need you to manually change it, and this tool can not export Specular map, Normal map. That’s mean you only can get diffuse or mask textures. Please remember TSW’s .rdbdata is very bad file package, I believe every player’s .rdbdata files are different, base your .rdbdata files, you may missing some textures files, or model files when you export.
To use this tool, you need install Node.JS, and run Node.js command prompt. About TSW RDB Extractor, those .js file can simply pull to TSW RDB folder.
i.e: The Secret World\RDB\rdbtypes.js
To run those .js, here have some command you can reference:
cd The Secret World\RDB\
node rdb.js 1010001
node fme.js 7512757_consumables_taco.fme
node rdb.js 1010004
The 1010001 files is in-game models, they all .fme format, so you need run fme.js to convert .fme file to .js. and this tool can not convert .fme to .obj or .fbx format, you need 3rd part software/website or some plug-in. TSWRDB using clara.io as models showcase gallery.
The 1010004 files is models texture, they all .dds format, usually don’t need any issue to fix. But you need careful when you export, texture files have large amount and size, and export them need some time too.
The 1010030 files is mesh index and is .xml format, model mesh ID, texture, material parameter store in those files.
NOTE: If your export path inside RDB folder, remember all folder need remove to other place when you play TSW. Because if there have any folder, game will try to index file, that’s will make game stuck in loading screen.
1000624 Media – Flash
Here have a guide to fix background color by Lordstarfox.
Create a new layer mask Channels->hide all other channels except Red,select Red Channel Copy it Alt click the layer mask Paste Switch back to layer Image->mode->grayscale (although..i should have just used black and white filter now that i think of it) On the plus side, with photoshop you can make action scripts,although im not sure if they are backwards compatible.
Photoshop CS6 action:
https://www.bevisbear.com/wp-content/tswrdb/taco_fix.atn (My blog mirror link) https://dl.dropboxusercontent.com/u/102174086/custom.atn (Lordstarfox's dropbox) Try going to Window->Actions and loading that up if you happen to use cs6,that script should do the above actions which just leaves scaling and saving.
1010013 Maps Merged
The Map file already decomposed to a .jpg file, you only can open it 512×512 pixel, the rest of them only can export from that .jpg file.
Such as Kaidan map(issue#10 version), the name is 3070.jpg(Click here to download this file), open it by UltraEdit, you can see the jpg file header, but this just 512×512 pixel that one, and this file end:
Jpg file end mark is:
next jpg file start mark is:
If you do something, like cut, then save file, you can see the 3070.jpg become a 264×264 pixel file. If you repeat this step, next file are same too, a 264×264 pixel file. But image obviously are different. If you keep do it, you can find like this:
So, the map merged file like a compressed files. I believe each file have 1024×1024 pixel to 2K and 4K pixel piece. But, if modify them by hands, that very slow and need long time with good eyes. And I’m stop to modify them.
1020003 Lip Sync Voices
This type file is .dat format, it’s include face animation and sound(.ogg format) when NPC talking. It’s very easy to modify to get .ogg file.
First for all, the .ogg file have very clear file header.
4F 67 67 53
So, every Lip Sync Voices .dat file just delete the face animation byte and save as .ogg file then can done.
The Strings just use special command to export, for English:
run export strings --lang en --json --tsw """C:\Game\The Secret World\SteamApps\common\The Secret World"""
run export strings --lang de --json --tsw """C:\Game\The Secret World\SteamApps\common\The Secret World"""
run export strings --lang fr --json --tsw """C:\Game\The Secret World\SteamApps\common\The Secret World"""