OBD:BINA/OBJC/CHAR: Difference between revisions

From OniGalore
< OBD:BINA‎ | OBJC
Jump to navigation Jump to search
No edit summary
mNo edit summary
Line 1: Line 1:
[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File types]] >> [[OBD:BINA|BINA]] >> Character.BINA
{{OBD OBJC Header|align=center|type=CHAR|prev=WEAP|next=CMBT|name=Character|onistuff=b_ch}}
 
 
<CENTER>[[OBD:BINA/Texture_Materials|<==]] <FONT SIZE=5>Character.BINA</FONT> [[OBD:BINA/Console|==>]]</CENTER>




----
----
==Screenshot==
http://www6.fh-eberswalde.de/user/dkriesch/onistuff/images/bin_r_ch.gif
http://www6.fh-eberswalde.de/user/dkriesch/onistuff/images/bin_r_ch.gif




{| width="100%" cellspacing="1" cellpadding="2" bgcolor="#000000" border=1
==Basic setup==
;APPEARANCE, WEAPON, POSITION, MISC SPAWN FLAGS
{|{{OBDtable}}
|align=center|
{|{{OBDtable}}
|- bgcolor="#FFDDBB" align="CENTER"
|- bgcolor="#FFDDBB" align="CENTER"
| width="15%" | '''Hex'''
| width="15%" | '''Raw hex'''
| width="15%" | '''Translation'''
| width="15%" | '''Value'''
| width="70%" | '''Meaning'''
| width="70%" | '''Meaning'''
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FF0000" | 43 4A 42 4F
| bgcolor="#FFC8C8" | 52 41 48 43
| OBJC
| align="LEFT" | object
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#FFFF00" | 2C 8B 00 00
| 35628
| align="LEFT" | 35628 bytes is the length of the following character part from this position
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#00FF00" | 27 00 00 00
| 39
| align="LEFT" | identification number for the weapon classes; in every level the same; do not change it
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#00FFFF" | 20 02 00 00
| 544
| align="LEFT" | 544 bytes (34 lines) is the lenght of the following package (area edged in black)
|- bgcolor="#000000" align="CENTER" valign="TOP"
| colspan="3" | <font size="2" color="#FFFFFF">Below follows the first package.</font>
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#FFC8C8" | 47 41 4C 46
| CHAR
| CHAR
| align="LEFT" | character
| align="LEFT" | character
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFFFC8" | 87 19 00 00
| bgcolor="#FFFFC8" | 87 19 00 00
| 6535
| 6535
| align="LEFT" | old file ID
| align="LEFT" | old file ID
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#C8FFC8" | 00 00 00 00
| bgcolor="#C8FFC8" | 00 00 00 00
| 0
| 0
| align="LEFT" | unknown
| align="LEFT" | unknown
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#C8FFFF" |
| bgcolor="#C8FFFF" |
A5 7D 9D 43
A5 7D 9D 43
| 314.981597
| 314.981597
| align="LEFT" | x-position of the character
| align="LEFT" | x-position of the character
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#C8FFFF" | 00 00 D8 C1
| bgcolor="#C8FFFF" | 00 00 D8 C1
| -27.000000
| -27.000000
| align="LEFT" | y-position (height) of the character
| align="LEFT" | y-position (height) of the character
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#C8FFFF" | 98 09 1E 42
| bgcolor="#C8FFFF" | 98 09 1E 42
| 39.509368
| 39.509368
| align="LEFT" | z-position of the character
| align="LEFT" | z-position of the character
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFC8FF" | 00 00 00 00
| bgcolor="#FFC8FF" | 00 00 00 00
| 0.000000
| 0.000000
| align="LEFT" | rotation on the x-axis in degrees
| align="LEFT" | rotation on the x-axis in degrees
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFC8FF" | 00 00 87 43
| bgcolor="#FFC8FF" | 00 00 87 43
| 270.000000
| 270.000000
| align="LEFT" | rotation on the y-axis in degrees
| align="LEFT" | rotation on the y-axis in degrees
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFC8FF" | 00 00 00 00
| bgcolor="#FFC8FF" | 00 00 00 00
| 0.000000
| 0.000000
| align="LEFT" | rotation on the z-axis in degrees
| align="LEFT" | rotation on the z-axis in degrees
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFC800" | 01
| bgcolor="#FFC800" | 01
| 1
| 1
| align="LEFT" |
| align="LEFT" |option bitset 1 (see below)
option 1; it's a bitset; the following options are possible (values in dec):
 
{|
|- valign="TOP"
| align="RIGHT" | 0 -
| nothing
|- valign="TOP"
| align="RIGHT" | 1 -
| player character
|- valign="TOP"
| align="RIGHT" | 2 -
| random skin
|- valign="TOP"
| align="RIGHT" | 4 -
| not prespawned
|- valign="TOP"
| align="RIGHT" | 8 -
| non-combatant
|- valign="TOP"
| align="RIGHT" | 16 -
| multi-spawnable
|- valign="TOP"
| align="RIGHT" | 32 -
| unknown
|- valign="TOP"
| align="RIGHT" | 64 -
| unkillable
|- valign="TOP"
| align="RIGHT" |
128 -
| superammo
|}
 
(Thanks to geyser who figured that out.)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#C800C8" | 00
| bgcolor="#C800C8" | 00
| 0
| 0
| align="LEFT" |
| align="LEFT" |option bitset 2 (see below)
option 2; it's a bitset; the following options are possible (values in dec):
 
{|
|- valign="TOP"
| align="RIGHT" | 0 -
| nothing
|- valign="TOP"
| align="RIGHT" | 1 -
| boss
|- valign="TOP"
| align="RIGHT" | 2 -
| has LSI
|- valign="TOP"
| align="RIGHT" | 4 -
| no auto-drop
|- valign="TOP"
| align="RIGHT" | 8 -
| upgrade difficulty (spawns a stronger enemy if you play on medium or hard)
|- valign="TOP"
| align="RIGHT" | <font color="#FFEEDD"></font>16 -
| omniscient
|}
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#C87C64" | 00 00
| bgcolor="#C87C64" | 00 00
Line 138: Line 68:
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| colspan="2" bgcolor="#B0C3D4" | <tt>konoko_generic</tt>
| colspan="2" bgcolor="#B0C3D4" | <tt>konoko_generic</tt>
| align="LEFT" |
| align="LEFT" |link by name to character class (local, konoko_generic.[[OBD:ONCC|ONCC]])
name of the character model (00991-konoko_generic.[[OBD:ONCC|ONCC]])
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| colspan="2" bgcolor="#E7CEA5" | <tt>konoko</tt>
| colspan="2" bgcolor="#E7CEA5" | <tt>konoko</tt>
Line 145: Line 74:
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| colspan="2" bgcolor="#FFDDDD" | <tt>w1_tap</tt>
| colspan="2" bgcolor="#FFDDDD" | <tt>w1_tap</tt>
| align="LEFT" |
| align="LEFT" |link by name to weapon class (global, w1_tap.[[OBD:ONWC|ONWC]])
name of the weapon; the following weapon names are possible:
 
w1_tap - Equalizer (pistol)<br />w2_sap - Black Adder (submachine gun)<br />w3_phr - Plasma Riffle<br />w4_psm - Phase Stream Projector<br />w5_sbg - Superball Gun<br />w6_vdg - Van de Graff<br />w7_scc - Scramble Cannon<br />w8_mbo - Mercury Bow<br />w9_scr - Screaming Cannon<br />w10_sni - Fireworks (Mukade's gun)<br />w11_ba1 - Wave Motion Cannon (Barabas's gun)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| colspan="2" bgcolor="#64AAAA" | not used
| colspan="2" bgcolor="#64AAAA" | not used
| align="LEFT" | unknown; never used in Oni
| align="LEFT" | unknown; never used in Oni (maybe second weapon)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|}
|}
;Option bitset 1
:1 - player character
:2 - random skin
:4 - not prespawned
:8 - non-combatant
:16 - multi-spawnable
:32 - unknown
:64 - unkillable
:128 - superammo
;Option bitset 2
option 2; it's a bitset; the following options are possible (values in dec):
:1 - boss (whatever that means)
:2 - has LSI
:4 - no auto-drop (whatever that means)
:8 - upgrade difficulty (spawns a stronger enemy if you play on medium or hard)
:16 - omniscient (whatever that means)
:32 - unknown, never used
:64 - unknown, never used
:128 - unknown, never used
 
 
----
----
==Script functions==
;ARE CALLED BY THE SCRIPT ENGINE WHEN CERTAN THINGS HAPPEN TO A CHARACTER
{|{{OBDtable}}
|align=center|
{|{{OBDtable}}
|- bgcolor="#FFDDBB" align="CENTER"
| width="15%" | '''Raw hex'''
| width="15%" | '''Value'''
| width="70%" | '''Meaning'''
|-
| colspan="2" bgcolor="#EBEBEB" | not used
| colspan="2" bgcolor="#EBEBEB" | not used
| align="LEFT" | name of the function, which is called up when Oni spawns the character
| align="LEFT" | script function called when character is spawned
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| colspan="2" bgcolor="#8C8CCC" | <tt>you_lose</tt>
| colspan="2" bgcolor="#8C8CCC" | <tt>you_lose</tt>
| align="LEFT" | name of the function, which is called up when the character dies
| align="LEFT" | script function called when character dies (health reaches 0); can work multiple times
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| colspan="2" bgcolor="#FF00C8" | not used
| colspan="2" bgcolor="#FF00C8" | not used
| align="LEFT" | name of the function, which is called up when the character notices the player<br />(Thanks to Loser who figured that out.)
| align="LEFT" | script function called when character notices an enemy; works only once
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| colspan="2" bgcolor="#F0F096" | not used
| colspan="2" bgcolor="#F0F096" | not used
| align="LEFT" | unknown; never used in Oni
| align="LEFT" | unknown; never used in Oni
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| colspan="2" bgcolor="#00C864" | not used
| colspan="2" bgcolor="#00C864" | not used
| align="LEFT" | name of the function, which is called up when someone hits the character the first time
| align="LEFT" | script function called when character is hurt for the first time; works only once
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| colspan="2" bgcolor="#00C8FF" | not used
| colspan="2" bgcolor="#00C8FF" | not used
| align="LEFT" | name of the function, which is called up when the health of the character is equal 1
| align="LEFT" | script function called when character is "defeated" (health reaches 1); works only once
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| colspan="2" bgcolor="#C80040" | not used
| colspan="2" bgcolor="#C80040" | not used
| align="LEFT" | name of the function, which is called up when the character reloads its weapon with its last ammo/cell; works only, if the character has some ammo/cells when Oni spawns it<br />(Thanks to Loser who figured that out.)
| align="LEFT" | script function called when character runs out of ammo (reloads a weapon with the last clip/cell); works only once, and the character must have the ammo at spawn-time
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| colspan="2" bgcolor="#FFCD96" | not used
| colspan="2" bgcolor="#FFCD96" | not used
| align="LEFT" | unknown
| align="LEFT" | unknown, some exotic script function call ("should" be called when a character has trouble pathfinding, but isn't)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|}
|}
 
 
----
----
==Less basic setup==
;INVENTORY, TEAM, JOBS, ALERT/PURSUIT
{|{{OBDtable}}
|align=center|
{|{{OBDtable}}
|- bgcolor="#FFDDBB" align="CENTER"
| width="15%" | '''Raw hex'''
| width="15%" | '''Value'''
| width="70%" | '''Meaning'''
|-
| bgcolor="#C8C864" | 00 00 00 00
| bgcolor="#C8C864" | 00 00 00 00
| 0
| 0
| align="LEFT" |
| align="LEFT" |
additional health (the basic health you'll find in the [[OBD:ONCC|ONCC]] file of the character)
additional health (the basic health you'll find in the [[OBD:ONCC|ONCC]] file of the character)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#0096C8" | 00 00 00 00
| bgcolor="#0096C8" | 00 00 00 00
| 0
| 0
| align="LEFT" |
| align="LEFT" |job ID (see below)
job ID; the following job IDs are possible:
|-
 
0 - none<br />1 - idle<br />2 - guard (not used in Oni)<br />3 - patrol<br />4 - teambattle (never used in Oni)
 
(Tanks to geyser who figured that out.)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#FF80C0" | 00 00
| bgcolor="#FF80C0" | 00 00
| 0
| 0
| align="LEFT" | patrol path ID (Tanks to geyser for his help.)
| align="LEFT" | patrol path ID (looked up in local [[OBD:BINA/OBJC/PATR|CJBO'''Patrol_Path'''.BINA]])
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FF80C0" | 00 00
| bgcolor="#FF80C0" | 00 00
| 0
| 0
| align="LEFT" | combat ID (Thanks to geyser and Loser for their help.)
| align="LEFT" | combat ID (looked up in global [[OBD:BINA/OBJC/CMBT|CJBO'''Combat'''.BINA]])
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#D0C0AF" | 00 00
| bgcolor="#D0C0AF" | 00 00
| 0
| 0
| align="LEFT" | melee ID (Thanks to Loser and geyser for their help.)
| align="LEFT" | melee ID (looked up in global [[OBD:BINA/OBJC/MELE|CJBO'''Melee Profile'''.BINA]])
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#D0C0AF" | 00 00
| bgcolor="#D0C0AF" | 00 00
| 0
| 0
| align="LEFT" | neutral ID (Tanks to geyser who figured that out.)
| align="LEFT" | neutral ID (looked up in local [[OBD:BINA/OBJC/NEUT|CJBO'''Neutral'''.BINA]])
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#EEDDFF" | 01 00
| bgcolor="#EEDDFF" | 01 00
| 1
| 1
| align="LEFT" | amount of ammo (red clips), which the character has
| align="LEFT" | amount of ammo (red clips) that can be used
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#EEDDFF" | 00 00
| bgcolor="#EEDDFF" | 00 00
| 0
| 0
| align="LEFT" | amount of ammo (red clips), which the character drops when he/she dies
| align="LEFT" | amount of ammo (red clips) that can be dropped
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#C5FF8A" | 00 00
| bgcolor="#C5FF8A" | 00 00
| 0
| 0
| align="LEFT" | amount of energy cells (green clips), which the character has
| align="LEFT" | amount of energy cells (green clips) that can be used
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#C5FF8A" | 00 00
| bgcolor="#C5FF8A" | 00 00
| 0
| 0
| align="LEFT" | amount of energy cells (green clips), which the character drops when he/she dies
| align="LEFT" | amount of energy cells (green clips) that can be dropped
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#C0C0C0" | 00 00
| bgcolor="#C0C0C0" | 00 00
| 0
| 0
| align="LEFT" | amount of hypos, which the character has
| align="LEFT" | amount of hypos that can be used
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#C0C0C0" | 00 00
| bgcolor="#C0C0C0" | 00 00
| 0
| 0
| align="LEFT" | amount of hypos, which the character drops when he/she dies
| align="LEFT" | amount of hypos that can be dropped
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FF0080" | 00 00
| bgcolor="#FF0080" | 00 00
| 0
| 0
| align="LEFT" | amount of force shields, which the character has
| align="LEFT" | amount of force shields that can be used
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FF0080" | 00 00
| bgcolor="#FF0080" | 00 00
| 0
| 0
| align="LEFT" | amount of force shields, which the character drops when he/she dies
| align="LEFT" | amount of force shields that can be dropped
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFFFA6" | 00 00
| bgcolor="#FFFFA6" | 00 00
| 0
| 0
| align="LEFT" | amount of phase cloaks, which the character has
| align="LEFT" | amount of phase cloaking that can be used (60 = 1 second)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFFFA6" | 00 00
| bgcolor="#FFFFA6" | 00 00
| 0
| 0
| align="LEFT" | amount of phase cloaks, which the character drops when he/she dies
| align="LEFT" | amount of phase cloaking that can be dropped
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#71FFB8" | 00 00 00 00
| bgcolor="#71FFB8" | 00 00 00 00
| 0
| 0
| align="LEFT" | unknown; always zero
| align="LEFT" | unknown; always zero
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#0000BF" | 00 00 00 00
| bgcolor="#0000BF" | 00 00 00 00
| 0
| 0
| align="LEFT" |
| align="LEFT" |team ID (see below)
team ID; the following team IDs are possible:
|-
 
0 - Konoko<br />1 - TCTF<br />2 - Syndicate<br />3 - Neutral<br />4 - SecurityGuard<br />5 - RogueKonoko<br />6 - Switzerland<br />7 - SyndicateAccessory
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#804040" | 64 00 00 00
| bgcolor="#804040" | 64 00 00 00
| 100
| 100
| align="LEFT" | ammo filling in percent
| align="LEFT" | ammo filling in percent
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FF22FF" | 00 00 00 00
| bgcolor="#FF22FF" | 00 00 00 00
| 0
| 0
| align="LEFT" |
| align="LEFT" |initial alert level (see below)
alert ID; the following alert IDs are possible:
|-
 
0 - lull<br />1 - low<br />2 - medium<br />3 - high<br />4 - combat
 
(Tanks to geyser who figured that out.)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
| bgcolor="#808080" | 00 00 00 00
| bgcolor="#808080" | 00 00 00 00
| 0
| 0
| align="LEFT" | unknown
| align="LEFT" | minimal alert level
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFAA82" | 01 00 00 00
| bgcolor="#FFAA82" | 01 00 00 00
| 1
| 1
| align="LEFT" | unknown
| align="LEFT" | alert level when starting a job
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#00D900" | 02 00 00 00
| bgcolor="#00D900" | 02 00 00 00
| 2
| 2
| align="LEFT" | unknown
| align="LEFT" | alert level when investigating
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#CACAFF" | 00
| bgcolor="#CACAFF" | 00
| 0
| 0
| align="LEFT" | unknown
| align="LEFT" | unknown
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#CACAFF" | 00
| bgcolor="#CACAFF" | 00
| 0
| 0
| align="LEFT" | unknown
| align="LEFT" | unknown
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#CACAFF" | 00
| bgcolor="#CACAFF" | 00
| 0
| 0
| align="LEFT" | unknown
| align="LEFT" | unknown
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#CACAFF" | 00
| bgcolor="#CACAFF" | 00
| 0
| 0
| align="LEFT" | unknown
| align="LEFT" | unknown
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#F0F000" | 04 00 00 00
| bgcolor="#F0F000" | 04 00 00 00
| 4
| 4
| align="LEFT" | unknown
| align="LEFT" | unknown (pm_pursue_strong?)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#E7FFCE" | 01 00 00 00
| bgcolor="#E7FFCE" | 01 00 00 00
| 1
| 1
| align="LEFT" | unknown
| align="LEFT" | unknown (pm_pursue_weak?)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#4F7291" | 04 00 00 00
| bgcolor="#4F7291" | 04 00 00 00
| 4
| 4
| align="LEFT" | unknown
| align="LEFT" | unknown (pm_pursue_strong_seen?)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FFD6C1" | 04 00 00 00
| bgcolor="#FFD6C1" | 04 00 00 00
| 4
| 4
| align="LEFT" | unknown
| align="LEFT" | unknown (pm_pursue_weak_seen?)
|- bgcolor="#FFEEDD" align="CENTER" valign="TOP"
|-
| bgcolor="#FF5E5E" | 00 00 00 00
| bgcolor="#FF5E5E" | 00 00 00 00
| 0
| 0
| align="LEFT" | unknown
| align="LEFT" | unknown (pm_pursue_lost?)
|}
|}
|}
;Job ID
:0 - none
:1 - idle
:2 - guard (never used in Oni)
:3 - patrol
:4 - teambattle (never used in Oni)
;Team ID
:0 - Konoko
:1 - TCTF
:2 - Syndicate
:3 - Neutral
:4 - SecurityGuard
:5 - RogueKonoko
:6 - Switzerland
:7 - SyndicateAccessory
;Alert level
:0 - lull
:1 - low
:2 - medium
:3 - high
:4 - combat




<CENTER>[[OBD:BINA/Texture_Materials|<==]] <FONT SIZE=5>Character.BINA</FONT> [[OBD:BINA/Console|==>]]</CENTER>
----
----
==Blue Box Beta WMDD==
http://www6.fh-eberswalde.de/user/dkriesch/oni/bina_chara.gif




[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File types]] >> [[OBD:BINA|BINA]] >> Character.BINA
----
----
{{OBD OBJC Footer|type=CHAR|prev=WEAP|next=CMBT|name=Character}}

Revision as of 20:49, 29 July 2006

ONI BINARY DATA
AKVA << Other file types >> CBPI
BINA : Binary data
TMBD << Other BINA >> ONIE
OBJC : Objects
WEAP << Other OBJC >> CMBT
CHAR : Character
XML tutorial
Overview @ Oni Stuff
OBD.png




Screenshot

bin_r_ch.gif


Basic setup

APPEARANCE, WEAPON, POSITION, MISC SPAWN FLAGS
Raw hex Value Meaning
52 41 48 43 CHAR character
87 19 00 00 6535 old file ID
00 00 00 00 0 unknown

A5 7D 9D 43

314.981597 x-position of the character
00 00 D8 C1 -27.000000 y-position (height) of the character
98 09 1E 42 39.509368 z-position of the character
00 00 00 00 0.000000 rotation on the x-axis in degrees
00 00 87 43 270.000000 rotation on the y-axis in degrees
00 00 00 00 0.000000 rotation on the z-axis in degrees
01 1 option bitset 1 (see below)
00 0 option bitset 2 (see below)
00 00 0 unknown; always zero
konoko_generic link by name to character class (local, konoko_generic.ONCC)
konoko name of the character
w1_tap link by name to weapon class (global, w1_tap.ONWC)
not used unknown; never used in Oni (maybe second weapon)
Option bitset 1
1 - player character
2 - random skin
4 - not prespawned
8 - non-combatant
16 - multi-spawnable
32 - unknown
64 - unkillable
128 - superammo
Option bitset 2

option 2; it's a bitset; the following options are possible (values in dec):

1 - boss (whatever that means)
2 - has LSI
4 - no auto-drop (whatever that means)
8 - upgrade difficulty (spawns a stronger enemy if you play on medium or hard)
16 - omniscient (whatever that means)
32 - unknown, never used
64 - unknown, never used
128 - unknown, never used




Script functions

ARE CALLED BY THE SCRIPT ENGINE WHEN CERTAN THINGS HAPPEN TO A CHARACTER
Raw hex Value Meaning
not used script function called when character is spawned
you_lose script function called when character dies (health reaches 0); can work multiple times
not used script function called when character notices an enemy; works only once
not used unknown; never used in Oni
not used script function called when character is hurt for the first time; works only once
not used script function called when character is "defeated" (health reaches 1); works only once
not used script function called when character runs out of ammo (reloads a weapon with the last clip/cell); works only once, and the character must have the ammo at spawn-time
not used unknown, some exotic script function call ("should" be called when a character has trouble pathfinding, but isn't)




Less basic setup

INVENTORY, TEAM, JOBS, ALERT/PURSUIT
Raw hex Value Meaning
00 00 00 00 0

additional health (the basic health you'll find in the ONCC file of the character)

00 00 00 00 0 job ID (see below)
00 00 0 patrol path ID (looked up in local CJBOPatrol_Path.BINA)
00 00 0 combat ID (looked up in global CJBOCombat.BINA)
00 00 0 melee ID (looked up in global CJBOMelee Profile.BINA)
00 00 0 neutral ID (looked up in local CJBONeutral.BINA)
01 00 1 amount of ammo (red clips) that can be used
00 00 0 amount of ammo (red clips) that can be dropped
00 00 0 amount of energy cells (green clips) that can be used
00 00 0 amount of energy cells (green clips) that can be dropped
00 00 0 amount of hypos that can be used
00 00 0 amount of hypos that can be dropped
00 00 0 amount of force shields that can be used
00 00 0 amount of force shields that can be dropped
00 00 0 amount of phase cloaking that can be used (60 = 1 second)
00 00 0 amount of phase cloaking that can be dropped
00 00 00 00 0 unknown; always zero
00 00 00 00 0 team ID (see below)
64 00 00 00 100 ammo filling in percent
00 00 00 00 0 initial alert level (see below)
00 00 00 00 0 minimal alert level
01 00 00 00 1 alert level when starting a job
02 00 00 00 2 alert level when investigating
00 0 unknown
00 0 unknown
00 0 unknown
00 0 unknown
04 00 00 00 4 unknown (pm_pursue_strong?)
01 00 00 00 1 unknown (pm_pursue_weak?)
04 00 00 00 4 unknown (pm_pursue_strong_seen?)
04 00 00 00 4 unknown (pm_pursue_weak_seen?)
00 00 00 00 0 unknown (pm_pursue_lost?)
Job ID
0 - none
1 - idle
2 - guard (never used in Oni)
3 - patrol
4 - teambattle (never used in Oni)
Team ID
0 - Konoko
1 - TCTF
2 - Syndicate
3 - Neutral
4 - SecurityGuard
5 - RogueKonoko
6 - Switzerland
7 - SyndicateAccessory
Alert level
0 - lull
1 - low
2 - medium
3 - high
4 - combat




Blue Box Beta WMDD

bina_chara.gif




ONI BINARY DATA
AKVA << Other file types >> CBPI
BINA : Binary data
TMBD << Other BINA >> ONIE
OBJC : Objects
WEAP << Other OBJC >> CMBT
CHAR : Character
[[OBD:File types/{{{family}}}|{{{family}}} file]]