AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Unapproved Plugins (https://forums.alliedmods.net/forumdisplay.php?f=109)
-   -   [TF2] Workshop Map Soundscape / Sound Override Fix (2018-11-08) (https://forums.alliedmods.net/showthread.php?t=311920)

nosoop 11-08-2018 03:09

[TF2] Workshop Map Soundscape / Sound Override Fix (2018-11-08)
 
Description:
Hooks into the soundscape / sound override loading process to load soundscapes / sound override files by the map's display name (Workshop maps only). Fixes completely missing ambient noises and server-sided game sound overrides on maps loaded in from the Steam Workshop.

Does not fix the client-side issue where the game can't determine which search path a sound came from. That one's on Valve.

Certain game sound overrides are only applied on the client-side, so this plugin won't do anything for those, either.

If you'd like to hear the results for yourself, you can load up Morrigan's Alley with and without the plugin present. Without the plugin present, the map lacks the Medieval ambience. Sacrifice is one map I can think of with obvious sound overrides; with the plugin enabled the Australium pickup / drop announcements are suppressed (though the return sounds are still played).

ConVars:
  • spew_sound_override_load_info (default 0): Just debugging functionality. Whether or not to dump loaded sound override files to server console. (This does not remove the messages printed when the plugin loads both files by display name, this just verifies that the sound override function is being called.)
Things the plugin will clobber:
You tell me. It should generally cause no issues, though I haven't done an exhaustive check against many Workshop maps. Any maps that use existing sound overrides / workarounds may have their files loaded in twice, but I don't feel like seeing if any maps have that as an issue.

Dependencies:
Requires DHooks with dynamic detour support.
stocksoup (my personal library of stocks) is a build dependency.

Changelog:
  • 1.0.2 (2018-11-09):
    • Uses a less disgusting kludge to get the soundscape thisptr instead of a signature / address pair to get the global soundscape pointer. Removed corresponding entries added in 1.0.1.
  • 1.0.1 (2018-11-09):
    • Fixed Windows support; currently requires a kludge to get the soundscape system pointer. Plugin and gamedata changed.
  • 1.0.0 (2018-11-08):
    • Initial release. Linux only; had crashes on Windows even with seemingly correct sigs.
Download / Source

Sreaper 03-18-2019 00:13

Re: [TF2] Workshop Map Soundscape / Sound Override Fix (2018-11-08)
 
Thank you for the plugin.

Can you please elaborate on what these two sentences mean? I don't really understand it.

Quote:

Does not fix the client-side issue where the game can't determine which search path a sound came from. That one's on Valve.

Certain game sound overrides are only applied on the client-side, so this plugin won't do anything for those, either.

nosoop 03-18-2019 01:22

Re: [TF2] Workshop Map Soundscape / Sound Override Fix (2018-11-08)
 
Quote:

Originally Posted by Sreaper (Post 2643863)
Can you please elaborate on what these two sentences mean? I don't really understand it.

Sure.

Quote:

"[...] the client-side issue where the game can't determine which search path a sound came from."
Maps can have sounds packed into them. For maps downloaded via fastdl, the game can read the sound files without issues, but the game is currently unable to do the same on Workshop maps. This is a prominent issue with Various Artists (KOTH) -- there is supposed to be background ambient music when the point is captured by either team, which doesn't play at all with the Workshop version.

Quote:

"Certain game sound overrides are only applied on the client-side [...]"
Some game sounds are emitted on the server (things you can catch with AddNormalSoundHook), others are done on the client (e.g., their own weapons).
What this plugin does is inject the Workshop map's sound override on the server, so when the server wants to play a game sound, it finds and uses the override entries, then tells the client to play that particular sample.

The game client does not have those overrides installed, and so for sounds they play themselves (i.e., not received from the server), they'll do their lookup and use whatever the sound normally is. The main example I have of this on-hand is Sacrifice (Arena), where the intelligence pickup / drop cue is played on the client (as mentioned in the initial post). The map has a sound override where that sound is suppressed and doesn't play, but on the Workshop version you'll hear it normally.

I think Skirmish (Payload) has issues on both kinds, but I haven't checked since before I wrote this plugin to do a proper comparison.

Both of these are client-side problems, so they depend on Valve doing work and updating the client. I've reported it on their bug tracker.
Not like it'll do much, though (might have better luck if I sent in a resume and worked on TF2 to fix it myself).

agrastiOs 10-13-2022 04:22

Re: [TF2] Workshop Map Soundscape / Sound Override Fix (2018-11-08)
 
Rejoice, for it is fixed!


All times are GMT -4. The time now is 09:53.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.