Note: This repo is by XeTrinityz created from the original project by Lukas which is no longer maintained. This repo includes significant optimizations and enhancements to the original codebase.
ThatSkyLoader is a powerful mod loader for Sky: Children of the Light on PC. It integrates with the game through a Vulkan layer, allowing for dynamic loading and management of mods without modifying the original game files.
- Dynamic Mod Loading: Load and unload mods at runtime
- User-Friendly Interface: ImGui-based interface for managing mods
- Mod Management: Enable/disable mods individually
- Custom Font Support: Configurable font settings for the mod interface
- Vulkan Integration: Seamless integration with the game's rendering pipeline
- Windows 10 or later
- Visual Studio 2022 with C++ development tools
- CMake 3.20 or higher
- x64 Native Tools Command Prompt for VS 2022
git clone https://github.com/XeTrinityz/ThatSkyLoader.git
cd ThatSkyLoaderBefore building, extract the compressed library files:
# Extract libmem.7z in the lib/release directory
7z x lib/release/libmem.7z -o./lib/release/Due to linking issues with libmem in Visual Studio, build using the command line:
# Open x64 Native Tools Command Prompt for VS 2022
mkdir build
cd build
cmake .. -G "NMake Makefiles" -D CMAKE_BUILD_TYPE="Release"
nmakeAfter building, the mod loader will be available as powrprof.dll in the lib/release directory. To install:
- Copy
powrprof.dllto your Sky: Children of the Light installation directory - Create a
modsfolder in the same directory if it doesn't exist - Place your mod files (
.dll) in themodsfolder
- Launch Sky: Children of the Light
- Use the interface to enable/disable mods
- Enjoy your modded gameplay experience!
Mods for ThatSkyLoader are DLL files that follow a specific API. A basic mod structure includes:
// Example mod structure
extern "C" {
// Required mod info function
__declspec(dllexport) ModInfo GetModInfo() {
ModInfo info;
info.name = "Example Mod";
info.version = "1.0.0";
info.author = "Your Name";
info.description = "A simple example mod";
return info;
}
// Called when the mod is loaded
__declspec(dllexport) bool OnLoad() {
// Initialization code
return true;
}
// Called when the mod is unloaded
__declspec(dllexport) void OnUnload() {
// Cleanup code
}
}src/- Source code fileslayer.cpp- Vulkan layer implementationmod_loader.cpp- Core mod loading functionalitymenu.cpp- ImGui interface implementationmain.cpp- Entry point
include/- Header fileslib/- External libraries
Contributions are welcome! This fork is actively maintained by XeTrinityz. Please feel free to submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the terms of the license included with the repository.
For questions or issues specific to this optimized fork, please contact XeTrinityz or open an issue on GitHub.
Made with ❤️ for the Sky: Children of the Light community
/f/108104/368x415/436d2e239c/sky-logo-white.png)