Erweiterungen

Der Kern des Frameworks ist sehr schlank und besteht lediglich aus dem JsonRPC Server mit den Protokollerweiterungen samt dem JavaScript Connectors. Der Apiclient gehört ebenfalls zum Kern, ist aber ausgelagert in eine eigene Erweiterung da er optional ist.

Es gibt aber eine Vielzahl von Erweiterungen, viele davon sind Allgemein sinnvoll verwendbar und bereits im Skeleton vorhanden, Andere wiederum sind vor allem auf die Entwicklung eines Spieles spezialisiert.

Schwerpunkte der allgemeinen Erweiterungen:

  • API Annotations
  • Doctrine Einbindung
  • Accounts und deren Verknüpfungen

Schwerpunkte der spielerelevanten Erweiterungen:

  • Spielrunden
  • Avatare
  • Allianzen
  • Achievements
  • Tickevents für verzögerte Aktionen

Installation von Erweiterungen

Erweiterung der “/composer.json” und anschliessend Ausführung von “composer update”:

{
    "require" : {
        ...,
        "%projectname%" : "dev-master"
    }
}

Erweiterung der “/config/application.config.php”:

return [
    'modules' => [   
        ...,
        '%modulename%',
    ],
];

Die weiteren Schritte sind abhängig der jeweiligen Erweiterung:

  • Besitzt die Erweiterung ein “/public” Verzeichnis muss der Inhalt in das Root “/public” Verzeichnis kopiert werden
  • Besitzt die Erweiterung eine “/data/database/install.sql” muss diese in der Datenbank eingespielt werden
  • Besitzt die Erweiterung eine “/bower.json” muss die im Root liegende “/bower.json” erweitert werden und “bower update” ausgeführt werden