Checkers implementation in python based on the international draughts
Project description
🏁 Checkers Implementation in Python
Built within the pygame framework as a university project
Table of Contents
- Introduction
- Features
- Installation
- Usage
- Contact Info
- Dependancies
Introduction
This project is comprised of 2 modules within the mypackage directory each responsible for handling thier respective features for the game, This project took around 20 - 25 hours to complete including research and experimentation with the pygame framework. This is my first time creating a project of this scale using pygame.
Features
- Graphical User Interface
- Multiplayer Mode: Play 1v1 with a second player
- Save and Load Games: Your previous game is auto-saved upon quitting
- Checker Rule Implementation: Game rules are based on international checkers guidelines
Installation
Installation from GitHub
To install the application:
Clone repository
git clone https://github.com/ScreedVA/checkers-imp-adv-code-proj.git
Move into repository directory
cd checkers-imp-adv-code-proj
Create virtual environment
python -m venv .venv
Activate virtual environment
.venv\Scripts\activate
Install pip (if nessasary)
python -m pip install --upgrade pip
Install package locally
pip install -e .
Installation from Pypi
Create project directory
mkdir checkers-imp-adv-code-proj-techscreed
Enter directory
cd checkers-imp-adv-coding-proj-techscreed
Create virtual environment
python -m venv .venv
Activate virtual environment
.venv\Scripts\activate
Install package from Pypi
pip install checkers-imp-adv-coding-proj
Usage
Example 1
Run application
run_checkers_round
Output: You have no previous games, Starting round...
Example 2
Run application
run_checkers_round
Output: Would you like to load(L) your previous game or start a new game(N)
N
Output: Starting new round...
Example 3
Run application
run_checkers_round
Output: Would you like to load(L) your previous game or start a new game(N)
L
Output: Loading previous round...
Contact Info
Dependancies
- Pygame Framework handles graphical user interface functionality
- Pillow Library is used for image manupluation and cropping
- Json libary handles python dictionary to json serialization
Sources
-
The render_game_env() method which utilizes modular congruences to asses rows and columns to draw evenly positioned squares is inspired from an article by Sundar Sing - Singh, S. (2017, December 10). D3: Modulo operation to create a grid.
-
The game images used throughout the project are by "andi" on OpenGameart.ORG
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 checkers-imp-adv-coding-proj-0.1.5.tar.gz
.
File metadata
- Download URL: checkers-imp-adv-coding-proj-0.1.5.tar.gz
- Upload date:
- Size: 36.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e6ad9bb19608ee8587ca4eb8bace641dd672a860f3eb1a0201b9e16b7454a67 |
|
MD5 | b56640613d59e550bcb9f320408b52e1 |
|
BLAKE2b-256 | 444927b5cb7b00eaa303af67a9753336d0961d88758f4b860a1673416a110289 |
File details
Details for the file checkers_imp_adv_coding_proj-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: checkers_imp_adv_coding_proj-0.1.5-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81ee3d8dfefc05c345c34253b0eec850e1b0ffdcbfce1042e9778e95d720aed7 |
|
MD5 | 5ace2f4733bfbe9a8a1b7a2a25ace53c |
|
BLAKE2b-256 | e471724ff69781a2c6d828603acff84747000845fe38c693fa6517cbd175de27 |