OBD:DOOR: Difference between revisions

From OniGalore
Jump to navigation Jump to search
mNo edit summary
m (changed family)
 
(9 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{OBD_File_Header | type=DOOR | prev=CRSA | next=DPge | name=Door | family=Global | align=center}}
:''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=Level | align=center}}




Line 12: 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; always the same* }}
{{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        | unknown; always the same* }}
{{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      | unknown (only sbdoor04swing has the value 1)* }}
{{OBDtr| 0x1C | int32    |FFC800| FF FF FF FF | -1      | AI sound type:
{{OBDtr| 0x20 | float    |C800C8| 00 00 C8 42 |100.000000| unknown; always the same* }}
:-1 - no sound
:0 - unimportant
:1 - interest
:2 - danger
:3 - melee
:4 - gunfire }}
{{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 }}
{{OBDtr| 0x6C | char[20] |64AAAA| AD DE      | dead    | unused }}
|}
|}


'''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.


<nowiki>*)</nowiki> I've set the all these values to ADDE at once ==> no visible effect. [[User:ssg|ssg]]
'''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_File_Footer | type=DOOR | prev=CRSA | next=DPge | name=Door | family=Global}}
{{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.
ONI BINARY DATA
CRSA << Other file types >> DPge
DOOR : Door
switch to XML:DOOR page
Overview @ Oni Stuff
OBD.png


Door all.gif


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:
-1 - no sound
0 - unimportant
1 - interest
2 - danger
3 - melee
4 - gunfire
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