-
Notifications
You must be signed in to change notification settings - Fork 3
The Dialogue System
One of the most important part of an RPG is the dialog system. It's one of the only ways the game can communicate the main story with the player. The dialogue system used in this game is a custom made system for this game so it may have some weirdness. Don't worry however, This guide will explain how it works!
Note: this documentation is still a work in progress!
There are 2 main types of dialogue in the game:
-
DIAG_TYPE_TEXT
- shows text -
DIAG_TYPE_CODE
- executes code and them jumps to next dialogue option -
DIAG_TYPE_CHOICE
- Shows a choice menu with 2 options
Each dialogue type has a different format as well:
DIAG_TYPE_TEXT
//Template
[DIAG_TYPE_TEXT, <text:string>, <character_id:int>, <face_id:int>, <typespeed:float>]
//Example
[DIAG_TYPE_TEXT, "Hello, World!", DIAG_CHAR_PLACEHOLDER, DIAG_FACE_HAPPY, 0.5]
DIAG_TYPE_CODE
//Template
[DIAG_TYPE_CODE, <code:function>]
//Example
[DIAG_TYPE_CODE, function(){show_debug_message("Hello, World!")}]
DIAG_TYPE_CHOICE
//Template
[DIAG_TYPE_CHOICE, <text:string>, <character_id:int>, <face_id:int>, <typespeed:float>, <option1_name:string>, <option1_dialogId:int>, <option2_name:string>, <option2_dialogId:int>],
//Example
[DIAG_TYPE_CHOICE, "Whatcha wanna do?", DIAG_CHAR_PLACEHOLDER, DIAG_FACE_ANNOYED, 0.5, "Fight", 8, "Flee", 9]
The game comes with 7 built in macros for characters. Macros are used as it is easier to remember than just the IDs.
#macro DIAG_CHAR_PLACEHOLDER -1
#macro DIAG_CHAR_UNKNOWN 0
#macro DIAG_CHAR_LOLGUY 1
#macro DIAG_CHAR_CHRIS 2
#macro DIAG_CHAR_LEXI 3
#macro DIAG_CHAR_BURNING 4
#macro DIAG_CHAR_INFERNOHOT 5
#macro DIAG_CHAR_INFO 99
Note: DIAG_CHAR_INFO
shoes a special text box with no name plate or portrait.
The game comes with 7 built in macros for expressions. Macros are used as it is easier to remember than just the IDs.
#macro DIAG_FACE_NEUTRAL 0
#macro DIAG_FACE_HAPPY 1
#macro DIAG_FACE_SAD 2
#macro DIAG_FACE_CHEEKY 3
#macro DIAG_FACE_ANNOYED 4
#macro DIAG_FACE_SCARED 5
#macro DIAG_FACE_ANGRY 6
#macro DIAG_FACE_WORRIED 7
This documentation is still a work in progress! Some parts of it can have better explanations or do not exist yet!
Create a new issue marked as [Wiki]
to report any inconsistencies or typos.