Quick-Time-Events | Grandrorials

  • i_RMMV


    Gewünscht von: PandaMaru


    Heute beschäftigen wir uns mit dem Thema: Quick-Time-Events. Hierbei handelt es sich um Ereignisse, die in einer kurzen Zeit absolviert werden müssen. Ein Ereignis kann, wie in diesem Beispiel, eine Taste sein, die man in einer kurzen Zeit gedrückt haben muss.




    1) Die Idee


    In diesem Beispiel wird der Spieler durch den Wald gehetzt und verschiedenste Hindernisse sind auf seinem Weg. Um diese Hindernisse zu überwinden, muss er zur richtigen Zeit die richtigen Tasten drücken. Ansonsten verliert er Zeit und es passiert etwas SCHLIMMES!


    Eventseite 1 Event 1



    1) Der epische Prolog unseres kleinen Abenteuers

    2) Wir legen bestimmte Tasten auf einen bestimmten Wert um nachher via Script abfragen zu können, ob sie gedrückt wurden.

    Code
    1. Input.keyMapper[65] = 'A' // Setzt die Taste mit dem Javascript Key Code 65 (Taste A) auf den Wert 'A'
    2. Input.keyMapper[13] = 'enter' // Setzt die Taste mit dem Javascript Key Code 13 (Entertaste) auf den Wert 'enter'
    3. Input.keyMapper[32] = 'space' // Setzt die Taste mit dem Javascript Key Code 32 (Leertaste) auf den Wert 'space'

    3) Bewegung des Spielers

    4) Mit der Variable Fortschritt wird zum einen angezeigt, bei welchem Hindernis man sich befindet und ob man es in dem Moment gemeistert oder daran gescheitert ist. Wird da zum Beispiel abgefragt ob die Variable auf 1 ist, wird diese Abfrage mit "Ja" beantwortet, wenn man das Hindernis überwunden

    hat.

    5) Geschafft: Es erklingt ein freundlicher Ton und der Timer wird auf einen bestimmten Wert gesetzt.

    Gescheitert: Es erklingt ein unfreundlicher Ton, der Timer wird resettet, das Hindernis aus dem Weg geräumt und der Fortschritt wird auf 1 gesetzt, damit man weiß, dass das Hindernis nun absolviert wurde.


    Dies wird in dem Event für alle 3 Hindernisse in veränderter Form 3x wiederholt.


    6) Die Tasten werden wieder auf ihren ursprünglichen Wert gelegt, damit man die Textboxen wieder mit Enter oder Leertaste bestätigen kann.

    7) Es wird ausgewertet wieviel Fehler man gemacht hat und was daraufhin gesagt wird.


    Eventseite 1 Event 2


    1) Da das Event ein paralleler Prozess ist, wird abgefragt ob der Fortschritt momentan 0 ist für das erste Hindernis, denn nur dann hat man das Hindernis noch nicht absolviert.

    2) Ein genauer Moment wird abgepasst in dem die Taste, welche man drücken soll, per Bild angezeigt wird und auch tatsächlich drückbar ist. Dies passiert mit der Variable "Timer". Wenn der Timer aber einen gewissen Wert überschritten hat, war man zu langsam.

    Code
    1. Input.isTriggered('enter') // In einer Bedingung wird abgefragt ob die Taste mit dem Wert 'enter' gedrückt wurde.

    Wenn Ja: Der Fortschritt wird erhöht und das Hindernis wird aus dem Weg geräumt.


    Dies wird in dem Event für alle 3 Hindernisse in veränderter Form 3x wiederholt.


    Eventseite 1 Event 3


    Das wohl komplizierteste Event heute. Eine Variable wird pro Frame um 1 erhöht. Prickelnde Schwierigkeitsstufe.


    Hindernisse


    Stein


    Leer


    Verrückter Mann


    1) Nach einer gewissen Zeit fängt der Mann wie ein Verrückter in den Weg vom Spieler zu laufen. Dort verharrt er dann, bis er von einem anderen Event wieder weggeschickt wird.


    Auf der Eventseite 2 ist nur seine Grafik wie er nach oben guckt. Diese Eventseite wird aktiviert wenn der Fortschritt auf 2 ist, das Hindernis also überwunden wurde.


    Das gackernde Hühnchen


    1) Nach einer gewissen Zeit fängt das Huhn an zu laufen.


    Auf der Eventseite 2 ist nur die Grafik wie das Huhn nach links guckt. Diese Eventseite wird aktiviert wenn der Fortschritt auf 3 ist, das Hindernis also überwunden wurde.


    BONUSEVENTS

    Das Event der Blumen ist für das Tutorial an sich irrelevant. Aber ein schönes Detail ist es dennoch, wenn die Blumen auch wirklich  TOT sind.

    Download


    http://www.mediafire.com/file/…eEvents+%28Grandro%29.zip


    Es könnte sein, dass der Downloadlink bald nicht mehr funktioniert. Wenn dies der Fall sein sollte, bitte mir melden.



    Ich hoffe ihr konntet wieder etwas sinnvolles mitnehmen aus diesem Tutorial.

  • Wow, du bist wahnsinnig schnell, was Tutorials betrifft!

    Und QTEs sind komplizierter, als ich dachte... Ich muss das ganze in einer ruhigen Stunde mal Schritt für Schritt nachbauen, um das zu verstehen. Nur so vom Text lesen, macht es bei mir leider nicht klick.

  • Vielen Dank für das tolle Tutorial!

    Dein Video zeigt ja sehr gut, wie es funktioniert :)

    Weiter so! Du machst wirklich tolle Tutorials.

    :s_info: Ehemalig in dieser Community als Toothless bekannt, habe ich nun meinen Künstlernamen angenommen: Cryptogene

    So manch einer kennt ja ohnehin schon meine 3D Szenen.


    ninja_pointright Ihr wollt euch für das Forum bedanken und dieses zu 100% unterstützen? Ihr könnt uns finanziell durch eine Schenkung unterstützen. Danke für euren Support!