- Fix toggle/load_order handlers to use page-reload (not JSON) responses - Remove dead jsonResponse helper method from WorkshopModController - Fix robocopy exit code detection using ROBOCOPY_EXIT: sentinel (not text parsing) - Fix rsync dry-run change detection using RSYNC_EXIT: sentinel - Remove agentIdFromRemote() stub; pass agentId directly to triggerSteamCmdDownload() logging - Fix 'enabled' checkbox default in profile_form to use ($profile['enabled'] ?? 1) - Add missing error_toggle_failed / error_order_failed lang strings Agent-Logs-Url: https://github.com/GameServerPanel/GSP/sessions/dbeebd0e-e7a5-469d-8a8c-e63193d1ebb0 Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| bin | ||
| controllers | ||
| data | ||
| DayZ Workshop Mod Auto Update | ||
| game_configs | ||
| lang | ||
| lib | ||
| migrations | ||
| views | ||
| cron_update.php | ||
| functions.php | ||
| main.php | ||
| module.php | ||
| monitor_buttons.php | ||
| navigation.xml | ||
| prestart_sync.php | ||
| README.md | ||
| steam_workshop.css | ||
| steam_workshop.js | ||
| uninstall.php | ||
| workshop_admin.php | ||
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.phproutes the module entrypoint through a thin MVC wrapper. - Service layer –
lib/SteamWorkshopService.phploads/saves per-home XML configs underdata/configs/<home_id>.xml, parses Modlist-style imports, and exposes adapter metadata. - Adapters –
lib/GameAdapters/*.xmldefine canonical behaviors for DayZ, Arma 3, ARK, Garry's Mod, and CS2. They are validated againstschema.xsd. - Views –
views/*render the server list, edit form, and parsed mod table using localized strings fromlang/en_US.php. - Data directory –
data/configs/stores the serialized workshop configuration for each game home.
Editing workflow
- Visit
home.php?m=steam_workshop&p=mainto see the list of homes you can access. Click Configure on any home to edit its Workshop setup. - Paste a Modlist.txt style payload (e.g.,
1565508334,@MyMod) into the Workshop IDs textarea. - 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.
- 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_updateRPC 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.