Well, I’m in process to find out what is the best approach, and I’m kind of struggling with it.
Initially I needed a quest system, but than I thought that I will also need to have a dialog system for it, because having a quest from NPC is crucial mostly.
So far this is the best approach I found, but I don’t think it is the best.
This tutorial lacks further descriptions, like:
- how can we make dynamic user options to appear after some event have ocurred.
- what is the best approach to store this kind of information. I guess we can store this info inside of the Game Instance, but how specifically? Like, do we need to create some custom Structure which will contain anything I will think is fine to be stored in this Dialogue System variable, in addition of flags for the hidden options - already chosen dialogues? Or maybe there is a better approach?
Also, the problem of that approach are Datatables themselves. It is hard to validate all of the data correctness visually
But for starters - I think you might like the approach in the video, because it can be expanded.
For example you might want to use some specific animation or pose for specific NPC dialogue.
Or you might want to place the camera at different point of view.
Another problem of Datatables - they are exceptionally read-only, and it is frustrating. Seems like convenient mechanism to store enormous amount of pretty much everything, but no storing at runtime.