About this mod
A program made for creating soundtrack mods. Currently does not support dynamic music. Works on 1.2.
- Permissions and credits
If you'd like to see the source code (messy code warning) and/or build the program yourself, check it out on GitHub. Feel free to contribute to it.
The project contains a prebuilt UAssetAPI library; if you do not trust it, you can build your own.
So far, it seems that all music mods made before patch 1.2 still work.
Check out the Docs tab or the readme on GitHub for instructions on how to use this.
Once your mod is packed, place the .pak in the folder where System Shock's main .pak file resides:
<installation directory>\System Shock Remake\SystemShock\Content\Paks
I know that everyone wants some way to add dynamic music to the game but this currently does not support that. Hopefully, that's something this program can support in the future.
Also, I think this is the first GUI .NET program I've completed and released, so go easy on me lol
requirements
- all audio must be OGG files, and preferably edited and cut properly in order to loop smoothly
- repak (for automated packing)
features
- Automated uasset editing and packing
- For levels that only use single tracks, looping can be automatic.
- To reduce file size, levels can be configured to use music from other levels.
- Main Menu music and the music in the Intro cinematic can be changed.
- Each Grove can be given different music tracks.
- Mods can be packed separately by level, or they can be exported as folders (without packing)
- An optional patch/mod can also be integrated into the pack which disables audio ducking while the MFD is open
- Ability to save projects and open them later (they have a .sshockmusic extension, but internally they're just JSON)
known issues
- The game can sometimes be very slightly off when it comes to timing loops. Also, loading a game will ALWAYS cause the music to overlap a bit until either the next loop, or when new music plays.
- Changing the outro music is currently not supported. Had some issues with it not playing and it was a pain to keep testing it.
this is absolutely not required, but you can throw some btc at me if you'd like
bitcoin: bc1q24zcsnfvqsxjkf65uypxfvfftkqr37g9ya596v
or dogecoin: DAvaDdRACRSuvmHxnrNVBSerUoC3c5mZYJ