OBD:ONCV: Difference between revisions

From OniGalore
Jump to navigation Jump to search
mNo edit summary
m (copy-edit)
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File types]] >> ONCV
{{OBD_File_Header | type=ONCV | prev=ONCP | next=ONFA | name=Oni Character Variant | family=Character | align=center}}


{|align=center
!<FONT SIZE=5>ONCV : Oni Character Variant</FONT>
|-
![[OBD:File types/Character|Character file]]
|}


;Note 1:ONCV files are empty, except those of level 0.
All ONCV files are 0 byte files. That means that Oni takes the information out of the ONCV files of level 0.
:So when an ONCC links to an ONCV, a global version (that in level 0) is in fact used


;Note 2:The ONCV define the "harder" characters spawned on Hard (if enabled in the BINA)
:Thus, if you take e.g. 01692-ninja_med.ONCV and replace "ninja_hard" with "striker_hard"
:(not forgetting about the null char), you'll have a surprise at the start of Rooftops :
:in fact, anywhere where you used to have a blue Ninja on Easy and Normal,
:and a red one on Hard, you'll have a red ''Striker'' on Hard. Nice, eh?


;Note 3:The ONCV could also be used (indirectly) for the random skin selection
:(e.g. spawning striker_easy_1, striker_easy_2 or striker_easy_3, at random).


;Note 4:The inter-ONCV linking doesn't seem very useful indeed
[[Image:oncv_all.gif]]
:"01689-konoko.ONCV links to 01666-any.ONCV, which links into nothingness."


;Example:'''01689-konoko.ONCV''' from '''level0_Final'''


 
{{Table}}
http://www6.fh-eberswalde.de/user/dkriesch/onistuff/images/oncv_all.gif
{{OBDth}}
{{OBDtr| 0x00 | res_id  |FF0000| 01 99 06 00 | 1689  | 01689-konoko.ONCV }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 00 | 0    | level 0 }}
{{OBDtr| 0x08 | link    |FFC8C8| 01 82 06 00 | 1666  | link to 01666-any.ONCV }}
{{OBDtr2|0x0C | char[32] |FFFFC8| Konoko              | character type name; Oni spawns this type when you start the game}}
{{OBDtr2|0x2C | char[32] |C8FFC8| unused              | character type name; if the "upgrade difficulty" bit in the [[OBD:BINA/OBJC/CHAR|BINA/CHAR]] is set, Oni spawns this type if you play on Hard }}
{{OBDtr| 0x4C | char[20] |C8FFFF| AD DE      | dead  | unused }}
|}




{| BORDER=1 WIDTH=100% CELLPADDING=2 CELLSPACING=0
;Note 1: The ONCVs are used for random [[OBD:ONCC|ONCC]] selection (e.g. spawning striker_easy_1, striker_easy_2 or striker_easy_3, at random).
|- ALIGN=CENTER BGCOLOR="#FFDDBB"
:If character variants are enabled (in [[OBD:BINA/OBJC/CHAR|BINA/CHAR]]):
!Offset
:#The ONCC specified in BINA/CHAR is selected.
!Hex
:#The ONCV link in that ONCC is looked up.
!Translation
:#The actual ONCC is chosen at random from all ONCCs linking to the ONCV.
!Meaning
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| 0x00
| BGCOLOR="#FF0000" | 01 99 06 00
| 1689
| ALIGN=LEFT | 01689-konoko.ONCV
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| 0x04
| BGCOLOR="#FFFF00" | 01 00 00 00
| 0
| ALIGN=LEFT | level 0
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| 0x08
| BGCOLOR="#FFC8C8" | 01 82 06 00
| 1666
| ALIGN=LEFT | link to 01666-any.ONCV
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| 0x0C
| BGCOLOR="#FFFFC8" COLSPAN=2 | <TT>Konoko</TT><br>+ null char + blank filler
| ALIGN=LEFT | basic ("Easy" and "Normal") character type
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| 0x2C
| BGCOLOR="#C8FFC8" COLSPAN=2 | null char + blank filler
| ALIGN=LEFT | "Hard" character type (none here)
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| 0x4C
| BGCOLOR="#C8FFFF" | AD DE
| dead
| ALIGN=LEFT | blank filler (fills the file up to a 32 byte multiple)
|}


In order to experiment with this, you have to change the ONCV links in several ONCCs. For example:
:Make '''ONCCstriker_easy_1''', '''ONCCstriker_easy_2''' and '''ONCstriker_easy_3''' link to '''ONCVstriker_hard''' and vice versa:
:Make '''ONCCstriker_hard_1''', '''ONCCstriker_hard_2''' and '''ONCCstriker_hard_3''' link to '''ONCVstriker_easy'''.
Then you won't notice any change for those spawns where the character variant was disabled, and for those where it's enabled, you'll get hard Strikers instead of easy ones and vice versa.


;Note 2: The ONCV defines the "harder" characters spawned on Hard mode (if enabled in BINA/CHAR). If "harder character variants" are enabled (in BINA/CHAR):
:#The ONCC specified in BINA/CHAR is selected.
:#The ONCV link in that ONCC is looked up.
:#The "harder" ONCV name in that ONCV is looked up.
:#The actual ONCC is chosen at random from all ONCCs linking to that new ONCV.
:#In case there is no matching ONCC, the ONCC in step 1 is kept.
Thus, if you take e.g. '''ONCVninja_med''' and replace the string "ninja_hard" with "striker_hard" (not forgetting about the null char), you'll have a surprise at the start of Rooftops. In fact, anywhere where you used to have a blue Ninja on Easy and Normal,
and a red one on Hard, you'll have a red ''Striker'' on Hard. Nice, eh? (If you want a ''real'' challenge, just try "Konoko"....)


;Note 3: ONCVkonoko links to ONCVany, which links to nothing.
:Inter-ONCV linking can serve the same purpose: in Notes 1.3 and 2.4 above, any ONCC linking to the ONCV via another ONCV could also be selected.
:In order to play with that, however, you have to rename a level's ONCV, because originally only the more specific ones are included (not ONCVstriker or ONCVany).


<HR>
<CENTER>[[OBD:ONCP|<==]] <B>ONCV File</B> [[OBD:ONFA|==>]]</CENTER>
<HR>


{{OBD_File_Footer | type=ONCV | prev=ONCP | next=ONFA | name=Oni Character Variant | family=Character}}


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

Latest revision as of 20:35, 7 December 2023

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


All ONCV files are 0 byte files. That means that Oni takes the information out of the ONCV files of level 0.


Oncv all.gif


Offset Type Raw Hex Value Description
0x00 res_id 01 99 06 00 1689 01689-konoko.ONCV
0x04 lev_id 01 00 00 00 0 level 0
0x08 link 01 82 06 00 1666 link to 01666-any.ONCV
0x0C char[32] Konoko character type name; Oni spawns this type when you start the game
0x2C char[32] unused character type name; if the "upgrade difficulty" bit in the BINA/CHAR is set, Oni spawns this type if you play on Hard
0x4C char[20] AD DE dead unused


Note 1
The ONCVs are used for random ONCC selection (e.g. spawning striker_easy_1, striker_easy_2 or striker_easy_3, at random).
If character variants are enabled (in BINA/CHAR):
  1. The ONCC specified in BINA/CHAR is selected.
  2. The ONCV link in that ONCC is looked up.
  3. The actual ONCC is chosen at random from all ONCCs linking to the ONCV.

In order to experiment with this, you have to change the ONCV links in several ONCCs. For example:

Make ONCCstriker_easy_1, ONCCstriker_easy_2 and ONCstriker_easy_3 link to ONCVstriker_hard and vice versa:
Make ONCCstriker_hard_1, ONCCstriker_hard_2 and ONCCstriker_hard_3 link to ONCVstriker_easy.

Then you won't notice any change for those spawns where the character variant was disabled, and for those where it's enabled, you'll get hard Strikers instead of easy ones and vice versa.

Note 2
The ONCV defines the "harder" characters spawned on Hard mode (if enabled in BINA/CHAR). If "harder character variants" are enabled (in BINA/CHAR):
  1. The ONCC specified in BINA/CHAR is selected.
  2. The ONCV link in that ONCC is looked up.
  3. The "harder" ONCV name in that ONCV is looked up.
  4. The actual ONCC is chosen at random from all ONCCs linking to that new ONCV.
  5. In case there is no matching ONCC, the ONCC in step 1 is kept.

Thus, if you take e.g. ONCVninja_med and replace the string "ninja_hard" with "striker_hard" (not forgetting about the null char), you'll have a surprise at the start of Rooftops. In fact, anywhere where you used to have a blue Ninja on Easy and Normal, and a red one on Hard, you'll have a red Striker on Hard. Nice, eh? (If you want a real challenge, just try "Konoko"....)

Note 3
ONCVkonoko links to ONCVany, which links to nothing.
Inter-ONCV linking can serve the same purpose: in Notes 1.3 and 2.4 above, any ONCC linking to the ONCV via another ONCV could also be selected.
In order to play with that, however, you have to rename a level's ONCV, because originally only the more specific ones are included (not ONCVstriker or ONCVany).


ONI BINARY DATA
ONCP << Other file types >> ONFA
ONCV : Oni Character Variant
Character file