2.8 KiB
Workshop System
Workspace reference: GSP-WORKSPACE.md
Current State
The current Workshop/content work is split across two module lines:
Panel/modules/steam_workshop- active user-facing Workshop modulePanel/modules/addonsmanager- Server Content module, no longer a Workshop entry point
Important files:
Panel/modules/steam_workshop/module.phpPanel/modules/steam_workshop/main.phpPanel/modules/steam_workshop/monitor_buttons.phpPanel/modules/steam_workshop/workshop_admin.php
Current Implemented Behavior
Steam Workshop is handled by the dedicated steam_workshop module.
Server Content must not show a Steam Workshop Mods category or route users into addonsmanager/workshop_content.php.
Database State
The dedicated module still uses its own Workshop tables and per-game XML files under Panel/modules/steam_workshop/game_configs/.
What Exists Today
The dedicated module still provides:
- user-facing Workshop pages
- monitor-button access from Game Monitor
- per-game Workshop configuration files
- uninstall and admin support pages
Main Limitations
- Some repository docs still describe the abandoned addonsmanager Workshop direction and should be treated as historical until updated.
Scheduler Integration
Scheduler behavior for Workshop should be evaluated against the dedicated module, not inferred from addonsmanager.
Troubleshooting
| Symptom | Meaning | Fix |
|---|---|---|
Steam Workshop Mods appears under Server Content |
Old addonsmanager Workshop category logic is still present. | Remove the workshop_item category from Server Content UI and use the dedicated steam_workshop module. |
Recommended Mental Model
Use steam_workshop for Workshop. Use addonsmanager for normal Server Content items only.
References Reviewed
Panel/modules/steam_workshopremains the active module in this repository checkout.game_pathserver_pathworkshop_app_idsteam_app_iditemsitem_detailsinstall_strategytarget_pathextra.copy_keysextra.keys_target_path
Generated Workshop jobs validate numeric item IDs, keep writes under the server home, use SteamCMD through a temporary runscript, copy files into the resolved target path, and copy .bikey files for DayZ/Arma strategies when enabled.
Bundled handler actions:
install- download with SteamCMD, copy/install into target path.update- validate/download with SteamCMD, copy/install into target path.check_updates- validate/download only; does not alter live mod folders.download_only- download/cache only and leave install pending.validate_files- SteamCMD validate/download only.remove- move the installed target folder intogsp_server_content/workshop/removed/; this does not require SteamCMD.