Currently, it offers a single narration and no internationalization. I'm working on it!
Each narration has its own subfolder under /public/narrations. The scenes are divided into folders, which are kind of acts. The name of the folder under which a scene is, will be the title of all those scenes.
Each scene is composed of two files, a
.md file and a
.yaml file. The two of them need to have the same name. In the
.md file there is the prose, and in the
yaml, the metadata.
Both files are merged together and the resulting one copied together to the appropriate folder via the
npm run buildNarrations script. This script also adds the
id to the scenes based on the folder name.
Remember, after modifying a narration, run:
npm run buildNarrations
How to modify a narration
Just modify the scenes you want to by editing their
.yaml files. Don't bother modifying the autogenerated versions of them!.
You can also add new scenes to existing acts, remove acts or create new acts.
How to create a new narration
Create a new folder under
public/narrations and start adding scene. Beware, currently there is no narrations selection.
Currently there is no automatic testing for the narrations, so you won't get to know if your paths can be really traversed or not. However there are three utilities to test narrations:
npm run test: it checks that your scenes are valid.
npm run narrationsToGraph: it exports each narration to its own
.graphfile. This graph format is compatible with grapher.tech.
npm run narrationsReport: it outputs to the console a report of each narration, and find possible broken links between scenes.
These things have icons associated:
The icons are automatically selected based on:
- Enemies: their name. For example, an enemy called
Boarwill try to get its icon from
- Weapons: their type. For example, a
revolvergets its icon from
- Ammunitions: their type. For example,
bulletswill get two icons: