OBD:OSBD/OSAm

From OniGalore
Jump to navigation Jump to search

Osb r am.gif

Offset Type Raw Hex Value Description
0x00 int32 6D 41 53 4F OSAm Oni Sound Ambient
0x04 int32 C8 00 00 00 200 200 bytes; size of the part that follows
0x08 int32 06 00 00 00 6 version (see below)
0x0c int32 01 00 00 00 1 priority; the following priorities are possible (values in dec):
0 - low
1 - normal
2 - high
3 - highest
0x10 int32 04 00 00 00 4 sound options:
1 - interrupt tracks on stop
2 - play only once
4 - can pan
0x14 float 00 00 20 41 10.000000 detail sound sphere radius
0x18 float 00 00 80 3F 1.000000 minimum elapsed time in seconds between detail sounds playing
0x1c float 00 00 80 3F 1.000000 maximum elapsed time in seconds between detail sounds playing
0x20 float 00 00 20 41 10.000000 distance at which the maximum volume is heard
0x24 float 00 00 48 42 50.000000 distance at which the minimum volume is heard
0x28 char[32] 00... not used detail track name (reference to a .grp OSBD file)
0x48 char[32] 61 69 72... aircon5lp base track 1 name (reference to OSBDaircon5lp.grp)
0x68 char[32] 00... not used base track 2 name (reference to a .grp OSBD file)
0x88 char[32] 00... not used in sound name (reference to a .grp OSBD file)
0xa8 char[32] 00... not used out sound name (reference to a .grp OSBD file)
0xc8 int32 03 00 00 00 3 threshold (present in version 5 and above, default is 3)
0xcc float 00 00 00 00 0.000000 minimum occlusion percentage (present in version 6 and above, default is 0.0)
Version
Just as for other OSBD, there have been several version of the binary format.
Over time, some fields that used to be hardcoded became customizable on a group-per-group basis.
Thus, later versions include some extra fields as compared to earlier ones.
The above example belongs to the latest OSAm version encountered in Oni: 6.
Lower versions lack certain fields, and the following content is simply shifted backwards.
Versions of OSAm occurring in Oni are 4, 5 and 6.
Dialog from level0_Tools

Tool dialog - Ambient Sound Properties.png