[PHP GS Webinterface] Individualisierung von Game Einstellungen

fragger1991

New Member
Hallo,

folgendes, ich habe mir ein GameServer Webinterface geschrieben, natürlich mit mehrere Server Images, nun nimmt ja auch jedes Spiele verschiedene Parameter entgegen.

z.B. Call of Duty 4 Modern Warfare "+set fs_game mods/promodlive211" oder CSS "-(in)secure"

Nun würde ich gerne, ohne großen Aufwand und doch recht Dynamisch und individualisiert, solche Einstellungen dem Kunden zum bearbeiten geben können.

Natürlich könnte ich nun je Game ein IF Schreiben, welches mit alles generiert, jedoch wäre das wieder mit Mehraufwand verbunden und doch auch irgendwo Statisch.

Nun dachte ich, ich lege mir verschiedene Templates an und nenne diese gswi_GAME.html wo ich dann alles rein schreibe. Hier gibts dann aber wieder das Problem das ich dann POSTs generiere die ich prüfen muss, desweiteren ist die Frage wie man die Datenbank dies bzgl. gestaltet das es leicht updatebar ist.

Ich hoffe das hier eventuell jemand einen Gedankenanstoß für mich hat.

Vielen Dank!
 
Wenn du es vollstaendig dynamisch haben willst buesst du Flexibilitaet ein, auch wenn es etwas paradox klingt; es ist NICHT moeglich ein System gleichwohl fuer alle erdenklichen Parameter und Einstellungen zu bauen welches gleichzeitig ohne Override die teilweise sehr spezifischen individuellen Einstellungen vollstaendig abbilden koennen - allerdings reicht in diesem Anwendungsszenario eine mehr oder weniger genaue Abbildung da die Parameter relativ konstant sind.

Beispiel:

Tabelle `games`:
- id (einzigartige ID zur Kurz-Referenz)
- spiel (Welches Spiel)
- mod (Welcher Mod vom Spiel)

Tabelle `settings`
- typ (entweder 'commandline' oder 'config')
- configpath (nur wenn typ = 'config'
- game_id (id aus Tabelle `games`)
- position (Position des Elementes)
- descr (Kurzbeschreibung bei Visualisierung)
- value_type (welche Typen der Wert haben kann, zB int;double)
- value_skippable (Ob der Wert uebersprungen werden darf)
- value_range_type ('range' oder 'regex')
- value_range (Entweder MINIMUM;MAXIMUM oder ein regex je nach value_range_type, ausser bei value_type=list)
- value_default (Standardwert)
- overridable_admin (Ob Admin den Wert manuell editieren darf)

Bei value_type = 'list' (Also einer vordefinierten Liste) ist value_range dann die Liste der moeglichen Elemente und kein Regex

Die resultierenden Config solltest du dann in einer Tabelle in 3 Level kategorisiert speichern: gameserver, user, default; somit kann der Wert je Gameserver aber auch je Benutzer editiert werden.
 
Back
Top