Panel/modules/steam_workshop
copilot-swe-agent[bot] d8ad1aa924 Fix workshop search appID lookup and checkbox picker
Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com>
2026-01-31 19:01:46 +00:00
..
bin used gpt script 2026-01-31 12:07:22 -06:00
controllers rebuild the query page 2026-01-31 12:15:53 -06:00
data Updates 2026-01-17 19:45:24 -06:00
DayZ Workshop Mod Auto Update Steam workshop UPDATE 2026-01-17 09:12:06 -06:00
game_configs No changes 2025-09-11 13:29:15 -04:00
lang workshop 2026-01-27 17:18:17 -06:00
lib Fix workshop search appID lookup and checkbox picker 2026-01-31 19:01:46 +00:00
views Fix workshop search appID lookup and checkbox picker 2026-01-31 19:01:46 +00:00
functions.php reverted the new updates 2026-01-16 02:57:05 -06:00
main.php Steam workshop UPDATE 2026-01-17 09:12:06 -06:00
module.php updated 2026-01-17 09:37:36 -06:00
monitor_buttons.php Updates 2026-01-17 19:45:24 -06:00
navigation.xml updated 2026-01-17 09:37:36 -06:00
README.md Steam workshop UPDATE 2026-01-17 09:12:06 -06:00
steam_workshop.css Fix workshop search appID lookup and checkbox picker 2026-01-31 19:01:46 +00:00
steam_workshop.js Fix workshop search appID lookup and checkbox picker 2026-01-31 19:01:46 +00:00
uninstall.php reverted the new updates 2026-01-16 02:57:05 -06:00
workshop_admin.php updated 2026-01-17 09:37:36 -06:00

Steam Workshop Automation (WIP)

This folder now hosts the rewritten Steam Workshop tooling for the GSP panel. The previous DayZ-only batch scripts are left untouched under DayZ Workshop Mod Auto Update/ for historical reference, but the new MVC layer introduces adapters, XML-backed configuration, and an eventual agent scheduler.

Milestone 1 summary

  • Controllers controllers/SteamWorkshopController.php routes the module entrypoint through a thin MVC wrapper.
  • Service layer lib/SteamWorkshopService.php loads/saves per-home XML configs under data/configs/<home_id>.xml, parses Modlist-style imports, and exposes adapter metadata.
  • Adapters lib/GameAdapters/*.xml define canonical behaviors for DayZ, Arma 3, ARK, Garry's Mod, and CS2. They are validated against schema.xsd.
  • Views views/* render the server list, edit form, and parsed mod table using localized strings from lang/en_US.php.
  • Data directory data/configs/ stores the serialized workshop configuration for each game home.

Editing workflow

  1. Visit home.php?m=steam_workshop&p=main to see the list of homes you can access. Click Configure on any home to edit its Workshop setup.
  2. Paste a Modlist.txt style payload (e.g., 1565508334,@MyMod) into the Workshop IDs textarea.
  3. Choose the adapter, interval, install strategy, and on-update action, then click Save settings. The controller serializes this into XML so the agent can consume it later.
  4. Config files live under modules/steam_workshop/data/configs/. Delete a file to reset a home to defaults.

Roadmap

  • Milestone 2 will flesh out the adapter runtime helpers and validation against the schema.
  • Milestone 3 wires the Linux/Windows agents via a new workshop_update RPC and scheduler, using the serialized XML from this module.
  • Later milestones add dry-run/apply actions, activation writers, and safe apply hooks.

GSP is a heavily customized fork of OGP maintained by WDS. Keep all Steam Workshop code inside this module tree so storefront, agents, and future docs stay decoupled.