Dev Diary 35: Music, Playtesting & Mistakes
Currently, the state of Lab 77 is as follows:
186 of 195 bugs have been squashed. Of the remaining nine bugs, seven require further testing and two require more work.
Music and sound design are being worked on.
First and foremost, Lab 77 has reached 100 wishlists on Steam! This is a major milestone for me as an indie game dev, especially given how difficult the games industry is at the moment. A massive thank you to any and all who have whishlisted Lab 77!
Secondly, music. I was sent the final master of the game music from Rossano Cariello who has done the in game music and sound design for Lab 77. Initially, I asked him to help me make 77 individual sound tracks. As in one for each level. Thankfully, I was convinced that this was a terrible idea and we have since then been working on one menu track, one tutorial track and seven variable in-game tracks that will be implemented using Wwise. These seven tracks will fit the seven sets of 11 levels in the game. While we have not gotten to the Wwise implementation just yet, the final version of the music is very close and you can hear a snippet here.
Implementing Wwise is the next big task to be done. It is not a thing I have any prior experience with, but I am looking forward to working on it. In addition to the in-game music the intention is to use Wwise for the sound effects as well. These sound effects are in the demo, which does not use Wwise. Instead the demo used my own concoction of madness that worked just well enough for the demo but I would rather have a proper underlying system that does not rely on my rushed implementation.
Working with Rossano I was able to get a start on the Wwise implementation. Initially we focused on the basics, making sure the connection between Wwise and Unity was correct and that it would play any sound at all. Once this was established we focused on the task of making sure the music tracks would switch at the correct times, which turned out to be a bit of a faff as we made some mistakes which complicated matters. After attempting to use the pre-made AkSwitch components, which did not work, I wrote a simple method in my game manager which now handles the entire switching as the manager is in DontDestroyOnLoad, which keeps the manager constantly loaded throughout the game. We also had some trouble after this with only one stem per track playing, but after some consultations we realised that we had set the number of instances to one, which we had done as the AkSwitch seemed to be layering multiple tracks. However, in the end we were able to make a start and leave the game in a stable state where we will pick it up next time.
In addition to the new music I have done more playtesting and data gathering. I mentioned last Dev Diary I intended to start working on more quality assurance through playtesting, and in this effort I also decided to re-start my data gathering which has been dormant for a while. I decided the best way to uphold the difficulty level that I am aiming for is to have the placement data, as difficulty in the game is determined by a limited number of placements, gathered by me as I am the only person with sufficient gameplay experience in Lab 77.
What this means in practical terms is that I have to play 66 levels at least five times (that is a total of 330 levels) to make sure I find the lowest amount of placements for each level. Thankfully, I did this job for the 11 levels in the demo before I released that, so they are set in stone. Still 66 levels need to be worked through, and the start did not go very well as I managed to lose two data sets through my own incompetence. So that was fun. That being said, I aim to pick this up again going forward, as it is something I must do to complete the game, it just needs time and patience.
I also did some "accidental" QA and playtesting work through my attempts at data gathering. At this point the QA work is very much focused on minor details such as moving floor blocks one unit to the side, up or down which is rather repetitive work but still very necessary to do. In doing this I also found that I have either got an issue with my GitHub repo or I made some git mistakes a long while ago in what branches I merged and how I resolved merge conflicts as level design bugs that I thought I had fixed resurfaced. All these things have thankfully been easy enough to fix. Though the trouble is that I have no idea which of the previous bugs now remain unfixed. I know I will find them as I do more playtesting, but it is certainly going to be a project until the release happens.
Lastly, I also started work on a proper trailer for Lab 77. I did share the first draft on Patreon and Discord, and got some feedback on it which is very appreciated. I know that I have to make some refinements to it, but I made a decent start for someone with no video editing experience to speak of. I do think this is an area I should improve in, as game trailers are very important for marketing. However, it is difficult to make things the way I want them to be at the moment, and that will probably show in the final trailer.
That is all for this week, more to come in two weeks.
-Olav