OBD:File types: Difference between revisions
(beginning to revise layout and contents; removed category coloring; added defunct types from /Defunct, temporarily marked in pink) |
m (put Interface below Level in group directory) |
||
(21 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{OBD Home}} | {{OBD Home}} | ||
'''File types''' are what we call Oni's different resource types, even though these resources are combined together into a few large files on disk (see [[Instance file]] to learn about them). Each type of resource or "file" is designated by a [[wp:FourCC|FourCC]], commonly referred to as a "tag" in other modding communities. Each file type is made up of fields with individual pieces of data (see [[OBD:Data types]] to learn how they're stored). | |||
There are 135 file types documented below – 87 regular types, 2 wrapper types (BINA and OBJC), 4 BINA subtypes, 16 BINA/OBJC subtypes, 16 defunct types, and 10 unused types. There is a less technical set of documentation in the [[XML]] namespace for most of the file types, but the database below is our core reference for the file format and thus is the ultimate authority from which we create the XML documentation and our modding tools. | |||
For convenience, the BINA and BINA/OBJC tags are listed in the "All tags" table, but redirect to their own separate tables below that. The unused and defunct tags are listed only in their separate tables at the bottom. | |||
{{TOCfloat}} | |||
{| style="white-space:nowrap; border-width:0px" | |||
|style="vertical-align:top"| | |||
{| cellpadding="0" cellspacing="5" | |||
|- | |||
!Categories | |||
|- | |||
|View the below resource types grouped by purpose. | |||
|- | |||
|• [[OBD:File types/Character|Character]] | |||
|- | |||
|• [[OBD:File types/Level|Level]] | |||
|- | |||
|• [[OBD:File types/Interface|Interface]] | |||
|- | |||
|• [[OBD:File types/General|General]] | |||
|} | |||
|style="vertical-align:top"| | |||
{| cellpadding="0" cellspacing="5" | |||
|- | |||
!Resources | |||
|- | |||
|[[OBD:File types/Naming|Named/unnamed resources]] | |||
|- | |||
|[[OBD:File types/Global|Global resources]] | |||
|} | |||
|} | |||
==All used tags== | |||
Here are the 109 file types that Oni actually uses, or 107 if you don't count the wrapper types "BINA" and "OBJC". The regular types' tag codes in this table link to their byte-level documentation, and the BINA and OBJC tag codes direct you to the lower tables devoted to those collections. (There are actually 105 entries in this table since four OBJC subtypes have the same tag codes as regular types, as marked by the "also see" notes.) | |||
{| style="white-space:nowrap" width=100% | {| style="white-space:nowrap" width=100% | ||
| | |style="vertical-align:top"| | ||
{| | {| class="wikitable" | ||
|-style="background:#e9e9e9" | |-style="background:#e9e9e9" | ||
! | !Tag | ||
!Description | !Description | ||
!OK? | !OK? | ||
|- | |- | ||
![[ABNA]] | ![[ABNA]] | ||
Line 43: | Line 54: | ||
|Gunk Quad General Array | |Gunk Quad General Array | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[AGQR]] | ![[AGQR]] | ||
Line 54: | Line 61: | ||
![[AISA]] | ![[AISA]] | ||
|AI Character Setup Array | |AI Character Setup Array | ||
! | ! | ||
|- | |- | ||
Line 84: | Line 87: | ||
! | ! | ||
|- | |- | ||
|align="center"|''[[BINA]]'' | |||
|Binary Data | |'''Binary Data''' (BINA tags are below [[#BINA tags|⬇︎]]) | ||
! -- | |||
|- | |- | ||
![[CBPI]] | ![[CBPI]] | ||
Line 95: | Line 98: | ||
|Character Body Part Material | |Character Body Part Material | ||
!^_^ | !^_^ | ||
|- | |||
|align="center"|CHAR | |||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |||
! -- | |||
|- | |||
|align="center"|CMBT | |||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |||
! -- | |||
|- | |- | ||
![[CONS]] | ![[CONS]] | ||
|Console | |Console (also see BINA/OBJC/CONS [[#BINA/OBJC tags|⬇︎]]) | ||
!^_^ | !^_^ | ||
|- | |- | ||
Line 105: | Line 116: | ||
|- | |- | ||
![[DOOR]] | ![[DOOR]] | ||
|Door | |Door (also see BINA/OBJC/DOOR [[#BINA/OBJC tags|⬇︎]]) | ||
! | ! | ||
|- | |- | ||
Line 111: | Line 122: | ||
|Diary Page | |Diary Page | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[ENVP]] | ![[ENVP]] | ||
Line 124: | Line 131: | ||
! | ! | ||
|- | |- | ||
|align="center"|FLAG | |||
| | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! | ! -- | ||
|- | |- | ||
|align="center"|FURN | |||
| | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! | ! -- | ||
|- | |- | ||
![[HPge]] | ![[HPge]] | ||
Line 175: | Line 182: | ||
|Geometry Array | |Geometry Array | ||
!^_^ | !^_^ | ||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" | |||
|-style="background:#e9e9e9" | |||
!Tag | |||
!Description | |||
!OK? | |||
|- | |- | ||
![[M3GM]] | ![[M3GM]] | ||
Line 180: | Line 194: | ||
!^_^ | !^_^ | ||
|- | |- | ||
|align="center"|MELE | |||
| | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! | ! -- | ||
|- | |- | ||
![[Mtrl]] | ![[Mtrl]] | ||
Line 188: | Line 202: | ||
!^_^ | !^_^ | ||
|- | |- | ||
|align="center"|NEUT | |||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |||
! -- | |||
| | |||
| | |||
! | |||
|- | |- | ||
![[OBAN]] | ![[OBAN]] | ||
Line 203: | Line 210: | ||
!^_^ | !^_^ | ||
|- | |- | ||
|align="center"|''[[OBJC]]'' | |||
| | |'''Objects''' (OBJC tags are below [[#BINA/OBJC tags|⬇︎]]) | ||
! | ! -- | ||
|- | |- | ||
![[OBOA]] | ![[OBOA]] | ||
Line 234: | Line 241: | ||
|Oni Character Impact Array | |Oni Character Impact Array | ||
!^_^ | !^_^ | ||
|- | |||
|align="center"|ONIE | |||
|style="color:#909090"|see BINA tags [[#BINA tags|⬇︎]] | |||
! -- | |||
|- | |- | ||
![[ONLD]] | ![[ONLD]] | ||
Line 274: | Line 285: | ||
|Oct Tree Leaf Node Array | |Oct Tree Leaf Node Array | ||
!^_^ | !^_^ | ||
|- | |||
|align="center"|PAR3 | |||
|style="color:#909090"|see BINA tags [[#BINA tags|⬇︎]] | |||
! -- | |||
|- | |||
|align="center"|PART | |||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |||
! -- | |||
|- | |||
|align="center"|PATR | |||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |||
! -- | |||
|- | |- | ||
![[PLEA]] | ![[PLEA]] | ||
Line 295: | Line 318: | ||
!^_^ | !^_^ | ||
|- | |- | ||
|align="center"|PWRU | |||
| | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! | ! -- | ||
|- | |- | ||
![[QTNA]] | ![[QTNA]] | ||
|Quad Tree Node Array | |Quad Tree Node Array | ||
!^_^ | !^_^ | ||
|- | |||
|align="center"|SABD | |||
|style="color:#909090"|see BINA tags [[#BINA tags|⬇︎]] | |||
! -- | |||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" | |||
|-style="background:#e9e9e9" | |||
!Tag | |||
!Description | |||
!OK? | |||
|- | |- | ||
![[SNDD]] | ![[SNDD]] | ||
|Sound Data | |Sound Data | ||
!^_^ | !^_^ | ||
|- | |||
|align="center"|SNDG | |||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |||
! -- | |||
|- | |- | ||
![[SUBT]] | ![[SUBT]] | ||
Line 311: | Line 349: | ||
!^_^ | !^_^ | ||
|- | |- | ||
|align="center"|TMBD | |||
|style="color:#909090"|see BINA tags [[#BINA tags|⬇︎]] | |||
! -- | |||
| | |||
| | |||
! | |||
|- | |- | ||
![[TRAC]] | ![[TRAC]] | ||
Line 338: | Line 372: | ||
|Totoro Quaternion Body | |Totoro Quaternion Body | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[TRGA]] | ![[TRGA]] | ||
Line 350: | Line 380: | ||
|Trigger Emitter | |Trigger Emitter | ||
!^_^ | !^_^ | ||
| | |- | ||
|align="center"|TRGV | |||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |||
| | ! -- | ||
! | |||
|- | |- | ||
![[TRIA]] | ![[TRIA]] | ||
Line 363: | Line 390: | ||
|- | |- | ||
![[TRIG]] | ![[TRIG]] | ||
|Trigger | |Trigger (also see BINA/OBJC/TRIG [[#BINA/OBJC tags|⬇︎]]) | ||
!^_^ | !^_^ | ||
|- | |- | ||
Line 395: | Line 422: | ||
|- | |- | ||
![[TURR]] | ![[TURR]] | ||
|Turret | |Turret (also see BINA/OBJC/TURR [[#BINA/OBJC tags|⬇︎]]) | ||
! | ! | ||
|- | |- | ||
Line 417: | Line 444: | ||
|Texture Map | |Texture Map | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[TxtC]] | ![[TxtC]] | ||
|Text Console | |Text Console | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[VCRA]] | ![[VCRA]] | ||
|3D Vector Array | |3D Vector Array | ||
!^_^ | !^_^ | ||
|- | |||
|align="center"|WEAP | |||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |||
! -- | |||
|- | |- | ||
![[WMCL]] | ![[WMCL]] | ||
Line 457: | Line 476: | ||
|Weapon Page | |Weapon Page | ||
!^_^ | !^_^ | ||
|} | |||
|} | |||
==BINA tags== | |||
Chunks of binary data stored in the .raw/.sep files, including OBJC object lists. | |||
{| style="white-space:nowrap" width=33% | |||
| | |||
{| class="wikitable" | |||
|-style="background:#e9e9e9" | |||
!Tag | |||
!Description | |||
!OK? | |||
|- | |||
![[ONIE]] | |||
|Oni Impact Effects | |||
! | |||
|- | |||
![[PAR3]] | |||
|3D Particle | |||
! | |||
|- | |||
![[SABD]] | |||
|Sound Animations Binary Data | |||
! | |||
|- | |||
![[TMBD]] | |||
|Texture Materials Binary Data | |||
! | |||
|} | |||
|} | |||
==BINA/OBJC tags== | |||
Lists of objects within a level, stored in the .raw/.sep files. | |||
{| style="white-space:nowrap" width=100% | |||
| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |||
![[CHAR]] | |||
|Character | |||
! | |||
|- | |||
![[CMBT]] | |||
|Combat profile | |||
! | |||
|- | |- | ||
! | ![[OBD:BINA/OBJC/CONS|CONS]] | ||
|Console | |||
! | |||
|- | |||
![[OBD:BINA/OBJC/DOOR|DOOR]] | |||
|Door | |||
! | |||
|- | |||
![[FLAG]] | |||
|Flag | |||
! | |||
|- | |||
![[FURN]] | |||
|Furniture | |||
! | |||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |||
![[MELE]] | |||
|Melee profile | |||
! | |||
|- | |||
![[NEUT]] | |||
|Neutral behavior | |||
! | |||
|- | |||
![[PART]] | |||
|Particle | |||
! | |||
|- | |||
![[PATR]] | |||
|Patrol path | |||
! | |||
|- | |||
![[PWRU]] | |||
|Powerup | |||
! | |||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |||
![[SNDG]] | |||
|Sound Group | |||
! | |||
|- | |||
![[TRGV]] | |||
|Trigger Volume | |||
! | |||
|- | |||
![[OBD:BINA/OBJC/TRIG|TRIG]] | |||
|Trigger | |||
! | |||
|- | |||
![[OBD:BINA/OBJC/TURR|TURR]] | |||
|Turret | |||
! | |||
|- | |||
![[WEAP]] | |||
|Weapon | |||
! | |||
|} | |||
|} | |||
==Unused tags== | |||
Unused types still exist in the game data, and are typically looked up by the engine, but are not used. | |||
{| style="white-space:nowrap" width=100% | |||
| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |- | ||
![[AGDB]] | ![[AGDB]] | ||
|Gunk Quad Debug Array | |||
!^_^ | !^_^ | ||
|- | |- | ||
![[AITR]] | ![[AITR]] | ||
|AI Script Trigger Array | |||
! | ! | ||
|- | |- | ||
![[AKDA]] | ![[AKDA]] | ||
|Door Frame Array | |||
! | ! | ||
|- | |- | ||
![[OBDC]] | ![[OBDC]] | ||
|Door Class Array | |||
! | ! | ||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |- | ||
![[ONFA]] | ![[ONFA]] | ||
|Imported Flag Node Array | |||
! | ! | ||
|- | |- | ||
![[ONMA]] | ![[ONMA]] | ||
|Imported Marker Node Array | |||
! | ! | ||
|- | |- | ||
![[ONSA]] | ![[ONSA]] | ||
|Imported Spawn Array | |||
! | ! | ||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |- | ||
![[ONTA]] | ![[ONTA]] | ||
|Trigger Array | |||
! | ! | ||
|- | |- | ||
![[StNA]] | ![[StNA]] | ||
|String Array | |||
!^_^ | !^_^ | ||
|- | |- | ||
![[TStr]] | ![[TStr]] | ||
|style="background: | |String | ||
!^_^ | |||
|} | |||
|} | |||
==Defunct tags== | |||
Defunct types still have templates registered for them in the engine, but the data does not exist any longer. We have not bothered to document the data using their templates, except for "OBLS", which was of interest because it was linked to "TURR" and because we have an editing window for it from the [[level0_Tools]] resources. | |||
{| style="white-space:nowrap" width=100% | |||
| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |||
!3CLA | |||
|RGB Color Array | |||
! -- | |||
|- | |||
!AGQM | |||
|Gunk Quad Material | |||
! -- | |||
|- | |||
!AIWA | |||
|AI Imported Waypoint Array | |||
! -- | |||
|- | |||
!EDIA | |||
|Edge Index Array | |||
! -- | |||
|- | |||
!FXLR | |||
|FX Laser Effect | |||
! -- | |||
|- | |||
!GMAN | |||
|Geometry Animation | |||
! -- | |||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |||
!M3TA | |||
|Triangle Array | |||
! -- | |||
|- | |||
!NMSA | |||
|Network Spawn Point Array | |||
! -- | |||
|- | |||
![[OBLS]] | |||
|Object LS Data | |||
!^_^ | !^_^ | ||
|- | |||
!QUDA | |||
|Quad Array | |||
! -- | |||
|- | |||
!TMFA | |||
|Float Array | |||
! -- | |||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |||
!TMRA | |||
|Template Reference Array | |||
! -- | |||
|- | |||
!TRFT | |||
|Totoro Facing Table | |||
! -- | |||
|- | |||
!TXPC | |||
|Texture Procedure Data | |||
! -- | |||
|- | |||
!UUEA | |||
|Error Binding Array | |||
! -- | |||
|- | |||
!UVDL | |||
|UV Data List | |||
! -- | |||
|} | |} | ||
|} | |} | ||
{{OBD}} | {{OBD}} |
Latest revision as of 19:33, 9 December 2023
File types are what we call Oni's different resource types, even though these resources are combined together into a few large files on disk (see Instance file to learn about them). Each type of resource or "file" is designated by a FourCC, commonly referred to as a "tag" in other modding communities. Each file type is made up of fields with individual pieces of data (see OBD:Data types to learn how they're stored).
There are 135 file types documented below – 87 regular types, 2 wrapper types (BINA and OBJC), 4 BINA subtypes, 16 BINA/OBJC subtypes, 16 defunct types, and 10 unused types. There is a less technical set of documentation in the XML namespace for most of the file types, but the database below is our core reference for the file format and thus is the ultimate authority from which we create the XML documentation and our modding tools.
For convenience, the BINA and BINA/OBJC tags are listed in the "All tags" table, but redirect to their own separate tables below that. The unused and defunct tags are listed only in their separate tables at the bottom.
|
|
All used tags
Here are the 109 file types that Oni actually uses, or 107 if you don't count the wrapper types "BINA" and "OBJC". The regular types' tag codes in this table link to their byte-level documentation, and the BINA and OBJC tag codes direct you to the lower tables devoted to those collections. (There are actually 105 entries in this table since four OBJC subtypes have the same tag codes as regular types, as marked by the "also see" notes.)
|
|
|
BINA tags
Chunks of binary data stored in the .raw/.sep files, including OBJC object lists.
|
BINA/OBJC tags
Lists of objects within a level, stored in the .raw/.sep files.
|
|
|
Unused tags
Unused types still exist in the game data, and are typically looked up by the engine, but are not used.
|
|
|
Defunct tags
Defunct types still have templates registered for them in the engine, but the data does not exist any longer. We have not bothered to document the data using their templates, except for "OBLS", which was of interest because it was linked to "TURR" and because we have an editing window for it from the level0_Tools resources.
|
|
|