Skip to main content

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

LinkedIn Profile

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


Download files

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

Source Distribution

checkers-imp-adv-coding-proj-0.1.5.tar.gz (36.2 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file checkers-imp-adv-coding-proj-0.1.5.tar.gz.

File metadata

File hashes

Hashes for checkers-imp-adv-coding-proj-0.1.5.tar.gz
Algorithm Hash digest
SHA256 2e6ad9bb19608ee8587ca4eb8bace641dd672a860f3eb1a0201b9e16b7454a67
MD5 b56640613d59e550bcb9f320408b52e1
BLAKE2b-256 444927b5cb7b00eaa303af67a9753336d0961d88758f4b860a1673416a110289

See more details on using hashes here.

File details

Details for the file checkers_imp_adv_coding_proj-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for checkers_imp_adv_coding_proj-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 81ee3d8dfefc05c345c34253b0eec850e1b0ffdcbfce1042e9778e95d720aed7
MD5 5ace2f4733bfbe9a8a1b7a2a25ace53c
BLAKE2b-256 e471724ff69781a2c6d828603acff84747000845fe38c693fa6517cbd175de27

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