Skip to content
 
 

Repository files navigation

CPSC 481 Group Project - KingMaker Checkers Engine

This project is a checkers engine that allows you to play against a bot using the minimax algorithm.

Created by Ryan Hellwege, Ahad Ahmad, Brian Wei

Directions

  1. Make sure you have Python installed.
  2. In the terminal, make sure you are pointing to the folder that contains these files.
  3. Enter python gui.py or python3 gui.py in the terminal. You will then see the GUI.
  4. To play, click on the red piece and click on the circled blank squares. The circled blank squares signify a legal move.
  5. On the right, you can see options to toggle:
    • Show Best Move (on/off)
    • Forced Capture (on/off)
    • Reset Game
    • Evaluation Function
      • Simple
      • Smart
      • Advanced
    • Depth Scheduler
      • Static
      • Iterative Deepening
    • AI Depth (1-20)
    • AI Time Limit (Iterative Deepening Only) [0-10]

What Each File Does

  • depth_4_100_games - Contains graph results for depth of 4 with 100 games played
  • depth_6 - Contains graph results for games with depth of 6
  • .gitignore - Git ignored files
  • .python-version - Python version 3.13
  • LICENSE - MIT license
  • README.md - This file; explains how to run our program and other basic info
  • board.py - Contains the board game logic and evaluation functions
  • gui.py - Code for the GUI visualization
  • main.py - main file
  • minimax.py - Code for minimax implementation with alpha-beta pruning
  • pyproject.toml - Project metadata
  • statistics.py - Contains the code for collecting simulated game data for using game win percentages as a heuristic.
  • test_board.py - File for testing purposes
  • uv.lock - Defines metadata and dependencies for consistent installations

Libraries Used

About

CPSC 481 Group Project - King Maker Checkers Engine

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages