User:MrSinistar/Sandbox
AGSC uses MusyX data for the audio engine. Each sound has it's own "SoundMacro" and properties. The pool chunk is where the soundmacros are located. SoundMacros are small scripts that control how sounds are played in game, like pitch or vibrato or fade outs. Here's a description of the pool chunk:
Offset | Size | Description |
---|---|---|
0x0 | 4 | Header size Looks like it's always 10 |
0x10 | 4 | Macro size |
0x14 | 2 | Macro ID |
0x18 | Macro data, needs more research |
STRG Commands are similar to CSS syntax. A ; terminates the command. & begins the command, so for example, &just=center;
Command | Value | Description |
---|---|---|
just | center | Justifies text |
image | SI,0.70,0.68,TXTR ID | Displays an image. SI = Single Image? S,T and finally TXTR ID. Animation = SA, Animation Speed, S,T, TXTR ID, TXTR ID |
main-color | Hex Color Code | Changes color of text. |
SCLY Audio Object
Offset | Size | Description |
---|---|---|
0x0 | 1 | SCLY Byte 0x14 denotes sound |
0x1 | N | Sound name; zero-terminated |
Offset | Size | Description |
---|---|---|
0x0 | 4 | Position (float) |
0x4 | 4 | Position (float) |
0x8 | 4 | Position (float) |
0xC | 4 | Rotation (float) |
0x10 | 4 | Rotation (float) |
0x14 | 4 | Rotation (float) |
0x18 | 4 | Sound Effects ID index number for ATBL |
0x1C | 1 | Play Automatically; If this bool is turned on, but the active bool is not on, the corresponding trigger must send a Play message (0x14) to turn on the sound. |
0x1D | 4 | Maximum Distance (float); the bigger the float, the farther you can hear it! |
0x21 | 4 | Minimum Distance (float); usually set to 0.2 |
0x25 | 4 | Padding |
0x29 | 4 | Unknown Priority? |
0x2D | 4 | Max. Volume; 127 is loudest |
0x31 | 4 | Min. Volume |
0x35 | 4 | Panning 0=Left, 64=Center, 127=Right |
0x39 | 1 | Play endlessly |
0x3A | 1 | Play everywhere |
0x3B | 1 | Active/Accepts Trigger Activations; this must be on and it's corresponding trigger has to activate/deactivate the sound object in order to play/stop sound. Triggers sending a Play message (0x14) won't turn on the sound. |
0x3C | 1 | Unknown |
0x3D | 1 | Is sound affected by RoomAcoustics?; 1=yes, 0=no |
0x3E | 1 | Unknown |
0x3F | 1 | Unknown; Is On for Health pickups (ITD or Surround flag?) |
0x40 | 4 | Unknown; (FF FF FF FF, usually descending...seen on cinematic sounds) |
so, if what we are assuming are the play automatically bool and the active bool are both on, then the sound plays immediately on spawn and never plays again, even when the trigger is suppose to activate it.
atbl bool = 0, 3rd bool = 1...sound doesn't play automatically but activates when going through trigger.
atbl bool = 1, 3rd bool = 1...sound plays automatically and deactives/activates correctly when going through trigger.
atbl bool = 1, 3rd bool = 0, nothing plays
Help us research and document! Join the discussion at: Metroid Prime Hacking Research thread @ Metroid2002.com
|