Build An Adversary In A Few Easy Lessons

This tutorial will teach you to build a computer game AI using "adversary search". I will show you how to build a computer opponent for a simple "mini" chess game in a series of small steps. In doing this, we will see how these players can be built for other chess-like games. Along the way, you will learn some computer science, some software engineering, and some coding skills.


  1. . Rules of MiniChess
  2. . Build a MiniChess Board
  3. . Build a MiniChess Mover
  4. . Build a MiniChess Move Generator
  5. . Build a MiniChess Random Player
  6. . Build a MiniChess State Evaluator
  7. . Build a Depth-Limited Negamax Search
  8. . Add Alpha-Beta Pruning to the Search
  9. . Do Iterative Deepening Timed Search
    1. Build a MiniChess Player
    1. Connect your player to IMCS
    1. Some Improvements
    1. Validate Your Program