It could be made by smart way. Game could check name of soundbank and its checksum, and if not exist, it can write something like: Player xxx using soundbank yyy, which is not installed. Click here to download and install, it will be used in next game.
When click, it could download soundbank files to some temporary folder on background, and when finished and checksum match, install it to soundbank folder, ready for next round. If same soundank name with different checksum exist, it can make it with prefix v2, v3 or so.
In PX it could check lib files CRC32 and if is different, download the correct lib. No more same file with different version made "Player xxx has different compilation result" and player cant play.