OBD:File types: Difference between revisions
m (fading out BINA tags in "All tags" list) |
m (put Interface below Level in group directory) |
||
(17 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}} | |||
:[[OBD:File types/ | {| style="white-space:nowrap; border-width:0px" | ||
:[[OBD:File types/ | |style="vertical-align:top"| | ||
:[[OBD:File types/Global|Global resources]] | {| 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 | !Tag | ||
!Description | !Description | ||
!OK? | !OK? | ||
|- | |- | ||
![[ABNA]] | ![[ABNA]] | ||
|BSP Tree Node Array | |BSP Tree Node Array | ||
!^_^ | !^_^ | ||
|- | |- | ||
Line 51: | Line 54: | ||
|Gunk Quad General Array | |Gunk Quad General Array | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[AGQR]] | ![[AGQR]] | ||
Line 62: | Line 61: | ||
![[AISA]] | ![[AISA]] | ||
|AI Character Setup Array | |AI Character Setup Array | ||
! | ! | ||
|- | |- | ||
Line 79: | Line 70: | ||
|Side Array | |Side Array | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[AKBP]] | ![[AKBP]] | ||
Line 117: | Line 104: | ||
|- | |- | ||
|align="center"|CMBT | |align="center"|CMBT | ||
|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! -- | ! -- | ||
|- | |- | ||
![[CONS]] | ![[CONS]] | ||
|Console (also see BINA/OBJC | |Console (also see BINA/OBJC/CONS [[#BINA/OBJC tags|⬇︎]]) | ||
!^_^ | !^_^ | ||
|- | |- | ||
Line 129: | Line 116: | ||
|- | |- | ||
![[DOOR]] | ![[DOOR]] | ||
|Door (also see BINA/OBJC | |Door (also see BINA/OBJC/DOOR [[#BINA/OBJC tags|⬇︎]]) | ||
! | ! | ||
|- | |- | ||
Line 135: | Line 122: | ||
|Diary Page | |Diary Page | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[ENVP]] | ![[ENVP]] | ||
Line 155: | Line 138: | ||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! -- | ! -- | ||
|- | |- | ||
![[HPge]] | ![[HPge]] | ||
Line 208: | Line 183: | ||
!^_^ | !^_^ | ||
|} | |} | ||
| | |style="vertical-align:top"| | ||
{| | {| class="wikitable" | ||
|-style="background:#e9e9e9" | |-style="background:#e9e9e9" | ||
! | !Tag | ||
!Description | !Description | ||
!OK? | !OK? | ||
Line 218: | Line 193: | ||
|Geometry | |Geometry | ||
!^_^ | !^_^ | ||
|- | |- | ||
|align="center"|MELE | |align="center"|MELE | ||
Line 234: | Line 205: | ||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! -- | ! -- | ||
|- | |- | ||
![[OBAN]] | ![[OBAN]] | ||
|Object Animation | |Object Animation | ||
!^_^ | !^_^ | ||
|- | |- | ||
|align="center"|''[[OBJC]]'' | |align="center"|''[[OBJC]]'' | ||
|'''Objects''' (OBJC tags are below [[#BINA/OBJC tags|⬇︎]]) | |'''Objects''' (OBJC tags are below [[#BINA/OBJC tags|⬇︎]]) | ||
! -- | ! -- | ||
|- | |- | ||
![[OBOA]] | ![[OBOA]] | ||
Line 274: | Line 233: | ||
|Oni Character Variant | |Oni Character Variant | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[ONGS]] | ![[ONGS]] | ||
Line 298: | Line 253: | ||
|Oni Game Level | |Oni Game Level | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[ONOA]] | ![[ONOA]] | ||
|Object Gunk Array | |Object Gunk Array | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[ONSK]] | ![[ONSK]] | ||
|Oni Sky Class | |Oni Sky Class | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[ONVL]] | ![[ONVL]] | ||
Line 378: | Line 321: | ||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! -- | ! -- | ||
|- | |- | ||
![[QTNA]] | ![[QTNA]] | ||
Line 392: | Line 331: | ||
|} | |} | ||
|style="vertical-align:top"| | |style="vertical-align:top"| | ||
{| | {| class="wikitable" | ||
|-style="background:#e9e9e9" | |-style="background:#e9e9e9" | ||
! | !Tag | ||
!Description | !Description | ||
!OK? | !OK? | ||
Line 405: | Line 344: | ||
|style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | |style="color:#909090"|see BINA/OBJC tags [[#BINA/OBJC tags|⬇︎]] | ||
! -- | ! -- | ||
|- | |- | ||
![[SUBT]] | ![[SUBT]] | ||
Line 417: | Line 352: | ||
|style="color:#909090"|see BINA tags [[#BINA tags|⬇︎]] | |style="color:#909090"|see BINA tags [[#BINA tags|⬇︎]] | ||
! -- | ! -- | ||
|- | |- | ||
![[TRAC]] | ![[TRAC]] | ||
Line 445: | Line 372: | ||
|Totoro Quaternion Body | |Totoro Quaternion Body | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[TRGA]] | ![[TRGA]] | ||
Line 467: | Line 390: | ||
|- | |- | ||
![[TRIG]] | ![[TRIG]] | ||
|Trigger (also see BINA/OBJC | |Trigger (also see BINA/OBJC/TRIG [[#BINA/OBJC tags|⬇︎]]) | ||
!^_^ | !^_^ | ||
|- | |- | ||
Line 496: | Line 419: | ||
![[TSGA]] | ![[TSGA]] | ||
|Glyph Array | |Glyph Array | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[TURR]] | ![[TURR]] | ||
|Turret (also see BINA/OBJC | |Turret (also see BINA/OBJC/TURR [[#BINA/OBJC tags|⬇︎]]) | ||
! | ! | ||
|- | |- | ||
Line 525: | Line 444: | ||
|Texture Map | |Texture Map | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[TxtC]] | ![[TxtC]] | ||
|Text Console | |Text Console | ||
!^_^ | !^_^ | ||
|- | |- | ||
![[VCRA]] | ![[VCRA]] | ||
Line 573: | Line 480: | ||
==BINA tags== | ==BINA tags== | ||
Chunks of binary data stored in the .raw/.sep files, including OBJC object lists. | |||
{| style="white-space:nowrap" width=33% | {| style="white-space:nowrap" width=33% | ||
| | | | ||
{| | {| class="wikitable" | ||
|-style="background:#e9e9e9" | |-style="background:#e9e9e9" | ||
! | !Tag | ||
!Description | !Description | ||
!OK? | !OK? | ||
Line 600: | Line 508: | ||
==BINA/OBJC tags== | ==BINA/OBJC tags== | ||
Lists of objects within a level, stored in the .raw/.sep files. | |||
{| style="white-space:nowrap" width=100% | {| style="white-space:nowrap" width=100% | ||
| | | | ||
{| | {| class="wikitable" width=100% | ||
|-style="background:#e9e9e9" | |-style="background:#e9e9e9" | ||
! | !style="width:43px;"|Tag | ||
!Description | !Description | ||
!OK? | !style="width:30px;"|OK? | ||
|- | |- | ||
![[CHAR]] | ![[CHAR]] | ||
Line 616: | Line 525: | ||
! | ! | ||
|- | |- | ||
![[CONS]] | ![[OBD:BINA/OBJC/CONS|CONS]] | ||
|Console | |Console | ||
! | ! | ||
|- | |- | ||
![[DOOR]] | ![[OBD:BINA/OBJC/DOOR|DOOR]] | ||
|Door | |Door | ||
! | ! | ||
Line 632: | Line 541: | ||
! | ! | ||
|} | |} | ||
| | |style="vertical-align:top"| | ||
{| | {| class="wikitable" width=100% | ||
|-style="background:#e9e9e9" | |-style="background:#e9e9e9" | ||
! | !style="width:43px;"|Tag | ||
!Description | !Description | ||
!OK? | !style="width:30px;"|OK? | ||
|- | |- | ||
![[MELE]] | ![[MELE]] | ||
Line 658: | Line 567: | ||
|Powerup | |Powerup | ||
! | ! | ||
|} | |||
|style="vertical-align:top"| | |||
{| class="wikitable" width=100% | |||
|-style="background:#e9e9e9" | |||
!style="width:43px;"|Tag | |||
!Description | |||
!style="width:30px;"|OK? | |||
|- | |- | ||
![[SNDG]] | ![[SNDG]] | ||
|Sound Group | |Sound Group | ||
! | ! | ||
|- | |- | ||
![[TRGV]] | ![[TRGV]] | ||
Line 674: | Line 583: | ||
! | ! | ||
|- | |- | ||
![[TRIG]] | ![[OBD:BINA/OBJC/TRIG|TRIG]] | ||
|Trigger | |Trigger | ||
! | ! | ||
|- | |- | ||
![[TURR]] | ![[OBD:BINA/OBJC/TURR|TURR]] | ||
|Turret | |Turret | ||
! | ! | ||
Line 685: | Line 594: | ||
|Weapon | |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]] | |||
|Gunk Quad Debug Array | |||
!^_^ | |||
|- | |||
![[AITR]] | |||
|AI Script Trigger Array | |||
! | |||
|- | |||
![[AKDA]] | |||
|Door Frame Array | |||
! | |||
|- | |||
![[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]] | |||
|Imported Flag Node Array | |||
! | |||
|- | |||
![[ONMA]] | |||
|Imported Marker Node Array | |||
! | |||
|- | |||
![[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]] | |||
|Trigger Array | |||
! | |||
|- | |||
![[StNA]] | |||
|String Array | |||
!^_^ | |||
|- | |||
![[TStr]] | |||
|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.
|
|
|