Welche Musik beim Spielen von Gothic im Hintergrund läuft, wird von Objekten der Klasse oCZoneMusic bestimmt. Diese haben folgende wichtige Eigenschaften:
- Die Bounding Box bestimmt den Umfang der Zone.
- Die Zeichenkette hinter dem letzten Unterstrich im Vobname bezeichnet das Musikthema. OREBARONS_OR bedeutet also Musikthema "OR", NEWCAMP_NCO steht für das Thema "NCO". Der restliche Teil des Names ist frei wählbar und hat keine Auswirkung auf die Auswahl der Hintergrundmusik.
- Mit Hilfe der Priorität ist es möglich, Zonen in Zonen zu definieren. Befindet sich der Spieler in der Bounding Box von mehr als einer Musikzone, so erhält die Zone mit der höchsten Priorität die Kontrolle. Beispiel: Innere Burg (Thema OR) im alten Lager (Thema OC)
|
|
Zusätzlich kann mittels einem Objekt der Klasse oCZoneMusicDefault eine Standard-Musikzone definiert werden, die für das gesamte Level gilt. Obwohl vorhanden, haben die Eigenschaften Priorität und Bounding Box bei diesem Objekt natürlich keine Bedeutung.
Ein Musikthema steht nicht für ein einzelnes Lied, sondern für bis zu sechs, von denen abhängig von der aktuellen Situationen eines ausgewählt wird. Es kann jeweils für den Tag und die Nacht ein Standard-Lied sowie Stücke für Kampf- bzw. Gefahrensituationen definiert werden. Dies erfolgt in der Scriptdatei system/MUSIC/musicinst.d durch Instanzen der in system/_INTERN/Music.d definierten Klasse C_MUSICTHEME (es existiert ein Prototyp C_MUSICTHEME_DEF mit Standardwerten) mit folgenden Namen:
<Musikthema>_Day_Std (Standard am Tage)
<Musikthema>_Day_Thr (Gefahr am Tage)
<Musikthema>_Day_Fgt (Kampf am Tage)
<Musikthema>_Ngt_Std (Standard in der Nacht)
<Musikthema>_Ngt_Thr (Gefahr in der Nacht)
<Musikthema>_Ngt_Fgt (Kampf in der Nacht)
Es ist nicht notwendig, jede dieser sechs Instanzen zu definieren. Fehlt eine Instanz, so verwendet Gothic -- falls vorhanden -- die passende Instanz der Standard-Musikzone.
Die Klasse C_MUSICTHEME hat folgende Felder:
- file verweist auf eine mit dem DirectMusic Producer exportierte Runtime-Segment-Datei (*.sgt). Diese muss sich in einem Unterverzeichnis von _work/DATA/Music befinden. Bei Mods sollte hierbei ein Unterverzeichnis mit dem Namen des Mods verwendet werden. Evtl. benötige DLS-Sammlungen (*.dls) und Styles (*.sty) müssen ebenfalls in _work/DATA/Music vorhanden sein. Gothic kann nur mit Runtime Files arbeiten, *.sgp, *.dlp oder *.stp haben also nichts im MUSIC-Ordner zu suchen!
- vol ist ein reelle Zahl zwischen 0 und 1, welche die Lautstärke der Musik bestimmt. Im Normalfall sollte sie auf 1 (Maximum) stehen.
- loop legt fest, ob die Segment-Datei nur einmal (0) oder in einer Endlosschleife (1) abgespielt werden soll.
- Mit transType und transSubType kann die Art des Überganges zum letzten Lied gesteuert werden. Die möglichen Werte befinden sich als Konstanten (TRANSITION_TYPE_* bzw TRANSITION_SUB_TYPE_*) in Music.d.
- Die Standardwerte von reverbMix und reverbTime sollten man normalerweise nicht ändern müssen.
|