Mr Nibbles 3D – Level Building

As this is a level based puzzle game one of the big requirements for the project will be the ability to quickly build and test levels. In the original Mr Nibbles the levels were all 2D generated from a bitmap image where each pixel represents a single tile in the world. So for example here is level 4:

lev

Representing the levels as a bitmap image meant that Photoshop became my level editor which allowed me to very quickly make changes and test the levels as I made them.

Obviously that scheme wont work for 3D so I started thinking about how to build levels in the editor. If you have used Unity before you will know that in addition to the actual editor they run a website called the Asset Store where users can submit tools and assets that others can use in their project. It was on there that I came across the Tidy Tile Mapper:

It looked exactly what I wanted. So I bought it and started using it to build the first few levels you see in the video at the start of this post. It was while I was using it that I discovered problems in the way it works.

Firstly its slow to use both from a performance perspective and from a usability perspective. There aren’t any hot keys for commonly used things and painting and removing blocks just chugs after a while. I also don’t like the way the tool handles “empty” blocks which are infact real object that clutter up the hierarchy. The block editor also doesn’t seem to handle some rotations. The way it handles layers is awkward and will be a pain for this game that will require many layers or axis’ of movement.

In short I decided I could do better:

Its only a few hours work at this point and doesn’t have all the features of the Tidy Tile Mapper but it has enough for me to get building my levels quickly. It works by having a “working axis” that you can paint blocks to or remove blocks from. All blocks are added as a child of a “blockmap” which efficiently stores the blocks in dictionaries for very fast lookups.

You can alter the “layer” in the working axis using the mousewheel. The on-screen rotation controls allow you to move around the level in 90 degree jumps. This is extremely handy for Mr Nibbles as trying to build the levels while maintaining the current rotation of mr nibbles as the player plays the level in my head was causing headaches!

I plan to iterate and develop it during the project. If its good enough I may release it on the Asset Store so others can benefit from my work on the tool.

New Indie Game: Mr Nibbles 3D

In-between the downtime of the main game (yet to be announced) I decided to experiment around with an idea I had a while ago.

A couple of years ago I released a totally free game Mr Nibbles, a project I worked on with a colleague from Playdemic. As part of my employment contract at Playdemic I was unable to make any money from games produced in my spare time so I decided to run the project as a challenge to myself; could I make a cross-platform mobile game in 3 weeks of evenings and weekends? Well it actually took 5 weeks but I was pretty happy with the result. Currently it has 25k downloads on android:

screenshot_001

And 23k on iOS

screenshot_002

Not bad considering we did no marketing whatsoever.

So I decided why not use some of the skills I have developed with Unity and have a go at making a 3D version? It turns out it was a lot easier to prototype that I thought. The above video is the result after just a few short hours.

I took the original 4 levels and wrote a converter that reproduced each tile in the original 2D level as a cube in the new 3D level. It was very simple but it got me thinking, why restrict it to the one rotation axis like in the 2D version? What if Mr Nibbles could move into out of the world too? A few hours later and I had quickly prototyped the many-axis concept:

This definitely has potential. Stay tuned for further posts on the development of the side-project.

Post To Tumblr v4.19

Just a quick post today. I dont post every time I release a new version of my popular chrome extension Post To Tumblr (if I did there would be nothing but PTT posts on this blog), but I decided to make a video for this release as its been a while since I have made one.

In this release I added a much requested tags caching system and tag hints.

Enjoy!