top of page

Dance Dance: Pocket Performance

Mobile Rhythm Game

Banner.png
Banner_BG.png

Dance Dance: Pocket Performance is a rhythm game that I developed in the Unreal Engine as part of my third-year at university. The challenge I set for myself in this task was to get involved in the mobile game development workflow, this challenge allowed me to discover some interesting ways that Unreal operates as a software, as well as utilize some of it's features that I otherwise would've ignored. This game was awarded with a First by my professor.

Why?

This reason I started this project is because I wanted to attempt to make an easy-to-expand  rhythm game, as well as getting my feet wet in a mobile development pipeline. It was a part of my curiosity on how developers make mobile games with Unreal.

Lessons Learnt

This project taught me how to setup a project to work with a mobile device, camera framing, touch control support, UI DPI scaling, and using Data Tables to drive gameplay. Whilst the accuracy of the notes weren't perfect, these lessons were infinitely more valuable.

If I were ever to re-do this project, I would attempt to implement a new system for beat-detection, as this project relies on using a delay node, in combination with a bunch of float entries in the data table to fire off notes at the correct timings. This leaves a lot of room for human error. Perhaps I could utilize Midi files to drive the logic of when to fire arrows.

Noteable Systems
Data Table-Driven Gameplay 
DataTable_Image.png
User-Interface Design
SaveGame Utilization
SaveDemonstration.png

When making DD:PP I was considering games like OSU! that have their own in-built song/ rhythm maker. I needed to figure out a way to make an easy-enough system for me to make levels in this game. 

The approach I opted for, was to use a data table for each song, in this data table I added three entries, one for the direction of the Arrow the player has to input, one for the time the arrow the arrow is spawned into the world, and one that makes the game "bump", signifying a Major beat.

Something I wanted to emphasise on this project, is making the User-Interface mobile-friendly. The challenge with this is making sure the player had all the information they needed in regards to gameplay, whilst also making sure the core elements are not being hindered by the UI. 

I do believe that I utilized the screen-space rather well.

I also utilized the Unreal SaveGame system to save and display the user's highest score and their highest combo.

bottom of page