Files
Reaper-s-Sky/server/README.md
T
ReaperOfVeriod 2a5354fd63 Add Reaper's Sky dedicated server deploy files
- server/mods.json: 59 server-safe mods pinned by sha1 (19 client-only excluded)
- server/deploy.sh: idempotent Debian 13 installer (Java 21, NeoForge 21.1.248,
  mods, eula/server.properties, 8G run.sh)
- server/build_mods.py: regenerate mods.json from the Prism instance
- server/README.md: setup + ops guide
2026-08-20 20:08:14 +02:00

62 lines
2.3 KiB
Markdown

# Reaper's Sky - Dedicated Server
Everything needed to run the Reaper's Sky NeoForge **1.21.1** server (NeoForge
**21.1.248**) on Debian 13 (trixie).
## Quick start (on the server box)
```sh
sudo ./deploy.sh # installs Java 21 + curl/unzip, NeoForge, the 59 mods, config
./run.sh # start the server (run inside tmux/screen so it survives logout)
```
The first `./run.sh` generates the world. Wait for `Done (...)` in the console,
then connect with IP **`reaperofveriod.nl`** (port 25565).
`deploy.sh` is idempotent — safe to re-run; it skips anything already in place
and verifies every mod by sha1 before installing.
## What deploy.sh does
| Step | Result |
|------|--------|
| System packages | `openjdk-21-jre-headless`, `curl`, `unzip` (needs root/`sudo`) |
| NeoForge server | Official installer from Maven → server files + `libraries/` |
| Mods | Downloads the 59 server-safe mods pinned in `mods.json`, sha1-verified |
| Config | `eula.txt` (EULA accepted), `server.properties` (IP, motd, 8 G) |
| Run script | `run.sh` with 8 GB + G1GC (`nogui`) |
Install location defaults to `~/reaper-sky-server`. Override with `DIR=/path`,
memory with `MEMORY=6G`, etc.:
```sh
sudo DIR=/srv/minecraft MEMORY=10G ./deploy.sh
```
## Keeping it running
```sh
tmux new -s mc # new session
cd ~/reaper-sky-server && ./run.sh
# detach with Ctrl-b d, reattach later with: tmux attach -t mc
```
Stop the server cleanly with the console command `stop` (Ctrl-c also works).
## Configuration notes
- `server.properties` sets `online-mode=true` (Mojang authentication). Set it to
`false` in `~/reaper-sky-server/server.properties` to allow unauthenticated
clients, then restart.
- `difficulty=hard`, `spawn-protection=0`, `view-distance=10` are set for the
airship-focused, land-claim-friendly experience.
- The 19 client-only mods (Iris/shaders, Sodium, Minimap, Jade, JEI, etc.) are
intentionally excluded here — the server is pure gameplay logic.
## Updating the pack
1. Add/remove mods in the Prism instance `Reaper's Sky - dev`.
2. Rebuild + push the mrpack (see repo root `README.md`).
3. Re-run `server/build_mods.py` or regenerate `mods.json`, commit, push.
4. On the server: `git pull && sudo ./deploy.sh && ./run.sh`
(also remove any stale jars from `~/reaper-sky-server/mods/` first).