Skip to main content

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.

From Source

  1. Clone this repository
  2. cd subset-game
  3. pip install .
  4. subset

Sans-Installation

  1. Clone this repository
  2. cd subset-game/subset/
  3. 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
  • Dynamic terminal sizing (experimental)

Features I may add:

  • 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

subset-0.1.1.tar.gz (411.5 kB view details)

Uploaded Source

Built Distributions

subset-0.1.1-py3.8.egg (415.4 kB view details)

Uploaded Source

subset-0.1.1-py3-none-any.whl (410.5 kB view details)

Uploaded Python 3

File details

Details for the file subset-0.1.1.tar.gz.

File metadata

  • Download URL: subset-0.1.1.tar.gz
  • Upload date:
  • Size: 411.5 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

Hashes for subset-0.1.1.tar.gz
Algorithm Hash digest
SHA256 cf3ee2c8175dc6af6ebfd921e11cbb4791886aa71f4901f6fb0e96e833922f5c
MD5 601479f3a1de12852c3821f5ddb2bd06
BLAKE2b-256 b885450fa40efafc201607670537820f254fa220e638ab497db75822cdd10959

See more details on using hashes here.

File details

Details for the file subset-0.1.1-py3.8.egg.

File metadata

  • Download URL: subset-0.1.1-py3.8.egg
  • Upload date:
  • Size: 415.4 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

Hashes for subset-0.1.1-py3.8.egg
Algorithm Hash digest
SHA256 7200a4a7b964d7ad6fa6e67a5990512d153b3ba9fdba3f6852119d679194a8c2
MD5 da0974d3086c260ff9a60de723ed48f5
BLAKE2b-256 6caa3ce757bab1fb85cf5e171219ddfebee3bcb75c666e519673ec758bd86586

See more details on using hashes here.

File details

Details for the file subset-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: subset-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 410.5 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

Hashes for subset-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ecdfe9432a1b351a70679f9f87dc30eaa0174424a40a60f74ed366f28a2e9032
MD5 75add84972da619d848982c57d9e1eae
BLAKE2b-256 1ac090657cffd72c07480a8402b3674a79fcf352bbbf90d9e915016c78384347

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page