Cool idea! Sorry, this is just me randomly brain storming ideas for a potential implementation...
Maybe the module could load config files for soundbank and fanfare, in the format: "Team name","TUS URL to file download", EG:
Team One,
https://www.tus-wa.com/files/file-2594/Team Two,
https://www.tus-wa.com/files/file-2592/Considerations:
- Only support TUS URLs - for security and reliability
- Only extract/load game WAV files from the archive, to ensure no other rogue files or file types can make it onto someone's machine.
- For TUS, it looks like .7z, .zip and .rar archive formats would need to be supported
- If a wav file is missing, replace that file with default sound wav
- Maybe cache files locally based on the identifiers in the URL rather than hashing, I guess it depends if people update the same sound banks often.
- File size limits?
- Dynamic download and loading. Rather than wait for all players to download the files, the game can proceed and WAV's are re-pointed in memory as downloaded WAV's become available. Until then, the team's chosen game sound bank is used
- Replay support? Record the ID's for each team's soundbank and fanfare (perhaps in an accompanying config file rather than modding the replay format). A config option to disable using/downloading soundbanks for replays.