Jump to content

XML:ONLV: Difference between revisions

2,291 bytes added ,  7 October 2012
m
no edit summary
mNo edit summary
mNo edit summary
Line 1: Line 1:
{{finish}}
{{finish}}
{{update}}




Custom levels that have been created so far:
Custom levels that have been created so far:
* [http://oni.bungie.org/community/forum/viewtopic.php?id=2357 Old China]
* [http://oni.bungie.org/community/forum/viewtopic.php?id=1506 Maze]
* [http://oni.bungie.org/community/forum/viewtopic.php?id=1506 Maze]
* [http://oni.bungie.org/community/forum/viewtopic.php?id=1736 Arena]
* [http://oni.bungie.org/community/forum/viewtopic.php?id=1736 Arena]
Line 24: Line 26:


For praxis information see: "Creating the Lair - A level tutorial" link.
For praxis information see: "Creating the Lair - A level tutorial" link.
==Level import==
(This section refers to the last version of onisplit v0.9.68.0, no others.)
Levels can be created with a xml master file. The name of that file determines the BSL folder name (doublecheck this later).
onisplit -create:level onis master.xml
Onisplit can use already created *.oni files inside the classes folder, however not all file types can be used.
Ignored file types:
* CONS
* OBAN
* OFGA
* TXMP
* ?
Allowed file types:
* M3GM
* ?
The xml master file links to other xml file.
'''example of master.xml'''
<?xml version="1.0" encoding="utf-8" ?>
<Oni>
    <Level SharedPath="../classes">
        <Environment>
        <Model>
            <Import>level.dae</Import>
        </Model>
        <Rooms>
            <Import>level_bnv.dae</Import>
        </Rooms>
        <Textures>
                <Import>textures.xml</Import>
        </Textures>
        </Environment>
        <Sky>grimmnight</Sky>
        <Objects>
        <Import>Objects.xml</Import>
        <Import>BINACJBOCharacter.xml</Import>
        <Import>BINACJBOFlag.xml</Import> 
        <Import>BINACJBOTriggerVolume.xml</Import>
        <Import>BINACJBOConsole.xml</Import>
        <Import>BINACJBOFurniture.xml</Import>
        <Import>BINACJBOParticle.xml</Import>
        <Import>BINACJBOPatrol Path.xml</Import>
        <Import>BINACJBOPowerUp.xml</Import>
        <Import>BINACJBOTurret.xml</Import>
        <Import>BINACJBOTrigger.xml</Import>
        <Import>BINACJBOParticle.xml</Import>
        <Import>BINACJBOSound.xml</Import>
        </Objects>
    </Level>
</Oni>
'''example of Objects.xml'''
<?xml version="1.0" encoding="utf-8"?>
<Oni>
    <Physics>
<Object Name="single_heli_rotorblades_center">
                <Geometry>heli_rotorblades</Geometry>
                <Animation>single_heli_rotorblades_center</Animation>
                <Flags>InUse</Flags>
                <Physics>Animated</Physics>
                <ScriptId>1</ScriptId>
                <Position>800 600 2420</Position>
                <Rotation>-0.07206057 0.656310439 -0.06319542 0.7483784</Rotation>
                <Scale>3.69</Scale>
      </Object>
    </Physics>
</Oni>
'''additional information'''
* the import doesn't work with empty skybox tag; <Sky>clear</Sky> helps here (or maybe onisplit just wants a name and doesn't care if the resource really exists?)
* triangle limit: ca. 520.000 (500.000 to be on save side)
* actually this is not about the import but when the triangles are packed too tight then the cam will look at too many of them and glitches appear: the visible GQs limit is ca. 16.000, sooner or later higher numbers will cause render bugs and call BSL message "Exceeded max visible GQs ''number''" (you can decrease the gs_farclipplane_set value to avoid that problem)
* also, keep in mind that characters are visible ''only'' within 4099|4099|4099 and -4099|-4099|-4099 world units
* geometry stops at ca. X=4228|Z=4228 and -4228|-4228 (height not tested)




Line 307: Line 392:
;Impassable
;Impassable
:Probably used by forcefields and end of level boundaries (like in state archive level).
:Probably used by forcefields and end of level boundaries (like in state archive level).
===import===
* import doesn't work with empty skybox tag; <Sky>clear</Sky> helps here (or maybe onisplit just wants a name and doesn't care if the resource really exists?)
* triangle limit: ca. 520.000 (500.000 to be on save side)
* actually this is not about the import but when the triangles are packed too tight then the cam will look at too many of them and glitches appear: the visible GQs limit is ca. 16.000, sooner or later higher numbers will cause render bugs and call BSL message "Exceeded max visible GQs ''number''" (you can decrease the gs_farclipplane_set value to avoid that problem)
* also, keep in mind that characters are visible ''only'' within 4099|4099|4099 and -4099|-4099|-4099 world units
* geometry stops at ca. X=4228|Z=4228 and -4228|-4228 (height not tested)




8,452

edits