Basically added everything I could to the file for the preexisting games, plus ETS2 and Vic3.
Note: Some of these DLCs aren't needed anymore, aren't actually used, or there's just no point in having them. (ex: the subscription DLCs) But they're listed by SteamDB, so they're there.
I also fixed reordered some stuff to be correctly sorted by DLC ID.
Since 20PercentRendered has archived the repo, I have decided to fork and support it as far as I can.
## Support
This should work for any linux native steam title that doesn't block LD_PRELOAD.
Creamlinux *should* work on most Steam games. It does not work with Proton or Wine - use SmokeAPI or other alternatives made specifically for Windows instead.
The following games have been tested and definitely confirmed to work:
## Tested games
- Hearts Of Iron IV
- Stellaris
- Hearts Of Iron IV
- Europa Universalis IV
- Crusader Kings II
- Crusader Kings III
- Victoria 3
- PAYDAY 2
## Usage
0. You will need the actual, **up-to-date** DLC files in the game. Creamlinux does not and _will not_ auto-download anything.
1. Download the [latest](https://github.com/20PercentRendered/creamlinux/releases/latest/download/creamlinux.zip) release of Creamlinux.
2. Unzip it and copy the files to the game's directory
3. Set the game's steam launch params to `sh ./cream.sh %command%`.
4. If you have your own cream_api.ini, copy the DLC lines to Creamlinux's cream_api.ini in the game directory.
5. Launch your game and have fun!
## Build Dependencies
### On Ubuntu
`gcc-multilib``g++-multilib``cmake``git`
### On Arch:
`base-devel``multilib-devel``cmake``git`
## Unsupported Games
The following games have been tested and do not currently work with creamlinux, feel free to try some of the alternatives listed at the bottom of this readme:
- Cities Skylines 2
- European Truck Simulator / American Truck Simulator
## Installation
The easiest way of installing is using **Tickbase**'s Application: https://github.com/Novattz/creamlinux-installer
It automatically downloads and sets up creamlinux for Steam games that you choose, as well as fetching all DLC IDs for it. Keep in mind that you will still need the actual, **up-to-date** DLC files in the game. The install script and creamlinux do **not** automatically download any game content. You will have to run it again if new DLCs are released for a game.
If the script does not work for you, you can install `creamlinux` manually. Beware that you will have to manually update `cream_api.ini` to contain the DLC IDs for the games that you choose.
## Manual Installation
0. You will need the actual, **up-to-date** DLC files in the game. Creamlinux does **not** auto-download anything
1. Download the [latest](https://github.com/anticitizn/creamlinux/releases/latest/download/creamlinux.zip) release of Creamlinux
2. Unzip it and copy the files to the game's directory
3. Set the game's steam launch params to `sh ./cream.sh %command%`
4. Launch the game and have fun!
The list of "supported" DLCs is stored in `cream_api.ini`. If you want to test creamlinux on a new game or a new DLC has just come out, you can add more entries here manually.
If that doesn't work, please check the Troubleshooting section below.
## Building from source
1. Clone the project recursively:
0. Ensure you have all build dependencies installed:
- On Ubuntu: `build-essential``gcc-multilib``g++-multilib``cmake``git`
- On Arch: `base-devel``multilib-devel``cmake``git`
3. Copy `output` folder contents to the game folder.
4.Then set the game's steam launch params to `sh ./cream.sh %command%`.
5. If you have your own cream_api.ini, copy the DLC lines to Creamlinux's cream_api.ini in the game directory.
## Advanced
3. Copy `output` folder contents to the game folder
4.Set the game's steam launch params to `sh ./cream.sh %command%`
Alternatively, if you have Docker installed, you can just run `docker compose up`
# Troubleshooting
## Red triangles next to DLCs
This is normal. The DLCs should still work.

## DLCs don't work
- Have you made sure to download the latest version of the DLC files? Sometimes unrelated patches or updates to the game will modify some DLC files, and creamlinux is currently somewhat sensitive to outdated files.
- Do you have Steam installed from a flatpak? Creamlinux doesn't play nicely with it, please try a native version if possible
## Game not starting after enabling creamlinux
Are you sure that the creamlinux files are at the game's root directory and not in a subfolder?
Try setting the executable flag of the `cream.sh` script (it should be set already, but just in case):
```
chmod +x cream.sh
```
## It doesn't work with Proton or Wine
Creamlinux is specifically made for native Linux games. If you are using a compatibility layer, use alternatives made specifically for Windows (e.g. SmokeAPI, regular CreamAPI or whatever).
[AutoCreamAPI](https://github.com/MoebiusZero/AutoCreamAPI) has worked well for some people, keep in mind that you need to install .NetCore3 on your Wine/Proton instance first.
## Nothing helped!
Please collect a log using the instructions below as well as an overview of the game's directory using `ls -lh; ls -lh */`, then post an issue describing your situation [here](https://github.com/anticitizn/creamlinux/issues/new).
## Gathering logs
If using a KDE environment, set your game launch options to this:
```
konsole --hold -e sh ./cream.sh %command%
```
Or if you are using Gnome environment, you can set your launch options to this:
```
gnome-terminal -- sh -c "./cream.sh %command%; exec bash"
```
If using neither, install `konsole` and follow the KDE step.
Then launch the game (skip any launchers like the Paradox launcher if possible, they interfere with the logging). Wait for the game to load, close it, then copy and paste the contents of the terminal.
# Advanced
If you want to load `cream_api.ini` from a specific path, specify the path with `CREAM_CONFIG_PATH` in the launch options.
## Todo
- Proxy mode
- Support for some older versions of the steam API
- Support multiple SDK versions
- Proton support
- SteamClient() call support (Paradox launcher)
- Desphaggetify code
- Put all external code into ext
# Alternatives
If creamlinux doesn't work for your game, there are a couple of known alternatives for Linux. I provide no guarantees for their legitimacy and functionality, but some people seem to be happy with them.
2932420=Euro Truck Simulator 2 - Renault Trucks E-Tech T
3034940=SteamDB Unknown App 3034940
3034950=SteamDB Unknown App 3034950
3035040=Euro Truck Simulator 2 - Scania S BEV
1340390=SteamDB Unknown App 1340390 (project_caligula - test DLC)
2071470=Victoria 3: Victoria II Remastered Songs
2071471=Victoria 3: American Buildings Pack
2071472=Victoria 3 - Expansion Pass
2282100=Victoria 3: Voice of the People
2348450=Victoria 3: Melodies for the Masses Music Pack
2366580=Victoria 3: French Agitators Bonus Pack
2411230=Victoria 3: Dawn of Wonder
2411231=Victoria 3: Sphere of Influence
2591240=Victoria 3: Colossus of the South
2800730=Victoria 3: Trains Bonus Pack
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.