Eine N2-Datei enthält binäre Nebula-Skripte.
Der fourcc-Code ist ein 4 byte langer Mnemonic für eine Nebula2-Funktion. Definitionen der Skriptbaren Funktionen findet man in den *_cmds.cc.
Die ersten vier Bytes werden von der magic number eingenommen. Danach folgt eine Reihe von Kommandoblöcken.
Die Datei beginnt mit den vier Bytes '0', 'B', 'O', 'N'.
Kommandos werden von der Skriptengine direkt an Nebula2-Objekte weitergereicht. Es gibt drei Arten von Kommandos.
Der Kommandoblock besteht aus drei Strings: "_new", ,
Dieser Kommandoblock besteht aus zwei Strings: "_sel", <relativer></relativer>
TODO: Wie sind relative Pfade in der Nebula-Engine organisiert?
Um ein Signal an des aktuelle Objekt zu senden, wird ein Kommandoblock bestehend aus einem int für den fourcc-Kode des Kommandos, ein short für die gesamten Bytes der Argumente und dann die Argumente selbst (int, float, string, bool, object id und void). Die Kommandocodes und Argumentlisten werden in den *_cmds.cc definiert.
Strings bestehen aus einem short für die länge und einem char-Array.