Branching Dialog System with Effects in GMS 2! (Part 1: Setup and Typing Effect)

124,054
0
Published 2021-07-13
Support me and these videos on Patreon! www.patreon.com/peytonburnham

Branching dialog, colored text, character portraits, shaky text, floating text, etc in GameMaker Studio 2.3! This is a 5 part series showing you how to make a very expressive and versatile dialog textbox system.

This tutorial is more advanced than the others I've posted up to this point and you would very much benefit from watching my menu system video before you watch this if you're not already confident in GameMaker.
Menu System Video:    • How to Make a Menu System (with Subme...  

My tweets: twitter.com/peydinburnham
My Game: peytonburnham.itch.io/rose-of-starcross-demo
Discord: discord.gg/tFd6RVF
My twitch: www.twitch.tv/peydinburnham

If you have any questions, leave a comment or send me a dm on twitter/Discord! I'll do my best to get back to you!

All Comments (21)
  • @jessejayjones
    Ohmygosh, I've been working on my own system for this and banging my head against a wall. Thank you for taking the time to make this and explaining it so clearly ❤️
  • @jaytwist8738
    I’ve watched hundreds of gms tutorials and yours are some of the friendliest and well explained 🙏
  • Great tutorial. I am going to have to watch this video multiple times too before fully understanding everything (so many variables!). Thanks so much for doing these. Also, for anyone who is not so inclined, like Peyton mentions, it is not necessary to make your own text. I just went Create -> Font in the Asset Browser and chose a font that I liked. This can save you the time of creating everything yourself. Just make sure that you use your font asset's name in the code where necessary (and not Petyon's font's name).
  • @onion1780
    I was having lots of trouble and then realized that I had parentheses when I should have had brackets. Thanks! I really love your tutorials, the last time I coded anything was freshman year in highschool, and I understand this a lot better. :)
  • @CakeDrakeNG
    If you set text_speed to 0.1 a wierd bug might happen, it sometimes removes the last letter of your text Here's how to fix this on the line below: var _draw_text = string_copy(text[page], 1, draw_char); Make sure to round "draw_char", like this "round(draw_char)" Code should now look like this: var _draw_text = string_copy(text[page], 1, round(draw_char));
  • @floettefavors
    You are LITERALLY a life saver for coding and game making noobs like me 😭
  • @blodmourne
    Just a heads up, for skipping out the texts @ 24:00, if you map the same key to initiate dialogue and fast forward text, the first page you display would always have been skipped to show all state. To fix it, simply use a small buffer like: else if draw_char>= 10 {draw_char = text_length[page]} I also find that sometimes as a player, I would accidentally skip to next page if we try to skip[/show full page too close to the end of a page, so you might want to add a buffer at the end too: else if draw_char>= 10 && draw_char<= text_length[page] - 10 {draw_char = text_length[page]} Adjust the buffer value of 10 as you like, and hope this helps someone.
  • @sensiblegh0st86
    I hope this comment doesn't get drowned because I DESPERATELY need an answer from the person who created the system, how in the WORLD do you keep dialogue from repeating if you've already seen it / played through it once (i.e. someone goes "Hello! I'm Tom!" when you interact with them for the first time but the next time, and the times after that, he goes "Have a good day!"). I'm brand new to Gamemaker Studio 2 and I don't know the intricacies of arrays, scripts, and the like quite yet, so I'm unable to figure out how to modify the dialogue system on my own, and I don't want to change the entire dialogue system because I already used it for so much.
  • @Tomin8r97
    Been following a few different tutorial series, and this has been by far the most helpful. Everything I do works, and I also understand what I'm doing rather than just copying. Thanks so much, man!
  • @dramaticcheese_
    I love your tutorials!! They help a lot for people like me who are new to game maker :)
  • I did have a few errors but all were my errors, so this helped me sooo much :D
  • @dokidoki5390
    Great tutorial! Do you also a tutorial for cutscenes ? Would be everything I need for my dream tutorial
  • @dickwarren8222
    This is awsome! Always great to find a good gamemaker tutorial <3
  • @oliverlanzilli
    exactly what I have been looking for!! thanks so much!!!!
  • @dreggoon4630
    Great videos! Really helped me out when I needed it. Thank you!
  • @JokaPlayz
    THANKS VERY MUCH!!!!!! You're make AWESOME and UNDERSTANDABLE tutorials, EVER!
  • Oh thank you so much, I only knew how to write the text letter by letter using arrays, but the move effects really helped me <3
  • @obenohnebohne
    Wow, I managed to get here. It was quite fun. And I am very glad that you now record in 1080p because it sometimes was pretty hard to see the code on my 1080p monitor. Now I am starting to do this tutorial series. Keep up the great work; (lol, I ended my sentence with a ; - I think a break from coding is needed :D)