Erstellen eines Autorun-Level

  • Hallo liebe Community,


    wie der Titel schon sagt, bin ich am rumprobieren eines Autorun-Level für mein Game.


    Aufbau der Idee:

    Während der Spieler sich von oben nach unten bewegt (automatisch) muss er nach Links bzw Rechts drücken, um Objekten im Weg ausweichen.


    Versuch 1:

    Ich dachte das Ganze wäre einfach zu lösen:

    1. Event - Autorun : Bewegung Runter als Wiederholung

    2. Event - Parallel : Wenn Taste Links gedrückt, dann Spieler bewegt sich nach Links

    3. Event - Parallel : Wenn Taste Rechts gedrückt, dann Spieler bewegt sich nach Rechts

    Das hat nicht geklappt, da anscheinend die Events 2 & 3 ignoriert werden, außer der Spieler kann nicht mehr weiter.


    Versuch 2:

    Dann bin ich anders an die Sache rangegangen und habe es mit Schaltern probiert:

    1. Event - Seite 1 - ohne Schalter - Autorun : Bewegung Spieler Runter Wiederholen - Wenn Taste Links gedrückt, Schalter A AN - Wenn Taste Rechts gedrückt, Schalter B AN

    1. Event - Seite 2 - Schalter A - Autorun : Bewegung Spieler Links - Schalter A AUS

    1. Event - Seite 3 - Schalter B - Autorun : Bewegung Spieler Rechts - Schalter B AUS

    Hier ist das Problem, dass die Schaltererkennung nur 1x klappt., bzw nur dann, wenn der Spieler nicht mehr weiter kann.


    Versuch 3:

    Dann habe ich versucht, das Ganze in einer Schleife zu machen:

    1. Event - Seite 1 - ohne Schalter - Autorun : Schleife AN - Bewegung Spieler Runter - Wenn Taste Links gedrückt, Schalter A AN - Wenn Taste Rechts gedrückt, Schalter B AN - Schleife Beenden

    1. Event - Seite 2 - Schalter A - Autorun : Bewegung Spieler Links - Schalter A AUS

    1. Event - Seite 3 - Schalter B - Autorun : Bewegung Spieler Rechts - Schalter B AUS

    Selbe Problem wie bei versuch 2.



    Ich bin nun mit meinem begrenzten Wissen und Verständnis der Engine (Version 1.6.2) am Ende und hoffe, dass Ihr mir da konkret weiterhelfen könnt (falls sowas überhaupt im RPGMMV möglich ist) oder habt Ihr eine Idee, was ich noch probieren könnte?


    Mit freundlichem Gruß

    SiGxGiS


    PS:

    Spieler-/Event-Berührungen wurden auch bei allen 3 Versuchen vollkomen ignoriert, d.h. trifft der Spieler auf ein Hinderniss bekommt er keinen Schaden abgezogen, obwohl das im Hindernis-Event so hinterlegt ist.

    Hinfallen ist wie Anlehnen, nur später.

  • Ich hab jetzt nicht nachgesehen oder ausprobiert, aber wie wäre es mit


    Schleife

    Verzweigte Abfrage "Jetzt was einbauen was prüft worauf man steht"

    Beenden

    Verzweigte Abfrage Taste-Links

    Wenn Schritt nach Links

    Sonst Verzweigte Abfrage Taste-Rechts

    Wenn Schritt nach Rechts

    Sonst Schritt nach unten

    Beenden

    Beenden


    Springt wieder an Schleifen anfang

    Schleife beendet


    Einzig was aus meiner sicht nachzusehen wäre, was zur Abfrage kommt, um zu rüfen was am Boden liegt (wozu ich den "Maker" erst anzumachen hätte). Nebenbei, hab es dem Sinn nach geschrieben, was mir einfiel, im "Maker" steht es womöglich mit anderen Worten/Sätzen da. Gegebenenfalls mit Warte-Befehle am Ende der Schleife ergänzen, ich schätze irgendwas zwischen 3 und 20 "Frames".

  • Versuch 1 klingt doch schon vernünftig nur müsste das Autorun weg da er sonst die Eingaben nicht mehr abfragt. :/

  • Fis069 Danke für die Idee, hat das Problem aber leider nicht gelöst.


    Jitsu Das Autorun bei Event 1 war das ausschlaggebene.

    Warum ich da nicht selbst drauf gekommen bin aus dem Autorun-Event ein Parallel-Event zu machen ist mir ein Rätsel.

    Da die Parallel-Events sich auf die Spielerbewegung auswirken, hatte ich vermutet, dass Event 1 eine höhere Priorität hat(da zuerst erstellt) und darum Event 2 & 3 ignoriert werden, solange Event 1 noch funktioniert.

    Auf jeden Fall klapps jetzt und es erkennt auch die Touch-Events.


    Jetzt muss ich nurnoch mein Wunsch-Kampfsystem hinbekommen...aber das bekomm ich irgendwie hin, und wenn nicht, dann verwerfe ich den Plan oder ich wende mich wieder an Euch, die Community.



    Auf jeden Fall ein dickes Danke von mir

    Hinfallen ist wie Anlehnen, nur später.

  • Was bei Parallel-Events zu beachten ist, ist dass der Spieler sich dabei noch bewegen kann, d.h. theoretisch würde der Spieler bei einem Links-Input zwei Linksschritte machen (zumindest kenn ich das so vom XP).

    Die Lösung von Fis069 ist von daher nicht so verkehrt, wenn du das Ganze in einem Autorun-Event ausführen lässt; du musst dann halt nur für die Schleife ne entsprechende Abbruchbedingung wie z.B. nen Schalter oder nen bestimmten Variablenwert festlegen.


    Dass Spielerberührungen bei den Hindernisevents nicht triggern, liegt am Autorun-Event; diesen "Trigger" würde ich auch mit in das Autorun-Event packen wenn die Hindernisse vom Spieler nicht passierbar sind, da kannst du dann einfach vor der Abwärtsbewegung die aktuelle Y-Position des Spielers in einer Variable speichern, bei der Moveroute der Abwärtsbewegung dann "Ignorieren wenn der Spieler sich nicht bewegen kann" (oder so ähnlich) anwählen, und nach der Moveroute abfragen, ob die Y-Position des Spielers gleich der Variable ist und wenn ja dann kannst du das ausführen lassen, was passieren soll wenn der Spieler gegen ein Hindernis läuft.

    Wenn die Hindernisse dagegen passierbar sind, würde ich das Hindernis als Parallel-Event machen, das überprüft, ob X-Position und Y-Position des Spielers mit denen des Hindernisses übereinstimmen und wenn ja dann das Hindernis ausführen lassen, was auch immer es bewirken soll.