You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jun 7, 2024. It is now read-only.
Per #35, the new game engine will have events defined by a static TOML file or files. The old game engine (LoopService.js) was not static, allowing me to pass arbitrary functions for each event to do whatever I want; this will no longer be possible. Each possible side effect must be documented and implemented specifically. So, what needs to be possible?
Each interaction must have introductory dialogue and a set of options.
Choosing an option should initiate another interaction.
It should be possible to skip the options and proceed directly to a default interaction under some condition.
Options should be able to be toggled on or off given some condition.
Individual lines of text, and even groups of several lines, should be able to be toggled on or off given some condition.
Any "some condition" should be able to access the game state to check for pretty much anything. (what is 'anything'? is it feasible to codify each possibility?)
The event files must be read-writable so that I can make a UI to easily add new ones.
It should be possible to generate a tree mapping all interactions together.
It should be possible to find orphaned/wanted/tail interactions.
It should be possible for options to appear during the text of an interaction, or otherwise produce an indistinguishable effect, that allows an option to be selected that will cancel and interrupt the current interaction and begin a new one.
It should be possible for option selection to be interrupted, e.g. by a character growing impatient if time is running.
The text was updated successfully, but these errors were encountered:
Per #35, the new game engine will have events defined by a static TOML file or files. The old game engine (LoopService.js) was not static, allowing me to pass arbitrary functions for each event to do whatever I want; this will no longer be possible. Each possible side effect must be documented and implemented specifically. So, what needs to be possible?
The text was updated successfully, but these errors were encountered: