From 60bb838d8a994f3f13439620bc759da65199c1c2 Mon Sep 17 00:00:00 2001 From: gbr-bot Date: Mon, 26 Oct 2026 01:54:21 +0000 Subject: [PATCH] feat(games): draft Valheim Drafted and boot-tested by the GBR builder (job 4b174b2d-48ad-455d-b979-6c36e2b0ce9f). --- games/valheim/game.yaml | 42 +++++++++++++++++++++++++++++++++++++++++ games/valheim/test.yaml | 6 ++++++ 2 files changed, 48 insertions(+) create mode 100644 games/valheim/game.yaml create mode 100644 games/valheim/test.yaml diff --git a/games/valheim/game.yaml b/games/valheim/game.yaml new file mode 100644 index 0000000..0448275 --- /dev/null +++ b/games/valheim/game.yaml @@ -0,0 +1,42 @@ +# yaml-language-server: $schema=../../schema/game.schema.json +id: valheim +name: Valheim +defaultDockerImage: cm2network/steamcmd +defaultStartupCommand: args=(-name "${SERVER_NAME}" -port 2456 -world "${WORLD_NAME:-Dedicated}" -savedir /server); [ -n "${JOIN_PASSWORD}" ] && args+=(-password "${JOIN_PASSWORD}"); [ "${CROSSPLAY:-false}" = "true" ] && args+=(-crossplay); ./valheim_server.x86_64 "${args[@]}" +requiredMemoryMb: 8192 +requiredDiskMb: 4096 +defaultPorts: + - 2456/udp + - 2457/udp +installMethod: STEAMCMD +installConfig: + appId: "896660" +defaultConfig: + Crossplay: false + JoinPassword: "" + ServerName: GBRHosting - {SERVER_NAME} + WorldName: Dedicated +configSchema: + properties: + Crossplay: + category: Gameplay & Rules + description: Enable crossplay so Xbox, PS5, Switch, and Game Pass players can join. A join code is printed to the server log when enabled. + title: Crossplay + type: boolean + JoinPassword: + category: Security & Access + description: Password players must enter to join. Leave empty for a public server. Must be at least 5 characters if set. + title: Join Password + type: string + ServerName: + category: System & General + description: The name shown in the server browser. + title: Server Name + type: string + WorldName: + category: World & Environment + description: The world to load. Use a new name to start a fresh world. + title: World Name + type: string + type: object +readyPattern: '[0-9.]+/[0-9.]+/[0-9.]+ [0-9.]+:[0-9.]+:[0-9.]+: Loading: Done\. Total seconds sinze ZNet start: [0-9.]+,' diff --git a/games/valheim/test.yaml b/games/valheim/test.yaml new file mode 100644 index 0000000..47c8671 --- /dev/null +++ b/games/valheim/test.yaml @@ -0,0 +1,6 @@ +# yaml-language-server: $schema=../../schema/test.schema.json +# Values CI uses to boot-test this game. Never put real credentials here: map them under 'secrets'. +config: {} +readyExample: '10/26/2026 01:43:17: Loading: Done. Total seconds sinze ZNet start: 38.233557, Genloc duration: 30483.229 ms, (Total genloc time: 00:00:30.6895350, locations: 183, iterations: 0)' +secrets: {} +timeoutSec: 2400