Creating a Flexible Dialogue System With Unity 2D

Поділитися
Вставка
  • Опубліковано 3 лют 2025
  • Ігри

КОМЕНТАРІ • 184

  • @SemagGames
    @SemagGames  4 роки тому +62

    Hi everyone! The game is now purchasable on Steam!:
    store.steampowered.com/app/1264520/
    By popular demand, I have also made a dialogue tutorial series!:
    ua-cam.com/play/PLCGaK2yqfY2IrJYnOnlgdmzWVUFXsRQXA.html
    This video took me a long time to make and I've never really done this type of video before, so please let me know what you think!
    Also, please give the video a like if you enjoyed - it helps a lot.
    I hope I explained the process well enough that everything made sense. It was quite difficult to boil down the code to its simplest parts and explain the methods I used.
    Otherwise, I'd love to hear which parts were confusing and hard to understand.
    - Pattrigue

    • @hehehe4364
      @hehehe4364 4 роки тому +2

      Semag Games it was really good!

    • @joaomanozica9579
      @joaomanozica9579 4 роки тому +1

      pattrigue more like im pattrigered with u haha 0 iq

    • @nomadspeed
      @nomadspeed 4 роки тому

      If this is a paid game, are we gonna get it on consoles like XB1, PS4, and the Switch

    • @joaomanozica9579
      @joaomanozica9579 4 роки тому

      @@nomadspeed its paid and maybe its gonna be in the ps6

    • @majztic
      @majztic 4 роки тому

      @@joaomanozica9579 I would enjoy it on the switch

  • @Snatch_Kid
    @Snatch_Kid 4 роки тому +72

    You guys are really dedicated to this which I love, I'm glad you guys are getting your (amazing) dream game out to the world, keep up the great work!

  • @Connor-N-Freeman
    @Connor-N-Freeman 4 роки тому +28

    I'd really love to see more of these! You don't get to see how the developers make a game everyday.

  • @invertco1955
    @invertco1955 4 роки тому +3

    I can really tell that you guys are putting lots of love into this. Really excited for when it’ll come out. Keep it up!

  • @TheMidnightRoutine
    @TheMidnightRoutine 4 роки тому +6

    I love this videos man, and i agree that´s a cool dialogue system!

  • @changwillis476
    @changwillis476 3 роки тому

    Thanks for the idea about how flexible the dialogue system can be!

  • @haydeludos
    @haydeludos 4 роки тому +2

    it makes total sense rn 🙃
    Well done!

  • @pedror1439
    @pedror1439 4 роки тому +2

    when I saw you had the dark theme for unity and had Immediate respect for you

  • @manameisjeffie656
    @manameisjeffie656 3 роки тому

    advanced devlogs that what i like, good video

  • @AquaYEE
    @AquaYEE 3 роки тому +2

    3:43 when that adventure forward 2 music hits

  • @moonstonestudios8719
    @moonstonestudios8719 4 роки тому +30

    Can you make a tutorial on this? This will be so helpful!

  • @atlantix7976
    @atlantix7976 4 роки тому

    This is so cool, you develop your game as you're teaching us how to program on unity, this game needs to be more revelant, seriously

  • @IndeverGames
    @IndeverGames 4 роки тому

    This is super useful. I might have to give you a mention in an upcoming dev log. Thanks!!

  • @seraphimsarecoool
    @seraphimsarecoool 3 роки тому

    the value increases at the same rate regardless of your frame rate that sounds so SMOOTH xd

  • @dorondavid4698
    @dorondavid4698 3 роки тому

    This game looks great!
    I searched for "Dialog box unity 2d", and this vid came up, so just saw the game for the first time

  • @declanmerry8407
    @declanmerry8407 4 роки тому

    This was really well done, not too in depth to scare people away but enough information to explain both how and why you made certain choices, well done! Subscribing now and I hope to see more :)

  • @mystrrrreioucuszthlpepperac
    @mystrrrreioucuszthlpepperac 4 роки тому +2

    This game is amazing! Now that you've made that, theres no turning back. This game is gonna be one i will never forget.
    also, some suggestions if you dont mind.
    Custom images. They could be on the design of a hat, or inside the level creator. Anyways, i just thought it would be funny if that would be reality.
    Clothing. That would be epic to put on one of our protagonists. It could also include images from ur computer.

  • @eggqwq
    @eggqwq 4 роки тому

    I just wanna say that i tried the demo of Vibrant Venture and i am in love! I can’t wait for the full game!!

  • @Marxally
    @Marxally 4 роки тому

    Amazing job!!! Reminds me a lot of Paper Mario and Animal Crossing. A lot of people overlook this kinds of stuff, but I really appreciate it!

  • @tria7271
    @tria7271 4 роки тому +1

    This game is absolutely amazing and I can't wait for the release!

  • @toniconge7003
    @toniconge7003 4 роки тому

    Very cool, such creative thinking on going about this.

  • @gristleprince
    @gristleprince 4 роки тому

    It looks exciting. Cant wait for it!

  • @ribbit1171
    @ribbit1171 4 роки тому +2

    So excited for this game man!

  • @puzzlegears1653
    @puzzlegears1653 4 роки тому +4

    A constantly changing rainbow effect for color could be interesting.

    • @Underscore_Qwin
      @Underscore_Qwin 4 роки тому

      Unity has a Color.HSVToRGB static function, so you could make it so every frame you add 1 to a letter's hue, resetting when max is reached and then use the function to convert it to RGBA values and then assign the RGBA to the letter. although i'm really not sure how this will affect performance. no, really, i don't know if its effect is small or big.

  • @bocchipilled
    @bocchipilled 4 роки тому +19

    Fun fact: Semag spelt backwards is Games

  • @capsey_
    @capsey_ 4 роки тому +1

    Wow, thank you for the tutorial! Also for getting of width you could get Texture.width property and in sprite editor make a border of the sprite the same with width of a character.

  • @yusrighouse
    @yusrighouse 4 роки тому

    This is really great man. Hope you make more like this. Very inspiring and insightful for beginner wannabe game developers.

  • @PandemoniumGameDev
    @PandemoniumGameDev 4 роки тому

    Love the animations! The tag parser is also dope, tried to implement it in my system and couldn't find a way, so I guess I'll borrow yours 😃

  • @skilectrik8007
    @skilectrik8007 4 роки тому

    oh my gosh this game seems so good i hope that your project works out!!

  • @marcpavon6945
    @marcpavon6945 3 роки тому

    I love this video thanks for the great work i will use it as reference for my project

  • @hatoving
    @hatoving 4 роки тому

    Oh man , this is cool. I've been dying to look for a tutorial about dialogue systems and I just realized this video isn't it. Oh well

  • @yaboijagerlive7923
    @yaboijagerlive7923 4 роки тому +1

    Could you please make a more in-depth tutorial on creating the sprite dictionary and getting the sprite from it with the width calculation and everything? Great game btw!

    • @SemagGames
      @SemagGames  4 роки тому +1

      You wanna see a more in-depth explanation of the width detection algorithm?
      I could give you the source code of my implementation, if that works for you?

    • @yaboijagerlive7923
      @yaboijagerlive7923 4 роки тому +1

      @@SemagGames Wow that'd be great

    • @SemagGames
      @SemagGames  4 роки тому +1

      @@yaboijagerlive7923 Here you go: hastebin.com/dofagukede.cs

    • @yaboijagerlive7923
      @yaboijagerlive7923 4 роки тому

      @@SemagGames Cheers mate! Will definitely check out Vibrant Venture when I get the time.

  • @bloxington6751
    @bloxington6751 4 роки тому

    This game is going to be sick

  • @desmo-ciel
    @desmo-ciel 4 роки тому

    This is really awesome.

  • @EnigmaThePhoenix
    @EnigmaThePhoenix 4 роки тому +8

    question: can you make an indeph explanaition on what exacly you have done for this system? like a tutorial :3 if i can get it a good amount of how to build it, i can try my self. woud be very nice if i can tackle this, its exacly what i wanted to build myself for my rpg. the most of it was alredy planed by me like the tag system, but i wasnt aware, that you can make pixalated font realy spritebased and that dynamicly. the more you know. i realy like your version and hope i can get my own done that good.
    Edit:
    tags i was planing that can be interesting for you -> change font color, change font size, change display speed, display a icon in the text, change of the sprite based font. the others i dont think suite your type of game, but here they are -> change of the dialog window (so it can dynamicly be set up in a longer conversation), change if the text can leave the box (can be used for creepy effects i guess), if the player has to press the button to contenue the text, set up and/or change a name box above the dialog box itself, show or change a picture or a portrait next to the dialog box.
    the most of them have some settings that i didn't mentioned, but i think you get an idea for what i'm going whit this.

    • @arrozdebacon3976
      @arrozdebacon3976 4 роки тому +1

      Good Morning!!! I'm doing a
      Completion of course work for my technical education and I would like to put this tag system in my game, would you have any good tutorial or something to help me? because I've been stuck in it for days.

    • @yaboijagerlive7923
      @yaboijagerlive7923 4 роки тому

      @@arrozdebacon3976 are you still stuck? cuz I sure am lol

    • @emirhanpakyardm9142
      @emirhanpakyardm9142 3 роки тому

      @@yaboijagerlive7923 are you still?

    • @roshi_404
      @roshi_404 2 місяці тому

      hi! sorry, i know this comment is old but would youmind explaining how you implemented the tag system?

  • @DarkDax
    @DarkDax 4 роки тому

    Love this

  • @androm3da858
    @androm3da858 4 роки тому

    I don't understand anything, but this is still really cool

  • @rohan7780ch
    @rohan7780ch Рік тому

    That's looks dammmm coooolll men , 🤯👍

  • @FrAGgi
    @FrAGgi 4 роки тому

    Would be very nice if you could explain your "dialog response system" in detail with code examples.
    And great work :)

  • @LuRybz
    @LuRybz 4 роки тому

    really well made game.

  • @sdg1
    @sdg1 4 роки тому

    i know im late, but a suggestion for a font could be one that squashes and streaches like the title screen's font

  • @nicholaiw.f.2888
    @nicholaiw.f.2888 4 роки тому

    nice help for doing this!

  • @dove_inblack3546
    @dove_inblack3546 4 роки тому +1

    Will the characters you play have dialogue? In my opinion, if the main character can speak, it always makes the game better.

  • @seraphimsarecoool
    @seraphimsarecoool 4 роки тому +2

    make a tutorial on something like this or provid us a demo or smth cause i coulnt get mine working even thought you showed some code it helped a little but it wasnt enaugh lol

  • @owlmanz8171
    @owlmanz8171 4 роки тому

    I hope there is a prologue to this game or an awesome crossover to smash

  • @SanGamesZ
    @SanGamesZ 4 роки тому

    I was watching the vid, i remember a kubbi song and 1 second later i hear it in the video.

  • @amund8821
    @amund8821 4 роки тому

    Very epic

  • @charliebat5661
    @charliebat5661 4 роки тому

    It whould be cool if there could be rainbow text. like a looping and moving rainbow texture masked on to the dialog or something idk

  • @Fullonpepper
    @Fullonpepper 4 роки тому

    there is a demo but i can't wait for the real game

  • @gabrielbear5268
    @gabrielbear5268 4 роки тому +3

    Every time your describe something as "Basic" is not basic at all from where I'm looking haha

  • @rnegron77
    @rnegron77 4 роки тому

    It would be awesome if you put the flexible dialog engine on the unity story thingy.

  • @NeroLennTheFoxProto
    @NeroLennTheFoxProto 4 роки тому +17

    Level: "help"
    Desc: I don't know what to do
    Edit: desc is made up

  • @kacperxt371
    @kacperxt371 4 роки тому

    I'd like to have that system in my game.

  • @roshi_404
    @roshi_404 3 місяці тому

    can you make a tutorial for the tag reader?

  • @antibastian__
    @antibastian__ 4 роки тому +6

    He's using Unity Personal and has Dark UI. Excuse me *WHAT*

    • @ridlr9299
      @ridlr9299 4 роки тому

      Yeah you can use a hex editor to change the values in the Unity.exe file. It's kind of complicated though (because it's different for every version) and you have to do it for every new version of unity you install.

    • @Zure619
      @Zure619 4 роки тому +3

      @@ridlr9299 Dark Mode is actually free now for everyone!

    • @ridlr9299
      @ridlr9299 4 роки тому

      Dennis Schröer how do you switch to it?

    • @Zure619
      @Zure619 4 роки тому +1

      @@ridlr9299 You need to update Unity and then in the settings it's not grayed out anymore

  • @cronoz7
    @cronoz7 4 роки тому +1

    But what about internationalization in games? Using this sprite based alphabet is fine but if you want for example to add Russian language support you'd also have to draw all characters of the Cyrillic alphabet. For some languages such as Japanese you'd have to draw hiragana, katakana and at least 2000 kanji symbols. Is it possible to just shade the default text to look like pixel art?

    • @toocoolbroyeah
      @toocoolbroyeah 2 роки тому

      Have you found a solution to this? Thanks!

  • @OfficialJuggaloJesus
    @OfficialJuggaloJesus 4 роки тому

    Is the background music the theme song for the submarine level on Super Mario 64? XD

  • @nejatulusal1475
    @nejatulusal1475 3 роки тому

    What is the color theme on visual studio I loved it

  • @emanuelcarvalho7736
    @emanuelcarvalho7736 3 роки тому

    how can i make the dialog return when i click on a button called back? need to do for an educational game

  • @larsityosmarsilyet5933
    @larsityosmarsilyet5933 7 місяців тому

    actually its great but any detailed tutorial???

  • @Finsceal
    @Finsceal 4 роки тому

    I do have to say you did a nice job on the script disliking because it was overwhelmed

  • @Coldcolor900
    @Coldcolor900 4 роки тому

    what about text bubble styles? like if the dialogue is written on a sign, the bubble that the dialogue goes on could be a sign and if its a person it could be the default bubble?

  • @bakrobertjohnston4889
    @bakrobertjohnston4889 4 роки тому

    It’s a good game I played the first level and it’s good

  • @applebeestacos4840
    @applebeestacos4840 3 роки тому

    but how would i use vars for names if its not in code

  • @pill0h130
    @pill0h130 3 роки тому

    Rainbow text + wave

  • @NSxJohnZ
    @NSxJohnZ 4 роки тому

    Hi, are you able to share how did you create the Dialogue system such that you included the responses in it as well? Interesting game btw

  • @ezequielcanale
    @ezequielcanale Рік тому

    This is amaizing. I spent like three days creating basically this exact system, and I just found this video. It's funny how you we faced every problem in basically the same way. I even decided to handle is the same way HTML does, with the tags.
    However, I managed to achieve it using TextMeshPro, and manipulating the vertex myself. I even might polish it a bit and upload it as a free asset.

    • @roshi_404
      @roshi_404 2 місяці тому

      hi, if you don't mind could you please describe how you implemented the tag system with the tags and all that?

    • @ezequielcanale
      @ezequielcanale 2 місяці тому

      @@roshi_404 hey, I did I a while ago so I don't remember the details. But you have to know regular expression and learn a bit on how to make parsers. It is impossible that I explain better that any tutorial you find on the internet.
      The basic was finding out the positions of the regular expression (Google what are regular expression if you don't know) matching the pattern . and storing the position in on array per effect. For or for any other tag.

    • @roshi_404
      @roshi_404 2 місяці тому

      @ezequielcanale hi, yes I've tried it out with regular expressions and it worked pretty well for displaying the text but there were quite a few issues about the wrong text displaying when I try to skip the dialogue and the effect just not working after i try to skip, did you encounter these issues? If so do you remember how you solved them? If not, thank you for taking the time out of ur day to reply :)

    • @ezequielcanale
      @ezequielcanale 2 місяці тому

      @@roshi_404 it is usually not efective to ask for advice on specifics of your code because you are the one that knows it the best and there are millions of way you could be getting that bug and I wont be able to help.

  • @RTWrename
    @RTWrename 4 роки тому +1

    would love to learn from you, having dificulties understanding how you started the Sprite Data script, is there any that you could release the source code?

  • @ludwintor4986
    @ludwintor4986 4 роки тому

    Hi! I have a problem with displaying text using this system cuz for example, I have a letter "I" whose width is 1 and letter "W" whose width is 10, further I have a word "IW" and this means that letter "W" going to overlap letter "I" cuz "I" extends pos only 1 pixel, when on the left (where's letter "I" stands) there's gonna be a half of "W" cuz its half is 5 pixels

  • @neontd
    @neontd 4 роки тому

    Will you guys be planning to make a mobile port of Vibrant Venture?

  • @39digits
    @39digits 4 роки тому

    I really hate to be "that guy" but what Visual Studio theme are you using? I love the palette choice and wouldn't mind giving it an install :)
    Great video btw - really interesting.

    • @SemagGames
      @SemagGames  4 роки тому +1

      I use my own theme, not sure if I can send it to others.
      - Pat

    • @39digits
      @39digits 4 роки тому

      @@SemagGames Thanks for the reply. If you ever package it up and put it on Github or similar let us know :)

  • @ReylordFX
    @ReylordFX 4 роки тому

    I wanted to actually mod this game just to create my own character on this great game ._.

  • @lizard.y
    @lizard.y 4 роки тому

    Do you guys think the game will be on the Nintendo Switch?

  • @lorenzobachman6266
    @lorenzobachman6266 4 роки тому

    i hear adventure forward 2 music in the backround

  • @MaxPumper86
    @MaxPumper86 4 роки тому

    Could you please show the DialogueObject script? because I don't understand how you add the dialogues and responses in the editor that way

    • @SemagGames
      @SemagGames  4 роки тому

      It's a ScriptableObject. Here's the setup to help you get started:
      hastebin.com/yafunomuzi.cs
      Then you can just right click and add it as an asset. I suggest reading about ScriptableObjects on the wiki, they're incredibly useful!

  • @firebubble2
    @firebubble2 4 роки тому

    I've been looking for how to make a dialogue system just like this for so long but i still can't find anything like this.

    • @emirhanpakyardm9142
      @emirhanpakyardm9142 3 роки тому

      have you found anything?

    • @firebubble2
      @firebubble2 3 роки тому +1

      @@emirhanpakyardm9142 no, sorry. It was for an exam I had last semester where we had to make a "story based 3d platformer" (kinda sorta). I'll see what I can manage later, but right now I'm going to focus on my exams for this semester before starting *even more* small projects of mine lol

    • @emirhanpakyardm9142
      @emirhanpakyardm9142 3 роки тому

      @@firebubble2 good luck with the

    • @firebubble2
      @firebubble2 3 роки тому

      @@emirhanpakyardm9142 thanks👍

  • @tick1180
    @tick1180 4 роки тому +1

    Will Vibrant Venture be on mobile?
    Please answer this question.
    Thank you!

  • @bevvy.bee9
    @bevvy.bee9 4 роки тому

    Can I take a look at the code for this???

  • @fxshyy
    @fxshyy 4 роки тому +1

    try sound a little louder and happier, some advice
    other then that a really good tutorial for beginners!

  • @ThatChronomancer
    @ThatChronomancer 4 роки тому

    this is like a 2d and refined version of Adventure forward from roblox, including much better gameplay

  • @PHNX_main
    @PHNX_main 4 роки тому

    are we going to get more tutorials?

  • @Merchantic
    @Merchantic 4 роки тому

    If i get into game design, can i use this idea to make my own text?

  • @Arciwiz
    @Arciwiz 4 роки тому

    EPICC

  • @bluesky4431
    @bluesky4431 4 роки тому

    Why there a malware byte in the game?

  • @mateuszszulecki5206
    @mateuszszulecki5206 4 роки тому

    So will the unlockable characters from the roblox version make it to the game?

  • @HaPPy-fe4fc
    @HaPPy-fe4fc 4 роки тому

    Dope

  • @roydonk2878
    @roydonk2878 4 роки тому

    It seems very cool but can you make the source code available for this or make a more in depth tutorial about how to make it? As of right now this is only useful for programmers with lots of experience.

    • @SemagGames
      @SemagGames  4 роки тому

      This isn't really a tutorial, it's meant to be a showcase of the development process and the problems I encountered along the way as well as how I decided to solve them.
      - Pat

    • @roydonk2878
      @roydonk2878 4 роки тому +1

      @@SemagGames Gotcha. Well if you ever decided to do a tutorial series I'm sure you'd get a ton of new subscribers. Good luck with your game, it looks great

  • @tydrv
    @tydrv 4 роки тому

    I have a question
    Its possible that u guys make and android version please?

  • @LoftedXD
    @LoftedXD 4 роки тому

    How long do you want the game to be? As in, how many levels.

  • @IOSoraOI
    @IOSoraOI 4 роки тому

    I love you

  • @finareverseosmosis5994
    @finareverseosmosis5994 4 роки тому +1

    Something that i thought of for the text box is that maybe when someone or something that can talk gets killed while talking, the text box shatters maybe in half, hopefully you know what i mean

  • @Quintupple
    @Quintupple 4 роки тому

    Off topic and random but what theme/font are you using for VS?

  • @katzlolk
    @katzlolk 4 роки тому +1

    this game was on roblox before!!!!

  • @joaomanozica9579
    @joaomanozica9579 4 роки тому +3

    0:40 help

  • @flameprincess7313
    @flameprincess7313 4 роки тому

    While I love the idea, I feel this is not super ideal if you want to make localization a possibility

    • @SemagGames
      @SemagGames  4 роки тому +1

      Why not? You could just extend it by turning the string fields in the dialogue objects into references to language objects which contain string fields for each language :)

    • @flameprincess7313
      @flameprincess7313 4 роки тому

      @@SemagGames Ah yes, that is true, good point! I was thinking of non-localized characters, one thing is æøå, but imagine wanting the Chinese alphabet and what not, I suppose one would have to add every character from every relevant language to the array og characters, which I imagine could be quite a hassle :D I might be overthinking it!

    • @SemagGames
      @SemagGames  4 роки тому

      @@flameprincess7313 ​ @Flame Princess Yes, in that case it'd definitely be better to use something like TextMeshPro.
      I don't plan on localising this game though, since it's our first game and it's also a platformer, so it really isn't that dialogue heavy at all.
      Good point though, and no doubt worth considering for implementing a similar system for a game that needs dialogue translated.

  • @whosblacxops
    @whosblacxops 4 роки тому

    Can you play this game on ps4?

  • @joggandodequatro
    @joggandodequatro 4 роки тому

    Now, just imagine this on a Xbox One...

  • @d.k.j.m.2203
    @d.k.j.m.2203 4 роки тому

    I wish this game was still on roblox

  • @yakanashe
    @yakanashe 2 роки тому

    Can we download this?

  • @bloop284
    @bloop284 4 роки тому

    Will this game be on android?