OBD:DOOR: Difference between revisions

From OniGalore
Jump to navigation Jump to search
(Removing DEAD part. It is NOT from this instance! (ref. - Oni_Object.h, lines 610-627))
m (changed family)
 
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=Global | align=center}}
{{OBD_File_Header | type=DOOR | prev=CRSA | next=DPge | name=Door | family=Level | align=center}}




Line 42: Line 42:
*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.
*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=Global}}
{{OBD_File_Footer | type=DOOR | prev=CRSA | next=DPge | name=Door | family=Level}}


{{OBD}}
{{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