Wanderer
The worlds simplest game engine*
About This Project
Wanderer (GitHub) is a free open source game engine so simple that I wrote this pitch in it:
- Name: Decrepit shop
MandatoryActors:
- Name: Goblin
Dialogue:
Next: 9d07cdba-f7bf-47c3-9039-04df8102bd63
MandatoryItems:
- Name: Tattered Pamphlet
Dialogue:
Verb: Examine
Next: 58baccad-f794-497b-9674-ae7d4d1005cb- Identifier: 9d07cdba-f7bf-47c3-9039-04df8102bd63
Body:
- Text: Have you heard the good news?
Options:
- Text: No, and I don't want to either
Destination: 260d85d8-5924-44fc-9b33-c9114fca29a5
- Text: '*sigh* go on then'
Destination: b16df095-43b5-4664-9ba5-f11fd4f9b677
- Identifier: 260d85d8-5924-44fc-9b33-c9114fca29a5
Body:
- Text: But... but... this game engine is to die for!
Options:
- Text: No I'm not interested at all
- Text: '... fine, but this had better be good'
Destination: b16df095-43b5-4664-9ba5-f11fd4f9b677
- Identifier: b16df095-43b5-4664-9ba5-f11fd4f9b677
Body:
- Text: Yes! well... its a game engine you can program entirely in YAML! In fact the code your reading makes a valid world, good eh?... with autocomplete schemas and systems for everything and and and!!! its just so exciting!!
Options:
- Text: Yes!!!! I've alway wanted to program in the most whitespace aware and annoying markup language ever!
Effect:
- Apply:
Name: Interest
Intensity: 9999
- Text: No.... just No!
Attitude: -20Name: Interest
FatalThreshold: 40
FatalVerb: excitement
Injuries:
- Name: Interested
Severity: 10
- Name: Excited
Severity: 20
- Name: Mind Blown
Region: Head
Severity: 30Wanderer is designed to create a more open world 'choose your own adventure' style of game where the player is free to explore rooms and enter dialogue at will (or just start murdering people) rather than follow a scripted path through the story (like in a classic choose your own adventure game).
You can write your entire game in YAML, supplement it with Lua and/or introduce new custom systems with C#.
Available as a nuget package you can get started today by following the getting started tutorial on GitHub
Questions
Isn't YAML that nightmare markup where missing a space breaks the entire thing?
Yes! but don't worry, with the intellisense schemas (github) you will get squiggly red lines and pop-up documentation.

Do I need to know C# to use this engine?
No, the engine is written in C# and you need the dotnet sdk to compile games but you can write all the code for your game in nothing but YAML.
That dialogue YAML looks a bit complicated eh?
Yes, but we have that covered too. The Online Dialogue Editor (GitHub Pages) lets you generate the markup with simple indented text:
Understand?
Yes
Good to know
No
Well this is a valid dialogue tree you can input into the tool
I still don't understand
I'm sorry to hear that :(
Ok I get it nowWhat does the user interface look like?
The engine defines a super thin UI layer (GitHub) with a current implementation written for console (Windows, Linux and MacOS).
Are there any games written in it that I can play?
There is an example game Starship Wanderer (GitHub) as well as the ‘hello world’ Github Template
What stage of development is this at?
The basic engine features are down, you can do quite a lot (see Cookbook) but there is still a long way to go.
What kind of collaborators are you looking for?
Any! The goal is to create an engine that anyone can use to make fun and engaging dialogue driven games. From first time programmers to veterans I am looking for any feedback on what is easy/difficult and what the big missing bits are from the engine. I would be delighted to help anyone willing to give it a go and can even help with any basic issues like installing dotnet sdk, visual studio code etc if needed.
I would love any help with the core engine too, particularly new effects and conditions accessible from the YAML blueprints. There are also opportunities to build new/better user interface packages and support for other platforms (e.g. web / mobile).
*May not be the worlds simplest… I mean scratch is probably simpler for one…
Discussion