Kengo 3 PS2

Old posts about game archives and other formats.
JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Kengo 3 PS2

Post by JohnHudeski » Tue May 20, 2014 3:48 am

I am struggling with this game's file format. I would like to upload a sample of it but it is 1 giant file.
Is there a way to show off the hex?

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Tue May 20, 2014 5:36 am

I figured out the structure of the Large binary/Container file

Code: Select all

struct FileEntry
{
   uint32_t offset;
   uint32_t size;
};

//Once you have the real data
struct KengoFile
{
   uint32_t unkn1;
   uint32_t nFiles;
   uint32_t unkn2;
   uint32_t unkn3;
   FileEntry* files; //nFiles];
};
But with all files being nameless identifying all 7,000 files is gonna be a fun (Making coffee)

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Wed May 21, 2014 5:58 am

Continuing with my fools chase
I have managed to locate a few "TIM2" files i would like to convert these to Bmp or any other format

Also I found a few object files, animation files and what i believe to be text files.

I would love to translate this game to English.


But First things first I will tackle the animation files.

Code: Select all

struct HEADER 
{
    //Line 1
    int unkn1;
    int unkn2; //1
    int unkn3[2]; //0

    unsigned int ptr; // 2 last to lines of file
    int unkn4[3]; // 0
        
    int boneCount; // 19
    int unkn5; //624
    int unkn6[2]; // 0
};

struct BoneName
{
    char name[32]; //This seems excessive but it feels like the names are always padded
}; 

boneNames[header.boneCount];
I am having a hard time understanding this format. Its a very random compilation of integers floats and pointers

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Wed May 21, 2014 6:14 am

xentax wont let me upload any of my files

animationSample

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Wed May 21, 2014 6:51 am

Seems like the model files have the same header as the animation files

Model Sample

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Wed May 21, 2014 7:56 pm

From the model file
This

Code: Select all

80: 6	304	0	0
96: 1	0	0	0
112: 0	5.47021e-008f	2.0202f	1f
128: 1f	0	0	0
144: 1	0	0	0
160: 2.88792f	-2.7351e-008f	-0.17823f	1f
176: 1f	0	0	0
192: 1	0	0	0
208: 0.892417f	2.74658f	-0.17823f	1f
224: 1f	0	0	0
240: 1	0	0	0
256: -2.33638f	1.69748f	-0.17823f	1f
272: 1f	0	0	0
288: 1	0	0	0
304: 0.892417f	-2.74658f	-0.17823f	1f
320: 1f	0	0	0
336: 1	0	0	0
352: -2.33638f	-1.69748f	-0.17823f	1f
368: 1f	0	0	0
384: 8	400	0	0
400: 2	1	5	0
416: 0	0	0	0
432: 0	0	0	0
448: 1	2	0	0
464: 0	0	0	0
480: 0	0	0	0
496: 3	2	5	0
512: 0	0	0	0
528: 0	0	0	0
544: 2	3	0	0
560: 0	0	0	0
576: 0	0	0	0
592: 4	1	0	0
608: 0	0	0	0
624: 0	0	0	0
640: 3	5	0	0
656: 0	0	0	0
672: 0	0	0	0
688: 1	4	5	0
704: 0	0	0	0
720: 0	0	0	0
736: 5	4	0	0
is supposed to be a samurai straw-hat like the image below
Image

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Wed May 21, 2014 8:55 pm

After researching the obj file format (ant this forum) i realise this might actually be an obj file so i created and rendered a mesh in unity (see attachment: Looks nothing like anything from the game. Probably a lod file?)

from lines 112 - 400
Vx, Vy, Vz, 1
1f, 0, 0, 0 //is this uv?
1, 0, 0, 0 //This could not possible be the normal cos 1 here is an int (why switch)

line 400 as pointed to seems to be triangles
from from the vertex index
You do not have the required permissions to view the files attached to this post.

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Wed May 21, 2014 10:24 pm

The presence of these many integers in a model file is confusing. Other than faces i see no other uses

User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 2611
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 642 times
Been thanked: 1338 times

Re: Kengo 3 PS2

Post by shakotay2 » Wed May 21, 2014 10:33 pm

using hex2obj (view link in my sig) from this post:
viewtopic.php?f=16&t=11404&p=93819&hilit=hex2obj#p93819:
Kengo3_PS2.JPG
(I used little endian (litE) for file 000019576832 although I thought PS2 files were using big endian?)

(Not to confuse: the vertex "floats x, y, z" are in a special format named IEEE-754
and are converted to floats -5.959999 -0.000001 5.099999 by hex2obj.)
You do not have the required permissions to view the files attached to this post.
Bigchillghost, Reverse Engineering a Game Model: viewtopic.php?f=29&t=17889
extracting simple models: viewtopic.php?f=29&t=10894
Make_H2O-ForzaHor3-jm9.zip
"You quoted the whole thing, what a mess."

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Thu May 22, 2014 12:03 am

Thank you very much. Going by this logic it seems the first file i gave you isnt an animation file but rather a model file

Face Count
F50 : 112
UV
F70
The vertex count is
2B0 : 58

same "36"


These were the values I got. The image was nonsense. Maybe i made a mistake

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Thu May 22, 2014 7:40 am

I wrote the last post while fighting sleep it might be 100% inaccurate. Apologies.

I made an assumption that this was an animation file.

The format is eerily similar to the 3d objects but halfway it become inconsistent. It is the biggest of all the files hence the most difficult.

Any assistance would be cherished

User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 2611
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 642 times
Been thanked: 1338 times

Re: Kengo 3 PS2

Post by shakotay2 » Thu May 22, 2014 9:03 pm

well, an animation file without the suiting model file does not make much sense.

Then do you know the english translation of
KATA, SAKO, UDE, TE, MUNE, HIZA, MOMO, ASI?
Could be the bones.

Here's a rough structure of the supposed animation file:
structures.JPG
There might be positons/rotations contained but without knowing even the count of bones
it doesn't make sense to continue analysis imho.
You do not have the required permissions to view the files attached to this post.
Bigchillghost, Reverse Engineering a Game Model: viewtopic.php?f=29&t=17889
extracting simple models: viewtopic.php?f=29&t=10894
Make_H2O-ForzaHor3-jm9.zip
"You quoted the whole thing, what a mess."

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Thu May 22, 2014 9:47 pm

Te - Hand
Mune - Chest
Hiza - Knee
Kata - Shoulder
Ude - Arm
Kao - Face
Asi - foot
Kosi - loweback/waist/hip
Momo - thigh
Sako - Collar bone/ Clavicle


There are 19 bones if you include BODY_

This was what led me to believe this was a skeleton of some sort.
It says it at x020 (0020h).

User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 2611
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 642 times
Been thanked: 1338 times

Re: Kengo 3 PS2

Post by shakotay2 » Fri May 23, 2014 8:02 am

thx. Well, we have 163 of these 01000000... blocks and 292 of the 02000000.., in sum 455.
If it were 456 it would fit to 24*19.

From 0x6C70 it looks like mesh data (face indices starting from 6C60) but sadly it isn't.
Copy the following 6 lines into an empty text file and rename it to whatever.H2O.

0x6C60 453
Vb1
48 99
0x6C70 453
040000
0x0 255

Enter 36 as a face indices offset as before.

Load the animation file and the H2O file into hex2obj.
Press the "noPtC"-button to change to point cloud view and press the "mesh"-button.

No decent mesh, not much sense to continue.
Last edited by shakotay2 on Fri May 23, 2014 10:46 pm, edited 1 time in total.
Bigchillghost, Reverse Engineering a Game Model: viewtopic.php?f=29&t=17889
extracting simple models: viewtopic.php?f=29&t=10894
Make_H2O-ForzaHor3-jm9.zip
"You quoted the whole thing, what a mess."

JohnHudeski
veteran
Posts: 155
Joined: Wed Mar 02, 2011 10:38 pm
Has thanked: 9 times
Been thanked: 54 times

Re: Kengo 3 PS2

Post by JohnHudeski » Fri May 23, 2014 12:13 pm

Thanks a lot for your help so far. I just have one question about Face data needing to skip so many bytes (for example 36 in the previous examples).
Is that not some what wasteful? or is other data naturally stored in between the indices.


Lastly just based on general experience do you know of any file formats that has a bunch of float mostly 1's (00 00 80 3F)

Thanks again

Post Reply