XML:BINA/OBJC/CONS: Difference between revisions

From OniGalore
< XML:BINA‎ | OBJC
Jump to navigation Jump to search
(xml tags table)
mNo edit summary
Line 41: Line 41:
                 <Class>console0</Class>
                 <Class>console0</Class>
                 <ConsoleId>2</ConsoleId>
                 <ConsoleId>2</ConsoleId>
                 <Flags>Active</Flags>
                 <Flags>InitialActive</Flags>
                 <InactiveTexture>_con_INACTIVE</InactiveTexture>
                 <InactiveTexture>_con_INACTIVE</InactiveTexture>
                 <ActiveTexture>_con_MTCOM_DISH</ActiveTexture>
                 <ActiveTexture>_con_MTCOM_DISH</ActiveTexture>
Line 71: Line 71:
|-
|-
| <CONS Id="...">
| <CONS Id="...">
| integer
| int32
| Use any number. No need to be unique.
| Use any number. No need to be unique.
|-
|-
Line 80: Line 80:
| <Flags>
| <Flags>
| flag
| flag
| Gunk flags. Appears useless.
| Object flags. Used in the past, ignore them.
|-
|-
| <Position>
| <Position>
Line 105: Line 105:
|-
|-
| <ConsoleId>
| <ConsoleId>
| integer
| int16
| Can be used with BSL commands like "console_deactivate ''ID''".
| Can be used with BSL commands like "console_deactivate ''ID''".
|-
|-
Line 139: Line 139:
|-
|-
| <Events>
| <Events>
| -
| int16
| You can use multiple events. (int16 data field type)
| You can use multiple events.
|-
|-
|valign="top"| <Script Function="call_this_BSL_function" />
|valign="top"| <Script Function="call_this_BSL_function" />
Line 151: Line 151:
|-
|-
| <ActivateTurret TargetId="''Id''" />
| <ActivateTurret TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <DeactivateTurret TargetId="''Id''" />
| <DeactivateTurret TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <ActivateConsole TargetId="''Id''" />
| <ActivateConsole TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <DeactivateConsole TargetId="''Id''" />
| <DeactivateConsole TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <ActivateAlarm TargetId="''Id''" />
| <ActivateAlarm TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <DeactivateAlaram TargetId="''Id''" />
| <DeactivateAlaram TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <ActivateTrigger TargetId="''Id''" />
| <ActivateTrigger TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <DeactivateTrigger TargetId="''Id''" />
| <DeactivateTrigger TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <LockDoor TargetId="''Id''" />
| <LockDoor TargetId="''Id''" />
| integer
| int16
|
|
|-
|-
| <UnlockDoor TargetId="''Id''" />
| <UnlockDoor TargetId="''Id''" />
| integer
| int16
|
|
|}
|}

Revision as of 11:26, 12 March 2013

CONS : Console spawn collection
XML modding tips
  • See HERE to start learning about XML modding.
  • See HERE if you are searching for information on how to handle object coordinates.
  • See HERE for some typical modding errors and their causes.
XML.png
XML

AKEV << Other file types >> CONS

TMBD << Other BINA >> ONIE

CHAR << Other OBJC >> CMBT

switch to OBD page

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 edition/GameDataFolder/levelXX_... )
  • 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

console_preview.png

       <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.
<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:
console_alarm
console_data
console0
console_small_wu_roof

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
None
<Flags></Flags> also works; console will appear disabled.
InitialActive
Console will appear enabled.
Punch
Was used for TRAMKONOKOconsole_punch.
IsAlarm
Alarm console. Used with alarm groups in CHAR.
<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