01 / An interactive story for walking
WalkQuest.
A walk becomes part of the plot: distance unlocks events, and choices change where the story goes.
Why I started it
WalkQuest began with a very ordinary problem: finding another reason to go outside or finish a few kilometres on a walking pad. Instead of another step counter, I want to make a story in which movement matters. To learn what happens around the next corner, you have to reach it.
The idea works outdoors or on a treadmill. A player sets a pace, say 3.5 km/h, and the app estimates distance and reveals the next scene at a checkpoint. At some points the player chooses an action that changes later scenes. The story follows the person’s pace rather than asking the person to follow the narrator’s.
Where the game ends and generation begins
The game state, distance, available branches and consequences belong to the program. A local language model can help narrate events, but it should not quietly rewrite what has already happened. That gives the story a memory and makes a player’s choices meaningful.
The first technical experiment is a local web app: Python and FastAPI manage state, a simple page presents scenes and choices, and LM Studio provides a local model interface. For now, distance is calculated from the selected pace and elapsed time. It simulates walking; it does not measure movement through a watch or phone.
- Scenes unlock by distance, not reading time
- Choices affect later scenes
- Game state stays deterministic
- The first experiment runs locally
Current state and next experiment
A separate five-kilometre story demo has checkpoints and branches. It shows what a walking story might feel like, but it is not connected to a movement sensor. The local FastAPI and model integration is still being explored.
What comes next
Test a short walk with a real person: is the next reveal enough reason to keep moving? Only then decide whether a watch, treadmill or phone integration is worth building. Those integrations are questions, not finished features.
ANOTHER PROJECT
LookUP↗← All projects