The Nintendo Wii game console have for a couple of years had a very active homebrew community around it, and hobby programmers from around the world have developed hundreds of homebrew applications for the Wii: Games, media centers, DVD players, and much more. Personally I made my first Wii homebrew program almost 3 years ago – a painting program for my kids (entitled ‘Kidspaint’ of course), which I made available for the Wii homebrew community. I also made some other Wii homebrew games as well, but my painting program was without doubt the biggest hit.

One of my motivations for making Wii homebrew was to sharpen my C/C++ skills, and it quickly became apparent to me that programming for the Wii was fairly easy: 1 processor, 1 core, and all memory is general purpose. In addition to this, some pretty good graphics and music libraries were also available from the homebrew community.

So after a while I realized that the big challenge was not actually to program for the Wii – but instead would be to get it accepted by Nintendo, and getting it approved as a legit WiiWare painting program.

During paternity leave for my third child I got in touch with KnapNok Games because I was looking for someone with experience in WiiWare publishing. KnapNok Games are licensed Nintendo developers, which is the first step into the world of official Nintendo publishing. You HAVE to be approved by Nintendo first, otherwise you don’t get access to proper development hardware, documentation, libraries, tools, and all other required stuff. And of course, you’re unable to submit code to Nintendo if you’re not approved – and unlike Android/iOS development, getting the Nintendo approval is not straight forward, and it would have been very difficult for me as an individual if I hadn’t teamed up with a company like KnapNok Games.

Once the development tools were up’n’running the “only” thing left to do was update the user interface to look (much) better than in the homebrew version, and then port the code to use Nintendos own graphics/music libraries instead of the homebrew libraries. Or at least, that was what I thought…. it turned out that Nintendo do NOT offer proper libraries for music and graphics. Either, you write them yourself OR you buy them through a licensed third-party supplier. OUCH! Without too much money to invest in the project, I had to write these libraries myself. It took about half a year (I only worked on this project in my spare time though) to make these libraries and get the homebrew code ported.

Paint Splash: Wiiware version of Kidspaint for Wii Homebrew

Nintendo has very good tech support for licensed developers, which was a great help while working on the code. Not only that it is clearly very competent people that answers your mails/posts – they also do so pretty fast.

While working on the code, me and KnapNok Games starting digging into the various formal requirements from Nintendo which you have to fulfill in order get your WiiWare game approved. A big obstacle was the Online Manual which we were required to deliver. It seemed pretty dumb to write a manual for a painting program for children. And not only did we HAVE to make a manual, we were also REQUIRED to deliver it in SIX DIFFERENT LANGUAGES!

We’re targeting an audience that CANNOT READ, yet we HAD to translate the manual into SIX different languages!

Unfortunately Nintendo don’t make exceptions even for a simple painting program – so this problems was solved by much free help from volunteers, and their help were absolutely crucial for the approval of Paint Splash.

Getting the program approved by Nintendo once development was done took several submissions to Nintendo. They are VERY picky about details, and will report even very tiny bugs. However, their bug reports are carefully written and the steps needed to reproduce the bugs are clearly described, so fixing the bugs were mostly quite easy. After a while you learn to always ask the Nintendo Lotcheck questions in advance before submitting. They give good support when you ask them questions, and things move faster if you ask them in advance. So whenever you’re in doubt about their formal requirements, mail them and ask instead of just submitting code that you “think” is alright.

After a total of 1 year of part time work the American version was finally ready for launch on the 8th of September 2011. Taking into account that it only took me 2 weeks to make the first homebrew version much earlier, it’s safe to admit that I completely had underestimated the difficulties of getting a game officially approved by Nintendo. In addition to this, it took us another 3 month to get it approved for European release, despite the fact that the program itself already worked perfectly on both NTSC and PAL consoles. We had overlooked that the PAL version requires THREE different age rating certificates, whereas just a single one was needed in America. But after much emailing with Nintendo they found a loophole for us – since Paint Splash is an EDUCATIONAL program and not actually a game, we could skip 2 of the 3 required age rating certificates, which saved us a lot of time and money. So, on the 15th of December 2011 the European version was finally ready as well.

I must honestly admit that I severly underestimated the amount of work it took to get Paint Splash approved by Nintendo. Especially taking into account that most of the programming was pretty straight forward to do. But in the end, once you see your own stuff on the Nintendo Shop on your Wii, then it’s all totally worth it!