doc changes and reference folder

This commit is contained in:
Frank Harris 2026-06-06 17:18:49 -05:00
parent 11691a5876
commit 82cbc206eb
33 changed files with 1514 additions and 2855 deletions

View file

@ -61,6 +61,29 @@ Current default install paths:
- Generic Steam Workshop content: `{SERVER_ROOT}/workshop/{MOD_FOLDER}`
- DayZ / Arma strategy content: `{SERVER_ROOT}/{MOD_FOLDER}` for root `@<workshop_id>` folder compatibility
Game XML fallback should use the canonical `workshop_support` block:
```xml
<workshop_support>
<enabled>1</enabled>
<provider>steam</provider>
<steam_app_id>107410</steam_app_id>
<workshop_app_id>107410</workshop_app_id>
<download_method>steamcmd</download_method>
<install_strategy>arma_mod_folder</install_strategy>
<install_path>{SERVER_ROOT}/{MOD_FOLDER}</install_path>
<startup_param_format>-mod={MOD_LIST}</startup_param_format>
<mod_separator>;</mod_separator>
<mod_prefix>@</mod_prefix>
<copy_keys enabled="1">
<source_pattern>{MOD_PATH}/keys/*.bikey</source_pattern>
<target_path>{SERVER_ROOT}/keys</target_path>
</copy_keys>
</workshop_support>
```
The Panel helper parser reads this block first and only tolerates old direct tags as an internal compatibility fallback.
SteamCMD requirements:
- Linux agents need SteamCMD available at the configured profile/template path, `STEAMCMD_PATH`, `/home/gameserver/steamcmd/steamcmd.sh`, or in `PATH`.
@ -99,3 +122,14 @@ This module is the right place for:
- install history
The old `steam_workshop` module should be treated as a deprecated compatibility layer, not the main future path.
## Validation
Relevant smoke tests:
```bash
php Panel/modules/addonsmanager/tests/workshop_helpers_test.php
php Panel/modules/config_games/tests/validate_server_configs.php
```
`validate_server_configs.php` validates every XML file under `Panel/modules/config_games/server_configs/` against `schema_server_config.xml`.

View file

@ -53,10 +53,33 @@ Game XML definitions, CLI parameter generation, mod definitions, and custom fiel
## Missing Functionality
- first-class workshop/content capability declarations
- first-class scheduler capability declarations
- richer docs metadata
## Workshop Capability Declarations
The XML schema now supports a first-class `workshop_support` block for Steam Workshop / Server Content Manager metadata. This is the only canonical XML format for Workshop-enabled game configs.
Key fields:
- `enabled`
- `provider`
- `steam_app_id`
- `workshop_app_id`
- `download_method`
- `install_strategy`
- `install_path`
- `startup_param_format`
- `mod_separator`
- `mod_prefix`
- `copy_keys`
Validate changes with:
```bash
php Panel/modules/config_games/tests/validate_server_configs.php
```
## Suggested Future Improvements
- extend XML capability model
@ -66,4 +89,3 @@ Game XML definitions, CLI parameter generation, mod definitions, and custom fiel
## Recommendation
- Keep / Improve