StellarKey
Today I'm going to introduce StellarKey and show you how to use it.
Introduction
Today I'm going to introduce StellarKey, a DLC unlocker for native Linux Steam games. It loads a .so library when the game starts. The project's Proton support is still unfinished: this tutorial is for the Linux version of a game.
Do you need the DLC files?
An unlocker makes the game see the DLC as owned, but doesn't download its content. If the files are already included in the base game, unlocking can be enough. Otherwise, install the matching DLC files too; check the game's forum topic for its folder layout and version.
Useful links
Now for the tutorial
- Download a StellarKey build from the project and extract libstellarkey.so to a permanent folder. Choose the same architecture as the native game (32 or 64 bit).
- In Steam, right-click the game, open Properties → General → Launch Options. Save any existing options before editing them.
- Enter the line below, replacing /path/to/ with the actual absolute path to your library. Keep the quotation marks if the path contains spaces. If you already have launch options, combine them instead of adding a second %command%.
- Launch the game and check its DLC menu. And that's it, enjoy your game!
LD_PRELOAD="/path/to/libstellarkey.so:$LD_PRELOAD" %command%The optional configuration file
Most games need no manual DLC list. If yours does, create DLC.txt in the game's working directory, or in its steam_settings subfolder. StellarKey can also read cream_api.ini. The numbers below are examples: replace them with the game's actual DLC App IDs.
12345 = "DLC name"
67890 = "Another DLC"Keeping configurations in one place
The library's own folder is not automatically used for configuration. To keep your lists outside the game folders, use STELLARKEY_DIR. With this example, put each game's DLC.txt in ~/sk_config/ followed by its Steam App ID.
STELLARKEY_DIR="${HOME}/sk_config/${SteamAppId}/" LD_PRELOAD="/path/to/libstellarkey.so:$LD_PRELOAD" %command%If it doesn't work…
An 'ELF class' error usually means the library and game have different architectures. Check the path and confirm Steam is launching the native Linux version. To get a log, add STELLARKEY_LOG="/tmp/stellarkey.log" before LD_PRELOAD in the launch options.
How to remove it
Restore your previous Steam launch options. You can then remove the StellarKey library and the configuration files you added.