Skip to content

A collection of games and teaching resources from my reign as Head TA for UoM's COMP30024 Artificial Intelligence

License

Notifications You must be signed in to change notification settings

matomatical/AI-games

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Let the games begin!

From 2017 to 2021, I worked as a head TA for COMP30024 Artificial Intellience, an introductory AI class at the University of Melbourne.

Each year, I developed an original board game for the students to play. Well, it's for their computers to play, but, if I do say so myself, some of the games end up being fun for humans too!

Anyway, over a few weeks, the students work in pairs on the challenging and open-ended task of creating a Python program capable of playing the game as adeptly as possible. We typically run an official tournament at the end of the semester to find out which teams have achieved this goal most convincingly. Alongside the project, we also provide an online battleground server, enabling the students to compete during the semester without sharing code.

This repository documents these games, and the projects, and includes some of the associated code.

Status:

The games from my tenure as head TA, back to 2017, are more-or-less documented, with only a few missing pieces.

See TODO for more info.

Contents

RoPaSci 360

RoPaSci 360 is a simultaneous-play board game of chance and anticipation in the spirit of the storied hand-game known by many names throughout the world, including Roshambo, Jan-Ken, and, of course, Rock-Paper-Scissors. Throw down a team of tokens with which to crush, cover, and cut through your opponent. Attack them when and where they least expect it, but be quick to slip away or you won't escape their retaliation! Have you anticipated your opponent's next move, or are you thinking exactly what they want you to think? Rock, paper, scissors, throw!

In 2021, we played RoPaSci 360, a simultaneous-play board game inspired by the hand-game classic.

Contents:

This year, over 33,200 games were played on the battleground server, comprising about 18,900 games against the greedy benchmark, 8,800 games against the random benchmark, and 5,500 games between students. Wow!

Expendibots

Expendibots is a fast paced action game where assembling and disassembling powerful stacks of bots will be the key to your survival. Sneak behind enemy lines and cause chain reactions to do huge damage, but watch out for friendly fire! Can you successfully fend off your opponent's attacks and emerge victorious?

In 2020, as I completed an exchange semester when I would normally be teaching COMP30024. Over summer, I teamed up with my replacement head TA Adam Kues to design and implement Expendibots, one of our most dynamic, challenging, and exciting AI games since my first semester.

Contents:

Chexers

Chexers is a three-player hexagonal turn-based race game. Test the loyalty of your band of two-faced checkerpieces as you charge them through a twisting and treacherous battleground. Will all your pieces stay true to your cause? Can you earn yourself some new followers in the chaos? To win this tumultuous chase, you must double-cross and triple-cross your way across the finish line before your opponents---three, two, one... go!

In 2019, we played Chexers, a three-player hexagonal board game where players can convert their opponent's pieces as they race across the board. The game turned out to be pretty playable, with the three-player dynamic making it especially fun.

Contents:

Watch Your Back!

Watch Your Back! is a fast-paced combat board game. You control a team of ruthless rogues engaged in a fight to the death against your enemies. Within the confines of a checkerboard there is no rulebook and no referee, and the easiest way to a cut down an enemy is to stab them in the back. Control your lawless warriors to jump and slash their way around the board surrounding and silencing your enemies until none remain. And, of course, watch your back!

In 2018, we played Watch Your Back!, a two-player board game based loosely on the ancient Ludus latruncolorum.

Slider

In 2017, we played Slider, a two-player race and blocking game. I did not design this game (it was based on a much earlier 2003 project), but it served as an inspiration for Chexers of 2019.

Hexifence

In 2016, I was not the TA for COMP30024, in fact I was one of its students. The game this year was Hexifence, a hexagonal variant of the pen-and-paper game Dots and Boxes, and the project was completed in Java.

I worked with my project partner Julian Tran to develop a program using basic adversarial search techniques, some specialised game tactics ('double boxing') and a high-level represetation of the board (chunking the board into tactically-relevant 'chains' rather than searching over individual edges). With our high-level representation, we were able to obtain excellent search depth and to out-perform our cohort.

Contents:

  • Our project work is, somewhat cringingly, publicly available in another repository.
  • That repository also includes the rules of the game and the project specification.
  • TODO: Add animation of our program

TODO:

  • For some more files, check AI 2017 and 2018 files in archives.
    • matomatical/ai-games-unsorted:
      • some animations of WUB!
      • 2017 and 2018 tournament finalists
    • 2017/2018 lectures: tournament recordings
  • Compile a 'hall of fame' with information about the winners of each year's tournament.
  • Search for public github repositories of students' work, and add them to a list here (with permission).

About

A collection of games and teaching resources from my reign as Head TA for UoM's COMP30024 Artificial Intelligence

Resources

License

Stars

Watchers

Forks