Panel/modules/steam_workshop
2026-01-27 17:05:48 -06:00
..
controllers workshop 2026-01-27 17:05:48 -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 Update .. workshop search 2026-01-18 18:06:36 -06:00
lib workshop 2026-01-27 17:05:48 -06:00
views updated style 2026-01-18 18:58:28 -06: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 style fix 2026-01-18 19:00:26 -06:00
steam_workshop.js Update .. workshop search 2026-01-18 18:06:36 -06: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.