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

Re: Kengo 3 PS2

Post by JohnHudeski » Fri May 23, 2014 3:58 pm

There is the possibility that the first bone (body) is the root object and has no animation keys as it is moved during the game by the ending (Very common standard of that era)

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 10:58 pm

JohnHudeski wrote: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.
As for the animation file: there are floats stored in this space. But it's not clear whether it's a mesh with face indices at file's end. That was just a suggestion.
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)
It's not uncommon. Just search any given model for them. You'll find lots of 1's being contained.
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 Jun 19, 2014 2:35 pm

After reviewing the 360 release for this game i found out that the files i mistakened for animation files were not animations
The were called .ref and just seem to be skeleton files.

I found the animation files .key (key for keyframe) and was able to decipher their structure

Code: Select all

#region support structures
//I don't understand the need for the constant value after the key when key could have just been made an integer
//I don't understand why there are 2 floating values either
public struct KeyFrame
{
	public ushort key;
	public ushort const0; //548 = 24 02h
	public float f0;
	public float f1;
}

public struct Channel
{
	public ushort frameCount; //number of frames
	public ushort unkn0; //260,261,262.... for 6ers: first batch 256,257,258
	public List<KeyFrame> frame; // [frameCount]
}

public struct Node //Probably bones
{
	public ushort ID;
	public ushort channelCount; //0, 3, 6
	public uint addr;
	public List<Channel> channels;
}

public struct KeyFile
{
	public uint id;
	public float one;
	public float unkn0; //coincides with max frame count
	public float sixty;
	public uint nCount; //Node Count
	public List<Node> node;
}
#endregion
The problem now is trying to map the node.ID to an actual bone from the .ref file

PS: 0x00000008h is the same as float 0. I see this hex sometimes when I expect a floating point value. Is it wrong to read this as a float?

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 » Mon Dec 08, 2014 7:16 pm

Resurrection
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 » Mon Dec 08, 2014 9:27 pm

I haven't slept since last night
I believe I am so close to cracking this thing
Just a bit nervous now (Cos If I am wrong I wont even know what to do).

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 Dec 09, 2014 11:53 pm

fully extracted skeleton with accurate orientation etc
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 Dec 10, 2014 6:37 pm

OMG lol
So I managed to read all the relevant files and all.....
Most of t time the game actually imports and animates a rig runtime
not the actual bones

Now I have to figure out how to connect the rigs to the bones (FML)

Post Reply