https://github.com/ppkfs/yaifl
An interactive fiction (text adventure) library in Haskell, inspired by Inform7.
https://github.com/ppkfs/yaifl
game-development game-engine gamedev interactive-fiction interactive-fiction-engine text-adventure text-based-game-engine
Last synced: 3 months ago
JSON representation
An interactive fiction (text adventure) library in Haskell, inspired by Inform7.
- Host: GitHub
- URL: https://github.com/ppkfs/yaifl
- Owner: PPKFS
- Created: 2020-07-17T18:21:44.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2025-01-10T21:31:20.000Z (4 months ago)
- Last Synced: 2025-01-10T22:36:07.037Z (4 months ago)
- Topics: game-development, game-engine, gamedev, interactive-fiction, interactive-fiction-engine, text-adventure, text-based-game-engine
- Language: Haskell
- Homepage: https://ppkfs.github.io/yaifl/
- Size: 25.8 MB
- Stars: 17
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# yaifl
[](https://github.com/PPKFS/yaifl/actions)
[](LICENSE)Yaifl (**Y**et **A**nother **I**nteractive **F**iction **L**ibrary) is a Haskell DSL for writing parser-based text adventures (interactive fiction). It is heavily based off the excellent [Inform 7](https://ganelson.github.io/inform-website/), a language for writing interactive fiction in literate English.
This project is an adage to Inform 7, but without the layer of requiring the code to be writeable in literate English sentences. It also aims to be more generalised as a base for procedural generation of large worlds, rather than of hand-crafted small worlds - for instance, the Inform 7 logic for collecting items to list in a "you can also see" paragraph iterates through every item in the game!
Examples (and tests) will be taken from the Inform 7 examples.