OBD:TRAM/raw0x24: Difference between revisions

From OniGalore
Jump to navigation Jump to search
No edit summary
 
(clearer, more accurate wording on ThrowAdjustment)
 
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File Types]] >> [[OBD:TRAM|TRAM File]] >> throw part
<CENTER>[[OBD:TRAM/raw0x20|shortcut part]] &nbsp;<<&nbsp; '''[[OBD:TRAM|TRAM]] - throw part''' &nbsp;>>&nbsp; [[OBD:TRAM/raw0x28|footstep part]]</CENTER>




<CENTER>[[OBD:TRAM/raw0x20|<==]] <FONT SIZE=5>TRAM - throw part</FONT> [[OBD:TRAM/raw0x28|==>]]</CENTER>
This part belongs to the 01828-KONCOMthrow_fw_p.TRAM file.




This part belongs to the 01828-KONCOMthrow_fw_p.TRAM file.
[[Image:Tram_r07.gif]]




http://www6.fh-eberswalde.de/user/dkriesch/onistuff/images/tram_r07.gif
{{Table}}
{{OBDth}}
{{OBDtrBK}}
{{OBDtr| 0x00 | float |FFC8C8| 8A 39 2C BF | -0.672752 | X-axis adjustment to throw target; see below for info
X+ is left, X- is right }}
{{OBDtr| 0x04 | float |FFFFC8| 10 39 B4 3F | 0.793839  | Y-axis adjustment to throw target; see below for info
Y+ is up, Y- is down }}
{{OBDtr| 0x08 | float |C8FFC8| 44 2D 1C 41 | 9.761051  | Z-axis adjustment to throw target; see below for info
Z+ is forward, Z- is backward }}
{{OBDtr| 0x0C | float |C8FFFF| DB 0F 49 40 | 3.141593  | angle adjustment in radians; when throw is successful, target is turned around his axis by this angle (π <nowiki>=</nowiki> 180°)}}
{{OBDtr| 0x10 | float |FFC8FF| 00 00 40 41 | 12.000000 | distance tolerance; read below for important notice }}
{{OBDtr| 0x14 | int16 |FFC800| 60 00      | 96        | anim type for the animation of the target; types listed [[XML:StNA|HERE]] }}
|}




{| BORDER=1 WIDTH=100% CELLPADDING=2 CELLSPACING=1 BGCOLOR="#000000"
'''Throw target axis adjustment'''
|- ALIGN=CENTER BGCOLOR="#FFDDBB"
:*When throw is successful, these axis adjustments are applied on the target to move ("teleport") him in a way which creates the proper distance between participants so the throw looks good. Note that this adjustment happens instantly <u>at the start</u> of the throw. Oni will perform a collision check and modify the target's adjusted location so that it doesn't pass through any intervening obstacle.
| WIDTH=15% | <B>Hex</B>
 
| WIDTH=15% | <B>Translation</B>
:*Y-axis surprise: When you lift the enemy with a +Y value, the bounding box actually raises off the ground as if he jumped. Usually when executing TRAMs, a +Y value just stretches the bounding box of the character from the floor to their current height; that is why you cannot throw enemies over railings. After the lift is performed, the target falls down normally according to gravity.
| WIDTH=70% | <B>Meaning</B>
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#000000"
| COLSPAN=3 | <FONT SIZE=2 COLOR="#FFFFFF">Below follows one throw block.</FONT>
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FFC8C8" | 8A&nbsp;39&nbsp;2C&nbsp;BF
| -0.672752
| ALIGN=LEFT | unknown
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FFFFC8" | 10 39 B4 3F
| 0.793839
| ALIGN=LEFT | unknown
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#C8FFC8" | 44 2D 1C 41
| 9.761051
| ALIGN=LEFT | unknown
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#C8FFFF" | DB 0F 49 40
| 3.141592
| ALIGN=LEFT | pi
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FFC8FF" | 00 00 40 41
| 12.000000
| ALIGN=LEFT | unknown
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FFC800" | 60 00
| 96
| ALIGN=LEFT | type / aming type; that's the ID (type) for the animation of the target  
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#C800C8" | 5F 63
| 25589
| ALIGN=LEFT | unknown; always the same
|}


'''Distance tolerance'''
:*Be aware that when setting the throw distance tolerance, you have to make sure it is equal to or greater than the parent TRAC's throw distance for the same throw type (for example, throw_fw_p is in Comguy's TRAC and the Comguy TRAC is inherited by Muro). If you set a lower value in the child TRAC, the parent's throw TRAM will play instead when you are beyond the range of the child's throw but not the parent's throw.


<HR>
:*There is also the matter of angular tolerance – how much can the throw participants deviate from perfectly facing each other and the throw still occur. This number is hardcoded to 45°.
<CENTER>[[OBD:TRAM/raw0x20|<==]] <B>TRAM - throw part</B> [[OBD:TRAM/raw0x28|==>]]</CENTER>
<HR>


<CENTER>[[OBD:TRAM/raw0x20|shortcut part]] &nbsp;<<&nbsp; '''[[OBD:TRAM|TRAM]] - throw part''' &nbsp;>>&nbsp; [[OBD:TRAM/raw0x28|footstep part]]</CENTER>


[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File Types]] >> [[OBD:TRAM|TRAM File]] >> throw part
{{OBD}}

Latest revision as of 03:53, 1 November 2023

shortcut part  <<  TRAM - throw part  >>  footstep part


This part belongs to the 01828-KONCOMthrow_fw_p.TRAM file.


Tram r07.gif


Offset Type Raw Hex Value Description
First element (black outline)
0x00 float 8A 39 2C BF -0.672752 X-axis adjustment to throw target; see below for info

X+ is left, X- is right

0x04 float 10 39 B4 3F 0.793839 Y-axis adjustment to throw target; see below for info

Y+ is up, Y- is down

0x08 float 44 2D 1C 41 9.761051 Z-axis adjustment to throw target; see below for info

Z+ is forward, Z- is backward

0x0C float DB 0F 49 40 3.141593 angle adjustment in radians; when throw is successful, target is turned around his axis by this angle (π = 180°)
0x10 float 00 00 40 41 12.000000 distance tolerance; read below for important notice
0x14 int16 60 00 96 anim type for the animation of the target; types listed HERE


Throw target axis adjustment

  • When throw is successful, these axis adjustments are applied on the target to move ("teleport") him in a way which creates the proper distance between participants so the throw looks good. Note that this adjustment happens instantly at the start of the throw. Oni will perform a collision check and modify the target's adjusted location so that it doesn't pass through any intervening obstacle.
  • Y-axis surprise: When you lift the enemy with a +Y value, the bounding box actually raises off the ground as if he jumped. Usually when executing TRAMs, a +Y value just stretches the bounding box of the character from the floor to their current height; that is why you cannot throw enemies over railings. After the lift is performed, the target falls down normally according to gravity.

Distance tolerance

  • Be aware that when setting the throw distance tolerance, you have to make sure it is equal to or greater than the parent TRAC's throw distance for the same throw type (for example, throw_fw_p is in Comguy's TRAC and the Comguy TRAC is inherited by Muro). If you set a lower value in the child TRAC, the parent's throw TRAM will play instead when you are beyond the range of the child's throw but not the parent's throw.
  • There is also the matter of angular tolerance – how much can the throw participants deviate from perfectly facing each other and the throw still occur. This number is hardcoded to 45°.
shortcut part  <<  TRAM - throw part  >>  footstep part