Beats In Unity
A downloadable game for Windows, macOS, and Linux
Description
Try to make your way through some popular songs and get the highest combo possible in this Unity based rhythm game!
Controls
WASD or Arrow Keys – Press Corresponding Arrow Button
Left Mouse – Click Buttons to Select Song or Play Song on Level Select Screen, use Pause Menu In-Game
Escape – Quit on Level Select Screen, Pause / Resume toggle In-Game
Minus (-) and Plus (+) – Adjust Music Volume
How To Play
This game is a standard rhythm game. There are two different types of notes.
- Standard Note: Press the corresponding button to the beat of the music.
- Hold Note: Hold the corresponding button to the beat of the music (indicated with a line).
Interesting Features
Read-In Chart Files
Each song’s chart is created in an excel sheet and exported into a text file as a comma separated list for the game to read-in. This makes editing the song’s notes easy since it does not require editing the project directly.
Song Information Singleton
The game has a song information singleton, meaning that the data for the song playing is stored in a game object that is moved across all scenes. With this, each song is played using the same scene but with different information stored in the singleton.
Camera Pulse
Through the use of Cinemachine, the camera’s FOV zooms in and out with the BPM of the music, creating a cool pulsing effect.
Volume Control
Through the use of Singleton logic, PlayerPrefs and UI, the player is able to control the volume of the music in any scene.
Pause Menu
While in-game, the player may pause whenever they want by pressing the Escape button. There, they can either press escape to resume the game, or use the buttons to either resume or go back to the level select screen.
Countdown Timer
At the start of the game and when resuming the game, a countdown is shown before the song starts or continues.
Unity Input System
This project uses the newest experimental version of Unity’s Input System instead of the old GetAxis and GetKey input system. A Control Scheme is used, which makes it much easier to allow for different types of devices for input, if needed.
Assets Used
Visuals
- Unity Built-In Assets Used: Cylinder, Plane, UI (TextMeshPro)
- Song Track Texture: Created using Clip Studio Paint
- Arrow Texture: https://www.citypng.com/photo/196/cartoon-green-arrow-transparent
Songs
- Sadness from Friday Night Funkin’ – The Trollge Files Mod: https://gamebanana.com/mods/293462
- Created by MaliciousBunny. Music by EZHalt, Original Charting by 0Wilde
- Promenade from Friday Night Funkin’ – ENTITY: https://gamebanana.com/mods/284934
- Created by SugarRatio, Music by Saruky, Original Charting by AlcoholicDJ, Pointy, Cerbera
- Megalomaniac from Friday Night Funkin’ – VS. Sans: https://gamebanana.com/mods/44736
- Created by fuzzehead06, Remix by fuzzehead06, Original Music by Toby Fox, Original Charting by fuzzehead06
Comments
Log in with itch.io to leave a comment.
Title of Game: Beats in Unity
Developer: Peter
Playtester: Ronan Cords
Play Sessions: ~1.5 hours over a weekend
Positive: This is the most fun game I played from this class. The fact that you were able to do all of this in one week is astounding to me. The songs were interesting, and the levels scaled appropriately. I like the combo meter that comes up, (something that Jeff didn't get to showcase in class).
Suggestions: The one thing I did not fully enjoy with this game is the length of time at the beginning of each song. I think that this break only needs to be a couple of seconds, but it is around 5 right now, if not longer. I found myself sitting there waiting for the game to start for longer than I would want to. One thing that would make a nice improvement for the game would be some sort of constant counter on the screen. It could be just a counter for each type of response (good, bad, perfect, etc.). or adding some point value to those to show the player. Seeing if you are improving would be nice.
Major Issues: There were no major issues that made the game unplayable or broken that I found.