# 🌲 SnarfNet Game Seed Management Plane Declarative, GitOps-ready game server management plane for the SnarfNet dedicated gaming machine (`bc:24:11:67:16:cd` @ `140.44.44.80`), modeled on the declarative seed pattern (`arasoi/yggdrasil-releases` and `arasoi/yggdrasil-seeds`). --- ## 🎮 Declared Game Servers | Game | Steam AppID | Container Image | Ports | RAM (Res / Limit) | World Save Path | | :--- | :--- | :--- | :--- | :--- | :--- | | **Enshrouded** | `2278520` | `skarab42/enshrouded-server:latest` | `15636/udp`, `15637/udp` | 8GB / 16GB | `/opt/game-servers/enshrouded/savegame` | | **Farming Simulator 25** | `2300320` | `thijsvanloef/farming-simulator-25:latest` | `10823/tcp`, `10823/udp` | 6GB / 12GB | `/opt/game-servers/fs25/savegame` | | **Stationeers** | `600760` | `sprits/stationeers-server:latest` | `27016/udp`, `27015/udp` | 4GB / 8GB | `/opt/game-servers/stationeers/saves` | | **Valheim** (Crossplay) | `896660` | `lloesche/valheim-server:latest` | `2456/udp`, `2457/udp` | 4GB / 8GB | `/opt/game-servers/valheim/worlds` | | **V Rising** | `1829350` | `trueosiris/vrising:latest` | `9876/udp`, `9877/udp` | 4GB / 8GB | `/opt/game-servers/vrising/Saves` | --- ## 🛠️ Management CLI (`core/manager.py`) The manager CLI reconciles declared seeds against the host runtime, triggers automated world backups to Synology NAS, and issues Wake-on-LAN magic packets. ### Commands ```bash # 1. Preview declared server configuration python core/manager.py plan # 2. Render docker-compose.yml for live deployment python core/manager.py compose # 3. Trigger manual atomic snapshot & sync to Synology NAS python core/manager.py backup # 4. Wake up the gaming PC via Wake-on-LAN (bc:24:11:67:16:cd) python core/manager.py wol ``` --- ## 💾 Backup & Disaster Recovery Architecture All game world save files are preserved in atomic tarballs and synchronized to the Synology NAS: - **NAS Backup NFS Target**: `14.10.10.71:/volume1/docker/game-backups` - **Host Mount**: `/mnt/nas/game-backups` - **Automated Timer**: Daily at 04:00 AM via `gameseed-backup.timer` - **Retention**: 14 rolling snapshots per game --- ## 🌐 UDM Pro Port Forwarding Matrix To permit external friends and players to join the servers, ensure the following port forwards are mapped from WAN to `140.44.44.80` on the UDM Pro: ``` Enshrouded: UDP 15636-15637 -> 140.44.44.80 Farming Simulator 25: TCP/UDP 10823 -> 140.44.44.80 Stationeers: UDP 27015-27016 -> 140.44.44.80 Valheim: UDP 2456-2457 -> 140.44.44.80 V Rising: UDP 9876-9877 -> 140.44.44.80 ``` --- ## 🚀 Bootstrap New Host To provision the physical gaming PC: ```bash sudo bash scripts/setup-host.sh python3 core/manager.py compose docker compose up -d ```