Zum Inhalt

Eigenes Add-on erstellen

Mit einem Add-on kannst du Cockpit-XP um eigene Funktionen erweitern. Ein Add-on besteht typischerweise aus einem Skript, das auf Renn- oder Sensorereignisse reagiert. Programmierkenntnisse helfen beim Einstieg; die verfügbaren Befehle und Ereignisse sind Cockpit-XP-spezifisch.

Was kann ein Add-on tun?

Add-ons können zum Beispiel auf eine Start/Ziel-Durchfahrt, einen Tank-Sensor, einen Rekord oder einen digitalen Eingang reagieren. Je nach Ereignis und unterstützten Cockpit-XP-Befehlen können sie Renninformationen auslesen, Ansagen oder Symbole ausgeben, Konfigurationswerte verwenden oder mit unterstützter Hardware zusammenarbeiten. Welche Möglichkeiten verfügbar sind, hängt vom installierten Cockpit-XP und dem jeweiligen Add-on ab.

Add-ons herunterladen und aktivieren

Du kannst auch von Usern bereitgestellte Addons herunterladen:

  1. Öffne in Cockpit-XP den Online-Update-Service (OUS) und wähle das gewünschte Add-on zum Herunterladen beziehungsweise Installieren aus. Verfügbarkeit und Bezeichnungen können je nach Version variieren.
  2. Aktiviere das Add-on im StartCenter unter Optionen → AddOn Aktivierung. Wähle den passenden Ordner, zum Beispiel Anwender, und setze das Häkchen beim Add-on.
  3. Falls Cockpit-XP beim Ändern geöffnet war oder das Add-on nicht in der Verwaltung erscheint, aktualisiere die Add-on-Liste oder starte Cockpit-XP neu.
  4. Lies die mitgelieferte Beschreibung und richte add-on-spezifische Optionen und Hardwarezuordnungen ein, bevor du die Funktion testest.

Aufbau und Ablage

Ein Add-on liegt in einem eigenen Unterordner im Add-on-Verzeichnis des Cockpit-XP-Datenverzeichnisses, üblicherweise unter AddOn\Anwender. Den Pfad zum Datenverzeichnis findest du in Cockpit-XP über Info → Datenverzeichnis.

Typische Dateien sind:

  • AddOn.cps.xml: das Programm mit den Ereignissen und dem Pascal-Script-Code.
  • ConfigPackage.xml: optionale Konfiguration, zum Beispiel einstellbare Werte oder Ein-/Ausgangszuordnungen.
  • Info.txt: kurze Beschreibung und Hinweise für Anwender.
  • version.xml: Versionsinformationen für den Online-Update-Service, sofern das Add-on darüber verteilt wird.

Je nach Funktion können weitere Dateien hinzukommen. Arbeite an eigenen Add-ons im Anwender-Ordner, nicht an den mitgelieferten Dateien. So bleiben eigene Änderungen bei Updates erhalten.

Kleines Beispiel: Fahrername bei Start/Ziel ansagen

Dieses Beispiel liest beim Ereignis StartZiel den Namen des auslösenden Fahrers aus und gibt ihn per Sprachausgabe aus. Die Variable muss als Text (String) deklariert werden:

var
  Fahrername: String;
begin
  Fahrername := Cockpit.FahrerName;
  cpSpeech(Fahrername);
end;

Im Add-on-Editor wählst du links das Ereignis StartZiel und trägst den Code in den dafür vorgesehenen Programmteil ein. Die Oberfläche stellt den Ereignisrahmen bereit; beachte daher die Struktur im Editor und füge nicht versehentlich einen zweiten begin-/end-Rahmen ein. Der Name des Fahrers bezieht sich auf den Slot, der das Ereignis ausgelöst hat.

Entwicklungsablauf

  1. Lege im Datenverzeichnis unter AddOn\Anwender einen eigenen Add-on-Ordner an. Verwende für den ersten Versuch am besten eine Kopie eines mitgelieferten oder ausdrücklich als Beispiel bereitgestellten Add-ons.
  2. Öffne im ConfigCenter die Add-on-Verwaltung und anschließend AddOn.cps.xml. Wurde der Ordner bei geöffnetem Cockpit-XP angelegt, aktualisiere die Add-on-Struktur oder starte Cockpit-XP neu.
  3. Wähle im Editor ein passendes Ereignis. Trage Programmcode in dessen vorgesehenen Bereich ein; Variablen gehören in die Deklaration vor den Programmteil begin.
  4. Prüfe den Code im Editor auf Syntaxfehler und aktiviere das Add-on im StartCenter → Optionen → AddOn Aktivierung.
  5. Teste zunächst mit der Tastensimulation oder in einem kurzen Trainingslauf. Kontrolliere insbesondere, ob das gewünschte Ereignis ausgelöst wird und der richtige Slot erkannt wird.

Verwende nur die in der Cockpit-XP-Add-on-Sprache verfügbaren Befehle. Bei einem Fehler prüfe zuerst Ereignis, Variablentyp, Schreibweise und die von der Rennbahn benötigte Sensor- oder Eingangszuordnung.