
Pentabeat
GAme design - Level design - Music - UX/UI
2021


OVERVIEW
Pentabeat is a fast-paced rhythm bullet-hell game about facing off against dangerous bosses, each with their own accompanying song.
​
The goal of the project was to create a highly replayable and action-packed experience that would entice players to play over and over. We also wanted the gameplay to be generated by the music.
​
The game centres around dodging bullets and beating difficult bosses, each with their very own high energy music track dictating its attack patterns.
​
For this project, we only had designers and programmers on the team. The artistic workload were divided among the designers.

GENRE
Rhythm, Bullet-hell
​
ENGINE
Unreal Engine 4
​
TEAM SIZE
6
​
DURATION
4 weeks
​
PLATFORM
PC

CONTRIBUTIONS
GAME DESIGN
Gameplay design and documentation.
​
LEVEL DESIGN
Pattern and experience design.
​
MUSIC
Composition and production.
​
UI/UX
Main menu and level selection.
TRAILER
GAME DESIGN
The core game design was a collective effort between all three designers. After I pitched the initial concept to the group, we started mapping out the different mechanics and documented them using HacknPlan.
DOCUMENTATION
We used HacknPlan for both scrum and documentation, using the Design Model feature.
​
The design documentation is structured similarly to a Wiki. I wanted the documentation to be on the smaller side, so as to make it more easily digested and maneuverable. From my experience in studying game design, I've gathered that it's always better to make design documents clear and concise and to leave gaps wherever necessary as things will always change later on in development as you start playtesting. Therefore, our design document is not considered as law, but as guidelines.
​
Use the gallery on the right to view snippets and examples from the documentation.








Boss in centre. Projectiles fire from behind boss and circle towards the player.

Boss outside arena, bullets travel in straight lines towards player.
Design changes
The game went through a quite large directional change early in development. Early concepts used a donut-shaped arena and had the boss placed in the middle of it, spawning projectiles that circle the arena.
​
This was eventually changed to a disc-shaped arena instead,, placing a moving boss outside it.
​
The change was done for two reasons: a) It made bullets less rigid, creating more interesting bullet patterns, and b) We found the previous bullet movements to be hard to read in 3D space in terms of depth perception, which is ultimately very important when creating a twitch-movement platforming experience.
PLAYER CONTROLLER
Movement
The player can move freely around the level using the Left Stick. Movement is instant and precise, as is needed to dodge bullets efficiently.
Jumping
The player can jump with the A button. Jumping used for dodging bullets only, there are no platforms in the game. The jump is determined by a graphical curve and is the exact same for every jump.
Shooting
The player can spend their collected pellets in order to attack the boss, downing their health, using the Right Bumper.
There is no need for aiming, the attacks are homing and hit every time.
Pellets
Pick-ups called Pellets spawn randomly on the arena. They work as both extra health and as ammo.
When collected, they form a shield around the player, allowing for an extra life for each Pellet collected.
The player can also choose to turn their Pellets into bullets and fire them back at the boss in order to lower its HP, which is required in order to win.
​
Forcing the player to constantly move around the level in search for Pellets removed any corner camping that bullet-hells are usually known for. The Pellets also gives the player a larger amount of options in terms of strategies.

Bullet types
Standard bullet
Travels at constant speed in a straight line.
Triple bullet
Spawns three bullets at the same time. Travels in a straight line, but are faster than the standard bullet.

LEVEL DESIGN

PATTERN GENERATION
Each level in Pentabeat takes place on a vinyl record and features a distinct boss. The arena size is the same for each level. The only thing that varies are bullet types and patterns, apart from aesthetics such as the color palettes look of the boss.
​
The bullet spawning is generated using MIDI files that I created using FL Studio. The MIDI files are then imported into Unreal Engine using a tool developed by one of our programmers.
​
This method turned out incredibly powerful and the amount of patterns I could create using it were nearly endless.
1. Composition
I write and produce the track for the level in FL Studio. The track is exported as a WAV file in order to get the best quality sound.
2. Pattern design
I import the WAV file into a new FL Studio project as a reference. The bullet patterns are created using the Piano Roll tool and exported as a MIDI file.
3. Implementation
Both the WAV file and MIDI file are imported into the engine and synced together.
How it works
Each note played in the MIDI file generates a bullet fired. There are a few things at play when designing patterns.
​
BULLET TYPES
Each bullet type needs its own 'instrument'. When imported into the engine, the bullet types are assigned to an instrument each.
​
ANGLE
The angle of the bullet is determined by the notes on the keyboard. E5 is the centre, and any notes placed there will fire completely straight. Going up and down the scales changes the angle of the bullet by 5 degrees per note.
​
BOSS MOVEMENT
The movement of the boss is also determined by the MIDI file. It is controlled by a set of 5 notes (D5 to F5). The boss can move in both directions at two different speeds.


BOSS HEALTH
To differentiate the game from other rhythm games, Pentabeat is not just about surviving the song. In order to beat the level, the player must defeat the boss.
​
Each song is divided into looping sections. When reaching the end of a section, if the boss is above a certain amount of health, the section loops. If not, it moves on to the next.
​
This creates a sense of mastery similar to more traditional boss rush games where the player must learn and memorize the different attacks in order to beat the enemy.
LEVEL structures
Level 1

Level 1 is divided into 2 sections:
​
-
Intro + Chorus 1
-
Bridge + Chorus 2 + Outro
​
The purpose of this level was to both ease the player into the experience and test them on what they've learned.
​
Part 1: Intro and Chorus 1
For the first half of the song, the boss is completely stationary. This part is all about letting the player become comfortable with the controls and the bullets, slowly ramping up the difficulty as it goes. There is, however, a very steep ramp in difficulty just as the chorus starts. It is not steep enough that the player will instantly lose if not prepared, but it is significant enough so that they are thought about the overall difficulty of the game.
​
Part 2: bridge, Chorus 2 and outro
As the first chorus is finished, the level drops in intensity, creating a breathing room for the player. As we get into the bridge, the boss starts moving. The movement in this first section is coupled with very simple bullet patterns, so as to ease the player into the concept.
As the bridge transfers into chorus, the intensity is once again ramped up, eventually ending in a climax where the player's skill is truly tested. As chorus ends, the outro plays and the boss is destroyed.
Level 2
Level 2 is divided into 4 sections:
​
-
Intro + Chorus 1
-
Bridge 1 + Chorus 2
-
Chorus 3
-
Bridge 2 + Chorus 4 + Outro
​
The purpose of this level was to use everything taught in the previous level and create a fuller experience using all of the different mechanics at once, all the while ramping up the difficulty.
​
Part 1: Intro and Chorus 1
This section is all about learning the main pattern, or leitmotif, that carries through the entire song. Movement is kept relatively minimal.
​
Part 2: bridge 1 and Chorus 2
The second section of the level is all about movement. The leitmotif from earlier is kept and combined with sharper turns and higher speeds.
​
Part 3: chorus 3
As the player beats part 2, part 3 is immediately played without any bridge to ease them in. The leitmotif is kept, but this time the movements and patterns are twisted to become more difficult.
​
Part 4: bridge 2, chorus 4 and outro
As we head into the final part of the level, the leitmotif is discarded. This challenge, and final crescendo, is a new set of patterns. The section throws the player for a loop, forcing them to re-adapt. The outro, however, brings the leitmotif back and finishes in a pattern that the player will recognize.

There are three levels in the game, and I made 2 of them: Level 1 and Level 2. Although the player can complete the levels in any order, they are most likely to choose level 1. This means that I was responsible for tutorialization.
​
Overall, I thought of the levels as music, with verses, choruses and crescendos.
MUSIC
LEVEL 1
LEVEL 2

UX/UI
MAIN MENU
I was responsible for designing and creating the splash-, start- and level select screen.
​
The flowchart for getting into a level is simple. Selecting a level is just a method of scrolling left and right and confirming with the A button.
I wanted the menus of the game to feel a bit like stepping into a record store, so each level is represented by an album cover that I rendered myself.
SPLASH SCREEN
START SCREEN
LEVEL SELECT
LV 1
LV 2
LV 3

Background, color and font are randomized.



Background, color and font are randomized.
Use this gallery to view the different menus. The backgrounds and fonts are randomized every time the game is booted up.
ALBUM COVERS
To express a bit of creativity, I used different mediums for each piece of art that I rendered.
Level 1 uses a digital piece, while level 2 uses traditional methods. The art for Level 3 is an AI generated image of a dog, which I thought created a bizarre vibe perfect for our game.
BLUEPRINTS


Background image, color, and font are randomized.


Fonts, images and details are changed on construct. The Beatles are just a placeholder.




Getting fonts, difficulty and other information works the same way.

There is an identical function for moving left as well.

