8,315
edits
Paradox-01 (talk | contribs) (How to spawn geometry with collision data?) |
Paradox-01 (talk | contribs) (so OBOA is actually the physics.xml eh ?) |
||
Line 24: | Line 24: | ||
===xml section=== | ===xml section=== | ||
For praxis information see: "Creating the Lair - A level tutorial" link. | |||
ONLV = Oni Level file | ONLV = Oni Level file | ||
file structure | file structure | ||
Line 49: | Line 47: | ||
: ... | : ... | ||
* CRSA instance | * CRSA instance | ||
: ... | |||
* M3GA | |||
: ... | |||
* IDXA | |||
: ... | : ... | ||
'''flags in the <OBOAObject> section''' | |||
: <Flags> | |||
:: <!-- None --> | |||
:: InUse | |||
:: NoCollision | |||
:: NoGravity | |||
:: FaceCollision | |||
: <PhysicsType> | |||
:: <!-- None --> | |||
:: Static | |||
:: Linear | |||
:: Animated | |||
:: Newton | |||
Line 57: | Line 75: | ||
<?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||
<Oni | <Oni> | ||
< | <ONLV id="0"> | ||
<Name>EnvWarehouse</Name> | <Name>EnvWarehouse</Name> | ||
<Environment>AKEVEnvWarehouse</Environment> | <Environment>AKEVEnvWarehouse</Environment> | ||
Line 67: | Line 85: | ||
<Particles>#3</Particles> | <Particles>#3</Particles> | ||
<Corpses>#4</Corpses> | <Corpses>#4</Corpses> | ||
</ | </ONLV> | ||
< | <OBOA id="1"> | ||
<Objects /> | <Objects /> | ||
</ | </OBOA> | ||
< | <ONOA id="2"> | ||
<Elements /> | <Elements /> | ||
</ | </ONOA> | ||
< | <ENVP id="3"> | ||
<Particles /> | <Particles /> | ||
</ | </ENVP> | ||
< | <CRSA id="4"> | ||
<FixedCount>0</FixedCount> | <FixedCount>0</FixedCount> | ||
<UsedCount>0</UsedCount> | <UsedCount>0</UsedCount> | ||
Line 111: | Line 129: | ||
<font color="#FF0000">'''''[...]'''''</font> | <font color="#FF0000">'''''[...]'''''</font> | ||
</Corpses> | </Corpses> | ||
</ | </CRSA> | ||
</Oni> | </Oni> | ||
'''not empty OBOA - example from level 19''' | |||
(exported ONLV files seem to contain 32 empty <OBOAObject> sections) | |||
If I remember correctly this one is only an object for the cutscene. Maybe the real floor(s) (those with collision) can be tracked down with the id used by bsl. | |||
<OBOAObject> | |||
<Geometry>#347</Geometry> | |||
<Animation>OBANDishFloor01</Animation> | |||
<Particle></Particle> | |||
<Flags>InUse</Flags> | |||
<DoorGunkId>0</DoorGunkId> | |||
<DoorId>0</DoorId> | |||
<PhysicsType>Animated</PhysicsType> | |||
<ScriptId>204</ScriptId> | |||
<Position>-183 99.59154 -2501.25</Position> | |||
<Rotation>0.7071067 -1.545431E-08 1.545431E-08 0.7071068</Rotation> | |||
<Scale>1</Scale> | |||
<Transform>1 -4.371139E-08 -5.21253064E-16 0 1.19248806E-08 -1 4.371139E-08 1 1.19248806E-08 -183 99.5815353 -2501.25</Transform> | |||
<Name>object_DishFloor01</Name> | |||
</OBOAObject> | |||
'''not empty ENVP - example from level 19'''' | |||
<ENVPParticle> | |||
<Class>locklight</Class> | |||
<Tag>mainchamber_locklight01</Tag> | |||
<Transform>1 -4.559326E-08 1.35404189E-05 -1.354042E-05 -2.03512554E-05 1 -4.53176945E-08 -1 -2.03512554E-05 -391.790527 58.0480423 -1364.412</Transform> | |||
<DecalScale>1 1</DecalScale> | |||
<Flags></Flags> | |||
</ENVPParticle> | |||
<Transform> - the last 3 values are the position (x, y, z) | |||
edits