Mehrere unsichtbare Timer gleichzeitig ohne Plugin.

  • Ich habe lange nach einer Lösung für dieses Problem gesucht und wollte euch gerne erzählen, wie ich es letztendlich gelöst habe.


    Wie die Überschrift schon sagt, habe ich für mein Spiel mehrere unsichtbare Timer gleichzeitig gebraucht. Es ging mir darum, einen Tagesrythmus zu erstellen, wecher 5 Minuten nach Spielbeginn den Bildschirm abdunkelt und die Möglichkeit freischaltet, schlafen zu gehen.

    Hier war ich anfangs sehr froh, den Timer in der Event Ansicht gefunden zu haben. Allerdings habe ich später im Spiel weitere Timer gebraucht und RPG MV bietet anscheinend nur die Möglichkeit, einen Timer gleichzeitig laufen zu lassen. Außerdem wird der Timer immer oben Rechts in der Ecke angezeigt, ich wollte ihn gerne unsichtbar haben.


    Zuerst fand ich folgendes Plugin: https://forums.rpgmakerweb.com…reads/multi-timers.50474/

    Multi Timers by Shaz


    Leider funktionierte dieses bei mir nicht. Eventuell ist es veraltet oder ich habe etwas falsch gemacht. Also habe ich weiter gesucht. Auf die richtige Spur hat mich ein Eintrag auf Steam gebracht, als ich danach gegoogelt hatte, wie der Timer unsichtbar wird.

    https://steamcommunity.com/app/363890/discussions/0/483368526588568968/


    Das hat mir schonmal erklärt, wie ich den Timer unsichtbar bekomme. Aber das eigentliche Problem blieb bestehen.
    Also habe ich anstelle des Timers einfach eine Variable um 1 erhöt. Das gute ist, Variablen kann man etliche gleichzeitig zählen, Timer kann man nur einen laufen lassen. Auf der Map, wo das Bett steht, habe ich ein "parallel" Event mit einer bedingten Verzweigung erstellt, welches die Höhe der Varible ausließt und nach 5 Minuten (300Sekunden), das Bett "aktiviert".


    Hier nochmal ein paar Screenshots:

    timer1.png.html

    https://picload.org/view/ddodrgri/timer1.png.html

    Zählt die Zeit. Muss auf jeder Karte eingefügt werden, auf der die Zeit laufen soll.


    https://picload.org/view/ddodrgrw/timer2.png.html

    Bedingte verzweigung. Ließt aus, wann es Nacht ist und aktiviert das Bett Event. In diesem Fall nach 5 Minuten. Muss nur auf der Map platziert werden, wo das Bett steht.

    https://picload.org/view/ddodrgdr/timer3.png.html
    Bedingte verzweigung. Ließt aus, wann es Nacht ist und tönt den Bildschirm dunkel. In diesem Fall nach 5 Minuten. Muss dort platziert werden, wo es nachts dunkel werden soll, z.B. draußen.

    Ach ja, nach dem schlafen gehen, muss die Timer Variable natürlich wieder auf null gesetzt werden.



    Viele kennen meine Lösung bestimmt schon, aber ich habe lange nach einer passenden, einfachen Lösung für mein Problem gesucht und im Internet nichts gefunden. Eventuell habt ihr ja das gleiche Problem und landet hier, vielleicht hilft es euch ja :)

    Verbesserungen und Anmerkungen sind natürlich willkommen.

    Dieser Beitrag wurde bereits 5 Mal editiert, zuletzt von flex ()

  • Hey, erst einmal muss ich sagen, dass ich es cool finde dass Du Deine Lösung hier mit anderen teilst! :)

    Klar, vielen mag der Umgang mit Variablen zwar ein Begriff sein, aber genau deswegen sind solche Threads auch so wichtig, damit diese vermeintlichen "Grundlagen" nicht schlichtweg übersehen werden und Neulinge schlimmstenfalls an ihrem eigenen Verstand zweifeln, wenn es für "uns" doch so selbstverständlich ist. Jedenfalls werten genau solche konkreten Situationsbeschreibungen meiner Meinung nach das Forum nochmals auf, da so auch wirklich Wissen aus den verschiedensten Ecken für die Öffentlichkeit klar ersichtlich zusammen getragen werden.
    Hier ist natürlich jeder hilfsbereit, aber es einmal für alle niedergeschrieben zu haben, macht die Sache doch deutlich komfortabler. :)

    Zu Deinem bisherigen Lösungsansatz:
    Das Ganze könntest Du sogar in einem einzigen Event ablaufen lassen, falls der Timer eben für alle drei Ergebnisse zur selben Zeit starten soll. Ansonsten könnte man es natürlich auch noch variieren, indem zum Beispiel das Tempo des Hochzählens einer Variablen durch längere/kürzere Wait-Befehle verändert wird oder man mit groben Zufallsvariablen arbeitet. Variablen sind auf jeden Fall ein guter Einstieg in ziemlich viele Funktionen, welche das Spiel nachher im Hinblick auf Questabläufe, Atmophäre oder Gameplay allgemein bereichern.