Skip to content

Code base for adaptive difficulty AI demo built with Unity. Created in partial fulfillment of ECS289G Fall 2020 course requirements.

Notifications You must be signed in to change notification settings

kdavidmitchell/rubber-band-game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎮 The Rubber Band Game 🎮

Code base for adaptive difficulty AI demo built with Unity. Created in partial fulfillment of ECS289G Fall 2020 course requirements.

Contributors

  1. Aakash Prabhu
  2. Aaron Ong
  3. Arunpreet Sandhu
  4. Kyle Mitchell

About

Main Menu render

This project is a basic game demo that highlights a genetic algorithm being used to guide generation of content based on the skill of the player. This game takes the shape of a 2D arena game where the difficulty of each enemy is dynamically adjusted through procedural content generation according to the state of the player character or token, which we use as a proxy for player skill.

In regards to expressive intelligence, if we accept the premise that intelligent game design incorporates elements of fun to keep the player engaged and in a state of flow, then it follows that dynamic difficulty adjustment is a form of expressive intelligence. Much like an educator that helps struggling or bored students out of a duty of care, we feel that game designers and developers should also introduce systems that “care” about meeting the player where they are before dropping them into situations that outpace or fail to keep pace with their skill.

At the heart of this project is the goal to reduce the amount of frustration or boredom that arises when a player finds a game too difficult or too easy, or more simply, when it stops being fun.

Motivation

We were fascinated by the concept of Dynamic Game Difficulty Balancing and wanted to try it out implementing our own novel version of it for a simple game. The game difficulty balancing is decided by our natively implemented genetic algorithm

Installation

You can get a copy of this project up and running in the following ways, depending on how you wish to use it:

Game Only

If you only wish to play the final game, please download/clone this repository and find the executable file in the Build folder at the root of this repository. There will be executables for Windows and MacOS.

Build Project from Source

  1. If you wish to build this project from source, it is recommended you have Unity 2019.4.12f1 installed on your machine.

  2. Clone this repository:

git clone https://github.com/kdavidmitchell/rubber-band-game.git

After cloning/downloading this repository, open a new project in Unity with this repository's folder as the project folder.

About

Code base for adaptive difficulty AI demo built with Unity. Created in partial fulfillment of ECS289G Fall 2020 course requirements.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published