Beats Brawler


Project Summary

Beats Brawler.mp4

Inspired by BPM, you play as a knight on a quest to cleanse a dungeon filled my monsters and bandits. Dodge, jump, and slash your enemies with styles in this fast-paced rhythm-based action game. Match your actions with the beats to get bonus scores.

Game Engine: Unity.

Project duration: 3 weeks.

I scripted every game mechanic, boss mechanic, enemy AI, player controls, 2D animation, and UI in C#.

Project Development

Beats Brawler Presentation

The project requirement was to create a game that combined two different genres. What I did was a combining side-scroll action platforming games with rhythm games.

I created a beats indicator on top of the player character. The music I chose was from BPM, the time signature of which was 4/4; this made scripting the beats indicator much easier since the time gap between each beat stayed the same.

When you hit on beats, the indicator glows; when you miss the beat, the indicator flashes red and shakes

Scoring system

A good game design doesn't force players to play in a particular style or use a specific game mechanic to beat an enemy; designers ought to encourage players to play in an intended way. Like Devil May Cry, I made a scoring system to encourage players to attack on beats. Players get a higher score multipler for performing an action on beats.

Player Abilities

Players can dash, slash, launch, and plunge. You can also attack and dash while in the air. There were a lot of combat options, but having a variety of combat mechanics was both a blessing and a curse.

  1. There wasn't enough time to polish each combat mechanic and make them feel good.

  2. There were only two types of enemy: regular melee grunt and the boss. There was no need to have aerial combat since no enemy could fight you in the air and you didn't need to jump to hit an enemy.

Diverse attack patterns could make the game feel less "button-mashing". But without the support of good enemy design or polishment (like better VFX, SFX, animation, etc), players were less likely to use those mechanics. Plus, the game is short; no one will pay attention to using all the combat mechanics.

The Boss

In my opinion, the boss is the better part of my project. Unlike previous levels, the boss level posts a legit challenge and requires players to learn the boss mechanic. The boss has only two attack moves: fireballs and beam attacks. The fight was broken into three stages. Each stage increases the complexity of the boss's attacks, but the fundamental remains the same.

The Boss fight starts in a tunnel and then transitions to a small arena when the Boss's HP is less than 70%.

Fireball spawns on beat. Deflect it to damage Boss.

More fireballs spawn when Boss's HP <= 60%

Press W/S to move up/down.

The arena is covered with fireballs during the final stage of the Boss fight.

Boss shows a red telegraph before a beam attack.

When the Boss's HP is low, it will combine both fireballs and beam attacks.

Later, there will also be vertical beams shooting down.

As the fight gets more difficult, more and more attacks start mixing together.

Having limited resources helped me to control the scope of the boss fight. Instead of creating new attacks, I focused on reusing and modifying existing mechanics. The result was an easy to understand and concise boss fight with a good variety of attack patterns and a reasonable difficulty progression.