| PART : Particle spawn collection |
| |
|---|---|---|
| XML
AKEV << Other file types >> CONS TMBD << Other BINA >> ONIE NEUT << Other OBJC >> PATR |
general information
- The xml code on this page is based on onisplit v0.9.61.0
- BINACJBOParticle.oni is level specific. (It can be found in AE/AEInstaller/vanilla/levelX_Final.dat)
BSL support
following command can kill different particle with same tag at once but only one of each, so don't double spawn
- particle BSL_name kill (kill counts also as die event)
following command reset particle
- particle BSL_name reset
following commands depend on particle events
|
|
| particle BSL_name update | p3_callevent file_name 0 |
| particle BSL_name pulse | p3_callevent file_name 1 |
| particle BSL_name start | p3_callevent file_name 2 |
| particle BSL_name stop | p3_callevent file_name 3 |
| particle BSL_name bgfx_start | p3_callevent file_name 4 |
| particle BSL_name bgfx_stop | p3_callevent file_name 5 |
| particle BSL_name hit_wall | p3_callevent file_name 6 |
| particle BSL_name hit_char | p3_callevent file_name 7 |
| particle BSL_name lifetime | p3_callevent file_name 8 |
| particle BSL_name explode | p3_callevent file_name 9 |
| particle BSL_name brokenlink | p3_callevent file_name 10 |
| particle BSL_name create (create counts also as update event) | p3_callevent file_name 11 |
| particle BSL_name die | p3_callevent file_name 12 |
| particle BSL_name newattractor | p3_callevent file_name 13 |
| particle BSL_name delay_start | p3_callevent file_name 14 |
| particle BSL_name delay_stop | p3_callevent file_name 15 |
note about wannabe-damaging particle
Damaging particles would make characters "flinch" no matter how little the damage. So, particle are responsible for visualizing the danger and a trigger volume for dealing the damage.
particle auto1fire start
### TV inside function
func void fire_damage(string ai_name)
{
dprint fire_hurt_konoko
### ignore the "fire_hurt_konoko"
### all characters get damage because the TV is registered for all teams (255)
### ps: this damage cannot be absorbed by a shield
chr_poison (ai_name, 5, 30, 30);
}
file structure
<?xml version="1.0" encoding="utf-8"?>
<Oni>
<Objects>
[...]
</Objects>
</Oni>
[...] means at least one particle. Paste all particle data into there (this includes <PART Id="..."> and </PART> tag).
example
<PART Id="8463">
<Header>
<Flags></Flags>
<Position>-1050 45 1610</Position>
<Rotation>0 0 0</Rotation>
</Header>
<OSD>
<Class>env_fire9_e01</Class>
<Tag>auto1fire</Tag>
<Flags>13</Flags>
<DecalScale>1 1</DecalScale>
</OSD>
</PART>
tags
- <Flags> : (unknown, usually empty)
- <Position> : (particle is created at this xyz-position)
- <Rotation> : (particle has xyz-rotation (in degrees))
- <Class> : (file name, can have up to 64 characters)
- <Tag> : (name for BSL use, can have up to 48 characters)
- <Flags> :
- NotInitiallyCreated
- <Decal> : (first comes X (horizontal) scaling (float value), then a space, then Y (vertical) scaling (float value); "1" seems to show image in original size which can be rather small in-game if actual decal file uses also a small scale)

