View Single Post
Author Message
nosoop
Veteran Member
Join Date: Aug 2014
Old 11-08-2018 , 03:09   [TF2] Workshop Map Soundscape / Sound Override Fix (2018-11-08)
Reply With Quote #1

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
__________________
I do TF2, TF2 servers, and TF2 plugins.
I don't do DMs over Discord -- PM me on the forums regarding inquiries.
AlliedModders Releases / Github / TF2 Server / Donate (BTC / BCH / coffee)

Last edited by nosoop; 11-09-2018 at 21:33.
nosoop is offline