A mod for Skylanders Spyro's Adventure on PC that adds better support for the game on Linux and Windows
Important
This mod modifies game memory and may lead to instability or crashes. Use at your own risk!
Disclaimer: For some features I relied heavily on AI, since I do not yet have the necessary knowledge to implement those myself.
- Linux support for the Portal of Power
- WinUSB support for the Portal of Power on Windows (the game can now use the same drivers as emulators like Cemu, RPCS3, ...)
- Windowed & borderless windowed mode on Windows
- Custom resolution support
- VSync toggle
- FPS cap
- Anisotropic filtering (up to 16x)
- after launching the game with the mod installed for the first time, a
ssa_impr_mod.inifile will be generated in the game directory - open this file with a text editor to configure the mod settings
Windowed: set to1to launch the game in windowed mode, or0for fullscreen (default:1)Borderless: set to1to launch the game in borderless windowed mode, or0for normal windowed mode (Windowedneeds to be set to1) (default:1)ResolutionW: set the horizontal resolution of the game, set to0to use the desktop resolution (default:0)ResolutionH: set the vertical resolution of the game, set to0to use the desktop resolution (default:0)VSync: set to1to enable VSync, or0to disable it (default:1)FpsCap: set the maximum FPS the game can run at, set to0for unlimited FPS (default:0)Anisotropy: set the level of anisotropic filtering (default:8| valid values:1(off),2,4,8,16)TextureSharpness: set the sharpness of textures (default:15| valid values:0(off) to20(max))
While technically not required for this mod, it is recommended to download the latest version of SecuROMLoader.
- Download the latest release from the Releases
- Extract the contents of the ZIP file
- Move only the
version.dllfile from the extracted folder to your Skylanders Spyro's Adventure installation directory (whereSkylanders.exeis located)- e.g.
C:/Program Files (x86)/Activision/Skylanders Spyro's Adventure(TM)
- e.g.
- Download the latest release from the Releases
- Extract the contents of the ZIP file
- You will find a folder named
SSA Improvedcontaining 2 folders (Windows&Linux), thisREADME.mdand a license file - Open the
Windowsfolder. You will find the following files:xinput1_3.dllversion.json
- Move all the files mentioned above to your Skylanders Spyro's Adventure installation directory (where
Skylanders.exeis located)- e.g.
C:/Program Files (x86)/Activision/Skylanders Spyro's Adventure(TM)
- e.g.
- Done🎉 Run the game as administrator at least once to allow the mod to create necessary files and folders
Note: you need to have Python installed on your system (most Linux distributions come with Python pre-installed)
- Download the latest release from the Releases
- Extract the contents of the ZIP file
- You will find a folder named
SSA Improvedcontaining 2 folders (Windows&Linux), thisREADME.mdand a license file - Open the
Linuxfolder. You will find the following files:xinput1_3.dllportal_launch.shportal_proxy.pyversion.json
- Move all the files mentioned above to your Skylanders Spyro's Adventure installation directory (where
Skylanders.exeis located) - Inside your Skylanders Spyro's Adventure installation directory make
portal_launch.shexecutable- Steam Deck: right-click the file in the file manager →
Properties→Permissionstab → checkAllow executing file as program→ clickOK
- Steam Deck: right-click the file in the file manager →
- add Skylanders Spyro's Adventure to Steam
- Steam Deck: right-click on
Skylanders.exein the file manager →Add to Steam
- Steam Deck: right-click on
- use
Proton 10.0-4as the compatibility tool for the game (or any other, the mentioned version is confirmed working) - add
./portal_launch.sh %command%to your launch options for Skylanders Spyro's Adventure in Steam - Done🎉 You can now launch the game from Steam
- Developed by jacee
git clone --recurse-submodules https://github.com/j4ceee/ssa-improved.git
cd ssa-improved
- Open the project folder in CLion
- CLion will automatically detect the CMake configuration and set up the project
- Configure your CMake profile (if needed):
- Build type:
Release(orDebugfor development) - Toolchain:
Visual Studio - Generator:
Visual Studio 17 2022
- Build type:
- In the toolbar, select your CMake profile (e.g.,
Release-Visual Studio) - Select the build target
xinput1_3 - Click the Build button
- The compiled DLL will be located in
cmake-build-<config>/out/<config>/xinput1_3.dlland copied to the Skylanders Spyro's Adventure directory as specified in theCMakeLists.txt
Build Types:
- Debug: Includes extra logging and debugging symbols (larger file size, slower)
- Release: Optimized build for normal use (smaller, faster)
Note: The CMakeLists.txt includes a post-build command that copies the DLL to:
C:/Program Files (x86)/Activision/Skylanders Spyro's Adventure(TM)/
If your game is installed elsewhere, modify line 134 in CMakeLists.txt accordingly.
- Create a build directory
mkdir build - Configure for Release build
...or for Debug build
cmake -DCMAKE_BUILD_TYPE=Release -B .\build\ -G "Visual Studio 17 2022"cmake -DCMAKE_BUILD_TYPE=Debug -B .\build\ -G "Visual Studio 17 2022" - Build
cmake --build build --config Release
The compiled DLL will be in build/out/Release/ or build/out/Debug/
