Panel/docs/modules/config_games.md

1.7 KiB

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:

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