From 560d8e1d1e8663fbc718288138d2e014f8b59dc0 Mon Sep 17 00:00:00 2001 From: valgulnecron <39313199+ValgulNecron@users.noreply.github.com> Date: Fri, 17 Jul 2026 01:57:11 +0200 Subject: [PATCH] fix: declare each game's real CurseForge id; add CS2 Workshop browse MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ARK's mods browser listed Minecraft mods because the CurseForge engine hardcoded gameId=432. Templates now declare their own id: minecraft-java 432 (2.8.0 -> 2.8.1) ark-survival-ascended 83374 (1.0.7 -> 1.0.8) Both ids come from CurseForge's own /v1/games, and the fix was verified against the live API: 432 returns Minecraft content, 83374 returns real ARK mods. CS2 (1.0.4 -> 1.1.0) gains a Steam Workshop Collections browser wired to its existing CS2_HOST_WORKSHOP_COLLECTION env via modpacks.refEnv. Workshop content is fetched by steamcmd inside the container, not over HTTP, so this is a preview browser with no Install button — picking a collection writes its id into the env the image already reads. Also ignore __pycache__ from validate.py runs. Signed-off-by: valgulnecron <39313199+ValgulNecron@users.noreply.github.com> --- .gitignore | 2 ++ ark-survival-ascended/module.yaml | 2 +- ark-survival-ascended/template.yaml | 7 ++++++- cs2/module.yaml | 2 +- cs2/template.yaml | 15 ++++++++++++++- minecraft-java/module.yaml | 2 +- minecraft-java/template.yaml | 5 ++++- 7 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..956b4fb --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Python bytecode from validate.py +__pycache__/ diff --git a/ark-survival-ascended/module.yaml b/ark-survival-ascended/module.yaml index be30d55..033231d 100644 --- a/ark-survival-ascended/module.yaml +++ b/ark-survival-ascended/module.yaml @@ -1,7 +1,7 @@ apiVersion: gameplane.local/module/v1 name: ark-survival-ascended displayName: "ARK: Survival Ascended" -version: 1.0.7 +version: 1.0.8 game: ark-survival-ascended categories: [Survival, PvP, Co-op, Modded] summary: "ARK: Survival Ascended dedicated server (mschnitzer/asa-linux-server) with RCON console/moderation. CurseForge mods install via the game's own -mods= launch parameter." diff --git a/ark-survival-ascended/template.yaml b/ark-survival-ascended/template.yaml index cf798b0..0a377c7 100644 --- a/ark-survival-ascended/template.yaml +++ b/ark-survival-ascended/template.yaml @@ -58,7 +58,7 @@ metadata: spec: displayName: "ARK: Survival Ascended" game: ark-survival-ascended - version: 1.0.7 + version: 1.0.8 categories: [Survival, PvP, Co-op, Modded] accentColor: "#00b2e2" description: | @@ -194,6 +194,11 @@ spec: registry: providers: - provider: curseforge + # 83374 is ARK: Survival Ascended's numeric CurseForge game id + # (verified against CurseForge's own /v1/games) — NOT + # Minecraft's 432. Without this, the browser silently fell back + # to Minecraft's mods. + curseforgeGameID: 83374 # NO PROBES — deliberately. ASA exposes no probeable TCP port: # - game/peer are UDP, which the kubelet cannot probe diff --git a/cs2/module.yaml b/cs2/module.yaml index 0dc2a58..a0e78ef 100644 --- a/cs2/module.yaml +++ b/cs2/module.yaml @@ -1,7 +1,7 @@ apiVersion: gameplane.local/module/v1 name: cs2 displayName: Counter-Strike 2 -version: 1.0.4 +version: 1.1.0 game: cs2 categories: [Shooter, PvP] summary: Counter-Strike 2 dedicated server (joedwards32/CS2) with Source RCON and a Metamod/CS# plugins volume. diff --git a/cs2/template.yaml b/cs2/template.yaml index 83d3e0c..6f3193e 100644 --- a/cs2/template.yaml +++ b/cs2/template.yaml @@ -22,7 +22,7 @@ metadata: spec: displayName: Counter-Strike 2 game: cs2 - version: 1.0.4 + version: 1.1.0 categories: [Shooter, PvP] accentColor: "#f4a900" description: | @@ -158,6 +158,19 @@ spec: - github.com - .githubusercontent.com maxSizeMB: 256 + # Steam Workshop Collections browser (Modpacks tab only — Steam has + # no Install button by design: Workshop content is fetched by + # steamcmd/srcds itself inside the container at boot, not over HTTP, + # so this provider has no per-mod install path). Picking a collection + # here just writes its id into CS2_HOST_WORKSHOP_COLLECTION below, + # which stays the manual escape hatch for anyone who already knows + # their collection id. + registry: + providers: + - provider: steam + steamAppID: 730 # Counter-Strike 2 (verified Steam appid). + modpacks: + refEnv: CS2_HOST_WORKSHOP_COLLECTION configSchema: - name: SRCDS_TOKEN diff --git a/minecraft-java/module.yaml b/minecraft-java/module.yaml index 464221e..577324a 100644 --- a/minecraft-java/module.yaml +++ b/minecraft-java/module.yaml @@ -1,7 +1,7 @@ apiVersion: gameplane.local/module/v1 name: minecraft-java displayName: Minecraft (Java Edition) -version: 2.8.0 +version: 2.8.1 game: minecraft-java categories: [Sandbox, Survival, Building, Modded, Creative] summary: Vanilla / Paper / Spigot / Bukkit / Purpur / Forge / NeoForge / Fabric / Quilt servers (itzg/minecraft-server) with a version+loader picker spanning 1.16.5–latest, per-loader mod volumes, and in-app Modrinth browse. diff --git a/minecraft-java/template.yaml b/minecraft-java/template.yaml index c46b0dc..d202192 100644 --- a/minecraft-java/template.yaml +++ b/minecraft-java/template.yaml @@ -22,7 +22,7 @@ spec: displayName: Minecraft (Java Edition) game: minecraft-java # Kept in lockstep with module.yaml's bundle version from 2.5.0 onward. - version: 2.8.0 + version: 2.8.1 categories: [Sandbox, Survival, Building, Modded, Creative] # Brand color the dashboard tints this game's icon/accents with. accentColor: "#5b9a3e" @@ -460,6 +460,9 @@ spec: env: - { name: TYPE, value: MODRINTH } - provider: curseforge + # 432 is Minecraft's numeric CurseForge game id (verified + # against CurseForge's own /v1/games). + curseforgeGameID: 432 - provider: hangar probes: