AMIDC

A Moderately Interesting Dungeon Crawler

A moderately interesting dungeon crawler is a roguelike with dungeon crawling elements.

Create your character by choosing your race and class and fight your way through procedurally generated dungeons. Find loot, level up and unlock skills to overcome adversities in this tactical, turn-based, roguelike game.er defense game where everything is laid out on the board for you to use.

Project Info

Type
2D
Roguelike
Turn Based RPG

Role
AI Programmer
Gameplay Programmer

Duration
10 Weeks

Team Size
 
7 People

Engine
Unity - C#

My Contribution

My main responsibility in this project was the enemy AIs.

I developed a modular system that allows enemy behavior patterns to be connected to sprites and stats in a plug-and-play manner. This allowed the designers to quickly make changes to the enemies however they saw fit.

The system also made the workload of creating a new enemy way slimmer as the patterns could be reused and they were developed to work with whatever enemy was using them.

The system works by having the enemy script require a behavior and then using polymorphism to create multiple types of behaviors with the same set of base functions to operate them. These behaviors functionally act as the brain of the enemy, deciding what each the enemy will do on their turn and then outputting a list of actions that the enemy will take during their turn which will be executed by the main enemy script one by one in order.

Each behavior currently in the game is linked to the weapon type that the enemy wields, this is to make sure that each enemy utilizes their weapon as efficiently as possible. When the enemy turn starts, each brain figures out the list of actions using a variety of information and functions. Each enemy is aware of its position, the position of the player and the other enemies and the room layout. Every behavior is equipped with an A* pathfinding script that it uses to figure out how to get to the player. The behaviors are also aware of the number of movement and action points they have with the more advanced ones taking decisions with the number in mind.