Terminaldefinition in .con-Datei

Willkommen in der Transport Fever Community

Wir begrüßen euch in der Fan-Community zu den Spielen Transport Fever und Train Fever, den Wirtschaftssimulatoren von Urban Games. Die Community steht euch kostenlos zur Verfügung damit ihr euch über das Spiel austauschen und informieren könnt. Wir pflegen hier einen freundlichen und sachlichen Umgang untereinander und unser Team steht euch in allen Fragen gerne beiseite.

 

Die Registrierung und Nutzung ist selbstverständlich kostenlos.

 

Wir wünschen euch viel Spaß und hoffen auf rege Beteiligung.

Das Team der Transport-Fever Community


  • Hallo lieber Mitmodder,


    ich wollte meine Hochbahnsteige noch etwas umbauen und dafür habe ich die Lanes (die waren alle nur bedingt nötig) aus den MDLs entfernt und dafür wollte ich die Terminals über die CONs festlegen.
    Das sollte wohl mittels der Edges in der CON und den terminalGroups funktionieren. Leider gibts von UG dafür noch keine Doku außer "Schaut sie euch in bestehenden Dateien an".


    Hier mal Codebeispiele:

    So wirklich funktionieren will das damit aber nicht. Entweder habe ich dann eine nicht funktionierende Station oder einen Crash mit:


    Hat damit jemand Erfahrung? Ich bin gerade auch auf dem TS, falls das übers Forum zu kompliziert wird...

    2 Mal editiert, zuletzt von WiZz4Rd ()

  • Aus deinem Code-Schnipsel ist nicht zu ersehen, welche mdl-Dateien der Auflistung "result.models" und wie oft hinzugefügt werden.


    Nach

    Code
    result.terminalGroups = {
    				{
    					terminals = { {0, 0} },
    					vehicleNodeOverride = 6
    				}, {
    					terminals = { {1, 0} },
    					vehicleNodeOverride = 7
    				}
    			}

    müssten es zwei mdl-Dateien sein bzw. zwei mal die selbe...

  • @DarkMo: Bei den Bahnhöfen hat man ja aber auch nur die Lanes für Personen und baut dann die "Vehiclelane" aus der Edge zusammen. Das sollte doch auch mit Straßen gehen?!


    @Tom: Korrekt, da kommt zwei mal die gleiche MDL rein, nur um 180° gedreht. Ich dachte ich pack mal nur die relevanten Teile rein. Im Anhang jetzt mal die zwei Datein komplett. (Aber nur für 40m Bahnsteige)
    Die Station 40 ist die mdl, die Station normal ist die con.

  • nur die Lanes für Personen und baut dann die "Vehiclelane" aus der Edge zusammen.

    Das sind zwei paar Schuhe. Die Lanes für Personen/Güter mit ihren Terminals MÜSSEN in einer mdl-Datei definiert sein.
    Schienen, Straßen etc. für die Fahrzeuge werden in der con-Datei "gebaut" und dort auf die Terminals der mdl-Dateien
    in den terminalGroups verwiesen.
    Unabhängig von Bahnhof, Haltestelle, Flughafen...

  • und genau das möchte ich ja machen, die Personenlanes sind ja in der MDL, nur ist das leider nicht so einfach mit den Edges, wie das funktioniert.
    Mal zwei konkrete Fragen:

    • Was gibt das Toupel bei Terminals in terminalGroups an?
    • Woher kommen die IDs für vehicleNodeOverride?
  • Also laut meinem bisherigen Verständnis haben wir 2 "Lane Netzwerke": Einmal den aus TF schon bekannten TNP (transportNetworkProvider) und jetzt in TpF noch diese edgeLists. Bei den TNP's baut man selber frei Schnautze seine Lanes zurecht, definiert Wartezonen und Haltepunkte und macht daraus Terminals. Das ganze unterlegt man mit eigenen Meshes, so das alles glaubhaft aussieht ^^


    Bei den edgeLists hingegen definiert man nur, wo vorgefertigte Straßen oder Schienen verlaufen. Man gibt quasi eine Lane vor und auf dieser Lane wird bspw ne 6spurige Straße entlang gelegt, die aber tatsächlich halt 6 Lanes hat und auch ein vordefiniertes Aussehen.


    Und weil man bei den EL's direkt Straßen nutzt, können die aneinander snappen. Beim TNP braucht man dazu extra streetConnectoren, um eine Verbindung "nach aussen" zu bekommen :/

  • Was gibt das Toupel bei Terminals in terminalGroups an?


    Woher kommen die IDs für vehicleNodeOverride?


    Code
    { terminals = { { modelIndex, terminalIndex } }, vehicleNodeOverride = edgeIndex }

    wobei
    - modelIndex = Null-basierter Index der mdl-Datei mit den Terminals in der result.models-Auflistung
    - terminalIndex = Null-basierter Index der terminals-Auflistung im "transportNetworkProvider" der mdl-Datei
    - edgeIndex = Null-basierter Index der Edge-Node in result.edgeLists, die mit dem Terminal "terminalIndex" der mdl-Datei "modelIndex" verbunden werden soll.


    bitte schön...

  • Danke Tom,


    das hat mich schon einmal gut weitergebracht - ich vermute jetzt bin ich aber wieder auf eine Begrenzung der Engine/der API gestoßen:

    Bei Schienen gibt es nur eine Lane zum Verknüpfen, bei Straßen sind es halt min. 2...
    Ich vermute mal, man kann nicht angeben, welcher genutzt werden soll?
    (Die Terminals liegen jetzt auf der Fußgängerlane ganz oben)

    Einmal editiert, zuletzt von WiZz4Rd ()

  • Bei Schienen gibt es nur einen Punkt zum Verknüpfen, bei Straßen sind es halt min. 2...

    Wie meinst Du das ?( . Das Gleis eines Bahnsteigs besteht immer aus zwei Teilen bzw. aus 4 Edge-Nodes, wobei der
    Anfangs-Node des zweiten Teils auf dem End-Node des ersten liegt. Genau wie bei Straßen.


    Ich vermute mal, man kann nicht angeben, welcher genutzt werden soll?

    Doch, die in meinem letzten Post genannten Indizes geben genau an, wo der Haltepunkt
    des Fahrzeugs (vehicleNodeOverride = edgeIndex) und der dazugehörige Terminal liegt:

    Hier siehst Du die Haltepunkte der Fahrzeuge auf einem Gleis mit Doppelbelegung und die
    diesem Haltepunkt zugeordneten Terminals aus den Plattform-mdls.


    Kannst Du deinen Screenshot auch mal mit farbigen Kringeln zu besseren Erkennung versehen?

  • Bei Gleisen definiert ein Node der edgeList aber auch immer genau einen Punkt auf dem Netzwerk, bei Straßen sind es mindestens 2. D.h. man könnte vielleicht den Punkt entlang der Straße festlegen, an dem das Fahrzeuge hält, aber nicht die Straßenseite.

  • @WiZz4Rd


    Nach kurzem Überfliegen vom Thread bin ich grad nicht so ganz sicher, was ich prüfen soll. :) ...


    Schick mir doch eine Email mit einer kurzen Zusammenfassung der Frage und ein den betroffenen Dateien, dann schaue ich es gerne genauer an.

    Spieleentwickler, Geek, Content Creator

BlueBrixx