Posted July 15, 2022 by Liana
#narrat #visual novel #rpg #narrative
Narrat is a game engine for making interactive narrative RPGs packed with features.. Create your game by editing with a Simple scripting syntax. It supports Skills with skill check rolls, an Items inventory, and has a Quests System. The script system is very powerful and allows branching choices, functions, variables and conditions.
There have been many changes since the last devlog, with narrat 2.0.0 and 2.1.0
Narrat 2.0.0 was a big rework of the internal scripting system to turn the scripting into a more proper fully featured programming language. narrat scripts now support things like using expressions as arguments, variables, logic and math operators, and functions with return values.
See more about what 2.0.0 brought in the news page.
Note: The 2.0.0 update involved some small breaking changes to the syntax for writing conditions. There is a tool to help auto update scripts available though.
Narrat 2.1.0 brought a lot of new commands that were used in the making of the RPG demo.
neg 1
-> returns -1
abs -1
-> returns 1
min 1 2
-> returns 1
max 1 2
-> returns 2
clamp 1 2 3
-> returns 2 (syntax: clamp [min] [max] [value]
)
random 1 10
-> returns an integer random number between 1 and 10 (inclusive)
random_float 1 10
-> returns a float between 1 and 10
random_from_args "a thing" "another thing" 2 "things can be any value"
-> returns a random item from the list of arguments
concat "a" "b"
-> returns “ab” (Syntax: concat [string1] [string2] [string3]...
)
join ", " "a" "b"
-> returns “a, b” (Syntax: join [separator] [item1] [item2] [item3] ...
)
set_level agility 1
-> sets the level of the skill “agility” to 1
get_level agility
-> returns the level of the skill “agility”
get_xp agility
-> returns the xp of the skill “agility”
log $someVariable
-> logs the value of the variable $someVariable to the console (Syntax: log [value1] [value2] [value3]...
). Can be used to log anything for debugging
See more info in the news page for 2.1.0