:fried_shrimp: shrimpy
A minimal engine for choose-your-own-adventure games.
Install
Installing shrimpy is easy. To install shrimpy on your computer, open your terminal and enter:
sudo pip3 install shrimpy
About
In shrimpy, a game is simply a folder that contains scene files. Scene files are written in JSON.
Create
To create your first shrimpy game, make a new folder somewhere on your computer. Name your new folder hello-shrimpy.
Next, create a new file called start.json inside hello-shrimpy. Copy the following code into start.json:
{
"id": "start",
"text": "You lose!",
"options": [
{
"text": "What? Already?",
"scene": "end"
}
]
}
Once you have saved start.json inside of the hello-shrimpy folder, create a second file in hello-shrimpy and name it end.json. Copy the following code into end.json:
{
"id": "end",
"text": "GAME OVER. Enter q to quit.",
"options": [
{
"text": "(play again)",
"scene": ""
}
]
}
At this point, you should have a folder called hello-shrimpy that contains two files: start.json and end.json.
That's it! Your new shrimpy game is finished and ready to play.
Play
To play the game you just created, navigate into the hello-shrimpy folder and run:
shrimpy play
Quit
To quit playing a shrimpy game, you can always enter q when prompted for an option number.
Update
Shrimpy keeps getting better. To update shrimpy to the latest version, enter:
sudo pip3 install shrimpy -U
Uninstall
Down with shrimpy! To uninstall shrimpy from your computer, enter:
sudo pip3 uninstall shrimpy
Scene Schema
For your reference, the following JSON schema is used to validate scene files:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"options": {
"type": "array",
"items": [
{
"type": "object",
"properties": {
"text": {
"type": "string"
},
"scene": {
"type": "string"
}
},
"required": [
"text",
"scene"
]
}
]
}
},
"required": [
"id",
"text",
"options"
]
}
To learn more about JSON Schema, click here.
Metadata
Release files for shrimpy 0.1.13
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| shrimpy-0.1.13.tar.gz | 3.7 kB | Without provenance | Details for shrimpy-0.1.13.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| shrimpy-0.1.13-py3-none-any.whl | Python 3 | none | any | Details for shrimpy-0.1.13-py3-none-any.whl |
Total release size: 7.6 kB
Release files / shrimpy-0.1.13.tar.gz
| Download URL | shrimpy-0.1.13.tar.gz |
|---|---|
| Size | 3.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3ffb578bc585d3bb0064ac1e30c6eaa7238f0dfc210595c29ed3c8126b3dbccb
|
|
BLAKE2b-256 checksum How to use checksums |
0bb842808f365c1ba86c73a7d4d615ce642bddf3b98f60ba17c9861bbc25c84b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.0.5 CPython/3.6.9 Linux/5.3.0-40-generic
|
Release files / shrimpy-0.1.13-py3-none-any.whl
| Download URL | shrimpy-0.1.13-py3-none-any.whl |
|---|---|
| Size | 3.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d375b10a1d43cef5e4bbd6b9047c08e8a88ab8290965868a1df30c363dc981c9
|
|
BLAKE2b-256 checksum How to use checksums |
6fbc654584b517aa1d2157d420aa64a4ebbf8d07dcb13b0c1f3d725640d647dc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.0.5 CPython/3.6.9 Linux/5.3.0-40-generic
|
Security for shrimpy 0.1.13
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.