Skip to main content
Version: 0.6.0
Difficulty: Hard

Questing

Any interactive storytelling game is going to have quests. Quests are designed to guide players through the story and provide a sense of progression.

In Typewriter, quests are purely a visual addition. While not required to create interactive stories, they can effectively guide players through the narrative.

Setting up the Story

To add quests to your story, we first need a story to work with. For this guide, we'll create the following quest:

  1. The player encounters a chasm where the wind is too strong to walk across the bridge.
  2. The player needs to find a way to cross the chasm.
  3. The player discovers magnet boots nearby.
  4. When wearing the magnet boots, the player can walk across the chasm.

Here's the setup for the quest:

Interactive Graph

This is an interactive graph of all the entries in the selected pages.
You can view different pages by clicking on the tabs. Each page contains a view of the entries in that page.
Click on an entry to view its details.

Here is a demo of the setup described above:

Creating the Quest

As you can see in the setup, Typewriter doesn't require questing components to create interactive stories. Unlike most quest plugins where quests are the main feature, in Typewriter, they serve as a visual addition – a way to guide players through the story and provide a sense of progression.

To create a quest, we first need to create a manifest page. This page will contain all the entries that make up the quest.

How Quests Work

In Typewriter, two types of entries are used to create quests: Quest Entry and Objective Entry.

The Quest Entry defines the name of the quest. The Objective Entry defines the objectives of the quest.

Quest Entry

The Quest Entry is used to define the quest. A quest can be in one of three states:

  • Inactive: The quest is neither active nor completed.
  • Active: The quest is active and not yet completed by the player.
  • Completed: The quest has been completed.

There are three important fields for the Quest Entry:

  • Display Name: The name of the quest.
  • Active Criteria: The criteria that must be met for the quest to become active.
  • Completed Criteria: The criteria that must be met for the quest to be considered completed.

The state of the quest is determined as follows:

  1. If all the Completed Criteria are met: The quest is completed.
  2. If all the Active Criteria are met: The quest is active.
  3. Otherwise, the quest is inactive.

For our quest, we'll use a Permanent Fact to hold the state of the quest for the player. We create the following Quest Entry:

Great Chasm
Quest

A quest definition

Children
(1 item)
DisplayName
Great Chasm
ActiveCriteria
(1 item)
CompletedCriteria
(1 item)

Objective Entry

The Objective Entry defines a task that needs to be completed as part of the quest. There are various types of objectives, allowing Typewriter to display them in different ways.

While Quests have three different states, Objectives only have two:

  • Hidden: The objective is not visible to the player.
  • Visible: The objective is visible to the player.

These states are influenced by both the Criteria field and their Audience parent entries.

For now, we'll only use the Criteria field to determine if the objective is visible or not.

Let's set up the objective for our quest like this:

Find A Way Across
Objective

An objective definition

Quest
Great ChasmQuest
Children
(0 items)
Criteria
(1 item)
Display
Find a way across the chasm
Value
0

Finishing the Quest

For the final step, we need to change the Permanent Fact entry to 1 when the player first falls down the chasm and to 2 when they reach the other side.

Interactive Graph

This is an interactive graph of all the entries in the selected pages.
You can view different pages by clicking on the tabs. Each page contains a view of the entries in that page.
Click on an entry to view its details.

Here's a demo of the finished quest:

Quest Tracking

We've seen that Quests can be in one of 3 states. Additionally, we can Track one quest at a time. Tracking a quest is used for displaying the quest progress to the player.

To learn more about quest display, check out the Displaying Quests Guide.