This project adheres to Semantic Versioning
Check LANGUAGE.md for latest documentation.
- Return End of Dialogue object instead of undefined.
{ type: 'end' }
. - Variation
shuffle
will do real randomization with no guarantee all items will be visited.
- Assignment initializer operator
?=
. It only assigns if variable was not set before. - External variables using
@
prefix. They are not included in the save object, so they are not persisted between runs. They are useful when dealing with data that belongs to your game and shouldn't be persisted with the dialogue.
- Return End of Dialogue object instead of undefined.
{ type: 'end' }
. - Variation
shuffle
will do real randomization with no guarantee all items will be visited.
Id Suffixes: dialogue line $id&some_var&some_var2
.
Suffixes can help with dialogue localization and alternatives. Example:
dictionary:
LINE_1;Hello, my friend!
LINE_1&F;Hello, sister!
LINE_1&M;Hello, brother!
Dialogue:
Hello, my friend! $LINE_1&player_pronoun
In this case, if the player_pronoun
variable is set as M, Hello, brother!
is returned.
When F, Hello, sister!
is returned. And when not set, the default LINE_1 Hello, my friend!
is returned.
- Options won´t print first line as before.
- Brackets (
[]
) used for display-only options are not supported anymore. - To reproduce previous behaviour, options should contain the new display-option symbol (
=
)
Here is a sample on how to fix your dialogues for this new version:
Old way:
+ This will be displayed
* This will be displayed
> This will be displayed
+ [This won't be displayed]
some text...
* [This won't be displayed]
some text...
> [This won't be displayed]
some text...
New way:
+= This will be displayed
*= This will be displayed
>= This will be displayed
+ This won't be displayed
some text...
* This won't be displayed
some text...
> This won't be displayed
some text...
- Changed options default behaviour. (check breaking changes)
Simple quotes ('
) can be used for escaping characters. Any sentence starting with it
will be escaped.
This is a normal non-escaped line $100.
"This line will be printed as is: ###"
'This line is supported now and it will be printed as is: ###' -- this is the new change
- Simple quotes (
'
) can be used for escaping characters. - Simple quotes (
'
) can be used in String variables in logic blocks.- i.e
{ set text = 'this is valid' }
- i.e
Initial release. Check ./LANGUAGE.md
for full documentation.