GS_DialogueSystem
Categories:
Dialogue Data Structure
Sequences
Clusters of dialogue meant to represent a single dialogue encounter. Used for Dialogue Selection, as well as sorting/organizing in the Editor.
Dialogue
The core of the system. The actual dialogue that will be presented within the game runtime.
Selectors
A system to allow branching out from a starting point into many destinations. Defined by the unique selectors processing of those branches.
Selector paths are affected by the preceding conditions, culling options that are invalid.
Option Selector & Options
The standard “Dialogue Option” method of allowing a player to select their responses.
Random Selector
A randomizer selector. This selector does not pause for input, it simply randomly selects where the branch will lead.
Pure Random & Weighted variants.
Events
Triggered functionality that encompasses many systemic outcomes, used intertwined with the dialogue paths being navigated.
Records
Integrated with the GS_Save record keeper system. This event type allows for changing records that affect the rest of gameplay, as well as dialogue conditions.
Actions
A broad reaching type. Using GS_Actions and likely more. Actions can drive unique behaviour in and outside of the Dialogue Sequence.
Things like activating and deactivating things, spawning, character moving and pathfinding.
Additionally allowing the use of custom actions, like RPGStats changing stat, or vitality. Inventory giving/taking an item, or affecting currency.
Posing
A targeted event type that supports the many data points used for shifting and changing an actors state.
Pointed at actors it affects:
Poses, Emotional state, Profile Images, and the blending of all these things.
Conditions
A very critical system. Conditions are meant to evaluate MANY possible data points as a means to filter possible outcomes of navigating dialogue.
As a standard, uses Records to determine if a dialogue path is available to the navigation system. Greater than, Less than, equal, not equal evaluations used with the Records integer format.
Additionally allowing the use custom conditional evaluators, like RPGStats enabling stat or vitality checks. Inventory enabling “hasItem”, and “hasCurrency” checks.
Dialogue Editor
The in O3DE Editor GUI for authoring dynamic and complex branching dialogue.
It includes interfaces for editing settings, as well as defining actors and many meta-data points around presenting the actors in dialogue sequences.
Dialogue Sequencer
The actual system that pressents the dialogue at runtime, using the dialogue data to properly deliver the dialogue experience.
Built in Dialogue UI
Overlay UI
In-world UI
Subtitle UI
Dialogue Predefined Actors
Actors Outline
Actors Names, Profile images, pose animations, pose images
Pose groupings based on emotion category.