virt. Depotausfahrt nach Uhrzeit

Achte bitte darauf, dass Du mit deinem Thema bzw. mit deiner Frage im richtigen Bereich bist.
Die Bereiche sind: Einstellungen im Forum, EEP aktuell ab EEP7 , Splines, Rollmaterialien, Immobilien, Landschaftselemente, Signale und Schaltung, Anlagenvorstellungen, Schnappschüsse Konstrukteure, EEP Treffen , Laberecke, Online - Handbuch EEP Vielen Dank für die Unterstützung das Forum übersichtlich zu halten.
Bilder/Fotos aus dem Internet sind nur als Link gestattet. Eigene Fotos, also Fotos aus dem realen Leben, sind erstens mit Eigenes Bild als Quellenangabe zu kennzeichnen und zweitens nur als Dateianhang im Beitrag zulässig. Bilder ohne Quellenangaben und Bilder dessen Quelle das Internet wie z. B. Google ist, werden gelöscht.
  • Hallo Fried ,

    da kann man doch mal sehen, was aus einer einfachen Machbarkeits - Studie
    wird, ich hatte den Gedanken gefaßt, auf einfache Weise eine Uhrzeitausfahrt
    zu programmieren, ist immer mein Grundgedanke bei allen Luascripten
    die ich verbreche, siehe "ruS Paket".

    Werde natürlich dein Script durcharbeiten, oh weia.

    Gruß Dieter

    1.MSI 17,3" Intel® i7-8750H 16GB SSD + HDD GeForce® GTX 1060 »GV72 8RE-013DE (00179E-013)

    2. PC:Win10/64, i7-7700K, 4.2 GHz, GPU GTX 1070/8 GB, 16 GB RAM(DDR4), SSD 960 Evo 500GB, Ilyama PL2490
    EEP 6.1 - EEP 15 E, HomeNos 15

    Ich wünsche mir eine freizügige Script-Sprache und eine leistungsfähige Grafik Engine für EEP.
    Ein Leben ohne EEP ist möglich, aber sinnlos, so ganz sicher bin ich mir nicht mehr.

    "mal was ganz Einfaches" "rundum sorglos Paket"

    Parrys YouTube Videos
    https://www.twitch.tv/parry_36/

    Einmal editiert, zuletzt von Parry36 (12. Februar 2020 um 18:32)

  • Vielleicht fällt ja ... oder … etwas dazu ein.

    Ungeprüft:

    Ich habe deine Arrays direkt in der Tabelle "Timetable" unter der entsprechenden Uhrzeit gespeichert. Damit sollte Lua bei dieser Uhrzeit ein "true" liefern (weil etwas existiert) und bei allen anderen Uhrzeiten "false", weil die Tabelle dort "nil" enthält.

    Außerdem habe ich deine Depot-Tabelle umgeschrieben. Damit sollte die Wandlung in Variablen hinfällig sein. Schau mal bitte, ob dich das weiterbringt.

  • Ungeprüft:

    Ich habe deine Arrays direkt in der Tabelle "Timetable" unter der entsprechenden Uhrzeit gespeichert. Damit sollte Lua bei dieser Uhrzeit ein "true" liefern (weil etwas existiert) und bei allen anderen Uhrzeiten "false", weil die Tabelle dort "nil" enthält.

    Funktioniert! :be_1: Danke. Manchmal hat man ein Brett vorm Kopp. Habe immer versucht, das true als Wert unterzubringen und dann :ah1: weil zu anderen Zeiten nichts existierte.

    Außerdem habe ich deine Depot-Tabelle umgeschrieben. Damit sollte die Wandlung in Variablen hinfällig sein. Schau mal bitte, ob dich das weiterbringt.

    Leider nein.

    Ich benötige einerseits die Depot-ID (als Zahl) für EEPGetTrainFromTrainyard. Macht auch deine Version.

    Andererseits hätte ich sie gerne als "String" für die Meldung im Ereignisfenster, um selbst die Weiterfahrt des ausfahrenden Zuges im GBS zu stellen. Dafür ist "Zug aus Buxtehude nach ..." oder "Zug aus Westen nach ..." für mich einleuchtender (für die weitere Handhabung) als "Zug von 2 nach ..." (mit erstmal "äääh, Kopf kratz"). Deswegen hatte ich deine Variante vorher schon ausgeschlossen. Die Depot-ID als Zahl ist natürlich ausreichend, wenn ich sie "nur" für eine Automatik-Programmierung des weiteren Zugverlaufs (ohne Meldung) benötige.

    Hier nochmal der gesamte Code mit der zusammengefassten Timetable-Tabelle:

    Fried-liche Grüße:aq_1:

    Rentner sein ist wie Urlaub, nur 365 Tage im Jahr.

    Wen es interessiert ...

    PC: AMD Ryzen 5 5600X 6x3,7GHz; 32GB RAM; GeForce RTX3060XC 12GB; 2x 1TB SSD; Windows10Pro 64bit;

    Monitore: 2560x1440 (ASUS) + 1920x1080 (alt)

    Laptop: i7-4710HQ 2,5GHz; 8GB RAM; NVIDIA GeForce GTX860M; 125GB SSD + 1TB HDD; W10Pro64bit

    EEP: Aktuell 15.1.2 Plug-in 1, 17.3.0 Plug-in 1, 2, 3; HN17; AnlVerb17; MK; ME; ZE; TM; ...

  • Ich benötige einerseits die Depot-ID (als Zahl) ....

    Andererseits hätte ich sie gerne als "String"

    Dann trag den Depotnamen im Fahrplan als String ein.

    Und hol dir mit Depot = Depots[v[2]] die Depotnummer, wenn du sie brauchst.

    v[2] enthält den String. Depots[] nutzt diesen String als Bezeichner

  • Hallo @Goetz ,

    fast, aber nicht ganz! Doch du hast mir die Erleuchtung:ba_1: gebracht.

    Bei der Umwandlung der Tabelle Depotausfahrten in die Abfahrtstabelle Timetable muss das Depot weiterhin als String übertragen werden:

    Timetable[inSekunden] = {Depot = v[2], Zug = v[3], Richtung = v[4], Gleis = v[5], ZZA_Nr = v[6]}

    In der function Depotausfahrt() muss bei dem print-Befehl für die Meldung im Ereignisfenster dieser String übergeben werden:

    print(Meldung(Timetable[EEPTime].Depot, Timetable[EEPTime].Gleis)).

    Für die Abberufung aus dem Depot über EEPGetTrainFromTrainyard wird die Depot-ID als Zahl benötigt und die holt man sich dann aus der Tabelle Depots:

    EEPGetTrainFromTrainyard(Depots[Timetable[EEPTime].Depot], Timetable[EEPTime].Zug, 0, Timetable[EEPTime].Richtung).

    :ap_1: Jetzt klappt's auch mit dem NachbarCode. Hier nochmal alles tuto kompletto:

    Danke für die Hilfe.:bg_1:

    Fried-liche Grüße:aq_1:

    Rentner sein ist wie Urlaub, nur 365 Tage im Jahr.

    Wen es interessiert ...

    PC: AMD Ryzen 5 5600X 6x3,7GHz; 32GB RAM; GeForce RTX3060XC 12GB; 2x 1TB SSD; Windows10Pro 64bit;

    Monitore: 2560x1440 (ASUS) + 1920x1080 (alt)

    Laptop: i7-4710HQ 2,5GHz; 8GB RAM; NVIDIA GeForce GTX860M; 125GB SSD + 1TB HDD; W10Pro64bit

    EEP: Aktuell 15.1.2 Plug-in 1, 17.3.0 Plug-in 1, 2, 3; HN17; AnlVerb17; MK; ME; ZE; TM; ...

  • Hallo , Alle zusammen.

    Super das sich so etwas bei guter Zusammenarbeit prima entwickeln kann !

    Mir hatte damals das einfache Script vom Dieter sehr gut geholfen

    und meine Zügen fahren immer noch !

    Aber man kann ja immer etwas dazu lernen .

    Ein guter Denkanstoß hilft da immer weiter.

    Also in diesem Sinn ein schönes Wochenende und weiterhin gute Zusammenarbeit

    LG aus Sachsen

    Dietmar

    HP envy 360 Convertible 15, i7-- 8550U 1,8 GHz, 8 GB), 250 GB SSD (für EEP 16,1), 1 TB HDD, Windows 10

    ASUS VE278 und ASUS VS247

  • aber nicht ganz

    Ehrlich gestanden habe ich gar nicht genau hingesehen, an welcher Stelle du was von beidem benötigst.

    Sorry

    Gut, dass du die Essenz trotzdem rausziehen konntest.

  • Hallo zusammen,

    wenn ich aus einem virtuellen Depot die Züge alle 10 min ausfahren lassen möchte, kann ich das dann so machen?

    Lua
    function DepotSWest()
        if EEPTimeM % 10 == 0 then
            EEPGetTrainFromTrainyard(1, "", 1)
        end
    end

    Bei S-Bahnen wird es sonst zu viel, für knapp 100 Fahrten pro Tag die jeweiligen Zeiten einzutragen...

    Gruß

    Sebastian


    EEP 17.3 Plug-In 1

  • wenn ich aus einem virtuellen Depot die Züge alle 10 min ausfahren lassen möchte, kann ich das dann so machen?

    Hallo Sebastian,

    warum machst Du es so komplizier?
    Du benötigst kein lua. Einfach in dem Dialog der Depotausfahrt oben rechts "Zeit" aktivieren und darunter die Zeit (in Sekunden),

    also in Deinem Fall 600, eintragen, dann wird alles 10 Minuten ein Zug ausfahren...

    Gruß Volker

  • Hallo

    Das mit der Zeit beim Depot (ist aber auch bei Lua so wenn man eine einfache Abfrage macht) ist so eine Sache...

    ...wenn genügend Züge drin sind fahren die auch nach 10min. aus, jedoch wenn das Depot einmal leergefahren wird bleibt der Takt nicht stehen....er zählt weiter.

    Kommt nun ein Zug nach 8 weitergezählten Depotminuten ins Depot rein, fährt er auch nach 2min. wieder aus.

    Gruß Joachim

  • Hallo Sebastian,

    unabhängig zu den vorherigen Antworten:

    wenn ich aus einem virtuellen Depot die Züge alle 10 min ausfahren lassen möchte, kann ich das dann so machen?

    Lua
    function DepotSWest()
        if EEPTimeM % 10 == 0 then
            EEPGetTrainFromTrainyard(1, "", 1)
        end
    end

    Dein Code schickt bei jedem Aufruf der Funktion einen Zug los, falls die aktuelle Minute durch 10 teilbar ist.

    Wenn die Funktion in der EEPMain aufgerufen wird, bedeutet das, dass von 0:00:00 bis 0:00:59 fünfmal pro Sekunde ein Zug abgefeuert wird (sofern das Depot 300 Züge enthält). Dann ist für 9 Minuten Pause, bis um 0:10:00 wieder eine Chaos-Minute losgeht.

    Falls das nicht das ist, was du willst, solltest du zu der Bedingung noch hinzufügen, dass sich die Minutenzahl seit dem letzten Aufruf geändert hat (dazu musst du sie in einer weiteren Variable zwischenspeichern):

    Lua
    function DepotSWest()
        if EEPTimeM ~= MinuteBeiLetztemAufruf and EEPTimeM % 10 == 0 then
            EEPGetTrainFromTrainyard(1, "", 1)
        end
        MinuteBeiLetztemAufruf = EEPTimeM
    end

    Viele Grüße

    Benny

  • Hallo Sebastian Sebibahner und Benny Benny (BH2) ,

    da EEPTime die Zeit in Sekunden nach Mitternacht wiedergibt, 1 Minute 60 Sekunden hat und damit 10 Minuten 600 Sekunden, müsste es doch auch so

    Lua
    function DepotSWest()
        if EEPTime % 600 == 0 then
            EEPGetTrainFromTrainyard(1, "", 1)
        end
    end

    gehen, ohne sich etwas merken zu müssen.

    Oder habe ich etwas übersehen?

    Fried-liche Grüße:aq_1:

    Rentner sein ist wie Urlaub, nur 365 Tage im Jahr.

    Wen es interessiert ...

    PC: AMD Ryzen 5 5600X 6x3,7GHz; 32GB RAM; GeForce RTX3060XC 12GB; 2x 1TB SSD; Windows10Pro 64bit;

    Monitore: 2560x1440 (ASUS) + 1920x1080 (alt)

    Laptop: i7-4710HQ 2,5GHz; 8GB RAM; NVIDIA GeForce GTX860M; 125GB SSD + 1TB HDD; W10Pro64bit

    EEP: Aktuell 15.1.2 Plug-in 1, 17.3.0 Plug-in 1, 2, 3; HN17; AnlVerb17; MK; ME; ZE; TM; ...

  • Hallo Benny (BH2) ,

    stimmt, hast recht. Man sollte 5x pro Sekunde nachdenken, ehe man schreibt.

    Fried-liche Grüße:aq_1:

    Rentner sein ist wie Urlaub, nur 365 Tage im Jahr.

    Wen es interessiert ...

    PC: AMD Ryzen 5 5600X 6x3,7GHz; 32GB RAM; GeForce RTX3060XC 12GB; 2x 1TB SSD; Windows10Pro 64bit;

    Monitore: 2560x1440 (ASUS) + 1920x1080 (alt)

    Laptop: i7-4710HQ 2,5GHz; 8GB RAM; NVIDIA GeForce GTX860M; 125GB SSD + 1TB HDD; W10Pro64bit

    EEP: Aktuell 15.1.2 Plug-in 1, 17.3.0 Plug-in 1, 2, 3; HN17; AnlVerb17; MK; ME; ZE; TM; ...

  • Hallo zusammen ,

    bei zeitgesteuerten Ausfahrten aus einem VD sollte man sicherheitshalber hinter der Ausfahrt wieder eine Einfahrt setzen , die nur aktiv wird , wenn ein im weiteren Verlauf der Ausfahrtsstrecke stehendes Signal nach Ausfahrt eines 2. Zuges immer noch auf "Halt " steht , der 1. Zug also noch vor dem Signal wartet . Dieser gibt das Signal frei , wenn er hinter einer signalgesteuerten Weiche in das Streckengleis eingefahren ist.

    Gruß rejokaa

  • Wenn ich mal kurz den Faden aufnehmen und eine Frage zu einer fahrplangsteuerten Ausfahrt aus virtuellen Depots stellen darf.

    Der Wizard für die Fahrplanerstellung beinhaltet ja eigentlich die Lösung meines Wunsches. Aber es schliesst sich ja jedesmal das Fenster wenn ein Eintrag gemacht wurde.

    Wenn ich nun meine vorhandenen Depots (SBahn/ICE/Personen/Güter) mit je einem Ausfahrtssignal aufrufen möchte, ist das verdammt viel Klickerei.

    Ich würde gern per Lua, sagen wir 00:20 Uhr eine SBahn aus Depot 1 losschicken, 00:35 Uhr einen ICE aus Depot 2, 00:45 Uhr einen Güterzug aus Depot 4 und 00:55 Uhr einen Personenzug aus Depot 3 ausfahren lasssen.

    Das soll sich wenn möglich so wiederholen SBahn 20 Minuten Takt / ICE im Stundentakt / Güterzug im 30 Minuten Takt / Personenzug im 40 Minutentakt ----- hoffen ich habe mich verständlich ausgedrückt.

    Wie gesagt der Wizard würde das ja übernehmen. Habe auch für jedes Depot ein entsprchendes Signal eingebunden. Aber dass sich das Fenster immer schliesst, nervt mich ein wenig.

    Ok die Depoteinstellungen wären da noch machbar, ein Depot - alle Züge rein und die Abfahrtszeiten eingestellt.

    Aber Lua wäre sicher auch möglich.

    Aber wie würdet ihr vorgehen?

    Gruß redgum - jens -

    Win 10 Prof. 64 bit / Intel i -wie irgendwas / 16 GB Ram / Grafikkarte ja klar

    EEP 6 / EEP 8 Expert / EEP 9 Expert Update 2 - Patch 2 - 64bit
    EEPX Expert Patch5 - PlugIn2- 64 bit / Kontaktexplorer 9 - 64bit
    EEP 11 Plug in 1 und 2

    EEP 12

    EEP 13

    EEP 14

    EEP 15

    EEP 16 Expert

    EEP17 Expert


    Bulkinstaller / Modelltauscher / Modellvervielfältiger / Anlagenverbinder / RSS Tool / Icon-Explorer / Tauschmanager / Modellkatalog

    HomeNos 13 und HomeNos 16

    Blender 2.79

    Anlage Blumenberg, Ausbauanlage 3, Ausbauanlage 4

  • Aber wie würdet ihr vorgehen?

    Tja, mit Lua ginge das recht einfach. Da gibt es so Sachen wie EEPGetTrainFromTrainyard. Dann noch eine Tabelle mit den Depots und den Intervallen...

    Gruß
    Dieter

    -----------------------------------------------------------------------------------

    Sie haben Lua? :ad_1: Ist das ansteckend?

    Bleibt alle schön EEP-besessen :ae_1:

    Hardeware und Software

    __________________________________________
    EEP alle Versionen ab EEP6 mit allen Plugins,
    Homenos5, Homenos8,...,HomeNos17 DEV...
    Intel I7 4790k 4x 4Ghz, 32 GB RAM, NVidia GTX 1080 ti 11GB, Direct x V11, Windows 10 pro 64 Bit,
    Laptop Medion Erazer, 16GB RAM, 500GB SSD, 2 TB HDD, GT 850 von Nvidia, Windows 10 Home 64bit