Free Rpg Dialogue System

Hey guys,
i just reached 1000 subscribers on my youtube channel (UnrealGaimeDev - YouTube) and so i decided to give out a project of mine for free.
It is a dialogue system very similar to those used in modern role-playing games like for example The Witcher. Here is a video showing you how to use the system (download link in the video description):

Edit:
Scroll down to see a video on how to migrate the system nto your own projects.

And here are the features of the system:

*- unique walking path for npcs

  • simple messages for npcs will be displayed above their heads

*- every dialogue message contains an audio file and a spoken text

  • npc can have multiple dialogue messages to choose from
  • the next message can either be selected in an order or randomly
  • also includes “important” npcs
  • dialogue for impotant ones looks different
  • for all important dialogues you can define:
    -the assigned audio file
    - the spoken text
    - the name of the sender
    - whether or not this message can be skipped using spacebar
    - after how many seconds it can be skipped
    - whether or not the message should be displayed from a different camera angle (used for cinematic story telling)
    - the camera from which this message is displayed
    - the time to interpolate between the current and next camera (used to create smooth camera transitions)*

*- further you can add decision and various options

  • all options have:
    • a text (like “End Conversation”)
    • an icon if you want to use one (like a little shop icon when the npct is a merchant)
    • a category that defines their color (e.g. related to main quest -> orange color indication)
  • an option can be selected by:
    • using the arrow keys
    • or hovering over the desired option
  • an option can be confirmed by:
    • pressing enter/spacebar
    • clicking the option
    • or using the number keys on the keyboard (“1” = confirm first option)*


*

  • further decisions can have a custom time limit (e.g. 20 seconds)
  • it will be indicated with a progress bar and a timer
  • when the time is over the currently selected option will be confirmed*

If you like this system please also head over to my youtube channel and subscribe for more free content! :slight_smile:

Wow! Thank you for sharing this @!

I recently started following your channel for your Questing system tutorial and now this :slight_smile:

Keep up the good work!

that is pretty **** nice of you !!!

will this be easily adaptable for a point & click system ?
and will it be further developped in the future ? Will you support it ?

it would be a nice feature if you could read/import all dialogue texts from an external document e.g.
so you could edit all dialogs in one document and dont have to edit each of them individually

best regards
and thx very very much !!

Thank you, great asset, very helpful.

Thank you CoquiGames and thanks for following :slight_smile:

Of course it can be easy used in a point and click system since the only thing that has to change is the player controller/player character class. I am not sure whether i will support it since i am doing the quest series right now and still have to help people understand my inventory system so i am extremely busy right now. I might do a video about the external document since that is a really good idea.

Thank you for your wonderful gift, it looks to be very well-done as per your usual style.

Thank you alot for this mate! I have a little problem, is there a way to contact you? Discord, skype or even email?

You can send me a private message either here or on youtube

HI! Thanks a lot for this great Dialogue System. :slight_smile:

I have some Question to know how to add to the System:

1st: How I can add Animations? I mean, I want to show animations choosing the best for each phrase and make the NPC do it

2nd: I want see my characters talk to! what modifications would be the best for doing that?

And the last Question es… How I make a Three Dialogue? I mean, I want for example do that a NPC have multiple conversations, like this

NPC: Main conversation -> Question A, Question B, Exit

When I Ask Question A, I want put 2 options: Back to Main Conversation (to ask more things) or Exit.

Thanks for your time, making this system and for the time solving my questions ^^

How do I even implement this in my project? How do I add it for it to function? I’ve tried with migrate but it doesn’t work at all that way…do I have to make those variables or? :slight_smile:

I can answer this.

You must modify the blueprints to fit in your actual project, because right now, the BP uses a Third Person BP as a base and a generic NPC (Master_NPC) to work.

Hi again @GameDev I’m having some problems here

I got that error after changing the “Third person BP” for my “BP_HeroCharacter”

I don’t know if this info would be useful, but I don’t use the standar character controller, I use the one I programmed. Any Clue to solve this?

Thanks again for your time >_<

yeah, I am still not really sure how to do it…some guidelines would be great, or follow-up video that tells exactly how to do it so there is no confusion anymore! ^^

Guys i will do a video about migrating tomorrow, stay calm :slight_smile:

And to your other questions NightMare:

  1. You need to add a variable to the s_DialogueInfo which should be of the type AnimationMontageReference. Afterwards go to the MasterNpc class. Open the AddCustomImportantDialogue function and after switching to the new camera you would get the anim montage of the dialogue struct and play that animation.
  2. You dont need modifications for that. Just switch to a camera that shows the player and type in the player name for the name of speaking person in the dialogue info.
  3. I actually showed how to do decision and react to the chosen option in the video.

After releasing the dialogue system as a 1k subscribers special, I got a lot of questions on how to integrate the system into another project. Here is a video about how to do that using the first-person template as an example (but it works the same way with any other template or project).

Sooo… this is really weird but my NPCs seem to kind of get stuck where they will have a VERY narrow field in which you can initiate dialouge with them. I can’t stand behind them for instance. And they only rotate to some degree sometimes.

Any idea where I can look and what I can post your way to see if we can figure this out?

Thank you for an excellent system! Cheers!

How you can interact with enemies is defined in the third person character so you might want to take a look at the interactCapsule in the third person char bp.

Thank you for releasing this nice little dialog system, will this suit games with alot of dialog? Like Kotor? or just sutiable for games
that use limited dialog in them? I’m not sure what the capacity is, can it support data structs tables for dialog ect.