As many of you know, I have been working with Alexis Brandow, who is owner of Amorse Inc. on a great product, called Notespace Beat. Notespace is an interactive musical activity book for kids. Its a very different vision for mobile and its jammed full of content. Its first a storybook, with each page being its own interactive puzzle packed with unique little experiences. Secondly, its a bunch of mini games, all of them different. The experience revolves around musical concepts, some of them classical like scale and intonation and some, not so classical like LFO waves. Thirdly, Notespace is virtual instruments. Currently it has a mix machine and a synth with 40+ different synth instruments. Like I said, jam packed full of content. The game also sports a musical album, by musical artist Bosko, that the players can win and download. The album is pretty dope just as a stand alone but he worked with us through out the project, adding touches here and tracks there.
The first thing we knew going in to this is that it would be a tough sell. Its a tablet only game on musical concepts with the main protagonists being non stereotypical female roles… not quite the game selling formula everyone is used to. We weren’t trying to make any kind of statement on gender but Alexis did want female role models that weren’t a-typical. She didn’t want super girly girls and she didn’t want its antithesis, super tom boy tomb raiders. She wanted roll models that were interesting and more relatable. Lets face it, you hardly find the stereotypical heroines and heroes in the real world and if you do, there is a good chance that they have fashioned themselves after said fictional characters. We are all wonderfully weird, even if we keep it on the inside!
Alexis, who is the brave creative genius behind Notespace, has been kicking this idea around for many years now. It started out as her thesis at Art Center and has changed many forms before its final incarnation. At one point it was going to be a MMO but we all know the financial and emotional investment that is! Finally, all the pieces came together with the growing popularity of tablets. The relative ease of publishing, the form factor and the tools available for development made this the perfect platform.
Our weapon of choice for this gargantuan task, was Unity3D but I am sure you have guessed that already because this post is on my blog. I have to take the time to give both Unity and the Unity community a huge shout out. You people are amazing! Unity really does stick to their mantra of “Democratizing Game Development” and I salute them for it. Unity has done some pretty outstanding things for this industry. First off, they have a free version that is the complete opposite of sucking! You can build full games in it and publish them for a total of zero dollars down. Four years ago, that was almost a preposterous idea. Yes, you could always build your game and game engine from scratch but, speaking as someone who has done that, its a waste of time for 99.9% of all indies. I don’t say that lightly, and I really don’t mean to offend all you cleaver people out there building their own engines but its almost impossible to compete. By the time you have written your awesome engine, and want to start writing your game, your engine is already out of date.
Secondly, Unity brought the subscription model to game engines. This is a trend that most of the big players in the space followed. This allowed developers who could not afford the one off fee to stagger the cost over time and hopefully make money from their game to justify the expense. I might be shot for saying this, but all those Unreal 4 engine fans out there might have Unity to thank for its $20pm price point.
The Unity community is one of the solidifying factors my investment in the Unity engine. The plugins I have purchased form the Unity Asset Store has saved me a fortune in programming time. Thanks again all you brilliant plugin writers out there! The relative ease of writing plugins for Unity has also made it so almost every game service API has a Unity package already written. The Unity community is also the most open game engine community I have ever has the pleasure of dealing with. People dispense hard earned knowledge with vigor and I thank you so much for that.
Along the road we came across the folks at Dolby. These guys and gals are amazing! They were so super nice and helpful we kept on wondering if they had mistaken us for some kind of big shots. Turns out, they are just like that! Dolby is pretty well entrenched in the gaming world but are now making a move into the mobile space. Their flagship device is the Kindle Fire tablets from the HD range and up but more and more devices get added to the list every day. The Kindle Fires already have good speakers and it was great to see them going the extra step and adding the Dolby technology. With the speakers, you can notice the difference from the clarity and power of the audio. With headphones, it even more radical. It really makes you feel like you are inside of the audio. We have high hopes for the Windows tablets in the future. All the Windows 8 tablets actually have Dolby technology built in but the API is not yet exposed. If you have a music/audio heavy game for mobile, I would definitely urge you to implement the API. For Android (Kindle Fire), it was a cake walk. You can toggle between the four different presets depending on what you want the player to focus on (music, voice, sound effects). Take a look at my post about implementation if it tickles your fancy.
The next pleasant surprise we came across along the road was the helpful folks at Amazon. One of their evangelists, Peter Heinrich, was really supportive and helped us along with some of the bumps in the road. One of the great things about publishing with Amazon is their developer select program. If you get approved, you get a good couple of free ad placements that really helps when you are on a tight media budget. As long as you have made your game well, the only extra qualifying thing you had to do was integrate Amazon Game Circle. We decided to use their achievements system but you can use it for so much more. They have a great cloud synching solution that is tight! The greatest thing about the integration was that it used Unity’s social framework. Couple of lines of code and you are done. If you have time, take a look at the beauty of the Unity social API, its really well done. Peter actually wrote the Unity social API implementation example you will find on the web.
One of the tools that helped us out a lot was the GAF Flash to Unity animation system. Its a really top notch system and opens up the power of Flash animations inside Unity. Of course the output is still rasterized sprites but they have a pretty good atlas packer thats all part of the format. They do support masking but I would still steer clear of that as much as possible for sake of atlas optimization. We did have some issues in the beginning with the format but GAF Media has been really fast to address this. The plugin is free but they charge for conversions. Its an interesting monetization model, I know, but it works. They give you the first 300 conversions free and then I think its a subscription model. Do note that you will need to subscribe if you want built in multi resolution output. My solution for this was to just make three separate animations and load the correct one from Resources.
Notespace is a storybook and what is a book with out really good type? When I was at Unite 2014, I met Stephan Bouchard, who is the author of TextMesh Pro and it impressed me so much that I went through and replaced my text solution for his. The thing about TextMesh Pro is that it really is vector! No, really! His system uses a texture sheet to bake in the depth data of each glyph used and then uses a special shader to turn that data into super beautiful crispy type! Its genius level stuff! Small, scalable and no messing around with mip maps for scaled text! Multi resolution is all handled as a by product of the shader. I can wax lyrical on how groundbreaking TextMesh Pro is but I will save my breath, just get it now! You will never look back and yes, it works on mobile.
Notespace took a full year to develop. It has lot of unique content and so needs the time. In about the middle of the project, we realized that we were not moving fast enough. Two people can just move so fast. The topic of outsourcing some of the work came up multiple times but we were stuck with the problem of a) finding good Unity developers and b) risking the time to get them up to speed. Its always a tough call when you are a senior dev because when you add more people to the team you incur management overhead and structural differences. In the end, I had to make the call to continue it alone mostly because we couldn’t find good available Unity developers and even the time to look for them would be more time lost from the project. When all is said and done, I calculated it would be about a month to get someone in. So, we started crunching from about August. Now crunching is not a long term solution at all but we all seem to end up in that position. It can suck hard at times but there are a few tricks to alleviate the pain. The best thing we did was get away. We went up to Yosemite and worked in a cabin for the first month of crunch. We worked hard and productively and I put it all down to a change in surrounding, fresh mountain air and an ice cold swim in the stream every morning. I have been through many crunches in my time and this one was the hardest I have ever done but that mountain trip really kept me together. If you are in a position, please do it for your own sanity.
Notespace was released on time on iOS, Google Play and the Amazon App Store all with relatively little platform switching pain. There were a few shader issues on some platforms but thats really it. The reason the project got out with low friction was due to structure. I cant stress how important it is to be continuously refactoring and keeping your architecture relatively clean. Game programming always gets messy towards the end and you will end up patching some stuff but keep that to a minimum. If you start putting bandaids on things in the middle of the project, you will pay for it later on with enigmatic bugs and erratic behavior. Its better to pay for the cost or refactoring continuously through out the project than to pay the lump some at the end with interest when you are at the end of your tether.
I hope you can glean some useful info from our journey with Notespace. Making games is never easy but you can do it wisely to set yourself up for success. If you have any of that wisdom to share, please leave a comment. That knowledge could save someone some grey hairs. Making the game is also only half of the task. Whether or not you want to admit it, marketing is the other half of the equation. With that being said, please support us by downloading Notespace from any of the following fine digital distribution moguls: