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


  • TPF2 wieder gestartet - diesmal ohne common api - genau dasselbe Phänomen. Wieder bis zum Black Screen nach dem Ladebalken gekommen und dann war Ende. stdout.txt sieht nach meinen Augen identisch zur Version mit Common API aus - ich denke also, dass die common api damit nix zu tun hat.

    Dateien

    • stdout.txt

      (670,45 kB, 68 Mal heruntergeladen, zuletzt: )
  • Mein Fehler lag darin, dass ich die Common API zwar im Mod loader deaktiverte, aber sie natürlich nichtsdestotrotz aktiv war. Jetzt habe ich sie deaktiviert (also aus dem mods folder entfernt), und mein Spiel ist trotzdem abgestürzt. Wenn sich jemand damit auskennt, wäre ich sehr dankbar, wenn mir jemand einen Grund oder eine Vermutung mitteilen könnte, woran mein Spiel abstürzt.

    Edit: Ich eröffne hierzu mal einen eigenen Foreneintrag, scheint ja nicht an Common API zu liegen

    Dateien

    • stdout.txt

      (583,9 kB, 72 Mal heruntergeladen, zuletzt: )

    Einmal editiert, zuletzt von PeddaDerEchte ()

  • MetalJulia




    Linux Nutzer Build 35048 und 35045:


    Download eis_os_commonapi2_1_20220510-dev.zip from CommonAPI2


    CommonAPI2 20220510 installieren, den Dateianhang entpacken und CommonAPI2Native.so in eis_os_commonapi2_1/bin kopieren , dann buildoverwrite nutzen:

    steam_35048_2 oder steam_35045_2 je nach Version nutzen. Speichern und Spiel neustarten


    Please download, install CommonAPI2 20220510, then extract CommonAPI2Native.so library into eis_os_commonapi2_1/bin

    In game,simple clicking on red main menu message, then adding buildoverwrite steam_35048_2 or steam_35045_2 depending on version.

    Save and restart game.


    Have fun all tux lovers... ;)



    PS: Und nein, die Windows Build 35048 funktioniert nicht...

  • CommonAPI2 sieht eine translate Funktion und versucht diese zu benutzen, in eat1963_roundhouse_fix_2/mod.lua gibt es dann einen Crash, weil die Urban Games Funktion nicht mehr vorhanden ist. Das wird ggf. auch andere Script Mods zum Verhängnis.


    In eat1963_roundhouse_fix_2/mod.lua

    Ersetze die Zeile: translate = myTranslate durch -- translate = myTranslate

    Ich hoffe mit der Version 2.6 ist das Problem gelöst.


    LG ...

    Auch ein alter Fuchs schaut gern ein Huhn, selbst wenn er's nicht mehr Reißen kann. ^^

    163393-cpuz-ryzen9-5900-png

  • EAT1963


    ich habe die Version 2.6 gerade eingespielt und das Spiel startete ohne besondere Vorkommnisse. Ich konnte auch den Ringlokschuppen platzieren, löschen und/oder nachträglich störungsfrei über das Konfigurationsmenü verändern. Bei der Durchsicht der Console, wo es so einige fehlende Texturen auch in anderen Mods gibt, sind mir in Bezug auf den Ringlokschuppen noch 2 Zeilen aufgefallen. Diese stehen direkt hintereinander. Sagt Dir das evtl. etwas? Ich konnte jetzt keinen negativen Einfluss feststellen.


    Reloaded jansch_roundhouse.lua

    Resource 'ballast.lua' not found!

  • Reloaded jansch_roundhouse.lua

    Resource 'ballast.lua' not found!

    Ralle ,

    die erste Zeile kommt aus dem Original-Mod. Da ich diesen nicht anfasse kann ich es nicht ändern. Er besagt aber lediglich, dass die jansch_roundhouse.lua nochmals geladen wird. Ist spieltechisch kein Problem.


    Bei der zweiten Meldung fehlt eine Datei bzw. kann das Spiel diese nicht finden. Ob der Fehler aus dem Mod kommt oder nicht kann ich so nicht sagen. Aber auch hier ist das spieltechnisch unproblematisch.


    LG ... :)

    Auch ein alter Fuchs schaut gern ein Huhn, selbst wenn er's nicht mehr Reißen kann. ^^

    163393-cpuz-ryzen9-5900-png

  • Der Grund warum es gerade keine neue Version gibt, ich arbeite schon seit längerem an Strassen mit verschiedenen (randomisierten) Bäume inkl. Größe und Offset. Noch muss ich ne Lösung für Einmündungen finden...

  • Ja, die Bürgersteige haben halt die normale Breite. (siehe Verbindungsstraße). TPF2 unterstützt keine unterschiedlichen Straßenbreiten*, damit der Grünstreifen bzw. die Haltestelle nicht Absurd in der Breite ist, ist das ein wie immer eine Kompromisslösung.



    * Das liegt an den Straßenverbindern bzw. Kreuzungen, die dann falsch gebaut / gerendert werden.

    Vielleicht mache ich mir irgendwann mal die Arbeit und analysiere den Teil auch noch. So ne Cities Skyline Funktion zum ändern der Lanes ist auf meiner Wunschliste ja auch. Aber UG ist eher verdächtig still, haben wohl Angst das sie mit Funktionen überrollt werden ;) Zurzeit bin ich halt im Teil für das Rendern von Sachen unterwegs.

    Wie immer muss ich mir halt kreative Umgehungen für den Code ausdenken, das was man mit ein paar Änderungen im Quellcode lösen könnte, muss ich immer den Holzhammer raus holen.


    Beispiel:


    Änderung an UGs AddAsset der CreateSidewalk Funktion:


    Biege AddAsset um, erstelle ein Objekt:
    - erstellt eine temporäre Strassenconfig

    - baut sich eine Liste mit Verweisen zu Assetgruppen in der temporären Strassenconfig (nutzt intern einen Straßencache)

    - hat ne Funktion um die Assets zu randomisieren


    Nun in AddAsset, verbiege eine Funktion, die aus einem Modellnamen eine ModelId erstellt, da hab ich dann wieder einen Pointer zu einem gerade genutzten Asset, speichere den Pointer. (brauchen wir später)


    Verbiege die nachfolgen Funktion, die ein ModelId und Transf in eine Liste speichert.

    In dieser Funktion nehmen wir nun den Pointer, suchen uns damit im Objekt die Asset Gruppe, schauen nach ob wir die Größe ändern möchten, schmeißen ggf. den Random Generator an, ändern die transf (nur Skalierung) und speichern die ModelId und neue transf in die Liste.

    Nun randomisieren wir noch alle random Einträge in der temporären Strassenconfig, so das beim nächsten Durchlauf ein anderer Baum raus kommt. Achja, und wenn wir dabei sind, direkt mal den offsetOrth randomisieren, das die Bäume nicht alle in einer festen Reihe stehen.


    3000 Zeilen Code später, haben wir nun das Ergebnis aus dem Screenshot...

  • Danke für die ausführliche Antwort.


    Bild 1 zeigt die originalen Vanilla-Stadtstraßen:

    Bei den Übergängen der kleinen Stadtstraße zu den übrigen Stadtstraßen gibt es bei den Gehwegen Stufen. Logisch, da bei der kleinen Stadtstraße die Gehwege auf Straßenhöhe liegen.



    Insgesamt gefallen mir die Stadtstraßen nicht. Die Gehwege sind mir zu breit. Der Gehweg der kleinen Stadtstraße liegt mir zu niedrig.

    Deshalb habe ich mir zwei Stadtstraßen verändert. Die mittlere Stadtstraße hat einen schmäleren und etwas tiefer liegenden Gehweg erhalten. Die breiten Stadtstraßen sind unverändert.

    Wie auf Bild 2 zu sehen ist, passen sich die Übergänge von den breiten zur mittleren Stadtstraße an. Wenn der Gehweg der mittleren Stadtstraße die gleiche Höhe hätte wie bei den großen Stadtstraßen, wäre keine Stufe vorhanden.



    Die kleine Stadtstraße hat von mir auch einen schmalen und leicht erhöhten Gehweg erhalten. Wie auf Bild 3 zu sehen ist, passt sich der Übergang von der breiten zur kleinen Stadtstraße an. Die Stufe ist wegen der Höhenunterschiede vorhanden.



    Um auf das von mir angesprochene Thema zurück zu kommen:

    Wenn du bei den Einbahnstraßen die Gehwege ohne Höhenänderung schmäler machst und eine Verbindungsstraße mit schmälerem Gehweg zur Verfügung stellst (ich denke mal, die original Vanilla-Straße willst du nicht ändern), dann dürfte es doch keine Probleme bei den Übergängen zu den Verbindungsstraßen geben. Es sei denn, bedingt durch die Grünstreifen mit den Gleisen und Haltestellen gibt es Probleme, die ich nicht beurteilen kann.

  • Die Bäume und ein paar andere Sachen hängen an der Höhe des Bürgersteigs. D.h. ich werde die Geometrie meiner Straßen diesbezüglich nicht änderbar machen.


    Ich hab mal mit schmaleren Bürgersteigen und breiten normalen Fahrstreifen versucht. Das sah wirklich unschön aus, das war meine erste Idee.
    Eine neue Allee Straße besteht im Endeffekt aus einer Straße mit zwei Bürgersteigen und 3 Fahrstreifen pro Richtung, also 6 + 2 Lanes.


    Da UGs Verbindungstool nicht mit Übergängen zwischen verschiedenen Fahrstreifenbreiten in einer Straße zurecht kommt, sprich es gibt keine Lane Verbindungen mehr, ist das was man sieht das beste was ich anbieten kann ohne das ganze Spiel umzubauen. Auch wenn ich das zum laufen bekommen würde, wäre ein funktionierender Failback wohl nicht mehr gegeben. (Vielleicht hab ich noch Ideen um das zu ermöglichen, versprechen möchte ich jetzt nichts)


    So ein Fahrstreifen hat zurzeit nur eine Breite von 3,2m. Eine normale Stadtstraße hat Fahrstreifenbreiten von 4 Metern, also erheblich kleiner in der Allee.

    Die Bürgersteige sind um jeweils 20cm kleiner als Normal, man sieht es optisch kaum. Sprich normal wären 4 Meter, da haben wir für ne neue Allee sidewalkWidth = 3.8. Noch viele Sachen sind nicht in Stein gehauen, aber die Chance ist hoch das ich erst mal dabei bleibe.


    Und so ein Mini Bürgersteig wie an der Ecke Luxemburger, Klettenberggürtel Stadteinwerts finde ich persönlich nicht so toll...

  • Hallo


    Hier mal eine Testversion der CommonAPI2 für Windows Build 35049 und ein Straßenpaket
    Um eine Tram Haltestelle zu bauen, muss flexstreets und newevents eingeschaltet sein!

    Beide Teile installieren für Alleen und damit die Haltestelle funktioniert.



    Warnung: Keine Savegame Garantie, alles möglich kann sich noch ändern.


    Hello, as both parts need to work together, now a test version of CommonAPI2 for Windows build 35049 and streetpackage.

    To create a bus stop, flexstreets and newevents needs to be checked in settings!

    Both packages need to be installed for working avenue street and stop.


    Warning: No guarantee about savegame compatibility, a lot may change.


    CommonAPI 1.7.20220524-dev

    - Support for Steam Windows 35049

    - For testing eis_os_streetpackage, please enable newevents



    eis_os_streetpackage 1.7.0

    - Development Version - NO SAVEGAME WARRANTY! -

    - new halt for avenue street

    - new streets:

    - avenue street

    - avenue halt street


    So jetzt könnt Ihr die Screenshot Threads damit zu pflastern ;)



    -edit-

    Nun CommonAPI2 20220613 nutzen: CommonAPI2 und dann das Strassenpaket hier:


    -edit 20220907-

    Bitte Webdisk Version nutzen, auf newevents und neueste CommonAPI2 Version achten:

    eis_os Strassenpaket - Strassen mit Rasengleis & Mitteltram -

  • Und noch ein paar Infos:

    Wenn man eine Haltestelle.mdl baut:


    streetTerminal = {

    cargo = false,

    },


    kann man in meta description, die Lane angeben:
    description = _("Small bus/tram stop for passengers, to be placed on the sidewalk for avenue street, waiting area").."@@Lane-1 @@moreCapacity500",


    @@Lane<number> = -1 bedeutet die innerste Lane, dann rechnet CommonAPI2 das selber :-)

    @@moreCapacity<number> = Erweiterte Kapazität, damit eure Stadtbahnhaltestelle nicht überquellt...


    moreCapacity kann zurzeit nicht einzeln genutzt werden, steht aber auf meiner Todoliste...


    -edit-

    transportNetworkProvider in eine Strasse einzubauen ist mir nicht gelungen, leider bekomme ich auch Bugs in Einmündungen nicht weg. Da bleiben leider Bäume ...


    -edit2-


    Noch ein Tip für das Bauen, durch gezielte Nutzung von Waypoints kann man verhindern das TPF2 einem die Straßentypen durcheinander bringt.

  • Hmm war wieder mal ein neues Update da ?

    Gestern hatte ich diese Meldung noch nicht.

    Ein Computer ist dazu da, die Probleme effizient und schnell zu lösen, die man ohne ihn gar nicht hätte.

BlueBrixx