Jump to content

XML:ONCV: Difference between revisions

1,475 bytes added ,  7 December 2023
m
linked to new difficulty mode article
(Created page with '=ONCV: character variant= This file is used to create random characters <u>and</u> harder character variants on game difficulty level hard. : Every character in [[OBD:BINA/OBJC/...')
 
m (linked to new difficulty mode article)
 
(13 intermediate revisions by 3 users not shown)
Line 1: Line 1:
=ONCV: character variant=
{{XML_File_Header | prev=ONCC | type=ONCV | next=ONGS | name=Oni Character Variant}}
This file is used to create random characters <u>and</u> harder character variants on game difficulty level hard.


: Every character in [[OBD:BINA/OBJC/CHAR|BINACJBOCharacter]] can have a flag for shapeshifting* into a random** ONCC.
==General information==
: This doesn't effect BINACJBOCharacter properties: the character will keep his/her name, melee profile, drop items, etc..
* The XML on this page is based on OniSplit '''v0.9.61.0'''.
: * The XML flag is named "RandomCostume" and must be set in [[OBD:BINA/OBJC/CHAR|CHAR]].
* '''ONCV*.oni''' files are global. (They can be found in AE/AEInstaller/vanilla/level0_Final.dat.)
: ** The actual ONCC is chosen from all ONCC linking to the ONCV (It's like they create a pool for randomness.)
* This file is used to create randomized appearances for a character <u>and</u> to spawn harder character variants on the Hard [[Difficulty modes|difficulty level]]. Every character in the [[XML:BINA/OBJC/CHAR|BINACJBOCharacter]] can have a flag set (RandomCostume) which allows  random selection of an ONCC from the pool formed by links from the ONCCs to a particular ONCV.
: This doesn't affect BINACJBOCharacter properties: the character will keep his/her name, melee profile, drop items, etc.
* New characters with only one costume should use ONCVany.
* An ONCC referring to a missing ONCV will crash the game. (If you introduce a new ONCV, you must also update [[XML:ONVL|ONVL]].)
* It is also used by [[XML:BINA/SABD]] to identify which character a set of animation sounds applies to. (Looks like only BINADBASKonoko and BINADBASAny have actual content. The rest are links.)


==Examples==
In ONCVelite_easy.xml, we see that characters in the Elite Striker (easy) class upgrade to the medium variant on Hard difficulty:


'''example'''
<?xml version="1.0" encoding="utf-8"?>
<Oni>
    <ONCV id="0">
        <ParentVariant>ONCVelite</ParentVariant>
        <CharacterClass>elite_easy</CharacterClass>
        <CharacterClassHard>elite_med</CharacterClassHard>
    </ONCV>
</Oni>


Motoko is her own character class, and doesn't change her appearance on difficulty level "hard".
The <ParentVariant> is how the pool of variants is constructed. The Elite Striker (easy) has three variants in appearance, described by ONCCelite_easy_1, ONCCelite_easy_2 and ONCCelite_easy_3. Each of these has a Variant tag set to "ONCVelite_easy". When Oni spawns an easy Elite Striker, it looks at all the ONCCs linking to this ONCV and picks one at random.
 
In ONCVbarabus.xml, we can see that the boss character Barabas doesn't use the Hard difficulty upgrade feature, since there is only one Barabas:


  <?xml version="1.0" encoding="utf-8"?>
  <?xml version="1.0" encoding="utf-8"?>
  <Oni Version="0.9.27.0">
  <Oni>
     <Instance id="0" type="ONCV" name="motoko">
     <ONCV id="0">
         <ParentVariant>ONCVany</ParentVariant>
         <ParentVariant>ONCVstriker</ParentVariant>
         <CharacterClass>motoko</CharacterClass>
         <CharacterClass>barabus</CharacterClass>
         <CharacterClassHard></CharacterClassHard>
         <CharacterClassHard></CharacterClassHard>
     </Instance>
     </ONCV>
  </Oni>
  </Oni>
Since the ONCC for Barabas has <ParentVariant> "ONCVbarabus", and no other ONCC does, there is only one possible appearance for Barabas when he spawns in levels.
{{XML}}