1. Dashboard
  2. Forum
  3. Filebase
  4. Lexikon
  5. Artikel
  6. Spieletest
  7. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  8. Zur Transport Fever Community
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Forum
  • Filebase-Eintrag
  • Lexikon
  • Artikel (Bewertungssystem)
  • Erweiterte Suche
  1. WiSim Welt
  2. Forum
  3. Spiele
  4. Cities in Motion
  5. Tipps & Tricks

Workaround: Fahrzeugpannen

  • Bennhardt
  • 25. Februar 2011 um 17:53
  • norlas
    Gast
    • 4. März 2011 um 12:33
    • #21

    Mhh also ich habe vllt auch noch etwas rausgefunden...

    MAn muss da nichts verstellen oder so ^^... ich habe einfach immer aufgepasst, dass die Fahrer genügend Gehalt bekommen.
    Ich hatte jetzt gaerde beim spielen 1-2 Pannen sonst ist alles reibungslos verlaufen.

    MAnchmal reicht es auch ihnen nur 50Cents zu geben, hauptsache sie haben einen grünen Smiley.

    Vielleicht ist das bei mir nur Zufall, oder es stimmt tatsächlich ^^, für wenig Geld würde ich auch etwas schlampiger arbeiten ;P

    • Zitieren
  • kabe
    Gast
    • 6. März 2011 um 14:37
    • #22

    Was mir nun aufgefallen ist, dass bei den schnelleren Spielgeschwindigkeiten weniger Pannen auftreten, als bei der normalen. Anscheinend ist der Pannentrigger nicht ganz auf die Spielgeschwindigkeiten abgestimmt. Könnte an der höheren Berechnungslast liegen, so dass dadurch die Pannentrigger nicht so oft ausgelöst werden.

    Haben noch andere das beobachtet und können das bestätigen? Oder bilde ich mir das nur ein und alles war nur Zufall?

    • Zitieren
  • Jack9183
    Gast
    • 6. März 2011 um 23:43
    • #23

    Also ich habe gemerkt das wenn man die Wartungskosten auf 95 % setzt bringt es absolut nichts ausser mehr Ausgaben.Meine U Bahnen gehen trotzdem genau so oft kaputt wie vorher.Ich finde hier hat man extrem übertrieben.Wenn jede Bahn oder jeder Bus im RL so oft kaputt gehen würden dann würde kein Mensch mehr mit ÖVM fahren

    • Zitieren
  • Ricci
    Gast
    • 7. März 2011 um 16:36
    • #24

    Also Anfangs haben mich Pannen nicht so gestört, weil selten.

    Aber nun wo ich einige Linien habe und dementsprechend viele Fahrzeuge, nervts gewaltig.... Alle paar Sekunden kommt die Meldung, dass irgendein Fahrzeug eine Panne hat!

    Grundsätzlich ist die Idee mit den Pannen keine schlechte, aber hier hat man den Eindruck, dass die Fahrzeuge billiger chinesischer Müll sind der keine 5 Minuten hält... :cursing:


    MFG

    • Zitieren
  • hannibal
    Anfänger
    Beiträge
    39
    Filebase Einträge
    3
    • 7. März 2011 um 20:47
    • #25

    Man könnte ja als uneleganten Hotfix den Pannensound ausstellen. Die Meldung selbst und die Auswirkungen bekommt man ja gar nicht so mit, nur das ständige Geräusch alle paar Minuten nervt.

    • Zitieren
  • Shona
    Gast
    • 7. März 2011 um 23:06
    • #26

    also ich hab die folgenden zwei zeilen aus dem ersten beitrag bearbeitet und nun kommt keine meldung mehr ist zwar auch nicht optimal wenn nichts mehr kaputt geht aber besser als alle 2 minuten die nachricht

    Zitat

    $targetCondition = 1.0 / (1.0 + $transportVehicle.travelDistance / (4000000.0 * (0.1 + $vehicle.$reliability * 0.9) * (0.1 + $maintenanceLevel * 0.009)));
    $vehicleData["condition"] = $transportVehicle.condition = $vehicleData["condition"] * 1.0 + $targetCondition * 0.0;


    Die Werte standen auch irgendwo auf der ersten Seite muss noch genau raussuchen wo^^

    • Zitieren
  • kaos
    Gast
    • 9. März 2011 um 14:21
    • #27
    Zitat von Bennhardt

    Ich nutze quasi 3 Sachen, die das Spiel verändern.

    1. Die Realismus-Mod, die den Fahrzeugen mehr Sitzplätze, aber höhere Betriebskosten einbringt.
    2. Die Änderung der Verkehrsdichte (siehe passenden Thread hier). Ich habe in der economy.script die Clamp-Zahl auf 0.4 stehen. Somit staut sichs immer noch, aber nicht mehr so nervig.
    3. Die Konstante für die Abnutzung der Fahrzeuge in der player.script. Die hab ich auf viermillionen stehen (von ursprünglich zweihunderttausend). Dadurch bleiben die Fahrzeuge länger frisch. Vielleicht ist das bisschen zu viel - ich hatte mal mit vierhunderttausend rumgespielt, dadurch verloren Busse jedes Jahr ein Prozent an Zustand. Pannen passieren trotzdem, was tierisch nervt, zumal mein 4%-Doppelstockbus öfter die Hufe hochmacht als ein 20%-Bus. Da hat jemand in Stochastik nicht aufgepasst bei den Programmierern von Colossal :D :D

    Somit ist das in meinen Augen gut spielbar und man kann getrost auch mit kleinen Buslinien anfangen. Auch in den 20er Jahren.

    1. Du meinst den "vehicle Realism Mod", oder? Den einfachen mit FS FIleviewer entpacken oder?

    2. Zu Clamp hab ich diese Stelle gefunden. Wo genau muss 0.4 veräendert werden?

    Code
    $num = MAIN.$grid.citizens.count;
      if ($num == 0) $num = $grid.citizens.getHomeCount();
      if ($num < 18000) {
        $grid.citizens.carMultiplier = clamp(500.0 / max(1.0, $num - 22550.0) + 0.89, 0.0, 1.0) * MAIN.$campaign.$campaign.$privateCars * 0.01;
      } else {
        $grid.citizens.carMultiplier = clamp(9000.0 / max(1.0, $num - 1300.0) + 0.24, 0.0, 1.0) * MAIN.$campaign.$campaign.$privateCars * 0.01;
      }

    3. Könntest du noch sagen, wo du das in der player.script geändert hat?


    LG und Danke :)

    • Zitieren
  • Bennhardt
    Schüler
    Beiträge
    94
    Filebase Einträge
    1
    • 9. März 2011 um 16:12
    • #28

    Die RealismusMod musst du nicht entpacken, sondern einfach nur ins Spieleverzeichnis kopieren. Anleitung sollte bei der Mod dabei sein.

    CLAMP ändern:

    aus:

    if ($num < 18000) {
    $grid.citizens.carMultiplier = clamp(500.0 / max(1.0, $num - 22550.0) + 0.89, 0.0, 1.0) * MAIN.$campaign.$campaign.$privateCars * 0.01;
    } else {
    $grid.citizens.carMultiplier = clamp(9000.0 / max(1.0, $num - 1300.0) + 0.24, 0.0, 1.0) * MAIN.$campaign.$campaign.$privateCars * 0.01;
    }

    mach:

    if ($num < 18000) {
    $grid.citizens.carMultiplier = clamp(500.0 / max(1.0, $num - 22550.0) + 0.89, 0.0, 0.4) * MAIN.$campaign.$campaign.$privateCars * 0.01;
    } else {
    $grid.citizens.carMultiplier = clamp(9000.0 / max(1.0, $num - 1300.0) + 0.24, 0.0, 0.4) * MAIN.$campaign.$campaign.$privateCars * 0.01;
    }

    ...oder mehr oder weniger, je nach Lust und Laune.

    Player.script:
    Such mal nach 200000 (zweihunderttausend). Dort müsste eine lange Formel stehen. Da den Faktor ändern.
    Alle diese Infos stehen aber auch überall in den Foren. Einfach danach suchen.

    • Zitieren
  • maikjulian26
    Fortgeschrittener
    Beiträge
    176
    Filebase Einträge
    1
    • 9. März 2011 um 17:09
    • #29

    in welchem script befindet sich denn der clamp Quellcode :?: ?(

    oha bestimmt in der player.script oder ?

    • Zitieren
  • Alc
    Gast
    • 12. März 2011 um 21:58
    • #30

    Muss man für Scriptsänderungen ein neues Spiel anfangen?

    LG. Alc

    • Zitieren
  • BLu
    Gast
    • 13. März 2011 um 15:41
    • #31
    Zitat von Alc

    Muss man für Scriptsänderungen ein neues Spiel anfangen?

    LG. Alc

    Meines Wissens nicht.

    Andere Frage: Mit welcher Skriptsprache sind die Scripts denn geschrieben oder haben die sich da was eigenes zusammengeschustert?

    • Zitieren
  • AlexR303
    Gast
    • 13. März 2011 um 17:37
    • #32

    Um die folgenden Vorschläge zu erklären schreib ich erst mal was ich momentan eingestellt hab.

    Ich nutze momentan eine einfache Veränderung von:

    $vehicleData["condition"] = $transportVehicle.condition = $vehicleData["condition"] * 0.8 + $targetCondition * 0.4 (<-- glaub ich war Standard)

    Und da ich die Pannen nicht komplett abschalten wollte hab ich es abgeändert in:

    $vehicleData["condition"] = $transportVehicle.condition = 0.825

    was ja heißt, dass der Zustand der Fahrzeuge permanent auf 82,5 Prozent gesetzt wird. Dadurch werden die Pannen nicht abgeschaltet, aber diese kommen auch nicht so oft vor. Und jetzt wieder ein ABER:

    Das bedeutet ja, wenn ichs richtig verstanden hab, dass die Berechnungen zur Attraktivität bzw. Kundenzufriedenheit so manipuliert werden, dass diese zum Teil "statisch" sind. Außerdem sind in diesem Fall die Wartungskosten komplett unnütz, also ist das nur eine vorübergehende Lösung.

    Deshalb hab ich mir zwei Modelle überlegt. (Info: Hab keine Programmierkenntnisse und ich kapier das Zeug auch nicht wirklich, also korrigiert mich bitte wenn einer, oder alle zwei, der folgenden Vorschläge nicht möglich sind.)

    Erst mal noch was anderes: Was mich eigentlich am meisten nervt ist, dass der Fahrzeugzustand nicht zum Reparieren geht. Gut, zugegeben es wäre unrealistisch, aber es stört (finde ich) eindeutig das Spiel, denn ab einer gewissen Linienanzahl und Fahrzeugen wäre ich nur noch mit austauschen beschäftigt, was mir irgendwie den Spielspaß verdirbt. Nun aber zu den Modellvorschlägen:

    Modell 1:

    Voraussetzungen: Beliebige "normale" Schadensberechnung der Fahrzeuge.
    Was soll passieren: Zustand eines jeden Fahrzeuges wird alle X-Jahre auf hundert Prozent zurückgesetzt. (X variabel einstellbar.)
    Auswirkungen: Zusätzliche Kosten, die jedoch nicht einem neuen Fahrzeug entsprechen!!! (+ eventuell Fahrzeugausfall -"parken im Depot"- für ein paar Tage um die Kosten nicht zu hoch anzusetzen? <-- In diesem Fall dürften natürlich nicht alle gleichzeitig ausfallen -und schon gar nicht alle von einer Linie-, wobei das Depotoberlimit glaub ich eh bei 6 liegt.)

    Modell 2:

    Voraussetzungen: Beliebige "normale" Schadensberechnung der Fahrzeuge.
    Was soll passieren: Zustand des betreffenden Fahrzeuges wird automatisch ab X Prozent wiederhergestellt. (X variabel einstellbar, vielleicht in 5er Prozentschritten wie bei den Wartungskosteneinstellungen. <-- Ich glaube "Der Verkehrsgigant" hatte diese Variante wenn ich mich nicht täusche.)
    Auswirkungen: Zusätzliche Kosten, die jedoch nicht einem neuen Fahrzeug entsprechen!!! (+ eventuell Fahrzeugausfall -"parken im Depot"- für ein paar Tage um die Kosten nicht zu hoch anzusetzen? <-- Auch hier ist zu beachten, dass das Depot ja scheinbar ein Oberlimit hat. Hier ist es außerdem reiner Zufall, wenn alle Fahrzeuge einer Linie gleichzeitig zu reparieren wären.)

    Schlusswort: Dadurch, dass X variabel ist, könnten die Fahrzeugpannen ohne großen Workaround minimiert werden und jeder bekommt trotzdem noch Gewinn. Es wäre jedem selbst überlassen, wie weit der Zustand sinken soll, bzw. wie sehr die Fahrzeuge dadurch pannenanfällig werden. Zusätzlich dazu würde der nervige Fahrzeugaustausch auch wegfallen.

    Und nun wünsche ich viel Spaß dabei meine Vorschläge entweder auseinanderzunehmen, sie zu benutzen, sie teilweise zu benutzen, sie zu verbessern oder sie zu ignorieren. Je nachdem was halt umsetzbar oder erwünscht ist. :D

    L.G. Alex

    PS: Ich favorisiere Modell 2.

    • Zitieren
  • AlPoMa
    Gast
    • 14. März 2011 um 20:57
    • #33

    Die Häufigkeit der Pannen ist das eine Problem. Das andere ist die Pannendauer. Ich glaube, da hab ich was gefunden

    In metro/ui/linepanel/linepanal.script gibt es folgende Zeile:

    Code
    .stopTime = 120.0 - MAIN.$gameData.$employeeHappiness[2] * 100.0;

    Ändert man die 120.0 in 60.0, verkürzt sich die Pannendauer. Dadurch nimmt der Stau von folgenden Fahrzeugen ab. Eine Änderung in 0.0 lässt bei mir das Fahrzeug kurz aufrauchen, dann fährt es aber sofort weiter.

    Das Problem: Bei bestimmten Werten, z.B. 45.0, hören die Pannen nicht mehr auf. Es scheint so, als ob nach dem Pannenende sofort eine neue Panne auftritt (zumindest gehen die Türen immer wieder auf und zu).

    Ich habe auch Änderungen der 100.0 durchgeführt (z.B. 0.01 oder 10000.0). Fazit: Keine Änderung oder Dauerpanne.

    Meine Frage: Kann das jemand bestätigen oder dementieren?

    PS: Ich habe das ganze nur mit Strassenbahnen getestet.

    • Zitieren
  • Abbadon
    Anfänger
    Beiträge
    53
    • 15. März 2011 um 12:51
    • #34

    Sieht aus, als wären die 120 (Sekunden?)die maximale Pannendauer, je nach dem wie glücklich die Angestellten (MAIN.$gameData.$employeeHappiness[2]) sind, wird die Pannendauer verkürzt.
    Werd ich bei Gelegenheit mal ausprobieren.

    • Zitieren
  • AlPoMa
    Gast
    • 15. März 2011 um 13:35
    • #35

    Die 120 habe ich Anfangs auch für die Maximale Standzeit gehalten. Gemessen habe ich aber bis zu 180 Sekunden Standzeit. Da waren meine Leute aber auch wirklich unglücklich. (Würde ich auch sein, wenn es nur einen Euro gibt ;) )

    Ich habe jetzt mal

    Code
    .stopTime = 120.0 - MAIN.$gameData.$employeeHappiness[2] * 100.0;

    in

    Code
    .stopTime = (120.0 - MAIN.$gameData.$employeeHappiness[2] * 100.0)/3;

    umgewandelt. Die Zeit wird ebenfalls kürzer und es treten nicht die Probleme der Dauerpanne auf.

    • Zitieren
  • Fragi
    Gast
    • 22. März 2011 um 23:11
    • #36
    Zitat von kabe

    Ansonsten sehe ich das so wie Bennhardt. Ohne Pannen und Abnutzung macht es keinen Spaß. Allerdings finde ich die Abnutzung im Original als viel zu hoch, weshalb ich den Wert auf 1 Million verfünffacht habe.

    1 2
    $targetCondition = 1.0 / (1.0 + $transportVehicle.travelDistance / (200000.0 * (0.1 + $vehicle.$reliability * 0.9) * (0.1 + $maintenanceLevel * 0.009)));

    Hast du den rot markierten Wert auf 1.000.000 gesetzt?
    Habe ihn auf geändert aber der Wert wird beim speichern nicht übernommen? Also ich speichere mit dem Wert 1.000.000 starte das Spiel wenn ich dann wieder die Datei öffne ist der Wert wieder auf 200.000?
    Wie kann ich die Datei mit dem GSFile Viewer die Datei auf read only setzten

    • Zitieren
  • kabe
    Gast
    • 23. März 2011 um 10:08
    • #37

    Wenn du die Datei im GSFile Viewer bearbeitest hast, musst du danach auch eine neue metro.gs Datei erzeugen, die die Änderungen speichert. Alternativ exportierst du die einzelne Datei aus der metro.gs, änderst diese und fügts sie manuell in die CiM Ornderstruktur ein (Cities In Motion/metro/scripts).

    Das Programm Notepad++ ist zum editieren empfehlenswert.

    Hoffe es klappt nun ;)

    • Zitieren
  • Fragi
    Gast
    • 23. März 2011 um 13:17
    • #38

    ok, hat geklappt mal schauen obs jetzt besser spielbar is, das war eig das einzigste was mich störte an dem spiel^^ mir reicht schon wenn sie ~5mal weniger Pannen haben

    EDIT: Also die Pannen haben sich schon verringert, aber wenn die Pannen zufällig kommen würden, warum fallen dann immernoch alle gleichzeitig aus? Also alle die am selben Tag gekauft wurden?!
    So zufällig kann es ja nich sein oO

    und als ich grad so durch den quellcode gestöberte hab ich das gefunden: :D :D :thumbup: :thumbup:

    Einmal editiert, zuletzt von Fragi (23. März 2011 um 14:52)

    • Zitieren
  • Synthtronic
    Profi
    Beiträge
    812
    Filebase Einträge
    7
    • 23. März 2011 um 18:40
    • #39

    Das ist schon alt, das haben wir schon zu Beta-Zeiten entdeckt.

    Aktuelle CiM Beta-Karte gibts es hier: Fishtown - Beta 1930 (0.6.1) 17.11.2012
    Aktuelle CiM2 Karte: Sarnia (ON) - Port Huron (MI) v1.00 (14.06.2015)

    http://www.Spielerheim.de

    • Zitieren
  • Fragi
    Gast
    • 28. März 2011 um 15:12
    • #40

    is noch jmd dabei das teil komplett zu entschlüsseln oder hat man jetzt die wahl keine pannen oder mehr oder weniger effektiv (eher weniger :/ ) mit den zahlen da der $targetCondition rumzuspielen?

    Zitat von Fragi

    EDIT: Also die Pannen haben sich schon verringert, aber wenn die Pannen zufällig kommen würden, warum fallen dann immernoch alle gleichzeitig aus? Also alle die am selben Tag gekauft wurden?!
    So zufällig kann es ja nich sein oO

    außerdem, vllt kommt es mir echt nur so vor, aber wenn ich es bei mal mal echt läuft dass ich laut Prognose am Ende Monats richtig gewinn einsatze gehen die Züge auch auffäilg oft kaputt, dagegen wenn ich alles so einstelle dass ich grad so gewinn mache hab ich nicht so häufig Pannen kann das sein?

    Einmal editiert, zuletzt von Fragi (28. März 2011 um 15:37)

    • Zitieren

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Twitch

  1. Datenschutzerklärung
  2. Impressum
Community-Software: WoltLab Suite™