Skip to content

A coding project designed for 10th graders to gradually develop a Reversi Game. Students implement two-player support, human vs. bot and bot vs. bot gameplays, and explore various bot strategies. Refer to the readme file for additional details.

Notifications You must be signed in to change notification settings

sekerniv/reversi-coding-task

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

reversi-coding-task

10th Grade Coding Task

Overview

This coding project is broken down into ~20 tasks and 4 parts, each building upon the previous part. The goal is to implement the Reversi game including different functionalities and bots. The final stage is a Bot Tournament where students' bots will compete each other.

The detailed instructions for the tasks are provided to the students in a Google Doc (in Hebrew).

Part 1: Initial Setup and Basic Functionality

In this part, the students will set up the initial project structure and implement the basic functionality of the game. Tasks include creating the constructor, implementing the 'print board' function, and writing utility functions.

Part 2: 2 Players Game

Part 2 expands the game's functionality to support a two-player game. This includes implementing the logic for placing a disk, updating the board, and writing the main function that allows 2 players to play against each other.

Part 3: Human vs Bot - The Bots Are Coming

Part 3 focuses on writing bots and enabling a game between a human and a bot. Functionalities to be implemented include listing all possible moves and their benefits, determining a winner, writing a greedy bot, and allowing a human to play against a bot.

Part 4: Bot vs Bot - Advanced Strategies and Preparing for the Bot Tournament

In Part 4, students will implement more advanced bot strategies, such as 1-move lookahead. They will also have the opportunity to work on their own bots and try out different strategies.

Bot Tournament

In the final stage of the project, a bot tournament will be organized. All students will have the opportunity to pit their bots against each other, play Reversi, and compete for the top spot. Runnning the main method in ReversiTournament.java, loads all the bots (classes ending in Bot) and have them compete against each other.

Note

  • The instructions provided to the students for each part contains detailed explanations and requirements for each task, allowing them to gradually build their Reversi game and bot.
  • We only share ReversiGame, MoveScore, ReversiBot, RenameThisClassMyReversiBot and ReversiMain with the students and there's a need to "clean" ReversiGame and ReversiMain by deleting the code in the methods, leaving only "empty implementations".

About

A coding project designed for 10th graders to gradually develop a Reversi Game. Students implement two-player support, human vs. bot and bot vs. bot gameplays, and explore various bot strategies. Refer to the readme file for additional details.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages