CommonAPI2 Entwicklungsdiskussion, Fragen & Antworten

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


  • I hope COMMONAPI2 MOD can be restored as soon as possible after the TPF2 version is updated. . Thanks to eis_os for making this MOD, very useful. Basically all my uep2 mods will add the code to call COMMONAPI2. .

    ----------

    After get off work tonight, I tested the BETA version of the game. It seems that it is indeed COMMONAPI2 that caused the game loading error (20230202-beta will cause the game to freeze when it loads to 93%). . .

    After canceling COMMONAPI2 loading and closing the menu, the game can be loaded normally.

    ----------

  • 1.8.20230209 Beta

    Ein fix für CommonAPI2 damit zwei Threads (GUI und Savegame Ladethread) nicht zu einem Deadlock führen, wenn beide gleichzeitig auf CommonAPI2 LUA State zugreifen.
    This is a fix for CommonAPI2, two threads (gui and savegame loading) could create a deadlock when both try to access the CommonAPI2 lua state.


    1.8.20230209-beta

    - THIS VERSION IS FOR TPF2 Steam beta build 35153 and GOG build 35153 only!

    - native: rewrote internal LUAObject wrapper mutex and allocation, should fix deadlocks

  • Moin,

    ich habe da mal eine Frage.


    Ich habe mit crashDebug eine große stdout.txt erstellen lassen.

    Ist der, bei "ModelRep->getMetadataMap:" zum Zeitpunkt meines Absturzes, letzte Eintrag zwingend der Grund für den Absturz oder kann es auch eine andere Datei sein?


    Dann hätte ich echt keine Ahnung, wo das genaue Problem liegt.

    Du suchst/benötigst Bilder von Bus-/Bahnanlagen oder Fahrzeugen (Bus, Bahn)? Schreib mir gerne und ich werde sehen, was ich tun kann. Kamera: Panasonic Lumix G9L

    Ich stelle mich auch gerne als Modtester zur Verfügung.


    Made im Norden - Meine Heimat :)

    Schaut doch mal in meine Bilder rein: -> -Klick- Ich würde mich sehr freuen. ^^


    Hardware: CPU: Ryzen 7 5800X 8x 3,8 MHz GPU: GeForce RTX 3060Ti Treiberversion: 546.65 Arbeitsspeicher: 32 GB DDR4 Festplatte: SSD


  • Gab es einen Fehler bezüglich danach bezüglich Metadaten?
    MetadataMap::Get<struct model_metadata::


    Da technisch mehrere Threads beteiligt sein können, kann ich das nicht 100% sagen, die Chance ist aber sehr hoch das es das letzte Modell laut TPF2 auch der Grund dafür ist einen Fehler mit MetadataMap::Get<struct model_metadata::Availability> oder ähnliches zu verursachen.

    Da TPF2 Code in der Regel so aufgebaut ist:

    Code
    metadataMap = ModelRep->getMetadataMap (ModelRep, ModelID) <- Mit CrashDebug, wird CommonAPI2 hier den Modellnamen via stdout.txt herausgeben
    
    <Mehr ProgrammCode>
    
    daten = MetadataMap::Get<struct model_metadata::Irgendwas>(metadataMap)


    Sollte nun MetadataMap::Get einen assert machen und TPF2 beenden, dann muss irgendwann man vorher das ModelRep da oben befragt worden sein.


    Warum im Modell zum Beispiel kein Availability vorhanden ist? Entweder hat das Modell es nicht oder ein Script Mod hat das Modell geändert, alternativ wird ein Model fälschlicherweise als etwas anderes genutzt. Beispiel ein Asset als Fahrzeug oder so...


    Und bevor hier wieder herum spekuliert wird, nein das ist kein Fehler der durch CommonAPI2 verursacht wird, aber CommonAPI2 kann halt Debugging Werkzeuge anbieten die Urban Games oder Dinos halt nicht anbieten...

  • Ich schaue es mir nochmal an


    Tut mir leid, wenn ich den Eindruck erweckt habe, dass das ein Fehler durch die CommonAPI2 wäre.

    Das war nicht meine Absicht und das glaube ich persönlich auch nicht.

    Du suchst/benötigst Bilder von Bus-/Bahnanlagen oder Fahrzeugen (Bus, Bahn)? Schreib mir gerne und ich werde sehen, was ich tun kann. Kamera: Panasonic Lumix G9L

    Ich stelle mich auch gerne als Modtester zur Verfügung.


    Made im Norden - Meine Heimat :)

    Schaut doch mal in meine Bilder rein: -> -Klick- Ich würde mich sehr freuen. ^^


    Hardware: CPU: Ryzen 7 5800X 8x 3,8 MHz GPU: GeForce RTX 3060Ti Treiberversion: 546.65 Arbeitsspeicher: 32 GB DDR4 Festplatte: SSD


  • Build 35171


    Allgemeine Info zu heutigen Update, laut ersten Dump hat Urban Games an der ModelMetaData Map herumgeschraubt und benutzt da jetzt was neues,

    daher wird es in den nächsten Tagen kein zeitnahes Update der CommonAPI2 geben!

  • So auch wenn es vielleicht nur 24 Stunden hält, bis UG uns wieder mit einer neuen Version beglückt :)


    Leider erst mal nur für Windows Build 35171:


    1.8.20230215-beta

    - THIS VERSION IS FOR TPF2 Steam windows beta build 35171 only!

    - native: fix a lot of code fragment for build 35171

    - native: disable flexstreet upright feature, patching not possible anymore

    - add Parallel Hashmap license

  • Unser eis_os, unermüdlich, wie einst Don Quijote im Kampf gegen UG's Windmühlen...!

    Top, läuft wieder alles und auch die mittigen Strassenbahngleise mäandern nicht mehr durch die Walachei!

    Der Mensch ist nicht das, was er vorgibt zu sein - er ist das, was er verbirgt!

  • Dank des super tollen GOG Clienten hat es das Update wieder mal nicht gemacht. Nun hab ich die Einstellungen wieder mal geändert, dann hat es erst mal wieder Stabil installiert
    (beta war grau und nicht wählbar obwohl Beta installiert war), dann durfte ich wieder Beta installieren. ||


    gog_35171_1 sollte wohl als buildoverwrite funktionieren...

  • So nun das ganze für alle von CommonAPI2 unterstützten Plattformen:

    GOG Windows Beta 35191

    Steam Windows Beta 35191

    Steam Linux Beta 35191


    1.8.20230218-beta

    - THIS VERSION IS FOR TPF2 Steam beta build 35191 and GOG build 35191 only!

    - linedestination: switch to vehicle manager button fixed, added scrolling code

  • Wenn ich nicht ständig damit beschäftigt wäre, mir erst mal einen API Baukasten zu bauen, das wäre schön:



    Nunja, ich hab langsam den Dreh raus.


    Bei jedem Fahrzeughalt gibt es nun ein CommonAPI VehicleArrived Event.
    Hier nur mal ein paar Teile aufgezählt was CommonAPI2 dafür alles "Anfassen" muss:

    - Low level access zum Entity Component System.

    - GameState und GameRessourcen,

    - GameScriptRep, wir wollen ja ein Event schicken.

    - Eine Möglichkeit ein ecs::component::TransportVehicle zu ändern ohne es komplett neu "zu kaufen" via cmd.ReplaceVehicle,
    - Dafür müssen wir via sol einen schreibbares ecs::component::TransportVehicle erschaffen.

    - Ne Möglichkeit der Engine mitzuteilen, das die Modelle neu angepinselt wurden.


    Daher:

    Nö ich hab noch keine UI und wo die Reise hingeht ist auch noch nicht klar.

    Technisch bedient es sich aber an Vorarbeiten von LINE_DESTINATION, man kann also im Linienfenster bei jeder Einfahrt die Farbe automatisch anpassen lassen.


    Wer UI Ideen hat, gerne her damit... Gerade so ne Art Palette Vorauswahl wäre wohl gut, sonst bleibt es bei Karneval...

  • Ich weiß jetzt nicht ob das mit den Zielanzeigen hier reingehört:

    Ich hätte den vorschlag dass man zwei Zeilen zum Eingeben hat, was gerade bei Bussen realtistisch wäre.

    Ich stelle mir das so vor:

    -Obere Zeile: Wie bisher das Fahrziel

    -Untere Zeile: Kleinere Schrift dür darunter, z.B. "über X, X, Z..."

  • Buildoverwrite für Build 35210 scheint zumindest bei der Windows Steam Version zu funktionieren. Sollte irgendwas komisch sein, so bitte mitteilen.


    Windows: steam_35210_1

    Linux: steam_35210_2


    Werde keine Zeit haben das gerade ausführlich zu testen...

  • UGs Beta 35230 scheint mit CommonAPI2 20230218 (siehe weiter oben) + Buildoverwrite zu funktionieren


    Windows Steam: steam_35230_1

    Windows GOG gog_35230_1

    Linus Steam: steam_35230_2


    scheint zu starten, auch kann ich ne Haltestelle bauen.


    Wer einen Crash hat oder andere Probleme, bitte melden



    Moderativer Hinweis:

    Wir haben hier ein zivilisiertes Forum, ich habe andere Dinge zu tun als irgendwelche Eskalationen. Daher hab ich den Rest abgetrennt...

  • Das Spiel 35320 startet erst gar nicht mit der CommonAPI

    Message

    an error ocured


    user data folder: C:/Program Files (x86)/Steam/userdata/87414188/1066780/local/

    starting up build version: 35230


    __CRASHDB_INIT__

    PreventSetUnhandledExceptionFilter: 1

    "C:/Program Files (x86)/Steam/steamapps/workshop/content/1066780/2524533770/mod.lua" not found. Mod will not be available.

    Found 2247 mods

    language: de

    locale: de_DE

    eatglobal: init [mods/skyjoe_silberlinge_reworkmod_2/res/scripts/eatglobal_v2_29.lua] (Version 2.29)

    eatglobal: init [C:/Program Files (x86)/Steam/steamapps/workshop/content/1066780/1962843709/res/scripts/eatglobal_v2_31.lua] (Version 2.31)

    eatglobal: init [mods/skyjoe_v80_280_2/res/scripts/eatglobal_v2_26.lua] (Version 2.26)

    eatglobal: Initialization [....2791534036/res/scripts/eatglobal_v2_32011.lua] (Version 2.32011) successfully completed: 3 ms.

    eatglobal: init [mods/ttr66_br211_2/res/scripts/eatglobal_v2_21.lua] (Version 2.21)

    eatglobal: loaded module 'eatglobal.eatglobal_intern' [mods/ttr66_br211_2/res/scripts/eatglobal/eatglobal_intern.lua] (Version 1.7)

    eatglobal: loaded module 'eatglobal.utils' [mods/ttr66_br211_2/res/scripts/eatglobal/utils.lua] (Version 1.12)

    eatglobal: init [mods/eat1963_roundhouse_fix_2/res/scripts/eatglobal_v2_25.lua] (Version 2.25)

    eatglobal: Initialization [.... mcs_gueterwagenIII_2/res/scripts/eatglobal_v2_32008.lua] (Version 2.32008) successfully completed: 3 ms.

    Loaded 2248 of 2248 mod descriptions from disk

    Update of mod descriptions: 2890.24 ms



    weiß nicht hilft Dir das ?

  • Grundsätzlich gilt, stdout.txt immer komplett anhängen. Da sagt gerade gar nichts aus, da ist ja noch nichtmal ne Zeile drin die CommonAPI2 erstellt hätte.


    Aber nochmalig, ich werde bald ne neue CommonAPI2 für 35210 35243 raus bringen, nur wenn ich hier im Forum schreibe kann ich nicht gleichzeitig ein Paket fertig machen...


    -edit- fertig

BlueBrixx