XML:Impt

From OniGalore
Revision as of 17:38, 18 March 2021 by Iritscen (talk | contribs) (more copy-editing)
Impt : Impact
XML modding tips
See HERE to start learning about XML modding.
See HERE if you are searching for information on how to handle object coordinates.
See HERE for some typical modding errors and their causes.
XML.png
XML

IPge << Other file types >> M3GM

switch to OBD page

General information

  • The XML on this page is based on OniSplit v0.9.61.0.
  • Impt*.oni files are global (they can be found in AE/AEInstaller/vanilla/level0_Final.dat).
  • They are used by CBPI, ONIA and ONIE.
  • Impact is only specified by the file name.
  • Every impact has a parent impact to organize effects in ONIE.

XML structure

For example, ImptBar_Super_Kick.xml:

<?xml version="1.0" encoding="utf-8"?>
<Oni>
   <Impt id="0">
       <ParentImpact>ImptKick_Hit</ParentImpact>
   </Impt>
</Oni>

Some Impts are used to detect the regular character-environment collision which comes from a character's movement (see ONCC). It looks like this:

       <ImpactModifierName>Heavy</ImpactModifierName>
       <Impacts>
           <ONCCImpact>
               <Name>Footstep_Walk</Name>
           </ONCCImpact>
           [...]
       </Impacts>

Flags allowed for <ImpactModifierName>:

Heavy
Medium
Light

Impact tree

If an impact (effect) links to an empty node, it will go up the hierarchy until it finds content and matching conditions.

Default
 |
 +--Blunt (groups non-damaging env/OBJC collisions, env/PAR3 (particle) collisions, and especially env/CHAR collisions)
 |   |
 |   +--Fall_Slide (used by? TRAM<ToState>RunSlide : ONCC<ONCCImpact><Name>Fall_Slide</Name></ONCCImpact>)
 |   +--Hit (Groups objects and particles attracted by gravity?)
 |   |   |
 |   |   +--Fall
 |   |   |   |
 |   |   |   +--Fall_Knockdown
 |   |   |   +--Fall_Land
 |   |   |       |
 |   |   |       +--Fall_LandHard
 |   |   |
 |   |   +--Fall_Object
 |   |   |   |
 |   |   |   +--Powerup
 |   |   |   +--Weapon
 |   |   |
 |   |   +--Shrapnel (used by: BINA3RAPw5_sbg_f05, BINA3RAPw11_ba1_f03)
 |   |   +--Weapon_Bounce (used by: BINA3RAPw5_sbg_p01, BINA3RAPw9_scr_p08, BINA3RAPw9_scr_p01, BINA3RAPw10_sni_p01)
 |   |
 |   +--Footstep
 |       |
 |       +--Footstep_Run
 |       |   |
 |       |   +--Footstep_RunMain
 |       |   +--Footstep_RunSprint
 |       |   +--Footstep_RunStop
 |       |   +--Footstep_Shuffle
 |       |       |
 |       |       +--Footstep_RunStart
 |       |       +--Footstep_SingleStep
 |       |       +--Footstep_Turn
 |       |
 |       +--Footstep_Walk
 |       |   |
 |       |   +--Footstep_WalkMain
 |       |   +--Footstep_WalkStop
 |       |   +--Footstep_Crouch
 |       |
 |       +--Footstep_Zombie
 |       +--Footstep_IronDemon
 |           |
 |           +--Footstep_IronDemon_Turn
 |
 +--Damaging (Meant to group items by damage type, but is unused because particles hold the information about damage types?)
 |   |
 |   +--Blast (Is this used by any instance? Let's check explosive particles: MadBomber, SBG, WMC, ShinBomb)
 |   +--Projectile (Groups ONWC names by ONWC flags ??? [0x00/0x01 = UsesAmmo?], UsesCells, Explosive)
 |       |
 |       +--Bullet
 |       |   |
 |       |   +--w1_tap
 |       |   +--w2_sap
 |       |   +--w7_scc
 |       |   +--w8_mbo
 |       |
 |       +--Energy
 |       |   |
 |       |   +--w3_phr
 |       |   +--w4_psm
 |       |   +--w6_vdg
 |       |   +--w10_sni
 |       |   +--w12_ba2
 |       |   +--w13_muro
 |       |   +--w14_muro
 |       |
 |       +--Grenade
 |           |
 |           +--w5_sbg
 |           +--w9_scr (Is actually an energy weapon (ONWC flag "UsesCells"), wrong cat.?)
 |           +--w11_ba1
 |
 +--Debris (FX ?)
 |   |
 |   +--Casing
 |   +--Glass_Shard
 |   +--Spark
 |
 +--Melee (H2H attack impacts)
     |
     +--Head (head nut, huh?)
     |   |
     |   +--Head_Blocked
     |   +--Head_Hit
     |   +--Head_Killed
     |
     +--Kick
     |   |
     |   +--Kick_Blocked
     |   +--Kick_Hit (Groups ONIA links. Redundant of ONCP since ONIA's <Modifier> is always "Any". Or you could think of it as "future-proof" if you add more (actual light and heavy) characters.))
     |   |   |
     |   |   +--Bar_Super_Kick
     |   |   +--Com_Super_Kick
     |   |   +--Eli_Super_Kick
     |   |   +--Gri_Super_Kick
     |   |   +--Kon_Super_Kick
     |   |   +--Mur_Super_Kick
     |   |   +--Nin_Super_Kick
     |   |   +--Red_Super_Kick
     |   |   +--Str_Super_Kick
     |   |   +--Swt_Super_Kick
     |   |   +--Tan_Super_Kick
     |   |   +--Tcl_Super_Kick
     |   |   +--Thu_Super_Kick
     |   |
     |   +--Kick_Killed
     |
     +--Punch
     |   |
     |   +--Punch_Blocked
     |   +--Punch_Hit (Groups ONIA links. Redundant of ONCP since ONIA's <Modifier> is always "Any". Or you could think of it as "future-proof" if you add more (actual light and heavy) characters.)
     |   |   |
     |   |   +--Bar_Super_Punch
     |   |   +--Com_Super_Punch
     |   |   +--Eli_Super_Punch
     |   |   +--Gri_Super_Punch
     |   |   +--Kon_Super_Punch
     |   |   +--Mur_Super_Punch
     |   |   +--Nin_Super_Punch
     |   |   +--Red_Super_Punch
     |   |   +--Str_Super_Punch
     |   |   +--Swt_Super_Punch
     |   |   +--Tan_Super_Punch
     |   |   +--Tcl_Super_Punch
     |   |   +--Thu_Super_Punch
     |   |
     |   +--Punch_Killed
     |
     +--Self_Damage
     +--Self_Damage_Killed