Page 12 of 19

Re: [Request] Guild Wars 2 DAT

Posted: Fri May 25, 2012 1:38 am
by lordsavyj
I'm parsing the binary files...not an easy thing...pretty sure I had a series of micro strokes the other night trying to pickup on this stuff.

So, here's what I know...all the item data is either in the gw2.dat or it's possible to force the server to send information for items you don't have. This is known because our friend from gw2db.com has done it. He's contractually obliged to keep their IP confidential but I see him lurking here ... seeing if anyone else is smart enough to figure it out. :)

Re: [Request] Guild Wars 2 DAT

Posted: Fri Jun 01, 2012 10:49 am
by blumb2is
Did they closed download of uncompressed files?

Also anyone wanna start to create emulator for this game? (:

Re: [Request] Guild Wars 2 DAT

Posted: Sat Jun 02, 2012 4:40 pm
by Cruelbob
blumb2is wrote:Also anyone wanna start to create emulator for this game? (:
I can't see much sense in it.

Re: [Request] Guild Wars 2 DAT

Posted: Sat Jun 02, 2012 11:59 pm
by kthackeray
Cruelbob wrote:I can't see much sense in it.
Cause it's fun, and gives you the chance to see content otherwise inaccessible on live. The server project for the first game has always been about messing around and having fun more than it is about replicating game play, and so will this one, eventually.

Re: [Request] Guild Wars 2 DAT

Posted: Sun Jun 03, 2012 9:25 am
by ral
Did anyone take a closer look at models already? It's my first time working with models so I just tried something out and probably still do mistakes.
I still have some problems getting the models done. Here's an example:
Vertices Only
Image
With Face
Image

I can't really find my mistakes. But for those who wanna look more into it here's what I did. I only used the GEOM part in the MODL files and ignored the rest for now.
Not all MODL contain GEOM with all the data I write now:

Code: Select all

MODLMODL
GEOM
byte[4] = header (47 45 4D 4D) (GEOM)
byte[4] = length in bytes of GEOM
byte[length] = data

// closer look at data
// part1
byte[4] = 01 00 10 00
byte[4] = unknown
byte[4] = amount of repeats for part2
byte[(amount of repeats + 1)*4] = unknown
byte[28] = 0x00

// part2 starts now 
// always 88 bytes and for amount of repeats look part 1
byte[88] = all unknown to me // less to write like this

// part3 starts now
// Here can be 2 different now

// part3 possibility 1
// Vertices floats
// amount of repeats unknown to me but it either ends with part 3 possibility 2 or part4
byte[4] = float x
byte[4] = float y
byte[4] = float z
byte[unknown] = probably normals and other stuff // I don't really know where you can find the size

// part3 possibility 2
byte[10] = Header (AmatShader) - 41 6D 61 74  53 68 61 64  65 72
byte[2] = unknown
byte[4] = 0x00
byte[unknown] = unknown // I don't really know where you can find the size

// part4
// facelist
// repeats unknown to me but it doesn't go till the end
byte[2] = 1
byte[2] = 2
byte[2] = 3
I didn't really find yet where most sizes are so I cut them out by hand because it's not that hard to see where the end is.
Part 3 and 4 can repeat more often because the models are split up.

Can anyone with more experience correct errors in the part I wrote up or say what the to me unknown bytes are?

Re: [Request] Guild Wars 2 DAT

Posted: Sun Jun 03, 2012 11:46 am
by howfie
post the first 0x40 bytes in hex of the facelist section in a code block. that should tell you whether they use triangle lists, triangle strips, or triangle strips with strip cut indices. the pic looks like it might use triangle strips and you are loading a triangle list.

Re: [Request] Guild Wars 2 DAT

Posted: Sun Jun 03, 2012 12:10 pm
by ral
Here are .obj, .face, .geom and the full .modl file of the model I posted. The .face and .geom are the second last model in the .modl file. But the cutted parts should be enough already to find my mistake.

// link removed

Facelist starts like this:

Code: Select all

00 00 01 00  02 00 03 00  04 00 05 00  06 00 07 00  08 00 09 00  0A 00 0B 00  0C 00 0D 00  0E 00 0F 00  10 00 11 00  12 00 13 00

Re: [Request] Guild Wars 2 DAT

Posted: Sun Jun 03, 2012 5:43 pm
by howfie
Your generated OBJ file is almost fine. Simple triangle lists yes they are. The only problem is OBJ face indices are 1-based. You use zero.

BTW, I'd delete the sample from your post; new rules are no samples out in the open.

Image

Re: [Request] Guild Wars 2 DAT

Posted: Sun Jun 03, 2012 11:57 pm
by howfie
Btw what modeler are you using to preview? Noesis? Lol any program should have caught your obj bug by either crashing or displaying an error. Are there any hot females in game lol? If the models are good don't forget to post your extractor here when done ;-).

Re: [Request] Guild Wars 2 DAT

Posted: Mon Jun 04, 2012 12:05 am
by chrrox
he is using deep exploration
http://www.youtube.com/watch?v=48AIa_ipEX0

Re: [Request] Guild Wars 2 DAT

Posted: Mon Jun 04, 2012 12:15 am
by howfie
Oh wow cool models do look nice. Model format looked really easy. Hopefully new guy will have something soon!

Re: [Request] Guild Wars 2 DAT

Posted: Mon Jun 04, 2012 6:02 am
by ral
Thanks for the help :)
The only important part that is missing now are the information about how many bytes the data with vertices and other stuff is, where the information for stuff like AmatShader, Clothing, Skin etc. between some vertices is and the start and end of the facelist. With that data it'd be no problem to write a first extractor but I couldn't find it yet and I don't have that much time to work on it at the moment, that's why I posted everything I knew about the GEOM data in the modl files up there in hope someone else can help :)

Re: [Request] Guild Wars 2 DAT

Posted: Mon Jun 04, 2012 4:02 pm
by howfie
Don't worry, take your time; I normally take a full month to work on something, an hour here, an hour there. I had found the number of vertices, size of vertex buffer, number of indices, and size of index buffer in the data you provided. The size of vertex data is that 0x87000100 number I think but I didn't test it. If 87 I think it vertex bytes was 0x1C, if 80 it was 0x24, but not sure.

Ha ha ha anyways, I see the game isn't even technically out yet and at $79 bucks preorder all I can say is I'm used to PC gaming being cheaper than console gaming :lol: so I'll wait a little while. Same thing with Tekken Tag 2, the model data is there in the last two bin files of the demo but I ain't going to work on it till the actual game comes out since they might change stuff around.

Re: [Request] Guild Wars 2 DAT

Posted: Mon Jun 04, 2012 6:51 pm
by Rhoot
I have the majority of the geometry data figured out actually (and have had for a month or so). LODs and everything. I recently also found out how to couple models with their textures. I'm working on implementing this in the browser but I've had too much to do the last two weeks. It can extract them as obj files at the moment, but doesn't render them yet. Hopefully I'll be able to get it done this weekend, at which point you can see the structure in the source files.

Image

Re: [Request] Guild Wars 2 DAT

Posted: Mon Jun 04, 2012 6:58 pm
by ral
Nice. Then I don't need to look more into it. At least I learned a bit since I'm still new to all this stuff :)