XML:BINA/ONIE
BINA/ONIE: impact effects
XML notes
- More than one particle possible in particle part.
- Location #5: particle is fixed to character if origin is particle-character collision, not fixed if origin is character-character collision*. (* example: look up plasma shot "w3_phr_x02" and add it in particle section of <Impact Name="Kick_Hit">)
<div class="NavFrame collapsed" style="width:
<Orientation>0</Orientation> <Location>0</Location>
<Orientation>0</Orientation> <Location>4</Location> <Decal1>false</Decal1> <Decal2>true</Decal2>
<Orientation>3</Orientation> <Location>1</Location> <Offset>0.2</Offset>
<Orientation>0</Orientation> <Location>1</Location> <Offset>-1</Offset>
">
Visual guides: weapon, melee, environment
Note about philosophy in here:
- These visual guides don't claim be hundred percent right in technical way. I can't look into engine. But they should give a good hint which files are worth to care about and how to debug a mistake: going through all important files, e.g. Could it be that my new texture is not registered in TMBD?
- However, if you think you should add information or shape this in a more accurate way then do it. =)
overview of involved files when modding ONIE in relation to weapons | |||
if weapon shall have impact effect on environment | if weapon shall have impact effect on characters | ||
|
|
overview of involved files when modding ONIE in relation to animations | |||
special attack | normal attack | ||
ONCC(ONIA) holds special attack modifier information (Any/Light/Medium/Heavy) for ONIE. |
Main difference is that ONIA is not used here but CBPI. Hurt sounds: So far, I'm not sure how hurt sounds (Light/Medium/Heavy) are chosen to be played. |
overview of involved files when modding ONIE in relation to characters | ||
if character hits ground | something left ? | |
For example, this is used when running around. Every step will trigger a step sound, different to ground's material: dirt, snow, metal, etc.. |
ONCC holds impact modifier information (Any/Light/Medium/Heavy) for ONIE.
|
examples
Particle - Character
Extra damage for head hits
Okay, here's a beta. w1_tap and w2_sap deals additional damage, amount depends on material "head"/"helmet". Feel free to extend/tweak/criticize.
damage overview:
w1_tap
- helmet: 4-5 damage; 0.6-1.7 knockback
- head: 8-10 damage; 1.7-2.8 knockback
w2_sap
- helmet: 2-3 damage; 0.3-0.8 knockback
- head: 4-5 damage; 0.8-1.4 knockback
basic modifications / new files:
MtrlHelmet.xml <?xml version="1.0" encoding="utf-8"?> <Oni Version="0.9.37.0"> <Instance id="0" type="Mtrl"> <ParentMaterial>MtrlArmor</ParentMaterial> </Instance> </Oni> ------------------------------------------------------------------------ MtrlHead.xml <?xml version="1.0" encoding="utf-8"?> <Oni Version="0.9.37.0"> <Instance id="0" type="Mtrl"> <ParentMaterial>MtrlFlesh</ParentMaterial> </Instance> </Oni> ------------------------------------------------------------------------ ONCCelite_hard_01.xml (Helmet is registered in eleventh link) [...] <Instance id="3" type="CBPM"> <Materials> [...] <Link>MtrlHelmet</Link> [...] [...] ------------------------------------------------------------------------ BINA3RAPhitheadW2_e01.xml [...] <Events> <HitCharacter> <DamageChar> <Damage> <Random Min="4" Max="5" /> </Damage> <StunDamage>0</StunDamage> <KnockBack> <Random Min="0.8" Max="1.4" /> </KnockBack> <DamageType>0</DamageType> <SelfImmune>1</SelfImmune> </DamageChar> <Die /> </HitCharacter> <Create> <FindAttractor> <DelayTime>0.1</DelayTime> </FindAttractor> <AttractHoming> <TurnSpeed>400</TurnSpeed> <PredictPosition>10</PredictPosition> <HorizontalOnly>0</HorizontalOnly> </AttractHoming> </Create> </Events> [...] ------------------------------------------------------------------------ BINA3RAPhithead_e01.xml, BINA3RAPhithelmet_e01.xml, BINA3RAPhithelmetW2_e01.xml similar to above ------------------------------------------------------------------------ BINAEINOimpact_effects.xml <?xml version="1.0" encoding="utf-8"?> <Oni Version="0.9.37.0"> <ImpactEffects> [...] <Impact Name="w1_tap"> [...] <Material Name="Helmet"> <ImpactEffect> <Component>Impact</Component> <Modifier>Any</Modifier> <Sound> <Name>ap_hit_hard</Name> <AICanHear>false</AICanHear> <AISoundType>0</AISoundType> <AISoundRadius>0</AISoundRadius> </Sound> <Particles> <Particle> <Name>hithelmet_e01</Name> <Orientation>0</Orientation> <Location>0</Location> </Particle> </Particles> </ImpactEffect> </Material> <Material Name="Head"> <ImpactEffect> <Component>Impact</Component> <Modifier>Any</Modifier> <Sound> <Name>ap_hit_body</Name> <AICanHear>false</AICanHear> <AISoundType>0</AISoundType> <AISoundRadius>0</AISoundRadius> </Sound> <Particles> <Particle> <Name>hithead_e01</Name> <Orientation>0</Orientation> <Location>0</Location> </Particle> </Particles> </ImpactEffect> </Material> [...]
Mod ideas
- How about melee attacks dealing more damage on head/helmet?
- Could be more easily\accurately done with an attached particle on the hit_head animations. Gumby 03:54, 10 May 2009 (UTC)
- For example, Ninja's PPK looks like it doesn't care whether it hit the head or an arm. It just has <HitAnimationType>HitHead</HitAnimationType> and this is played on target as long as PPK wasn't blocked, right? :/ Paradox-01 13:41, 10 May 2009 (UTC)
- D'oh. Yeah, forgot. Lazy\overworked Oni devs. >_< Hmm. Well we could almost implement locational attacks, except for a few problems. The most major one being the blue shield effect. ;) Gumby 00:54, 11 May 2009 (UTC)
- For example, Ninja's PPK looks like it doesn't care whether it hit the head or an arm. It just has <HitAnimationType>HitHead</HitAnimationType> and this is played on target as long as PPK wasn't blocked, right? :/ Paradox-01 13:41, 10 May 2009 (UTC)
- Footprints in snow. Should be possible through character-environment collision plus decals or particle which becomes fixed to the ground.
- Not quite. What would need to be done is have a particle attached to the character by spawning them and doing a single frame (basically 0, if interpolated, i think) animation to activate some attached particles that spawn decals. :)
- I think I know what you mean. The decal is every time dropped in first TRAM frame. An alternative might be to set CollideWithWalls=true in attached particle and use HitWall event to drop the decal. Paradox-01 13:41, 10 May 2009 (UTC)
- No, the decal emitter is attached in the frame of a special animation that spawns it. The alternative version is the easiest way to go, and won't get buggered by other things.Gumby 00:54, 11 May 2009 (UTC)
- I think I know what you mean. The decal is every time dropped in first TRAM frame. An alternative might be to set CollideWithWalls=true in attached particle and use HitWall event to drop the decal. Paradox-01 13:41, 10 May 2009 (UTC)
- We could also have this activate cold breath effects. :) The former would only be good if we had an actual snow level (or dirt :P), but the latter would be good for Compound. Gumby 03:54, 10 May 2009 (UTC)
- Yeah, that would be fun. ^^ Paradox-01 13:41, 10 May 2009 (UTC)
- Guns doing more damage to flesh\cloth than armour\metal.
- I had the same thought as you a while ago, when we first had ONIE modding unlocked for us. However, I think a better application might be for guns to deal less damage to armour than to flesh. In fact, all the neccessary materials are already in place, there are seperate effects for bullet hits already. :) Gumby 03:54, 10 May 2009 (UTC)
- Okay, I will add damage dealing particle for flesh/cloth material around next week. Paradox-01 13:41, 10 May 2009 (UTC)
- Coolio. Make sure to upload your files somewhere, or catch me on Yahoo. I'll include it as a package in the next AE. (Not that I don't know how to do it myself, but the installer is taking up all my Oni time atm...) Gumby 00:54, 11 May 2009 (UTC)
- Okay, I will add damage dealing particle for flesh/cloth material around next week. Paradox-01 13:41, 10 May 2009 (UTC)