Since this log is comprised of 2 weeks of progress, it’s longer than usual.
Yep, it’s pretty late and I’m sorry for that. Got some stuff to do for the past 2 weeks, some of them boring while others are exciting (which you’ll find out some time later… or maybe not, I haven’t decided yet). Now that I have apologized, let’s get on with the post! Oh, and in case you missed the previous log, it can be found here.
I’m participating in OneGameAMonth, and my entry for February is Project Mirror which is some sort of a platformer game from first person view made with Unity3D. So, what did I do in the third and fourth weekends of February?
Or you can skip reading the whole thing and just try the game here.
Well, when developing a game, I like to have most of the game life cycle (pause screen, game over screen, etc) ready before perfecting the gameplay. And that’s exactly what I tried to do on the third weekend.
Following the example on BurgZerg Arcade video tutorials, I tried out UIToolkit, a free plugin for Unity3D that provides a quick and easy way of building interface. Unfortunately, the plugin doesn’t came with any example or asset that can be used to check out the plugin capability. Not to mention that the plugin requires the font to be made in BMFont creator that isn’t available in Mac for free. So I struggled with UIToolkit for the whole weekend and in the end I didn’t manage to come up with anything new.
(A little trivia, I’ve been using BMFont to draw text on my game for a while, but I never knew that it’s a widely-known format 0.o)
By that point, I was very frustrated. The third weekend has ended and the game hasn’t progressed much. So I vented my frustration on Twitter (as can be seen below). Fortunately, a certain CEO of Unity Technologies picked up on my complaint, and after I explained my problem, he suggested that I used NGUI plugin to do the UI stuff. I quickly checked it out and was quite impressed by the WYSIWYG capability of NGUI. After finding out that NGUI has a free version, I made a mental note to try NGUI for my game on the next weekend.
The more I use Unity3D, the more I hate it -.-"—
Raka Mahesa (@legacy99) February 17, 2013
When the next weekend came, I have other stuff to attend to, so I moved the development to be on the last few days of February.
On the third day before February ended, I started exploring NGUI, which fortunately came with examples and some UI assets so I can quickly test out stuff. This time things fared much better and by the end of the day I have an idea of how to build those other screens. I started working on the UI assets later that night and by the next day I finally have functional title, pause, and result screen. I don’t know if I did it the right way, but at least I have them working.
Now that the interface has been taken care of, it’s time to work on the gameplay again. I have one night (of February 27th) and one morning (of February 28th) to pull it off and wrap the whole things up.
At this point I already have a randomly generated platforms that can make a turn and goes up and down. For me the difficulty is already challenging enough, but I need to make it ramp up from easy to difficult (like having only straight path in the early section). In the end I spent the whole night tweaking the difficulty progression and fixing various little things.
The last morning of February came and I remembered that I haven’t put any form of audio on the game other than for button clicking. So, I browsed NoSoapRadio and quickly found a suitable music (which reminds me of Mirror’s Edge music, how fitting). To spice things up I also added a “ding” sound effect every time the player stepped on a platform, and whoa, the result of this little addition is surprising.
This “ding” SFX actually made the game much more exciting and gives feedback to players that they’re doing the right thing (by jumping to the next platform). Seeing this, I decided to amplify the result even further by making the platform light up when it’s being stepped on. The result is quite pleasing that I thought it’s possible to twist the game into some sort of musical game where you play music note by note by moving on these platforms. No need to hurry though, there are still 10 months left in 2013.
By noon I finished up the development and hosted the final version of the game on Dropbox. And with that, the development of Project Mirror is wrapped up.
Oh right, I finally decided on the name of the game: Dimensioneer, since the player is supposed to be adventuring in some sort of shifting dimension (though that particular setting never actually appear in the game).
And I also skipped on one thing, exporting the Unity project to a browser-playable game. At some point in the middle of February I wanted to ask feedback for the game, so I exported the project as a webgame and hosted it on Dropbox. The responses were quite unexpected, some people were saying that the game keeps asking for Unity webplayer even though they already have it. Apparently Chrome refuse to check for Unity Webplayer if it’s requested via an insecure channel. So I simply changed the HTML page to request using HTTPS instead of just HTTP and now it’s solved, phew!
So yeah, now you could play the game on your browser here, or just watch the video below if you don’t want to download the webplayer.
While I’m quite pleased with how the game turned out, it isn’t exactly what I envisioned when I started the project. I think the main problem is with the first person view. While first person camere is good to make the player more immersed into the game, immersion requires tons of resources like sound and animation, things that I don’t have the time to make. Oh well, let’s chalk this one up to experience.
Anyway, how’s my first date with Unity3D? Well, it’s… different. I totally hated a lot of Unity’s way of doing stuff, but I really, really liked the 3D engine. Unless I’m doing a 3D game, I think I’ll stick with other, more conventional game engine (Shiva3D looks mighty interesting tough). That said, I think a friend of mine summed it up the best, Unity3D makes difficult things easy and easy things difficult.
So, now we’ve got February game in the bag, what about March? Well, the original plan is to continue working on Project Mirror on March, but something came up for March. I can’t share you any detail yet, but I’ll just say it’s another mobile game. Yeah, I’m back to my home turf, baby!