Traffic Tool Essentials

Traffic Tool Essentials (TTE) ist eine zur Verkehrsoptimierung erdachte Modifikation für Cities: Skylines II

Einführung

Willkommen und erste Informationen zum Einstieg in Traffic Tool Essentials :)

Danke, dass du da bist!

Einführung

Allgemeine Informationen

Vorwort

Traffic Tool Essentials entsprang ursprünglich aus der Not heraus und basiert im Kern auf dem Gerüst, das slyh dankbarerweise bereits gebaut hat:

"Traffic Lights Enhancement" - eine Mod, seinerzeit entwickelt von "slyh" (im Forum und auf Paradox unter dem Accountnamen "C2VMTLE" veröffentlicht), wurde zurückgelassen und mit ihr viele abhängige Nutzer, unter anderem ich. Mein Verkehrsnetz war ohne konfigurierbare Kreuzungen nahezu sinnlos - und nachdem über mehrere Monate hinweg, seit der Spiel-Version 1.3.3, kein Update und keine Bewegung in Sicht war, habe ich einen Fork der TLE Mod erstellt, der schon von Anfang an umfangreicher wurde als zunächst angenommen, weswegen auch direkt ein Renaming durch mich vorgenommen wurde.

Mittlerweile ist um das Grundgerüst der ursprünglichen Mod, rund um das reine bearbeiten von Phasen und Phasenzyklen ein System gewachsen, das wesentlich komplexer ist und hoffentlich jeden Verkehrs-Nerd, wie mich, mit der Zeit immer besser zufrieden stellen kann.

Viele schlaflose Nächte stecken bereits in diesem Projekt und sicher wird noch die ein oder andere hinzukommen. Es macht sehr viel Spaß, mit euch gemeinsam diese Reise zu beschreiten und ich werd' mein bestes tun, euch nicht zu enttäuschen!

Schön, dass du da bist und dass du dich vielleicht für TTE entscheiden willst, oder bereits entschieden hast :)

Das ist TTE

Traffic Tool Essentials ist gedacht als eine sinnvolle Erweiterung des Spiels an Stellen, an denen das Spiel an sich keine Lösungen für vorhandene Probleme bietet. Mit aktuell mehr als 1800 Spielstunden glaube ich, ein gutes Gespür zu haben für das, was nützlich und hilfreich sein kann - schlicht, weil ich es selbst gebrauchen kann.

Aktuell erwarten dich bereits folgende Features:

✍🏻 Phasen-Editor

💚Grüne💚Welle💚

🚗 Verkehrs-Dashboard

📈 Statistiken

🏗️ Kommende Features (In Arbeit)

🚉 Mobility Hubs

🏢 Zentrale Verkehrsleitstelle (TMC, Traffic Management Center)

⚡ Quick-Cycle Templates

Konfiguration von Kreuzungen

Erfahre in diesem Kapitel alles über die Konfiguration von Kreuzungen und lerne, wie man den Phaseneditor bestmöglich für sich nutzen kann!

Konfiguration von Kreuzungen

Der Anfang

Wie du loslegst/Menü öffnen

image.png


Hauptmenü

- Sei nicht verwirrt über "Mobility Hub", du findest diese Funktion in deiner Mod-Version noch nicht - sie befindet sich in der Anfangsphase der Entwicklung. 


Eine Kreuzung auswählen

image.png



Auswahlwerkzeug

Hovere mit dem Auswahlwerkzeug mit der Maus über die gewünschte Kreuzung und klicke mit der linken Maustaste. Damit gelangst du in den Editor der jeweiligen Kreuzung.


Eine Kreuzung bearbeitenkreuzung_vanilla.png

Sobald du auf eine Kreuzung geklickt hast, gelangst du direkt in den Editor der jeweiligen Kreuzung.
Es gibt vordefinierte Schnellwahl-Phasentemplates, wie "Aufgeteilte Phase", oder "Erweiterte, aufgeteilte Phase".


 

 

 

Kreuzungs-Editor

- Im Editor hast du direkt einen groben Überblick zu Daten deiner ausgewählten Kreuzung
- Du hast zusätzlich Optionen, bspw. "Abbiegen bei rot" oder "Exklusive Fußgängerphase", um deine Kreuzung besser an die Gegebenheiten anzupassen

Konfiguration von Kreuzungen

Vordefinierte Einstellungsmöglichkeiten

Vordefinierte Modi

Die Mod bringt einige, vordefinierte Modi mit, die in einigen Situationen ausreichen können, um die Performance einer Kreuzung erheblich zu verbessern. Dazu gehören die Folgenden - und was sie tun:


Für erweiterte Details und reale Zählung von Fahrzeugen, belegte Fahrspuren, wartende Fahrzeuge etc. ist ein benutzerdefinierter Phasenzyklus erforderlich

Für komplizierte Kreuzungen ist jederzeit empfohlen, eigene Phasenzyklen zu entwerfen um die beste Leistung und den meisten Spaß an den Funktionen der Mod zu erfahren


Vordefinierte Optionen

Die Mod bringt einige, vordefinierte Optionen mit, mit denen du die vordefinierten Modi erweitern kannst, was somit erneut die Performance einer Kreuzung erheblich verbessern kann. Dazu gehören die Folgenden - und was sie tun:



Parameterbeschreibung

- Minimale Dauer: Die Phase muss mindestens so lange laufen, völlig unabhängig, ob gerade viel oder wenig Verkehr auf ihr lastet
- Maximale Dauer: Die Phase darf maximal so lang aktiv sein (bspw. auf verkehrsärmeren Armen die Phasendauer aktiv zu verringern, um Hauptverkehrsrichtungen zu bevorzugen
- Zieldauer: Beeinflusst (als einer von zwei Faktoren) die Dauer der Grünphase. 2x = Doppelt so lang, etc.
- Fahrspurbelegung: Beeinflusst (als zweiter von zwei Faktoren) die Dauer der Grünphase, allerdings zielgesteuert, nicht prinzipiell wie bei der Zieldauer, sondern NUR wenn die Spur auch tatsächlich durch Vehikel belegt ist
- Interval Exponent: Fahrzeuge und Phasen, die lange warten müssten, werden im Prioritäts-Modus bevorzugt, um sie nicht "verhungern" zu lassen. Dies kann allerdings mit der moderneren Variante (Sequentieller Modus) eleganter geregelt werden

Konfiguration von Kreuzungen

Benutzerdefinierte Phasenzyklen


Phaseneditor-Basis-Menü (PBM) öffnen

KnVTRU4ypEkOmvF6-xhty0acaq1svfwx1-jymzcs0eeuiful7n-fvtojw9ahw8zgshy-ylotdf1gpeoic3mk-menu-dropdown-trafficoverview.png

i0zgirZAGXMfDWdX-ivv0fyvitqkprojh-phaseeditor-standard.png

Phasen Editor (Basis Menü)

Hier kannst du deine Phasen verwalten, also:
Phasen erstellen, Phasen verschieben, Phasen bearbeiten, Phasen löschen, Phasen kopieren und Phasen einfügen


Phase hinzufügen

b07gaLY0qIubLWHi-phaseeditor-phaseedit-zoom.png

phaseeditor_phaseedit.png

Parameterbeschreibung

- Minimale Dauer: Die Phase muss mindestens so lange laufen, völlig unabhängig, ob gerade viel oder wenig Verkehr auf ihr lastet
- Maximale Dauer: Die Phase darf maximal so lang aktiv sein (bspw. auf verkehrsärmeren Armen die Phasendauer aktiv zu verringern, um Hauptverkehrsrichtungen zu bevorzugen
- Zieldauer: Beeinflusst (als einer von zwei Faktoren) die Dauer der Grünphase. 2x = Doppelt so lang, etc.
- Fahrspurbelegung: Beeinflusst (als zweiter von zwei Faktoren) die Dauer der Grünphase, allerdings zielgesteuert, nicht prinzipiell wie bei der Zieldauer, sondern NUR wenn die Spur auch tatsächlich durch Vehikel belegt ist
- Interval Exponent: Fahrzeuge und Phasen, die lange warten müssten, werden im Prioritäts-Modus bevorzugt, um sie nicht "verhungern" zu lassen. Dies kann allerdings mit der moderneren Variante (Sequentieller Modus) eleganter geregelt werden


Spurenfreigabe der Phase einstellen

Erstelle nach dieser Art und Weise jetzt mehrere Phasen und erschaffe quasi einen individuellen Herzschlag für jede deiner wichtigen Kreuzungen.

Yl2pjNWrdylUAIil-ox6ivitf5aiusoii-phaseeditor-phaseedit-phase1.png

TIPPS

1.:
Erstelle eine separate Fußgängerphase an Kreuzungen großer Verkehrsadern, an denen auch viele Fußgänger auftreten (sehr wahrscheinlich in der Innenstadt, oder an nachträglich beplanten, großen Umgehungsstraßen etc.)

2.: Wichtig für "Grüne Welle":
Die letzte Phase im Gesamtzyklus sollte (ist nur von Belang bei Verwendung der "Grünen Welle" Funktion) eine ZUSÄTZLICHE "nützliche Phase" sein - also eine Phase, die Verkehr auf wichtigen Strecken transferiert, da die letzte Phase vom Sync-System als Puffer zum synchronisieren genutzt wird, wenn Gesamtzykluslängen von Kreuzungen in einer Gruppe stark von einander abweichen bzw. sich die Anzahl der Phasen der einzelnen Kreuzungen zu sehr unterscheiden.


Phasen kopieren und einfügen

phaseeditor_standard_copynpaste_complete.png

Kopieren/Einfügen Werkzeug

-
Das Werkzeug kann nicht zaubern. Bei nicht baugleichen Kreuzungen wird das System versuchen, beim kopieren möglichst viele Ampelschaltungen zu übernehmen, du solltest sie allerdings nochmal überprüfen und gegebenenfalls anpassen.

- Beim Synchronisieren von Kreuzungen, bei Nutzung der "Grüne Welle" Funktion, kann man das System am besten optimieren, wenn gruppierte Kreuzungen mithilfe des Tools, bezogen auf Timing-Einstellungen, also Min. Laufzeit, Max. Laufzeit, etc., perfekt auf einander angeglichen werden

Erweiterte Funktionen und Werkzeuge

Erweiterte Funktionen und Werkzeuge

"Grüne Welle" Werkzeug

Einleitung

Das "Grüne Welle"-Werkzeug bietet dir ab sofort die Möglichkeit, im Spiel Ampelphasen verschiedener Kreuzungen zu koordinierten Streckenzügen zu synchronisieren. 

Beispielsweise im Innenstadtgebiet kann es häufig dazu kommen, dass mehrere Querstraßen hintereinander die Hauptverkehrsachse kreuzen.
Um den Verkehr dennoch bestmöglich der Hauptverkehrsachse entlang über die jeweiligen Kreuzungen zu leiten, kann man mit diesem Werkzeug einzelne Kreuzungen in Gruppen zusammenfassen.

In diesen Streckenzug-Gruppen kann dann eine Referenzkreuzung definiert werden, an der die weiteren Kreuzungen der Gruppe ausgerichtet werden.

Gibt man weiteren Kreuzungen in der Gruppe nun jeweils einen "Offset", also Versatzzeitraum in Bezug auf die Referenzkreuzung, kann man definieren, in welchem zeitlichen Versatz die jeweilige Kreuzung nach der Referenzkreuzung in Phase 1 schaltet.

Mit etwas tüfteln und/oder guter Planung schalten deine Ampeln entlang des Streckenzugs dann idealerweise kurz vor eintreffen der Anfahrenden Fahrzeuge auf Grün (um Fahrzeuge, die den früheren Phasenlauf verpasst haben noch abgeführt werden können, bevor neuer Verkehr eintrifft)


Grüne Welle vorbereiten

Um das Werkzeug für die Grüne Welle verwenden zu können menu_customphase.pngist es unabdingbar, dass du benutzerdefinierte Phasenzyklen an den jeweiligen Kreuzungen verwendest und keine der vordefinierten Optionen.

Um dir Arbeit zu ersparen, könntest du den Phasenzyklus bspw. der Referenzkreuzung kopieren und bei von der Grünen Welle betroffenen Kreuzungen einfügen.

 greenwave_group_created.png

Usecase Demonstration (Beispiel)
Inklusive der markierten Referenzkreuzung

greenwave_tutorial_reference.png

Algorithmus Design 
(Systemarchitektur der Grünen Welle)

Für eine funktionierende "Grüne Welle" muss die erste Phase (P1) jedes Phasenzyklus zwingend die Verkehrsrichtung/en priorisieren, in die die Welle geleitet werden soll. 

Beachte also:

Die erste Phase eines Gesamtzyklus 
muss die Phase sein, die die Richtung der grünen Welle vorgibt. Das System synchronisiert alle Kreuzungen so, dass sie zur richtigen Zeit bereit sind, in Phase 1 zu wechseln, sobald sie an der Reihe sind.

Die zweite Phase eines Gesamtzyklus sollte eine "nützliche Phase" sein. Das bedeutet: Das System muss bei zu stark abweichender Gesamtzyklusdauer der einzelnen Kreuzungen (weil nicht gut auf einander angeglichen) oder einer zu stark abweichenden Anzahl von Phasen an den Kreuzungen (≥2 Phasen Unterschied zwischen mindestens einer Kreuzung zu den anderen/einer anderen) die letzte Phase nutzen, um etwaiges Ungleichgewicht auszugleichen.
Die letzte Phase von Kreuzungen wird also hin und wieder gestreckt werden, um das System synchron zu halten. Um querende Straßen nicht "verhungern" zu lassen, also deren Phasenlänge zu stauchen, damit die Kreuzung aufholen kann, habe ich mich dazu entschieden, lieber die letzte Phase im Notfall lang zu halten und zu warten, bis die Kreuzung durch ihren Zyklus gehen konnte. Es gibt auch einen Rush Mode, diesen setzt das System beim Force Release ein.

*Der Force Release ist in der Version 2.2.2 hin und wieder aufgefallen durch teils rabiates Eingreifen. Im anstehenden Versions-Update werden auch diese Systeme noch einmal adjustiert. In den meisten Use-Cases sollte das allerdings nicht zum Problem werden und kann durch eigene Aktionen auch wieder umgangen werden. Etwas tüfteln ist dann nötig. (Ich beeile mich, die Stabilität dieses Systems zu verbessern)


Erstelle eine Streckenzug-Gruppe

greenwave_group_select.pnggreenwave_offset_zoom.pnggreenwave_tutorial_secondjunction.png

Systemarchitektur & Referenzlogik (zusammengefasst)
Um die Synchronität über verschiedene Kreuzungstypen hinweg zu gewährleisten, etabliert das System eine dynamische Referenzsteuerung. Für einen stabilen Betrieb gelten folgende Logik-Regeln:

- P1-Priorisierung: Die erste Phase (P1) eines Zyklus definiert die Richtung der „Grünen Welle“. Das System taktet alle Kreuzungen basierend auf ihrem individuellen Offset so, dass sie pünktlich zum errechneten Zeitpunkt in Phase 1 initialisieren

- Sequentieller Phasenwechsel: Für den Betrieb einer Grünen Phase ist es unerlässlich, dass die Phasen nach dem neuen, mit TTE etablierten Wechselmodus "Sequentieller Modus" durch ihre Phasen wechseln, da sich der Wechsel von Phasen im Legacy Mode von TLE nicht vorhersagen und somit nicht synchronisieren lässt. Nirgendwo auf der Welt würde auf diese Weise eine Grüne Welle programmiert werden, so auch nicht in diesem Fall. Um den Legacy Mode wieder zu nutzen, musst du die betroffene Kreuzung aus der jeweiligen Streckenzug-Gruppe entfernen

- Dynamischer Drift-Ausgleich: Bei unterschiedlichen Gesamtzykluslängen einzelner Kreuzungen oder stark abweichender Phasenanzahl (Differenz ≥2) schützt das System den Querverkehr vor dem "verhungern". Statt Phasen zu stauchen, wird die letzte Phase des Zyklus einer Kreuzung bei Bedarf gestreckt, um Ungleichgewichte auszugleichen und auf den globalen Takt der Referenzkreuzung zu warten

- Referenz-Anker (Offset 0s): Die Kreuzung mit dem niedrigsten Offset (idealerweise 0s) fungiert als Taktgeber. Alle weiteren Offsets müssen relativ zur Referenzkreuzung berechnet werden – nicht zur jeweils vorherigen Kreuzung


Gruppen-Panel

greenwave_grouptab_rename.png

Im Tab „Groups“ verwaltest du die logischen Einheiten deiner Streckenzüge. Hier definierst du das Grundgerüst, bevor du in die Feinjustierung der einzelnen Kreuzungen gehst.

Benenne deine Gruppen erst um, nachdem du die gewünschten Kreuzungen im „Kreuzung“-Tab zugewiesen hast. Dies beugt zunächst einfach Edge-Cases bei der Daten-Synchronisation vor, falls du komplexe Änderungen an der Gruppenstruktur vornimmst


Dashboard

Das Dashboard ist dein Kontrollzentrum. Hier siehst du in Echtzeit, ob deine Planung in der Spielwelt aufgeht.

Wenn du signifikante Änderungen an einer Streckenzuggruppe vornimmst, kann es mitunter vorkommen, dass du chaotisches Verhalten bemerkst - ist abhängig von den Differenzen der jeweiligen Kreuzungen

greenwave_dashboard_pt1.pnggreenwave_dashboard_pt2.png

Den "perfekten" Offset finden

- Nutze das Dashboard, um den realen Verkehrsfluss zu beobachten. Wenn du siehst, dass Fahrzeuge an Kreuzung #2 ankommen, der Balken aber erst bei 10% von Phase 1 steht, ist dein Offset zu hoch. Ziel ist es, dass Phase 1 dann startet (Balken beginnt zu laufen), wenn die Fahrzeugkolonne der Referenzkreuzung die Haltelinie erreicht, oder vielleicht auch etwas früher, um zuvor durch eventuell eine Straßenbahn aufgehaltene Grüne Welle. Du hast völlige Freiheit!

Bekanntes Problem

- Beim erstellen und Einrichten von Gruppen kann es dazu kommen, dass im Dashboard alle Kreuzungen bei P1 hängen und nichts tun. Das ist wirklich nicht schön, aber du kannst es umschiffen. Entferne alle Kreuzungen aus der betroffenen Gruppe, lösche diese Gruppe sobald sie keine Kreuzungen mehr enthält, erstelle eine neue Gruppe und benenne diese auch erst um, wenn gewünschte Kreuzungen drin sind und laufen. Danach sollte es nicht mehr zu Problemen kommen, egal welche Änderungen du vornimmst. Wenn alle Phasenzyklen der Kreuzungen identisch lang sind, kann das System manchmal in einen Edge-Case rennen, in dem die Force Release Logik gar nicht aufgerufen wird, die in solchen Fällen greifen sollte.