zeldamobile_screen.gifRichard Meurling has been working on Zelda Mobile - a homebrew, unofficial fan remake of the NES title The Legend of Zelda for mobile phones using the pseudo cell shaded graphics style of the GBA's Minish Cap - for just over a year.

The second demo for the game was released at the end of June, and while it’s far from a finished product, it’s a good indication of where the project is headed. It features the first three of the game’s dungeons, a large overworld section, and an extraordinarily irritating attack sound that one imagines will be replaced prior to the final version.

Meurling intends to release a third demo with updated graphics in three months time – he intends this to be the final one before the full version of the homebrew remake. GameSetWatch contacted Meurling via email to talk about the game, and the advantages and disadvantages of creating the title for the mobile phone format.

What inspired the project?

About a year ago I was working on a MMORPG, and we got the idea of making a smaller version of the game which you could download and play offline. So I made a small javaME game engine, later the MMO was put on hold. But I still wanted to put the engine to some use. That is when Zelda Mobile was born. Zelda is one of my favorite games ever, so it was sort of natural to do a remake of it.

What experience do you have in programming?

Actually I don't have much experience with java at all. This is probably my first major java app.

But I have about 12 years of programming experience, and right now I am working full time as a c# developer (non-game related). I love creating games, and have done so for many years, mostly proof of concepts and test engines, which I almost never release.

What kind of restrictions do you face with the mobile format?

Oh, there are a ton of restrictions. The most annoying are the memory limitation and the slow graphics, this game was tested on my Sony Ericsson T610 and that phone can only have about 150k graphics loaded at same time. First we'll need a drawing buffer, without it there would be no smooth scrolling. 256x176x2 (16-bit pixels) that is about 90k. That leaves us with about 60k of free video memory where we can put our sprites. What I am trying to say is that I found it difficult to find the right mix of speed and memory usage.

Other limitations are that every phone maker and every phone is different in terms of memory, screen size, input controls and speed.

What advantages are there?

The things I like with java and cell phones is that it is free to develop, it is/was free to download Sun one studio 4ME (mobile edition) and the emulators are free from most big phone makers, I use Sony Ericsson emulators and documentation cause I feel that they stick to the standard more than most other phone companies. One of the biggest advantages is that most people got a cell phone these days. And of course it is portable and I love handhelds (I’m currently doing some home brew for the PSP too). But in terms of performance, and memory there really are none.

Are the graphics all your own work, or are they sprite rips from Minish Cap?

Most of it is rippped from Minish Cap, and some of it is from BS Zelda. I am not good at making my own sprites. But some of it is my own work. As much as I hate stealing other peoples work, I could never have made any thing this good looking myself without doing so...

You've talked about the next demo being improved even further graphically - what can we expect to see in that?

I am testing a few things that I would like to add, alpha blended fog and light and few more alpha effects. Hopefully more animated tiles and larger monsters. The screenshot above is an example of what you could expect.

There are some limitations to this, it might be very slow on some phones, therefore I am going to provide 2 versions with and without alpha functions.

I gather demo 3 will also be the final one before the full release - how much extra work is that going to be?

The code is almost complete, so for the most part it is map making for dungeons 4, 5 and 6. The media player class also needs some major work, now it does not detect the hardware of the phone properly, it just assumes there is support for 2 simultaneous streams. All the midp2 phones I tested on had this, but from the feedback I have gotten I can clearly see that is not the case.

Will the final release be a faithful remake of the first Zelda, or can we expect additions?

After playing later Zelda games, I don't know if I can be true to the original, there are just too many fun things missing. One thing I really missed in Zelda is a town.

But I intend to make people recognize most of the game, and all secrets in the original will be included in some way. And did anyone EVER take the potion instead of the heart?

Will the work you've done for the project allow you to create new environments? Does it function as a game engine?

Zelda Mobile is a complete game engine, if you where to load a map with different settings it could be a side scrolling adventure. I have tried to keep most of the settings in the map files. The only limit is that it has to be 2D (and you'd probably have do add some code for new weapons, special AI and stuff like that).

The most useful thing I wrote for this project is resource management class, I'll try to explain...

All resources in the game are managed by class which keeps track of what is loaded and what is safe to release. If for example a monster needs a sprite which is currently not in memory, the class loads it and feeds it to the monster class (if it gets an out-of-memory exception doing so, it tries to release all unused sprites and load the monster sprite again, if that fails that monster is skipped). This is useful for phones with lots of memory, cause it only releases resources when it needs the memory, after playing a while everything is probably cached. And on phones with smaller memory it always fills it up to the max.