Ripping models from a slightly obscure MMO (weird obj format)
37 replies, posted
Hi, I'm trying to get models from a somewhat obscure MMO called Air Rivals/Ace Online. (name depending on region)
It seems like most of the models are sitting uncompressed in a folder in .obj format:
[t]http://puu.sh/7eEG3.png[/t]
... But they cannot be opened in 3DSmax.
[img]http://puu.sh/7eEHu.png[/img]
I tried googling around, but since it's such an obscure game, no one has any documentation or other info regarding models in the game.
[url=http://puu.sh/7eEL2.obj]Here's one of the files for an example if anyone else wants to take a crack at it.[/url] Note: I have no idea what the model is supposed to be because the naming is so arbitrary.
In normal circumstances like these I'd just use DXRipper (ew, I know) to get stuff I don't have a clue how to extract.
However, the model I want to use is [I]extremely[/I] rare in this game. And I can't just cheat to get it because I don't feel like getting my account banned.
Will post any more info if needed.
Thanks in advance.
Yikes, that is most certainly not a normal .obj file. I recommend you ask Xentax, they specialize in cracking compressed files and such.
Oh, and use NinjaRipper instead. It's a lot less shittier than DX.
I'm not sure who/what this Xentax person/group is? I'm still very new to stuff like this, so I don't know any popular names in the scene :v:
And are you sure they'd be willing to help me out? I'm not doing this for any specific person(s), there's no demand for it. It's pretty much for a personal project.
Xentax is a forum, and from what I've seen the fellows over there are pretty nice. You can post a request for a certain file format, and usually someone is willing to help out.
I'm not paying to sign up to a forum. I don't have any money.
It seems it gives me no choice but to donate if I want to join and just post.
Awww, yeah, that's right. I totally forgot about that.
Well, you could try searching around for other places, or use NR if all else fails.
I can't find anything else. I've googled for a good 30 minutes and I can't find a [I]single thing[/I] regarding ripping models from the game.
As for using a 3D ripper, I already stated why I can't in the OP.
[quote]In normal circumstances like these I'd just use DXRipper (ew, I know) to get stuff I don't have a clue how to extract.
However, the model I want to use is extremely rare in this game. And I can't just cheat to get it because I don't feel like getting my account banned.[/quote]
It's an item so rare that as far as I know, no current active player in the entire game has it.
Hate to bump but I'm pretty much screwed on this, aren't I?
try blender, it should have a .obj import and has the ability to get passed the things that max can't..
I took a look and the file does not look to be a model.
I looks like its an image sine it ends with TRUEVISION-XFILE though it doesn't read as a TGA.
How would it be an image.. That doesn't make any sense. The game has a separate folder for it's textures, and no other folder that looks like it would contain models.
This is beyond strange.
well, models can be converted into images.
[QUOTE][IMG]http://virtualunderworld.net/images/sculpt1data.jpg[/IMG][/QUOTE]
but reading that data from the image will be a tricky task.
Sorry if I sound stupid or rude in any way but I'm not entirely sure how this would help me. :s
I'm kind of illiterate when it comes to modeling stuff, so it's becoming all greek to me.
Though, I will say that [I]is[/I] a pretty picture, and some interesting info...
What i'm saying is if its stored as a image, there is no hope of gaining access to the information because its written specifically for it.
The example file contains the footer TRUEVISION-XFILE 3 times at the end of the file. (decimal offsets 241148, 245326 and 247364). The official specs say a TGA2 file must end after this text and 2 extra bytes so I've tried seperating 2 images but these gave no readable results. I'm not sure the images are actual valid images.
EDIT: I figured it out. I've successfully extracted a texture tga file. I will post more information soon.
EDIT 2: OK, so the obj files are not actually models or textures. They are probably both. The file you sent actually contains 3 texture files and a DirectX .x file (seems to contain bzip data).
I've written a tool in java that extracts these files for you. Source code and file format are included in the zip. Usage is in readme.
[url]https://dl.dropboxusercontent.com/u/35774053/ObjectFileExtractor.zip[/url]
[CODE]
.OBJ FILE FORMAT
0 - 20: Archive header
20 - eof: Archived files
Archive header:
?
Archived file:
0 - 12: Header data (Contains changing data. File lenght?)
12 - 19: File name/id? (8 byte ascii string containing numbers)
19 - 23: Header data (Seems to be static 00 00 CD CD)
23 - ??: File data
[/CODE]
The model is in the .x file in compressed form. You can view it with this tool: [url]http://dead-code.org/misc/DXViewer.zip[/url] If you want to decompress it for some reason, this might work: [url]http://forum.xentax.com/viewtopic.php?f=21&t=9064[/url]
You can probably rip it from the viewer with ninjaripper.
Wow! That was a lot of effort.
However the instructions are a bit unclear...
"Usage: java -jar objextractor.jar inputfile outputfolder [-silent]"
I don't know what to do with this. Is this a command prompt thing or what? :s
Sorry for sounding noobish, like I said all this is just very confusing to me..
[QUOTE=SuperDuperScoot;44150999]Wow! That was a lot of effort.
However the instructions are a bit unclear...
"Usage: java -jar objextractor.jar inputfile outputfolder [-silent]"
I don't know what to do with this. Is this a command prompt thing or what? :s
Sorry for sounding noobish, like I said all this is just very confusing to me..[/QUOTE]
Sorry, should have been a bit clearer.
This is indeed a command prompt command.
Just open cmd.exe, change directory to the folder where you unpacked the java jar file (google it if you don't know how to do that) and run that command with "inputfile" and "outputfolder" modified to the actual input and output arguments.
I feel quite stupid.
[img]http://puu.sh/7lnMG.png[/img]
I have no idea what I'm doing..
On another note, I'm not quite sure if this is going to help me enough. Uhh... Because there's about ~3,000 files in the "obj" folder alone, and they're all named by some weird numbering system so I can't exactly find which one is the one I really want.
[QUOTE=SuperDuperScoot;44151254]
I feel quite stupid.
[img]http://puu.sh/7lnMG.png[/img]
I have no idea what I'm doing..
[/QUOTE]
My bad, I forgot to change the filename. The second command is correct (provided you unpacked the program on your desktop), but the jar file name (ObjectFileExtractor v0.1.jar) needs to go between quotes. So it becomes:
java -jar "ObjectFileExtractor v0.1.jar" inputfile outputfolder
[QUOTE=SuperDuperScoot;44151254]
On another note, I'm not quite sure if this is going to help me enough. Uhh... Because there's about ~3,000 files in the "obj" folder alone, and they're all named by some weird numbering system so I can't exactly find which one is the one I really want.
[/QUOTE]
If you have 5 minutes, ill add an easy way to unpack an entire directory of these at once.
Uh oh.
[img]http://puu.sh/7loFN.png[/img]
Also, I have all the time in the world.
[QUOTE=SuperDuperScoot;44151380]Uh oh.
[img]http://puu.sh/7loFN.png[/img]
Also, I have all the time in the world.[/QUOTE]
The error is caused by the fact that the input parameters are seperated by a space except if they are put between quotes. In this case, the program cannot find the file "C:\Program" which is the first argument.
I've uploaded a new version to dropbox that has an graphical interface if you run it without arguments (or double click the jar). That should be easier to work with. Unpacking all files in a folder is now also supported in the gui.
[url]https://dl.dropboxusercontent.com/u/35774053/ObjectFileExtractor.zip[/url]
Wow, works like a charm and the DXViewer does indeed open the files.
However...
The multiple unpacker seems to stop at about 7 files/folders in and doesn't extract any further.
There's no visible errors though. Just that.
New version has a log window button so you can see the output from the program and any errors that have occured.
[url]https://dl.dropboxusercontent.com/u/35774053/ObjectFileExtractor.zip[/url]
Try unpacking multiple files again and check the log. If something went wrong, it should be visible in there.
Delicious exceptions.
Pastebin of log:
[url]http://pastebin.com/zeBrqwWX[/url]
[QUOTE=SuperDuperScoot;44152568]Delicious exceptions.
Pastebin of log:
[url]http://pastebin.com/zeBrqwWX[/url][/QUOTE]
Seems like the program encounters a file that does not fit the file format rules I specified. I updated the program to print the problem file. Could you upload the specific file so I can take a look at it?
Well that's strange. Now the log looks a bit different.
[url]http://pastebin.com/EYBCkPQc[/url]
And it went quite a bit further this time, errored on several but managed to get past them and then finally stopped working.
Uh, these are the files it crapped out on, in order by the log.
[url]http://puu.sh/7ly7t.obj[/url]
[url]http://puu.sh/7lycu.obj[/url]
[url]http://puu.sh/7lyf6.obj[/url]
[url]http://puu.sh/7lygM.obj[/url]
[QUOTE=SuperDuperScoot;44152928]Well that's strange. Now the log looks a bit different.
[url]http://pastebin.com/EYBCkPQc[/url]
And it went quite a bit further this time, errored on several but managed to get past them and then finally stopped working.
Uh, these are the files it crapped out on, in order by the log.
[url]http://puu.sh/7ly7t.obj[/url]
[url]http://puu.sh/7lycu.obj[/url]
[url]http://puu.sh/7lyf6.obj[/url]
[url]http://puu.sh/7lygM.obj[/url][/QUOTE]
One of these files, 02001300.obj, has a strange structure. It starts of as a regular file like the others and defines the .x file and a tga file. Then suddenly, without any header, a textbased file with what seems to be animation data pops up. After that, the texture file is repeated and the file goes on like normal.
I've manually unpacked that one. Its available here:
[url]https://dl.dropboxusercontent.com/u/35774053/ObjectFileExtractor_02001300.obj.zip[/url]
That's great, but how can I make it skip over the broken ones and continue unpacking the rest?
By stopped working I mean.. Stopped working. The last error is the last thing in the log before it quits with still having quite a ways to go. :s
Btw I am really appreciating your efforts so far, thank you very much.
I updated to program to check the subfile naming more precisely and to catch all errors that could happen during extraction. It should now always continue.
Sorry it took me so long to get back to you.
It seems to work perfectly! All 3,500 or so files extracted properly.
Though some don't open in DXViewer, but it's incredibly rare.
Thank you soooooo much, you are my personal savior.
Now to sift through 3,500 models to find the one I'm looking for... This is gonna be fun
[editline]7th March 2014[/editline]
Ah! It works!
... For the most part. Ninjaripper doesn't seem to get everything...
It seems to skip the parts that have animations applied to them.
[t]http://puu.sh/7mF5E.jpg[/t]
(the body is purple and the wing is red because they're two versions of the same model. I had imported them both. The red one only imports the wing and nothing else, and the purple one imports the body, but not the wings and landing gear.)
Each rip has 36 rip parts for the red one, and 38 parts for the blue one.
Sorry, you need to Log In to post a reply to this thread.