1. Dashboard
  2. Forum
  3. Filebase
  4. Lexicon
  5. Articles
  6. Rating system
  7. Members
    1. Recent Activities
    2. Users Online
    3. Team
    4. Search Members
  8. Zur Transport Fever Community
  • Login
  • Register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • Lexikon
  • Article (Rating System)
  • More Options
  1. WiSim Welt
  2. Forum
  3. Spiele
  4. Cities in Motion
  5. Modding und Erweiterungen
  6. Tools & more

Fahrzeug an bestimmtem Halt einsetzen

  • Banjobeni
  • February 9, 2012 at 10:46 PM
1st Official Post
  • Banjobeni
    Professional
    Posts
    1,264
    Filebase Entries
    4
    • February 9, 2012 at 10:46 PM
    • #1

    Ich war lange nicht mehr hier... Vor kurzem aber wieder angefangen CiM zu spielen. Und daher beschlossen, das Fahrzeuge-fahren-hintereinander-Problem endlich mal zu lösen:

    Fahrzeug an bestimmtem Halt einsetzen

    Ich bitte um konstruktive Kritik (oder Lob, falls euch sonst nicht einfällt).

    Banjo

    Cogito ergo sum. Ich denke, also bin ich. Denke ich denn?

    AFAIK = as far as I know (so weit ich weiss) / IMHO = in my humble opinion (Meiner unmassgeblichen Meinung nach) / lol = laughing out loudly (lautes Herauslachen) / prellen = (jemand dekoriert seine Sätze mit zu vielen ? und !) / ROFL = rolling on the floor laughin (auf dem Boden rollend vor lachen) / SCNR = sorry, could not resist (Ich konnt's mir nicht verkneifen) / UT(F)SE = use the (fucking) search engine (benutz endlich die Suchmaschine) / WFM = works for me (funktioniert bei mir)

    Edited once, last by Banjobeni (February 10, 2012 at 7:34 PM).

    • Quote
  • Cyntherius
    Student
    Posts
    54
    Filebase Entries
    4
    • February 9, 2012 at 11:31 PM
    • #2

    sehr schön! werde ich auf jeden Fall ausprobieren. Da kommt mir der Gedanke nach einen geregelten Fahrplan für Verkehrsfahrzeuge (sodass nicht irgendwann 2 Busse direkt hintereinander auf einer Linie fahren - gibts sowas bereits?)

    • Quote
  • Banjobeni
    Professional
    Posts
    1,264
    Filebase Entries
    4
    • February 10, 2012 at 12:06 AM
    • #3
    Quote from Cyntherius

    sehr schön! werde ich auf jeden Fall ausprobieren. Da kommt mir der Gedanke nach einen geregelten Fahrplan für Verkehrsfahrzeuge (sodass nicht irgendwann 2 Busse direkt hintereinander auf einer Linie fahren - gibts sowas bereits?)


    Gibts leider nicht - und wirds IMHO ohne Umstellung der Core-Engine von CiM auch nicht geben.

    Cogito ergo sum. Ich denke, also bin ich. Denke ich denn?

    AFAIK = as far as I know (so weit ich weiss) / IMHO = in my humble opinion (Meiner unmassgeblichen Meinung nach) / lol = laughing out loudly (lautes Herauslachen) / prellen = (jemand dekoriert seine Sätze mit zu vielen ? und !) / ROFL = rolling on the floor laughin (auf dem Boden rollend vor lachen) / SCNR = sorry, could not resist (Ich konnt's mir nicht verkneifen) / UT(F)SE = use the (fucking) search engine (benutz endlich die Suchmaschine) / WFM = works for me (funktioniert bei mir)

    • Quote
  • Sebastianeh
    Administrator
    Reactions Received
    15
    Articles
    1
    Posts
    2,585
    Filebase Entries
    11
    • February 10, 2012 at 8:31 AM
    • Official Post
    • #4

    Moin Banjobeni,

    tz,tz,tz, kaum wieder da und schon gegen die Boardregeln verstoßen, das haben wir gerne :D
    §22 ->Allgemeine Foren-Regeln - Board-Regeln - Cities in Motion - Fanpage , warst halt lange nicht mehr da ;)

    Zum eigentlichen Thema.
    Ich freue mich, das ich von dir endlich mal wieder etwas lese und du uns gleich ein Mod zur Verfügung stellst.
    Werde es mal die nächsten Tage ausprobieren.

    Mfg Sebastian

    <p>I think my pig whistles.</p>

    • Quote
  • Speedy
    Master
    Posts
    2,067
    Filebase Entries
    21
    • February 10, 2012 at 9:31 AM
    • #5

    Also das werd ich auch probieren; leider hab ich Besuch und daher keine Zeit. Sonnabend, spätestens Sonntag komm ich erst dazu. :(

    PS:
    Schön mal wieder was von dir zu lesen. :thumbup:

    • Quote
  • eis_os
    Professional
    Posts
    1,025
    Filebase Entries
    2
    • February 10, 2012 at 9:53 AM
    • #6
    Quote from Banjobeni


    Fahrzeug an bestimmtem Halt einsetzen
    Ich bitte im konstruktive Kritik (oder Lob, falls euch sonst nicht einfällt).

    Ich möchte noch darauf hinweisen, dass man das nur mit CIM > 1.0.20 machen sollte, da sonst das Absturzrisko sehr beachtlich ist.
    Auch sonst haben meine Tests gezeigt, das CIM das Online umsortieren von Linien mit Abstürzen quittieren kann , sobald eine Tram gerade ein Stop erreicht.
    Das passiert aber sehr sehr sehr selten, nur so als Info, da ich CIM als Frankenstein CIM schon eine ganze weile so nutze, um Haltestellen Online entfernen und hinzufügen zu können.

    Sollte es kuriose Probleme geben, hilft es die Linie zu schließen und wieder zu eröffnen...

    Edited 2 times, last by eis_os (February 10, 2012 at 9:56 AM).

    • Quote
  • Banjobeni
    Professional
    Posts
    1,264
    Filebase Entries
    4
    • February 10, 2012 at 7:40 PM
    • #7

    eis_os, vielen Dank für deine Infos. Hast du eine Ahnung, wo die objekte definiert sind, die in diesen script files als $line o.ä. referenziert werden?

    Cogito ergo sum. Ich denke, also bin ich. Denke ich denn?

    AFAIK = as far as I know (so weit ich weiss) / IMHO = in my humble opinion (Meiner unmassgeblichen Meinung nach) / lol = laughing out loudly (lautes Herauslachen) / prellen = (jemand dekoriert seine Sätze mit zu vielen ? und !) / ROFL = rolling on the floor laughin (auf dem Boden rollend vor lachen) / SCNR = sorry, could not resist (Ich konnt's mir nicht verkneifen) / UT(F)SE = use the (fucking) search engine (benutz endlich die Suchmaschine) / WFM = works for me (funktioniert bei mir)

    • Quote
  • eis_os
    Professional
    Posts
    1,025
    Filebase Entries
    2
    • February 10, 2012 at 8:10 PM
    • #8

    Es gibt da mehrere Teile:

    a) MAIN.$grid.lines
    b) $lines
    c) MAIN.$gameDate.$lines

    a und c werden im Savegame gespeichert,

    Das Ergebniss von MAIN.$grid.lines.createLine ist das Hauptobjekt = $lineobj
    $lineobj bekommt eine Script Variable $data , das ist eine map ["index", $line.$index, "name", $line.$name, "active", false, "visible", true, "vehicles", [], "new", true];
    $lineobj kommt in $lines[] von linepanel.script.
    MAIN.$gameData.$lines[] bekommt $lineobj.$data;

    Warum so kompliziert?

    $lineobj ist eine Internes Grid Objekt, es speichert nur seine eigenen Daten,
    erweiterte Daten wie der Name oder der Status werden in $data gespeichert,
    und diese Daten müssen auch in das Savegame, also in MAIN.$gameData.$lines[].

    -edit-
    Wenn da was schief läuft, ist das Savegame wohl Schrott...
    -edit2-

    $grid.lines ist ein Array(children) mit gsTransportLine Objekten
    gsTransportLine Objekte beinhalten wiederum ein Array(children) gsTransportVehicle Objekten,

    gsTransportLine hat ein paar Events wie spawnBus, unspawnBus (ist für alle Transporttypen identisch). Die Fügen dann ein paar Visuelle Objekte hinzu zu einen Fahrzeug.

    Aber die Logik für das eigentliche auf die Linen setzen ist im gsTransportLine Objekt, aber in der C++ Seite die wir nicht kennen und nicht verändern können.

    Edited once, last by eis_os (February 10, 2012 at 8:28 PM).

    • Quote
  • gojo
    Beginner
    Posts
    36
    • March 31, 2012 at 4:53 PM
    • #9

    Wie funktioniert das mit dem patch-file? Ich würde den Mod gerne mit Linstatisticsplus kombinieren, aber das mit dem Anpassen der linepanel.script kriege ich nicht hin - Die linepanel.patch kann ich mit notepad++ öffnen, aber dann?

    Edited once, last by gojo (March 31, 2012 at 5:03 PM).

    • Quote
  • Bremer82
    Beginner
    Posts
    19
    Filebase Entries
    1
    • May 29, 2012 at 8:10 AM
    • #10

    Dem schließe ich mich an. Bin auch zu blöd das hinzubekommen :D

    • Quote
  • simser2
    Guest
    • August 11, 2012 at 1:34 PM
    • #11

    Hihi, ich hänge genau auch bei diesem Problem =D
    Banjobeni, melde dich mal bitte.

    • Quote
  • gojo
    Beginner
    Posts
    36
    • February 9, 2013 at 2:27 PM
    • #12

    Nach vielen Monaten habe ich mich nochmal damit beschäftigt. Falls noch jemand Interesse hat, LSP mit dieser Mod zu kombinieren, hier ist die Anleitung. Ich habe dabei aber die Funktion weggelassen, dass beim Entfernen von Haltestellen von einer Linie diese Linie offenbleibt, weil das oft zu Fehlern führte.

    Ihr braucht...

    • Den GSFileViewer
    • Line Statistics Plus, ich habe mit 5.6 getestet, sollte auch mit neueren Versionen gehen
    • Banjobenis Mod
    • aus Einfachheitsgründen einen Texteditor, der die Zeilennummern anzeigt, bspw. Notepad++


    Wenn alles da ist, müsst ihr:

    • Die .gs-Datei öffnen und in scripts die Datei linepanel.script öffnen (Rechtsklick->Edit...) oder sie extrahieren (Rechtsklick->Extract to...) und sie öffnen
    • In der linepanel.script zu den 230er Zeilen scrollen. Ihr ändert dann die function createBus, indem ihr Folgenden Code direkt unter dem Funktionsnamen einfügt:
      Code
      $stopIndex = $selectedStop; if ($line.active && $stopIndex > 0) { $numStops = $line.stopCount; reverseStops(0, $stopIndex - 1); reverseStops($stopIndex, $numStops - 1); reverseStops(0, $numStops - 1); }

    • Die function reverseStops definieren, indem ihr den Code am Ende einfügt:
      Code
      function reverseStops($start, $end) { 
      while ($start < $end) { 
      moveStop($start, $end); 
      $start++; 
      $end--; 
      } 
      }
    • In den 1070ern die function moveStop modifizieren: Die ersten zwei Zeilen,
      Code
      if ($selectedLine.active) togglePauseLine($selectedLine); 
      if (!$selectedLine.visible) toggleShowLine($selectedLine);

      müssen mit einem // auskommentiert ("deaktiviert") werden:

      Code
      //if ($selectedLine.active) togglePauseLine($selectedLine); 
      //if (!$selectedLine.visible) toggleShowLine($selectedLine);
    • Abspeichern. Achtet darauf, dass ihr sie wirklich als linepanel.script speichert!
    • Wenn ihr die Datei in Schritt 1 extrahiert habt: Macht im GSFileViewer einen Rechtsklick auf die Datei linepanel.script und wählt "Exclude from Archive", macht dann einen Rechtsklick irgendwo hin und wählt "Add new content...". Im folgenden Fenster könnt ihr die ersten zwei Felder ignorieren, wählt im dritten die abgespeicherte .script-Datei und tragt dann im vierten Feld vor den Dateinamen ein "scripts\", sodass im letzten Feld dann steht
      Code
      scripts\linepanel.script

      Klickt OK.

    • Wählt im GSFileViewer oben "Save to new GS File..." an, speichert es irgendwo unter dem Originalnamen (lineStatisticsPlus.gs) und verschiebt diese .gs-Datei in euren addons-Ordner. Löscht vorher die originale lineStatisticsPlus.gs!

    Der Code, den ich hier zeige, ist aus der Modifikation von Banjobeni übernommen. Darf ich die modifizierte Scriptdatei oder gleich die ganze .gs hier veröffentlichen? Das würde es für Viele wohl leichter machen.
    Wenn Bilder gewünscht sind, kann ich noch Screenshots hochladen.

    Edited 2 times, last by gojo: Einleitende Bemerkungen hinzugefügt, Absätze korrigiert (February 9, 2013 at 2:30 PM).

    • Quote

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!

Register Yourself Login

Twitch

  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™