DÆDALE is a novel framework for generating interactive puzzle tutorials in PuzzleScript. It integrates two core components:
- PAPYRVS: An extension to PuzzleScript that enables designers to model tutorial goal chains using verb-enriched playtraces and rewrite rules.
- DÆDALE: A procedural level generator and integrated development environment (IDE) built on Rascal, used to generate and test tutorial levels based on the models defined in PAPYRVS.
This project aims to assist game designers in automating the creation of high-quality puzzle tutorials that support structured learning through trial and error.
-
DSL for Tutorial Modeling. PAPYRVS allows designers to:
- Extend PuzzleScript with structured sections:
Configuration,Patterns,Modules, andDrafts - Define reusable interaction patterns and rewrite rules
- Encode tutorial goal chains using verb-enriched playtraces
- Extend PuzzleScript with structured sections:
-
Procedural Generation Engine. DÆDALE generates solvable levels that:
- Embed learning goals through player actions
- Are guided by verb-enriched playtraces
- Project playtraces into tilemaps using string-based rewriting
-
Integrated IDE. The framework includes a GUI that allows designers to:
- Visual code editing for both PuzzleScript and PAPYRVS
- Built-in level generation and playtesting
- Real-time feedback via a console panel
DÆDALE has been built using the following programming languages:
Distributed under the MIT License. See LICENSE.txt for more information.
DÆDALE was conceived and developed within the scope of my Master's thesis pursued within the MSc program in Software Engineering at the University of Amsterdam. I want to thank my thesis supervisor, Riemer van Rozen, for his invaluable guidance and support throughout the entire duration of the project. Furthermore, I wish to acknowledge the contributions of previous collaborators to the project repository, namely Clement Julia, the creator of ScriptButler, and Dennis Vet, the creator of TutoMate.