Jump to content

XML:BINA/OBJC/PATR: Difference between revisions

m
copy-edit
m (putting nav header parameters in more logical order)
m (copy-edit)
 
Line 1: Line 1:
{{XML_OBJC_Header | prev=PART | type=PATR | next=PWRU | name=Patrol Path}}
{{XML_OBJC_Header | prev=PART | type=PATR | next=PWRU | name=Patrol Path}}


 
==General information==
===general information===
* The XML on this page is based on OniSplit '''v0.9.61.0'''.
* The xml code on this page is based on onisplit '''v0.9.61.0'''
* "BINACJBOPatrol Path" is level-specific (level''x''_Final.dat).
* '''BINACJBOPatrol Path.oni''' is level specific. (It can be found in AE/AEInstaller/vanilla/level'''X'''_Final.dat)
* A path can have at most 64 points.
* A path can have at most 64 points.


;Corrupting BSL code in patrolscripts
;Corrupting BSL code in patrol scripts
:I suspect that ''instantly'' played BSL code breaks patrol paths.
:I ([[User:Paradox-01|Paradox]]) suspect that ''instantly'' played BSL code breaks patrol paths. Example: patrolscript0001 contains a sleep command and patrolscript0002 will be played. If you remove the sleep command, the patrol path will break. (This was tested in level 1 SP1 with A_t48 and his patrol_48.)
:example:
::patrolscript0001 contains a sleep command and patrolscript0002 will be played.
::But if you remove the sleep command the patrol path will break.
::(This was tested in level 1 SP1 with A_t48 and his patrol_48.) --[[User:Paradox-01|paradox-01]] ([[User talk:Paradox-01|talk]]) 17:47, 10 November 2012 (CET)
 


XML code - patrolscript points:
XML code - patrolscript points:
Line 39: Line 33:
  }
  }


 
==BSL support==
===BSL support===
* <font color="#777777">ai2_showpaths = 1</font>
* <font color="#777777">ai2_showpaths = 1</font>
* ai2_dopath ''ai_name path_name''
* ai2_dopath ''ai_name path_name''


 
==File structure==
===file structure===
  <?xml version="1.0" encoding="utf-8"?>
  <?xml version="1.0" encoding="utf-8"?>
  <Oni>
  <Oni>
Line 53: Line 45:
  </Oni>
  </Oni>


'''''[...]''''' means at least one patrol block. Paste all a patrol data into there (this includes <PATR Id="..."> and </PATR> tag).
'''''[...]''''' means at least one patrol block. Paste all your patrol data in there (this includes the <PATR Id="..."> and </PATR> tag).


 
'''Example'''
'''example'''


         <PATR Id="8283">
         <PATR Id="8283">
Line 88: Line 79:
{| class="wikitable" width="100%"
{| class="wikitable" width="100%"
!width=400px| XML tag
!width=400px| XML tag
!width=100px| content type
!width=100px| Content type
! description
! Description
|-
|-
| <PATR Id="...">
| <PATR Id="...">
| integer
| integer
| Id doesn't matter
| ID doesn't matter
|-
|-
| <Flags>
| <Flags>
| flag
| flag
| whatever this is good for ...
| Unknown
|-
|-
| <Position>
| <Position>
| float x3
| float x3
| x y z position, useless here
| XYZ position, unused
|-
|-
| <Rotation>
| <Rotation>
| float x3
| float x3
| x y z  rotation, useless here
| XYZ rotation, unused
|-
|-
| <Name>
| <Name>
| string
| string
| for BSL command "ai2_dopath"
| Used by BSL command "ai2_dopath"
|-
|-
| <PatrolId>
| <PatrolId>
| integer
| integer
| used in [[XML:BINA/OBJC/CHAR|BINA/OBJC/CHAR]]
| Used in [[XML:BINA/OBJC/CHAR|BINA/OBJC/CHAR]]
|-
|-
|valign=top| <ReturnToNearest>
|valign=top| <ReturnToNearest>
Line 123: Line 114:
| <Points>
| <Points>
| -
| -
| Holds actual content. A path can have at most 64 points.
| Holds the actual path data (up to 64 points).
|-
|-
| <MoveToFlag FlagId="..." />
| <MoveToFlag FlagId="..." />
Line 151: Line 142:
| <Loop>...</Loop>
| <Loop>...</Loop>
|
|
| Patrol path tags can be enclosed by that loop tag.
| Patrol path tags can be enclosed by this loop tag.
|-
|-
|valign=top| <MovementMode Mode="..." />
|valign=top| <MovementMode Mode="..." />
Line 166: Line 157:
|-
|-
| <MoveToPoint X="..." Y="..." Z="..." />
| <MoveToPoint X="..." Y="..." Z="..." />
| float x3 ?
| float x3
|  
|  
|-
|-
Line 216: Line 207:
|valign=top| <CallScript ScriptId="..." />
|valign=top| <CallScript ScriptId="..." />
| integer
| integer
|Calls a BSL function by Id. For example if Id is 1 then BSL function is named "patrolscript0001"
|Calls a BSL function by ID. For example if the ID is 1 then the BSL function is named "patrolscript0001".
|-
|-
|valign=top| <ForkScript ScriptId="..." />
|valign=top| <ForkScript ScriptId="..." />
| integer
| integer
|Forks a BSL function by Id. For example if Id is 2 then BSL function is named "patrolscript0002"
|Forks a BSL function by ID. For example if the ID is 2 then the BSL function is named "patrolscript0002".
|-
|-
|valign=top| <IgnorePlayer Value="..." />
|valign=top| <IgnorePlayer Value="..." />