Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 14 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,23 @@

### :arrow_right: Docker image contents

- slim Debian Bookworm with [Wine 10.0](https://gitlab.winehq.org/wine/wine/-/releases/wine-10.0)
- pre-configured 64-bit Wine prefix
- SCUM server startup script, which
- - installs/updates [steamcmd](https://developer.valvesoftware.com/wiki/SteamCMD)
- - installs/updates SCUM dedicated server on startup
- slim *Debian Bookworm* with [*Wine* 10.0](https://gitlab.winehq.org/wine/wine/-/releases/wine-10.0)
- pre-configured 64-bit *Wine* prefix
- *SCUM server* startup script, which
- - installs/updates [*steamcmd*](https://developer.valvesoftware.com/wiki/SteamCMD)
- - installs/updates *SCUM dedicated server* on startup

### :arrow_right: Requirements

- Linux
- Docker.io with *docker compose*
- *Linux*
- *Docker.io* with *docker compose*
- 8GB memory (absolute bare minimum, get 16GB or **at least** 12GB. 32GB or even more for large servers)

### :arrow_right: How to use

1. Grab the `docker-compose.yml`
2. run `docker compose up -d` and **be patient**[^1]
3. Fire up your SCUM game and connect either without port or port 7779
3. Fire up your *SCUM game* and connect using either no port or port 7779

Note: Don't want to use *docker compose*? Check [decomposerize](https://www.decomposerize.com/).

Expand Down Expand Up @@ -50,7 +50,7 @@ In your `docker-compose.yml` adjust `PORT`[^2] and `QUERYPORT`.
> The port for players to connect is now **10002**.
> </details>

### :question: How to customize SCUM server
### :question: How to customize *SCUM server*

All server data is exposed in the `scumserver-data` folder.
For further information check [here](https://www.google.com/search?q=scum+server+settings).
Expand All @@ -70,10 +70,13 @@ Any other tag represents active development and/or automated **untested** builds

## :information_source: Footnotes

I am certain some port exposures are unnecessary. However, I could not find clear documentation on which ports and protocols are required. The SCUM server's port calculation behavior doesn't help either. Exposing additional ports should not cause any harm.
I am certain some port exposures are unnecessary. However, I could not find clear documentation on which ports and protocols are actually required. The SCUM server's port calculation behaviour doesn't help either. Exposing additional ports should not cause any harm.

This image is a reverse-engineered version of j0s0n/scum-wine Docker image, attempting to fix some of its issues with updates and restarts and perhaps add some enhancements. All credit for the initial work goes to j0s0n.
This image started as reverse-engineered[^3] version of the *j0s0n/scum-wine* Docker image. It attempts to fix some of its issues relating to updates and restarts and perhaps adds some enhancements. All credit for the initial work goes to j0s0n.

[^1]: Use `docker compose logs` to check the process. Once you see something like `scum-server | LogBattlEye: Display: Config entry: MasterPort 8037` in the logs, your game server should be ready to accept player connections.

[^2]: SCUM has a weird way to assign the ports necessary for gameplay. It will always use two ports right after the assigned `PORT`. For example if your `PORT` is 7777, then it will always use 7778 and 7779 for various things as well. This also results in being 7779 the port for players to connect even though 7777 is configure. Ridiculous and dumb IMHO but it is what it is.

[^3]: As the author of the original image [seems reluctant to provide the *Dockerfile*](https://steamcommunity.com/app/513710/discussions/0/603033663617122208/?ctp=3#c678482693017642366), I decided to take matters into my own hands.
For the reason above the original image should be considered closed-source/proprietary.