Project Name: Auto Battler

My Role(s): Sole Developer

Duration: 4 Weeks

Game Engine: Unity


The Project

Over the course of a month I did a self study into scriptable objects and Unity encounter handling. My goal was to create a simple auto battler gameplay loop that allowed for me to create unique effects along with standard triggers.


Scriptable Objects

By utilizing Unity’s scriptable objects I made containers for my item data that would allow to me create items rapidly should I need to. The ItemData itself would contain all information pertaining to the item and would be accessed by the instantiated item housing the data. Depending on the ItemData information changes to the visual item would occur, one clearing being the art but also the color of the items effect value box would change in accordance with the Typing Info. The UI tooltips would also be updated based on the ItemData when hovered.


Item Management & Events

During this project I tried multiple ways to store item location information such as 2D arrays, multiple arrays, lists, and individual game objects. The reason for this was to understand data handling better as the storage method got more streamlined.

Based on how I handled data storage I also needed to change the way that I called triggers from item timers. In the end I used mostly 2D arrays for player and enemy sorting as it allowed me to have an individual item slot that could be affected and an item in that slot that could be affected. This wasn’t the case for shops as they didn’t need all of this dedicated memory allowing me to just maintain screen position and move instantiated items to them.