- Serverplattform
- GoldSrc · AMX Mod X
- Transport
- A2S
- Schema
- 1
EMP erweitert die Standardantwort eines Gameservers um strukturierte, aktuelle Daten. Die erhaltenen Informationen können von kompatiblen Monitoring-Diensten und beliebigen anderen Drittanbieterdiensten genutzt werden.
EMP wird vom Lagnetic-Team entwickelt und gepflegt und als Open-Source-Software bereitgestellt.
Jedes Spiel erhält eine eigene, an seine Engine angepasste Serverimplementierung.
| Spiel | Serverplattform | Transport | Schema | Status | Repository |
|---|---|---|---|---|---|
| Counter-Strike 1.6 | GoldSrc · AMX Mod X | A2S | 1 | Unterstützt | emp-cs16-amxx |
| Counter-Strike: Source | Source | — | — | Geplant | Noch nicht veröffentlicht |
| Counter-Strike: Global Offensive | Source | — | — | Geplant | Noch nicht veröffentlicht |
| Counter-Strike 2 | Source 2 | — | — | Geplant | Noch nicht veröffentlicht |
Links zu neuen Repositories werden nach Veröffentlichung der jeweiligen Implementierung ergänzt.
Die Standardantwort eines Servers bildet seinen technischen Zustand gut ab: Adresse, aktuelle Karte, Spielerzahl, Passwortschutz, Version und weitere Angaben. Für eine ausführliche Beschreibung des Gameservers selbst reicht das jedoch nicht aus — etwa für seinen Modus, unterstützte Sprachen, offizielle Communities und deren Links, Modifikationen und andere charakteristische Merkmale.
Extended Meta Protocol ergänzt diese Angaben als benannte Felder und stellt allen potenziellen Empfängern vollständigere Informationen bereit. Die Quelle dieser Informationen bleibt der Gameserver selbst.
Spieler erhalten aktuelle Serverinformationen über alle Quellen und Dienste, die sie bereits nutzen.
Nach Änderungen müssen Informationen nicht mehr in zahlreichen Monitoring-Diensten einzeln korrigiert und neu registriert werden.
Dienste erhalten vollständige, aktuelle Angaben direkt vom Server statt aus manuell gepflegten Benutzerdaten.
Entwickler nutzen ein gemeinsames Schema statt inkompatibler Sonderformate, die andere Dienste nicht unterstützen.
Das Protokoll schafft einen gemeinsamen Vertrag zwischen Gameservern und Diensten, die sie Spielern präsentieren.
EMP ermöglicht informativere Serverkarten ohne manuelle Datensammlung oder individuelle Integration für jedes Projekt.
A2S abfragen und Felder mit em_-Präfix erkennen.
Zuerst em_status und em_schema prüfen, danach zusammengesetzte Felder zusammenführen.
Alle Zeichenketten validieren und escapen sowie externe Ressourcen sicher laden.
EMP gibt Betreibern Kontrolle darüber, wie ihr Server in verschiedenen Diensten dargestellt wird, und ermöglicht es, die Besonderheiten des Projekts einmal direkt in seiner Konfiguration zu beschreiben.
Das passende Plugin oder die passende Mod aus einer offiziellen Quelle herunterladen.
Auf dem eigenen Server installieren.
Die Konfiguration entsprechend den Einstellungen des Servers und des Projekts ausfüllen.
Das offene Schema kann auf andere Spiele übertragen werden, wobei die einheitliche Bedeutung der Felder und das erwartete Verhalten für Monitoring-Dienste erhalten bleiben.
Einen im Zielspiel verfügbaren Mechanismus für die Abfrage von Servermetadaten wählen.
EMP-Schema, Manifeste dynamischer Felder und Versionierungsregeln erhalten.
Kontakt mit uns aufnehmen, damit die Mod unter Ihrer Autorenschaft veröffentlicht werden kann.
Das folgende Beispiel beschreibt die EMP-Implementierung für Counter-Strike 1.6. Transport und Implementierungsdetails können bei anderen Spielen abweichen; maßgeblich sind die Dokumentation des jeweiligen Repositorys und das aktuelle EMP-Schema.
Projektinformationen stehen in der EMP-Konfiguration auf dem Server.
Das Plugin validiert die Konfiguration und ergänzt em_-Felder in A2S.
Ein kompatibler Dienst verarbeitet das Schema und zeigt aktuelle Informationen.
EMP erweitert Standard-A2S-Antworten und dupliziert nicht Spielerzahl, Karte, Bots, Passwort, VAC-Status oder Serverversion.
em_desc*, em_mod, em_keywordsem_lang_voice, em_lang_uiem_icon, em_map_imgem_links, em_link_<key>em_commands*, em_custom, em_x_<key>em_status, em_schema, em_updated, em_errorDie vollständige Spezifikation, Limits und Fehler stehen im Repository. Ein minimaler Verbraucher sollte diese Felder berücksichtigen.
em_statusem_schemaem_desc_partsem_linksem_customem_error