Cockpit-XP bietet seit der Version 2.0.4 build 46 die Option, die Funktionalität des Hauptprogramms durch eigene Scripte, sogenannte AddOns, zu erweitern. Dadurch hat jeder Anwender die Möglichkeit, Funktionen, die er für sich gerne einsetzen möchte, selbst zu programmieren.
Als Sprache kommt eine Pascal Scriptsprache zum Einsatz.
Allerdings steht nur die Funktionalität innerhalb der AddOn-Sprache zur Verfügung, die der Entwickler von Cockpit-XP in die Anwendung integriert. Da die AddOns es erlauben, den Code der Anwendung schlank zu halten, hat dieser jedoch großes Interesse, hier kontinuierlich die Möglichkeiten zu erweitern.
Von kleinen Aufgaben, wie das Schalten eines Relais beim Überfahren eines Sensors durch ein Slotcar, bis hin zu ausgewachsenen Rennsimulationen, sind schon diverse Erweiterungen im Kundenforum zum Download verfügbar.
In dieser Rubrik soll es darum gehen, Fragen rund um dieses komplexe Thema zu beantworten und grundlegendes Wissen zu sammeln.
Alle AddOns liegen im Datenverzeichnis von Cockpit-XP und dort in einem Unterordner „AddOn“. Dort gibt es einige Verzeichnisse, die die mitgelieferten Erweiterungen beinhalten. Bei einer Standardinstallation sind das die Ordner
Innerhalb dieser Ordner befindet sich für jedes AddOn ein weiteres Verzeichnis, in dem sich die eigentlichen AddOn-Dateien befinden.
Ordner mit vorangestelltem „_“ werden in Cockpit-XP selbst nicht angezeigt. So lassen sich die eigentlichen Ordner übersichtlich halten.
Anwender sollten unbedingt den Tipp beherzigen, keine Änderungen an Dateien in den Ordnern mit Unterstrich im Ordnernamen und dem Cockpit-Verzeichnis vorzunehmen. Diese Ordner werden bei Updates gelöscht und durch die Standardinhalte ersetzt. Das Anwenderverzeichnis ist davon nicht betroffen und daher der richtige Ort für eigene Entwicklungen oder Anpassungen bestehender AddOns.
Möchte man ein mitgeliefertes AddOn verwenden, kopiert man dieses mit dem Windows Explorer einfach von seinem aktuellen Platz in den Ordner „Anwender“.
AddOns können Ja seit der V3 sehr einfach Online ausgewählt und installiert werden !
Ein AddOn besteht in der Regel aus vier Dateien.
Sollen Informationen auf einem SubScreen dargestellt werden, befinden sich die dazu gehörenden Dateien ebenfalls im AddOn-Verzeichnis oder seinen Unterordnern.
Für jeden SubScreen befindet sich dann eine weiter XML-Datei im AddOn-Verzeichnis. Diese entspricht vom Aufbau der Dateien, mit denen die eigentlichen Rennbildschirme dargestellt werden. In diesen Dateien können die gleichen Variablen, Elemente und Texte genutzt werden. Die Entwicklung erfolgt im RennDesigner.
Grafiken, die in diesen SubScreens erscheinen, müssen ebenfalls im AddOn-Ordner gespeichert sein.
Bei einem AddOn wie „SLX - Nationalhymne v2“ macht sich der Entwickler die Möglichkeit zu Nutze, die Speicherorte relativ zum AddOn-Verzeichnis anlegen zu können. Dort befinden sich die Audio Dateien in einem Unterorder „Hymne“, der dann aus dem AddOn heraus nach der passenden Datei durchsucht wird.
Für die Programmierung eines AddOns sind neben den (Grund-)Kenntnissen der Programmiersprache auch einige Besonderheiten der Software Cockpit-XP zu beachten.
Eine dieser Besonderheiten ist, dass die Verarbeitung im AddOn stets durch bestimmte Ereignisse ausgelöst wird. So löst zum Beispiel die Betätigung einer Taste auf der Computertastatur das Ereignis „KeyDown“ aus und es werden alle Addons, die für dieses Ereignis Programmcode enthalten, gestartet.
Selbstverständlich behandelt aber nicht jedes AddOn auch jedes Ereignis: So kann zum Beispiel ein Tank-AddOn nur Code für die Ereignisse „TankenEinfahrt“ und „TankenAusfahrt“ enthalten. Ein anderes AddOn verarbeitet vielleicht nur die Betätigung eines an der USB-Box angeschlossenen Tasters und enthält daher vielleicht nur Code im Ereignis „DigInputEvent“ usw.
Eine vollständige Liste mit einer Kurzbeschreibung findet sich im Kapitel Ereignisse im AddOn.
Ein schlecht programmiertes AddOn kann viele negative Auswirkungen zeigen und es kann leicht passieren, dass man die auftretenden Probleme zunächst an anderer Stelle vermutet.
Wenn man aber bereit ist, sich mit den Grundbegriffen vertraut zu machen, erhält man durch die Möglichkeit der Programmierung eigener AddOns ein mächtiges Werkzeug, mit dem man die Software an seine Bedürfnisse anpassen bzw. eigene Vorstellungen umsetzen kann.