OBD:ONCP: Difference between revisions

From OniGalore
Jump to navigation Jump to search
No edit summary
 
(7 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]] >> ONCP
{{OBD_File_Header | type=ONCP | prev=ONCC | next=ONCV | name=Oni Character Particle Array  | family=Character | align=center}}




<CENTER>
[[image:oncp_a.gif]]
[[OBD:ONCC|ONCC]] << [[OBD:File types|Other file types]] >> [[OBD:ONCV|ONCV]]
<br><FONT SIZE=5>ONCP : Oni Character Particle Array</FONT>
<br><FONT SIZE=2>[[OBD:File types/Character|Character file]]</FONT>
</CENTER>




http://www6.fh-eberswalde.de/user/dkriesch/onistuff/images/oncp_a.gif
{{Table}}
{{OBDth}}
{{OBDtr| 0x00 | res_id  |FF0000| 01 F9 03 00 | 1017      | 01017-.ONCP }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 06 | 3          | level 3 }}
{{OBDtr| 0x08 | char[16] |00FF00| AD DE      | dead      | unused }}
{{OBDtr| 0x18 | int8    |00FF00| 0          | 0          | is loaded; must be 0, set to 1 at runtime }}
{{OBDtr| 0x19 | char[3]  |00FF00| AD DE      | dead      | unused }}
{{OBDtr| 0x1C | int32    |00FFFF| 0D 00 00 00 | 13        | array size }}
{{OBDtrBK}}
{{OBDtr2|0x00 | char[16] |FFC8C8| acid                    | particle name (referenced by [[OBD:TRAM/raw0x2C|TRAM particles]]) }}
{{OBDtr2|0x10 | char[64] |FFFFC8| env_splash_e01a          | [[OBD:BINA/PAR3|particle class name]] }}
{{OBDtr| 0x50 | uint16  |C8FFC8| FF FF      | -1        | number of the bodypart; see below }}
{{OBDtr| 0x52 | int16    |C8FFFF| 5F 00      | 95        | ignored }}
{{OBDtr| 0x54 | int32    |FFC8FF| 00 00 00 00 | 0          | runtime only }}
|}


==Header==
{| BORDER=1 WIDTH=100% CELLPADDING=2 CELLSPACING=0
|- BGCOLOR="#FFDDBB" ALIGN=CENTER
!Offset
!Raw hex
!Value
!Meaning
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x00
| BGCOLOR="#FF0000" | 01 F9 03 00
| 1017
| ALIGN=LEFT | file ID : 01017-.ONCP
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x04
| BGCOLOR="#FFFF00" | 01 00 00 06
| 3
| ALIGN=LEFT | level ID : level 3
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x08 - 0x1B
| BGCOLOR="#00FF00" | AD DE
| dead
| ALIGN=LEFT | blank filler
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x1C
| BGCOLOR="#00FFFF" | 0D 00 00 00
| 13
| ALIGN=LEFT | 13 particles in array (first particle is outlined in black)
|}
==Particle array==
The array starts at 0x20. Every particle is 0x58=88 bytes long.
;Example:acid/env_splash_e01a
Offsets are relative to the start of a particle slot.
{| BORDER=1 WIDTH=100% CELLPADDING=2 CELLSPACING=0
|- BGCOLOR="#FFDDBB" ALIGN=CENTER
!Offset
!Raw hex
!Value
!Meaning
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x00 - 0x0F
| BGCOLOR="#FFC8C8" COLSPAN=2 | <TT>acid</TT> + null char + garbage
| ALIGN=LEFT | label of the particle (used by [[OBD:TRAM/raw0x2C|particle tracks]] of [[OBD:TRAM|TRAM]])
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x10 - 0x4F
| BGCOLOR="#FFFFC8" COLSPAN=2 | <TT>env_splash_e01a</TT> + null char + garbage
| ALIGN=LEFT | link by name to [[OBD:BINA/Particles|3RAP]] env_splash_e01a.[[OBD:BINA|BINA]] of level 0
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x50
| BGCOLOR="#C8FFC8"| FFFF
| -1
| ALIGN=LEFT | default [[OBD:TRIA#Bones|bone]] to which particle is linked (-1 = root/none?, 32768 = ?)
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x52
| BGCOLOR="#C8FFFF"|5F00
| 95
| ALIGN=LEFT | unknown (always the same?)
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|0x54
| BGCOLOR="#FFC8FF"| 00000000
| 0
| ALIGN=LEFT | unknown (always the same?)
|}
;Note
;Note
:The ONCP is the list of all the particles (motion trails, combo flashes, etc) that will be available for the [[OBD:ONCC|ONCC]] that links to it.
:The ONCP is the list of all the particles (motion trails, combo flashes, etc) that will be available for the [[OBD:ONCC|ONCC]] that links to it.
:Nothing bad happens if an ONCC doesn't find a particle required by an animation, you just get a warning at the console.
:Nothing bad happens if an ONCC doesn't find a particle required by an animation, you just get a warning at the console.
;Default bone ID
:However, [[AE]]'s glass-breaking animations will give you a ''lot'' of warnings without the right ONCP (basically for all combat moves, not just flashy ones).
:The ones specified in the [[OBD:TRAM/raw0x2C|particle tracks]] of the [[OBD:TRAM|TRAM]] seem to have the final word.
 
:I really don't know about 0x8000=32768 (used for '''snap'''/'''h2h_snap_e01''')
;Bodypart number
*0-19 - this is a super particle attached to the specified bodypart when the character has daodan powers; the particle name must start with super for this to work; particle events are as follows:
**particle is "create"d (if absent) and "start"ed when entering overpower while the character is "active";
**particle is "stop"ped when overpower runs out;
**particle is killed (either is deleted or "die"s on its own) when/if the character goes "inactive".
*0xFFFF - the particle is attached by an animation (the animation specifies the bodypart); particle events are as follows:
**the animation can "create" multiple instances of a particle as necessary (one per bone involved), at the start of the animation;
**particle is "start"ed and "stop"ped according to the frames specified in [[OBD:TRAM/raw0x2C|TRAM]];
**particle is killed at the end of the animation
*0x8000 - the particle is attached by an animation (the animation specifies the bodypart) and it also generates a Self_Damage_Killed impact (user by back breaking animations); particle event rules are same as for 0xFFFF


<HR>
<CENTER>[[OBD:ONCC|ONCC]] << '''ONCP''' >> [[OBD:ONCV|ONCV]]</CENTER>
<HR>


{{OBD_File_Footer | type=ONCP | prev=ONCC | next=ONCV | name=Oni Character Particle Array  | family=Character}}


[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File types]] >> ONCP
{{OBD}}

Latest revision as of 09:02, 14 October 2010

ONI BINARY DATA
ONCC << Other file types >> ONCV
ONCP : Oni Character Particle Array
switch to XML:ONCP page
Overview @ Oni Stuff
OBD.png


Oncp a.gif


Offset Type Raw Hex Value Description
0x00 res_id 01 F9 03 00 1017 01017-.ONCP
0x04 lev_id 01 00 00 06 3 level 3
0x08 char[16] AD DE dead unused
0x18 int8 0 0 is loaded; must be 0, set to 1 at runtime
0x19 char[3] AD DE dead unused
0x1C int32 0D 00 00 00 13 array size
First element (black outline)
0x00 char[16] acid particle name (referenced by TRAM particles)
0x10 char[64] env_splash_e01a particle class name
0x50 uint16 FF FF -1 number of the bodypart; see below
0x52 int16 5F 00 95 ignored
0x54 int32 00 00 00 00 0 runtime only
Note
The ONCP is the list of all the particles (motion trails, combo flashes, etc) that will be available for the ONCC that links to it.
Nothing bad happens if an ONCC doesn't find a particle required by an animation, you just get a warning at the console.
However, AE's glass-breaking animations will give you a lot of warnings without the right ONCP (basically for all combat moves, not just flashy ones).
Bodypart number
  • 0-19 - this is a super particle attached to the specified bodypart when the character has daodan powers; the particle name must start with super for this to work; particle events are as follows:
    • particle is "create"d (if absent) and "start"ed when entering overpower while the character is "active";
    • particle is "stop"ped when overpower runs out;
    • particle is killed (either is deleted or "die"s on its own) when/if the character goes "inactive".
  • 0xFFFF - the particle is attached by an animation (the animation specifies the bodypart); particle events are as follows:
    • the animation can "create" multiple instances of a particle as necessary (one per bone involved), at the start of the animation;
    • particle is "start"ed and "stop"ped according to the frames specified in TRAM;
    • particle is killed at the end of the animation
  • 0x8000 - the particle is attached by an animation (the animation specifies the bodypart) and it also generates a Self_Damage_Killed impact (user by back breaking animations); particle event rules are same as for 0xFFFF


ONI BINARY DATA
ONCC << Other file types >> ONCV
ONCP : Oni Character Particle Array
Character file