91 lines
1.7 KiB
Markdown
91 lines
1.7 KiB
Markdown
# Config Games
|
|
|
|
## Purpose
|
|
|
|
Game XML definitions, CLI parameter generation, mod definitions, and custom field mapping.
|
|
|
|
## Current Status
|
|
|
|
- Production
|
|
- Functional
|
|
|
|
## Dependencies
|
|
|
|
- XML schema
|
|
- XML parser
|
|
- gamemanager
|
|
- user_games
|
|
- file/config editing tools
|
|
|
|
## Database Tables
|
|
|
|
- `config_homes`
|
|
- `config_mods`
|
|
|
|
## Agent Interaction
|
|
|
|
- drives startup command construction
|
|
- influences query and control protocol handling
|
|
|
|
## User Workflow
|
|
|
|
- select a game definition
|
|
- configure startup parameters
|
|
- view/edit common CLI values
|
|
- work with custom fields
|
|
|
|
## Admin Workflow
|
|
|
|
- create/update XML game configs
|
|
- define mods, CLI params, ports, and custom fields
|
|
- validate XML structure
|
|
|
|
## Security Concerns
|
|
|
|
- parameter injection
|
|
- shell escaping
|
|
- path validation
|
|
|
|
## Known Issues
|
|
|
|
- schema is powerful but broad
|
|
- some capabilities are encoded implicitly instead of declaratively
|
|
|
|
## Missing Functionality
|
|
|
|
- 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
|
|
- document supported variables and examples more clearly
|
|
- tie docs generation into XML
|
|
|
|
## Recommendation
|
|
|
|
- Keep / Improve
|