XML:BINA/OBJC/CONS: Difference between revisions
Jump to navigation
Jump to search
m (Edition -> AE) |
m (no need to mention AE here, is there?) |
||
Line 6: | Line 6: | ||
* Facing (Y rotation) needs to be changed by 180 degrees. | * Facing (Y rotation) needs to be changed by 180 degrees. | ||
* This console ''spawning'' doesn't include console geometry (see screenshot) unless it's done via [[XML:ONLV|ONLV]] level import. | * This console ''spawning'' doesn't include console geometry (see screenshot) unless it's done via [[XML:ONLV|ONLV]] level import. | ||
* '''BINACJBOConsole.oni''' is level specific. (It can be found in | * '''BINACJBOConsole.oni''' is level specific. (It can be found in GameDataFolder/level''XX''_Final.dat) | ||
* All consoles can be seen [http://ssg.oni2.net/subfold/consoles/ HERE.] | * All consoles can be seen [http://ssg.oni2.net/subfold/consoles/ HERE.] | ||
* Activation tolerances - player must fullfill following requirements before he can use the console: | * Activation tolerances - player must fullfill following requirements before he can use the console: |
Revision as of 13:27, 18 April 2013
CONS : Console spawn collection | ||
---|---|---|
XML
AKEV << Other file types >> CONS TMBD << Other BINA >> ONIE CHAR << Other OBJC >> CMBT |
general information
- The xml code on this page was tested with onisplit version 0.9.61.0 and 0.9.82.0
- Y value of "chr_debug_characters = 1" doesn't need to be changed.
- Facing (Y rotation) needs to be changed by 180 degrees.
- This console spawning doesn't include console geometry (see screenshot) unless it's done via ONLV level import.
- BINACJBOConsole.oni is level specific. (It can be found in GameDataFolder/levelXX_Final.dat)
- All consoles can be seen HERE.
- Activation tolerances - player must fullfill following requirements before he can use the console:
- a distance of 10 or less (world units)
- a distance of -2 or less (e.g. you can't activate console while standing inside or behind it)
- a facing of 1,22173 radians (ca. 70°) or less
- a sideways distance of 8 or less
- a height of 8 or less (pelvis height - console height)
file structure
<?xml version="1.0" encoding="utf-8"?> <Oni> <Objects> [...] </Objects> </Oni>
[...] means at least one console. Paste all console data into there (this includes <CONS Id="..."> and </CONS> tag).
example
<CONS Id="8179"> <Header> <Flags>Locked Gunk</Flags> <Position>-1354.927 45 860.053</Position> <Rotation>180.000015 0 180.000015</Rotation> </Header> <OSD> <Class>console0</Class> <ConsoleId>2</ConsoleId> <Flags>InitialActive</Flags> <InactiveTexture>_con_INACTIVE</InactiveTexture> <ActiveTexture>_con_MTCOM_DISH</ActiveTexture> <TriggeredTexture>_con_MTC_DISHFLASH</TriggeredTexture> <Events> <Script Function="fconsole_ok" /> </Events> </OSD> </CONS>
tags
tag | type | description |
---|---|---|
<?xml version="1.0" encoding="utf-8"?> | float, flag | Don't change this. |
<Oni> | - | |
<Objects> | - | |
<CONS Id="..."> | int32 | Use any number. No need to be unique. -- For level import use <CONS>. |
<Header> | - | |
<Flags> | flag | Object flags. Used in the past, ignore them. |
<Position> | float x3 | X Y Z position. For original consoles use Y=0 if ground plane is 0. |
<Rotation> | float x3 | X Y Z rotation. chr_debug_characters = 1 shows the player's facing which can be used for console's Y value. X and Z should be 0. |
<OSD> | - | |
<Class> | link | Original consoles:
For level import via xml master file use absolute/relative file path, e.g. consoles/console_data.oni |
<ConsoleId> | int16 | Can be used with BSL commands like "console_deactivate ID". |
<Flags> | flag |
|
<InactiveTexture> | char[63] | TXMPfile.oni (don't use file prefix/suffix) Image for disabled console. Examples:
_con_ALARM_SLEEP / _con_USED / _con_used / _con_INACTIVE |
<ActiveTexture> | char[63] | TXMPfile.oni (don't use file prefix/suffix) Image for enabled console. Examples:
_con_ALARM_SLEEP / _con_INFO / _con_MTC_2 / _con_mtc_stairs / _con_MTCOM_DISH / _con_MTCOM_DISH |
<TriggeredTexture> | char[63] | TXMPfile.oni (don't use file prefix/suffix) Image for used console. Examples:
_con_ALARM_ON / _con_USED / _con_used / _con_MTC_DISHFLASH |
<Events> | int16 | You can use multiple events. |
<Script Function="call_this_BSL_function" /> | char[32] | Name of BSL function. For example if you use "call_this_BSL_function" here then write in BSL file:
func call_this_BSL_function { dmsg "hi" } |
<ActivateTurret TargetId="Id" /> | int16 | |
<DeactivateTurret TargetId="Id" /> | int16 | |
<ActivateConsole TargetId="Id" /> | int16 | |
<DeactivateConsole TargetId="Id" /> | int16 | |
<ActivateAlarm TargetId="Id" /> | int16 | |
<DeactivateAlaram TargetId="Id" /> | int16 | |
<ActivateTrigger TargetId="Id" /> | int16 | |
<DeactivateTrigger TargetId="Id" /> | int16 | |
<LockDoor TargetId="Id" /> | int16 | |
<UnlockDoor TargetId="Id" /> | int16 |