Designer's Notes: Clock Busters

As the team leader and lead programmer for Clock Busters, I coordinated the other four developers, helped determine which assets to use from asset packs and which to design from scratch, and juggled a full school load, all while coding a fair number of the unique features of the game.

This project is my most complete, a working demo with a fairly balanced gameplay. What’s here is the result of a single semester of work, and it is still under construction as a graded class during another semester.

The Randomizer

Items: 

As a metroidvania, one of the core aspects of the game is a variety of upgrades and abilities that each unlocks new locations and aids the player in exploring for new items.

I coded the items and some of the upgrades such as the dash, the fire-ball explosive, the ground-pound, and, not in the currently released version, a slow time ability.

The selling point of the game is the built-in randomizer which allows the developers to mark locations for items to appear in and note what abilities are needed to reach that location.  Then the randomizer chooses where to locate each item, ensuring that no item can be locked behind itself in any way by starting with the locations that don’t need any upgrades and ensuring that at least one of those containers has an item that unlocks a new area.

Level System

I built a level system that separates the past and future zones into separate maps while still allowing the randomizer to function and facilitating the save/load system.  It’s also being expanded so each large zone has its own map. This increases efficiency by not requiring everything to load at once. 

(I wish I could say more about this because it was challenging to make it work right, but there’s just nothing to say.  It works now.)

Combat + AI 

I designed all the systems for combat, including player health+damage (implementing Unreal’s damage system), the attack for both the melee and ranged classes, and all the enemies and their AI.

The enemies all make use of the same base blueprint, and the AI is constructed from blueprints rather than behavior trees.  The base blueprint includes features for patrolling at any given speed, remaining stationary if needed, taking damage, dealing contact damage, perceiving the player and targeting them, and making an attack of some sort.  Then more specialized child-blueprints are used to make the melee enemies, the turrets, and all the other enemy types.

Miscellaneous features

Other features include a more practical options menu for volume, an optional life system where you can only die so many times before you have to turn off iron-man mode or start a new game, a checkpoint system that saves the game under an auto-save when you use it, a variety of environmental features like destructible walls and elevators, and a save/load system that stores picked-up items, item location, the Checkpoint where the player saved, player class, money, lives, and any flags anything else requires.