OBD:DOOR: Difference between revisions
Jump to navigation
Jump to search
(sleepy eh?) |
m (changed family) |
||
(6 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
:''This is about the door class resource. For door instances, see [[OBD:BINA/OBJC/DOOR]] | :''This is about the door class resource. For door instances, see [[OBD:BINA/OBJC/DOOR]]. | ||
{{OBD_File_Header | type=DOOR | prev=CRSA | next=DPge | name=Door | family= | {{OBD_File_Header | type=DOOR | prev=CRSA | next=DPge | name=Door | family=Level | align=center}} | ||
Line 13: | Line 13: | ||
{{OBDtr| 0x0C | link |FFFFC8| 00 00 00 00 | unused | link to another [[OBD:OFGA|OFGA]] file; never used in Oni }} | {{OBDtr| 0x0C | link |FFFFC8| 00 00 00 00 | unused | link to another [[OBD:OFGA|OFGA]] file; never used in Oni }} | ||
{{OBDtr| 0x10 | link |C8FFC8| 01 28 03 00 | 808 | link to 00808-small_anim.[[OBD:OBAN|OBAN]] }} | {{OBDtr| 0x10 | link |C8FFC8| 01 28 03 00 | 808 | link to 00808-small_anim.[[OBD:OBAN|OBAN]] }} | ||
{{OBDtr| 0x14 | float |C8FFFF| 00 00 00 3F | 0.500000 | unknown | {{OBDtr| 0x14 | float |C8FFFF| 00 00 00 3F | 0.500000 | passable sound attenuation, exact formula unknown }} | ||
{{OBDtr| 0x18 | int32 |FFC8FF| 02 00 00 00 | 2 | | {{OBDtr| 0x18 | int32 |FFC8FF| 02 00 00 00 | 2 | AI sound types which are allowed to pass, see below }} | ||
{{OBDtr| 0x1C | int32 |FFC800| FF FF FF FF | -1 | AI sound type: | {{OBDtr| 0x1C | int32 |FFC800| FF FF FF FF | -1 | AI sound type: | ||
:-1 - no sound | :-1 - no sound | ||
:0 - | :0 - unimportant | ||
:1 - interest | :1 - interest | ||
:2 - danger | :2 - danger | ||
:3 - melee | :3 - melee | ||
:4 - | :4 - gunfire }} | ||
{{OBDtr| 0x20 | float |C800C8| 00 00 C8 42 |100.000000| AI sound | {{OBDtr| 0x20 | float |C800C8| 00 00 C8 42 |100.000000| AI sound radius }} | ||
{{OBDtr2|0x24 | char[32] |C87C64| door2_shrt | door open sound (reference to 08355-door2_shrt.[[OBD:OSBD/OSIm|imp.OSBD]]) }} | {{OBDtr2|0x24 | char[32] |C87C64| door2_shrt | door open sound (reference to 08355-door2_shrt.[[OBD:OSBD/OSIm|imp.OSBD]]) }} | ||
{{OBDtr2|0x44 | char[32] |B0C3D4| door2_shrt | door close sound (reference to 08355-door2_shrt.[[OBD:OSBD/OSIm|imp.OSBD]]) }} | {{OBDtr2|0x44 | char[32] |B0C3D4| door2_shrt | door close sound (reference to 08355-door2_shrt.[[OBD:OSBD/OSIm|imp.OSBD]]) }} | ||
{{OBDtr| 0x64 | int32 |E7CEA5| 00 00 00 00 | 0 | runtime only }} | {{OBDtr| 0x64 | int32 |E7CEA5| 00 00 00 00 | 0 | runtime only }} | ||
{{OBDtr| 0x68 | int32 |FFDDDD| 00 00 00 00 | 0 | runtime only }} | {{OBDtr| 0x68 | int32 |FFDDDD| 00 00 00 00 | 0 | runtime only }} | ||
|} | |} | ||
'''Geometry and animation''' | |||
*The geometry referenced here is normally used only when a level is designed. Once a level is created the geometry is baked into the [[OBD:AKEV|environment]] and it is also copied into a separate geometry that is referenced by an [[OBD:OBOA|object]]. The texture referenced by the door geometry may be overridden by the texture specified in the [[OBD:BINA/OBJC/DOOR|door object]]. | |||
*In contrast, the door animation is used in-game. Unlike other object animations, door animations are "local" or relative; they do not contain the absolute door position, and as a result they can be used for doors in different locations. | |||
'''About passable sounds''' (fields 0x14, 0x18) | |||
*Selected sound types (field 0x18) are allowed to pass through a door while the rest of the sound types are halted as if the door were a wall. To be clear, this is in reference to the sound spheres used by the AI; it does not affect a player's ability to hear the actual sounds. | |||
*0x18: | |||
:*0 - all sound types allowed through | |||
:*1 - '''unimportant''' and '''interest''' sound types halted, rest allowed through | |||
:*2 - '''unimportant''', '''interest''', '''danger''','''melee''' sound types halted, '''gunfire''' type allowed through | |||
:*3 - all sound types halted | |||
*When an AI2 sound sphere is allowed to pass, it is "attenuated" (field 0x14) — its reach is shortened. This shortening is not visible via '''ai2_showsounds=1''' (the command will show the whole AI2 sound sphere). The attenuation does not depend on how far from the door the source of the sound is. | |||
{{OBD_File_Footer | type=DOOR | prev=CRSA | next=DPge | name=Door | family=Level}} | |||
{{ | {{OBD}} |
Latest revision as of 21:26, 9 December 2023
- This is about the door class resource. For door instances, see OBD:BINA/OBJC/DOOR.
|
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
0x00 | res_id | 01 2B 03 00 | 811 | 00811-wh_door1side.DOOR |
0x04 | lev_id | 01 00 00 00 | 0 | level 0 |
0x08 | link | 01 2C 03 00 | 812 | link to 00812-.OFGA |
0x0C | link | 00 00 00 00 | unused | link to another OFGA file; never used in Oni |
0x10 | link | 01 28 03 00 | 808 | link to 00808-small_anim.OBAN |
0x14 | float | 00 00 00 3F | 0.500000 | passable sound attenuation, exact formula unknown |
0x18 | int32 | 02 00 00 00 | 2 | AI sound types which are allowed to pass, see below |
0x1C | int32 | FF FF FF FF | -1 | AI sound type:
|
0x20 | float | 00 00 C8 42 | 100.000000 | AI sound radius |
0x24 | char[32] | door2_shrt | door open sound (reference to 08355-door2_shrt.imp.OSBD) | |
0x44 | char[32] | door2_shrt | door close sound (reference to 08355-door2_shrt.imp.OSBD) | |
0x64 | int32 | 00 00 00 00 | 0 | runtime only |
0x68 | int32 | 00 00 00 00 | 0 | runtime only |
Geometry and animation
- The geometry referenced here is normally used only when a level is designed. Once a level is created the geometry is baked into the environment and it is also copied into a separate geometry that is referenced by an object. The texture referenced by the door geometry may be overridden by the texture specified in the door object.
- In contrast, the door animation is used in-game. Unlike other object animations, door animations are "local" or relative; they do not contain the absolute door position, and as a result they can be used for doors in different locations.
About passable sounds (fields 0x14, 0x18)
- Selected sound types (field 0x18) are allowed to pass through a door while the rest of the sound types are halted as if the door were a wall. To be clear, this is in reference to the sound spheres used by the AI; it does not affect a player's ability to hear the actual sounds.
- 0x18:
- 0 - all sound types allowed through
- 1 - unimportant and interest sound types halted, rest allowed through
- 2 - unimportant, interest, danger,melee sound types halted, gunfire type allowed through
- 3 - all sound types halted
- When an AI2 sound sphere is allowed to pass, it is "attenuated" (field 0x14) — its reach is shortened. This shortening is not visible via ai2_showsounds=1 (the command will show the whole AI2 sound sphere). The attenuation does not depend on how far from the door the source of the sound is.
ONI BINARY DATA |
---|
CRSA << Other file types >> DPge |
DOOR : Door |
Level file |