Gab Window

Last Updated: 2012.01.23
Download Link
Github Link

Sometimes there’s random jibber jabber that does not warrant a message box. The Gab Window fulfills that jibber jabber by placing such text outside of the message window box and at the corner of the screen. The gab text will appear briefly and then disappear, not showing up again until the gab text is updated with something else.

These script calls can only be used from a map. The Gab Window will not appear in battle or anywhere else.


This will cause the Gab Window to appear with the string shown. Text codes can be used inside the string. When using text codes, remember to use “\\” for a single slash.

gab(string, actor_id)

This will cause the Gab Window to appear with the string and the actor’s sprite. Text codes can be used inside the string. When using text codes, remember to use “\\” for a single slash. There are special ID’s that can be used in place of the actor_id:
0 – Party Leader
-1 – 1st non-leader member.
-2 – 2nd non-leader member. So on.

gab(string, char_name, char_index)

This will cause the Gab Window to appear with the string shown and a sprite using char_name as the filename of the character sprite and char_index as the index of the character sprite. Text codes can be used inside the string. When using text codes, remember to use “\\” for a single slash.


This will cause the gab window to clear itself and immediately go invisible. This will also allow a previously used gab prior to the clearing to reappear immediately if followed up by another gab.

For those who would like to hide their Gab Windows, bind HIDE_SWITCH to a switch that controls the Gab Window’s visibility.

If the Switch is ON, then the window is hidden. If the Switch is OFF, the window is visible. If you set no switch to the HIDE_SWITCH constant, the Gab Window will always be visible unless hidden by the message window over it.

And that’s all, folks!

59 comments on “Gab Window

  1. What a neat and creative little script YF, could have many uses including having a character who thinks to himself alot, could work great for a comedy type angle.

  2. I haven’t played that one yet, but is it like Final Fantasy XIII, where if you walk by an NPC, he/she says something while you can still walk around?

    It looks cool, I might use it. Thanks.

  3. Seeing Academia and this script instantly reminds me of Final Fantasy XIII-2 and the original Final Fantasy XIII with the party banter.

  4. I was thinking more along the lines of Dragon Age when I saw this.
    How come this script was only posted today but all the comments are from months ago?
    Am I missing something?

  5. This is a really useful script. Unlucky for me, I’m still using VX… is there any similar script for it? D: been looking but had no luck yet

  6. I use this nifty little script for quest updates and small item finds, I was wondering if it’s possible to get this to work with the Ace Message System so it could display icons? If it’s already compatible with it I’m just too dumb to get it working properly.

  7. Sorry to bother, and I might be stupid, but, I’ve read this tons of times to see if I’m doing it wrong… Still I’m having script errors.

    I tried MANY different ways, but since I know nothing about scripting, I’m still getting a ‘no method’ error on the Interpreter script. Can anyone help me out by posting an example of how the Script call has to be?

  8. There’s a bug where the gab window is affected by full screen tinting. Unless you are making use of this, you can use this fix until Yanfly can fix it proper.

    class Window_Gab < Window_Base

    # initialize
    def initialize
    dx = -standard_padding
    super(dx, dy, Graphics.width + standard_padding, fitting_height(2))
    self.z = 201
    setup_message_font if $imported["YEA-MessageSystem"]

  9. Does anybody know how the char_index value works? I’m trying to use this for NPCs, but I can never get the numbers right. For example, I put (gab, “People 6”, 2) to get the 2nd sprite block in the top row from the left, but it showed the 3rd sprite block from the left. In another case, putting ‘4’ gave the first from the left in the bottom row. I’d appreciate the help, if anybody knows how to do this properly!

  10. Suggestion

    Option to play a sound effect to tell the player when it comes up.

    Ex: I got a new quest. Gab window plays a SE when it pops up telliing I do. Plays a different SE when it goes off.

  11. Hi! :)
    I have a question,

    can I change the script, and if so, how ^^ to show the actors face, instead of the sprite?
    Do I even need to, or am I missing something?

    btw thanks for all the great scripts! <3

  12. I’m using Khas Awesome Light Effects and the light effect goes above the gab window so its hard to read it. How can I set the Z of the gab window?

  13. I can’t get this to work.

    And I have thoroughly tested (literally hours). I’ve checked the switch that disables it, and I’ve read all of the responses to this… In the script is says to name the writing to be displayed as “string”, but in the screenshot is shows it written as “text”, can it be named anything as long as the

    xxx = “write stuff”

    is the same as


    Honestly, I have no idea what I’m doing wrong :/
    If someone could post a screenshot of exactly what it looks like in their script call then hopefully that might clear this up… (and yes, I have checked the screenshot up the top)

  14. The first and second its written as this:
    1.gab(“Hey looking at all this foods ” + “makes me hungry!”)
    2.gab(“Hey looking at all this foods ” + “makes me hungry!”, 0) [0 = leader and things]
    3. gab(“text again”, char name, number of sprite of charset) [or that’s what i think, i just tried the 2nd cuz mainly it’s the only one i’m using.

    The “+” is for when the text goes beyond the first row. If you don’t use the +, then the words are only half visible on the 2nd row. Amazing script for it’s simplicity. The only thing i didn’t get is to make 2 thoughts go one after another.

    • I’m in the same boat.
      Not quite sure how I can make more than 1 line of dialogue per event.

      Like, if I wanted:
      “This line adds to the plot!”
      Then to have the 1st gab window fade, then bring up a second one that reads:
      “No, it really doesn’t.”

  15. I still can’t get this to work. I have the script written exactly as it should inside the event. The event is set below character and activated by character touch, but it still is not working.
    It is set like this:

    text = “Tons of teddy bears…”

    gab(text, 0)

    Rar, I’m not getting this….

  16. Pingback: The Backbone of the Game: Programs and Scripts | [Insert Witty Blog Name Here]

  17. Pingback: Friday Script – Yanfly’s Gab Bar | The Iron Shoe

  18. Thanks for this! :D But unfortunately the dropbox link above won’t work. Do you think you could make a mirror link?

  19. Pingback: Light Effects | Project Helix

  20. how do i make it so it does disappear when i open my menu, im using this to tell the player that their lantern is still on but when the menu opens it clears the gab. i want to make it so that the gab has to be manually cleared.

    • Hey thanks for posting that question it made me figure out that you need to use two slashes for text commands instead of one.

  21. Richard, funny, that’s exactly why i used this gab script too. Yan, awesome stuff — the possibilities that this scripts opens up are super interesting. thanks for all your work!

  22. Pingback: Monster Updates To Otherworld In July – Paranormality - Paranormal RPG Maker Projects

  23. To put up more then on line go into the script and find line # 158 and change the number inside the fitting height to make it bigger.
    super(dx, dy, Graphics.width + standard_padding, fitting_height(2))
    2 is default. 5 allows for 4 lines comfortably.
    So your Script call will look like this:
    text = “Hello everyone,
    you all look great!
    Thank you for coming!
    Please enjoy the cake!”
    Note: Don’t forget the spaces between the = after text!
    Also don’t need to put a + anywhere to add the next line, it does that already.

      • I wish there was an edit button… Anyway Further correction, I found a better way.
        Line # 257
        draw_text_ex(48, line_height / 2, @text)
        Change the line height / to 1 instead of 2.
        Then go to Line # 168
        super(dx, dy, Graphics.width + standard_padding, fitting_height(2))
        Change the fitting height to 3.
        You can now fit 4 lines in a much neater view.
        Change the font size to 14 (Line #87) in my opinion, its also a lot cleaner.

        Hope this helps.

  24. Pingback: RMVXA Scripting Proficiency Levels | doublexrpgmaker

  25. Pingback: Monster Updates To Otherworld In July - Otherworld

  26. Are you planning on writing a similar script for RPG Maker MV anytime soon?
    I’d reaaaally love a script like that in my game but couldn’t find anything similar yet.

  27. Is there a way to change the background colour in order to difference dialogs from thoughts or something like that? Found that line with “def draw_background_colour” but that affects all the gab windows while I’m looking for a way to specifie it one by one. I’d thought in a script call, but can’t figure it out yet.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s