OBD:ONLD: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (design)
m (changed family)
 
(6 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{OBD_File_Header | type=ONLD | prev=ONIA | next=ONLV | name=Oni Game Level Descriptor | family=Global | align=center}}
{{OBD_File_Header | type=ONLD | prev=ONIA | next=ONLV | name=Oni Game Level Descriptor | family=Level | align=center}}




[[image:onld_all.gif]]
[[Image:onld_all.gif]]




Line 10: Line 10:
{{OBDtr| 0x00 | res_id  |FF0000| 01 D5 05 00 | 1493 | 01493-level_01.ONLD }}
{{OBDtr| 0x00 | res_id  |FF0000| 01 D5 05 00 | 1493 | 01493-level_01.ONLD }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 00 | 0    | level 0 }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 00 | 0    | level 0 }}
{{OBDtr| 0x08 | int16    |FFC8C8| 01 00      | 13  | this is level 1 }}
{{OBDtr| 0x08 | int16    |FFC8C8| 01 00      | 1    | current level number is… }}
{{OBDtr| 0x0A | int16    |FFFFC8| 02 00      | 13  | next is level 2 }}
{{OBDtr| 0x0A | int16    |FFFFC8| 02 00      | 2    | next level should be… (ignored; Oni will pick the next highest level number no matter what you place here) }}
{{OBDtr2|0x0C | char[64] |C8FFC8| TCTF-Training      | name of the level; you'll find it in the list, when you load a level }}
{{OBDtr2|0x0C | char[64] |C8FFC8| TCTF-Training      | name of the level; you'll find it in the list, when you load a level }}
{{OBDtr| 0x4C | char[20] |C8FFFF| AD DE      | dead | unused }}
{{OBDtr| 0x4C | char[20] |C8FFFF| AD DE      | dead | unused }}
Line 17: Line 17:




{{OBD_File_Footer | type=ONLD | prev=ONIA | next=ONLV | name=Oni Game Level Descriptor | family=Global}}
;Hardcoded level name
The name of Chapter 1, "Syndicate Warehouse", is hardcoded into the engine rather than coming from the ONLD. That's because [[{{C0}}]] and [[{{C1}}]] share level1_Final.dat, which means that the ONLD could only provide a name for one chapter or the other. The loser was Syndicate Warehouse; BWest hardcoded its name to appear in place of what would have been Save Point 1 of TCTF Training (and shifted the numbering of the other save points down by one). The historical reason for this odd two-levels-in-one situation is that Combat Training was added to Oni in the final rushed month of development.
 
{{OBD_File_Footer | type=ONLD | prev=ONIA | next=ONLV | name=Oni Game Level Descriptor | family=Level}}
 
{{OBD}}

Latest revision as of 21:27, 9 December 2023

ONI BINARY DATA
ONIA << Other file types >> ONLV
ONLD : Oni Game Level Descriptor
switch to XML:ONLD page
Overview @ Oni Stuff
OBD.png


Onld all.gif


Offset Type Raw Hex Value Description
0x00 res_id 01 D5 05 00 1493 01493-level_01.ONLD
0x04 lev_id 01 00 00 00 0 level 0
0x08 int16 01 00 1 current level number is…
0x0A int16 02 00 2 next level should be… (ignored; Oni will pick the next highest level number no matter what you place here)
0x0C char[64] TCTF-Training name of the level; you'll find it in the list, when you load a level
0x4C char[20] AD DE dead unused


Hardcoded level name

The name of Chapter 1, "Syndicate Warehouse", is hardcoded into the engine rather than coming from the ONLD. That's because CHAPTER 00 . COMBAT TRAINING and CHAPTER 01 . TRIAL RUN share level1_Final.dat, which means that the ONLD could only provide a name for one chapter or the other. The loser was Syndicate Warehouse; BWest hardcoded its name to appear in place of what would have been Save Point 1 of TCTF Training (and shifted the numbering of the other save points down by one). The historical reason for this odd two-levels-in-one situation is that Combat Training was added to Oni in the final rushed month of development.

ONI BINARY DATA
ONIA << Other file types >> ONLV
ONLD : Oni Game Level Descriptor
Level file