OBD:BINA/OBJC/PATR
|
|
|
| Offset | Type | Raw Hex | Value | Description |
|---|---|---|---|---|
| 0x00 | char[4] | 43 4A 42 4F | OBJC | objects |
| 0x04 | int32 | B4 1F 00 00 | 8116 | size of the complete patrol path part from this position in bytes |
| 0x08 | int32 | 27 00 00 00 | 39 | object list version |
| 0x0C | int32 | 78 00 00 00 | 120 | size of the following element in bytes |
| First element (black outline) | ||||
| 0x00 | char[4] | 52 54 41 50 | PATR | patrol path |
| 0x04 | int32 | 6F 1A 00 00 | 6767 | old file ID |
| 0x08 | int32 | 00 00 00 00 | 0 | unknown |
| 0x0C | float | 08 AB 20 44 | 642.672363 | x-position of the patrol path start point |
| 0x10 | float | E7 26 87 41 | 16.893995 | y-position (height) of the patrol path start point |
| 0x14 | float | 6C CD BD C3 | -379.604858 | z-position of the patrol path start point |
| 0x18 | float | 00 00 00 00 | 0.000000 | rotation on the x-axis in degrees |
| 0x1C | float | 00 00 00 00 | 0.000000 | rotation on the y-axis in degrees |
| 0x20 | float | 00 00 00 00 | 0.000000 | rotation on the z-axis in degrees |
| 0x24 | char[32] | Floor1_Stk_1 | patrol path name | |
| 0x44 | int32 | 04 00 00 00 | 4 | number of path points (grey outline) |
| 0x48 | int16 | 00 00 | 0 | patrol path ID |
| 0x4A | int16 | 01 00 | 1 | "return to nearest"? |
| First path point (grey outline) | ||||
| 0x00 | int32 | 13 00 00 00 | 19 | path point type; the following types are possible (values in dec):
|
| 0x04 | int16 | 58 02 | 600 | sleep time in 1/60 seconds |
| 0x06 | int16 | CB 00 | 203 | flag ID |
| 0x08 | float | 00 00 A0 42 | 80.000000 | look around angle in degrees |
- Path points
- A path can have at most 64 points.
- Corrupting BSL code at patrolscripts
- I suspect that instantly played BSL code breaks patrol path.
- 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.)
XML code - patrolscript points:
<Points> <ScriptId ScriptId="1" /> <ScriptId ScriptId="2" /> <ScriptId ScriptId="3" /> </Points>
BSL code:
func patrolscript0001
{
dmsg "1"
chr_animate 0 KONOKOpowerup
sleep 1
}
func patrolscript0002
{
dmsg "2"
}
func patrolscript0003
{
dmsg "3"
}
- Tool Mode dialogs
| ONI BINARY DATA |
|---|
| AKVA << Other file types >> CBPI |
| BINA : Binary data |
| TMBD << Other BINA >> ONIE |
| OBJC : Objects |
| PART << Other OBJC >> PWRU |
| PATR : Patrol path |
| [[OBD:File types/{{{family}}}|{{{family}}} file]] |




