Geradeaus: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 7: | Zeile 7: | ||
# Die Strecke fängt mit einer durchgängigen Reihe Startplätze entsprechend eingestellter Spielerzahl an | # Die Strecke fängt mit einer durchgängigen Reihe Startplätze entsprechend eingestellter Spielerzahl an | ||
− | # Es folgen ein paar Karos Platz, bevor die Variation beginnt. Die sogenannte "Startzone" ist dabei '' | + | # Es folgen ein paar Karos Platz, bevor die Variation beginnt. Die sogenannte "Startzone" ist dabei ''log(players)'' Karos lang. |
# Für jeden neuen Streifen wird jedes Karo in Richtung der Hauptachse mit einer Wahrscheinlichkeit von ''variation'' getoggelt. Das heißt, Straße wird zu nicht Straße oder umgekehrt. | # Für jeden neuen Streifen wird jedes Karo in Richtung der Hauptachse mit einer Wahrscheinlichkeit von ''variation'' getoggelt. Das heißt, Straße wird zu nicht Straße oder umgekehrt. | ||
# Dabei ergeben sich ganz natürlich mehrere Fahrspuren, die sich wieder durchmischen können. | # Dabei ergeben sich ganz natürlich mehrere Fahrspuren, die sich wieder durchmischen können. | ||
Zeile 27: | Zeile 27: | ||
* Die maximale Länge der Strecke hängt von der Spielerzahl ab. Aufgrund der Art, wie der Map-Code gespeichert wird (nämlich mit Zeilenumbrüchen am Ende jeder Reihe), ist die maximale Länge bei horizontalen Karten dabei größer als bei vertikalen: | * Die maximale Länge der Strecke hängt von der Spielerzahl ab. Aufgrund der Art, wie der Map-Code gespeichert wird (nämlich mit Zeilenumbrüchen am Ende jeder Reihe), ist die maximale Länge bei horizontalen Karten dabei größer als bei vertikalen: | ||
− | + | ** horizontal: ''maxLength = 65536 / (players + 2) - 3'' | |
− | + | ** vertikal: ''maxLength = 65536 / (players + 3) - 2'' | |
* Das ULTI-Logo wird, sofern genügend Platz verfügbar ist, einfach hinterm Ziel platziert und beeinflusst den Streckenverlauf daher nicht. | * Das ULTI-Logo wird, sofern genügend Platz verfügbar ist, einfach hinterm Ziel platziert und beeinflusst den Streckenverlauf daher nicht. | ||
Aktuelle Version vom 20. April 2024, 16:44 Uhr
Geradeaus ist ein von ultimate geschriebener Kartengenerator. Seit dem <tbd> ist er in Karopapier eingebunden.
Der Generator erzeugt Drag-Karten ähnlich 9, nur mit quasi beliebiger Spielerzahl und Länge.
Inhaltsverzeichnis
Streckenverlauf
Der Geradeaus platziert entlang der Hauptachse der Strecke immer zufällig generierte Streifen. Dabei gibt es folgende Randbedingungen:
- Die Strecke fängt mit einer durchgängigen Reihe Startplätze entsprechend eingestellter Spielerzahl an
- Es folgen ein paar Karos Platz, bevor die Variation beginnt. Die sogenannte "Startzone" ist dabei log(players) Karos lang.
- Für jeden neuen Streifen wird jedes Karo in Richtung der Hauptachse mit einer Wahrscheinlichkeit von variation getoggelt. Das heißt, Straße wird zu nicht Straße oder umgekehrt.
- Dabei ergeben sich ganz natürlich mehrere Fahrspuren, die sich wieder durchmischen können.
- Jedes Fahrspur muss jedoch immer mindestens einen Vorgänger oder Nachfolger haben. Es gibt also keine Sackgassen.
- In regelmäßigen Abständen (entsprechend der eingestellten Anzahl) gibt es statt Straße Checkpoints, die sich über die ganze Breite durch alle Spuren durchziehen.
- Zum Ende kommt natürlich noch ein Ziel. Dabei wird versucht ein Ziel zu generieren, welches zusammenhängend ist, damit nicht jeder Fahrspur alleine vor sich hin fährt. Die Anzahl der Versuche ist jedoch begrenzt und es kann also auch ein zerstückeltes Ziel geben.
- Nach dem Ziel kommt noch eine "Auslaufzone". Diese ist sqrt(length) lang.
Parameter
Folgende Parameter bestimmen den Verlauf der Strecke und das Aussehen der Karte.
- Spieler - die Anzahl der Startplätze und damit gleichzeit die Breite der befahrbaren Strecke in Karos
- Streckenlänge - die exakte Länge der befahrbaren Strecke in Karos vom Start bis zum Ende der Karte (Hinweis: Da sich das Ziel stets ein paar Karos vor dem Ende der Karte befindet, ist unter Umständen nicht die volle Länge der Karte befahrbar)
- Streckenbreite - die minimale und maximale Breite der Strecke (die Strecke wird dabei Mittig um einen Vektor aufgespannt und ist also nach rechts und links je Breite/2 breit)
- Checkpoints - die Anzahl der Checkpoints (mindestens jedoch immer 4, wegen des ULTI-Logos - wenn du keine willst, dann deaktiviere sie einfach in den Spiel-Einstellungen). Die CPs werden dabei immer gleichmäßig auf die Gesamtlänge der Strecke (in Karos, nicht in Abschnitten) verteilt. Es sind auch mehr als 9 CPs möglich, dann werden die CPs entsprechend wiederholt.
- Variation - die Wahrscheinlichkeit mit der ein Karo zwischen "Straße" und "nicht Straße" toggelt (siehe oben).
- Richtung - die Ausrichtung der Rennstrecke. Per Default verläuft die Strecke von links nach rechts (= "nach Osten"). Man kann jedoch auch von rechts nach links (= "nach Westen") und von oben nach unten (= "nach Süden") oder unten nach oben (= "nach Norden") fahren.
Trivia
- Die maximale Länge der Strecke hängt von der Spielerzahl ab. Aufgrund der Art, wie der Map-Code gespeichert wird (nämlich mit Zeilenumbrüchen am Ende jeder Reihe), ist die maximale Länge bei horizontalen Karten dabei größer als bei vertikalen:
- horizontal: maxLength = 65536 / (players + 2) - 3
- vertikal: maxLength = 65536 / (players + 3) - 2
- Das ULTI-Logo wird, sofern genügend Platz verfügbar ist, einfach hinterm Ziel platziert und beeinflusst den Streckenverlauf daher nicht.
Beispielkarten
Hinweis: der Übersichtlichkeit halber sind hier nur Karten mit einer Länge von 200 dargestellt. Die Karten können aber seeeehr viel länger werden.