"Terminals are not properly connected!" & Güterbahnhof ohne Mittelrampe

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 ihr Lieben,


    auf Steam habe ich zwei Meldungen, dass der "Güterbahnhof ohne Mittelrampe" die Fehlermeldung "Terminals are not properly connected!" verursacht!
    Ich kann dies bei mir nicht nachvollziehen - er lässt sich in allen Längen- und Gleis-Kombinationen fehlerfrei bauen.


    Wer hat ebenfalls das Problem mit der Fehlermeldung und evtl. Mods aktiv, welche an der "railstationconfigutil.lua" rum fummeln...

  • Hallo Tom


    Ich bekomme diese Meldung zwar nicht, wenn ich deinen Güterbahnhof ohne Mittelbahnsteig baue, aber, wenn ich die für Güterbahnhöfe umgebaute Variante deines Standard-Bahnhof-Plus-Mods bauen will.


    Die Fehlermeldung in der stdout.txt lautet:


    Code
    Terminal test failed: station/rail/gbhf_standardstation_plus.con (critical)
    c:\build\transport_fever\steam\transport_fever_release\src\game\ui\actions\construction_builder_util.cpp:2086: class std::vector<class ecs::Entity,class std::allocator<class ecs::Entity> > __cdecl construction_builder_util::Apply(struct street_util::StreetToolkit,const class transport::CargoTypeRep *,const class CGameTime *,struct construction_builder_util::Proposal,struct construction_builder_util::ProposalData,const class ecs::Entity &): Assertion `false' failed.
    MinidumpCallback: dumpPath "C:/Program Files (x86)/Steam/userdata/70262304/446800/local/crash_dump/", minidumpId "c4e59d3d-d517-4b62-8887-727a7412cdf5", succeeded 1
  • Ich habe das Problem, daß das Spiel abstürzt wenn ich den Zug auf dem gelben Gleis einfahren lasse und versuche von der gelben Station etwas abzutransportieren.
    Sobald der Zug das Entladen beginnt lande ich auf dem Desktop mit "Transport Fever funktioniert nicht mehr"


    In der Log ist dann der Pathfinder Fehler zu finden. Hängt das evtl. mit anderen Mods zusammen, die hier kollidieren?



    Edit: Ich habe in einem anderen Beitrag wohl gefunden das es mit dem Patch behoben sein soll.



    https://abload.de/img/screenshot_1405yeqlg.jpg


    AdminEdit: Bild durch Link ersetzt, bitte keine Bildeinbettung.
    Mfg Sebastian

    Einmal editiert, zuletzt von marcdo ()

  • @Ch. P.:
    Wenn Du selbst den Personen-Bahnhof zum Güterbahnhof umbaust, ist das Auftreten der Meldung korrekt.
    Es werden durch andere Maße nicht alle Lanes gleich passen und Du musst Breitenwerte, Verschiebungen
    und vllt. auch Lanes in mdl-Dateien anpassen, bis die Meldung nicht mehr kommt.


    Da es hier aber um den seit Monaten fertigen und im Einsatz befindlichen Bahnhof geht, der jetzt Probleme
    mit der im Threadtitel genannten Fehlermeldung machen soll (bei mir tut er es nicht!), ist dein
    Post hier am falschen Platz...


    @marcdo, auch dein Post hat mit dem hier gesuchten Fehler nichts zu tun!
    Dazu verweise ich dich mal da hin: Farmfehler???? ...

  • Hallo @Tom

    Wer hat ebenfalls das Problem mit der Fehlermeldung

    ich, leider. :(

    Mods aktiv, welche an der "railstationconfigutil.lua" rum fummeln

    Der Übeltäter ist - zumindest in meinem Fall - der MOD Größere Bahnhöfe/Bigger Train Stations. Ich habe eine kleine Testmap angelegt. Lade ich die Map nur mit dem Güterbahnhof ohne Mittelrampe, kann ich diesen problemlos bauen. Füge ich Bigger Train Stations hinzu, kommt die Meldung "Terminals are not properly connected!". Der Bahnhof wird dann zwar trotzdem gebaut; setze ich ihn aber auf meiner aktuellen Map ein, kommt es in weiterer Folge wieder zu dem von mir in diesem Thread beschriebenen Absturz.
    Gibt's eine Chance, dass Du und @Klamann den Konflikt lösen könnt? Würde mich sehr darüber freuen ...
    Danke + LG,
    Transalpin

  • Der Übeltäter ist - zumindest in meinem Fall - der MOD Größere Bahnhöfe/Bigger Train Stations

    Keine Ahnung, was @Klamann da veranstaltet...


    Nett, wie hier erstmal pauschal auf mich eingehackt wird, ohne die Ursache für eure Probleme zu kennen.


    Tom, du veränderst in deiner Mod die platformConfig der Vanilla-Güterbahnhöfe, und zwar bevor die eigentliche Konfuguration des Bahnhofs (makeTrainStationConfig) ausgeführt wird. Das führt dazu, dass deine Mod keine der Änderungen berücksichtigt, die eine andere Mod durchgeführt haben könnte.


    Hier ist der Patch für deine Mod:


    und schaut euch beim nächsten mal bitte erst euren eigenen Code an, ich mache mir Mühe mit meinen Mods und gehe jeder Meldung über Abstürze, die von mir verursacht sein könnten nach. In dem Fall habe ich eine Stunde lang fremden Code gelesen, um die Ursache zu finden. Da könnte ich meine Freizeit auch sinnvoller zubringen.


    Das Problem gibt es übrigens schon lange, UG hat jetzt nur dieses "Terminal test" tool eingeführt, das den Fehler meldet. Richtig glücklich bin ich mit dem Tool auch nicht, sehr große Bahnhöfe will es nicht evaluieren, obwohl die Verbindungen korrekt sind. Hat wohl ein recht kleines Rekursionslimit...

  • Mein leiber @Klamann, Du verletzt mit deiner Modifikation grundsätzliche Regeln der (objektorientierten) Programmierung: Offen für Erweiterungen, geschlossen für Änderungen!
    You break other people mods!

    Tom, du veränderst in deiner Mod die platformConfig der Vanilla-Güterbahnhöfe, und zwar bevor die eigentliche Konfuguration des Bahnhofs (makeTrainStationConfig) ausgeführt wird.

    Mein Code, der wesentlich älter als deine Mod ist, verfährt auf exakt die selbe Weise wie der Original-Code von UG, was den Aufruf der Funktionen und dessen Zeitpunkt betrifft.
    Ich verfüge über keine hellseherischen Fähigkeiten, die mich deine Modifikation und ihr inkompatibles Verhalten hätten voraus sehen lassen.


    und schaut euch beim nächsten mal bitte erst euren eigenen Code an, ich mache mir Mühe mit meinen Mods und gehe jeder Meldung über Abstürze, die von mir verursacht sein könnten nach.

    Nein! Du hast deinen Code so auszustatten, dass er vorhandenen nicht kaputt macht - nicht anders herum.


    In dem Fall habe ich eine Stunde lang fremden Code gelesen, um die Ursache zu finden. Da könnte ich meine Freizeit auch sinnvoller zubringen.

    Und warum sollte ich deinen Code lesen und meine Zeit verschwenden, um hinter dem Durcheinander wieder aufzuräumen, den DEINE Mod verursacht?


    Das Problem gibt es übrigens schon lange, UG hat jetzt nur dieses "Terminal test" tool eingeführt, das den Fehler meldet.

    Dein Mod jubelt meinem Bahnhof wieder mdl-Dateien mit Terminals unter, die ich aus gutem Grund entfernt hatte. Jetzt, nach dem Patch kommt es ans Tageslicht.
    Wie Du das behebst - Blacklist, DEINEN Code sicher machen, etc., ist mir egal...

  • Wirklich unglaublich, wie sich manche im Forum hier über andere auskotzen.

    Du bist ja wohl derjenige selbige, der hier herum kotzt.
    Es ging ja schon in deinem vorletzten Post los.

    und schaut euch beim nächsten mal bitte erst euren eigenen Code an,

    Ich habe also Mist programmiert?


    Du brichst mit deinem Mod die API von UG, nicht ich!
    Und wenn man dich darauf hinweist, kannst Du nur rumpöppeln:

    Wer die Weisheit mit dem Löffel gegessen hat, kann ja problemlos alles alleine machen.


    Wenn Du so sorgsam bist, wie weiter oben behauptet, kannst Du mir ja vielleicht verraten, warum Du einfach mal einen UI-Parameter-Schlüssel änderst, der dann zu @laedis Problem geführt hat:


    Du überschreibst hier eine Funktion und änderst einfach mal so den Schlüssel für die Gleisanzahl von "numTracksIndex" zu "numTracks":


    Das Du damit andere Modder an den Rand der Verzweiflung bringst, weil sie sich den daraus resultierenden Fehler erst einmal nicht erklären können, ist ja kein Problem.
    Bei den einen geht es, bei den anderen nicht. Sollen die Modder halt ihren Code genauer anschauen!
    Was hat der eine Spieler in seiner Map, was der andere nicht hat. Ah - deinen Mod! Sollen die Modder halt ihren Code genauer anschauen!


    Das Du mal eben die API nach deinem Gusto änderst - darauf muss man erst einmal kommen!
    Wir MÜSSEN also auch deinen Code anschauen, um den Fehler zu finden. Wir müssen halt nur unseren UND deinen Code genauer anschauen.


    Aber statt DEINEN Fehler zu beheben, andere Modder zum Ändern ihrer Mods aufzufordern, ist dann ja wohl auch ganz normal und gängige Praxis in der Software-Entwicklung.


    Es ist ja auch ganz normal, dass ich hier diesen Thread starten musste, um dahinter zu kommen, warum sich etliche Spieler BEI MIR über Fehler beschweren, die DU VERSURACHST.


    Und wenn es dann Kritik gibt, ziehst Du den Schwanz ein


    Ich bin da raus.

    und lässt uns auf den Brocken sitzen.


    "Wer die Hitze nicht verträgt, sollte die Küche meiden..."

  • Nett, wie hier erstmal pauschal auf mich eingehackt wird, ohne die Ursache für eure Probleme zu kennen.

    Hallo @Klamann,
    ich bitte um Entschuldigung für meine Wortwahl. Statt "Der Übeltäter ist ..." hätte ich wohl besser schreiben sollen, dass die Ursache ein Konflikt zwischen "Güterbahnhof ohne Mittelrampe" und "Bigger Train Stations" zu sein scheint. Dies insbesondere in Anbetracht der Tatsache, dass ich nicht selber Modder, sondern nur (dümmster anzunehmender) User von MODs bin. Ich möchte aus eben dieser Sicht eines Users auch noch erwähnen, dass ich bislang keine Konflikte von "Bigger Train Stations" mit anderen Bahnhofs MODs feststellen konnte. Und ebenso kann ich als User leider nicht beurteilen, ob Du oder @Tom in dieser Debatte Recht hast/hat. Alles was ich tun kann, ist euch beide zu bitten, das Ganze nochmals in Ruhe zu diskutieren und gemeinsam eine Lösung zu finden.
    Danke im Voraus + LG,
    Transalpin

  • Und ebenso kann ich als User leider nicht beurteilen, ob Du oder @Tom in dieser Debatte Recht hast/hat. Alles was ich tun kann, ist euch beide zu bitten, das Ganze nochmals in Ruhe zu diskutieren und gemeinsam eine Lösung zu finden.

    Die Lösung ist ganz einfach.


    Die "API" von UG für ihre Bahnhöfe besteht aus folgenden, "öffentlichen" Funktionen - in der Reihenfolge ihres Aufrufs aus einer con-Datei.
    "stationConfig" ist eine Struktur, die die möglichen Längen, Gleiseanzahl, Gleistypen etc. enthält:


    1) makeStationBuilding(stationConfig) in railstationconfigutil.lua:
    Gibt ein Feld von "Gebäude-Modellen" zurück, die entsprechend der Größen in "stationConfig" des Bahnhofs zu verwenden sind.


    2) makePlatformConfig(stationConfig) in railstationconfigutil.lua:
    Gibt ein Feld mit den Plattform-/Bahnsteig-Elementen für den ersten, den mittleren und dem letzten Bahnsteig für jeweils ALLE möglichen Längen des Bahnhofs zurück


    3) makeTrainStationParams(stationConfig, platformConfig) in paramsutil.lua:
    Liefert die UI-Parameter des Bau-Menüs anhand der stationConfig-Eigenschaften UND die möglichen Bahnhofslängen anhand der in 2) erzeugten Plattform-Konfigurationen


    4) makeTrainStationConfig(params, stationConfig, stationBuilding, platformConfig) in railstationconfigutil.lua:
    Die tut nicht viel! Sie erzeugt anhand der Optionen im Bau-Menü, deren Spieler-Auswahl in "params" übergeben wird, der Bahnhof-Konfiguration "stationConfig" und den
    in 1) und 2) erzeugten Gebäude- und Plattform-Konfigurationen eine "komprimierte" Konfigurations-Struktur, die die für den endgültigen Bau notwendigen Parameter
    zusammen faßt. Anhand dieser Struktur wird in Schritt 5) der konkrete Bahnhof gebaut.


    5) makeTrainStationNew(config) in constructionutil.lua:
    Baut schließlich und endlich den Bahnhof.


    Kurz:
    Diese fünf Schritte werden in ALLEN Vanilla-Bahnhöfen von UG und auch von deren "Curved"-Stations durchgeführt.
    Es werden nacheinander verschiedene Konfigurations-Funktionen aufgerufen, deren Ergebnisse als Eingangs-Parameter weiterer Konfigurations-Schritte dienen.


    WICHTIG dabei ist, dass KEINE nachfolgend aufgerufene Funktion die ihr übergebenen Daten ändert!
    Aber genau dies tut @Klamanns Mod. Er ignoriert die übergebene "platformConfig" und generiert sie in seiner "makeTrainStationConfig" neu.
    Die Konsequenz: Änderungen, die eine Mod an der "platformConfig" gemacht hat, werden rückgängig gemacht - mit den in diesem Thread behandelten Auswirkungen.
    Nicht nur diese. "Nichtverbundene Terminals" können laut UG zu merkwürdigem Verhalten und Abstürze führen. Also vor dem "Usability"-Patch gebaute Bahnhöfe
    können nach wir vor zu merkwürdigen Abstürzen führen.


    Lösung:
    Obiges "Protokoll" MUSS eingehalten werden. "makePlatformConfig" muss sauber überschrieben werden und darf NICHT in "makeTrainStationConfig"
    nochmals aufgerufen werden.
    Außerdem dürfen KEINE der von UG vorgegebenen Schlüssel der UI-Parameter geändert werden.


    Das Problem des jetzigen Zustands:
    Im Ergebnis ernte ich im Steam-Workshop Negativ-Bewertungen, weil mein Bahnhof nicht funktioniert. Und ich wusste lange nicht, warum :(


    VIEL SCHLIMMER aber ist, dass "neue" Modder sich vermutlich an UGs Code orientieren werden und entsprechend diesem eine neue Bahnhofs-Modifikation
    erstellen. Irgendwann wird es dann heißen, ihr Bahnhof funktioniere nicht! Und sie werden sich wundern, da er bei ihnen und anderen einwandfrei
    funktioniert. Von der verursachenden Mod und deren Auswirkungen haben sie keine Ahnung und sie fangen langsam an, an ihrem Verstand zu zweifeln.
    So ja schon geschehen...

  • @Tom


    Sehr gut geschrieben und auf den Punkt gebracht. :thumbup:
    Ich hatte ja da Problem per Zufall bei meinen Bahnhöfe ohne Gebäude gefunden.
    Als "Notlösungen habe ich die "Standartfunktion" bei mir unterem anderen Name eingebunden. :saint:
    So läuft es nun, auch wenn der MOD von Ihm aktiv ist.


    Gruss Laedi

BlueBrixx