Go Back
DJ Bunny
About
DJ Bunny is a 2D music-puzzle adventure where you craft songs by solving grid-based challenges. Take requests from quirky townsfolk, build beats, and help DJ Bunny chase her dream of performing at the legendary Hippity Hop Music Festival!
Project Info
Role: Game Developer/ Gameplay Programmer
Team:
Time Frame: 10 months
Engine: Unity (C#)
Intro
This project was really fun to make. There are a ton of music games where they are rythm based that I am really terrible at. So I wanted to make a music game where it is puzzle based! I wanted to make my own puzzle mechanic from scratch and get better at making grids. In my previous project for What Should I Bring?, I thought that I had over complicated the code for the grid and wanted a simpler, cleaner approach for DJ Bunny.
Puzzle Mechanic Process (Paper Prototypes)
I was still relatively new to making puzzle games and wanted to come up with a puzzle mechanic that could incorporate music seamlessly. The grid mechanics for What Should I Bring was all about filling all the grid spaces, this time I had an idea for a connecting puzzle instead. I decided to do paper prototypes to playtest what rules worked and what didn’t and found it was a quick and easy way of playtesting new ideas and mechanics. I even ended up using the paper prototypes for level designing that made it into the game!
Puzzle Mechanic Process (Unity Implementation)
Eventually I found what worked and it was time to move on to implementing the puzzle mechanic in Unity. However, some aspects of how the puzzle worked on paper did not translate well into the computer. People kept getting confused on how the connection flow worked between the two blue circles on the grid. They also often lose track on where the connection is going as they were trying to solve the puzzles.
So I made the blocks be able to highlight their path in yellow and have their ends blink to indicate where the player can place the next block. Once the connection is finished, which is when there are blocks touching both blue circles, the blocks would highlight in green to show that the player has completed puzzle. This still wasn’t clear enough for the players to keep track on where the flow was going especially when the puzzle levels get progressively bigger grids.
To combat this, I implemented a UI based line renderer that draws on top of the blocks. This was to clearly show where the flow of the block’s path is going. However, the line renderer also came with it’s own problems as they were not drawing the paths correctly even though the block’s connection themselves were right. The problem was because I had written the code for the line renderer independantly from the existing block connection code that I’ve already done. Basically, the line renderer had a mind of it’s own and I needed to intergrate it with the connection code I already had.
After I did that fix it started working really well with some minor bugs still present to polish out. From here, I had my working puzzle mechanic and I could focus on implementing the music aspect for the game!