FSRail – die Modellbahn für Ihren Computer

Version 1.15

Lizenzbedingungen

Sie benutzen diese Software in eigener Verantwortung und auf eigenes Risiko. Ich versichere Ihnen, dieses Software unter Windows 98, Windows NT 4.0 und Windows 2000 monatelange benutzt zu haben, ohne daß sie je ein Problem bereitete. Meine Freunde, die diese Software testeten, haben ebenfalls niemals von Problemen berichtet. Es wurden Vorkehrungen getroffen, um die Auswirkung der Software auf das Gesamtsystem so klein wie möglich zu halten. So benutzt sie keine DLL, berührt die Registry nicht, und das Programm kann nur in das Verzeichnis schreiben, in dem es sich selbst befindet. Während das Programm läuft, sind keine Dateien permanent geöffnet. Nach meinem begrenzten Verständnis kann ich mir daher keine Ursache für Schäden an Ihrem System vorstellen - dennoch kann nicht ausgeschlossen werden, daß es Kombinationen von Hardware und Software gibt, in denen solche auftreten.

Das Gesamtpaket wurde ausführlich mit dem FS98 und FS2000 getestet. Für FS98 arbeitete es problemlos zusammen mit Zubehör wie z.B. Europe1, Global Upgrade, einiger Freeware - Szenerie, zusätzlichen Flugzeugen - die Auswahl an echtem Zubehör für FS2000 ist z.Zt. noch knapp. Dennoch ist es wahrscheinlich, daß es Erweiterungen zum Flugsimulator gibt, die mit dieser Software nicht zusammenarbeiten, insbesondere die Bewegung der Züge stören oder durch diese gestört werden.

Sie können diese Software verwenden, um Szenerien für Ihren eigenen Bedarf, für Freeware, Shareware und kommerzielle Szenerien (kommerzielle Version) zu entwerfen. Wenn Sie die Szenerien - kostenfrei oder kostenpflichtig - verteilen, dürfen Sie die Texturen, die benötigt werden, mit verteilen, solange Sie die Benutzung von FSRail und die Urheberschaft der Texturen deutlich erwähnen. Shareware - und kommerzielle Szenerien benötigen einen SCASM - Compiler, der dafür lizensiert ist. Dieser kann über www.scasm.de bezogen werden.

Benutzer der Demoversion dürfen Szenerien für den eigenen Bedarf im Rahmen der Möglichkeiten der Demo entwerfen. Die Demoversion darf auch benutzt werden, um zu größeren Freewareprojekten kleine Bahnabschnitte hinzuzufügen, wenn auf die Benutzung der Demoversion in der Dokumentation deutlich hingewiesen wird, nicht aber für Shareware- oder kommerzielle Projekte.

Da ich weiß, daß der Streit, wer mit der Modellbahn spielen darf, die häufigste Ursache für Generationskonflikte zwischen Vater und Sohn ist, dürfen alle Mitglieder einer Familie, die in einem Haushalt wohnen, eine lizensierte Kopie dieser Software gleichzeitig benutzen, solange die Software nicht außerhalb des Hauses benutzt wird.

Inhaltsverzeichnis

- Einleitung
- Kompatibilität
- Installation
- Benutzerinterface
- Ein erstes Design
- Zweites Design: eine 8 mit Brücke
- Drittes Design: eine freie statische Nebenstrecke
- Dokumentation der statischen Makros
- Statische Bahnen im Flugsimulator 2000
- Hintergrundbitmaps und Marker
- Ausschluß von Objekten der Standardszenerie
- Einführung in bewegte Züge
- Eine erste Bahn mit bewegten Zügen
- - Anschluß einer bewegten Nebenbahn
  - Einfügen weiterer Stellwerke
  - Zweizugbetrieb
  - Der Überholbahnhof
  - Der Kopfbahnhof
- Züge, Lokomotiven und Wagen
- Eigene Züge
- Eigene Schienenmakros
- Freie Brücken
- Autobahnen
- Dreidimensionale Bahnen im "elevated mesh" des FS2000
- Autobahnen in 3D Szenerien von FS2000
- Veränderungen des 3D - Terrains
- Technische Erläuterungen
  - Steuerungsdateien
  - Bahndammfarben
  - Oberleitungen
  - Benutzerdefinierte Gleistexturen
- Menü Dokumentation
- Fehlersuche

Einleitung

Die Beschäftigung mit der Modelleisenbahn ist eine der beliebtesten Freizeitbeschäftigungen überhaupt. Planung, Bau, Spiel und immer wieder Umbau garantieren für klein und groß Tausende von kreativen Stunden und ein Abtauchen in eine kleine, selbst geschaffene Welt, und daraus wächst der große Erholungswert einer Modellbahn.

Die real geschaffene Modellbahn, das Gefühl einer schweren detaillierten Lokomotive in der Hand kann Software nicht ersetzen. Dem Design von realen Modellbahnen stehen aber zwei Beschränkungen im Weg. Erstens ist die Menge an Material aus Kostengründen immer begrenzt, und zweitens ist fast immer der Platz begrenzt. Wohl dem, der einen Dachboden oder einen Keller sein eigen nennt und eine Länge von 5 m erreicht, die meisten Bahnen aber müssen mit 3 m oder weniger Vorliebe nehmen. Auf diesem engen Raum werden oft kleine Kunstwerke geschaffen.

Hier nun hat eine Modellbahnsoftware ihre Vorteile. Material ist praktisch unbegrenzt verfügbar, und das virtuelle Brett ist auch unbegrenzt. Damit ergänzen sich virtuelle Modellbahn und reale Modellbahn, sie schließen sich nicht aus. Ist es nicht eine gute Idee, eine größere Strecke virtuell zu schaffen und einen kleinen, aber feinen Ausschnitt davon real nachzubauen, mit einem Detailreichtum, der in der virtuellen Welt noch nicht möglich ist?

Mit dieser Software möchte ich nicht dem großen Modellbahnmarkt Konkurrenz machen, im Gegenteil, ich möchte anregen, dieses wunderbare Hobby zu erweitern und zu pflegen

Die Idee, eine virtuelle Modellbahn zu schaffen, hatte ich schon lange und habe viel Material gesammelt – Bilder, Bücher, Kalender, Modellbahnkataloge, Zubehörkataloge, usw. Die Realisierung scheiterte aber schon im Ansatz an der Größe der Aufgabe. Bevor man die erste Schiene legen kann, benötigt man eine Software, die ein dreidimensionales Bild zeichnen kann, in dem sich der Betrachter und der Zug gleichzeitig relativ zueinander bewegen können. Unterstützung der modernsten Computerhardware wie 3D-Grafikkarten allein beschäftigt bei den großen Softwareherstellern mehrere Programmierer.

Also mußte ich einen anderen Weg finden, indem ich schon existierende Software bis ins Extrem ausnutze und mich nur auf die Eisenbahnen konzentriere. Die ideale Software für den Bau einer Modellbahn besitzt bereits ein dreidimensionales Bild unserer Erde mit Meeren, Flüssen, Bergen, Straßen und Städten, vielleicht sogar Flughäfen. Sie bietet die Möglichkeit, diese Landschaften zu erweitern und umzubauen. Es gibt kommerzielle und freie Erweiterungen und Werkzeuge dafür. Es gibt also schon eine große Auswahl an Zubehör. Die Software sollte nicht zu teuer sein, überall erhältlich sein und für sich schon einen großen Spielwert haben. Am besten ist sie schon millionenfach verbreitet. Sie soll kontinuierlich weiterentwickelt werden, damit die Fortschritte der Computertechnik meinem Projekt automatisch zugute kommen.

Diese theoretische Liste hatte ich auch schon, als ich anfing, mich mit dem Microsoft Flugsimulator zu beschäftigen – und damit mein virtuelles Brett fand.

Der Ansatz, eine Fremdsoftware zu benutzen, hat natürlich auch einen Nachteil: Man ist durch die Gegebenheiten eingeschränkt. Auf einige dieser Einschränkungen werden wir später noch zu sprechen kommen. Die größte Einschränkung ist die Menge an zur Verfügung stehendem Landschaftsspeicher – dieser ist im Flugsimulator 98 mit einer Größe von 512KB größer als im Flugsimulator 95 mit 256 KB. Ansonsten lasen sich beide Versionen verwenden. Der Vorteil des Flugsimulators 2000 ist, daß diese Beschränkung praktisch entfällt – ich habe schon mehr als 3 MB gleichzeitig in Aktion gesehen. Die Auswirkung dieser Einschränkung läßt sich mit der Dicke des tragenden Bretts vergleichen – auf eine Fläche läßt sich nur eine gewisse Menge an Objekten bauen, sonst kracht es. Auf diese maximale Landschaftsdichte werde ich noch des öfteren zurückkommen, besonders wenn Sie bewegte Züge verwenden wollen, ist FS95 nicht sonderlich zu empfehlen, aber für den Anfang sicher brauchbar.

Um die Beispiele im Flugsimulator 2000 zu benutzen, sind fürs erste die folgenden Voraussetzungen zu erfüllen: Es sollte der mindestens erste Patch installiert sein (auf die Probleme des zweiten kommen wir später zu sprechen), und die Gebiete, in denen sich Schienen befinden, müssen mit dem "Flatten Schalter" geebnet werden. Bewegte Züge bewegen sich nur dann richtig, wenn mindestens 3 Frames pro Sekunde erzielt werden. Ansonsten funktionieren die Makros genauso wie im 98er Simulator, nur die Beschränkung der Szeneriegröße ist praktisch entfallen. Weitere Hinweise zu den Besonderheiten von FS2000 sowie Wege, Eisenbahnen in 3-dimensionalen Landschaften ohne "Flatten Schalter" zu bauen, finden Sie in den entsprechenden Kapiteln – alles der Reihe nach. Rom wurde nicht an einem Tag gebaut, und auch keine Modellbahn.

Alle Beispiele, die hier gezeigt werden, wurden mit FS98 und der Standardszenerie gemacht. Dies ist wichtig, da Straßen und Flüsse in anderen Szenerien oder anderen Versionen nicht an exakt derselben Stelle liegen werden und deshalb Details wie Brücken oder Schranken nicht exakt passen – am Prinzip ändert sich allerdings zwischen FS95 und FS98 nichts Wesentliches, und FS2000 läßt sich so konfigurieren, daß er nur einige Probleme nicht kennt.

Wie kommt nun eine Eisenbahn in die Flugsimulatorlandschaft? Die gesamte Landschaft (auch andere Dinge wie z.B. die Navigationshilfen, ohne die ein Instrumentenflug nicht geht) wird im Flugsimulator seit Version 5 durch eine Grafiksprache namens BGL beschrieben. Diese Sprache gibt dem Grafiksystem Anweisungen wie "male eine Straße von Punkt (x1,y1,z1) mit Dicke d zum Punkt (x2,y2,z2) und weiter zum Punkte (x3,y3,z3)" oder "belege die durch diese Liste von Punkten (...) entstandene Fläche mit blauer Farbe". Letzteres ist – wie Sie bestimmt gemerkt haben - ein See. Dabei hat das Grafiksystem die Eigenschaft, alle Dateien, die sich in bestimmten Verzeichnissen befinden, auszunutzen. Wir brauchen also nur eine Datei (oder viele Dateien) mit Eisenbahninstruktionen hinzuzufügen, und schon haben wir die Bahn in der Landschaft.

Wenn ich Ihnen jetzt aber vorschlagen würde, diese Dateien in BGL selbst zu erzeugen, würden Sie Ihr Geld mit Recht zurückverlangen. Es ist die monumentale Leistung von einigen Softwareautoren, diese Sprache entziffert zu haben, lange bevor es eine Dokumentation von Microsoft dazu gab. Manfred Moldenhauer hat daraus eine eigene Sprache entwickelt, die diese Instruktionen in verständlichen Anweisungen formuliert, diese Sprache nannte er SCASM. Und er schrieb einen Compiler, der aus SCASM die BGL-Dateien erzeugt. Diesen Compiler benutzen wir für unsere Landschaftsgestaltung.

Wenn ich Ihnen jetzt vorschlagen würde, selbst den SCASM - Text zu schreiben, würden Sie wieder Ihr Geld zurückverlangen (und ein paar Mark an Manfred überweisen). Denn hier beginnt mein Beitrag, der aus zwei Teilen besteht. Der erste Beitrag sind die sogenannten Makros. SCASM hat die Möglichkeit, das aus einer Reihe von Anweisungen Objekte zusammengesetzt werden, die als eine Einheit aufgerufen werden. Meine Objekte sind all die Dinge, die Sie als Modellbahner benötigen: Geraden, Kurven, Weichen, Kreuzungen, Schranken, Prellböcke, Bahnhöfe, Brücken, usw. Insgesamt sind es etwa 1500 verschiedene Objekte geworden, die ich Ihnen zur Verfügung stelle, vielen von Ihnen können Sie verschiedene Formen oder Farben geben. Beispielsweise läßt sich die Oberleitung mit Masten verschiedener Farben und Formen für alle Schienenmakros ein- oder ausblenden. Rund die Hälfte aller Makros unterstützt bewegte Züge, der Rest ist für statische Bahnen ohne Bewegung. Zum Ende dieses Manual werden Sie auch lernen, noch eigene Makros hinzuzufügen, aber alles der Reihe nach.

Jetzt fragen Sie sicher, wo das rollende Material ist. Ich habe mich entschlossen, die Züge nicht als separate Objekte, sondern als Eigenschaft der sie tragenden Schiene zu gestalten. Nur so läßt sich der Zug fest an die Schiene binden, wo er hingehört. FSRail kennt konzeptionsbedingt keine Entgleisungen oder Unfälle.

Diese Makros lassen sich mit verschiedenen Programmen benutzen, z.B. mit dem Freewareprogramm AIRPORT2.10, welches eine grafische Oberfläche mit einer Karte bietet, auf der die Objekte frei verschiebbar sind.

Der zweite Beitrag ist FSRail, ein Designprogramm speziell für Eisenbahnen. Dieses Programm kennt die Eigenschaften aller Makros und ist in der Lage, diese präzise aneinanderzufügen. So wie Sie beim Bau einer realen Modellbahn Schienenstück um Schienenstück aneinanderfügen, so können Sie mit FSRail Schienenmakro um Schienenmakro aneinanderfügen, bis eine Strecke entsteht. FSRail unterstützt Sie dabei, den Objekten das Aussehen zu geben, welches Sie wünschen. Außerdem erlaubt FSRail, andere dreidimensionale Objekte zu erzeugen und das Bodenmuster ( zumindest für FS95 und FS98 ) zu bearbeiten.

Das Design einer Eisenbahn geht also folgendermaßen: Als erstes brauchen Sie eine Vorlage oder ein Konzept. Besorgen Sie sich eine gute Karte, eventuell Photos, oder besuchen Sie die Strecke und machen sich Skizzen. Ich arbeite gerne mit Karten im Maßstab 1:50000, diese sind inzwischen für ganz Deutschland in digitaler Form verfügbar. Kartensoftware hat den Vorteil, Ihnen die genauen Koordinaten eines Punktes, auf den Sie mit der Maus zeigen, zu liefern, diese Koordinaten benötigen Sie für das naturgetreue Design. Auch lassen sich Längen von Geraden und Winkel und Radien von Kurven gut ermitteln. Und Screenshots von Karten können Sie mit FSRail verwenden, um eine erste Orientierung zu bekommen.

Wollen Sie bewegte Züge verwenden? Die bewegten Züge benötigen mehr Speicher als die statischen Schienen und die Makros sind weniger detailliert. Dafür – bewegen sich die Züge. Die meisten guten Designs werden sowohl statische wie bewegte Bahnen verwenden.

Als nächstes sehen Sie sich im Flugsimulator die Landschaft an, wie sie dort existiert. Fliegen Sie öfter drüber, landen Sie an kritischen Stellen. Liegen Berge irgendwo im Weg, wo Sie eine Bahn legen wollen? Liegen die Straßen richtig? Was wollen Sie mit den Straßen machen: Ignorieren, Schranken, Brücken, wegschneiden und selbst machen?

Wenn Sie jetzt üben, Hubschrauberpilot zu werden, habe ich Sie erst mal beschäftigt, und Sie kommen nicht dazu, Ihr Geld zurückzuverlangen.

Wenn Sie dies alles zusammen haben, erzeugen Sie mit FSRail eine neue Landschaft. Sie legen ein zentrales Objekt an die genaue, der Karte entnommene Position, z.B. einen Bahnhof. Nun kompilieren Sie (das ist ein Knopfdruck) die Landschaft und sehen Sie sich im Flugsimulator an: Liegt der Bahnhof an richtiger Stelle? Nun können Sie weitere Schienen anfügen, wieder kompilieren, ansehen, usw. Dieser Prozeß wiederholt sich ständig, anfügen, ändern und ansehen, und so wächst Ihre Modellbahnlandschaft zusammen.

So, wie der fortschrittliche Modellbahner irgendwann seine Schienen und Brücken selbst baut, wird es auch Ihnen gehen, daß Sie irgendwann selbst Makros gestalten werden. Relativ einfach ist es, vorhandene Makros nur leicht zu verändern, um die Länge zu ändern. Auch hier hilft Ihnen FSRail weiter, das Programm kann um nochmals etwa 1500 eigene Makros ergänzt werden. Aber bis Sie soweit sind, eigene freie Designs zu machen, können Sie bestimmt auch schon Hubschrauber fliegen.

Ein weiteres Werkzeug, das ich Ihnen empfehle, ist das Programm VOD von Rafael Sanchez. VOD erlaubt den Entwurf von dreidimensionalen Objekten wie Häusern, Kirchen usw., es ist eine Art Mini - Architekturprogramm mit Ausgabe für den Flugsimulator. Auch wenn sich nicht alle Objekte mit VOD machen lassen, als Anfang, der schnell gute Ergebnisse liefert, ist VOD sehr empfehlenswert. Rafael hat ein neues Programm NOVA 2000 angekündigt, auf das ich sehr gespannt bin.

Kompatibilität

FSRail wurde mit den drei Versionen FS95, FS98 und FS2000 getestet und ist zu allen dreien kompatibel. Naturgemäß gibt es allerdings einige kleine Einschränkungen, die in der Natur der unterschiedlichen Simulatoren liegen. Die wichtigsten sind:

FS95 ( auch als FS classic verkauft - zuletzt sah ich Ihn für DM 12, kein schlechtes Geschäft): Der Szeneriespuffer beträgt nur 256 KB. Darein passen bei bewegten Szenerien nur die einfachen Züge mit Zug # unterhalb von 100. Statisch passen auch die komplexen Züge hinein, wenn die Dichte nicht zu groß ist. Editieren Sie die Datei ..\includes\00user.inc. Stellen Sie sicher, daß die Variable $FS2000 den Wert 0 hat, setzen Sie für $arvis den Wert 0 ein, oder benutzen Sie ..\includes\00user95.inc.

FS98: Unter diesem Simulator wurde FSRail hauptsächlich entwickelt. Bewegte Szenerien können auch komplexe Züge enthalten, wenn die Dichte nicht zu groß wird. Editieren Sie die Datei ..\includes\00user.inc. Stellen Sie sicher, daß die Variable $FS2000 den Wert 0 hat, setzen Sie für $arvis den Wert 3 ein, oder benutzen Sie ..\includes\00user98.inc.

Für FS95 und FS98 werden alle Makros immer mit dem Parameter Höhe = 0 aufgerufen. FS95 und FS98 können Sie sich als ein Brett vorstellen, auf das sie die Schienen bauen. Höhe Null heißt: aufs Brett setzen.

FS2000: Ein sehr großer Schritt auf dem Weg zum Erde - Simulator, mit allen Kinderkrankheiten eines vielleicht zu großen Schritts. Praktisch keine Beschränkung für die Szeneriedichte, wenn Ihr Rechner mithält. Echte 3 - Dimensionalität macht vieles im Design einfacher, deshalb meine erste Wahl. Editieren Sie die Datei ..\includes\00user.inc. Stellen Sie sicher, daß die Variable $FS2000 den Wert 1 hat, setzen Sie für $arvis den Wert 5 ein, oder benutzen Sie ..\includes\00user2K.inc. Eine kleine, zu verschmerzende Randbedingung: Im FS2000 gibt es keine (kenne ich keine) Möglichkeit, in die Landschaft einen Graben zu machen. Deshalb funktionieren die Makros, die dies für die beiden anderen Versionen machen, (z.B. RoTu2050, ein Straßentunnel unter einer ebenerdigen Schiene) im FS2000 nicht mehr. Dafür ist FS2000 echt dreidimensional: Kein Brett, sondern ein Gitter, in welches Sie (wenn Sie das wollen) die Schienen dreidimensional hängen können. Die Unterschiede zwischen FS9x und FS2000 machen sich am meisten bei Brücken bemerkbar, deshalb gibt es für FS2000 einen neuen Satz Brücken. Die alten Brücken funktionieren zwar auch, aber die neuen sind so viel einfacher zu bedienen, daß Sie sehr schnell auf diese umsteigen werden.

Die Makros, die speziell für die dreidimensionale Landschaft in FS2000 geschrieben wurden (z.B. Rampen), ergeben in den anderen Versionen keinen Sinn. In FSRail werden diese Makros mit dem Zusatz 3D bezeichnet. Beim Erzeugen einer neuen Bahn läßt sich ankreuzen, ob diese dreidimensional für FS2000 entwickelt werden soll. Dieser Schalter erlaubt es FSRail, Sie bei der Entwicklung der Bahn durch automatische Berechnung der Höhe zu unterstützen, ansonsten hat er keine Bedeutung.

Leider macht FS2000 noch eine weitere Erörterung notwendig. Sehr empfehlenswert ist es, Patch 1 zu installieren. Patch 2b beseitigt weitere Fehler und fügt Schatten für die Flugzeuge ein. Der Preis dafür aber ist hoch: Die gezeichnete Erd- oder Meeresoberfläche wurde abgesenkt, und zwar in Abhängigkeit von der Höhe des Beobachters über Grund. Damit gibt es – mit Patch 2b – keine feste Oberfläche mehr. Deshalb empfehle ich im Moment, Patch2b nicht für ernsthaftes Design zu benutzen. Mir ist nicht klar, ob dieser Effekt nur in der deutschen Version auftaucht. Oder nur mit meiner CD, aber dann auf mehreren Rechnern, unter W98 und W2000? Ein Freund mit der englischen Version konnte ihn nicht beobachten. Welchen Patch Sie einsetzen, müssen Sie selbst testen. Aktuell benutze ich Patch 2b, habe aber die Datei terrain3d.dll von Patch 2b durch das Original von der Erstinstallation ersetzt. Damit ist das Terrain stabil, und seitdem habe ich keine Crashs von DirectX mehr erlebt, die ohne Patch und mit Patch1 öfters zu beobachten waren. Das eine solche Kombination von Microsoft nicht unterstützt wird und auf anderen Systemen vielleicht nicht läuft, versteht sich von selbst.

Installation

Für die Installation des Flugsimulators verweise ich auf die dortige Installation. Bei den folgenden Beispielen gehe ich davon aus, daß der Flugsimulator auf derselben Platte wie FSRail in das Verzeichnis \FS installiert wurde – der Pfad \Programme\Microsoft Games\Flight Simulator macht die Sache nicht übersichtlicher. Aber grundsätzlich ist es egal, wo der Flugsimulator ist, sie müssen nur wenig ändern.

FSRail wird mit einem Installationsprogramm geliefert, welches Ihnen die Installation etwas vereinfachen soll. Sie müssen die vier notwendigen Installationen machen, um den vollen Funktionsumfang von FSRail auszunutzen, diese benötigen etwa 40 MB. Um Platz zu sparen, können Sie die optionalen Komponenten (Dokumentationen und Bitmaps) direkt von CD benutzen und so etwa 80 MB Plattenplatz sparen.

Für jeden Installationsschritt ruft das Installationsprogramm ein selbstentpackendes Archiv auf, installieren Sie alle auf dasselbe Laufwerk in ein gemeinsames Hauptverzeichnis.

FSRail wird ebenfalls in ein Verzeichnis installiert, üblicherweise in das Verzeichnis \Airport. Wenn Sie Airport2.10 installieren, installieren Sie es nach \Airport\APT210. Nach der Installation sieht die Verzeichnisstruktur etwa wie folgt aus:

\Airport Hauptverzeichnis

\Airport\APT210 enthält Airport und den mit Airport gelieferten SCASM - Compiler

\Airport\Bitmaps enthält die Bitmaps, mit denen die Bahnmakros erzeugt wurden.

\Airport\Program enthält FSRail.exe und einige Beispieldateien

\Airport\Bridges enthält statische Brücken

\Airport\Details enthält sonstige statische Makros und Straßen

\Airport\Documentation enthält die elektronische Dokumentation (englisch)

\Airport\Dokumentation enthält die elektronische Dokumentation (deutsch)

\Airport\Includes enthält include - Dateien, insbesondere alle Züge

\Airport\Moving enthält sonstige bewegte Makros

\Airport\Movrail enthält bewegte Schienen

\Airport\Movroad enthält bewegte Autobahnen und Straßen

\Airport\Movstat enthält bewegte Bahnhöfe

\Airport\Rails enthält statische Schienen

\Airport\Scenery enthält fertige Szenerien

\Airport\Stations enthält statische Bahnhöfe

\Airport\Texture enthält die Texturen.

\Airport\Tools enthält nützliche Werkzeuge, falls vorhanden

\Airport\VOD3 falls vorhanden

Die obige Liste ist ein typische Beispiel, ganz wesentlich ist das Folgende: Die Verzeichnisse, in denen die Makros sind, müssen auf derselben Ebene liegen wie die Verzeichnisse \Includes und das Compilerverzeichnis \APT210. Nur so kann erreicht werden, daß vom Compiler und von den Makros aus der relative Weg ..\includes immer zu den Include - Dateien führt (und das sind mehr 800 ganz wichtige Dateien, von denen viele von allen Makros benutzt werden).

In das Verzeichnis ..\program kopieren wir das Lizenzfile license.dat, welches wir per email bekommen haben. Nur mit einem gültigen Lizenzfile sind uns alle Funktionen von FSRail zugänglich.

Für die Installation ist noch ein letzter manueller Schritt notwendig. Im Verzeichnis \FSRail befindet sich eine kleine Prozedur BRailMaker.txt. Diese bearbeiten wir mit einem Editor. Beispiel:

..\apt210\scasm newrails.scm newrails.bgl

Pause

copy newrails.bgl \fs2000\scenery\rail\scenery\newrails.bgl

Pause

Diese Prozedurvorlage kompiliert die Datei newrails.scm, testet sie und kopiert sie in ein Verzeichnis in der Flugsimulator - Szenerie. Wir überprüfen, daß die Pfade richtig gesetzt sind und ändern sie gegebenenfalls. Befindet sich SCASM.EXE im angegebenen Pfad? Stimmt der Pfad für den Flugsimulator? Diese Vorlage wird von FSRail benutzt, um Ihre Dateien zu kompilieren, dabei wird FSRail die Namen newrails.scm und newrails.bgl durch Ihre Namen ersetzen. Wenn Ihr Pfadname ein Leerzeichen enthält, vergessen Sie bitte nicht, den Dateinamen in Hochkommas zu setzen:

copy newrails.bgl "\Program Files\Microsoft Games\Flight Simulator\scenery\rail\scenery\newrails.bgl"

Wenn wir FSRail starten, können wir den nächsten Schritt auch vom Programm aus ausführen, indem wir aus dem Menü "Dialoge" "Ändere Makroeinstellungen" das Szenerieverzeichnis konfigurieren, für FS2000 erledigt das Programm auch gleich die Registrierung im Flugsimulator, im Weiteren werden hier den manuellen Weg vorstellen.

Als nächstes erzeugen wir manuell im \Scenery – Verzeichnis des Flugsimulators ein Verzeichnis \Rail, öffnen dieses und kopieren die Verzeichnisse \Scenery98 für FS98 bzw. \Scenery2K für FS2K und \Texture aus dem \Airport-Verzeichnis in dieses Verzeichnis.

Damit gibt es dann die beiden neuen Verzeichnisse \FS\Scenery\Rail\Scenery und \FS\Scenery\Rail\Texture. Das \FS\Scenery\Rail\Texture - Vereichnis enthält alle FSRail - Texturen, aktuell sind es 340.

Jetzt starten wir den Flugsimulator. Wir müssen ihm noch sagen, daß er die neuen Verzeichnisse benutzen soll. Dazu wählen wir im Menü "Umwelt" den Punkt "Szeneriebibliothek". Die Warnung wird mit OK beantwortet. Wir wählen Dateien, Hinzufügen und füllen den folgenden Bildschirm wie im Beispiel aus. Die Gebietsebene sollte niedrig sein, ist im Moment aber egal.

Sobald wir den korrekten Pfad eingegeben haben, erhellt sich die gesamte Maske, und wir können das Gebiet aktivieren. Übrigens ist die Menüfolge Menü "Umwelt", "Szeneriebibliothek", "Dateien", OK,OK auch der Befehl, mit dem wir jedesmal, wenn wir eine Datei geändert haben, den Flugsimulator dazu bringen, die Dateien erneut zu laden und damit die Änderungen aufzunehmen. Im FS2000 genügt es, die Szeneriebibliothek auszuwählen und auf das grüne Häkchen zu drücken, um ein Neuladen zu bewirken, manchmal muß man dies zweimal machen, um ein stabiles Ergebnis zu bekommen.

Nun müssen wir noch unser Flugzeug in die richtige Position bringen. Wenn wir mit dem Standardflug Meigs angefangen haben, wählen wir "Umwelt", Gehe zu" und "genaue Position" und füllen das Feld mit den Koordinaten aus.

Wenige Sekunden später sehen wir vor uns den Frankfurter Hauptbahnhof sowie ein- und ausfahrende Züge. Damit sind wir mit den Vorarbeiten fertig und können an den eigenen Design gehen. Ich biete Ihnen an, mit mir Schritt für Schritt ein erstes Design zu machen. Sie können natürlich auch erst mal loslegen, aber ohne ein paar Tips wird es sicher schwieriger.

Beim FS2000 sehen die Dialoge etwas anders aus. Das Hinzufügen von Szenerieverzeichnissen geht deutlich komfortabler vonstatten, da Sie sich in das Verzeichnis hineinklicken können. Allerdings lauert hier eine Falle: Benutzen Sie die Szenerie immer direkt und nicht über den Zwischenspeicher, sonst werden Ihre Änderungen nur manchmal angezeigt, manchmal nicht, und Sie suchen verzweifelt nach Fehlern. Die Festlegung der Position geschieht mit Hilfe der Kartenansicht. Tragen Sie in die Karte die gewünschte Position ein, und sie werden sich nach dem Nachladen der Dateien an der gewünschten Stelle befinden. Es scheint dann normal zu sein, daß FS2000 etwas Zeit benötigt, bis das Bild stabil ist und nicht mehr deutlich springt. Geben Sie jeweils die Höhe 0 ein, dann wird Ihr Flugzeug auf den Boden gestellt, und wenn Sie die Karte nochmals aufrufen, können Sie ihr die geographische Höhe der Szenerie exakt an diesem Punkt entnehmen. Diese Größe brauchen Sie, falls Sie dreidimensionale Bahnen entwickeln wollen.

Noch ein Tip – meines Wissens nach für alle Versionen des Flugsimulators. Der Flugsimulator stellt Koordinaten teilweise in der Form Grad:Minuten.xxxx dar, wobei xxxx ein Bruchteil einer Minute ist. Praktisch alle Kartenprogramme benutzen die Form Grad:Minuten:Sekunden.yyyy, wobei yyyy für Bruchteile von Sekunden steht. Diese Form benutzt auch FSRail (Airport übrigens auch). Wenn Sie die Datei fltsim98.cfg bzw. FS2000.cfg editieren und am Ende des Absatzes [Main] die Zeile

Display_Fractional_Minutes=0

hinzufügen, überreden Sie auch den Flugsimulator, diese Form zu wählen. Wenn Sie dies nicht machen, müssen sie öfters umrechnen, und spätestens dann, wenn sie eine dreidimensionale Bahn in eine hüglige Szenerie bauen, werden Sie die Notwendigkeit erkennen.

Noch eine kleine Maßnahme, die durch FS2000 notwendig wurde. Editieren Sie die Datei ..\include\00user.inc. Wenn Sie FS2000 benutzen, sollte die Variable $FS2000 den Wert 1 haben, ansonsten den Wert 0. Wenn Ihre Steuerdatei die Vorlage ..\includes\00user2K.inc kopiert, wird dies automatisch richtig gemacht.

Nun haben wir erst mal viel zu viel Theorie gehabt, deshalb kommt jetzt die Praxis.

Benutzer des FS2000 (und nur diese) sollten zuerst das Folgende tun:

Um einen Teil der Landschaft flach zu machen, müssen Sie die Datei Scenery.cfg im Hauptverzeichnis von FS2000 editieren. Dort werden Sie am Ende einen Absatz finden, der etwa die folgende Form hat:

[Area.073]

Title=Railways

Local=SCENERY\Rail\Scenery

Active=TRUE

Layer=73

Fügen Sie an diesen Absatz die folgende Zeile an:

Flatten.0=400,N49,E9,N49,E11,N51,E11,N51,E9

,speichern Sie die Datei, starten Sie FS2000, und die Landschaft um obige Beispiele herum ist platt wie eine Briefmarke. Damit können Sie die Beispiele erfolgreich programmieren und so erste Erfahrung sammeln – mit dem Entwurf dreidimensionaler Bahnen warten Sie besser noch bis zum entsprechenden Kapitel.

Benutzerinterface

Ich hoffe, Sie werden das Benutzerinterface FSRail mögen, nachdem Sie sich daran gewöhnt haben. Ich habe nicht versucht, das Interface von Airport oder ähnlichen Designprogrammen nachzubauen. Mein Benutzerinterface orientiert sich an den Schritten, die beim Bau eine Modellbahn auftreten.

- Sie legen fest, wohin eine Schiene gelegt wird. Typischerweise ist dies am Ende eines anderen Gleises, diese Enden nenne ich Endpunkte. Da das Anfügen an einen Endpunkt die häufigste aller Operationen ist, habe ich den Klick mit der linken Maustaste dafür reserviert. Klicken Sie auf der Karte auf einen Endpunkt, um ein Gleis anzufügen. Shift Klick auf einen Endpunkt zeigt all dessen Eigenschaften, erlaubt diese zu ändern und alle möglichen Operation auf diesem Endpunkt durchzuführen. Ein Mausklick mehr als 30 Pixel von einem Endpunkt entfernt startet die Dialoge, die das freie Legen einer Schiene an der Mausposition erlauben.
- Aus einem Katalog wählen sie die Schiene aus - kein Kramen in alten Kisten mehr. Typischerweise 2-3 Mausklicks, um unter 1500 unterschiedlichen Schienen zu wählen. Wenn Sie dieselbe Schiene wie beim letzten Anfügen nochmals anfügen wollen, können Sie mit einem Drücken der Strg - Taste beim Linksklick auf den Endpunkt den Dialog zur Auswahl und eventuelle Zeitdialoge unterdrücken.
- Sie wählen, welches Ende der Schiene Sie anlegen, und können das Gleis bei Bedarf etwas um den Endpunkt drehen.
- Sie legen die restlichen Parameter, die das Aussehen bestimmen, fest, überprüfen den Aufruf und befestigen die Schiene, indem Sie auf OK drücken. Stellen Sie sich dieses OK ruhig wie ein Festschrauben vor, nachträgliche Änderungen der Position und Richtung macht man am besten, indem die Schiene wieder löst und neu legt. Hin- und Herschieben geht zwar auch, das Ergebnis ist aber immer unsauber.

Typischerweise werden Sie nun kompilieren und sich das Ergebnis ansehen. Wenn das Ergebnis Sie überzeugt, wiederholen sich dieselben Schritte für die nächste Schiene. Wenn nicht, haben Sie zwei Möglichkeiten: Entweder entfernen Sie das Gleis und probieren es neu, oder Sie ändern das Gleis indem Sie mit der rechten Maustaste auf seinen Mittelpunkt klicken. Shift Klick mit der rechten Taste erlaubt noch mehr Änderungen. Dieser Rechtsklick und teilweise auch Shift Rechtsklick erlaubt auch Änderungen an sonstigen Objekten.

Einige Tester wünschten sich, eine Bitmap hinter die Kartenfunktion legen zu können. Ich habe darüber nachgedacht, mir erscheint dies mit den momentanen Computern nicht sinnvoll. Typische Gleisabstände in Bahnhöfen sind 8m, deshalb ist eine Auflösung von 1Pixel pro 2m das sinnvolle Minimum. Bei einer typischen Szeneriegröße von 50x50 km ergibt dies eine Bitmap von 625 MB, tausendmal mehr, als momentane Rechner beherrschen, ohne allzu langsam zu werden. Dennoch denke ich, auch diesen Wünschen mit der Einführung von Markern und Hintergrundbitmaps zu entsprechen, dies wird in einem späteren Kapitel beschrieben werden.

Eine andere Philosophiefrage ist der Dateizugriff. DOS und Window9x erlauben dem Benutzer, überallhin zu schreiben und alles zu lesen und auch zu zerstören. Ich habe mich entschlossen, FSRail nur Dateizugriffe in seinem eigenen Verzeichnis zu erlauben, nirgendwo sonst, schon gar nicht in c:\windows. Mein persönlicher Beitrag zu sauberer Software.

Zur Navigation auf dem Bildschirm: Maßstab 1 für FSRail heißt, daß die Bahn, so wie im Header definiert, mit einem kleinen Randstreifen von 20 Sekunden genau auf Ihren Vollbildschirm paßt. Wenn Sie, beim Legen oder Anfügen, den Bereich des Headers verlassen, ändert sich also der Maßstab. Dies kann zu kleinen Sprüngen führen, vor allem bei starken Vergrößerungen. Falls Sie FSRail in einem Fenster kleiner als Ihr Bildschirm betreiben, können Sie die Karte von Bildschirmgröße mit den Rollbalken oder Pfeiltasten sichbar machen - bei Vergrößerung ist dies aber immer nur ein Ausschnitt der Bahn. Die Lage dieses Ausschnittes läßt sich mit den rechten Menüs oder Drücken der entsprechenden Tasten verändern, z.B. mit < nach links oder mit > nach rechts.

FSRail achtet sorgfältig darauf, Ihnen nur die Befehle und Menüs zur Verfügung zu stellen, die im Kontext sinnvoll sind. Bei einem unerwarteten Kontextwechsel kann es deshalb vorkommen, daß notwendige Menüs nicht mehr erreichbar sind. Ich empfehle Ihnen dann, die Arbeit zu speichern, das Programm zu beenden und neu zu starten. Sie können aber auch durch Drücken des ESC - Taste eine Aktivierung aller Menüs erzwingen - dafür, daß der Programmablauf dann noch immer konsistent ist, übernehmen Sie die Verantwortung. Speichern Sie bald ab.

Am Ende dieser Dokumentation werden Sie detailliertere Informationen über die Menüs und andere technische Details bekommen, ich aber empfehle Ihnen, jetzt die Lektionen durchzuarbeiten, um Spaß zu haben und zu lernen, wie FSRail arbeitet.

Mit FSRail können Sie nicht nur Eisenbahnobjekte schaffen, sondern auch zumindest basische Bodenpolygone,Straßen, Airportmakros und Ähnliches legen. Diese Features sind allerdings recht spartanisch ausgelegt, für größere Arbeiten empfehle ich, die ungleich geeigneteren Programme AIRPORT, SCCreate oder ASD zu verwenden. In FSRail sind diese Möglichkeiten vorgesehen, um z.B. Straßen genau an Bahnschranken, Hafenbecken an Gleise und Kräne an die Güterbahnhöfe zu positionieren.

Ein erstes Design

Unser erstes Design (das auch Besitzer der Demoversion durchführen können) soll ein einfaches Gleisoval mit einem Bahnhof sein, wie in einer Startpackung der bekannten Modellbahnhersteller. Wir wählen die Anfangskoordinaten N50:00:00 und E10:00:00, das ist mitten in Franken zwischen Würzburg und Schweinsfurt. Wir können auch jeden anderen Punkt wählen, sofern er weit genug entfernt von Hindernissen (Bergen und Flüssen) ist und keine zu komplizierten Objekte wie ein Großflughafen in der Nähe sind. Mitten in Chicago O’Hare muß man nicht anfangen. Wir starten also FSRail und bekommen das folgende Bild:

In der Mitte sehen wir ein Grafikfenster, daß im Moment noch leer ist. Ich empfehle, es im äußeren Rahmen groß zu machen. Hierin wird sich eine Kartendarstellung der Modellbahn entwickeln. Wenn wir die Menüs durchgehen, sehen wir, daß wir im Moment noch nicht viel mehr machen können als entweder eine Bahn einzulesen oder aber eine neue zu erzeugen. Entscheiden wir uns für eine neue Bahn.

Einige Informationen werden jetzt benötigt. Als erstes die genau Lage der Bahn. Die nördliche bzw. südliche Grenze ist schon zufällig richtig, die westliche und östliche müssen wir noch ändern. Das Programm wird später die Grenzen automatisch verschieben, also reicht es für jetzt, den Mittelpunkt anzugeben. Beachten Sie, daß die Anfangskoordinaten, die FSRail vorschlägt, ein Minuszeichen haben: 50 Grad Nord 15 Grad West ist irgendwo mitten im Atlantik, ein guter Platz, um Tests durchzuführen.

Das Feld für bewegte Züge wird nicht angekreuzt, genauso wie das Feld für den Design von dreidimensionalen Bahnen für FS2000. Für diese Lektionen wollen wir die Objekte - Straßen und Flüsse der Standardszenerie verwenden, also kreuzen wir auch dieses Feld nicht an.

Damit sind alle notwendigen Informationen zusammen und wir haben nun in den Menüs sehr viel mehr Möglichkeiten. Wir entscheiden uns als nächstes für "Lege Gleis" im Menü "Eisenbahn", oder klicken einfach auf den Punkt, an dem wir das erste Gleis legen wollen.

Einige Vorgaben, die für alle Gleise gelten sollen, werden nun eingeholt. Das Aussehen aller Objekte läßt sich durch Parameter festlegen, die Namengebung hier ist von SCASM und dem Programm AIRPORT übernommen worden. Uns interessieren fürs erste die folgenden: Oberleitung (%6): Wenn hier eine 0 steht, bekommen die Gleise keine Oberleitung. Bei einer 1 bekommen sie eine Oberleitung, bei einer 2 eine Oberleitung mit Strichmasten, bei einer 3 Oberleitung mit massiven Masten. Eine 4 setzt Lampen auf die Oberleitung und schaltet für FS2000 die aktive Nachbeleuchtung ein. Für einige Makros gibt es noch weitere mögliche Parameter 5-7 für aktive Nachtbeleuchtung ohne Masten.

Für die Höhen %7 und %8 tragen wir je eine 1 ein, dann liegen die Schienen 25 cm oberhalb der umliegenden Fläche. Die Höhe %3 lassen wir bei 0.00, solange wir für die flache Szenerie entwickeln. Der Parameter für den Bahndamm legt dessen Farbe fest, bei einer 0 wird die Böschung weggelassen. Der Wert 18 ergibt ein mittleres Grün ist damit für uns passend. Werte oberhalb von 100 dienen dazu, texturierte Bahndämme zu erzeugen. 105 bedeutet,, daß die jahreszeitabhängige Grastextur gewählt wird.

Der Parameter Reichweite ist ebenfalls gut, als Standardzug wählen wir z.B. 109, einen Doppelstockzug der DB. (Benutzer der Demoversion wählen einen Wert zwischen 1 und 6). Eine Beschreibung aller Züge befindet sich an anderer Stelle. Noch eine Bemerkung zum Parameter Reichweite: Die letzte Stelle wird mißbraucht, um die Schienentextur festzulegen. 0-5 sind vorbestimmt, 6-9 sind vorgesehen, falls Sie selbst Schienen entwerfen wollen. Mit diesen Vorgaben drücken wir OK. Die nächste Frage bezieht sich auf die genaue Position des Objekts.

Falls wir es nicht drehen wollen, sind die Vorgaben OK. Eine Richtung von 0.00 bedeutet für alle geraden Objekte eine Ausrichtung von Süd nach Nord, 90.00 von West nach Ost, usw. Die Richtung läßt sich auf ein Hundertstel Grad festlegen, wir können jede beliebige Gradzahl zwischen 0.00 und 359.99 eingeben.

| Als nächstes legen wir nun das zu legende Objekt fest, einige Bilder helfen uns dabei. Unser erstes Objekt soll ein statischer Bahnhof sein, also drücken wir auf Bahnhof.

Nun haben wir die Auswahl aller statischen Bahnhöfe. Es gibt die Bahnhöfe mit Bahnsteig innen oder außen, Kopfbahnhöfe. Wir wählen einen zweigleisigen Bahnhof mit 2 Bahnsteigen außen, 500 m lang, mit Namen Stat2500. Die detaillierten Beschreibungen aller Objekte befindet sich im Onlinekatalog und ist durch Drücken der Taste "Dokumentation" zu erreichen. |

| FSRail macht uns nun einen Vorschlag, wie das Objekt aufgerufen werden soll. Die Parameter auf der linken Seite sollten wir nicht ändern, wenn wir nicht wirklich wissen, was wir tun. Und das wissen wir im Moment noch nicht. Wir überprüfen nur, daß %3 wirklich auf 0.00 steht, und %4 den Wert 0.250 hat. Also achten wir auf den Vorschlag rechts. Dieser ist auch fast das, was wir haben wollen, nur müssen wir noch den Zug 1 durch 109 ersetzen, und den Namen benutzen wir nicht, setzen die Variable also auf 0. In der Dokumentation von Stat2500 können wir nachlesen, daß der Parameter Detail (%8) eine zweistellige Zahl ist, deren erste Stelle den linken Bahnsteig und die zweite den rechten Bahnsteig beschreibt. Wir wählen 33. Grundsätzlich sollten wir alle Eingaben möglichst linksbündig machen, es kann passieren, daß zu lange Eingaben mit zu vielen Leerzeichen am Anfang rechts abgeschnitten werden. Mit diesen Parametern drücken wir "OK" und der Dialog verschwindet.

Im Kartenfenster erscheint nun der Bahnhof als eine grüne Linie. Der Mittelpunkt wird durch einen kleinen grünen Kreis gezeigt. An beiden Enden gibt es kleine hellblaue Kreise, die Endpunkte. Dies sind die wichtigsten Objekte in FSRail, da an diese die weiteren Schienen angelegt werden sollen.

Den wollen wir uns gleich im Flugsimulator ansehen. Wir drücken also auf "Speichern und kompilieren" und werden nach einem Dateinamen gefragt.

Wir geben "newrails.scm" ein, schließlich haben wir in der Datei BRailMAKER:BAT genau diesen Namen festgelegt. Wenn wir einen anderen Namen wollen, müssen wir die Steuerdatei entsprechend verändern.

Es startet der Compiler, und nach wenigen Sekunden erhalten wir eine fertige Szenerie.

Wenn wir eine Fehlermeldung bekommen, dann haben wir entweder eine ungültige Eingabe gemacht, oder aber die Software ist nicht richtig installiert worden. Der Text sagt uns, daß wir 3650 Bytes vom Landschaftsspeicher verbrauchen, und das der Status "OK" ist. Wir drücken auf "y", und sofort sollte die Landschaftsdatei "newrails.bgl" im Verzeichnis \FS\cenery\Rail\Scenery auftauchen.

Wir setzten unser Flugzeug an die Position N50:00:01 E10, laden alle Dateien neu und bekommen aus der Beobachterperspektive das folgende Bild (mit einem anderen Zug):

Der Zug steht abfahrbereit am Bahnsteig. Auf dem Bahnsteig stehen einige Passagiere. Als nächstes empfehle ich, die Parameter dieses Bahnhofes zu ändern. Das geht ganz einfach, indem Sie mit der rechten Maustaste in die Nähe des Mittelpunkts klicken.

Modifizieren Sie die Werte %6, %7 und %8, kompilieren Sie neu und sehen Sie, was sich auf dem Bildschirm ändert. Sie werden schnell sehen, daß sich das Aussehen schon dieses einfachen Makros leicht verändern läßt, und daß die Eingabe von Zahlen zur Steuerung nicht so schwierig ist, wie man auf den ersten Blick vermuten würde.

Mit der Maus können wir verschiedene Befehle geben:

- Rechtsklick auf eine Objekt erlaubt, dieses zu ändern.
- Shift Rechtsklick erlaubt, dieses, vorheriges oder nächstes zu ändern.
- Linksklick an einen Endpunkt fügt ein Gleis an.
- Shift Linksklick zeigt die Eigenschaften des Endpunkts und erlaubt, diese zu ändern.
- Strg Linksklick fügt das als letzes angefügte Gleis nochmals an

Die nächste Aufgabe ist es, an das nördliche Ende eine Linkskurve anzufügen. Mit der linken Maustaste klicken wir auf den nördlichen Endpunkt und werden wieder nach dem Typ des Objekts gefragt. Wir wählen eine Kurve. FSRail weiß, daß diese zweigleisig sein muß, und läßt uns aus den zweigleisigen Kurven auswählen: Sie unterscheiden sich im Winkel und im Radius. Wir wählen einen Radius von 1000 m und einen Winkel von 45 Grad, wählen diese Werte aus und klicken auf OK. Wenn dieser Dialog wieder erscheint, haben wir nicht genug Informationen angegeben. Mit diesem Dialog können wir auch gebogene Brücken und gebogene Viadukte einsetzen, diese haben immer einen Winkel von 15 Grad. |

| Jetzt haben wir also ein Kurvengleis in der Hand. Je nach Wahl des Endes ist jede Kurve eine Links- oder eine Rechtskurve. Wir wollen eine Linkskurve. Manchmal ist es ratsam, das angefügte Gleis unter einem kleinen Winkel anzufügen, das können wir hier machen, indem wir den Parameter Richtung leicht ändern. Für unser Beispiel lassen wir den Wert 0.00. Die Neigung kann nur für Kurven mit bewegten Zügen eingestellt werden.

Den Vorschlag, den FSRail uns macht, prüfen wir, wir können ihn getrost übernehmen. Höhen, Oberleitung und Bahndamm entsprechen den Vorgaben. Nun kompilieren wir die Landschaft erneut, das Ergebnis sehen wir uns im Flugsimulator an.

Mit 6076 Byte Verbrauch haben wir noch immer genug freien Speicher, um weiter zu machen. Jetzt könnten wir nochmals 3 gleiche Kurven anfügen, eine 500 m Gerade, vier Kurven, und das Oval wäre fertig. Wir sind jetzt aber schon etwas mutiger geworden: Die Rückgerade soll eine große Brücke in 7 m Höhe sein. In den 25 cm - Einheiten, in denen FSRail geschrieben ist, ist dies die Höhe 28 = 4 x 7. Deshalb soll die nächste Kurve von 1 nach 10, die zweite nach 19 und die dritte nach 28 führen.

Wir fügen also wieder eine Kurve an, um eine Linkskurve zu erhalten, müssen wir Ende 2 anlegen. Das freie Ende, zu dem die Rampe ansteigen soll, ist also Ende 1. Für dieses tragen wir die neue Höhe 10 ein.

Für das dritte Gleis sehen wir, daß FSRail die Höhe am zweiten Ende schon richtig vorgibt, für das erste tragen wir 19 ein, und lassen das dritte bis 28 steigen.

Das Ergebnis sehen wir uns wieder an. Wir haben eine sanfte Steigung erhalten, auf etwa 2250 m Strecke steigt sie um 7 m an, also etwa 0,35% - das schafft auch jeder Güterzug.

Im Vordergrund sehen wir das Rampenende, im Hintergrund den Bahnhof in etwa 2 km Entfernung. Nun kommen wir zur Brücke. Unser Modell heißt Bri2500, zweigleisig mit 500 m Länge.

FSRail hat schon eventuell die Brückenhöhe richtig eingestellt (28), uns bleibt noch die Wahl, ob wir einen Zug auf die Brücke stellen wollen, und wie die Brücke aussehen soll. So exponiert kann es ein besonders auffallender Zug sein, was halten Sie von 401 ( dem ICE 1?). Also setzen wir den Parameter %7 auf 401. Für den Parameter %9, der das Aussehen der Brücke beschreibt, wählen wir 213, ohne uns um die genaue Bedeutung zu kümmern – wir können mit diesem Parameter experimentieren. Das Ergebnis – nach dem Kompilieren, sehen wir uns genauer an.

Auf einer Brücke mit einer blauen Stahlkonstruktion steht der gewünschte ICE. Damit haben wir nun gelernt, wie Hindernisse (Flüsse, kleine Sehen, Straßen usw. überwunden werden können.

Nun fügen wir nochmals 4 Linkskurven Cu245R10 an, wobei wir wieder langsam die Höhe reduzieren. Das Oval ist geschlossen. Aber wir haben an der Verbindungsstelle noch immer offene Endpunkte. Wenn wir die Karte ( Menü "Kartenbefehle", "Vergrößerung zu Maus" und Klick auf die gewünschte Stelle) maximal vergrößern, erkennen wir, daß beide sehr eng beieinander liegen, die Breite stimmt sehr gut, die Länge gut überein. Dies hat einen Grund: Wir sind erst nach Norden, dann 2 km nach Westen, dann wieder nach Süden und zwei km nach Osten gegangen. Auf einer Kugel schließt dies nicht exakt (außer am Äquator). Um mehr mit den Endpunkten zu machen, klicken wir auf einen Endpunkt mit gedrückter Umschalt-Taste.

Ein neuer Dialog erwartet uns. Mit "Entfernung" können wir den Abstand der beiden Endpunkte messen, er beträgt 0 m. Der erfahrene Benutzer hat hier die Möglichkeit, in die Details eines Endpunkts einzugreifen. Wir sind im Moment damit zufrieden, daß FSRail die Geometrie auf der Oberfläche einer gestauchten Kugel richtig berechnet, und drücken auf Abbruch. Nun wählen im Menü "Endpunkte" "Aufräumen". FSRail erkennt, daß die beiden Endpunkte sehr nahe beisammen sind, und entfernt sie von der Liste. Wie sind mit der ersten Lektion fertig.

Zweites Design: eine 8 mit Brücke

Bei unserer zweiten Aufgabe wählen wir wiederum eine statische Bahn – diesmal wollen wir eine Bahn auf einer Brücke über eine andere führen und so die Form einer 8 erzeugen. Als Radius wählen wir diesmal 500 m. Wir erzeugen also wiederum eine neue Bahn an selber Stelle und legen als erstes Gleis eine Brücke. Für uns ist Bridge22 geeignet – eine zweigleisige Strecke über einer anderen zweigleisigen. Erinnert sei hier daran, daß FS2000 sehr viel freiere Brücken erlaubt als die hier vorgestellte, die dafür für alle Simulatoren gilt.

In einem weiten Bereich können wir nun den Winkel zwischen den beiden Gleisen wählen. Wir wählen 90 Grad, damit es am einfachsten ist.

Für die untere Oberleitung wählen wir den Wert 1 – unter der Brücke müssen nicht noch Masten gemalt werden. Der Bahndamm soll grün sein (18), und für das Aussehen der Brücke wählen wir den Wert 11.

Damit haben wir schon den zentralen Punkt der Bahn fertiggestellt. In der Karte von FSRail werden Brücken immer blau dargestellt:

Die Länge der Gleise der Brücke ist 50 m. Bei einem Radius von 500m heißt dies, das wir 475 m lange Geraden benötigen. Diese gibt es nicht ganz passend. Ich schlage daher vor, von der Brücke aus erst 50m, dann 125 m und dann 300 m anzulegen. Wir wählen also "Füge Gleis an". Zur Auswahl stehen nun 4 Endpunkte, von denen zwei hoch liegen ( Höhe 28 = 7 m ). Wir bekommen eine Liste aller Endpunkte, wenn wir irgendwo auf die Karte klicken, oder mit dem Menü "Eisenbahn" "Anfügen Gleis"

Einer davon zeigt nach Westen (270 Grad), der andere nach Osten (90 Grad). Nehmen wir den östlichen (oder klicken auf den östlichen Endpunkt) und fügen eine Gerade von 50 m an. Die Parameter von Rail2050 sehen wie folgt aus:

Wir mußten nur eine Änderung machen: FSRail wollte auf diesen 50 m den ganzen Höhenunterschied machen, wir bleiben oben bei 28. Mit Rail2125 gehen wir dann auf Höhe 27 hinunter, mit Rail2300 auf 22. Analog legen wir nach Westen hin an.

Das Ergebnis ist ein sauber geformter Damm an der Brücke. An jedes der beiden Enden fügen wir nun sechs Rechtskurven Cu245R05 an, wobei wir jeweils 4 Schritte absteigen, bis wir 1 erreicht haben. Nun nehme wir die beiden unteren Enden und fügen wiederum 50, 125 und 300 m an, die unten bleiben. Fertig ist die 8.

Eine kleine Erklärung bin ich noch schuldig. Wieso die Aufteilung in 50,125 und dann 300 m und nicht gleich als erstes ein langes Stück? Der Grund liegt in der Art, wie der Flugsimulator 95 und 98 die Grafik darstellt. (Diese Überlegungen sind im FS2000 nur noch Historie). Grundsätzlich werden alle 3D-Objekte nach ihrem Abstand vom Beobachter sortiert. Das Nächstliegende wird als Letztes gezeichnet. Wenn jetzt eine lange Schiene an die Brücke angeschlossen wird, gibt es viele Beobachterpositionen, bei denen die Brücke näher ist als der Mittelpunkt des langen Gleises und deshalb das untere Gleis der Brücke durch das lange Gleis durchscheint. Wer mag, kann dies am obigen Beispiel ausprobieren. Ich denke, daß der obige Effekt nicht auftritt, wenn an jedes der vier Enden eine Gerade von 50 m und danach eine Gerade von 100-150 m angelegt wird – danach ist man weit genug entfernt, daß diese Effekte nicht mehr auftreten.

Besonders dann, wenn die Brücke unter einem kleinen Winkel ( 30 Grad oder 150 Grad ) benutzt wird, können diese Effekte sehr deutlich werden.

Es empfiehlt sich daher auch nicht, Gebäude in zu große Nähe von langen Gleisen zu stellen, da auch damit Durchscheineffekte unvermeidbar sind. Dies Problem kann nur ein Upgrade nach FS2000 lösen – leider bekomme ich keine Prozente für diese Empfehlung.

Drittes Design: eine freie statische Nebenstrecke

Bisher haben wir klare geometrische Formen geschaffen, die auch in einfachen Modellbahndesigns vorkommen. Die Realisierung von großen Anlagen und der Design von realen Strecken verlangt dagegen freie Formen.

In dieser Lektion werden wir an die bekannte Stelle 50N 10E einen Bahnhof bauen. Eine zweigleisige elektrifizierte Strecke geht in südlicher Richtung gerade, mit einer Brücke über den nahem Fluß zu einem weiteren, viergleisigen Bahnhof. Eine eingleisige, nicht elektrifizierte Nebenstrecke soll über ein paar kleine Bahnhöfe sich zu dem ersten Hauptbahnhof hin schlängeln.

Fangen wir mit dem ersten Bahnhof und der Hauptstrecke an. Als erstes legen wir eine neue Bahn mit den gegebenen Koordinaten an. Als Vorgaben wählen wir den Wert 3 für die Oberleitung und 1 für die Höhen, 100 (Grastextur) für den Bahndamm. Wir legen als erstes Gleis den Bahnhof "station0" mit den Parametern (%6=3, %7=1,%8=4,%9=0). An das südliche Ende ( Richtung 180 Grad ) fügen wir eine Rechtsweiche an. Diese soll drei Schienen verbinden, eine zweigleisige Durchgangsstrecke mit einer eingleisigen. Deshalb ist S221R050 unser Kandidat. Das kürzere Gleisstück haben wir gewählt, weil gleich mit der Straße das erste Hindernis folgt. Ende 2 ist das gemeinsame Ende. Die Empfehlungen sind in Ordnung. Wir sehen uns das Ergebnis an.

Am südlichen Ende des Bahnhofs ist eine Weiche angefügt. Vom Weichenende aus ist der Mittelpunkt der Straße ca. 65 m entfernt. Wir fügen daher (am 180 Grad Ende ) zwei 20 m Gleise Rail2020 (3,1,1,100) und dann die Schranke Barr2050 (1,60,4,100) an.

Die Schrankenöffnung muß so breit sein, weil die Straßen in der Standardszenerie so breit sind. Über diese Verknüpfung zwischen Bahn und vorhandener Straße brauchen wir uns nicht zu schämen.

FSRail hat auch für die Straßen an der Schranke Endpunkte eingefügt, wir können diese mit einem Shift Linksklick löschen.

Als nächstes fügen wir zwei 1 km Stücke an, (Rail2A00 ), und steigen mit einem 600m Gleis (Rail2600) auf Höhe 28. Es folgt Bri2500 mit Parametern 2,220,28,233.

Auch mit der Flußüberquerung sind wir zufrieden. Besser kann nur das Original sein. Mit einem 600m Gleis gehen wir wieder auf Höhe 1 hinunter, machen eine Linkskurve 30 Grad mit 2000 m Radius (Cu230R20), und fügen Stat2500 mit (3,2,33,0) an. Jetzt bauen wir diesen Bahnhof aus. Wir fügen die Weiche Pal222st an mit Ende 1 an, die uns ein Parallelgleis im richtigen Abstand öffnet.

An deren drittes Ende, das in Richtung 330 Grad, also zurück, zeigt, fügen wir noch einen Bahnhof "Stat2500" mit südlichem Ende an (3,5,30,0).

Fertig ist die Hauptstrecke. Nun kommt die eingleisige Nebenbahn dran. Von unserem zweiten Bahnhof aus brauchen wir eine Weiche, die den Übergang vom zweigleisigen zum eingleisigen macht. Diese Weichen werden auch Adapter genannt. Wir entscheiden uns für Par12050 und fügen dessen nördliches Ende an. Alle Adapter sind am nördlichen Ende breiter als am südlichen. Nun haben wir die beiden Enden der eingleisigen Strecken. Wenn wir wollen, können wir die Enden der zweigleisigen Strecke m Menü Endpunkte exportieren. Da die eingleisige Strecke keine Oberleitung haben soll, ändern wir den Parameter für die Oberleitung in den Vorgaben auf 0. (Eisenbahn, Vorgaben festlegen).

Beginnen wir mit dem zuletzt erzeugten Ende ( Richtung 330 Grad ) und fügen der Reihe nach Cu145R05 (links),Rail1500,Cu145R05(rechts),Rail1400 und dann Stat1200 (0,0,4,0) an.

Die neue Strecke beschreibt einen Bogen und geht zu einem Bahnhof mit einem Bahnsteig und einem kleinen Bahnhofsgebäude. Eine Rechtskurve Cu145R05 bringt uns in Richtung 15 Grad, und mit Rail1400 steigen wir auf Höhe 28. Bridgen1 (0,170,22,100) überquert den kleinen Fluß Wern.

Eine Linkskurve Cu130R05 bringt uns wieder hinunter, es folgen Par12050 (südliches Ende), Stat2200 (0,0,53,0) und Par12050 nördliches Ende, um einen kleinen zweigleisigen Bahnhof mit einem Ausweichgleis zu schaffen.

Jetzt soll dieses Bahnhofsende an das freie Gleis vom ersten Bahnhof angeschlossen werden.

Dafür gibt es zwei Hilfsmittel. Im Flugsimulator können wir die Kartenfunktion benutzen, um uns eine ungefähre Vorstellung über die Geometrie zu machen.

FSRail erlaubt, von der Kartenfunktion aus Entfernungen zu messen. Wir klicken rechts auf den Endpunkt und bekommen den Dialog mit den Eigenschaften diese Endpunktes:

Wir drücken auf Entfernung und wählen nun entweder den anderen Endpunkt aus der Liste oder drücken auf "Benutze Karte" und wählen den eingleisigen rechts oben.

Wir messen vom zweiten zum ersten eingleisigen Endpunkt mit dem Ergebnis:

Mehr als zwei km sollten uns allemal reichen, glatt hinzukommen. Wir sehen, daß wir von der jetzigen Richtung (345 Grad) um etwa 45 Grad abbiegen müssen, und fügen deshalb eine Rechtskurve Cu145R05 an. Eine neue Entfernungsmessung ergibt 2149m auf 30.61 Grad, also die Richtung stimmt in etwa.

Nun wenden wir uns dem ersten Ende zu (Richtung 195 Grad ). Als erstes müssen wir wiederum eine Bahnschranke anfügen, wir wählen Barr1200 (0,70,4,100). Es folgt eine Rechtskurve Cu120R05, um in die richtige Richtung zu kommen. Die Entfernungsmessung gibt nun 1795 m unter 213.97 Grad, also um fast 4 Grad gegenüber der aktuellen Richtung der beiden Gleise. Dafür gibt es die Möglichkeit, Gleisstücke von Hand zu drehen. Fügen wir an das Ende mit Richtung 210 ein Gleis Rail1100 an. Im Feld "Anfügen einer Geraden"

drehen wir es um ein Grad auf 211, ein weiteres 100m-Gleis fügen wir unter 212 Grad an. Wichtig ist, daß dies der Platz ist, ein Gleis um den Endpunkt zu drehen. Würden wir den nächsten Dialog benutzen, drehten wir da Gleis um seinen neuen Mittelpunkt.

Dasselbe machen wir am 30 Grad Ende, um auf 32 Grad zu kommen. Erneute Messung gibt 1396m unter 34.55 Grad. Also noch an beide Enden je zwei weitere 100 m lange Geraden, jeweils um ein Grad gedreht. Nächste Messung: 996 m unter 34.97 Grad. Da sich Schienen leicht überlappen können, können wir nun ohne weiteres unter 34.97 an das untere Ende ein 1000 m Gleis anlegen.

Damit haben wir eigentlich alles gelernt, was man braucht, um statische Bahnen zu erzeugen. Einige Tips noch:

Zerlegen Sie ihre Bahnen in kleinere Teilstücke. So ist es einfacher, Teile später zu verbessern oder ganz umzugestalten, als wenn sie aufwendig aus großen Dateien herausgeschnitten werden müssen.

Viele Bahnen haben Linksverkehr, Sie können die Züge auf das linke Gleis setzen, indem Sie vor die Zugnummer ein Negativzeichen setzen. Zug # -109 ist derselbe Zug wie 109, nur auf dem linken Gleis. Einige Makros ändern ihr Aussehen für Linksverkehr. Editieren Sie die Datei ..\includes\00user.inc. Sie enthält nur die Zeile Uvar( $mir 1 ). Ändern Sie den Wert auf –1 für Linksverkehr.

Es gibt viele verschiedene Formen von Oberleitungsmasten. Die Variable $pylshape in der Datei ..\includes\00user.inc legt die Form der Masten fest. Durch Änderung der Zeile (Uvar $pylshape 11) auf einen anderen Wert wird das Aussehen aller massiven Masten (%6=3) und die Farbe von Strichmasten für alle folgenden Kompilationen geändert. Aktuell gibt es Gittermasten (grün) und massive Masten in DB –Formen sowie Masten ähnlich derer der belgischen oder niederländischen Bahn. Die Farben der Masten 10-14 und 20-24 sollten nicht verändert werden. Fortgeschrittene Bastler können durch Änderung der Dateien ..\includes\pyl....inc für die Nummern 15-19 bzw. 25-29 eigene Farben definieren oder aber auch eigene Mastenformen entwickeln.

Oft möchte man exportierte Endpunkte aus (Bahn1.scm) in eine andere Bahn übernehmen. Dafür lege man zuerst die neue Bahn an und speichere sie ab (Bahn2.scm). Man öffne beide Bahnen mit einem Editor (z.B. Notepad). In Bahn1 sucht man Zeilen mit der Form ;FSRail ExpEP 050:00:08.1016 010:00:00.0000 0 1 2 0 0 0 0 0 0 0.Wenn die Koordinaten mit den gewünschten übereinstimmen, kopiert man die ganze Zeile in die Datei Bahn2.scm und erhöht den Zeilenzähler in der ersten Zeile jeweils um 1.

Ein zum Export markierter Endpunkt kann wieder aktiviert werden, indem der Text

;FSRail ExpEP durch ;FSRail AddEP ersetzt wird. Die Taste "Reimportieren" des Endpunktemenüs macht dies für uns.

Besondere Beachtung verdient die Variable Reichweite, die wir bisher immer auf 7000 m gesetzt hatten. Diese legt fest, innerhalb welcher Entfernung Objekte gezeichnet werden. Ist diese zu groß, muß das Grafiksysteme zu viele Objekte zeichnen, auch wenn sie aus der Entfernung kaum sichtbar sind. Dies macht die Betrachtung langsam, Bewegungen werden ruckartig. Werte zwischen 6000 und 9000m sind der typischen Größe von Bahnobjekten angemessen.

Der zweite Einfluß dieser Parameter hat mit dem Landschaftspeicher von FS95 und FS98 zu tun. Alles, was dargestellt wird, muß in diesen Speicher passen. Dazu legt die Datei ..\includes\00user.inc eine Größe $arvis in km fest, für die die folgende Beziehung gilt: Alle Objekte, für die gilt, daß ihre Entfernung vom Betrachter beim Nachladen des Landschaftsspeicher kleiner als ( $arvis + Reichweite ) ist, werden geladen. Da der Landschaftspeicher begrenzt ist, legt deshalb die Größe ( $arvis + Reichweite ) die maximale Objektdichte fest. Werden nur statische Bahnen benutzt, ist für FS98 meistens ein Wert von ca. 11km für die Summe möglich, in der Nähe von Flughäfen und anderen Drittobjekten weniger. Für bewegte Züge ist die Grenze niedriger (im Raum Frankfurt konnte ich sie nur bei 6 km halten ).

Wenn die Größe $arvis groß ist, wird nur ein Teil der gespeicherten Objekte gezeichnet. Fliegt man nun eine Bahnstrecke entlang, so werden die Objekte sichtbar, sobald sie im Bereich der Reichweite liegen. Dieses weiche Einblenden ist optisch sehr angenehm. Ist dagegen die Variable $arvis gleich 0.oder gar negativ gewählt, so springt bei jedem Nachladen die gesamte Strecke ins Bild, und dann fliegt man auf das scheinbare Ende zu. Dieser Effekt ist unschön, bei hoher Objektdichte aber nicht zu vermeiden. Dadurch, faß der Parameter nur an einer Stelle geändert werden muß, ist eine nachträgliche Optimierung möglich.

Dokumentation der statischen Makros:

Eine allgemeine Erklärung:

Im Text werden wiederholt Gleisenden als "nördliche" und "südliche" Enden bezeichnet. Dies sind die Lagen der Enden, wenn das Gleis nicht gedreht ist, also für %5=0. Die Enden drehen sich mit dem Gleis. Also zeigt z.B. für %5=90 (Grad) das "nördliche" Ende nach Osten.

In diesem Kapitel werden die wesentlichsten statischen Makros aufgelistet und die Bedeutung der vom Benutzer zu setzenden Parameter (%6 bis %9 ) beschrieben. Die hier nicht aufgeführten Makros folgen soweit wie möglich den Konventionen der hier aufgeführten .Die folgenden Abkürzungen gelten:

n = 1-4 Schienenbreite, einspurig bis vierspurig,

lll = Schienenlänge in m, a00 heißt tausend m,

rr = Radius der Kurve in 100m, 07 meint 750 m Radius,

ww = Kurvenwinkel in Grad

b=a,b,c,d,e,f,g,h,i Winkel zwischen oberem und unterem Gleis 30,45,...,150 Grad,

y=r,l,y Weichenöffnung rechts, links, symmetrisch

L = Schienenlänge in 100m

Art | Name | Höhe | Bedeutung von %6 | Bedeutung von %7 | Bedeutung von %8 | Bedeutung von %9
Geraden | Railnlll |  | Oberleitung | Höhe Nord | Höhe Süd | Bahndamm
Kurven | CuwwRrr |  | Oberleitung | Höhe Nord | Höhe Süd | Bahndamm
Zugmakros | TrainnL |  | Oberleitung | Zug | Höhe | Bahndamm
Schranken | Barrnlll | 1 | Oberleitung | Breite in 50cm | Aussehen | Bahndamm
Bahnhöfe | Statnlll | 1 | Oberleitung | Zug | Aussehen | Namen
| Stationx | 1 | Oberleitung | Zug | Aussehen | Namen
Brücken(groß) | Brinlll |  | Oberleitung | Zug | Höhe | Aussehen
(klein) | Bridgenn | 28 | Oberleitung | Öffnung in 50 cm | Geländer | Bahndamm
Bahn über Bahn | Bridgknn | 1/28 | Oberleitung unten | Oberleitung oben | Geländer | Bahndamm
Adapter | Paynnlll |  | Oberleitung | Höhe Nord | Höhe Süd | Bahndamm
Prellböcke | Bumpnlll |  | Oberleitung | Höhe Nord | Höhe Süd | Bahndamm
Leitungsende | Endnlll |  | Oberleitung | Höhe Nord | Höhe Süd | Bahndamm
Straßentunnel | RoTunlll |  | Oberleitung | Flächenfarbe | Höhe | Bahndamm
Autobahntunnel | HwTunlll |  | Oberleitung | Flächenfarbe | Höhe | Bahndamm
Kreuzung | Crosnn50 |  | Oberleitung | Höhe Nord | Höhe Süd | Bahndamm
| Crotnn50 |  | Oberleitung | Höhe Nord | Höhe Süd | Bahndamm
Weichen | Snnnylll |  | Oberleitung | Höhe Nord | Höhe Süd | Bahndamm

Dabei gelten folgende Regeln:

Oberleitung: 0=keine Oberleitung, 1= nur Fahrdrähte, 2=Fahrdrähte und Strichmasten, 3=Fahrdrähte und massive Masten. 4=Fahrdrähte,massive Masten und Lampen. Die Werte 5-7 haben bei einigen Makros Bedeutung für die Nachbeleuchtung im FS2000.

Farbe und Form aller Masten wird durch die Datei ..\includes\pylshape.inc gesteuert.

Höhen werden 25 cm – Einheiten angegeben - außer für %3, dies ist in m.

Für den Bahndamm kann eine Hexadezimalzahl 01-FF eine Farbe aus der aktuellen Palette auswählen. 0 bedeutet kein Bahndamm und spart ein paar Bytes pro Makro ein, insbesondere bei Kurven. Die Werte 100-105 belegen den Damm mit Texturen, 100 verwendet z.B. die Textur Grass.R8. Die Parameter Aussehen oder Geländer sind im allgemeinen mehrstellige Dezimalzahlen, Details müssen der Dokumentation der einzelnen Makros entnommen werden.

Nun sollte genug Information vorhanden sein, um auch große Projekte mit statischen Makros zu starten. Sammeln Sie etwas Erfahrung, bevor Sie sich an die bewegten Züge machen – diese sind notwendigerweise komplizierter. Aber auch so kann ich Ihnen für die statischen Bahnen etwas präsentieren, was sie deutlich komplizierter macht. Dieses Etwas heißt Flugsimulator 2000.

Statische Bahnen im Flugsimulator 2000

Die bisherigen Beispiele waren alle mit dem Flugsimulator 98 gemacht. Falls Sie versucht haben, die Beispiele mit FS2000 durchzuführen( und nicht den flatten-Switch eingetragen hatten), werden sie gemerkt haben, daß manches nicht so klappte. Manchmal schien der Untergrund durch Teile der Schienen hindurch, manchmal paßten die Schienen nicht in der Höhe genau aneinander. Dies hat den folgenden Grund: Während die zugrundeliegende Landschaft beim FS5 bis FS98 flach war, auf der sich einzelne Berge erheben konnten, ist die gesamte Landschaft im FS2000 dreidimensional, d.h. wellig oder hügelig. An den Stellen, an denen eine Welle höher als die Oberfläche der Schiene ist, überspült sie diese, so daß von der Schiene nichts mehr zu sehen ist. Was tun?

Sie haben zwei Möglichkeiten: Entweder machen Sie die Landschaft flach, oder Sie bauen eine dreidimensionale Bahn. Jeder Modellbahner weiß, daß das erste das einfachere und das zweite das schönere ist.

Um einen Teil der Landschaft flach zu machen, müssen Sie die Datei Scenery.cfg im Hauptverzeichnis von FS2000 editieren. Dort werden Sie am Ende einen Absatz finden, der etwa die folgende Form hat:

[Area.073]

Title=Railways

Local=SCENERY\Rail\Scenery

Active=TRUE

Layer=73

Fügen Sie an diesen Absatz die folgende Zeile an:

Flatten.0=100,N49 E9,N49 E11,N51 E11,N49 E11

,speichern Sie die Datei, starten Sie FS2000, und die Landschaft um obige Beispiele herum ist platt wie eine Briefmarke. Damit können Sie die Beispiele erfolgreich programmieren und so erste Erfahrung sammeln.

Auf Dauer wollen Sie sicher auch mal sich mit einer dreidimensionalen Bahn versuchen. Dafür empfehle ich, die Bereiche, in denen sich viele Makros befinden, z.B. größere Bahnhöfe, jeweils für sich auf der passenden Höhe flach zu machen.

FSRail unterstützt Sie dabei nach Kräften. Lassen Sie sich eine Karte ihrer Bahn anzeigen, wählen Sie das Menü (Kartenbefehle – erzeuge flatten area) und klicken Sie dann im oder gegen den Uhrzeigersinn die vier Eckpunkte des Vierecks, welches Sie flach machen wollen. Sie sehen ein gestricheltes graues Viereck. Es wird Ihnen auffallen, daß es nicht genau dort entstand, wo Sie es einzeichneten: Der Flatten-Schalter funktioniert nur auf ganzen Minuten, und deshalb wird auch das Viereck entsprechend verschoben. Die Eingabe der Höhe muß dann leider in Fuß erfolgen. Wenn Sie dann im Menü Dialoge "Editiere Bahn" auswählen und auf "Flatten Switch FS2000" drücken, wird eine kleine Datei flatten.txt erzeugt, welches die grafisch erzeugten Flatten-Befehle enthält. Diese können Sie, wie oben beschrieben, in Scenery.cfg eintragen. Eine elegantere Methode, ebene Flächen zu erzeugen, werden Sie später kennenlernen.

Über dreidimensionale Szenerie wird dann nur eine Überlandstrecke gelegt. Dies ist grundsätzlich möglich, aber natürlich schwieriger, als im Flachland zu bauen. Folgende Regeln sollten Sie befolgen:

Da es im FS2000 unmöglich ist, in die Erde zu bauen, bauen Sie alle Bahnen auf einen kleinen Damm. Im Flachland reicht es, eine Höhe von etwa 3 bis 4, also 0,75m bis 1 m über dem Boden für die Endpunkte zu benutzen, um sicher oberhalb der Bodenwellen zu liegen. Geben Sie den Schienen einen Bahndamm ( %9 > 0 ). Die Bodenwellen verdecken den Damm teilweise, dies sieht sehr realistisch und plastisch aus. Je hügeliger das Gelände, um so höher sollte der Damm sein, da ein Einschnitt ins Gelände nicht möglich ist. Auch sind im hügeligen Gelände sehr lange Gleise manchmal unpassend.

Sehen Sie sich jedes Gleis an, sobald es angefügt ist. Fast immer wird es nicht genau passen, weil die Mittelpunkte der beiden Schienen nicht gleich hoch liegen. Nun benutzen Sie die Funktion "Ändere Gleis" von FSRail, (wähle letztes, evtl. vorheriges) um die beiden Enden anzuheben oder abzusenken. Wenn Sie es ein paarmal gemacht haben, werden Sie das richtige Augenmaß haben, um nach einem Versuch die Höhen aneinander zu passen. Wenn Sie eine konstante Steigung haben, empfiehlt es sich, ein Gleis ohne Damm knapp über den Boden zu legen. Wie Sie echt 3D-Entwicklung machen, werden Sie nach dem Kapitel über die bewegten Züge lernen. Fürs erste – experimentieren Sie. Ich denke, die Idee mit dem Hubschraubertraining liegt inzwischen unter einem großen Stapel anderer Ideen.

Hat dieser Ansatz Sie nicht befriedigt? Dann lesen Sie im Kapitel Veränderungen des 3D - Terrains weiter.

Hintergrundbitmaps und Marker

Viele Tester von FSRail wünschten sich, wie bei Airport, SCCreate oder ASD ein Hintergrundbild benutzen zu können, vor dem sie die Bahn erstellen können. Ohne ein solches Bild, nur mittels Koordinierung durch Koordinaten, vermißten Sie die nötigen Orientierungshilfen.

Als solche Hintergrundbilder in Frage kommen:

- Bildschirmauszüge von Kartensoftware,
- Bildschirmauszüge von Satellitenphotos oder Luftaufnahmen,
- Bildschirmauszüge anderer Designprogramme,
- Bildschirmauszüge der FS-Szenerie,
- Bildschirmauszüge einer anderen FSRail-Szenerie,
- und vieles anderes mehr.

Ich habe viel damit experimentiert. Es gibt einige Probleme, die bei den anderen Programmen nicht auftauchen. Das erste ist die Größe der notwendigen Bitmaps. Eine FSRail-Szenerie kann leicht 50x50 km groß sein, die Genauigkeit von FSRail beträgt cm - der Abstand von Gleisen in Bahnhöfen ist 8 m, eine brauchbare Bitmap mit 1m/Pixel führt zu Bitmaps von GB Größe. Das zweite Problem sind die zahlreichen Quellen von Bitmaps, die vorgeschlagen werden. Das dritte hängt damit zusammen, daß FSRail den Maßstab fließend der Größe der Szenerie anpaßt, und die Umrechnung der Bitmap nicht eindeutig ist. Das schwierigste aber ist der notwendige dynamische Bereich. Zwischen dem Überblick über das gesamte Netz und dem zum Anlegen benutzen Maßstab liegt oft ein Faktor 100 oder mehr - und dann ist aus der übersichlichen Bitmap ein verwirrender Hintergrund mit einigen wenigen 100x100 Pixel großen Blöcken geworden. FSRail ist eben ein koordinatenorientiertes Programm, entspricht also einem Vektor Zeichenprogramm, kein Bitmap Malprogramm

Hinzu kommt, daß nicht für alle Bereiche einer Szenerie derselbe Maßstab sinnvoll ist. Für Überlandstrecken in einfachem Gelände reicht 1 : 200 000 vielleicht aus, in Innenstadtbereichen wünscht man sich besser als 1 : 25 000. Ferner ist meistens nur ein kleiner Teil der Fläche mit Bahnen belegt, für den Rest braucht man keine Hintergrundbitmaps.

Für die folgenden Beispiele habe ich einen Bildschirmauszug einer Karte 1 : 200 000 (TOP Verlag) der Rheinschleife von Boppard benutzt - für meinen Geschmack ist 1 : 200 000 zu groß, aber auch dieser Ausschnitt umfaßt nur etwa 9 x 6 km auf 989 x 616 Pixel.

Der Kartensoftware habe ich entnommen, daß der westliche Rand der Karte bei 7:30:47, der östliche bei 7:41:09, der südliche bei 50:11:20 und der nördliche bei 50:15:28 liegt. Diese Information kann man auch Satellitenatlanten und Designprogrammen entnehmen. Im folgenden wollen wir lernen, wie diese Bitmap (zusammen mit anderen) in FSRail verwendet werden kann. Die maximale Größe der Bitmaps wird durch die Einstellungen der Anzeige durch Windows festgelegt.

Wir erzeugen als erstes eine neue Bahn mit den folgenden Koordinaten:

Nun wählen wir "Kartenbefehle" "Bitmap laden" aus, und bekommen den folgenden Dialog:

Wir können nach der Bitmap suchen und müssen dann den Dialog verändern, um die Eigenschaften unserer Bitmap einzugeben:

Wenn wir Bildbreite und Höhe nicht kennen, geben wir für beide eine 0 ein. FSRail versucht dann, die Breite und Höhe selbst zu ermitteln. Falls dies schief geht, können wir diese werte später von Hand korrigieren.

Wir drücken OK, und erhalten ein Bild mit der Bitmap.

Gleichzeitig wird FSRail diese Bitmap mit ihren Koordinaten sich merken - für diese FSRail - Datei können Sie diese immer wieder auswählen. Wenn wir uns nun die Menüs der verfügbaren Befehle ansehen, sind die allermeisten unterbunden, eigentlich finden wir nur noch "Kartenbefehle" "Farben der Marken".

Was hat es damit auf sich? Marken sind einfache FSRail - Objekte, kleine Fähnchen, die drei Eigenschaften haben: Zwei Koordinaten und eine Farbe. Wählen wir als erstes die Farbe blau und setzen an allen Biegungen des Flusses blaue Marker durch einfache Mausklicks. Auf die Bahnhöfe setzen wir violette Marker, und auf die Bahnstrecken z.B. grüne. Wenn wir die zuletzt gesetzte Marke wieder löschen wollen, machen wir einen Klick mit der linken Maustaste bei gedrückter Umschalt - Taste. Bei gedrückter Strg - Taste wird die zuletzt gesetzte Marke gelöscht und an die aktuelle Mausposition ein Marker gesetzt, also die letzte Eingabe korrigiert.

Mit einem Rechtsklick verlassen wir die Bitmap.

Nun stehen uns wieder alle bekannten Befehle zur Verfügung - und zusätzlich haben wir alle uns wichtig erscheinenden Punkte markiert. Man wird nicht immer so viele Punkte wie in obigem Beispiel machen. Machen wir nun einen Rechtsklick auf den Bahnhof Boppard, daß ist die violette Flagge etwas links der Mitte, in deren Nähe die beiden Strecken zusammenlaufen.

Wir sehen nun alle Eigenschaften dieser Marke, Koordinaten und Farbe, und können diese ändern, wenn wir es wünschen. Wenn wir das Feld inaktiv auswählen, wird die Fahne verschwinden. Mit "Kartenbefehle" "Marken zurücksetzen" werden alle Marken der gerade mit "Farbe der Marken" ausgewählten Farbe wieder sichtbar. Ein weiteres Hilfsmittel birgt der Knopf Entfernung. Wählen wir z.B. die Marke rechts vom Bahnhof mit der rechten Maustaste aus, drücken Entfernung und mit irgendeiner Maustaste auf die Marke links davon, bekommen wir die Entfernungsinformation:

Dies hilft nicht nur, Abstände zu schätzen, sondern bringt uns auch die Information, in welcher Richtung der Bahnhof gelegt werden soll.

Als nächstes wollen wir eine zweite Bitmap derselben Region berücksichtigen - als Beispiel nehme ich die FSRail - Datei, die der Reparatur des Rheintals dienen soll. Ein Bildschirmauszug von 839 x 527 Pixel, die Koordinaten der Ränder entnahmen wir FSRail:

Als Ergebnis sehen wir im Hintergrund die Elevationpolygone von Rhein1.scm, im Vordergrund die Marken . Setzen wir hellblaue Marken auf die Ecken der Elevationpolygone.

Nun hat unsere Szenerie von einer zweiten Quelle Eingaben bekommen, FSRail erlaubt, bis zu 50 Bitmaps pro Szenerie als Vorlagen zu verwenden, mehr als 2000 Marker zu setzen. So sollte die Orientierung nicht mehr schwerfallen.

Wenn wir nun wieder eine Bitmap aufrufen, sehen wir, daß FSRail sich die bisher benutzten gemerkt hat.

Wir brauchen nur die gewünschte auszuwählen und auf OK zu drücken, schon sehen wir die gewünschte Hintergrundsbitmap, und davor im passenden Maßstab die FSRail - Szenerie - falls sie sich genügend vom Hintergrund abhebt. Der Name der Bitmap kann bis zu 100 Buchstaben lang sein und auch Verzeichnisse enthalten. Eine neue Bitmap wählen wir aus, indem wir eine vorhandene auswählen und im folgenden Dialog auf den neuen Namen und die neuen Koordinaten und Maße ändern.

Dabei können wir jede beliebige Bitmap wählen.

Wenn die Liste länger wird, können wir sie durchblättern.

Ich hoffe, mit diesem Zusatz die Benutzung von FSRail deutlich vereinfacht zu haben, ohne daß ich auf irgendeine positive Eigenschaft verzichten mußte.

Ausschluß von Objekten der Standardszenerie

Die Standardszenerie enthält oft eine Reihe von Objekten wie Straßen, Flüssen, evtl. auch Gebäuden. Bisher haben wir unsere Szenerie in diese eingepasst, und das ist auch für große Designs eine möglich Alternative. Speziell wenn wir aber die 3D-Straßen von FSRail verwenden wollen, oder aber wenn diese Objekte zu falsch liegen, können wir beim Anlegen einer neuen Bahn ankreuzen, daß die Objekte der MS Szenerie ausgeschlossen werden sollen. Wir sollten dann die Prozedurvorlage wie folgt in der letzen Zeile ändern:

Was passiert genau? FSRail schreibt an das Ende des Szenerieheaders einen Befehl, der beim Kompilieren zusätzlich eine kleine Datei EX0001.bgl erzeugt. Diese enthält nur den Befehl, alle Objekte der sichtbaren Szenerie, deren Referenzpunkt im Bereich des Headers liegt, zu ignorieren. Da Flüsse und Straßenzüge of mehrere km lang sind, können noch immer welche in den Bereich des Headers hineinragen. Falls Sie mit FSRail mehrere soche Ausschlußrechtecke erzeugen wollen ( um z.B. einen Flughafen in der Mitte zu erhalten), empfehle ich, mehrere neue Dateien mit passenden Headern anzulegen und die erzeugten Dateien EX0001.bgl jeweils zu einem anderen Dateinamen zu kopieren. Dies können Sie auch immer machen, wenn Sie sich erst später entschließen sollten, die MS - Objekte zu verwerfen.

Im FS2000 bleibt das Mesh mit seinen Grundtexturen, also auch die Stadttexturen, erhalten.

Einführung in bewegte Züge

Sie haben nun genug Erfahrung mit statischen Bahnen gesammelt? Gut, also zur Vorbereitung etwas Grundlagen.

Wer sich schon mit dem Flugsimulator intensiver beschäftigt hat, wird schon mal auf den Begriff dynamische Szenerie gestoßen sein. Diese wird z.B. verwendet, um Flugzeuge auf Flughäfen sich bewegen, starten und landen zu lassen. Es lag deshalb nahe, für bewegte Züge ähnliches auszuprobieren. Ein Zug wäre damit ein besonders geformtes Flugzeug. Allerdings stieß ich auf einige unüberwindliche Hindernisse, diesen Weg zu beschreiten. Am schwierigsten war es, die Züge fest an die Schienen zu ketten – der Benutzer müßte Tausende von Koordinaten eingeben, um den Zug genau den Schienen folgen zu lassen. Ferner gab es massive Probleme mit der Sichtbarkeit und Durchscheinen durch andere Objekte, z.B. Bahnsteigsüberdachungen. Und wie sicherzustellen ist, daß ein dynamischer Zug rechtzeitig Schranken schließt, wußte kein Experte eine Idee.

Der von mir gewählte Weg verwendet nicht die dynamische Szenerie, sondern packt auch die Züge in die "statische Szenerie", die nur mit den dafür verfügbaren Mitteln ihre Aussehen ändert. Als Konsequenz daraus ist der bewegte Zug genauso ein Teil der Schiene, wie er es bei den statischen Bahnhöfen oder Zugmakros ist. Als drittes enthalten die Schienen noch den Teil, der für die Bewegung zuständig ist, also den Motor.

Vorteilhaft ist dann, daß als Züge dieselben wie für die statischen Bahnen verwendet werden können – der Antrieb liegt in den Schienen. Nur für diejenigen langen Züge, die sich in Kurven biegen können, muß etwas zusätzlicher Code geladen werden.

Jede Schiene mit einem bewegten Zug beinhaltet also die sichtbare Schiene, den Antrieb und alle darüber fahrenden Züge. Deshalb verbrauchen sie viel Speicher. Um dies in vertretbaren Grenzen zu halten, sind die sichtbaren Teile der Objekte vereinfacht worden, und die Zahl der Züge ist bei den meisten Objekten auf zwei unterschiedliche in beiden Richtungen beschränkt.

Dennoch ist der Speicherbedarf dieser Objekte groß. Allerdings ist er fast unabhängig von der Länge. Deshalb verlangt dieses Konzept sehr lange Objekte, um mit dem vorgegeben Speicher auszukommen. Längen von einem km oder mehr sind notwendig, zumindest für FS95 und FS98.

Der Übergang zwischen zwei Schienen muß (außer bei FS2000) auf Grundniveau ( Höhe 1 = 0,25 cm ) sein, damit nicht Effekte auftauchen, daß eine Schiene den Zug zeitweise bedeckt. Mit diesen drei Grundtatsachen ( einfachere Objekte, große Länge, Übergang nur am Boden ) ist es klar, daß die Schienen für bewegte Züge für den Benutzer viel unhandlicher sind als die flexiblen statischen Gleise. Ein gutes Design wird daher immer beide verwenden, die langen bewegten für fahrende Züge und die statischen für im Detail dargestellte Bahnhöfe, Verbindungsgleise und Nebenstrecken.

Für die Koordinierung der Züge, wenn sie von einem Gleisstück auf ein anderes rollen, muß eine zentrale Koordinierung existieren. Sie befindet sich in den Stellwerken, kleinen, unscheinbaren Gebäuden, ohne die sich bei meinen Bahnen nichts bewegt. Solange sich ein Stellwerk innerhalb der Reichweite des Beobachters befindet, koordiniert es die Bewegungen. Bei zwei Stellwerken wird die Bewegung leicht ruckelig, kleine Überlappungen sind aber kein Problem. Die Kartenfunktion von FSRail zeichnet die Stellwerksreichweiten als weiße Ovale, wenn sich diese nur leicht überlappen und keine Lücken enthalten, läuft der Verkehr optimal. Dabei kann ohne weiteres ein Stellwerk in einer Datei einen Zug in einer anderen steuern.

Da die Züge Teil der Schienen sind, wird auch das Zeitverhalten der Züge beim Design mit festgelegt. Der Fahrplan ist also Teil des Designs, freies Fahren ist nicht möglich. Bei den hunderten von Zügen, die eine große Bahnlandschaft beherbergt, wäre dies auch nicht möglich. Wenn genügend Nachfrage besteht, kann ich mir vorstellen, ein Toll zu entwickeln, das nachträgliche Fahrplanänderungen erlaubt.

Um die Bewegung am laufen zu halten, wiederholt sie sich regelmäßig. Die Zeit, nach der sich alles wiederholt, nenne ich im Folgenden Zyklus. Die elementare Zeiteinheit, mit der sich Zeiten bestimmen lassen, beträgt etwa 6 Sekunden, ich nenne sie Slot. In der Datei ..\includes\slots.inc wird festgelegt, wieviel Slots ein Zyklus hat. Die von mir geschaffenen FS98 - Szenerien haben 50 Slots pro Zyklus, daß heißt, die Züge fahren im 5-Minutentakt. Für die große Bahn ist dies sicher ein unerreichbares Ziel, für Modellbahnen und Programmierer ist dies eine Ewigkeit. Für die neueren FS2000 –Szenerien habe ich 56 verwendet.

Für Testzwecke wird man wesentlich kleinere Werte (10 bis 20 ) benutzen wollen, für einspurige Strecken mit Gegenverkehr größere. Werte unterhalb von 10 empfehle ich nicht, da manche Makros die Züge solange halten können, und nicht für jedes Makro der Fall getestet ist, daß der Zug mehrfach drin vorkommt.

Der Designer legt fest, zu welchem Zeitpunkt (Slot #) ein Zug in Süd - Nordrichtung eine Schiene betritt, und wann in Nord – Südrichtung. Für manche Makros ist die Aufenthaltsdauer fest, für manche variabel (z.B. die Aufenthaltsdauer in Bahnhöfen). Allen bewegten Schienen wird mit der Variablen %8 diese Zeitinformation übergeben – es ist Aufgabe des Antriebs im Makro, die Züge pünktlich vom einen Ende zum anderen zu befördern. FSRail speichert in der Information über Endpunkte ab, wann welcher Zug diesen überquert, und kann deshalb für das anschließende Gleis diese Variable richtig berechnen.

Noch eine Konsequenz gibt es: Wenn die Länge eines Gleises eines Gleises und die Verweildauer festliegen, liegt damit auch die Geschwindigkeit des Zugs fest. Zwischen zwei Schienen sollte diese nicht zu stark variieren, und sie muß dem Zug angemessen sein. Aber damit sind wir schon tief in den Details.

Eine erste Bahn mit bewegten Zügen

Nach der Theorie gleich zur Praxis. Wir erzeugen wieder eine neue Bahn, dieses Mal für bewegte Züge.

Wir werden nun nach der Zyklusdauer gefragt. Wir müssen uns davon überzeugen, daß in der Include-Datei derselbe Wert steht, ansonsten werden die Bewegungen unkoordiniert sein. Lassen wir es für den Moment bei 56, und schon können wir ein Gleis legen. Später werde ich erklären, warum ich für West- und Mitteleuropa den Wert 56 empfehle, für den Rest der Welt 96. Als erstes wählen wir einen Bahnhof, der Züge beginnen und enden kann. Wir wählen unsere Vorgaben und dann Bahnhof (bewegt). Das richtige Modell ist M2st250e. Dieser Bahnhof hat von Süden einfahrende Züge, nimmt sie vom Gleis, setzt sie rechtzeitig auf dem Gegengleis ein, und sie fahren wieder Richtung Süden los. Nach Norden hat dieser Bahnhof keinen Verkehr – man muß ihn also entsprechend drehen. Um den etwas kryptischen Namen zu erklären. Alle Makros für bewegte Züge fangen mit M (wie moving) an. Danach folgt eine Zeitinformation, falls feste Zeiten vorkommen. Die 2 bedeutet, daß zwei Slots für die Einfahrt und zwei Slots für die Ausfahrt des Zuges verwendet werden. Die Buchstaben st stehen für Station, es folgt die Gleisbreite sowie die Länge in m. Die letzte 0 der Länge ist durch einen Modifikator ersetzt, e wie Ende. Nun werden wir nach den Startzeiten der Züge sowie den Zug gefragt. Ganz genau ist es die Zeit, wann das südliche Ende befahren wird.

Wenn wir keine besonderen Wünsche (z.B. verpaßte Anschlüsse an andere Züge) haben, können wir die Vorgaben übernehmen, und bekommen einen weiteren neuen Dialog.

Dies bedeutet, daß der Bahnhof programmierbare Zeiten (bei Bahnhöfen ist dies die Aufenthaltszeit) hat, wir wählen 6 Slots = 36 Sekunden. Wir bekommen nun den Vorschlag für den Makroaufruf, den wir uns etwas genauer ansehen wollen.

Die meisten Parameter kommen uns bekannt vor, insbesondere %6 und %7. Der dritte Parameter %8 ist eine zusammengesetzte Variable, in der alle Zeitinformation steckt. Die erste Ziffer übergibt die Aufenthaltsdauer, die nächsten beiden die Südrichtung, die letzten beiden die Nordrichtung. Warum ist die Südrichtung 40? Dies mag für den ersten Schritt überraschen, liegt aber daran, daß das Verhalten dieses Makros genau dem Makro M2st2500 entspricht, nur daß der ausfahrende Zug nicht gezeichnet wird. Um kompatibel zu sein, damit wir die Makros eventuell austauschen können, werden sie gleich behandelt. Die Zeit, die sich der Zug im Makro befindet, ist danach 2+6+2=10, und 50-10=40. Für die meisten Fälle ist dies aber egal.

Den Parameter %9 wählen wir wie vorgeschlagen. Die letzte Stelle beschreibt den östlichen Bahnsteig, die mittlere den westlichen (>3 schaltet ein Bahnhofsgebäude ein). Den ersten habe ich eingeführt, nachdem mich zu sehr ärgerte, wie viele Bahnhöfe im Flugsimulator mitten auf der grünen Wiese stehen. Ich verstehe dies als eine Anregung für die Eigeninitiative – Kleinstädte mit landestypischem Aussehen sind Ihre große Herausforderung.

Wir sehen auch, daß wir weitere Parameter (%13 und %14) benutzen können, um einen zweiten Zug einzuplanen, lassen dies aber im Moment und drücken auf "OK". Bevor wir unser Werk bewundern können, müssen wir als nächstes noch ein Stellwerk einfügen. Wir wählen "Eisenbahn – Stellwerk" und klicken in auf die gewünschte Position. Wir können die Position bestätigen und die Farbe der Textur auswählen - bei eine 0 würden wir kein Stellwerk sehen.

Nun kompilieren wir die Szenerie, sie umfaßt bereits etwa 15 KB.

Dafür kann sich das Ergebnis schon sehen lassen. Der Interregio fährt ein, steht auf dem Gleis, verschwindet dann, und wird ca. 3 Min später wieder eingesetzt, um nach Süden auszufahren.

Nach Süden haben wir gleich ein erstes Hindernis zu überwinden, eine schräg verlaufende Straße, etwa 110 m vom südlichen Ende entfernt. Wir fügen deshalb die bewegte Schranke M2ba2200 leicht gedreht (178 Grad) an und wählen als Schrankenbreite 60. Die Lage ist nicht ganz optimal, aber das etwas längere Stück (250m) paßt genauso gut oder schlecht. Wir werden später lernen, wie man ein ganz paßgenaues Stück eigenhändig anfertigt und benutzt, für den Moment geben wir uns mit dem Vorhandenen zufrieden.

Nun haben wir bereits einen sehr komplexen Ablauf, die Schranke öffnet und schließt sich für die Züge. Auf dem Bild sehen wir auch das unscheinbare Stellwerk, von dem aus die Schranken und Züge gesteuert werden – und die sich ebenfalls umschaltenden Signale und die Passagiere auf den Bahnsteigen haben Sie sicher auch gesehen, die erst kurz vor dem Zug erscheinen.

Nun folgen wir der Richtung und wollen den Fluß überqueren, der in knapp 3 km Entfernung liegt. Als erstes fügen wir eine 2 km lange Gerade an, es bietet sich Gleis M8ra2k00 an. Die 8 sagt uns, daß sich der Zug 8 Slots lang auf dem Gleis aufhält. Der Buchstabe k bezeichnet die Länge, wobei ich eine erweitere Hexadezimalnotation verwende. Es bedeuten:

a00 | 1000 m
c00 | 1200 m
f00 | 1500 m
g00 | 1600 m
i00 | 1800 m
k00 | 2000 m
o00 | 2400 m

Dieser Kunstgriff war notwendig, um die Namenskonventionen für lange Schienen beibehalten zu können. Da die Verwendung älterer Software, die nur kurze Dateinamen erlaubt, nicht verwehrt werden soll, habe ich mich an die alten DOS-Konventionen gehalten. Nicht, daß ich sie gut fände, aber es ist auch vor 5 Jahren schon gute Software entstanden. Es folgt die bewegte Brücke M6Br2F00 mit z.B. %9=211.

Wir sehen den Interregio, der gerade dabei ist, die Auffahrt hinaufzufahren.

Mit nur 5 Makros haben wir einen Bahnhof, eine bewegte Schranke, eine Flußbrücke und 4,2 km Strecke geschafft und verbrauchen dafür 28 KB Speicher. Bei einem Parameter Reichweite von 7000m und einer Variablen $arvis=3 befinden sich immer 20 km einer linearen Strecke im Speicher, bei einer Dichte wie hier also etwa 140 KB.

Da der Übergang zwischen zwei Objekten immer am Boden stattfinden muß, besteht eine Brücke für bewegte Züge aus einer Anfahrt, einer Rampe, der Brücke, einer Rampe und noch einer Anfahrt – damit ist sie lang und klobig. Im Original sind die Brückenauffahrten oft kurvig, dies ist nur mit statischen Bahnen und für FS2000 möglich.

Wir fügen als nächstes eine Linkskurve um 30 Grad mit 3000m Radius an. Für lange schnelle Züge empfiehlt es sich, große Radien zu wählen. Die Kurve MC230R30 haben wir schnell gefunden. Wir bekommen einen Dialog, der uns informiert, daß diese Kurven verschiedene Geschwindigkeiten erlaubt.

Für unseren Zweck ist 6 Intervalle angemessen. Wir fügen noch eine Gerade M4Ra2800 an, um den Zug etwas abzubremsen.

Wir sehen, daß der Interregio zu den Zügen gehört, die sich in einer Kurve biegen.

Anschluß einer bewegten Nebenbahn

Nun soll ein Bahnhof folgen mit einer Nebenbahn Richtung Süden (Dieselzug#117). Die Nebenbahn soll kurz vor dem Interregio eintreffen und kurz nach ihm abfahren.

Dazu fügen wir ( aus dem Dialog für bewegte Bahnhöfe oder bewegte Weichen) die Parallelweiche MPr222st mit Ende 2 ein. Diese ist eine Gerade mit einem bewegten Zug plus einer parallelen statischen Strecke. Wir haben nun zwei Endpunkte in Richtung 148. Der erste ist das gerade durchfahrende Gleis mit dem Interregio, das zweite ist die statische Strecke. An den ersten Endpunkt mit Richtung 148 fügen wir das südliche Ende von Bahnhof M2st2500 an, lassen den Interregio 6 Slots lang halten, und benutzen die Parameter (%9=653). Die ersten drei hat uns das Programm vorgeschlagen, den vierten (kursiv geschriebenen) wählen wir für das Aussehen der Bahnsteige inklusive Stadt. An den anderen (passiven) Endpunkt mit Richtung 148 hängen wir das nördliche statische Ende vom M2st250e mit Dauer 8 und den Parametern (%7=117,%9=30).

Wir beobachten die gewünschte Reihenfolge des Programmablaufs – der komfortable Nahverkehrszug kommt vor dem Interregio und fährt nach ihm ab. Wie man sieht, Simulatoren haben immer ein stark idealisiertes Bild der Wirklichkeit. An den letzten Endpunkt hängen wir nun das nördliche Ende der bewegten Gerade M1adap12, um die Nebenstrecke einspurig zu machen, und eine Rechtskurve MC145R07 für drei Slots ohne Oberleitung – später können wir hier weitermachen.

Einfügen weiterer Stellwerke

An das zweispurige Ende hängen wir der Reihe nach die Geraden M8Ra2g00,M8Ra2k00,M8Ra2k00 und die Brücke M6Br2F00 (wegen der Straße ) an. Nun wählen wir die Funktion "Zeichne Bahn" und bekommen, nachdem wir alle Fenster vergrößert haben, das folgende Bild.

Diese Karte muß man lesen können, daher einige Erklärungen. Schienen werden rot, Brücken blau, Bahnhöfe hellgrün dargestellt. Die eingleisige Strecke ist gestrichelt. Der weiße Bogen ist ein Ausschnitt aus einem Oval und zeigt den Einflußbereich, in dem das Stellwerk den Verkehr steuert. Wir sehen, daß wir kurz hinter dem zuletzt gebauten Bahnhof seinen Bereich verlassen – wir müssen also ein neues Stellwerk anfügen. Wir fügen ein Stellwerk (Menü Eisenbahn) nahe am südlichen Endpunkt ein. Mit einer erneuten Karte sehen wir, daß der Überlapp minimal ist, wir lassen es so.

Wenn uns der Überlapp zu groß ist oder ein Spalt besteht, können wir mit dem Dialog Gleis ändern die Koordinaten des Stellwerks modifizieren, bis es optimal liegt. Dies ist einfach, solange das Stellwerk das letzte Objekt ist.

Zweizugbetrieb

Die meisten Makros ( die eingleisigen Schienen ausgenommen) erlauben die Benutzung von zwei Zügen (gleichen oder unterschiedlichen) innerhalb eines Zyklus. Wir wollen dies nun üben, indem zu unserer Strecke von rechts eine zweite mit einem Regionalzug (#109) hinzustößt. Dazu benötigen wir eine Weiche, die drei zweigleisige Strecken zusammenführt. Bei den bewegten Geraden finden wir hierfür das Makro M2swi222. Wir wollen deren rechtes nördliches Ende anfügen, dem Dialog entnehmen wir, daß dies Ende 1 ist.

Nun müssen wir dem Vorschlag noch den zweiten Zug hinzufügen. Lassen die Regionalbahn 11 Slots vor dem Interregio hineinfahren und 11 Slots nach dem Interregio herauskommen. Also modifizieren wir die für den zweiten Zug vorgesehenen Felder wie folgt:

Dabei kommt die 0154 wie folgt zustande: Der Interregio fährt von Nord nach Süd in Slot 12, die Regionalbahn soll 11 Slots davor sein – macht 01. Der Interregio fährt Süd - Nord in Slot 43, die Regionalbahn kommt 11 Slots später. Probleme haben wir auf dieser Weiche auch nicht, alle vier Zeiten sind ausreichend getrennt.

An das neue Ende, daß unter 324 Grad liegt, legen wir nun eine Linkskurve MC245R07 mit 4 Slots Dauer an, an das südliche Ende (146 Grad) eine Gerade M4Ra2800. Wir sehen, daß FSRail uns nun auch den zweiten Zug anbietet – auf den Weichen fährt der erste Zug immer auf dem rechten Zweig, der zweite auf dem linken.

Nun haben wir eine Strecke mit doppelter Verkehrsdichte und werden damit etwas spielen. Vorher aber vergessen wir nicht, an das Ende (279 Grad) die Schranke M1ba2100 mit Breite 70 anzufügen, sicherheitshalber um die Straße abzusichern.

Jetzt machen wir mit dem südlichen Ende (146 Grad) weiter und fügen einen Bahnhof M2st2500 mit 5 Slots Aufenthalt und %9=663 mit seinem nördlichen Ende an.

Beide Züge halten in diesem Bahnhof, so behalten sie ihren Abstand. Wir machen weiter mit einer Rechtskurve MC230R15 (4 Intervalle) und einem Gleis M8Ra2g00. Es folgt eine Kleinstadt, in der die Regionalbahn hält, der Interregio aber durchfährt. Der passende Bahnhof ist M1st220d. Für diesen Bahnhof gilt, daß der primäre Zug hält und der sekundäre durchfährt. In unserem Beispiel ist der primäre Zug der Interregio und der sekundäre die Regionalbahn, wir müssen diese also vertauschen. Dafür machen wir einen Shift Linksklick auf den Endpunkt und wählen den letzten "Vertausche" aus.

Hier haben wir nun alle Information zusammen, die den Endpunkt ausmacht, und können sie manuell ändern. Dies gibt dem erfahrenen Modellbahnbauer viele neue Möglichkeiten. Wir wollen nur eine Standardaufgabe lösen, nämlich den primären und den sekundären Zug vertauschen, und das geht auf Knopfdruck. Nun können wir den Bahnhof M1st220d mit seinem Südende, 6 Slots und %9=172 anfügen. Es folgt noch M8Ra2800, und dann sehen wir uns das Ergebnis an.

Der Überholbahnhof

Der Abstand zwischen Interregio und Regionalbahn ist sehr klein geworden – auf dem nächsten Bahnhof soll die Regionalbahn halten und der IR sie überholen. Dies könnten wir einfach erledigen, indem wir den Bahnhof M2st450d benutzen und den Regionalzug etwa 8 Slots halten lassen. Wir haben aber Größeres vor. Dazu benutzen wir die etwas längere Version der uns bekannten Weiche, M2swi222 und fügen deren südliches Ende an. Wir werden gefragt, wohin der primäre Zug fahren soll, seit dem Tausch ist dies die Regionalbahn. Schicken wir diese nach links.

Nun haben wir inzwischen 5 Endpunkte, aus unserer Strecke Richtung 176 Grad sind nach links der mit 174 und nach rechts der mit 178 Grad hervorgegangen. An den östlichen fügen wir nun den Bahnhof M1St2200 mit südlichem Ende an, wobei wir ihn wieder manuell auf 176 Grad drehen. Als Aufenthaltsdauer wählen wir 9, als Parameter %9 einen Wert 283.

Wir sehen, daß ganz richtig der Zug 109 im Bahnhof hält. An das Ende mit Winkel 178 Grad setzen wir unter 176 Grad das Gleis M1Ra2200 an.

Nun haben wir bereits den Bahnhof und das Überholgleis funktionsfähig – und stehen vor einem neuen Problem. Wir haben bisher immer ein Gleis an ein anderes gehängt, nun müssen wir die Weiche mit beiden Nordenden an zwei Endpunkte anhängen. Die Geometrie ist egal, aber für das Zeitverhalten brauchen wir beide. Dafür brauchen wir ein Blatt Papier und einen Stift, oder Notepad, oder ein gutes Gedächtnis und gehen wie folgt vor. Wir fügen probehalber Ende 3 von M2swi222 an den zuletzt erzeugten Endpunkt an und bekommen die Zeitvariable für Zug 222, in unserem Fall 5203. Dies merken wir uns und drücken auf Abbruch oder, falls wir schon OK gedrückt haben, löschen wir das Gleis wieder. Nun fügen wir (unter 178 Grad) Ende 1 vom M2swi222 an und tragen die gemerkte Zeitgröße und die Zugnummer von Hand ein.

Fertig. Wir können nun die Endpunkte aufräumen. Zugegeben, ein Überholbahnhof ist nicht einfach zu machen, aber für eine echte Modellbahn inklusive Steuerung brauchen Sie bestimmt länger. Wir fügen noch ein Stück M8Ra2g00 an, um unser Werk zu betrachten.

Haben Sie dieselben Zeiten erhalten durch all die Schienen wie ich?

Krach! Ein Unfall! Der Interregio kracht mit der entgegenkommenden Regionalbahn zusammen. Die Scherben überlasse ich Ihnen – und Experimente, wie man dies vermeidet.

Nun kennen wir schon fast alle Elemente, um auch komplexe Bahnhöfe zu gestalten. Um statische Bahnen über bewegte Bahnen zu führen, gibt es die Makros M1br2nxx. Fügen wir Makro M1Br2220 mit Ende 2 am südlichen Ende an, %9 = 3 schaltet die obere Oberleitung ein. Um zwei bewegte Gleise zu kreuzen, empfehle ich die großen Brücken zu verwenden. Ein Makro, daß symmetrisch aufgebaut ein Gleis über ein anderes führt, wäre einfach zu unhandlich und in der Praxis unbrauchbar. Es gibt zwar unter gewissen Winkeln bei FS95 und FS98 Durchscheineffekte, aber bisher ist mir nichts Besseres eingefallen – und das Problem ist mit FS2000 verschwunden.

Drei weitere Gleise M8Ra2g00 führen uns weiter südlich, und wir müssen das nächste Stellwerk einfügen. Die optimale Lage ist N49:45:40.

Zum Schluß wollen wir noch einige Makros kennenlernen, die den Design von sehr großen Bahnhöfen erleichtern, und die Bahn in einem Kopfbahnhof beenden.

Im Dialog "bewegte Bahnhöfe" suchen wir das Makro M2Pa2xx3, wie der Name schon andeutet, eine echte Doppelkreuzung mit Automatiksteuerung. Dieses Makro unterstützt 2 verschiedene Züge zu je 2 verschiedenen Zeiten, also bis zu 8 Züge pro Zyklus. Mit dem Parameter%3 läßt sich einstellen, ob die Züge immer parallel fahren (%9=0), sich alle kreuzen (%9=1) oder abwechselnd parallel und gekreuzt fahren (%9=2). Wir wollen die dritte Möglichkeit benutzen, um unsere beiden Züge wieder zu trennen. Vorher aber benutzen wir die Endpunktmenüs, um alle Endpunkte außer dem letzten zu exportieren.

Wir wählen also das Makro M2Pa2xx3 aus und haben die Wahl zwischen 4 Endpunkten.

Endpunkt 2 und 4 können gemischt sein, wir wählen also Endpunkt 2.

Den Wert für %9 und den zweiten Zug müssen wir von Hand nachtragen – FSRail konnte nicht ahnen, was wir vorhaben. Immerhin schlug es uns die zweite Zeitinformation (im anderen Feld) richtig vor. Der geübte Leser wird das Makro wie folgt lesen: Zug 109 ist der primäre Zug und fährt immer geradeaus weiter. Er kommt kein zweites Mal vor. Zug 222 kommt nur einmal vor, in seinem zweiten Auftreten. Also fährt der IR immer durch die Kreuzung. In %13 und %15 können weitere Zeiten ( für das zweite Auftreten der Züge )eingetragen werden, Experimente damit bleiben dem Benutzer überlassen. Ein Eintrag in %13 würde ein weiteres Auftreten von Zug 109 bedeuten, diesmal über Kreuz von Ende 4 nach Ende 1. %15 beschreibt einen IR von Ende 4 nach Ende 3.

Also sind wir nun ganz mutig und nutzen dieses Makro voll aus. Wir entfernen es und fügen es nochmals an (mit Ende 2), wobei wir alle vier Zugpaare programmieren.

Bitte schreiben Sie neuen Zahlen genau ab. Hätten wir das Makro nicht gelöscht und neu erzeugt, würde diese zusätzliche Information nicht in die Endpunkte einfließen, deshalb dieser Schritt. An das nördliche Ende (356 Grad) fügen wir noch eine Rechtskurve MC230R15 (4 Intervalle) an.

Kompilieren wir die Landschaft und betrachten wir den regen Zugverkehr auf unserer Doppelkreuzung. Sie hat nun eine Sortierfunktion – am einen südlichen Ende fahren nur IR, am anderen nur Regionalbahnen. Wollten wir eine weitere Doppelkreuzung der gleichen Funktionalität südlich anschließen, müßte dies mit den Enden 1 oder 3 – die Zügen würden mit anderen gemischt. Dem Bau größter Bahnhöfe steht damit nichts mehr im Wege.

Der Kopfbahnhof

Kommen wir zum Abschluß unserer Strecke mit einem weiteren Leckerbissen. Der große Kopfbahnhof mit zwei Doppelgleisen. Jedes Gleis kann einen Zug zweimal pro Intervall tragen, also kam uns die Sortierkreuzung gerade recht. Wir haben zwei südliche Endpunkte, der erste davon ist der rechte mit Zug 109, der zweite ist der linke mit Zug 222. Fangen wir mit dem ersten an und fügen das Makro Mkopfb10 an. Der Zeichnung entnehmen wir, daß Ende 1 das richtige ist. Wir entscheiden uns für 9 Slot Aufenthalt. Zug 109 wird zweimal eingeplant, für das andere Gleis könnten wir weitere Züge setzen. Den Parameter %9 setzen wir auf 3. Einen Eingriff müssen wir noch vornehmen: Falls FSRail für %8 den Wert 0 vorschlägt, ist dies nicht richtig, denn hier steht, wie lange die Züge im Bahnhof stehen. Den Wer müssen wir von Hand auf 90000 setzen.

An das andere Südende fügen wir Ende 2 eines weiteren Mkopfb10 an mit 9 Slots und %9=3.

Auf unserem Bahnhof herrscht nun reges Leben, und wenn wir die unbenutzten Gleise in Betrieb nehmen und noch mehr Bahnhöfe über weitere Doppelkreuzungen integrieren, wird so mancher Modellbahner ins Schwärmen kommen.

Nun wünsche ich Ihnen viel Spaß beim Weitermachen – ich denke, Sie haben genug gelernt.

Wie Sie einen bewegten Zug mittels einer Brücke über eine anderes Gleis führen wollen, lesen Sie das Kapitel über freie Brücken und die Hinweise im Kapitel über Autobahnen.

Züge, Lokomotiven und Wagen

Meine Züge sind keine alleinstehenden Objekte, sie sind immer Teil eines sie tragenden Gleises. Jedes Gleis kann jeden Zug tragen, auch wenn für manches Gleis lange Züge keinen Sinn machen. Welchen Zug ein Gleis trägt, wird durch eine Zahl festgelegt, die bei allen Makros die Variable %7 ist. Die Züge sind in folgende Klassen eingeteilt:

Beschreibung | Steuerdatei | Zugnummer
Einfache kurze Züge | Trainsim.inc | 1-99
Nahverkehrszüge | Trainloc.inc | 100-199
Expreßzüge | Trainexp.inc | 200-499
Güterzüge | Traincar.inc | 500-999
Wagen ohne Loks | Waggons.inc | 1000-1999
Einzelne Lokomotiven | Loks.inc | 10000-

Dabei gibt es für jeden Zug eine Datei, die seine Eigenschaften beschreibt. Manchmal beschreibt eine Datei auch zwei Züge, die sich nur in der Farbgebung der Lokomotive unterscheiden. Die Datei für den Zug#222 ist z.B. die Datei ..\includes\Train222.inc.

Je nach Wert des Parameters %7 wird der entsprechende Zugcode in das Makro eingefügt.

Für die verschiedenen Zugklassen geschieht dies in den oben angeführten Steuerdateien, die auch für jeden Zug einen kurzen Beschreibungstext enthalten. Wenn Sie also z.B. ein Bahn in Frankreich bauen wollen, durchsuchen Sie obige Dateien nach SNCF.

Eigene Züge

Obwohl Sie mit FSRail Hunderte von unterschiedlichen Zügen bekommen, werden Sie doch rasch feststellen, daß Ihnen noch einer fehlt. Es ist recht einfach, für FSRail eigene Züge zu entwerfen. Die Form ist das Komplizierte, die Farbgebung sehr viel einfacher. Suchen Sie also einen Zug, der in der Form Ihren Wünschen entspricht. Nehmen wir an, Zug 109 ist passend. Editieren Sie die entsprechenden .inc – Datei (Train109.inc), und speichern Sie sie unter einem freien Namen (train199.inc) ab. Sie werden darin einige wenige Vorkommen des Befehls Bitmap( BRvsnnn.pat 0 0 0 0 ) finden, in unserem Fall nur BRVS423.PAT. Öffnen Sie mit einem Malprogramm Ihrer Wahl die dazu gehörenden Dateien BRvsnnn.bmp im Verzeichnis Bitmaps, als Beispiel sehen Sie BRVS423.BMP.

Die Bitmaps lassen sich mittels kleiner Konverter in die Texturen (.pat) übersetzen, entsprechende Programme finden Sie entweder im Internet, oder Sie benutzen das auf der CD-Version enthaltene Programm BRTex, welches Martin Wright freundlicherweise zur Verfügung gestellt hat. Sie werden schnell sehen, daß die Front- und Seitenflächen der Züge hier zu finden sind. Speichern Sie auch die Bitmaps unter anderem Namen ab, und lassen den neuen Zug auf die neuen Dateien zeigen, indem Sie die Bitmap() - Instruktionen ändern. Nun ändern Sie die Bitmaps nach Ihren Wünschen (z.B. färben sie orange) und konvertieren sie zu Texturen. In die Steuerdatei (im Beispiel Trainloc.inc fügen Sie den Aufruf zu Ihrem neuen Zug ein, indem Sie den alten Eintrag in die Zwischenablage kopieren, am Ende einfügen und entsprechend modifizieren:

; Regiobahn double deck orange train Lok 143

mif( [ $train == 199 ] )

include( ..\includes\train199.inc )

mifend

Nun können alle ihre Makros, wenn sie mit der Nummer 199 einen Zug rufen, den neuen Zug benutzen – der Einführung neuer Farbschemata und neuer Bahngesellschaften steht nicht mehr im Weg.

Eigene Schienenmakros

Knapp 1500 Makros sind nicht genug – Sie werden irgendwann anfangen, selbst welche zu entwerfen. Auch dies ist nicht so schwierig, und FSRail hat Vorsorge getroffen für nochmals etwa 1500 Benutzermakros. Die häufigste Ursache wird sein, daß Sie für die Anpassung bewegter Bahnen Längen brauchen, die nicht vorhanden sind. Eine Schiene kann ruhig etwas zu lang sein, aber zu kurz und viel zu lang geht halt nicht. Auch ist für bewegte Bahnen daß Anfügen vieler kurzer Stücke nicht erstrebenswert. Gehen wir zurück zu unserem Beispiel mit bewegten Bahnen. Bei der zweiten Schiene, der Bahnschranke, waren 200m zu kurz und 250m zu lang. Sie werden jetzt lernen, wie Sie eine Schranke von 220 m anfertigen und mit FSRail benutzen.

Wir gehen von M2ba2200.api aus und kopieren es nach M2ba2220.api. Nun editieren wir M2ba2220.api. Alle FSRail Makros werden im Maßstab 0,25 benutzt, 200m in der Natur entsprechen daher 800 m in den Makros. Sie gehen daher von +400 nach –400 in der Zurichtung. (Manche gehen auch von +401 nach –401, um einen kleinen Überlapp zu garantieren). Um Sie zu strecken, müssen wir daher in jedem Vorkommen von 400 als Z-Komponente dies durch 440 ersetzen, und 401 durch 441.

Beispiel (es gibt mehrere Vorkommen der 400):

Points( 4

-16 $level -400 ; 4

16 $level -400 ; 5

16 $level 0 ; 6

-16 $level 0 ; 7

-16 $level 400 ; 8

16 $level 400 ; 9

)

Auch bei der Definition der Längenvariablen $len ersetzen wir 400 durch 440, und in der Makrobeschreibung 200 durch 220. Abspeichern, fertig ist die 220m Schranke.

Wie können wir dies nun mit FSRail benutzen?

Als erstes benutzen wir einen Teil von FSRail, den wir noch nicht kennengelernt haben, um die Parameter des neuen Objektes in die Datenbank aufzunehmen. Wir starten FSRail neu und wählen "Dialoge Ändere Geometriedatenbank"

Ein neuer Dialog läßt uns die Schiene aussuchen, die wir ändern wollen. Da wir eine hinzufügen, wählen wir die erste freie Schiene. Nun geben wir den Namen ein und drücken "ändere diese".

Nun können wir den Typ des Objekts wählen. In unserem Beispiel kreuzen wir die Frage "Unterstützt bewegte Züge" an und drücken "Schranke". FSRail möchte wissen, wieviel Enden das Gleis hat, unser Beispiel hat zwei. Nun fragt es nach den geometrischen Eigenschaften jeden Endpunktes. Für den ersten geben wir das folgende ein:

Wir lesen dies wie folgt: Das Ende ist genau 440 Einheiten = 110 m nördlich vom Mittelpunkt, zeigt nach Norden ( 0 Grad ), ist auf Höhe 1 und zweigleisig. Die analogen Eingaben für das zweite Ende sind:

Achten Sie auf das Vorzeichen bei der Koordinate und darauf, daß dieses Ende nach Süden (180 Grad) zeigt.

Bei bewegten Makros wird zusätzlich noch die Information über das Zeitverhalten benötigt.

Grundsätzlich kann ein Makro drei Phasen haben, eine Einfahrt, eine Mittel – und eine Ausfahrtphase. Die zweite Dauer kann abhängig vom Wert der ersten Stelle von %8 sein. Für den Bahnhof M2st2500.api z.B. heißen die entsprechenden Einträge 2,-1,2. Wir beenden den Schieneneditor, FSRail kennt nun die Eigenschaften des Gleises.

Wenn wir die Straßenenden unserer Schranke auch benutzen wollten, hätten wir 4 Enden ankreuzen müssen, die Gleisbreite für Straßen ist –1.

Um das neue Gleisstück einzubinden, wählen wir im bunten Dialog "Typ des Objekts" in der Mitte auf "Benutzerdefiniertes Gleis" und bekommen einen Dialog, in dem wir den Namen des neuen Objekts (ohne Endung) eintippen können.

Wenn wir die Groß und Kleinschreibung wie für die Datenbank gemacht haben, wird das richtige Makro eingefügt und weiter analog zu seinem Typ behandelt.

Eine weitere, bei 3D – Designs vorkommende Aufgabe wird es sein, eine Rampe zu entwickeln, die eine andere Steigung als die vorhandenen hat. Als Beispiel dafür möchte ich zeigen, wie aus der Datei M1st2200 (einem 200 m langen, ebenen Bahnhof die Datei M1st22c0 entstanden ist, die – ebenfalls 200 m lang – um 2 m ansteigt. Vorweg etwas Mathematik. 2 m Steigung auf 200 m ergibt sich, wenn wir um einen Winkel atan(2/200) kippen, dies ist 0,5279 bzw. 359.4721 Grad je nach Richtung.

In der Datei M1st2200.api finden wir zwei Zeile, die mit der Drehung der Schienen (:A) und der 3-dimensionalen Teile inklusive Zug zu tun haben:

RotatedCall( :A 0 0 %5 )

RotatedCall( :B 0 0 %5 )

Vergleichen wir diese mit M1st22c0, so finden wir dort:

RotatedCall( :A 359.4271 0 %5 )

RotatedCall( :B 359.4271 0 %5 ),

dies können wir nach den obigen Ausführungen verstehen.

Nun muß nur noch in der Geometriedatenbank die veränderte Geometrie eingetragen werden.

Die Höhen der beiden Enden sind für M1st2200 gleich 1, es ist waagerecht. Für M1st22c0 ist das nördliche Ende 1m=4 Einheiten oberhalb, das südliche Ende 4 Einheiten unterhalb des Grundniveaus (1). Also sind die richtigen Höhen 5 bzw. –3, ansonsten sind die Geometriedaten wie bei M1st2200.

Damit habe ich Ihnen gezeigt, wie die vorhandenen Makros benutzt werden, wie eigene Züge und eigene Schienen gemacht und eingebunden werden können.

Es bleiben natürlich noch immer Dinge offen, die eine Modellbahn ausmachen. Einzig der Bereich Flughäfen ist im Flugsimulator eindeutig besser realisiert als in allen Modellbahnen. Häuser und sonstiges Zubehör gibt es, aber das Angebot ist bei weitem nicht so reichhaltig wie bei den einschlägigen Firmen. Meine Empfehlung gilt hier dem Programm VOD von Rafael Sanchez, daß es mit kurzer Übung erlaubt, Häuser und ähnliche Objekte zu entwerfen.

Für die Gestaltung von Landschaften ist AIRPORT ein guter Einstieg, leider wird dieses Programm seit einiger Zeit nicht mehr weiterentwickelt. ASD von Abacus in der Version 2.0 ist für den Design von Landschaften heute das Standardprogramm geworden. SCCreate ist ein neuer Stern auf der Bühne, und ich hörte nun, daß auch Airport weiterentwickelt wird.

Freie Brücken

Wir haben bisher zwei Formen von Bahnbrücken kennengelernt: Die Brücken, die zwei übereinanderliegende Gleise haben, und diejenigen, bei denen nur ein hochliegendes Gleis existiert. Manchmal ist es wünschenswert, eine Brücke vom zweiten Typ über ein anderes Gleis zu legen. Dies ist auch möglich, ergibt aber meistens aus gewissen (nur FS95 und FS98) Beobachtungspositionen Durchscheineffekte. Den Rest diese Kapitels können Benutzer von FS2000 überschlagen. Auch diese können mit Hilfe von FSRail vermieden werden. Sie sind nur dann ausgeschlossen, wenn unteres Gleis und Brücke an genau derselben Position legen, und die Brücke nach dem Gleis gezeichnet wird. Dafür legen wir als erstes das untere Gleis, z.B. eine Kurve. Sofort darauf drücken wir auf "Lege Gleis", uns werden nun die Koordinaten des letzten Gleises vorgeschlagen. Die Richtung ergibt sich aus der Richtung des letzten Gleises + 90 Grad, bei Kurven wird dies selten der gewünschte Wert sein. Wenn wir nun die Brücke legen, bekommen wir den gewünschten Effekt.

Die Koordinaten des letzten Gleises stehen nur nach dem Legen zur Verfügung, nicht mehr nach einigen weiteren Operationen. Als Beispiel sehen wir eine Autobahnbrücke über ein gebogenes Gleis, es führt uns schon in das nächste Kapitel weiter.

Grundsätzlich muß immer zuerst das untere Gleis und dann die Brücke gelegt werden. Falls der Design erfordert, an einen bestehenden Endpunkt eine Brücke anzulegen, ist das Vorgehen wie folgt: Als erstes fügen wir die Brücke an und löschen sie wieder. Damit haben wir die Koordinaten gewonnen. Wir legen das Quergleis und fügen dann die Brücke nochmals an – die Reihenfolge stimmt.

Autobahnen

Als kleine Zugabe zu FSRail habe ich einige Autobahnmakros geschrieben, die die Technik von FSRail verwenden, um bewegten Autoverkehr zu erzeugen. Insbesondere werden auch die Autobahnen durch die Stellwerke gesteuert.

Einige grundsätzliche Fragen waren zu klären. Während der typische Bahnverkehr eine geringe Anzahl von Zügen hat, die der Designer programmieren will, kann die typische Verkehrsdichte von Autobahnen nicht durch einzelnes Programmieren geschehen, es geht also nur darum, fließenden Verkehr zu erzeugen. In dem Versuch, den ich nun vorstelle, habe ich eine Zykluszeit von 8 Slots gewählt, d.h., die Fahrfolge wiederholt sich alle 48 Sekunden. Kürzere Zeiten sind zu offensichtlich, längere würden die Makros noch größer machen und die Programmierung erschweren. Deshalb haben diese Makros alle Namen der Form M8H... . Die Variable $Slots in der Datei ..\includes\slots.inc muß also durch 8 teilbar sein, wenn diese Makros verwendet werden sollen. Daher empfehle ich, für Länder mit hoher Bahndichte ( Mitteleuropa z.B. ) den Wert 56, für Länder mit niedriger Bahndichte und vielen eingleisigen Bahnen den Wert 96. Der erste Wert bedeutet etwas mehr als 5 Minuten, im Bereich der Sichtbarkeit befindet sich im Durchschnitt ein Zug in jeder Richtung. Der zweite Wert bedeutet fast 10 Minuten, Züge sind selten zu sehen.

Um sie von Schienen zu unterscheiden, behandelt FSRail Straßen als Schienen mit Breite –1 und Autobahnen mit Breite –2. Falls zukünftige Versionen dreispurige Autobahnen unterstützen, werden diese –3 haben.

Schaffen wir eine neue Bahn an bekannter Position für bewegte Bahnen. Als erstes "Gleis" legen wir die Autobahn M8HW4000, ein Autobahnstück von 4 km Länge. Als Parameter wählen wir (11,1,0,0). Der erste Parameter schaltet zentrale Lampen und Hecken am Autobahnrand ein, der zweite steuert die Verkehrsabfolge. Neben einen der Endpunkte setzen wir noch ein Stellwerk.

Wie kann ein einziger Parameter diese Folge erzeugen? Wie immer, wenn bei FSRail etwas zu kompliziert wird, habe ich dies durch einen Include-Datei erzeugt. Die aufeinander folgenden Autobahnstücke haben alle die gleiche Wagenfolge, die einer Wagenliste definiert ist. Welche Wagenliste ..\includes\carlistn.inc benutzt wird, legt der zweite Parameter %7 fest. Momentan gibt es 9 verschiedene Listen carlist1 bis carlist9, falls mehr benötigt werden, kann dies für eine zukünftige Version leicht gemacht werden.

Autobahnen werden einfach aneinandergefügt: FSRail übergibt den Parameter der Wagenliste an die folgenden Makros. Das Autobahnkreuz kennt zwei Wagenlisten: eines für oben, eines für unten. So kann die Abfolge und Verkehrsdichte sich kreuzender Autobahnen unterschiedlich sein.

Die Größe der Autobahnmakros ist fast unabhängig von der Länge, hängt aber stark von der Verkehrsdichte ab. Deshalb ist es für Autobahnen unverzichtbar, sehr lange Stücke zu verwenden.

Das "Elevated Mesh" von FS2000 ließ den Wunsch nach flexibleren und kürzeren Autobahnmakros aufkommen. Da sich die Geschwindigkeit auf einer Autobahn aber nicht beliebig reduzieren lassen, geht dies nur, wenn man die Zahl der Slots von 8 reduziert. Dies aber ist in dem Konzept, in dem jedes Makro genau 8 Slots benötigt, nicht machbar. Ich fand dafür die folgende Lösung:

Ich schrieb einen Satz von kurzen Makros (Straßen von 100 - 250 m, eine 200 m Brücke, 200m lange Rampenstücke), die nur 2 Slots benötigen.

Von diesen müssen immer vier oder ein vielfaches davon benutzt werden. Wenn Sie das Programm genau verfolgen, werden Sie feststellen, daß es von jedem dieser Makros vier Versionen gibt, also z.B. M2HW200a, M2HW200b, M2HW200c, M2HW200d. Darum brauchen Sie sich aber nicht zu kümmern, FSRail hängt immer an einen a-Typ einen B-Typ usw. an, solange Sie immer vier dieser Makros hintereinander benutzen, werden Sie einen fließenden Verkehr beobachten, können aber dem Gelände viel besser folgen als mit den starren 800m - Stücken.

Falls Sie die folgende Fehlermeldung bekommen, versuchen Sie, ein M8H... Makro an einen anderen Typ als einen d-Typ anzuhängen - also können entweder Sie oder FSRail nicht richtig bis 4 zählen.

Vier M2H... Makros beeinträchtigen Szeneriespeicher und Bildrate genauso wie zwei M8H... Makros, also sind sie für FS98 unbrauchbar und werden nicht dafür unterstützt.

Die Straßenmakros M8Rollll werden genauso benutzt wie die Autobahnen, sind aber einfacher und unterstützen nur 2 gleich schnelle Autos. Mit diesen Makros können die überregionalen Straßen dargestellt werden. Die Kreuzung M8RX0800 wird durch eine Ampel gesteuert. Um sich flexibler der Umgebung anzupassen, können Sie auch die M2... Straßenmakros benutzen.

Für innerstädtische Straßen gibt es bisher keine bewegten Straßen, eine Anregung, wie eine Stadt geschaffen werden kann, kann der erfahrene Benutzer den Bahnhofsmakros ( z.B. M1ST2200.API ) entnehmen.

Genau wie bei den Schienen gibt es auch statische 3-D Straßen, die keine Fahrzeuge tragen. Diese können verwendet werden, um detailliertere Szenen darzustellen, z.B. enge Brücken. Einige statische Straßen befinden sich im Verzeichnis ../Details. Anpassungen von unterschiedlichen Längen werden Ihnen inzwischen leicht fallen. Diese Straßen sind dreidimensional, d.h., sie können sich über den Boden erheben und haben dann eine Böschung. Um diese Straßen dennoch unter Brücken benutzen zu können, benutzen Sie eine spezielle Technik, die ich HDDS genannt habe – height dependant dimension switching. Die Höhe über dem Boden wird mit den Parametern %7 am Nordende und %8 am Südende festgelegt. Solange die Summe der beiden Höhen kleiner als 4 ist, werden die Straßen als Flache Objekte behandelt – sie können nicht verdecken und durch nicht hindurch scheinen. Ist die Summe aber 5 oder größer, sind sie Hard und können anderes verdecken.

Meine 3-D Straßen verwenden texturierte Flächen. Diese sehen zwar hübscher aus, aber in manchen Fällen wäre es doch wünschenswert, die standardmäßig im Flugsimulator vorhandenen Straßen zu benutzen. Auch dies ist mit FSRail möglich – wir lernen nun die Karte etwas besser kennen.

Dreidimensionale Bahnen im "elevated mesh" des FS2000

Haben Sie bis jetzt alles brav im FS98 oder mit "Flatten Switch" im FS2000 durchgearbeitet? Beherrschen Sie eigene Makros und Züge? Wollen Sie nur noch das letzte I-Tüpfelchen kennenlernen? Nein, noch nicht? Dann gehen Sie zurück – Sie haben keine Chance. Ja? Dann vergessen Sie einfach alles. Es hat sich nicht verändert – außer der zugrundeliegenden Mathematik des Raumes.

Bei den statischen Bahnen konnten wir uns mit Anpassung von Höhen helfen, bei bewegten Bahnen haben wir dazu keine Chance. Also müssen wir von Anfang bis Ende mit expliziten Höhen arbeiten.

Glücklicherweise haben wir den Parameter Höhe (%3) bisher in Ruhe gelassen, jetzt reden wir nur noch über ihn, den Rest beherrschen Sie schon. Sobald der Wert von %3 nicht mehr =0 ist, passiert in den Makros eine ganze Menge. Sie bekommen kräftige Fundamente – schon deshalb ist ein Wert von %3=0 im FS95 und im FS98 zwingend vorgeschrieben – die Fundamente passen nicht ins alte Brett.

Das Vorgehen im FS2000 ohne "flatten switch" ist das Folgende: Zuerst erkunden wir das Terrain. Mit der Kartenansicht setzen wir das Flugzeug auf den gewünschten Ort mit Höhe 0. Erneutes Aufrufen der Kartenansicht nennt uns die aktuelle Höhe, in diesem Fall 255m. Besser ist natürlich, wenn Sie Ihr Vorhaben, Hubschrauberpilot zu werden, inzwischen in die Tat umgesetzt haben, dann können Sie überall landen und die Höhe bestimmen.

Sehen wir uns um: Läßt sich in diese Gegend überhaupt eine Bahn bauen, die nicht nur aus Tunneln besteht?

Addieren wir eins oder zwei zur gemessenen Höhe und legen wir ein Gleis, wobei wir die errechnete Höhe im Parameter Höhe (%3) eingeben. Das Ergebnis kann wie folgt aussehen (Beispiel ist M1Ra2200):

In diesem Falle sehen wir die Schiene schon, aber nicht vollständig. Das rechte Ende wird von der Landschaft bedeckt, also müssen wir die Schiene anheben.

Wir tun dies, indem wir das Änderungsmenü benutzen und die Schiene langsam anheben, bis sie als Startpunkt taugt. Wenn die Schiene nicht mehr flach auf dem Boden liegt, ist es notwendig, eine Farbe oder Textur für den Bahndamm zu wählen. Geben Sie hier 105 ein, dies ist die jahreszeitabhängige Grastextur.

Mit %9=100 sieht das obige Beispiel schon überzeugend dreidimensional aus. Wenn Sie allerdings am rechten Ende weitere Gleise auf gleicher Höhe anfügen, werden diese sich schnell im Hügel verlieren.

Dafür gibt es nun bewegte Rampenstücke. Wählen Sie "bewegte Gerade", die gewünschte Breite, "Rampen für Fs2000", und Sie haben eine Auswahl von Gleisen mit 1% bzw. 2% Steigung, die zwischen 2 und 12 m Höhenunterschied bewältigen. Bei all diesen Rampen ist das nördliche Ende oben und das südliche unten. Also ein Beispiel: Sie wollen mit einem Grad um 4 m steigen, daß richtige Gleisstück ist (mit einer kräftigen E-Lok, um die Geschwindigkeit von 135 km/h zu halten ) M1R2Cl04. Bei diesem Gleis ist die südliche Höhe –2m, die nördliche +2 m. Fügen wir also an unser erstes Gleis ( 257 m ) das südliche Ende an, so muß sich die Rampe auf mittlerer Höhe 259 befinden, und wir verlassen das Gleis bei Höhe 261.

Diese Höhen müssen wir (bis Version FSRail 0.89 ) im Kopf ausrechnen. FSRail tendiert dazu, die zuletzt benutzte Höhe vorzuschlagen. Ab Version 0.90 nimmt FSRail uns auch diese Arbeit ab.

Rampen gibt es in jeder Breite mit 1 Grad und 2 Grad Steigung. Nach meiner Erfahrung reicht dies für die meisten Szenerien aus.

Für ganz spezielle Anwendungen gibt es noch weitere Steigungen. M1R2Ch02 steigt auf 230 m Länge nur 2 m, dies entspricht etwa einem halben Grad. Die Geraden M1R2Ch01 (125 m Länge) bzw. M1R2Cl01 (62.5m) haben nur eine Höhendifferenz von einem m. Dafür sind Sie speziell passend als Ausgleichsstücke für die Weichen M1swi222 bzw. M1sws222, die es erlauben, im unebenen Gelände die Weichen gegenüber dem Bahnhof etwas anzuheben bzw. abzusenken.

Für ein- und zweigleisige Kurven gibt es ebenfalls Rampen. Diese haben eine Krümmung von 15 Grad und steigen um 4 m, sie unterscheiden sich durch die Radien und dadurch, bei welcher Orientierung sie ansteigen. Damit sind gekrümmte Auffahrten auf Brücken möglich.

Bei 3D-Designs ist es unabdingbar, jeden einzelnen Schritt zu überprüfen. Ist die Steigung zu niedrig, läuft das Gleis in den Boden. Ist sie zu hoch, wird der Damm unnatürlich hoch. Im hügeligen Gelände braucht jeder km erheblichen Geduldsaufwand, bis er perfekt paßt. Aber ich erinnere mich, für eine zweigleisige 360 Grad – Kurve zum Wechsel zwischen zwei Ebene meiner Modellbahn zwei Wochenenden gebraucht zu haben – und nun liegt es an Ihnen, Ihre reale Modellbahn und Ihre virtuelle Modellbahn zu bauen.

Da FSRail auch ermöglicht, über das Menü "Kartenbefehle" "Elevation" das Terrain zu verändern, sollten Sie überall eine Bahn legen können. Noch ein Tip dazu: Wenn Sie ein Höhenpolygon ändern wollen, dann machen Sie einen Rechtsklick oder Shift Rechtsklick auf das kleine Kästchen, daß sich am ersten Punkt des Polygons befindet.

Neu ab Version 1.15 von FSRail gibt es für die ganz hartgesottenen Benutzer einen Weg. selbst das Terrain zu gestalten.

Autobahnen in 3D Szenerien von FS2000

Bewegte und statische Autobahnen und Straßen lassen sich genauso durch explizite Höhenangaben in die dreidimensionale Szenerie einfügen. Geben Sie die korrekte Höhe in %3 ein, und wählen Sie eine passende Farbe für den Damm. Genau wie für die Bahnen gilt: Da Einschnitte in die Landschaft nicht möglich sind, müssen die Straßen immer auf kleinen Dämmen laufen – und die Dämme werden etwas höher als in der Natur sein, in der sich Dämme und Einschnitte abwechseln.

Die Rampenstücke überwinden die folgenden Höhenunterschiede:

| Autobahn | Straße
8m, 458 m Länge | M8HR0458 | M8RR0458
14m, 800 m Länge | M8HR0800 | M8RR0800
28m, 1600 m Länge | M8HR1600 | M8RR1600
28m, 800 m Länge | M8HRx800 | M8RRx800
4 m, 456 m Länge | M8Hc0456 | M8Rc0456
7 m, 800 m Länge | M8HRh800 | M8RRh800
5 m, 800 m Länge | M8HRt800 | M8RRt800
3.5 m, 800 m Länge | M8HRq800 | M8RRq800
2 m, 800 m Länge | M8HRe800 | M8RRe800

Veränderungen des 3D - Terrains (Benötigt SCASM 2.39.)

Sie wollen 3D - und die Standardszenerie reicht nicht aus? Sie wollen eine Flußlauf zum Meer folgen - und plötzlich steigt dieser steil an? Die schlechte Nachricht ist, daß kein Designprogramm bisher das "elevated mesh" verändern kann. Eine Ausnahme : FSRail. Sie brauchen SCASM 2.39 oder höher, um diese Funktion zu nutzen. Sie sehen hier das Rheintal bei Bingen, wie die Microsoft Szenerie es produziert..

Wählen Sie "Kartenbefehle" "Elevation". Klicken Sie auf die Ecken des Polygons, welches Sie auf eine Höhe setzen wollen, mit einem Rechtsklick auf den letzen Punkt, und geben Sie die gewünschte Höhe in Meter an. Das Ergebnis ist verblüffend:

Ein schönes Tal öffnet sich. Sehen Sie im Beispiel Rhein1.scm, wie diese Funktion zur Reparatur der Standardszenerie benutzt werden kann. Mir scheint, daß Polygone zwischen 3 und 12 oder mehr Punkte benutzt werden können, um Höhen zu definieren. FSRail erlaubt, Polygone mit bis zu 14 Punkten zu editieren. Mehrere Höhenpolygone können aneinander angefügt werden.

FSRail enthält eine Methode, das dreidimensionale Terrain zu verändern. Mit "Kartenbefehlen" "Elevation" können Sie ein Polygon bestimmen und seine Höhe in m über NN festlegen. So wie ich hörte, dürfen diese überlappen, ich empfehle dies aber nicht. Zwischen zwei Polygonen unterschiedlicher Höhe müssen Rampen benutzt werden.

Zur Zeit ist die Genauigkeit der wirklich verwendeten Eckpunkte unbekannt. Bei Tests stellte ich fest, daß Verschiebung um 10 Sekunden sichtbar waren. Die genau Lage hängt sicher auch davon ab, ob für die umgebende Szenerie "Rundung" eingestellt ist. Ich beobachtete, daß manchmal kleine Änderungen der Polygonkanten große Auswirkungen hatten, vermutlich dann, wenn ein Gitterpunkt der Szenerie gerade vom Polygon bedeckt wird.

Sie sehen hier ein Beispiel mit einem Satz von 5 Polygons, die ausreichten, das Rheintal zwischen Bingen und Koblenz zu reparieren. An jedem Polygon sehen Sie ein kleines Kästchen.

| Ein Shift Klick mit der rechten Maustaste listet Ihnen das Polygon. Sie können diese Liste editieren, um die Eckpunkte genau dahin zu bringen, wo Sie es wünschen. Polygone können konkav sein. Es ist unbekannt, wie viele Ecken ein Polygon haben kann. In der Szenerie von Microsoft wurden Polygone mit drei bis 9 Ecken gefunden. Ich habe den Eindruck, daß auch 12 Ecken noch funktionierten - FSRail kann technisch bis zu 14 Ecken verwalten. Bitte experimentieren Sie mit diesen Möglichkeiten, und legen Sie das Terrain fest, bevor Sie die Schienen legen. Falls das Ergebnis nicht Ihren Erwartungen entspricht, versuchen Sie es mit einfacheren Polygons. Beim Aneinanderfügen mehrerer solcher Elevationpolygone mit unterschiedlicher Höhe habe ich beobachtet, daß die einzelnen Flächen nicht exakt eben sind, sondern kontinuierlich ansteigen. Zusammen mit den 3D - Rampenstücken ist so ein Verlauf von Bahnlinien durch Flußtäler leicht machbar. Da ein benachbartes Polygon Auswirkungen auf den exakten Terrainverlauf innerhalb eines anderen hat, empfehle ich, zuerst zumindest die nächsten 2 - 3 Elevationpolygone zu legen, und dann erst die Bahn einzufügen. Im Verzeichnis ..\Examples befindet sich eine Szenerie BadKreuz.scm, in der Sie sich das Zusammenspiel von Ausschluß der Standardszenerie, Hintergrundbitmaps, Markern, Elevationpolygonen und 3-dimensionalem Bahndesign ansehen können.

An einer Stelle stieß ich auf einen Berg, über den ein Fluß floß, der sich mit Elevationpolygonen nicht beeinflussen ließ. Es dauerte etwas, bis ich herausfand, daß um einen auf einem nahen Berg liegenden Sportflughafen herum eine recht große Flattenarea gezogen war. Durch Einfügen eine Flattenzeile von 2 x 1 Bogenminute konnte ich das südlichste Ende dieser Fläche absenken. Es scheint also so zu sein, daß Flattenbefehle immer Elevationpolygone überschreiben.

Falls Sie mit dieser Methode noch nicht zufrieden sind, und es kein detailiertes Mesh von Ihrer Gegend gibt, müssen Sie selbst sich Ihr Terrain schaffen. Vergleichen Sie das Bild rechts mit dem oben - und Sie werden motiviert sein. Es ist auch garnicht so schwer, wie es klingen mag - Sie wissen schon, welche Software Ihnen hier weiterhelfen wird. Lesen Sie hier weiter. |

Technische Erläuterungen

In diesem Absatz werden verschiedene Dinge, die im Text schon erwähnt wurden, zu Referenzzwecken zusammengefaßt.

Steuerungsdateien

Es gibt einige Grundeinstellungen, die für alle Makros einer Szenerie gelten sollen. Dazu gehören z.B. die Form und Farbe der Oberleitungsmasten, das Zeitverhalten bewegter Züge usw.

Diese Einstellungen werden in einer zentralen Steuerungsdatei ..\includes\00user.inc eingestellt. Im Text finden Sie eventuell noch Hinweise auf verschiedene Dateien, inzwischen sind Sie zusammengefaßt worden. Die Standardeinstellung ist die folgende:

> Uvar( $arvis 3 )

> Uvar( $FS2000 1 )

> Uvar( $mir 1 )

> Uvar( $pylshape 1 )

> Uvar( $slots 56 )

> Uvar( $framrate 5 )

Die Bedeutung der Werte ist die Folgende:

$arvis Wesentlich wohl nur für FS95 und FS98. Legt fest, wieviel Objekte bei einem Reload des Szeneriepuffers berücksichtigt werden sollen. Ist die effektivste Möglichkeit, durch Reduzierung Überläufe zu vermeiden. Empfohlene Werte: Für FS95 1, für FS98 3, für FS2000 5.

$FS2000 Schaltet die Besonderheiten von FS2000 ein, falls auf Wert 1

$mir Ändert Aussehen mancher Makros für Rechtsvekehr (1) bzw. Linksverkehr (-1). Wird immer durch Vorzeichen der Zugnummer in %7 überschrieben.

$pylshape Aussehen der Strommasten. Folgende Werte sind z.Zt. realisiert

> 1 Grüne Gitterstruktur wie bei DB

> 10 - 14 Massive Struktur wie DB in grau, grün, blau, braun, dunkelgrau

> 15 – 19 wie 10-14. Vorgesehen für Benutzeränderungen (andere Farben)

> 20 - 24 Massive Struktur wie SNCB in grau, grün, blau, braun, dunkelgrau

> 25 – 29 wie 20-24. Vorgesehen für Benutzeränderungen (andere Farben)

Die weiteren Parameter gelten nur für bewegte Bahnen:

$slots Legt fest, nach wie vielen Intervallen von je 6 Sekunden sich die Bewegung wiederholt. Taktdichte. Maximaler Wert 99. Falls bewegte Autobahnen verwendet werden sollen, muß dieser Wert durch 8 teilbar sein. Empfehlung: Für Mitteleuropa und Japan 56, für den Rest der Welt 96.

$framerate Der Bewegungsmechanismus muß wissen, wie schnell Ihr Computer ist. Gehen Sie in Bodennähe, drücken Sie zweimal auf ( Umschult Z ). Oben wird die aktuelle Zahl der Bilder pro Sekunde eingeblendet. Teilen Sie diese Zahl durch 2,7, runden Sie das Ergebnis auf eine natürliche Zahl und tragen Sie diese hier ein. Maximaler Wert ist 47.

Es gibt drei Vorlagen 00user95, 00user98 und 00user2k, die für die drei Simulatorversionen einen ersten Startwert darstellen.

Sie können, anstatt die Dateien zu editieren, auch das Userinterface im Menü "Dialoge" "Ändere Makroeinstellungen" benutzen, um die Werte zu ändern.

Für die verschiedenen Einträge gibt es beim Ausklappen der Combo Boxen kommentierte Vorschläge, Sie können aber auch manuell Einträge von Zwischenwerten vornehmen.

Bahndammfarben

Die Bahndämme der statischen Bahnen und der 3d- bewegten Bahnen lassen sich bei den meisten Makros mit dem Parameter %9 steuern. Für FS95 und Fs98 kann das Weglassen

niedriger Bahndämme wertvollen Speicherplatz sparen. Im einzelnen bedeutet (%9 wird hexadezimal eingegeben ) :

- %9 = 0 Der Bahndamm wir nicht gezeichnet.
- %9 = 01 bis FF. Der Bahndamm wird mit der entsprechenden Farbe gezeichnet. 02 ist ein mittleres Grau, 18 ein mittleres Grün. Aber wenn Sie nachts leuchtende, rote Bahndämme bevorzugen, bitte schön 0F.
- %9 >= 100 Die Bahndämme werden texturiert. Benutzen Sie dies nur selten für FS95. Werte zwischen 100 und 104 wählen verschieden grüne oder beige Texturen aus. 105 wählt die jahreszeitspezifische Grastextur. Wenn Sie also darauf bestehen, im Winter Schnee auf dem Bahndamm zu haben, ist 105 Ihre Wahl.

Zur Wahl der Textur benutzen alle neuen Makros die gemeinsame Datei (..\includes\banktex.inc ). Damit haben Sie eine einfache Möglichkeit, für höhere Werte ( ab 106 ) eigene Texturen einzufügen.

Oberleitungen

Die Oberleitung wird bei allen Makros mit dem Wert %6 eingeschaltet. Für %6 = 1 werden nur die Drähte gezeichnet. %6=2 schaltet einfache Strichmasten hinzu, deren Form und Farbe durch die Variable $pylshape ( in 00user.inc) beeinflußt wird. Verwenden Sie für FS95 nur %6=0,1 oder 2.. Für %6=3 werden die Masten massiv, und in Form und Farbe durch dieselbe Variable bestimmt. %6=3 und $pylshape=1 erstellt strukturierte Gittermasten. Für die massiven Masten läßt sich mit %6=4 noch eine Beleuchtung einschalten. Experimentieren Sie etwas mit der Variablen $pylshape. Einige Makros unterstützen noch folgende Werte:

%6=5: Nur Oberleitung, aber nachtbeleuchtete Schienen. %6=6 nachtbeleuchtete Schienen ohne Oberleitung. %6=7 Beleuchtung durch Lampen ohne Oberleitung.

Einige wenige Dateien (..\includes\plyin... ) erstellen alle Oberleitungsmasten. Andere nationale Formen zu entwickeln sollte für den fortgeschrittenen Benutzer nicht zu schwierig sein. Die Farbe der Linienmasten wird in der Datei (..\includes\plycoll.inc ) bestimmt, für flächige Masten in (..\includes\plycols.inc ). Wenn Sie also eine neue Farbe für Masten einfügen wollen, können Sie dies hier tun. Lassen Sie die Farben für die Werte 10 bis 14 und 20 bis 24 bestehen. Ersetzen Sie in den beiden Dateien je nach gewünschter Form einen der Werte zwischen 15 und 19 oder 25 und 29 durch die neue Farbe. Senden Sie mir eine kurze Mail an B_Rail@altavista.com , damit in der nächsten Version diese Farbe berücksichtigt werden kann.

Benutzerdefinierte Gleistexturen

Die Auswahl der Texturen für die Schienen geschieht in den Dateien ..\includes\brbf0xy.inc, dabei benutzen die meisten Gleise brbf001.inc. Je nach Wert der letzten Stelle der Variablen Reichweite werden hier verschiedene Texturen ausgewählt.

> 0 Standardtextur beiges Gleisbett mit Holzschwellen.

> 1 TGV-Textur mit grauem Gleisbett und gebogenen Hochgeschwindigkeitsschwellen.

> 2 Dunkle Textur ähnlich der FS2000-Bahntextur, seit 50 Jahren ungewartetes Gleisbett

> 3 Leicht rostiges Gleisbett mit hellen Schienen (Dank an Daniel Schleusner)

> 4 Wintertextur für den hohen Norden (Dank an Daniel Schleusner)

> 5 Jahreszeitabhängig 3 (Frühjahr bis Herbst) und 4 (Winter).

Die Werte 6-9 rufen zur Zeit dieselben Texturen wie der Wert 0 aus. Wenn Sie selbst Texturen entwickeln wollen, können Sie Ihre Farbgebung z.B. für den Wert 6 eintragen, und eine Reichweite 7006 z.B. wird Ihre Texturen verwenden.

Menü Dokumentation

Dieser Teil der Dokumentation wird die Benutzung der Menüs erklären. Viele Dinge, die oben erwähnt wurden, werden hier nicht wiederholt.

Eine allgemeine Erklärung:

Im Text werden wiederholt Gleisenden als "nördliche" und "südliche" Enden bezeichnet. Dies sind die Lagen der Enden, wenn das Gleis nicht gedreht ist, also für %5=0. Die Enden drehen sich mit dem Gleis. Also zeigt z.B. für %5=90 (Grad) das "nördliche" Ende nach Osten.

Menü | Punkt | Erklärung
File | Neue Bahn | Erzeugt eine neue Bahn. Ein Dialog fragt nach den Koordinaten und weiteren Eigenschaften. Nicht möglich, falls sich Bahn im Speicher befindet. Ermöglicht die meisten Operationen.
| Lese Bahn | Liest eine Bahn von der Platte aus dem Programmverzeichnis. Nicht möglich, falls sich Bahn im Speicher befindet. Ermöglicht die meisten Operationen.
| Speichere Bahn | Speichert eine Bahn ins Programmverzeichnis. Warnt, falls der Name auf einen bereits bestehenden geändert wird. Es ist eine gute Idee, den Namen regelmäßig zu ändern, um Sicherheitskopien Ihrer Arbeit zu haben.
| Speichern und compilieren | Speichert eine Bahn ins Programmverzeichnis. Warnt, falls der Name auf einen bereits bestehenden geändert wird. Erzeugt eine Prozedur 'BRailMAKER.BAT' aus der Vorlage 'BRailMAKER.TXT' und dem aktuellen Dateinamen, und führt diese aus.
| Schließen | Schließt eine Bahn. Ermöglicht "Neue Bahn" und "Lese Bahn" und verbietet die meisten anderen Operationen
| Importiere von FSRail | Aus einer anderen FSRail - Datei können Sie die exportierten Endpunkte, Marker, Bitmaps und Stellwerke importieren, um die Koordination mehrerer Dateien zu vereinfachen.
Dialoge | Editiere Bahn | Ein ausführlicher Dialog, der viele Operationen erlaubt. Speziell notwendig, um durch Ändern der Option zahlreiche Meldungen zu unterdrücken, und um die Flatten Zeilen für 'SCENERY.CFG' zu erzeugen.
| Ändere Geometrie - Datenbank | Interface, welches Einträge in und Änderungen der Geometriedatenbank erlaubt.
| Ändere Makro-einstellungen | Dialog, um die Datei 00user.inc zu bearbeiten, und die Prozedur BRailmaker.txt zu erzeugen.
| Kartenoptionen | Wählen Sie die Netzdichte und die zu zeigenden Marker.
EisenbahnMesh | Lege Gleis | Lege Gleis an freie Position, nicht durch vorherige Operationen festgelegt.
| Gleis anfügen | Füge Gleis an offenen Endpunkt an. Viele Eigenschaften des Gleises werden von diesem Endpunkt aus gerechnet.
| Entferne letztes Objekt | Entferne letztes Gleis und reaktiviere den zugehörigen Endpunkt. Dies ist der einzige Weg, ein Gleis vollständig zu löschen. Im Hintergrundmodus können Sie nur Marker löschen.
| Stellwerk | Legt ein Stellwerk auf den nächsten Mausklick. Sie können die Koordinaten und die Farbe ändern. FSRail zeigt den Einflußbereich des Stellwerks als weiße Ellipsen - so können Sie die Stellwerke so plazieren, daß sie die Fläche optimal bei kleinen Überschneidungen abdecken..
| Ändere Objekt | Hiermit können Sie ein Gleis auswählen, welches Sie ändern möchten. Zusätzlich können Sie Schienen deaktivieren. Dies ist fast dasselbe wie eine Löschung, nur daß die angefügten Endpunkte erhalten bleiben müssen. Wenn Sie "Reaktiviere Endp." Drücken, werden alle Endpunkte dieses Gleises aktiviert. Vielleicht müssen Sie einige davon wieder von Hand löschen. Diese ist dasselbe wie ein "Shift Rechtsklick" auf ein Gleis.
| Vorgaben festlegen | Manchmal möchten Sie die Vorgaben ändern - z.B. wenn Sie %6 von eine elektrifizierten zu einer Dieselstrecke oder die Schienentextur in %10 ändern wollen.
| Kommentar anfügen | Habe ich Ihnen je verraten, daß FSRail ein Werkzeug für Assembler Programmierung ist? Wenn nicht, dann ist ein Kommentar in einem Assembler Programm immer eine gute Idee. Ich empfehle, z.B. vor jedem Bahnhof seinen Namen als Kommentar einzufügen..
| Anheben 25 cm | Nur für 3D Design. Zwischen den beiden Patches von FS2000 änderte sich die Höhe des Terrains um mindestens einen Meter. Die Wahrscheinlichkeit, daß sie sich mit der nächsten Version wieder ändert, ist größer als die, daß Microsoft aufgeteilt wird. Kein Problem für Sie, FSRail kann die gesamte Bahn anheben und senken.
| Absenken 25 cm | Nur für 3D Design. Zwischen den beiden Patches von FS2000 änderte sich die Höhe des Terrains um mindestens einen Meter. Die Wahrscheinlichkeit, daß sie sich mit der nächsten Version wieder ändert, ist größer als die, daß Microsoft aufgeteilt wird. Kein Problem für Sie, FSRail kann die gesamte Bahn anheben und senken.
| Verschieben Nord - Süd | Einige Tester wünschten sich die Möglichkeit, eine ganze Bahn in der Ebene zu verschieben. Sie können die Bahn in Schritten von 10 Sekunden (324 m), 1 Sekunde oder 0.1 Sekunde (3.24 m) verschieben. Achtung: Wenn Sie eine Bahn in Nord - Süd Richtung verschieben, verändern sich die Querabstände. Ich schätze, daß bis zu 2 km funktionieren, mehr sollten sichtbare Effekte ergeben.
| Verschieben West - Ost | Einige Tester wünschten sich die Möglichkeit, eine ganze Bahn in der Ebene zu verschieben. Sie können die Bahn in Schritten von 10 Sekunden (324 m), 1 Sekunde oder 0.1 Sekunde (3.24 m) verschieben.
| Höhenwert wählen | Die folgenden trigonometrischen Punkte werden mit dieser Höhe erzeugt. Im Hintergrundmodus wird auf Eingabe von trigonometrischen Punkten umgeschaltet.
| Trigonometrischen Punkt setzen. | Im Normalmodus kann ein einzelner trigonometrischer Punkt gelegt werden. Nützlich, um Terrainhöhe an bestimmten Punkten zu erzwingen. Ersetzt einen Bagger.
| Erzeuge FS DEM | Eine DEM und INF Datei wird errechnet. Maximal 512 x 512 Punkte. Sehr rechenintensive Funktion, wesentlich langsamer als die von FSMesh, die dagegen auf mehr als 10 MB Speicher anwachsen kann.
| Lese FS DEM | Ein mit FSMesh oder FSRail erzeugtes DEM kann eingelesen werden, um die Höheninformation wieder zur Verfügung zu haben. Maximal 1024 x1024.
Endpunkte | Ändere Endpunkt | Sie können einen Endpunkt auswählen und ändern. Dies ist dasselbe wie ein Shift Rechtsklick auf einen Endpunkt.
| Exportiere Endpunkt | Sie können Endpunkte exportieren. In der Datei wird die Instruktion ";FSRail AddEP" durch ";FSRail ExpEP" ersetzt. Sie können diese Zeile in eine andere Datei übertragen, um die Strecke fortzusetzen. Dies können Sie über "Datei" "Importieren von FSRail" durchführen.
| Aufräumen | Naheliegende Endpunkte können automatisch entfernt werden. Diese entstehen, wenn Kreuzungen und Weichen an zwei Gleise angeschlossen werden..
| Reimportiere | Alle exportierten Endpunkte werden wieder aktiviert - falls Sie diese wieder benutzen wollen.
| Berechne Abstand | Der Abstand zwischen zwei Endpunkten wird berechnet.
Kartenbefehle | Endpunkt wählen | Identisch zu einem Shift Linksklick auf einen Endpunkt.
| Objekte wählen | Identisch zu einem Shift Rechtsklick auf ein Objekt.
| Globale Änderung | Einige Parameter lassen sich für alle Gleise gemeinsam ändern.
| Maßstab = 1 | Setzt den Maßstab auf 1. Dies ist der Maßstab, bei dem die Bahn genau auf Ihren vollen Bildschirm paßt.
| Vergrößerung | Vergrößert den Maßstab. Sie können das Bildschirmviertel auswählen.
| Vergrößerung zu Maus | Vergrößert den Maßstab. Klicken Sie auf die Position, um die herum Sie vergrößern wollen.
| Verkleinerung | Reduziert den Maßstab.
| Straßen oder Flüsse | Dieser Menüpunkt erlaubt, einfache Straßen oder Flüsse zu erzeugen. Sie klicken zweimal, um Anfang und Ende der Straße zu bestimmen, dann werden Sie nach Farbe und Layer genannt. Für 3D Design werden Straßen und Flüsse immer texturiert. Es heißt, daß der Layer für FS2000 immer durch 4 teilbar sein soll, höhere Layer können niedrigere bedecken. Wenn also eine Straße mit Layer 12 einen Fluß mit Layer 8 kreuzt, bedeckt die Straße den Fluß.
| Poly Straße | Straßen oder Flüße aus bis zu 13 Teilstücken können erzeugt werden. Klicken Sie auf die gewünschten Ecken, mit einem Rechtsklick auf die letzte.
| Polygone | Machen Sie einen Linksklick auf die eine Serie von Endpunkten. Rechtsklick endet die Eingabe, nun können Sie die Farbe wählen. Texturierte Polygone lassen sich so nicht unter FS2000 erzeugen.
| Airport Makro | Sie können ein Airport Makro in FSRail einfügen. Klicken Sie auf die Position und ändern Sie den Vorschlag. Einige Airport Makros verlangen spezielle Aufrufe mit %13 = v2 und einem Wert in %14. Ich habe des öfteren erlebt, daß ein falscher Aufruf den Compiler in eine endlose Schleife brachte.
| Dorf | Legen Sie ein Dorf an die Mausposition. Ein Wert von 1 bis 3 malt ein Polygon auf den Boden, 4 bis 7 fügt Häuser hinzu.
| Erzeuge Flatten Area | Klicken Sie auf vier Positionen im Uhrzeigersinn oder entgegen dem Uhrzeigersinn. Sie werden zu Minuten gerundet. Benutzen Sie das Menü "Dialog", um die Datei 'flatten.txt' zu erzeugen, die Sie in die Datei 'scenery.cfg' eintragen können.
| Elevation | Ändern Sie das Terrain. Klicken Sie auf die Punkte des Polygons, daß Sie auf eine Höhe setzen wollen, rechts klicken Sie auf den letzten Punkt. Benötigt SCASM 2.39.
| Farbe der Marken | Dialog legt die Farbe der als nächstes zu setzenden Marken fest. Im Hintergrundmodus schaltete es auf Eingabe von Marken um. Im Hintergrundmodus wird auf Eingabe von Markern umgeschaltet.
| Marke setzen | Auf Mausklick wird an diese Stelle eine Marke gezeichnet. Mit einem Rechtsklick auf eine Marke kann diese verändert werden, oder die Entfernung zu einer anderen Marke bestimmt werden.
| Marken reaktivieren | Falls Sie Marken inaktiv gemacht haben, können Sie diese wieder aktivieren. Es werden alle Marken der gerade gültigen Farbe reaktiviert.
| Marken einer Frabe löschen | Alle aktiven Marken der gerade ausgesuchten Farbe werden gelöscht. Falls sie einige behalten wollen, machen Sie sie inaktiv, selektieren die Farbe, löschen die aktiven und reaktivieren die inaktiven.
| Bitmap laden | Eine Hintergrundbitmap wird geladen und das Programm in den Hintergrundmodus gesetzt. Sie können nun praktisch beliebig viele Marken unterschiedlicher Farbe setzen, um die wesentlichen Elemente der Bitmap nach FSRail zu übertragen.
Window | Vollbildschirm | Zurück kommen Sie mit 'Alt Enter'
Help | About | Zeigt einen "About" Text
| Intro | Gibt eine erste Einführung. Von hier aus können Sie die Online Dokumentation rufen. Diese befindet sich unter: '..\documentation' für die englische Dokumentation, die auf allen nicht deutschen Systemen gerufen wird. '..\dokumentation' für die deutsche Dokumentation, die auf allen deutschsprachigen Systemen gerufen wird.
1 |  | Setzt den Maßstab auf 1 und zentriert. Als Abkürzung für diesen Befehl können Sie einfach eine 1 auf der Tastatur eingeben.
< |  | Verschiebt die Beobachterposition um 100 Pixel nach links. Als Abkürzung für diesen Befehl können Sie einfach ein < auf der Tastatur eingeben.
> |  | Verschiebt die Beobachterposition um 100 Pixel nach rechts. Als Abkürzung für diesen Befehl können Sie einfach ein > auf der Tastatur eingeben.
hoch |  | Verschiebt die Beobachterposition um 100 Pixel nach oben. Als Abkürzung für diesen Befehl können Sie einfach ein h oder u auf der Tastatur eingeben.
tief |  | Verschiebt die Beobachterposition um 100 Pixel nach unten. Als Abkürzung für diesen Befehl können Sie einfach ein t oder d auf der Tastatur eingeben.
- |  | Verkleinert den Maßstab. Als Abkürzung für diesen Befehl können Sie einfach ein - auf der Tastatur eingeben.
+ |  | Vergrößerung. Als Abkürzung für diesen Befehl können Sie einfach ein + auf der Tastatur eingeben.
Compile |  | Speichert eine Bahn ins Programmverzeichnis. Warnt, falls der Name auf einen bereits bestehenden geändert wird. Erzeugt eine Prozedur 'BRailMAKER.BAT' aus der Vorlage 'BRailMAKER.TXT' und dem aktuellen Dateinamen, und führt diese aus.

Fehlersuche

Alle Makros und das Designprogramm sind von mir oft benutzt worden, wobei so mancher Fehler gefunden wurde. Dennoch kann ich nicht für die Fehlerfreiheit der Software garantieren. Insbesondere ist mir nicht bekannt, welche anderen Erweiterungen des Flugsimulators zu meiner Erweiterung inkompatibel sind. Hier einige häufiger vorkommende Fehler und ihre Behebung:

Fehler beim Kompilieren.

1. Viele "file not found" Fehler: Stimmt die Struktur der Verzeichnisse? Überprüfen sie diese, wie im Kapitel "Installation" beschrieben. Versuchen Sie, die Beispieldateien zu kompilieren.
2. "file ..\includes\trainxxx.inc not found." Sie rufen einen Zug auf, der zwar in der Software vorgesehen ist, den Sie aber nicht haben. Da ich davon ausgehe, daß viele Züge von Benutzern entwickelt werden, kann dies vorkommen. Ändern Sie den Aufruf auf einen bekannten Zug.
3. Zahlreiche "unresolved label" Fehler: Entweder habe ich einen Fehler gemacht, oder Sie benutzen eine von mir nicht getestete Kombination von Parametern. SCASM limitiert die Zahl der Label pro Makro. Vereinfachen Sie den Aufruf. Reduzieren Sie die erwartete Framerate in der Variablen $framerate, dies reduziert auch die Zahl der Labels.
4. "duplicate label" Fehler bei Zweizugbetrieb. Wenn eine Schiene von zwei Zügen durchfahren wird, müssen diese unterschiedlichen Typs sein. Diesen Effekt habe ich nur in Kurven und nur für sich biegende Züge beobachtet, wenn z.B. beide vom IR-Typ sind. Ersetzen Sie einen Zug durch einen einfachen Typ. Inzwischen sollte dieser Effekt nur noch bei sehr seltenen Kombinationen auftreten.
5. "corrupted polygon" Meldungen. Dieser Fehler taucht meistens auf, wenn versucht wird, bei einer Bahndammhöhe von 0 oder kleiner einen Bahndamm zu zeichnen. Wenn ich dies erhielt, versuchte ich praktisch immer, eine 3D - Szenerie für FS2000 mit $FS2000=0, also für FS85/98 zu kompilieren.
6. Sonstige Fehler: Senden Sie mir bitte den .scm file mit einer kurzen Beschreibung des Fehlers zu.
7. Die Onlinedokumentation funktioniert nicht vom Programm aus. Unter einigen Windows 98 Systemen habe ich erlebt, daß das System circa 15 Sekunden brauchte, bis es einen Browser startete, bei anderen nicht. Unter NT4 oder Windows 2000 habe ich dies nur auf einem Terminalserver beobachtet. Inzwischen sollte für eine übliche Installation vom Internet Browser dieses Problem behoben sein, falls Sie es dennoch beobachten, senden Sie mir doch bitte die Information, wo Ihr Browser installiert ist.

Darstellung falsch.

1. Plötzlich werden Schienen zwar gezeichnet, aber nicht gelöscht, so daß sie das ganze Bild überfluten. Ursache ist bei FS95 und FS98 ein Überlauf des Speichers. Reduzieren Sie die Variable $arvis. Ersetzen Sie große Züge durch einfache und texturierte Masten durch Strichmasten. Vereinfachen Sie ihren Design – oder rüsten Sie auf FS2000 auf. ( Das kostet DM90 für die Software und DM 2000 für die Hardware )
2. Es wird gar nichts gezeichnet. Dies kann entweder an Ihnen liegen oder an mir. An Ihnen, wenn Sie woanders nachsehen, als Sie gebaut haben. An mir, falls ich irgendwo eine Zeile "mifend" vergessen habe. Dann kann unter Umständen die Anweisung "EndA" nicht benutzt werden, und es wird nichts dargestellt. Versuchen Sie, das Makro herauszubekommen, an dem es liegt, indem Sie es in der .scm – Datei zum Kommentar umwandeln.
3. Eine weitere Ursache dafür, daß man nicht sieht, kann ein falscher Wert der Höhe %3 sein. Für alle Designs auf der flachen Szenerie muß er 0.00 sein, sonst wird das Makro in diese Höhe gelegt, egal, ob es tief im Boden vergraben ist oder hoch am Himmel schwebt.
4. Die Bewegung läuft einige Zeit gut, aber dann verschwindet der Zug und woanders taucht wieder einer auf: Prüfen Sie, ob die Datei ..\includes\slots.inc denselben Wert enthält wie die Variable nslots in der .scm-Datei. Wenn nicht, ändern Sie die Include-Datei.
5. Auf Autobahnen oder Straßen treten in der Bewegung plötzlich Unstetigkeiten auf: Ist $slots durch 8 teilbar?
6. Dreidimensionale Objekte scheinen durch andere hindurch (Nur Fs95 und FS98). Dieser Effekt ist bei langen schmalen Objekten nicht immer zu vermeiden, aber Sie werden lernen, wie man diesen Effekt minimiert.
7. Der Bahndamm zeigt merkwürdige Farben. Haben Sie ein Wert >105 gewählt?
8. In FS2000 springen die Züge hin und zurück, in FS98 aber laufen sie perfekt: Haben Sie eine zu niedrige Framerate (<3?). Dann reduzieren sie die Auflösung, benutzen Sie FS98 oder einen schnelleren Rechner – den Leistungsverlust von 6 bis 10 durch den Simulatorwechsel kann ich nicht auffangen.
9. Im FS2000 wollen Sie über einen Berg, aber auch die Steigung der Cx-Rampen reicht nicht aus, die Schienen verschwinden im Gelände: Erfinden Sie einen Tunnel. Im Kampf Mensch gegen Computer gibt immer der Klügere nach. Wer ist das?
10. Im FS2000 ist die Höhe der Landschaft nach dem Neuladen anders als vorher und erwartet? Laden Sie nochmals, das Ergebnis paßt dann besser.
11. Sie sehen zwar die Formen, aber ohne Texturen. Befinden sich die Texturen im richtigen Texturverzeichnis, nicht im \texture - Verzeichnis des FS?

Diese Liste wird mit zunehmender Benutzung sicher länger werden – zögern Sie nicht, Probleme zu melden, aber geben Sie mir bei der Beantwortung etwas Zeit. Die folgende Website wird Informationen zu FSRail enhallten, Besuchen Sie regelmäßig:

Die folgende Newsgroup wird sich mit FSRail - spezifischen Fragen befassen:

news://news.simflight.com/support.fsrail .

Falls Ihr spezielles Problem dort nicht beschrieben wurde, oder Sie einen eigenen Beitrag leisten wollen, schreiben Sie an support@fsrail.com . Probleme können bearbeitet werden, wenn Sie die folgende Information senden:

1. Ihre FSRail Seriennummer
2. Welche FS - Version verwenden Sie?
3. Verwenden Sie irgendein Produkt eines Drittanbieters?
4. Beschreibung des Problems.
5. Eine Kopie der von FSRail erzeugten .scm - Ausgabedatei.
6. Eine Kopie der Dateien BRailmaker.bat und 00user.inc.

Haben Sie bitte Verständnis dafür, daß ohne diese vollständigen Angaben eine Anfrage nicht beantwortet werden kann, und haben Sie etwas Geduld mit der Beantwortung.