OBD:TRAM: Difference between revisions

From OniGalore
Jump to navigation Jump to search
mNo edit summary
m (saving...)
Line 1: Line 1:
{{OBD_File_Header|align=center|type=TRAM|prev=TRAC|next=TRAS|name=Totoro Animation Sequence|family=Character}}
{{OBD_File_Header | align=center | type=TRAM | prev=TRAC | next=TRAS | name=Totoro Animation Sequence | family=Character}}
 
 
[[image:tram_all.gif]]
 
 
{{Table}}
{{OBDth}}
{{OBDtr| 0x000 | res_id  |FF0000| 01 49 07 00 | 1532        | 01865-KONCOMpunch_heavy.TRAM }}
{{OBDtr| 0x004 | lev_id  |FFFF00| 01 00 00 00 | 0          | level 0 }}
{{OBDtr| 0x008 | int32    |FFC8C8| 00 00 00 00 | 0          | unknown; always zero }}
{{OBDtr| 0x00C | offset  |FFFFC8| A0 B4 80 00 | 00 80 B4 A0 | at this position starts the y-position part (heights) of the pelvis in the raw file }}
{{OBDtr| 0x010 | offset  |FFFFC8| E0 B5 80 00 | 00 80 B5 E0 | at this position starts the x-z-position part of the pelvis in the raw file }}
{{OBDtr| 0x014 | offset  |FFFFC8| 60 B8 80 00 | 00 80 B8 60 | at this position starts the attack part in the raw file }}
{{OBDtr| 0x018 | offset  |FFFFC8| 00 00 00 00 | unused      | at this position starts the damage part in the raw file; only tgt throws use it (tgt = target) }}
{{OBDtr| 0x1C | offset  |FFFFC8| A0 B8 80 00 | 00 80 B8 A0 | at this position starts the motion blur part in the raw file }}
{{OBDtr| 0x20 | offset  |FFFFC8| C0 B8 80 00 | 00 80 B8 C0 | at this position starts the shortcut part in the raw file }}
{{OBDtr| 0x24 | offset  |FFFFC8| 00 00 00 00 | unused      | at this position starts the throw part in the raw file }}
{{OBDtr| 0x28 | offset  |FFFFC8| E0 B8 80 00 | 00 80 B8 E0 | at this position starts the footstep part in the raw file }}
{{OBDtr| 0x2C | offset  |FFFFC8| 00 B9 80 00 | 00 80 B9 00 | at this position starts the particle part (trails, dust, etc.) in the raw file }}
{{OBDtr| 0x30 | offset  |FFFFC8| 60 B9 80 00 | 00 80 B9 60 | at this position starts the position part in the raw file }}
{{OBDtr| 0x34 | offset  |FFFFC8| 00 BD 80 00 | 00 80 BD 00 | at this position starts the bodyparts animation part in the raw file }}
{{OBDtr| 0x38 | offset  |FFFFC8| 00 00 00 00 | unused      | at this position starts the sound part in the raw file }}
{{OBDtr| 0x3C | bitset32 |C8FFC8| 90 00 08 00 | 144, 0, 8, 0| flags; they're stored in the anim_flags.[[OBD:StNA|StNA]] file; the following bits are possible /values in hex):
 
 
:0x'''01'''000000 - private1 (this bit is not animation related, it is used at runtime to mark that the animation was loaded)
:0x'''02'''000000 - invulnerable
:0x'''04'''000000 - blockHigh
:0x'''08'''000000 - blockLow
:0x'''10'''000000 - attack
:0x'''20'''000000 - dropWeapon
:0x'''40'''000000 - inAir
:0x'''80'''000000 - atomic
:0x00'''01'''0000 - noTurn
:0x00'''02'''0000 - attackForward
:0x00'''04'''0000 - attackLeft
:0x00'''08'''0000 - attackRight
:0x00'''10'''0000 - attackBackward
:0x00'''20'''0000 - overlay
:0x00'''40'''0000 - dontInterpolateVelocity
:0x00'''80'''0000 - throwSource
:0x0000'''01'''00 - throwTarget
:0x0000'''02'''00 - realWorld
:0x0000'''04'''00 - doAim
:0x0000'''08'''00 - dontAim
:0x0000'''10'''00 - canPickup
:0x0000'''20'''00 - aim360
:0x0000'''40'''00 - disableShield
:0x0000'''80'''00 - noAIPickup
 
 
}}
{{OBDtr| 0x40 | link    |C8FFFF| 00 00 00 00 | unused      | direct animation 0 (link to another TRAM file) }}
{{OBDtr| 0x44 | link    |C8FFFF| 00 00 00 00 | unused      | direct animation 1 (link to another TRAM file) }}
|-valign=top
|colspan=6|Example to the both rows above:
 
 
01855-KONCOMcomb_p_p.TRAM links to:
 
01856-KONCOMcomb_p_p_p.TRAM (direct animation 0)
 
01857-KONCOMcomb_p_p_k.TRAM (direct animation 1)
 
 
That means, that after Konokos second punch, Oni waits for a third punch or a kick.
{{OBDtr| 0x48 | bitset32 |FFC8FF| 00 00 00 00 | 0          | used parts; legend is for original 19-bone chars; the following bist are possible (values in hex):
 
 
:0x'''01'''000000 - pelvis
:0x'''02'''000000 - left thigh
:0x'''04'''000000 - left calf
:0x'''08'''000000 - left foot
:0x'''10'''000000 - right thigh
:0x'''20'''000000 - right calf
:0x'''40'''000000 - right foot
:0x'''80'''000000 - mid
:0x00'''01'''0000 - chest
:0x00'''02'''0000 - neck
:0x00'''04'''0000 - head
:0x00'''08'''0000 - left shoulder
:0x00'''10'''0000 - left arm
:0x00'''20'''0000 - left wrist
:0x00'''40'''0000 - left fist
:0x00'''80'''0000 - right shoulder
:0x0000'''01'''00 - right arm
:0x0000'''02'''00 - right wrist
:0x0000'''04'''00 - right fist
 
 
Aiming screen TRAMs "use" several bones here. Other overlay TRAMs use only "chest". Non-overlay TRAMs use none.
}}
{{OBDtr| 0x4C | bitset  |FFC8FF| 00 00 00 00 | 0          | replaced parts; same legend as above; only overlay TRAMs other than aiming-screen ones "replace" parts. }}
{{OBDtr| 0x50 | float    |FFC800| 00 00 00 00 | 0.000000    | final rotation in radians (for anims that make you turn) }}
{{OBDtr| 0x54 | int16    |C800C8| 01 00      | 1          | move direction; the following directions are possible:
 
 
:0 - nothing
:1 - forward
:2 - backward
:3 - left
:4 - right
 
 
}}
{{OBDtr| 0x56 | int16    |C800C8| 00          | 0          |  }}
 
 
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
{{OBDtr| 0x48 | bitset  |FFC8FF| 00          | 0          |  }}
 
 
{{OBDtr| 0x2C | offset  |C8FFC8|  |  |  }}
 
{{OBDtr2| 0x04 | char[64]|C8FFC8| Easy                | entry name }}
|}
 
 
{{OBD_File_Footer | type=TRAM | prev=TRAC | next=TRAS | name=Totoro Animation Sequence | family=Character}}




Line 74: Line 201:
| attack,<br>atomic,<br>
| attack,<br>atomic,<br>
| ALIGN=LEFT | flags (listed in, e.g., anim_flags.[[StNA]])
| ALIGN=LEFT | flags (listed in, e.g., anim_flags.[[StNA]])
*0x'''01'''000000 - private1 (this bit is not animation related, it is used at runtime to mark that the animation was loaded)
*0x'''02'''000000 - invulnerable
*0x'''04'''000000 - blockHigh
*0x'''08'''000000 - blockLow
*0x'''10'''000000 - attack
*0x'''20'''000000 - dropWeapon
*0x'''40'''000000 - inAir
*0x'''80'''000000 - atomic
*0x00'''01'''0000 - noTurn
*0x00'''02'''0000 - attackForward
*0x00'''04'''0000 - attackLeft
*0x00'''08'''0000 - attackRight
*0x00'''10'''0000 - attackBackward
*0x00'''20'''0000 - overlay
*0x00'''40'''0000 - dontInterpolateVelocity
*0x00'''80'''0000 - throwSource
*0x0000'''01'''00 - throwTarget
*0x0000'''02'''00 - realWorld
*0x0000'''04'''00 - doAim
*0x0000'''08'''00 - dontAim
*0x0000'''10'''00 - canPickup
*0x0000'''20'''00 - aim360
*0x0000'''40'''00 - disableShield
*0x0000'''80'''00 - noAIPickup
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#C8FFFF" | 00 00 00 00
| BGCOLOR="#C8FFFF" | 00 00 00 00

Revision as of 08:48, 13 September 2007

ONI BINARY DATA
TRAC << Other file types >> TRAS
TRAM : Totoro Animation Sequence
switch to XML:TRAM page
Overview @ Oni Stuff
OBD.png


Tram all.gif


Offset Type Raw Hex Value Description
0x000 res_id 01 49 07 00 1532 01865-KONCOMpunch_heavy.TRAM
0x004 lev_id 01 00 00 00 0 level 0
0x008 int32 00 00 00 00 0 unknown; always zero
0x00C offset A0 B4 80 00 00 80 B4 A0 at this position starts the y-position part (heights) of the pelvis in the raw file
0x010 offset E0 B5 80 00 00 80 B5 E0 at this position starts the x-z-position part of the pelvis in the raw file
0x014 offset 60 B8 80 00 00 80 B8 60 at this position starts the attack part in the raw file
0x018 offset 00 00 00 00 unused {{{6}}}
0x1C offset A0 B8 80 00 00 80 B8 A0 at this position starts the motion blur part in the raw file
0x20 offset C0 B8 80 00 00 80 B8 C0 at this position starts the shortcut part in the raw file
0x24 offset 00 00 00 00 unused at this position starts the throw part in the raw file
0x28 offset E0 B8 80 00 00 80 B8 E0 at this position starts the footstep part in the raw file
0x2C offset 00 B9 80 00 00 80 B9 00 at this position starts the particle part (trails, dust, etc.) in the raw file
0x30 offset 60 B9 80 00 00 80 B9 60 at this position starts the position part in the raw file
0x34 offset 00 BD 80 00 00 80 BD 00 at this position starts the bodyparts animation part in the raw file
0x38 offset 00 00 00 00 unused at this position starts the sound part in the raw file
0x3C bitset32 90 00 08 00 144, 0, 8, 0 flags; they're stored in the anim_flags.StNA file; the following bits are possible /values in hex):


0x01000000 - private1 (this bit is not animation related, it is used at runtime to mark that the animation was loaded)
0x02000000 - invulnerable
0x04000000 - blockHigh
0x08000000 - blockLow
0x10000000 - attack
0x20000000 - dropWeapon
0x40000000 - inAir
0x80000000 - atomic
0x00010000 - noTurn
0x00020000 - attackForward
0x00040000 - attackLeft
0x00080000 - attackRight
0x00100000 - attackBackward
0x00200000 - overlay
0x00400000 - dontInterpolateVelocity
0x00800000 - throwSource
0x00000100 - throwTarget
0x00000200 - realWorld
0x00000400 - doAim
0x00000800 - dontAim
0x00001000 - canPickup
0x00002000 - aim360
0x00004000 - disableShield
0x00008000 - noAIPickup


0x40 link 00 00 00 00 unused direct animation 0 (link to another TRAM file)
0x44 link 00 00 00 00 unused direct animation 1 (link to another TRAM file)
Example to the both rows above:


01855-KONCOMcomb_p_p.TRAM links to:

01856-KONCOMcomb_p_p_p.TRAM (direct animation 0)

01857-KONCOMcomb_p_p_k.TRAM (direct animation 1)


That means, that after Konokos second punch, Oni waits for a third punch or a kick.

0x48 bitset32 00 00 00 00 0 used parts; legend is for original 19-bone chars; the following bist are possible (values in hex):


0x01000000 - pelvis
0x02000000 - left thigh
0x04000000 - left calf
0x08000000 - left foot
0x10000000 - right thigh
0x20000000 - right calf
0x40000000 - right foot
0x80000000 - mid
0x00010000 - chest
0x00020000 - neck
0x00040000 - head
0x00080000 - left shoulder
0x00100000 - left arm
0x00200000 - left wrist
0x00400000 - left fist
0x00800000 - right shoulder
0x00000100 - right arm
0x00000200 - right wrist
0x00000400 - right fist


Aiming screen TRAMs "use" several bones here. Other overlay TRAMs use only "chest". Non-overlay TRAMs use none.

0x4C bitset 00 00 00 00 0 replaced parts; same legend as above; only overlay TRAMs other than aiming-screen ones "replace" parts.
0x50 float 00 00 00 00 0.000000 final rotation in radians (for anims that make you turn)
0x54 int16 01 00 1 move direction; the following directions are possible:


0 - nothing
1 - forward
2 - backward
3 - left
4 - right


0x56 int16 00 0


0x48 bitset 00 0
0x48 bitset 00 0
0x48 bitset 00 0
0x48 bitset 00 0
0x48 bitset 00 0
0x48 bitset 00 0
0x48 bitset 00 0
0x48 bitset 00 0
0x48 bitset 00 0
0x48 bitset 00 0


0x2C offset
0x04 char[64] Easy entry name


ONI BINARY DATA
TRAC << Other file types >> TRAS
TRAM : Totoro Animation Sequence
Character file


tram_all.gif


Hex Translation Meaning
01 49 07 00 4392 01865-KONCOMpunch_heavy.TRAM
01 00 00 00 0 level 0
00 00 00 00 0 unknown; always zero
A0 B4 80 00 80 B4 A0 at this position starts the y-position part (heights) of the pelvis in the raw file
E0 B5 80 00 80 B5 E0 at this position starts the x-z-position part of the pelvis in the raw file
60 B8 80 00 80 B8 60 at this position starts the attack part in the raw file
00 00 00 00 not used at this position starts the damage part in the raw file; only tgt throws use it (tgt = target)
A0 B8 80 00 80 B8 A0 at this position starts the motion blur part in the raw file
C0 B8 80 00 80 B8 C0 at this position starts the shortcut part in the raw file
00 00 00 00 not used at this position starts the throw part in the raw file
E0 B8 80 00 80 B8 E0 at this position starts the footstep part in the raw file
00 B9 80 00 80 B9 00 at this position starts the particle part (trails, dust, etc.) in the raw file
60 B9 80 00 80 B9 60 at this position starts the position part in the raw file
00 BD 80 00 80 BD 00 at this position starts the bodyparts animation part in the raw file
00 00 00 00 not used at this position starts the sound part in the raw file
90 00 08 00 attack,
atomic,
flags (listed in, e.g., anim_flags.StNA)
00 00 00 00 not used direct animation 0 (link to a TRAM file)
00 00 00 00 not used direct animation 1 (link to a TRAM file)
Example to the both rows above:

01855-KONCOMcomb_p_p.TRAM links to:
01856-KONCOMcomb_p_p_p.TRAM (direct animation 0)
01857-KONCOMcomb_p_p_k.TRAM (direct animation 1)

That means, that after Konokos second punch, Oni waits for a third punch or a kick.

00 00 00 00 no "used parts" "used parts" bitset. Legend is for original 19-bone chars.
  • 0x01000000 - pelvis
  • 0x02000000 - left thigh
  • 0x04000000 - left calf
  • 0x08000000 - left foot
  • 0x10000000 - right thigh
  • 0x20000000 - right calf
  • 0x40000000 - right foot
  • 0x80000000 - mid
  • 0x00010000 - chest
  • 0x00020000 - neck
  • 0x00040000 - head
  • 0x00080000 - left shoulder
  • 0x00100000 - left arm
  • 0x00200000 - left wrist
  • 0x00400000 - left fist
  • 0x00800000 - right shoulder
  • 0x00000100 - right arm
  • 0x00000200 - right wrist
  • 0x00000400 - right fist

Aiming screen TRAMs "use" several bones here. Other overlay TRAMs use only "chest". Non-overlay TRAMs use none.

00 00 00 00 no "replaced parts" "replaced parts" bitset. Same legend as above. Only overlay TRAMs other than aiming-screen ones "replace" parts.
00 00 00 00 0.000000 final rotation in radians (for anims that make you turn)
01 00 1 move direction
06 00 6 attack sound ("Rising fury!")
8D 87 CF 41 25.941187 maximum "danger"
DE E9 1A 40 2.420524 "danger" min range (world units)
95 34 D3 41 26.400675 "danger" max range (world units)
8D 87 CF 41 25.941187 "danger" at 0° (front)
8D 87 CF 41 25.941187 "danger" at 10°
8D 87 CF 41 25.941187 "danger" at 20°
8D 87 CF 41 25.941187 "danger" at 30°
9D E4 11 41 9.118314 "danger" at 40°
14 BA 04 41 8.295429 "danger" at 50°
6B 77 D4 40 6.639577 "danger" at 60°
50 5A B3 40 5.604774 "danger" at 70°
74 4B 9C 40 4.884211 "danger" at 80°
DF 37 87 40 4.225570 "danger" at 90° (left)
70 75 84 40 4.139336 "danger" at 100°
8E ED 6A 40 3.670749 "danger" at 110°
16 40 5F 40 3.488286 "danger" at 120°
16 40 5F 40 3.488286 "danger" at 130°
BF CD 45 40 3.090683 "danger" at 140°
34 2B 49 40 3.143262 "danger" at 150°
34 2B 49 40 3.143262 "danger" at 160°
34 2B 49 40 3.143262 "danger" at 170°
5A D8 6D 40 3.716330 "danger" at 180° (back)
5A D8 6D 40 3.716330 "danger" at 190°
5A D8 6D 40 3.716330 "danger" at 200°
8F D9 96 40 4.714057 "danger" at 210°
8F D9 96 40 4.714057 "danger" at 220°
B7 7B AB 40 5.358852 "danger" at 230°
F0 81 BF 40 5.984612 "danger" at 240°
98 95 E3 40 7.112011 "danger" at 250°
98 95 E3 40 7.112011 "danger" at 260°
98 95 E3 40 7.112011 "danger" at 270° (right)
98 95 E3 40 7.112011 "danger" at 280°
98 95 E3 40 7.112011 "danger" at 290°
98 95 E3 40 7.112011 "danger" at 300°
ED E7 14 41 9.306623 "danger" at 310°
D4 2E 9E 41 19.772865 "danger" at 320°
8F FB CC 41 25.622831 "danger" at 330°
8D 87 CF 41 25.941187 "danger" at 340°
8D 87 CF 41 25.941187 "danger" at 350°
05 00 5 unknown; always -1 if the attack part doesn't exist
00 0 unknown; always zero
00 0 unknown; always zero
00 00 00 BF -0.500000 unknown
1E 85 6B BF -0.920000 unknown
19 47 0C 41 8.767358 unknown
EB 51 F0 40 7.510000 unknown
D7 A3 14 41 9.290000 unknown
0A D7 3B 41 11.740000 unknown
5E 93 BF 40 5.986739 unknown
2F 00 47 unknown (-1 if no attack part of if it's a "thrown" anim)
01 1 unknown
16 22 unknown
85 EB 51 BF -1.850000 unknown
E1 7A 7C C1 -3.900000 unknown
69 61 BF 40 16.874636 unknown
70 3D 22 41 10.510000 unknown
47 E1 3A 40 8.860000 unknown
33 33 DB 40 18.460000 unknown
F7 C0 2E 3E 0.055320 unknown
00 00 00 00 0 unknown; always zero
18 00 00 00 24 amount of packages of the extent part
E0 BB 80 00 80 BB E0 offset of extent part in raw/sep
konflash1 special impact label (looked up in ONIA)
00 00 0 hard pause in 1/60 seconds
12 00 12 soft pause in 1/60 seconds
00 00 00 00 0 amount of packages of the sound part
00 00 00 00 0 always 0, used at runtime
00 00 0 always 0, used at runtime
3C 00 60 frames per second
06 00 6 compression size
16 00 22 type; animation type from anim_types.StNA
16 00 22 aiming type; animation type from anim_types.StNA
00 00 0 from state
07 00 7 to state
13 00 19 bodyparts
50 00 50 frames
50 00 50 duration in in 1/60 seconds
00 02 unknown varient, a bitset
  • 0x0001 - SPRint animation
  • 0x0002 - COMbat animation
  • 0x0008 - PIStol animation
  • 0x0010 - NINja PIStol animation (left-handed)
  • 0x0020 - RIFle animation
  • 0x0040 - NINja RIFle animation (left-handed)
  • 0x0080 - PANic or SCRamble animation
AD DE dead varient end; Oni read it in this way: DE AD = dead; I would read it as a short: AD DE (not used)
00 00 0 atomic start
FF FF 65535 atomic end
00 00 0 end interpolation
FF FF 65535 maximal interpolation
FF FF -1 action frame
0A 00 10 first level
01 1 first "invulnerable" frame
1C 28 last "invulnerable" frame
02 2 amount of attacks
00 0 amount of take damage
01 1 amount of motion blur
01 1 amount of shortcuts
02 2 amount of footsteps
04 4 amount of particles
AD DE dead not used
Direct links
0x40 and 0x44 : how exactly do they work?
Apparently, the punch/kick triggering has nothing to do with the field where the link is placed.
Those anims are just "made available" (bypassing lookups), and the rest is handled "somehow"...
(according to animtype of available anim and key pressed, maybe with some kind of transition)
geyser 06:28, 24 March 2007 (CET)
0x58-0xF3 - danger zone
Second and third floats seem to be ranges (moderate enough to be in regular world units).
Last 36 are amounts/probabilities of damage in 36 equal sectors around the character.
(often much too large to be ranges in world units)
First float (at 0x58) looks like a normalisation constant: danger amount/normalisation = probability.
If you're in one of the 36 angular sectors within the min and max ranges,
dividing the danger amount by the normalisation gives you the probability of being hit.
"Probably" ^^
geyser 06:28, 24 March 2007 (CET)
0xF4-0x113 and 0x114-0x133
similar to each other? not quite...
exception for "thrown" anims = friend/foe distinction?
maybe check IDs against MELE stuff...
geyser 06:28, 24 March 2007 (CET)
Rather old notes to self...
0x164 is usually the same as 0x162 (type) except for :
  • KONRIFrun_slide_getup, KONRIFrun_slide_run
  • KONPISstartle_lt1, KONPISstartle_rt1
  • KONRIFstartle_lt1, KONRIFstartle_rt1
  • STRRIFrun_slide_getup, STRIKElev3_startle
  • STRPISstartle_lt1, STRPISstartle_rt1
  • STRRIFstartle_lt1, STRRIFstartle_rt1
  • STRPISstartle_lt2, STRPISstartle_rt2
  • STRRIFstartle_lt2, STRRIFstartle_rt2
  • COMPISstartle_lt1, KONPISstartle_rt1
  • COMRIFstartle_lt1, KONRIFstartle_rt1
  • COMPISstartle_lt2, COMPISstartle_rt2
  • COMRIFstartle_lt2, COMRIFstartle_rt2
(for all these, 0x164 is null : "None")




ONI BINARY DATA
TRAC << Other file types >> TRAS
TRAM : Totoro Animation Sequence
Character file