In Spring 2019 ECS 36B Object Oriented Programming, one of the final projects was to build a C++ game of BattleShip. We implemented 3 AI opponents to fight against. Although they were called “AI”, they weren’t actually Artificial Intelligence, just algorithms. If I remember correctly, we made:

  • an AI that fires randomly (stupid)
  • a Hunt-and-Destroy AI (shoots randomly until it hits a ship, then it seeks to destroy the ship entirely, worthy rival)
  • and a Cheating AI. (this sucker always won!)