OBD:BINA/OBJC/PATR: Difference between revisions

From OniGalore
< OBD:BINA‎ | OBJC
Jump to navigation Jump to search
mNo edit summary
m (design)
Line 1: Line 1:
{{OBD OBJC Header|align=center|type=PATR|prev=PART|next=PWRU|name=Patrol path|onistuff=b_pp}}
{{OBD OBJC Header | align=center | type=PATR | prev=PART | next=PWRU | name=Patrol path}}
----
----
http://www6.fh-eberswalde.de/user/dkriesch/onistuff/images/bin_r_pp.gif




{| BORDER=1 WIDTH=100% CELLPADDING=2 CELLSPACING=1 BGCOLOR="#000000"
[[image:bin_r_pp.gif]]
|- ALIGN=CENTER BGCOLOR="#FFDDBB"
 
| WIDTH=15% | <B>Hex</B>
 
| WIDTH=15% | <B>Translation</B>
{{Table}}
| WIDTH=70% | <B>Meaning</B>
{{OBDth}}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
{{OBDtr| 0x00 | char[4]  |FF0000| 43 4A 42 4F | OBJC       | object collection }}
| BGCOLOR="#FF0000" | 43 4A 42 4F
{{OBDtr| 0x04 | int32    |FFFF00| B4 1F 00 00 | 8116       | size of the complete combat part from this postion in bytes }}
| OBJC
{{OBDtr| 0x08 | int32    |00FF00| 27 00 00 00 | 39         | unknown; do not change it }}
| ALIGN=LEFT | object
{{OBDtr| 0x0C | int32    |00FFFF| 78 00 00 00 | 120       | size of the following element in bytes }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
{{OBDtrBK}}
| BGCOLOR="#FFFF00" | B4 1F 00 00
{{OBDtr| 0x00 | char[4]  |FFC8C8| 52 54 41 50 | PATR       | patrol path }}
| 8116
{{OBDtr| 0x04 | int32    |FFFFC8| 6F 1A 00 00 | 6767       | old file ID }}
| ALIGN=LEFT | 8116 bytes is the length of the following patrol path part from this position
{{OBDtr| 0x08 | int32    |C8FFC8| 00 00 00 00 | 0         | unknown }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
{{OBDtr| 0x0C | float    |C8FFFF| 08 AB 20 44 | 642.672363 | x-position of the neutral character }}
| BGCOLOR="#00FF00" | 27 00 00 00
{{OBDtr| 0x10 | float    |C8FFFF| E7 26 87 41 | 16.893995 | y-position (height) of the neutral character }}
| 39
{{OBDtr| 0x14 | float    |C8FFFF| 6C CD BD C3 | -379.604858| z-position of the neutral character }}
| ALIGN=LEFT | identification number for the weapon classes; in every level the same; do not change it
{{OBDtr| 0x18 | float    |FFC8FF| 00 00 00 00 | 0.000000   | rotation on the x-axis in degrees }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
{{OBDtr| 0x1C | float    |FFC8FF| 00 00 00 00 | 0.000000   | rotation on the y-axis in degrees }}
| BGCOLOR="#00FFFF" | 78 00 00 00
{{OBDtr| 0x20 | float    |FFC8FF| 00 00 00 00 | 0.000000   | rotation on the z-axis in degrees }}
| 120
{{OBDtr2|0x24 | char[32] |FFC800| Floor1_Stk_1             | patrol path name }}
| ALIGN=LEFT | 120 bytes (7.5 lines) is the lenght of the following package (area edged in black)
{{OBDtr| 0x44 | int32    |C800C8| 04 00 00 00 | 4         | amount of elements in array (grey outline) }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#000000"
{{OBDtr| 0x48 | int16    |C87C64| 00 00       | 0         | patrol path ID }}
| COLSPAN=3 | <FONT SIZE=2 COLOR="#FFFFFF">Below follows the first package.</FONT>
{{OBDtr| 0x4A | int16    |B0C3D4| 01 00       | 1          | unknown }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
{{OBDtrBK|1=First element (grey outline)}}
| BGCOLOR="#FFC8C8" | 52 54 41 50
{{OBDtr| 0x00 | int32    |E7CEA5| 13 00 00 00 | 19         | option ID; the following IDs are possible (values in dec):
| PATR
 
| ALIGN=LEFT | patrol
 
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
:00 - move to flag (short)
| BGCOLOR="#FFFFC8" | 6F 1A 00 00
:01 - stop (nothing); (not used in Oni)
| 6767
:02 - pause in frames (long)
| ALIGN=LEFT | unknown
:03 - look at flag (short)
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
:04 - look at point (float, float, float); (not used in Oni)
| BGCOLOR="#C8FFC8" | 00 00 00 00
:05 - move and face to flag (short)
| 0
:06 - run path in a loop (nothing)
| ALIGN=LEFT | unknown
:07 - movement mode (long) - the following movement modes are possible (Don't use other numbers. Oni will crash.):
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
 
| BGCOLOR="#C8FFFF" | 08 AB 20 44
 
| 642.672363
::0 - walk in firing position
| ALIGN=LEFT | x-position of the patrol path start point ?
::3 - walk crouch in firing position
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
::4 - walk relaxed (weapon down)
| BGCOLOR="#C8FFFF" | E7 26 87 41
::5 - walk in firing position (the same as 0)
| 16.893995
::6 - run relaxed (weapon down)
| ALIGN=LEFT | y-position (height) of the patrol path start point ?
::7 - run in firing position
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
 
| BGCOLOR="#C8FFFF" | 6C CD BD C3
 
| -379.604858
:08 - unknown
| ALIGN=LEFT | z-position of the patrol path start point ?
:09 - unknown
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
:10 - move through flag (short, float) - character moves to this flag until he/she has reached the radius border of it
| BGCOLOR="#FFC8FF" | 00 00 00 00
:11 - move through point (float, float, float, float) - character moves to this point until he/she has reached the radius border of it; (not used in Oni)
| 0.000000
:12 - stop looking (nothing)
| ALIGN=LEFT | rotation on the x-axis in degrees
:13 - unknown (nothing); used only once; maybe free facing?
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
:14 - glance at flag for ... frames (short + long) - character looks (rotates only the head) to the flag for the fixed time
| BGCOLOR="#FFC8FF" | 00 00 00 00
:15 - move near flag (short + float) - character moves to this flag until he/she has reached the radius border of it
| 0.000000
:16 - run path in a loop from block number (long) - runs the complete path once; after that it loops the path from the block number to the end (note that the block number of the first block is zero and not one)
| ALIGN=LEFT | rotation on the y-axis in degrees
:17 - time + rotation (short + float) - character looks/aims around for the fixed time
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
:18 - unkown (nothing follows)
| BGCOLOR="#FFC8FF" | 00 00 00 00
:19 - time + flag + rotation (short + short + float) - character moves to the flag and looks/aims around for the fixed time
| 0.000000
:20 - time follows (short)
| ALIGN=LEFT | rotation on the z-axis in degrees
:21 - flag follows (short) - character moves to this flag
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
:22 - ignore player (byte) - 0 <nowiki>=</nowiki> off; 1 <nowiki>=</nowiki> on
| BGCOLOR="#FFC800" COLSPAN=2 | <TT>Floor1_Stk_1</TT>
:23 - flag + time + unknown (short + short + float) - character faces to to the flag and fires his/her weapon for the fixed time (doesn't work on stairways)
| ALIGN=LEFT | name of the patrol path
 
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
 
| BGCOLOR="#C800C8" | 04 00 00 00
}}
| 4
{{OBDtr| 0x04 | int16    |FFDDDD| 58 02       | 600       | sleep time in 1/60 seconds }}
| ALIGN=LEFT | amount of blocks which follow
{{OBDtr| 0x06 | int16    |FFDDDD| CB 00       | 203       | flag ID }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
{{OBDtr| 0x08 | float    |FFDDDD| 00 00 A0 42 | 80.000000 | unknown; character roation on the y-axis in degrees? }}
| BGCOLOR="#C87C64" | 00 00
| 0
| ALIGN=LEFT | patrol path ID
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#B0C3D4" | 01 00
| 0
| ALIGN=LEFT | unknown
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#808080"
| COLSPAN=3 | <FONT SIZE=2 COLOR="#FFFFFF">Below follows the first block. It's a part of the package.</FONT>
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#E7CEA5" | 13 00 00 00
| 19
| ALIGN=LEFT | block option ID; the following block option IDs are possible (values in dec):<BR><BR>
{| BORDER=0 CELLPADDING=0 CELLSPACING=0
|- VALIGN=TOP
| ALIGN=RIGHT | 0 -&nbsp;
| flag follows (short)
|- VALIGN=TOP
| ALIGN=RIGHT | 1 -&nbsp;
| not checked yet
|- VALIGN=TOP
| ALIGN=RIGHT | 2 -&nbsp;
| time follows (long)
|- VALIGN=TOP
| ALIGN=RIGHT | 3 -&nbsp;
| flag follows (short)
|- VALIGN=TOP
| ALIGN=RIGHT | 4 -&nbsp;
| not checked yet
|- VALIGN=TOP
| ALIGN=RIGHT | 5 -&nbsp;
| flag follows (short)
|- VALIGN=TOP
| ALIGN=RIGHT | 6 -&nbsp;
| run in a loop ? (nothing follows; this ID is a stand-alone value)
|- VALIGN=TOP
| ALIGN=RIGHT | 7 -&nbsp;
| movement mode follows (long); the following movement modes are possible:<BR><BR>0 - walk in firing position<BR>3 - walk crouch in firing position<BR>4 - walk relaxed (weapon down)<BR>5 - walk in firing position (the same as 0)<BR>6 - run relaxed (weapon down)<BR>7 - run in firing positionDon't use other numbers. Oni will crash.<BR><BR>
|- VALIGN=TOP
| ALIGN=RIGHT | 8 -&nbsp;
| not checked yet
|- VALIGN=TOP
| ALIGN=RIGHT | 9 -&nbsp;
| not checked yet
|- VALIGN=TOP
| ALIGN=RIGHT | 10 -&nbsp;
| flag + rotation? follow (short + float)
|- VALIGN=TOP
| ALIGN=RIGHT | 11 -&nbsp;
| not checked yet
|- VALIGN=TOP
| ALIGN=RIGHT | 12 -&nbsp;
| not checked yet
|- VALIGN=TOP
| ALIGN=RIGHT | 13 -&nbsp;
| not checked yet
|- VALIGN=TOP
| ALIGN=RIGHT | 14 -&nbsp;
| flag + time follow (short + long)
|- VALIGN=TOP
| ALIGN=RIGHT | 15 -&nbsp;
| flag + rotation? follow (short + float)
|- VALIGN=TOP
| ALIGN=RIGHT | 16 -&nbsp;
| unknown follows (long)
|- VALIGN=TOP
| ALIGN=RIGHT | 17 -&nbsp;
| time + rotation? follow (long + float)
|- VALIGN=TOP
| ALIGN=RIGHT | 18 -&nbsp;
| not checked yet
|- VALIGN=TOP
| ALIGN=RIGHT | 19 -&nbsp;
| time + flag + rotation? follow (short + short + float)
|- VALIGN=TOP
| ALIGN=RIGHT | 20 -&nbsp;
| time follows (short)
|- VALIGN=TOP
| ALIGN=RIGHT | 21 -&nbsp;
| time? follows (short)
|- VALIGN=TOP
| ALIGN=RIGHT | 22 -&nbsp;
| unknown follows (byte)
|- VALIGN=TOP
| ALIGN=RIGHT | 23 -&nbsp;
| flag + time + rotation? follow (short + short + float)
|}<BR>
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FFDDDD" | 58 02
| 600
| ALIGN=LEFT | sleep time in 1/60 seconds
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#64AAAA" | CB 00
| 203
| ALIGN=LEFT | flag ID
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#EBEBEB" | 00 00 A0 42
| 80.000000
| ALIGN=LEFT | character roation on the y-axis in degrees ?
|}
|}
----
 
----
 
{{OBD OBJC Footer|align=center|type=PATR|prev=PART|next=PWRU|name=Patrol path|onistuff=b_pp}}
;Bluebox screenshots
 
http://ssg.oni2.net/subfold/bluebox/images/300_edit_paths.jpg
 
 
http://ssg.oni2.net/subfold/bluebox/images/301_edit_path.jpg
 
 
http://ssg.oni2.net/subfold/bluebox/images/302_edit_path_point.jpg
 
 
{{OBD OBJC Footer | type=PATR | prev=PART | next=PWRU | name=Patrol path}}

Revision as of 10:25, 25 September 2007

ONI BINARY DATA
AKVA << Other file types >> CBPI
BINA : Binary data
TMBD << Other BINA >> ONIE
OBJC : Objects
PART << Other OBJC >> PWRU
PATR : Patrol path
XML tutorial
Overview @ Oni Stuff
OBD.png


Bin r pp.gif


Offset Type Raw Hex Value Description
0x00 char[4] 43 4A 42 4F OBJC object collection
0x04 int32 B4 1F 00 00 8116 size of the complete combat part from this postion in bytes
0x08 int32 27 00 00 00 39 unknown; do not change it
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 neutral character
0x10 float E7 26 87 41 16.893995 y-position (height) of the neutral character
0x14 float 6C CD BD C3 -379.604858 z-position of the neutral character
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 amount of elements in array (grey outline)
0x48 int16 00 00 0 patrol path ID
0x4A int16 01 00 1 unknown
First element (grey outline)
0x00 int32 13 00 00 00 19 option ID; the following IDs are possible (values in dec):


00 - move to flag (short)
01 - stop (nothing); (not used in Oni)
02 - pause in frames (long)
03 - look at flag (short)
04 - look at point (float, float, float); (not used in Oni)
05 - move and face to flag (short)
06 - run path in a loop (nothing)
07 - movement mode (long) - the following movement modes are possible (Don't use other numbers. Oni will crash.):


0 - walk in firing position
3 - walk crouch in firing position
4 - walk relaxed (weapon down)
5 - walk in firing position (the same as 0)
6 - run relaxed (weapon down)
7 - run in firing position


08 - unknown
09 - unknown
10 - move through flag (short, float) - character moves to this flag until he/she has reached the radius border of it
11 - move through point (float, float, float, float) - character moves to this point until he/she has reached the radius border of it; (not used in Oni)
12 - stop looking (nothing)
13 - unknown (nothing); used only once; maybe free facing?
14 - glance at flag for ... frames (short + long) - character looks (rotates only the head) to the flag for the fixed time
15 - move near flag (short + float) - character moves to this flag until he/she has reached the radius border of it
16 - run path in a loop from block number (long) - runs the complete path once; after that it loops the path from the block number to the end (note that the block number of the first block is zero and not one)
17 - time + rotation (short + float) - character looks/aims around for the fixed time
18 - unkown (nothing follows)
19 - time + flag + rotation (short + short + float) - character moves to the flag and looks/aims around for the fixed time
20 - time follows (short)
21 - flag follows (short) - character moves to this flag
22 - ignore player (byte) - 0 = off; 1 = on
23 - flag + time + unknown (short + short + float) - character faces to to the flag and fires his/her weapon for the fixed time (doesn't work on stairways)


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 unknown; character roation on the y-axis in degrees?


Bluebox screenshots

300_edit_paths.jpg


301_edit_path.jpg


302_edit_path_point.jpg


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]]