Standbilder durch moodularen BHF

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 liebe Bahngemeinde.

    Ich habe mit dem Bahnhofs Adapter so meine Probleme.Egal ob die Map bebaut ist,groß oder klein,sobald ich den BHF konfigurieren möchte habe ich wirklich Standbilder.Also um ein Modul,Gleiß oder Bahnsteig hinzuzufügen brauch ich teilweise 3-5 Sec.Das ist beim abreissen besonders problematisch und unspielbar.Kann jemand helfen?

    Mein PC ist immer aktuell,ich kenn mich gut aus.Mein Pc:I7-7700k neueste Generation,GeForce 2060 Super(8G DDR 6)16 Gig DDR 4 -3400,SSD Samsung Evo.

  • Woolfman

    Hat den Titel des Themas von „Standbilder dur moodularen BHF“ zu „Standbilder durch moodularen BHF“ geändert.
  • Das ist leider ein bekanntes Problem, das mit zunehmender Häufigkeit der Modifizierung von Bahnhöfen und Stationen, die Performance beim Umbau sinkt.
    In der Tat kann es so lästig werden, das es bis zu mehreren Sekunden dauert, bis ein an/umbau/oder entfernen von Modulen fertiggestellt wird. :(


    Man kann nur hoffen, das UG hier noch deutlich nachbessert.
    Aktiv unternehmen kann man da wohl derzeit nicht viel, außer Plattformen so selten wie möglich umzubauen.

    Ich bin nur dafür verantwortlich was ich schreibe, nicht was andere verstehen "wollen"!


    System: Windows 7 Ultimate 64bit ; AMD Phenom II X4 965 @ 3,4 GHz ; 8 GB DDR3 Ram ; GeForce GTX 660 @ 3 GB GDDR5 Ram (Treiber: 431.36)

  • Man kann nur hoffen, das UG hier noch deutlich nachbessert.
    Aktiv unternehmen kann man da wohl derzeit nicht viel, außer Plattformen so selten wie möglich umzubauen.

    nicht trivial einfach.

    Aber ich habe meine Standardbahnhöfe ins Script modular_station.con eingebaut. So baue ich auch meinen 20 gleisigen 560m-bahnhof in 5 sekunden statt einer Stunde

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

  • hmm.

    hab das mal zu anfang angefangen zu basteln, und die ganzen elemente aus 100x100, longer, commonapi und co zusammengetragen...

    da es entsprechend urheberrechtlich geschützte teile davon enthält kann ichs so ohne Weiteres nicht veröffentlichen.

    habe mir schon überlegt einen Mod daraus zu basteln, der strings ausliesst und entsprechend gewünshte bahnhöfe enthält.. aber es gibt kein textfeld :-D.

    wobei es ja bei TPF1 ein tool gab, dass den "gebäudenamen" ausgelesen hat.. vielleicht könnte ichs damit lösen.


    aber die Änderungen an der modular_station.con halten sich in Grenzen. Hier mein Vorgehen, das ich gerne unter CC-BY-NC-ND - Lizenz bereitstelle.


    im Kopfbereich, wo die verschiedenen lokalen variablen definiert werden (im Original ab Zeile eingefügt 40):

    dann in dem Bereich, wo die Parameter definiert werden (makeBaseParams() im Original?, Zeile 71) muss natürlich "mein" Parameter mit rein:

    Code
             {
                 key = "specialv",
                 name = _("special variant"),
                 values = specialVariants,
                 defaultIndex = 0,
              },

    dann habe ich noch die Funktion addTrack ersetzt, um meine bevorzugten Gleismodule zu benutzen:

    wird beim optionalen dritten Parameter "-1" übergeben, wird kein Gleis gebaut (um Durchgangsgleise manuell zu bauen mit dem Gleis-Tool) - funktioniert aber nur mit CommonAPI und aktivem Underground-Connector..


    dann noch (ab Zeile 355) habe ich von "if not cargo then" bis "return result" in der createTemplateFn alles ersetzt durch meinen Code, wo auch die eigenen Bahnhofsstrukturen implementiert sind:


    Code
    dank der 10k-Zeilenbegrenz, siehe Attachment

    hier habe ich auch den Vanillateil etwas vereinfacht.


    und eigene varianten hinzuzufügen ist dann relativ simpel. Es muss einmal in der tabelle oben eingefügt werden

    und im letzten teil dann der bau, wie z.B.

    --Variante \/

    elseif variantText == _("6C+4T") then

    --erste Reihe ist eine Cargo-Platform (count(2,true): es wird 2 reihen gezählt und der zähler zuvor zurückgesetzt)

    --das Pandon für eine Personenplatform wäre AddPassenger(count(1,true), s, e) dabei wird nur eins weiter gezählt, da der Bahnsteig nicht doppel-Breit ist

    AddCargo(count(2,true), s, e)

    --ein 80 km/h Gleis und 1 Reihe gezählt

    AddTrack(count(), s, e, 80)

    --dito...

    AddTrack(count(), s, e, 80)

    --wieder eine Cargoplattform, es wird 2 weitergezählt

    AddCargo(count(2), s, e)

    --wieder ein 80km/h gleis

    AddTrack(count(), s, e, 80)

    -es folgen 4 Durchgangsgleise

    AddTrack(count(), s, e, -1)

    AddTrack(count(), s, e, -1)

    AddTrack(count(), s, e, -1)

    AddTrack(count(), s, e, -1)

    --und wieder ein bahnsteiggleis, 80 km/h

    AddTrack(count(), s, e, 80)

    --[...]

    AddCargo(count(2), s, e)

    AddTrack(count(), s, e, 80)

    AddTrack(count(), s, e, 80)

    AddCargo(count(2), s, e)

    -- elseif nächster fall


    statt eben fester Definitionen wollte ich eigentlich einen Mod basteln, der Texteingaben liest..

    z.B.

    CbbCbttaPaaP

    C = Cargo Platform

    P = Personenblattform

    a = Gleis 40km/h

    b = Gleis 80km/h

    t = Durchgangsgleis


    Das einzige Problem, ich weiss (noch nicht) woher ich einen Parameter als String erhalte...


    hab doch noch ne angepasste modular_station.con erstellt (vanilla + obige changes) - nur den syntax habe ich geprüft, nicht die funktion..

    Dateien

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

BlueBrixx