In the previous lesson we started implementing the Main Menu. In order to see what you were working on I provided a temporary “DemoFlow” method that connected together the various abilities of the menu into a sequence of tasks. In this lesson we will elaborate on the idea of a “Flow” as a reusable pattern – one which is an alternative to the StateMachine.
Tutorial
D20 RPG – Main Menu
Controlling a sequence of events over time can be tricky. This is particularly the case when there is a lot of state that can be changed from more than one path through your code. In this lesson we will see how task based asynchronous programming can approach this problem while creating a Main Menu scene.
D20 RPG – Ability Scores
Ability scores are an important game mechanic that relate the skills and abilities of creatures and characters to a simple number.
D20 RPG – Component & System (ECS)
An Entity is nothing without its Components. It does nothing without its Systems.
D20 RPG – Entity (ECS)
Have you been wondering how we are going to persist our object graph? In this lesson we take the next step in laying that foundation by creating a unique identifier for everything.
D20 RPG – Collections
There are many types of Collections beyond List. Let’s discuss them and show how to make them work with our Data, including serialization.
D20 RPG – Data
In this lesson we will be creating a system that will let us easily persist the entire object graph of our game.
D20 RPG – Dice Roll
What better place to begin than with a roll of the dice?
D20 RPG – Project Intro
I stumbled across a very cool website a while back: D20 SRD (System Reference Document). What is that you might ask? You’ve probably heard of Dungeons and Dragons and/or Pathfinder – they are dice based role playing games. In the SRD you will find a bunch of the game mechanics released to the public in an open game license. That includes races, classes, equipment, monsters, magic, abilities and more.

Breakout: Game
We’ve come a long ways, but there is still one major thing we’re missing. We don’t have a real game because there is no way to win or lose! In this lesson, we will learn about Unity events, and how to compose them together so that we can have victory and loss conditions.