OBD:BINA: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (saving...)
m (changed family)
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{OBD_File_Header | type=BINA | prev=AKVA | next=CBPI | name=Binary Data | family=Start | align=center}}
{{OBD_File_Header | type=BINA | prev=AKVA | next=CBPI | name=Binary Data | family=General | align=center}}


==Introduction==
"BINA" is short for "binary data", which refers to chunks of data that are stored in the [[separate file]] when available (Windows demo, Mac) or in the [[raw file]] otherwise (Windows). BINA is registered as a tag, but is really a wrapper for other tags. One of those tags, OBJC, is a wrapper for still more tags (see below).


==File description==
[[image:bina_all.gif]]
[[image:bina_all.gif]]


{{Table}}
{{Table}}
Line 9: Line 11:
{{OBDtr| 0x00 | res_id  |FF0000| 01 67 23 00 | 9063      | 09063-CJBOCharacter.BINA }}
{{OBDtr| 0x00 | res_id  |FF0000| 01 67 23 00 | 9063      | 09063-CJBOCharacter.BINA }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 06 | 3        | level 3 }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 06 | 3        | level 3 }}
{{OBDtr| 0x00 | int32    |FFC8C8| 34 8B 00 00 | 35636    | size of the part in the raw/sep file in kb }}
{{OBDtr| 0x08 | int32    |FFC8C8| 34 8B 00 00 | 35636    | size of the part in the raw/separate file in bytes }}
{{OBDtr| 0x02 | offset  |FFFFC8| 40 DD E4 00 |00 E4 DD 40| at this position starts the part in the raw/sep file }}
{{OBDtr| 0x0C | offset  |FFFFC8| 40 DD E4 00 |00 E4 DD 40| at this position starts the part in the raw/separate file }}
{{OBDtr| 0x04 | char[16] |C8FFC8| AD DE      | dead      | unused }}
{{OBDtr| 0x10 | char[16] |C8FFC8| AD DE      | dead      | unused }}
|}
|}


==Overview of BINA types==
The different sub-tags of BINA are:


{{OBD_File_Footer | type=WMM_ | prev=WMDD | next=WMMB | name=WM (Window Menu) Menu | family=Global}}
{{Table}}
 
|-BGCOLOR="#E9E9E9"
 
!COLSPAN=8|[[OBD:BINA/OBJC|OBJC]]: Objects...
{{OBD_File_Header|align=right|type=BINA|prev=AKVA|next=CBPI|name=Binary data|family=Start|onistuff=bina}}
|-ALIGN=CENTER
;Structure
|WIDTH=12%|[[OBD:BINA/OBJC/CHAR|CHAR]]<BR>Character
BINA files only have a small (32-byte) header stored in the DAT
|WIDTH=13%|[[OBD:BINA/OBJC/CMBT|CMBT]]<BR>Combat profile
 
|WIDTH=12%|[[OBD:BINA/OBJC/CONS|CONS]]<BR>Console
The only information there is has to do with the binary data in the RAW/SEP :
|WIDTH=13%|[[OBD:BINA/OBJC/DOOR|DOOR]]<BR>Door
*at 0x08, the size of the binary data chunk in the RAW/SEP file
|WIDTH=12%|[[OBD:BINA/OBJC/FLAG|FLAG]]<BR>Flag
*at 0x0C, the offset of the binary data chunk to the start of the RAW/SEP
|WIDTH=13%|[[OBD:BINA/OBJC/FURN|FURN]]<BR>Furniture
;Version-dependence
|WIDTH=12%|[[OBD:BINA/OBJC/MELE|MELE]]<BR>Melee profile
The binary data chunk is stored in the SEP file when available (Mac and PC demo), in the RAW otherwise (PC).
|WIDTH=13%|[[OBD:BINA/OBJC/NEUT|NEUT]]<BR>Neutral behaviour
;Blue Box Beta "revelations"
|-ALIGN=CENTER
See the [[OBD:BINA/OBJC|OBJC]] page
|[[OBD:BINA/OBJC/PART|PART]]<BR>Particle
 
|[[OBD:BINA/OBJC/PATR|PATR]]<BR>Patrol path
 
|[[OBD:BINA/OBJC/PWRU|PWRU]]<BR>Powerup
==BINA types==
|[[OBD:BINA/OBJC/SNDG|SNDG]]<BR>Sound Group
BINA are differentiated by the layout of their RAW/SEP part. The different types are :
|[[OBD:BINA/OBJC/TRGV|TRGV]]<BR>Trigger Volume
{|{{OBDtable}}
|[[OBD:BINA/OBJC/TRIG|TRIG]]<BR>Trigger
|align=center|
|[[OBD:BINA/OBJC/TURR|TURR]]<BR>Turret
{|{{OBDtable}}
|[[OBD:BINA/OBJC/WEAP|WEAP]]<BR>Weapon
|-bgcolor=#FFDDBB
|-BGCOLOR="#E9E9E9"
!colspan=4|[[OBD:BINA/OBJC|OBJC]] : Object Collection...
!COLSPAN=8|[[OBD:BINA/ONIE|ONIE]]: Oni Impact Effects
|-
|-BGCOLOR="#E9E9E9"
|[[OBD:BINA/OBJC/CHAR|CHAR]]<br>Character
!COLSPAN=8|[[OBD:BINA/PAR3|PAR3]]: 3D Particle
|[[OBD:BINA/OBJC/CMBT|CMBT]]<br>Combat profile
|-BGCOLOR="#E9E9E9"
|[[OBD:BINA/OBJC/CONS|CONS]]<br>Console
!COLSPAN=8|[[OBD:BINA/SABD|SABD]]: Sound Animations Binary Data
|[[OBD:BINA/OBJC/DOOR|DOOR]]<br>Door
|-BGCOLOR="#E9E9E9"
|-
!COLSPAN=8|[[OBD:BINA/TMBD|TMBD]]: Texture Materials Binary Data
|[[OBD:BINA/OBJC/FLAG|FLAG]]<br>Flag
|[[OBD:BINA/OBJC/FURN|FURN]]<br>Furniture
|[[OBD:BINA/OBJC/MELE|MELE]]<br>Melee profile
|[[OBD:BINA/OBJC/NEUT|NEUT]]<br>Neutral behaviour
|-
|[[OBD:BINA/OBJC/PART|PART]]<br>Particle
|[[OBD:BINA/OBJC/PATR|PATR]]<br>Patrol path
|[[OBD:BINA/OBJC/PWRU|PWRU]]<br>Powerup
|[[OBD:BINA/OBJC/SNDG|SNDG]]<br>Sound Group
|-
|[[OBD:BINA/OBJC/TRGV|TRGV]]<br>Trigger Volume
|[[OBD:BINA/OBJC/TRIG|TRIG]]<br>Trigger
|[[OBD:BINA/OBJC/TURR|TURR]]<br>Turret
|[[OBD:BINA/OBJC/WEAP|WEAP]]<br>Weapon
|-bgcolor=#FFDDBB
!colspan=4|[[OBD:BINA/ONIE|ONIE]] : Oni Impact Effects
|-bgcolor=#FFDDBB
!colspan=4|[[OBD:BINA/PAR3|PAR3]] : 3D Particle
|-bgcolor=#FFDDBB
!colspan=4|[[OBD:BINA/SABD|SABD]] : Sound Animations Binary Data
|-bgcolor=#FFDDBB
!colspan=4|[[OBD:BINA/TMBD|TMBD]] : Texture Materials Binary Data
|}
|}
|}


==Global BINA types==
These are stored in '''level0_Final''' and are available globally. The file names link to the raw/separate file parts of every BINA type (or object type, for OBJC).


----
{{Table}}
----
|-BGCOLOR="#E9E9E9"
==0x00 - 0x1F==
! WIDTH=30% | Filename || WIDTH=35% | Meaning || WIDTH=35% | Function
;MINIMAL DAT PART
http://www6.fh-eberswalde.de/user/dkriesch/onistuff/images/bina_all.gif
 
 
{|{{OBDtable}}
|align=center|
{|{{OBDtable}}
|-BGCOLOR=#FFDDBB
! WIDTH=15% | Hex
! WIDTH=15% | Translation
! WIDTH=70% | Meaning
|-
|-
| BGCOLOR="#FF0000" | 01 '''67 23''' 00
| [[OBD:BINA/PAR3|3RAP''particle_name''.BINA]]
| 9063
| PAR3 = 3D particles
| ALIGN=LEFT | file ID : 0x2367 = 09063-CJBOCharacter.BINA
| Explosions, projectiles, flashes, trails... everything
|-
|-
| BGCOLOR="#FFFF00" | 01 00 00 '''06'''
| [[OBD:BINA/OBJC/CMBT|CJBO'''Combat'''.BINA]]
| 3
| Combat profile; [[OBD:BINA/OBJC|OBJC]] = Objects
| ALIGN=LEFT | level ID : 0x06 = 6, level 3
| Stores specific (non-melee) behavior: weapon logic, etc.
|-
|-
| BGCOLOR="#FFC8C8" | 34 8B 00 00
| [[OBD:BINA/ONIE|EINO'''impact_effects'''.BINA]]
| 35636
| ONIE = Oni Impact Effects
| ALIGN=LEFT | size of the part in the raw/sep file (in bytes)
| Footsteps, combat sounds, etc.
|-
|-
| BGCOLOR="#FFFFC8" | 40 DD E4 00
| [[OBD:BINA/OBJC/MELE|CJBO'''Melee Profile'''.BINA]]
| E4 DD 40
| Melee profile; [[OBD:BINA/OBJC|OBJC]] = Objects
| ALIGN=LEFT | offset of binary data in the raw/sep file (in bytes)
| Melee profiles
|-
|-
| BGCOLOR="#C8FFC8" | AD DE
| [[OBD:BINA/SABD|DBAS''character_name''.BINA]]
| dead
| SABD = Sound Animations Binary Data
| ALIGN=LEFT | blank filler
| Linked to (by name) from the [[OBD:ONCV|ONCV]] files
|}
|}
 
 
----
----
==Global BINA==
These are stored in '''level0_Final''' and are available globally. The filenames link to the RAW/SEP parts ov every BINA type (or object type for [[OBD:BINA/OBJC|OBJC]]).
{|{{OBDtable}}
|align=center|
{|{{OBDtable}}
|- BGCOLOR="#FFDDBB"
! Filename
! Meaning
! Function
|-
| ALIGN=LEFT | [[OBD:BINA/PAR3|3RAP''particle_name''.BINA]]
| (PAR3 = 3D particles)
| ALIGN=LEFT | Explosions, projectiles, flashes, trails... everything
|-
| ALIGN=LEFT | [[OBD:BINA/OBJC/CMBT|CJBO'''Combat'''.BINA]]
| Combat profile ([[OBD:BINA/OBJC|OBJC]] = Object Collection)
| ALIGN=LEFT | Stores specific (non-melee) behaviour : weapon logic etc
|-
| ALIGN=LEFT | [[OBD:BINA/ONIE|EINO'''impact_effects'''.BINA]]
| (ONIE = Oni Impact Effects)
| ALIGN=LEFT | Footsteps, combat sounds, etc
|-
| ALIGN=LEFT | [[OBD:BINA/OBJC/MELE|CJBO'''Melee Profile'''.BINA]]
| Melee profile ([[OBD:BINA/OBJC|OBJC]] = Object Collection)
| ALIGN=LEFT | Melee profiles (what else?)
|-
| ALIGN=LEFT | [[OBD:BINA/SABD|DBAS''character_name''.BINA]]
| (SABD = Sound Animations Binary Data)
| ALIGN=LEFT | Linked to (by name) from the [[OBD:ONCV|ONCV]] files.
|-
|-
| ALIGN=LEFT | [[OBD:BINA/TMBD|DBMT'''TextureMaterials'''.BINA]]
| [[OBD:BINA/TMBD|DBMT'''TextureMaterials'''.BINA]]
| (TMBD = Texture Materials Binary Data)
| TMBD = Texture Materials Binary Data
| ALIGN=LEFT | ...
| Assigns a material to a texture
|}
|}
|}


==Level-specific BINA types (OBJC)==
Most BINA/OBJC files are stored on a level-by-level basis, though two global OBJCs are listed above. The file names link to the overview of every OBJC type. The table shows whether a BINA/OBJC is present in a certain level.


----
----
==Level-specific [[OBD:BINA/OBJC|OBJC]]==
These are stored on a level-by-level basis. The filenames link to the overview of every OBJC type and the table shows whenever an [[OBD:BINA/OBJC|OBJC]] BINA is absent from a level (empty field).
{{Table}}
{{Table}}
|-BGCOLOR="#E9E9E9"
|-BGCOLOR="#E9E9E9"
! WIDTH=30% | BINA file \ Level || WIDTH=5% | 1 || WIDTH=5% | 2 || WIDTH=5% | 3 || WIDTH=5% | 4 || WIDTH=5% | 6 || WIDTH=5% | 8 || WIDTH=5% | 9 || WIDTH=5% | 10 || WIDTH=5% | 11 || WIDTH=5% | 12 || WIDTH=5% | 13 || WIDTH=5% | 14 || WIDTH=5% | 18 || WIDTH=5% | 19
! WIDTH=30% | BINA file / Level || WIDTH=5% | 1 || WIDTH=5% | 2 || WIDTH=5% | 3 || WIDTH=5% | 4 || WIDTH=5% | 6 || WIDTH=5% | 8 || WIDTH=5% | 9 || WIDTH=5% | 10 || WIDTH=5% | 11 || WIDTH=5% | 12 || WIDTH=5% | 13 || WIDTH=5% | 14 || WIDTH=5% | 18 || WIDTH=5% | 19
|-ALIGN=CENTER
|-ALIGN=CENTER
| ALIGN=LEFT | [[OBD:BINA/OBJC/CHAR|CJBO'''Character'''.BINA]]      ||X||X||X||X||X||X||X||X||X||X||X||X||X||X
| ALIGN=LEFT | [[OBD:BINA/OBJC/CHAR|CJBO'''Character'''.BINA]]      ||X||X||X||X||X||X||X||X||X||X||X||X||X||X
Line 185: Line 118:
|}
|}


{{OBD_File_Footer | type=BINA | prev=AKVA | next=CBPI | name=Binary Data | family=General}}


----
{{OBD}}
----
{{OBD_File_Footer|type=BINA|prev=AKVA|next=CBPI|name=Binary data}}

Latest revision as of 01:57, 8 December 2023

ONI BINARY DATA
AKVA << Other file types >> CBPI
BINA : Binary Data
switch to XML:BINA page
Overview @ Oni Stuff
OBD.png

Introduction

"BINA" is short for "binary data", which refers to chunks of data that are stored in the separate file when available (Windows demo, Mac) or in the raw file otherwise (Windows). BINA is registered as a tag, but is really a wrapper for other tags. One of those tags, OBJC, is a wrapper for still more tags (see below).

File description

Bina all.gif

Offset Type Raw Hex Value Description
0x00 res_id 01 67 23 00 9063 09063-CJBOCharacter.BINA
0x04 lev_id 01 00 00 06 3 level 3
0x08 int32 34 8B 00 00 35636 size of the part in the raw/separate file in bytes
0x0C offset 40 DD E4 00 00 E4 DD 40 at this position starts the part in the raw/separate file
0x10 char[16] AD DE dead unused

Overview of BINA types

The different sub-tags of BINA are:

OBJC: Objects...
CHAR
Character
CMBT
Combat profile
CONS
Console
DOOR
Door
FLAG
Flag
FURN
Furniture
MELE
Melee profile
NEUT
Neutral behaviour
PART
Particle
PATR
Patrol path
PWRU
Powerup
SNDG
Sound Group
TRGV
Trigger Volume
TRIG
Trigger
TURR
Turret
WEAP
Weapon
ONIE: Oni Impact Effects
PAR3: 3D Particle
SABD: Sound Animations Binary Data
TMBD: Texture Materials Binary Data

Global BINA types

These are stored in level0_Final and are available globally. The file names link to the raw/separate file parts of every BINA type (or object type, for OBJC).

Filename Meaning Function
3RAPparticle_name.BINA PAR3 = 3D particles Explosions, projectiles, flashes, trails... everything
CJBOCombat.BINA Combat profile; OBJC = Objects Stores specific (non-melee) behavior: weapon logic, etc.
EINOimpact_effects.BINA ONIE = Oni Impact Effects Footsteps, combat sounds, etc.
CJBOMelee Profile.BINA Melee profile; OBJC = Objects Melee profiles
DBAScharacter_name.BINA SABD = Sound Animations Binary Data Linked to (by name) from the ONCV files
DBMTTextureMaterials.BINA TMBD = Texture Materials Binary Data Assigns a material to a texture

Level-specific BINA types (OBJC)

Most BINA/OBJC files are stored on a level-by-level basis, though two global OBJCs are listed above. The file names link to the overview of every OBJC type. The table shows whether a BINA/OBJC is present in a certain level.

BINA file / Level 1 2 3 4 6 8 9 10 11 12 13 14 18 19
CJBOCharacter.BINA X X X X X X X X X X X X X X
CJBOConsole.BINA X X X X X X X X X     X X X
CJBODoor.BINA X X X X X X X X X X X X X X
CJBOFlag.BINA X X X X X X X X X X X X X X
CJBOFurniture.BINA X X X X X X X X X X X X X X
CJBONeutral.BINA X X X X X X X X X X X X X X
CJBOParticle.BINA X X X X X X X X X X X X X X
CJBOPatrol_Path.BINA X X X X X X X X X X X X X X
CJBOPowerUp.BINA X X X X X X X X X X X X X X
CJBOSound.BINA X X X X X X X X X X X X X X
CJBOTrigger_Volume.BINA X X X X X X X X X X X X X X
CJBOTrigger.BINA X X     X X     X   X X X X
CJBOTurret.BINA   X       X     X   X X X X
CJBOWeapon.BINA     X     X X X X X     X X
ONI BINARY DATA
AKVA << Other file types >> CBPI
BINA : Binary Data
General file