View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003455||The Dark Mod||Sound||public||16.06.2013 14:55||17.06.2013 13:23|
|Product Version||TDM 2.00|
|Target Version||TDM 2.00||Fixed in Version||TDM 2.00|
|Summary||0003455: Something is wrong with soundprop to player|
|Description||Something weird has been happening while I'm testing St. Lucia.|
When loading a saved game, sometimes I hear AI talking and walking even though there is a closed door in the way. It's as if the sound is going directly to me and not being occluded at all.
If I open the door between me and the AI and close it again, sound occludes normally.
I have a saved game where this is happening reliably. When the game starts, there are two closed doors between you and an AI, yet you can hear his footsteps normally. If you open and then close either of those doors, they occlude properly. But until you open and close them, they do not occlude sound at all.
|Tags||No tags attached.|
Quicksave.save (1,637,353 bytes)
1. Sound propagation depends on the current loss values on the portal associated with a door. If you're hearing full volume after a reload, then the loss values must be zeroed.
2. The loss values are correctly saved across save/reload.
It's possible that something in the reload code is zeroing the loss values after they've been restored. Once the door is opened and closed, the loss values are reset to correct values.
But if that were the case, then as you move about the map after a reload, ALL sounds coming through doors would be at full volume. Is that happening?
|I'll do some more tests later today.|
I was just able to reproduce this in Too Late.
1. Start Too Late and go to the door just before the docks. Unlock the door, and save the game. You'll notice you cannot hear the waves.
2. Exit TDM, then start it again and load the game. You can now hear the waves from beyond the door.
3. Open and close the door. The waves are now gone again.
I reproduced the problem in Too Late.
I checked the player loss value on all portals while saving and restoring, and the values all match.
Will need to debug the player sound code in the engine. Since I have to recreate my virtual desktop to renew my Visual Studio license, it will be a while before I have a solution for this.
|It works okay when you save and restore in the same session. It's when you load a saved game after restarting TDM that the problem occurs.|
After a door is restored from a savegame, it needs to tell the engine so that both AI and Player sound loss across the door’s portal can be restored. Engine data structures are not saved/restored, and depend instead on being rebuilt after a restore. BrittleFracture and FrobDoor both deal with sound loss across portals. BrittleFracture was telling the engine after its restore, but FrobDoor wasn’t.
Also fixed a bug in the portal entity where the knowledge of whether its sound loss value was to be applied to AI or the Player or both was lost across a save/restore.
Tested with “Too Late”.
|I assumed "a while" was going to be days or weeks, not hours. Thanks. :)|
|16.06.2013 14:55||Springheel||New Issue|
|16.06.2013 15:13||Springheel||Description Updated||View Revisions|
|16.06.2013 15:14||Springheel||File Added: Quicksave.save|
|16.06.2013 16:23||grayman||Note Added: 0005566|
|16.06.2013 18:58||Springheel||Note Added: 0005567|
|16.06.2013 20:31||Springheel||Note Added: 0005568|
|16.06.2013 22:55||grayman||Note Added: 0005569|
|16.06.2013 22:55||grayman||Assigned To||=> grayman|
|16.06.2013 22:55||grayman||Status||new => assigned|
|16.06.2013 22:55||grayman||Status||assigned => confirmed|
|16.06.2013 23:40||Springheel||Note Added: 0005570|
|17.06.2013 03:28||grayman||Note Added: 0005571|
|17.06.2013 03:28||grayman||Status||confirmed => resolved|
|17.06.2013 03:28||grayman||Resolution||open => fixed|
|17.06.2013 03:28||grayman||Fixed in Version||=> TDM 2.00|
|17.06.2013 13:23||Springheel||Note Added: 0005572|