Beiträge von VacuumTube

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


    Korrekt, das betrifft auch Brücken. Unter den 8m muss man mit shift arbeiten, um einen Bahnübergang zu vermeiden.

    Aber somit ist praktisch eine beliebige Durchfahrtshöhe möglich.


    Wie gesagt, die Möglichkeiten damit sind groß. Jede Kollision von Verkehrswegen (Lanes) kann ignoriert werden.


    Ebenso kann man durch Dämme bauen...

    Oder andere unnütze Konstellationen, bei denen sich Verkehrswege unabhängig schneiden...



    Zug, Auto und Sims würden sich auf einer gemeinsamen Trasse gekonnt ignorieren und geisterhaft ineinander gleiten (vermute ich zumindest, auf Grund meines technisch fundierten Halbwissens)

    So ist es. Daher liegt die Verantwortung dann beim Spieler, das entsprechend zu umgehen (oder zu ignorieren :D )

    Wie ihr sicher schon oft erlebt habt, kann das Bauen von Straßen, Gleisen, Bahnhöfen und anderen Objekten sehr nervig werden, wenn es in einem zugebauten Gebiet zu vielen Kollisionswarnungen kommt. Bei Assets/Constructions lässt sich die Meldung mittels skipCollision=true umgehen, man kann so trotz Kollision bauen, erhält aber auch keine Rückmeldung mehr. Für Straßen/Gleise ist dies bis dato nicht möglich.


    Ich habe rausgefunden: Das muss nicht sein!


    Bei jedem Bauvorgang, egal ob Straße, Asset oder Konstruktion (auch Upgrades oder Bulldozer), entstehen Proposal Daten, die man auslesen kann. Dies ist zB beim Track/Street Builder Info der Fall.


    Gleichzeitig kann man mit der API über buildProposal nahezu beliebige von diesen "Bauvorschlägen" bauen. Die Möglichkeiten sind umfangreicher als bei einer "normalen" Konstruktion. So kann man mit ignoreErrors=true auch Proposals bauen, die normalerweise mit einer Fehlermeldung Kollision, zu große Steigung oder Krümmung angezeigt werden. Nur wenn das Bauvorhaben "critical" ist (alles rot, "Bau nicht möglich"), kann es gar nicht gebaut werden.


    Die Daten mit denen über die API gebaut wird, haben fast dasselbe Format wie die, die man auslesen kann. Also dachte ich mir, warum nicht zwischenspeichern und mit diesen Daten dann das Proposal mit ignoreErrors=true bauen?

    Dazu gibt es eine Schaltfläche, die ähnlich wie dem Tooltip von Track/Street Builder Info beim Bauen nahe der Mausposition erscheint. Neben Straßen und Schienen lassen sich auch alle Konstruktionen sowie Upgrades mit Kollision durchführen (zB wenn die neue Straße zu breit ist).


    Dadurch ergeben sich völlig neue Möglichkeiten beim Schönbau. Außerdem muss man wegen der Rückfrage die Kollision nicht ausschalten oder die Parameter von Schienen ändern, sondern kann Probleme weiterhin erkennen, aber gezielt erlauben. Auch Schienen auf Straßen sind so möglich.

    Logischerweise ist man für die Kollision von Verkehrswegen dann selbst verantwortlich.

    Scheint so...


    Die Fehlermeldung ist hier (stdout.txt - Erklärung & typische Fehlermeldungen) tatsächlich schon kartiert, aber ohne Lösung ^^


    Code
    class Model * __ptr64 Id not found: placeholders/missing_generic.mdl
    C:\build\tpf2\src\Lib/Util/IdRep.h:84: int __cdecl IdRep<class Model *>::GetId(const class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &) const: Assertion `false' failed.


    Schau mal nach, ob bei dir die Platzhalter mdls vorhanden sind.

    Ich sehe kein return result.

    local models ist ungenutzt. Und mit [0] indizieren ist ungewöhnlich.

    Ebenso ungewöhnlich ist deine id. Normalerweise liegt die .mdl in einem Unterordner und ohne Leerzeichen.

    Warum fügst du dasselbe Modell 2x hinzu?


    Und zu Notepad: Geh aufs Lexikon F3 und "notepad". Du findest 2 Artikel, einen von mir und von Maik. Die Einrichtung ist wirklich leicht und es gibt ein paar Tipps. Alles ist besser als Windows Editor.

    aber ich bin ja eh der Dumme, weill ich "falsche" Variablen nehme

    Führ dich doch bitte nicht so auf.

    Wir geben hier gut gemeinte Hinweise von Modder zu Modder.

    Es geht doch letztendlich allen darum, Fehler bzw Crashes (auch seltene) so gut es geht zu vermeiden und man kann ja immer nur dazulernen.


    Ich habe mir gestern ebenfalls nochmal die aktuellste Version runtergeladen und tatsächlich hat "size" in "sonstige.con" gefehlt, entgegen deinem Post #26.


    Übrigens ist die Verwendung von eindeutigen Keys schon länger ein Problem und wird daher auch im Wiki gefordert: https://www.transportfever2.co…tructionbasics#parameters

    Wäre auch nicht das erste Mal, dass es dadurch zu Problemen kommt.

    Es ist nicht nötig, Mods so genau zu sortieren. Die Mühe kann man sich sparen.


    Die allermeisten Mods beeinflussen sich nicht -> Reihenfolge egal.

    Dann gibt es Mods, die hängen zwar voneinander ab. zB greift Mod A auf Modelle von Mod B zu. Trotzdem ist die Reihenfolge egal, da das Spiel zuerst alle Dateien kategorisch nacheinander einliest, dann erst Modifier, Skripte und Konstruktionen erst im Spiel.


    Nur wenn zwei Mods dieselbe Datei überschreiben (zB die Standardgleise) oder wenn zwei Skripte dieselben Variablen verändern, entscheidet die Reihenfolge über das Verhalten.


    Trotzdem eine Alternative: Verschieben der Zeilen in den Modlists von CommonAPI Export Funktion

    guapo298 Ich habe das Problem schon beschrieben.

    Es tritt in den meisten Fällen zwar nicht auf. Aber ein Parameter der verwendet wird, muss auch in der eigenen con definiert sein.

    Reproduzieren kann man es vlt, indem man nach dem Spielstart direkt auf diese Kategorie sonstiges geht.