Skip to content

KnightMare is a command-line chess engine written in C++. It runs entirely in the terminal, accepts moves in algebraic notation (e.g., e2e4), and responds with AI moves at adjustable difficulty levels. The project focuses on clean modular design using STL containers, enforcing chess rules, and gradually scaling its difficulty.

Notifications You must be signed in to change notification settings

Louis2324/KnightMare

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

48 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

KnightMare

KnightMare is a command-line C++ chess engine that lets you play against an AI opponent of adjustable difficulty.
All gameplay happens in the terminal using standard chess notation, making it lightweight and less crowded.


Features

  • Command-line chess engine (CLI)
  • Standard chess rules: moves, turn-taking, check/checkmate detection
  • Input moves using algebraic notation (e.g., e2e4, g1f3)
  • Adjustable AI difficulty levels:
    • Low โ€“ 400 ELO (random/legal moves)
    • Mid-Low โ€“ 600 ELO
    • High โ€“ 800 ELO
    • Extreme โ€“ 1000 ELO
  • Modular design for easy expansion (AI improvements, move history)

๐Ÿ›  Requirements and how to run:

  • A C++17-compatible compiler (e.g. g++)
  • Your platform's build tool:
    • Windows: Git Bash + build.bat
    • Linux/macOS: make

About

KnightMare is a command-line chess engine written in C++. It runs entirely in the terminal, accepts moves in algebraic notation (e.g., e2e4), and responds with AI moves at adjustable difficulty levels. The project focuses on clean modular design using STL containers, enforcing chess rules, and gradually scaling its difficulty.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published