A text-based adventure game engine with natural language processing
Project description
Quill
A modern text-based adventure engine that transforms natural writing into interactive experiences.
Features
- Simple YAML-based game definition
- Modern terminal UI with text effects and colors
- Natural language command processing
- Character dialogue system
- Inventory management
- Game state tracking with flags
- Hidden objects and secret passages
- Events and conditional triggers
Installation
pip install quill-sdk
For neural language processing features (optional):
pip install quill-sdk[neural]
Quick Start
Create a new game:
quill create "My Adventure"
Run your game:
quill run my_adventure
Game Structure
A quill game consists of YAML files organized in the following structure:
game.yaml # Main game configuration
scenes/ # Scene definitions
starting_room.yaml
...
items/ # Item definitions
key.yaml
...
characters/ # Character definitions
npc.yaml
...
achievements/ # Achievement definitions
explorer.yaml
...
See the documentation for detailed information on creating your own adventures.
Example
Here's a simple example of a scene definition:
name: "Forest Clearing"
description: "A peaceful clearing in the forest. Sunlight filters through the canopy, illuminating a stone pedestal in the center."
exits:
north:
target: "deep_forest"
description: "A narrow path leads deeper into the forest."
south:
target: "forest_entrance"
description: "The path back to the forest entrance."
objects:
pedestal:
description: "A weathered stone pedestal with a small indentation on top, perfectly sized for a gem."
flowers:
description: "Colorful wildflowers dot the clearing."
events:
place_gem:
trigger: "place gem on pedestal"
condition:
has_flags: ["has_gem"]
message: "You place the gem on the pedestal. It begins to glow, and a hidden door opens in a nearby tree trunk!"
flags_set: ["door_revealed"]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file quill_sdk-0.2.1.tar.gz.
File metadata
- Download URL: quill_sdk-0.2.1.tar.gz
- Upload date:
- Size: 23.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5cc6ecfc5aea3a465c33cb0e7aa5635332d2b9145b95c3a9847dc2fc07d7f283
|
|
| MD5 |
3bdb305b25315013569a677e96b1157c
|
|
| BLAKE2b-256 |
b805be465bb547821362ad55f7b573a3c6722cbf04ff00424408fd4ffd4fa8e2
|
File details
Details for the file quill_sdk-0.2.1-py3-none-any.whl.
File metadata
- Download URL: quill_sdk-0.2.1-py3-none-any.whl
- Upload date:
- Size: 29.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fad3092b5aafe91819891f082cebf17b7dc9dcf243c348b2c0dc1d50f6df47fe
|
|
| MD5 |
680365f25ee5568677072b45266799ac
|
|
| BLAKE2b-256 |
4b843932639a3e67ceff5e584660b08d77f65f9964a23f647c517b3ba4600a99
|