A simple framework for creating text adventure games.
Project description
Pyventure is a simple library for creating a text adventure with Python
I created this library with and for my son for him practice coding, using pip, and importing libraries.
Installation
python -m pip install pyventure
Tutorial
Pyventure handles the game logic; all the user needs to do is
create Place objects. Each Place object represents a location
on the game map. It is the game space which includes things with
which the player can interact.
A Place object is created by providing four parameters:
- a string
namerequired - a string
descriptionrequired - a list of
Features - a list of
Nodes
Example of a playable game with two places to move between
from pyventure.place import Place, Feature, Node
from pyventure.items import Clue, Consumable, Tool
from pyventure.game_loops import start
from pyventure.message import msg
LIVING_ROOM = 'Living Room'
KITCHEN = 'Kitchen'
living_room = Place(
name=LIVING_ROOM,
description="There is a door on your [u]left[/u] and a pencil on the carpet.",
features=[
Feature(
name='pencil',
interact_msg='It is a no. 2 Pencil',
takeable=Tool(
name='pencil',
risk=0,
uses=10,
description='it could stand to be sharpened',
total=1
)
)
],
nodes = [
Node(
name='left',
place_name=KITCHEN,
travel_msg='You open the door and stop into the kitchen.',
accessible=True
)
]
)
kitchen = Place(
name=KITCHEN,
description="The floor is dirty. You're afraid of what is in the refridgerator.",
features=[],
nodes = [
Node(
name='living room',
place_name=LIVING_ROOM,
travel_msg='You are back in the living room.',
accessible=True
)
]
)
all_places = {
LIVING_ROOM: living_room,
KITCHEN: kitchen
}
if __name__ == '__main__':
msg.narrate('Welcome to a Simple Game')
start(new_game_msg='Name your character: ', all_places=all_places)
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 pyventure-0.1.1.tar.gz.
File metadata
- Download URL: pyventure-0.1.1.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.11 CPython/3.10.2 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a5fce2a4bb2eb78d7b149a2cc83c84e65f186fb9187b061f21cca008ae173b7d
|
|
| MD5 |
272263f273e4f14972e52ced9edadc43
|
|
| BLAKE2b-256 |
769b4eeb84d799b9d77af0e9b558b536c29686a2882b66532a4c664629f67958
|
File details
Details for the file pyventure-0.1.1-py3-none-any.whl.
File metadata
- Download URL: pyventure-0.1.1-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.11 CPython/3.10.2 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c68c0228e17fc769d2940d8fdac24c5fc021030aae5d9c6d917a2c6899c4b59b
|
|
| MD5 |
d657d9f942e6cf7fc95d7f6ae4d5811d
|
|
| BLAKE2b-256 |
87f7e78f068b7596d03838eb869cbcbe0596a0133ec5108bd0735ef872607b7e
|