OBD:BINA/OBJC
< OBD:BINA
Jump to navigation
Jump to search
|
- Example file
- CJBOPowerUp.BINA from dunno where (level 3, probably)
- Offsets
- Offsets are given with respect to RAW part start.
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
0x00 | 4CC | 43 4A 42 4F | OBJC | object collection |
0x04 | int32 | 18 02 00 00 | 536 | size to end of OBJC from 0x08, in bytes |
0x08 | int32 | 27 00 00 00 | 39 | "identification number for the weapon classes; in every level the same; do not change it. ssg" |
0x0C | int32 | 28 00 00 00 | 40 | size of next (first) object (black outline) |
0x10 - 0x37 : first object (40 bytes) | ||||
0x38 | int32 | 28 00 00 00 | 40 | size of next (second) object |
0x3C - ... : second object (40 bytes), etc |
- General layout
- The collection's header (first 16 bytes) and layout is common to all 16 OBJC types (see below).
- The size of the whole collection is announced at 0x04 (int32), followed by the collection.
- Unlike ONIE and TMBD (which are arrays), OBJC announces the size of every object (int32).
- After the last object, the end of the collection is signaled by a null next object size.
- "Weapon classes?"
- If anyone can explain me WTF weapon classes have to do with it, I'd be greatly appreciative. geyser
OBJC types
A given collection can only hold objects of a specific type, which can be :
|
- Blue Box Beta "revelations"
- A German Mac Beta version was released as part of a compilation of old Mac games.
- The version contained extra WMDD files, part of Oni's developer GUI.
- Supposedly it allowed developers to edit OBJC files while running the game.
- Those menus provide additional information about the structure of a few OBJC types.
- That info used to be available as HTML HERE
- Now it's available as screenshots on the respective pages.
ONI BINARY DATA |
---|
AKVA << Other file types >> CBPI |
BINA : Binary data |
TMBD << Other BINA >> ONIE |
OBJC : Object Collection |
[[OBD:File types/{{{family}}}|{{{family}}} file]] |