A cli-based word game
Project description
Introduction
Subset is an in-CLI word guessing game about finding pangrams. A pangram is a word or phrase that uses every letter from a given (and in this case limited) alphabet (as in a set of letters, not as in A-Z).
Installation
Subset requires Python 3.5 onwards and uses the colorama
package. It runs on
Linux, should run on macOS, and theoretically runs on Windows.
Through Pip
Just run sudo pip install subset
. Then run subset
in a terminal. As of right
now, a terminal width of at least 80 characters is required. (I intend to fix
this, but it looks good at 80 and that is a standard size, so I won't adjust the
scaling until I have time to do it properly)
From Source
- Clone this repository
cd subset-game
pip install .
subset
Sans-Installation
- Clone this repository
cd subset-game/subset/
python app.py
The Rules
Each game, the player is given seven letters. One letter is highlighted. The player must find as many words as they can that use some or all of the letters. The restrictions are:
- The word must be four or more letters long
- The highlighted letter must be used in every word
- The words are never proper nouns
Not all the letters need to be used per word, and letters can be reused within a word. If the player inputs a word that uses every letter, it is called a 'pangram' and is worth extra points.
Do not expect to get a perfect score without cheating! The puzzles are randomly generated and I've seen some pangrams with over a thousand related words.
Features & Roadmap
So far I have implemented:
- The basic game as described above
- A savefile stored in
~/.subset
Features I may add:
- Dynamic terminal sizing
- Multiple savefiles at once
- Difficulty selection (this is tricky because its very difficult to qualitatively analyze the difficulty of a puzzle. Puzzles with fewer words are harder to score on, but easier to get a higher fraction of the total score, and so on)
- Dictionary selection (right now, if you find the dictionary file in your
Python modules folder, or if you are running straight from the cloned folder,
you can replace
dictionary.txt
with your own file and the game will run just fine, but be aware that it throws out capitalized words and words containing anything other than letters) - Colourschemes
The Dictionary
The game uses the SCOWL English words dictionary
sections 10 though 70. Licenses for the wordlists can be found in
DICTIONARY_LICENSE
.
License
This software is licensed under the MIT license, the text of which can be found
in the LICENCE
file.
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
File details
Details for the file subset-0.1.0.tar.gz
.
File metadata
- Download URL: subset-0.1.0.tar.gz
- Upload date:
- Size: 411.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab18776f48422ae34656449f7c8494e55674c23872fd8b0b19e5cf9ca8db0b7d |
|
MD5 | 4690d327ca45d9ae5f252c71a1550190 |
|
BLAKE2b-256 | 659bea69e91fe8f737f7b65950e68ca638aed5aff00659941856dac67368b7c1 |
File details
Details for the file subset-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: subset-0.1.0-py3-none-any.whl
- Upload date:
- Size: 410.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0bf9ff4acff20274d79449b8d121e5261325935ce4c7db5197a9e99dd880baea |
|
MD5 | 35f343d94178ce71e14b20e0bf064ffd |
|
BLAKE2b-256 | ec0d65aacd2998d029401f1f125805e005f012c2d309a6264eea315842f8cf9c |