Tricky Eventing - Skippable Event

Discussion in 'Non-Maker Specific Tutorials' started by Kuro DCupu, Sep 5, 2019.

  1. Kuro DCupu

    Kuro DCupu Trust me, I'm a veteran RMer Veteran

    Messages:
    246
    Likes Received:
    1,005
    Location:
    Indonesia
    First Language:
    Indonesian
    Primarily Uses:
    RMMV
    This eventing tutorial works with most RPG Maker.

    I must admit, that even though it's NOT PERFECT and INCONVENIENT, this is probably the most relatable way of making a skippable content in your game.

    What is this about?
    Common question from most player : "Can we skip the cutscene?"
    Yes, this tutorial is trying to answer that very question.

    Requirement
    • Basic knowledge of how event works.
    • Understanding of how parallel process actually works.

    How?
    It's actually so simple (it just tricky) that I can't put difficulty rating to this tutorial and could be explained with just a few sentences.
    1. Your main event will just contain a loop, waiting for a button trigger.
      upload_2019-9-5_1-6-16.png

    2. Add an extra page with parallel process trigger which contain your actual event.
      upload_2019-9-5_1-4-34.png

    Full explanation
    What happens there, you just make two event page running at the same time. The true nature of parallel process event is that it immediately run when the condition are fulfilled and immediately cut-off when the condition are not fulfilled. You can say that parallel event is actually a fake event that run on different line than the normal event. Making use of this trait, you use self switch A to trigger your skippable content while actually you are trapped inside a loop waiting for a button trigger. And when you press that button, you instantly ended the parallel event.

    Points to be noted
    • If you want the event to wait for the player input, it's necessary to trapped the event inside a loop.
    • Always leave breathing space (at least wait 1 frame) when using loop.
    • Multiple parallel process may possibly run at the same time. BUT inside an event, only a single page with higher priority may run. Normal event have a nature to finish its page first while parallel can be cut-off in the middle. That contradiction is what make this phenomenon.
    • For the advanced skip button option, you might want to use conditional script / script call for that.
    What make this method not perfect
    is when dealing with the window message. If an event page is like a timeline that always move, window message freeze it. It play by its own rules. Yeah, skipping will still work, only after you escape from window message, so it will be a little weird. When window message are involved, you will be limited to only use [cancel] button as the skip button and are not allowed to use show choice. However it can be solved using a conditional script or script call that allow you to forcefully escape the window message.

    For the last, let me know if there's something you don't understand or what would you like to suggest to improve this tutorial I made.

    Thank you ~
     
    Last edited: Sep 5, 2019
    #1
    caethyril, CraneSoft and Wavelength like this.
  2. Wavelength

    Wavelength Pre-Merge Boot Moderator

    Messages:
    4,191
    Likes Received:
    3,505
    Location:
    Florida, USA
    First Language:
    English
    Primarily Uses:
    RMVXA
    Very neat trick!! Just confirmed (to my own surprise) that this works in Ace. I had no idea multiple pages of the same event could run at once under these conditions.

    You can use a different key to skip the cutscenes (such as SHIFT) as part of the Conditional Branch - this will allow you to activate the "Cancel" option inside the Choice Box without any issue.

    Finally, to everyone reading - while @Kuro DCupu does mention it in a Comment inside the event body (between the Fadeout and Fadein), I can't emphasize enough how important it is to Reconcile everything that may have been skipped!! Any movement of characters, map transfers, switches or variables that were changed, screen tints, pictures onscreen... those all need to be set to the state they would be in if the player hadn't skipped the cutscene, or you're going to run into unexpected behavior later (it could even freeze your game or make it unplayable). You have to be so careful to do this! I recommend doing it between the Fadeout and Fadein, like Kuro suggested, so it doesn't look janky to the player.
     
    #2
    caethyril likes this.

Share This Page