An SKSE plugin that allows modders to add custom sound effects to various in-game events via an easy-to-use JSON configuration. Supports flexible settings like playback chance, volume, and repeat frequency.
This project is currently under development and not ready for production use.
Please do not use this in live mod releases until an official stable version is released. Breaking changes and major updates are expected during this phase.
- Add custom sound effects to a variety of Skyrim events.
- Sounds can be directly loaded into the engine without requiring ESP plugins or additional mods.
- Highly configurable JSON structure to define triggers.
- Support for various playback options like chance, volume, and repetition.
- 3D positional sound effects to create immersive audio experiences, with support for distance-based volume attenuation and spatial positioning.
- Ability to specify detailed conditions for sound triggers, such as:
- Playing a sound only for specific events (e.g., PowerAttack, SneakAttack).
- Restricting sounds to certain items, weapons, or conditions.
- Compatible with Skyrim Special Edition (SSE) and Anniversary Edition (AE) using Address Library for SKSE Plugins.
This section will be updated once the project is stable. For now, cloning the repository and building the plugin is required.
See Building From Source (Windows) for instructions.
- A compiler supporting C++23 (e.g., Visual Studio 2022).
- CMake (3.21 or higher).
- CommonLibSSE-NG.
- spdlog.
- nlohmann_json.
- openal-soft.
- libsndfile.
- ImGui.
- Vcpkg for dependency management.
Make sure you have the “Desktop development with C++” workload installed in Visual Studio so that cl.exe
, CMake, and Ninja are available.
This project is built using CMake, Visual Studio 2022, and vcpkg for dependency management.
- Clone the Repository
git clone https://github.com/Exouth/SoundFX-Framework.git
cd SoundFX-Framework
- Set up vcpkg (if you haven't already)
Clone vcpkg (if not done previously)
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
.\bootstrap-vcpkg.bat
Set the VCPKG_ROOT environment variable so CMake can locate vcpkg
set VCPKG_ROOT=C:\Path\to\vcpkg
Return to the SoundFX-Framework folder
cd ..\SoundFX-Framework
(If you’ve already set up vcpkg globally, you can skip this step.)
- Configure and Build with CMake
Debug build:
cmake --preset debug
cmake --build --preset debug
Release build
cmake --preset release
cmake --build --preset release
The resulting SKSE plugin (SoundFXFramework.dll) will be placed in
build/release/output/SKSE/Plugins/SoundFXFramework.dll
This project is licensed under the GNU General Public License v3.0.
You are free to use, modify, and distribute this code under the terms of the license.
Attribution is required, meaning you must retain the original copyright notice in the source code.
If you modify and distribute the code, you must also distribute your changes and include the source code.
This project also includes specific exceptions to facilitate compatibility with proprietary software and libraries commonly used in the modding community. For details about these exceptions, see the EXCEPTIONS.md
file.
For the full license text, see the LICENSE
file.
This project also uses third-party libraries that are distributed under their own licenses.
See the licenses
folder for more information:
libsndfile
is licensed under the LGPL-2.1. Seelicenses/LICENSE-libsndfile
.OpenAL
is licensed under the LGPL. Seelicenses/LICENSE-openal
.