OBD:ONCV: Difference between revisions

From OniGalore
Jump to navigation Jump to search
mNo edit summary
m (fixing up)
Line 1: Line 1:
[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File types]] >> ONCV
{{OBD_File_Header|align=right|type=ONCV|prev=ONCP|next=ONFA|name=Oni Character Variant|family=Character|onistuff=oncv}}
 
{|align=center
!<FONT SIZE=5>ONCV : Oni Character Variant</FONT>
|-
![[OBD:File types/Character|Character file]]
|}


;Note 0:ONCV files are [[OBD:File types/Empty|empty]], except those of level 0.
;Note 0:ONCV files are [[OBD:File types/Empty|empty]], except those of level 0.
Line 12: Line 6:
;Note 1:The ONCV are used for random [[OBD:ONCC|ONCC]] selection
;Note 1:The ONCV are used for random [[OBD:ONCC|ONCC]] selection
:(e.g. spawning striker_easy_1, striker_easy_2 or striker_easy_3, at random).
:(e.g. spawning striker_easy_1, striker_easy_2 or striker_easy_3, at random).
:If character variants are enabled (in [[OBD:BINA/Character|Character.BINA]]) :
:If character variants are enabled (in [[OBD:BINA/CHAR|Character.BINA]]) :
:#the ONCC specified in Character.BINA is selected
:#the ONCC specified in Character.BINA is selected
:#the ONCV link in that ONCC is looked up
:#the ONCV link in that ONCC is looked up
:#the actual ONCC is chosen at random from all ONCC linking to the ONCV
:#the actual ONCC is chosen at random from all ONCC linking to the ONCV
In order to experiment with this, you have to change the ONCV links in several ONCC. For example, make striker_easy_1.ONCC, striker_easy_2.ONCC and striker_easy_3.ONCC link to striker_hard.ONCV, and vice-versa (make striker_hard_1.ONCC, striker_hard_2.ONCC and striker_hard_3.ONCC link to striker_easy.ONCV). 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.
In order to experiment with this, you have to change the ONCV links in several ONCC. For example :
:make '''striker_easy_1.ONCC''', '''striker_easy_2.ONCC''' and '''striker_easy_3.ONCC''' link to '''striker_hard.ONCV'''
and vice-versa :
:make '''striker_hard_1.ONCC''', '''striker_hard_2.ONCC''' and '''striker_hard_3.ONCC''' link to '''striker_easy.ONCV'''
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 define the "harder" characters spawned on Hard (if enabled in Character.BINA)
;Note 2:The ONCV define the "harder" characters spawned on Hard (if enabled in Character.BINA)
:If "harder character variants" are enabled (in [[OBD:BINA/Character|Character.BINA]]) :
:If "harder character variants" are enabled (in [[OBD:BINA/CHAR|Character.BINA]]) :
:#the ONCC specified in Character.BINA is selected
:#the ONCC specified in Character.BINA is selected
:#the ONCV link in that ONCC is looked up
:#the ONCV link in that ONCC is looked up
Line 25: Line 24:
:#the actual ONCC is chosen at random from all ONCC linking to that new ONCV
:#the actual ONCC is chosen at random from all ONCC linking to that new ONCV
:#in case there is no matching ONCC, the ONCC in step 1 is kept.
:#in case there is no matching ONCC, the ONCC in step 1 is kept.
Thus, if you take e.g. 01692-ninja_med.ONCV and replace "ninja_hard" with "striker_hard"
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 :
(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,
in fact, anywhere where you used to have a blue Ninja on Easy and Normal,
Line 42: Line 41:




{| BORDER=1 WIDTH=100% CELLPADDING=2 CELLSPACING=0
{|{{OBDtable}}
|- ALIGN=CENTER BGCOLOR="#FFDDBB"
|align=center|
{|{{OBDtable}}
|-BGCOLOR="#FFDDBB"
!Offset
!Offset
!Hex
!Hex
!Translation
!Translation
!Meaning
!Meaning
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|-
| 0x00
| 0x00
| BGCOLOR="#FF0000" | 01 99 06 00
| BGCOLOR="#FF0000" | 01 99 06 00
| 1689
| 1689
| ALIGN=LEFT | 01689-konoko.ONCV
| ALIGN=LEFT | 01689-konoko.ONCV
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|-
| 0x04
| 0x04
| BGCOLOR="#FFFF00" | 01 00 00 00
| BGCOLOR="#FFFF00" | 01 00 00 00
| 0
| 0
| ALIGN=LEFT | level 0
| ALIGN=LEFT | level 0
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|-
| 0x08
| 0x08
| BGCOLOR="#FFC8C8" | 01 82 06 00
| BGCOLOR="#FFC8C8" | 01 82 06 00
| 1666
| 1666
| ALIGN=LEFT | link to 01666-any.ONCV
| ALIGN=LEFT | link to 01666-any.ONCV
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|-
| 0x0C
| 0x0C
| BGCOLOR="#FFFFC8" COLSPAN=2 | <TT>Konoko</TT><br>+ null char + blank filler
| BGCOLOR="#FFFFC8" COLSPAN=2 | <TT>Konoko</TT><br>+ null char + blank filler
| ALIGN=LEFT | basic ("Easy" and "Normal") character type
| ALIGN=LEFT | basic ("Easy" and "Normal") character type
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|-
| 0x2C
| 0x2C
| BGCOLOR="#C8FFC8" COLSPAN=2 | null char + blank filler
| BGCOLOR="#C8FFC8" COLSPAN=2 | null char + blank filler
| ALIGN=LEFT | "Hard" character type (none here)
| ALIGN=LEFT | "Hard" character type (none here)
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
|-
| 0x4C
| 0x4C
| BGCOLOR="#C8FFFF" | AD DE
| BGCOLOR="#C8FFFF" | AD DE
| dead
| dead
| ALIGN=LEFT | blank filler (fills the file up to a 32 byte multiple)
| ALIGN=LEFT | blank filler (fills the file up to a 32 byte multiple)
|}
|}
|}




 
----
 
----
<HR>
{{OBD_File_Footer|align=right|type=ONCV|prev=ONCP|next=ONFA|name=Oni Character Variant|family=Character|onistuff=oncv}}
<CENTER>[[OBD:ONCP|<==]] <B>ONCV File</B> [[OBD:ONFA|==>]]</CENTER>
<HR>
 
 
[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File types]] >> ONCV

Revision as of 12:26, 31 October 2006

ONI BINARY DATA
ONCP << Other file types >> ONFA
ONCV : Oni Character Variant
switch to XML:ONCV page
Overview @ Oni Stuff
OBD.png
Note 0
ONCV files are empty, except those of level 0.
An overview of global (level 0) ONCV follows.
Note 1
The ONCV 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 Character.BINA) :
  1. the ONCC specified in Character.BINA is selected
  2. the ONCV link in that ONCC is looked up
  3. the actual ONCC is chosen at random from all ONCC linking to the ONCV

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

make striker_easy_1.ONCC, striker_easy_2.ONCC and striker_easy_3.ONCC link to striker_hard.ONCV

and vice-versa :

make striker_hard_1.ONCC, striker_hard_2.ONCC and striker_hard_3.ONCC link to striker_easy.ONCV

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 define the "harder" characters spawned on Hard (if enabled in Character.BINA)
If "harder character variants" are enabled (in Character.BINA) :
  1. the ONCC specified in Character.BINA 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 ONCC 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. 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? (if you want a real challenge, just try "Konoko"...)

Note 3
"01689-konoko.ONCV links to 01666-any.ONCV, which links into nothingness."
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 less general ones are included (not striker.ONCV or any.ONCV)
Example
01689-konoko.ONCV from level0_Final


oncv_all.gif


Offset Hex Translation Meaning
0x00 01 99 06 00 1689 01689-konoko.ONCV
0x04 01 00 00 00 0 level 0
0x08 01 82 06 00 1666 link to 01666-any.ONCV
0x0C Konoko
+ null char + blank filler
basic ("Easy" and "Normal") character type
0x2C null char + blank filler "Hard" character type (none here)
0x4C AD DE dead blank filler (fills the file up to a 32 byte multiple)




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