Checkers Project Built Using Python

Overview

OH MY CHECKERS!!!

Read this article https://www.thesprucecrafts.com/play-checkers-using-standard-rules-409287 to know more about the game of Checkers in general.

"Oh my checkers" is a simplified version of checkers made to make everyone enjoy the fun of the game without having to memorize all the boring rules.

Checkers is played on an 8×8 board with twelve pieces for each player, and that is also the settings for OH MY CHECKERS!!!

What the program does

This program simulates a checkers game. The program gets inputs from the players and updates the game board to reflect the movements. Between that process, the inputs are validated. If an input is invalid, that player would have to play again until a valid is made. This program also checks for a winner after each play. When a game has ended, the programs prints the winner.

How To Play OH MY CHECKERS!!!

1. Run the file main.py.

2. The first player decides on which piece they want and must keep on with that particular piece till the end of the game.

i.e if a player picks the "x" piece, that player must continue to pick "x" pieces only. Same rule applies if the "o" piece is picked. Whatever piece player 1 decides to choose,player 2 is dealt with the other piece.

3. At this point, the python turtle graphic board loads and displays the actual game board. 

NOTE: This will take time, and so players will be unable to select pieces until the board has loaded. 

NOTE: Please reduce brower zoom size to see the full graphics board.
 
4. Each piece on the board has both a row index and a column index. The rows run from 0-7 and so does the columns, this implies that the first piece on the board is 0,0 an the last piece is 7,7.

5. As a player, your role is to input the position of a piece (2,1 as example), and then input a valid position on the board (3,2 as example) to move to.

6. Players move their pieces diagonally from one square to another square. When a player jumps over their opponent's (the other player's) piece diagonally, you take that piece from the board.

7. Always move your checker diagonally forward, toward your opponent's side of the gameboard).

8. After each valid play, the python turtle graphic board loads and displays the actual game board. 

NOTE: This will take time, and so players will be unable to select pieces until the board has loaded.

NOTE: Please reduce brower zoom size to see the full graphics board.

9. To play again, please run main.py  

Rules

1. All inputs should be in this form: row,column; X,Y respectively. With row being the horizontal index and column being the vertical index.

2. Player 1 makes the first move and should control the pieces they move first. 

3. Player 2 makes the second move and should control the other playing pieces.

4. Only "x" and "o" peices can be moved.

5. For your first move, you can only select from the pieces in front of the board.

6. The object of the game is to capture all your opponents. Checkers or trap your opponent. So no move can be made.

How my program checks for the winner in my OH MY CHECKERS!!!

There are various metrics that goes into getting a winner.

The fist player to get to the other side WINS or If a player has got no pieces left on the board, the opposing player WINS if they've still got pieces.

Current Version of OH MY CHECKERS!!! requires two players to take control of the game.

P.S. Please play with a friend to maximize fun.

LET THE GAME BEGIN AND MAY THE ODDS BE IN YOUR FAVOUR!!!

Owner
Meekness Anyaeche
Meekness Anyaeche
Calculatrix is a project where I'll create plenty of calculators in a lot of differents languages

Calculatrix What is Calculatrix ? Calculatrix is a project where I'll create plenty of calculators in a lot of differents languages. I know this sound

1 Jun 14, 2022
Synthetik Python Mod - A save editor tool for the game Synthetik written in python

Synthetik_Python_Mod A save editor tool for the game Synthetik written in python

2 Sep 10, 2022
HogwartsRegister - A Hogwarts Register With Python

A Hogwarts Register Installation download code git clone https://github.com/haor

0 Feb 12, 2022
A deployer and package manager for OceanBase open-source software.

OceanBase Deploy OceanBase Deploy (简称 OBD)是 OceanBase 开源软件的安装部署工具。OBD 同时也是包管理器,可以用来管理 OceanBase 所有的开源软件。本文介绍如何安装 OBD、使用 OBD 和 OBD 的命令。 安装 OBD 您可以使用以下方

OceanBase 59 Dec 27, 2022
A simple single-color identicon generator

Identicons What are identicons? Setup: git clone https://github.com/vjdad4m/identicons.git cd identicons pip3 install -r requirements.txt chmod +x

Adam Vajda 1 Oct 31, 2021
Pre-1.0 door/chest sound injector for Minecraft

doorjector Pre-1.0 door/chest sound injector for Minecraft. While the game is running, doorjector hotswaps the new sounds for the old right before the

Sam 1 Nov 20, 2021
Animation retargeting tool for Autodesk Maya. Retargets mocap to a custom rig with a few clicks.

Animation Retargeting Tool for Maya A tool for transferring animation data between rigs or transfer raw mocap from a skeleton to a custom rig. (The sc

Joaen 62 Dec 19, 2022
A beautiful and useful prompt for your shell

A Powerline style prompt for your shell A beautiful and useful prompt generator for Bash, ZSH, Fish, and tcsh: Shows some important details about the

Buck Ryan 6k Jan 08, 2023
Project issue to website data transformation toolkit

braintransform Project issue to website data transformation toolkit. Introduction The purpose of these scripts is to be able to dynamically generate t

Brainhack 1 Nov 19, 2021
ToDo - A simple bot to keep track of things you need to do

ToDo A simple bot to keep track of things you need to do. Installation You will

3 Sep 18, 2022
ICEtool - ICEtool plugin for QGIS

ICEtool ICEtool is an all in one QGIS plugin to easily compute ground temperatur

Arthur Evrard 13 Dec 16, 2022
Hacktoberfest 2021 contribution repository✨

🎃 HacktoberFest-2021 🎃 Repository for Hacktoberfest Note: Although, We are actively focusing on Machine Learning, Data Science and Tricky Python pro

Manjunatha Sai Uppu 42 Dec 11, 2022
Proyectos de ejercicios básicos y avanzados hecho en python

Proyectos Básicos y Avanzados hecho en python Instalación: Tener instalado python 3.x o superior. Tener pip instalado. Tener virtualenv o venv instala

Karlo Xavier Chok 1 Dec 27, 2021
Python AVL Protocols Server for Codec 8 and Codec 8 Extended Protocols

pycodecs Package provides python AVL Protocols Server for Codec 8 and Codec 8 Extended Protocols This package will parse the AVL Data and log it in hu

Vardharajulu K N 2 Jun 21, 2022
Store Simulation

Almacenes Para clonar el Repositorio: Vaya a la terminal de Linux o Mac, o a la cmd en Windows y ejecute:

Johan Posada 1 Nov 12, 2021
A simple python script where the user inputs the current ingredients they have in their kitchen into ingredients.txt

A simple python script where the user inputs the current ingredients they have in their kitchen into ingredients.txt and then runs the main.py script, and it will output what recipes can be created b

Jordan Leich 3 Nov 02, 2022
An electron application to check battery of bluetooth devices connected to linux devices.

bluetooth-battery-electron An electron application to check battery of bluetooth devices connected to linux devices. This project provides an electron

Vasu Sharma 15 Dec 03, 2022
Headless - Wrapper around Ghidra's analyzeHeadless script

Wrapper around Ghidra's analyzeHeadless script, could be helpful to some? Don't tell me anything is wrong with it, it works on my machine.

8 Oct 29, 2022
A python script to turn tabs into spaces the right way.

detab A python script to turn tabs into spaces the right way. detab turns all tabs into spaces, not just leading tabs. Not all tabs have the same leng

1 Jan 26, 2022
Projects and assets from Wireframe #56

Wireframe56 Projects and assets from Wireframe #56 Make a Boulder Dash level editor in Python, pages 50-57, by Mark Vanstone. Code an homage to Bubble

Wireframe magazine 10 Sep 07, 2022