stardew-multiplayer-docker/README.md

76 lines
2.8 KiB
Markdown
Raw Normal View History

2019-04-09 17:02:27 +00:00
# Stardew Valley Multiplayer Docker Compose
This project aims to autostart a Stardew Valley Multiplayer Server as easy as possible.
2021-01-20 16:27:38 +00:00
## Side Note
- Updating to most recent version requires a rebuild: `docker-compose build --no-cache`
- Although I'm trying to put out updates, I don't have the time for testing, so I recommend forking and fixing things on your own.
2019-04-13 00:29:00 +00:00
## Setup
### Docker-Compose
2019-04-09 17:04:45 +00:00
```
2019-04-09 17:02:27 +00:00
git clone https://github.com/printfuck/stardew-multiplayer-docker
docker-compose up
2019-04-09 17:04:45 +00:00
```
2019-04-13 00:29:00 +00:00
### Ansible
Create an inventory file with your hosts
```
ansible -i <your_inventori> playbook.yml
```
### Terraform (with Hetzner Cloud)
2020-04-23 16:40:11 +00:00
Enter your API Token in `terraform/vars.auto.tfvars` and modify the resource section in `main.tf` to your liking, then run the following script:
2019-04-13 00:29:00 +00:00
```
./terra.sh
```
## Game Setup
2019-04-09 17:02:27 +00:00
2020-04-23 16:40:11 +00:00
Intially you have to create or load a game once at first startup via VNC. After that the Autoload Mod jumps into the previously loaded savegame everytime you rerun the container. You can also edit the config file of the Autoload Mod to archieve similar behaviour.
2019-04-12 21:39:04 +00:00
2020-04-23 16:40:11 +00:00
### VNC
Use a vnc client like `TightVNC` on Windows or plain `vncviewer` on any Linux distribution to connect to the server. You can modify the VNC Port and IP address and Password in the `docker-compose.yml` file like this:
2019-04-09 17:02:27 +00:00
2020-04-23 16:40:11 +00:00
Localhost:
```
# Server is only reachable on localhost on port 2342...
ports:
- 127.0.0.1:2342:5900
# ... with the password "insecure"
environment:
- VNCPASS=insecure
```
2019-04-12 21:39:04 +00:00
2020-04-23 16:40:11 +00:00
## How it works
2019-04-12 21:39:04 +00:00
2020-04-23 16:40:11 +00:00
The game, the modloader (SMAPI), and the necessary Mods are pulled from my servers (I'll assume you already own the game - since you're looking for a multiplayer - so please don't rip it from there) to minimize version conflicts. The `docker-entrypoint.sh` script will start `Xvfb` and `x11vnc` before starting the game. You can control the game via vnc with the settings within the `docker-compose.yml` file.
2020-04-07 02:43:42 +00:00
## Used Mods
* [AutoLoadGame](https://www.nexusmods.com/stardewvalley/mods/2509)
* [Always On](https://community.playstarbound.com/threads/updating-mods-for-stardew-valley-1-4.156000/page-20#post-3353880)
* [Unlimited Players](https://www.nexusmods.com/stardewvalley/mods/2213)
2020-04-07 02:51:45 +00:00
## Troubleshooting
### Error Messages in Console
2020-04-07 04:19:12 +00:00
Usually you should be able to ignore any message there. If the game doesn't start or any errors appear, you should look for messages like "cannot open display", which would most likely indicate permission errors.
2020-04-07 02:51:45 +00:00
### VNC
2020-04-07 04:19:12 +00:00
Access the game via VNC to initially load or start a pregenerated savegame. You can control the Server from there or edit the config.json files in the configs folder.
2020-04-07 02:51:45 +00:00
2020-04-23 16:40:11 +00:00
### Performance
2020-04-07 02:51:45 +00:00
2020-04-23 16:40:11 +00:00
I'd recomend a VPS/Machine with at least four logical CPUs and 4GB Ram, otherwise there will be horrible lags. The minimum configuration I'd consider playable with two to four players would be two logical CPUs and 1GB of Ram.