It's free to join Gamasutra!|Have a question? Want to know who runs this site? Here you go.|Targeting the game development market with your product or service? Get info on advertising here.||For altering your contact information or changing email subscription preferences.
Registered members can log in here.Back to the home page.    

Search articles, jobs, buyers guide, and more.

by Oliver Maio
Gamasutra
[Author's Bio]
November 25, 2002

Introduction

30,720

Printer Friendly Version

[Back To] Mobile Games Resource Guide

Sponsored by:

 

 


Resource Guide

Developing for Two Phone Extremes – Comparing the Nokia 6310i and the Nokia 3650

30,720

The Nokia 6310i and the Nokia 3650 also differ in the application sizes they allow. The 3650 can actually hold a 4 Mb game, although a game that large would take up the phone’s entire flash memory. On the other hand, the 6310i is limited to 30 kb. Let us be more specific since for games on this cell phone every single byte matters. The 6310i is limited to 30,720 bytes. This is 30,720 bytes for all the resources for the game, including code, graphics, and sounds.
Given the size restrictions on the 6310i, optimizing games for size on this phone is extremely important. Luckily, the 6310i is fast, so developers can focus on size optimizations and sacrifice speed optimizations. Centerscore optimizes our code by flattening out the class structure and writing tight code sometimes at the expense of readability. We also optimize our graphics by tweaking out unneeded pixels. But the best way to cut the size down as much as possible is to design the game from the start to reuse code and graphics where possible.

Even with our best planning, to stick as many features as we can into a 30,720 byte game, we often will fight for the very last byte. We’ll take out unused letters, like “z” and “x” from our custom font sets, we’ll rewrite the help to be as tight as possible, and we’ve even considered shortening soft button titles to squeeze the game down to size. In fact, these were all modifications we made to Victory Lap where the addition of last minute features, like a branded mMode logo, caused the game to go over 30 kb. Every add-on required fiercer and fiercer optimizations.

Fortunately, with the 3650, we’ve never had this problem. But even then, its still important to keep a game lean so users have the fastest download time possible. In our CS Soccer game, we utilize standard techniques, like image flipping and cutting the field into key pieces to minimize the size of the game.

Avoiding Frozen, Sore Thumbs – Downloading a Game without Hassle

So once you have a game that is small enough to fit on a phone, actually putting the game onto the phone comes into play. Downloading a game onto a phone may seem trivial, but when you’re making frequent changes to debug a game on a phone, having an easy download mechanism is very important.

A download mechanism that Nokia phones thankfully avoid is Over The Air (OTA) delivery. Certain members of our team will flinch at the mention of these three words Unfortunately, some phones require OTA as the only available mechanism for testing. OTA has many difficulties, like caching of web content, repeated typing of URLs on a phone keypad, and slow delivery speeds. These difficulties cause some OTA processes to take at least fifteen minutes per download. That is assuming that your phone even functions in your office area. Our office doesn’t have good T-mobile service, so in testing OTA, we’ve had developers standing outside in the middle of the street, downloading games to a phone. Multiply this against the dozens of builds sometimes required to work around phone specific problems and on cold nights you may have one frozen, sore thumbed developer. These Nokia phones do not force developers to endure this pain.

For the 6310i, we use the Nokia Developer’s Suite to very quickly and painlessly beam the game to a phone via infrared. To ease the process, we always use laptop IR ports which are orders of magnitudes more efficient than PC IR add-ons. A typical download of a maxed out 30k game will take less than 10 seconds. For the 3650, we use Bluetooth to drag and drop files over to the phone. With Bluetooth, a 64 kb game also downloads in under 10 seconds. Once set-up, both IR and Bluetooth work extremely well.

One would think that cell phone manufacturers would make information on their phones very easy to find, but this is rarely the case. We often spend more time tracking down basic phone information, like screen size and image transparency support, than we do making the decisions with the information we’ve gathered. Some manufacturers will only make certain APIs, like vibration, open to a limited amount of publishers. So whether you’re starting out or have a dozen wireless titles under your belt, developing for open APIs is the easiest way to go.

One Series After Another

Besides being good phones to learn development on, there are also legitimate business reasons to target the 6310i and the 3650 first. The most obvious reason is one that you’ve probably seen on street corners every day – Nokia phones are everywhere.

Another helpful fact to consider is that Nokia guarantees that future phones will be based on similar specifications as the 6310i and the 3650. They’ve done this by splitting their current and future line of phones into sets known as series. So games that run on these phones will run on future Nokia phones without modifications.

The three series that are relevant to Java phone developers are the series 30, the series 40, and the series 60. The 6310i is a series 30 phone – all which will have 96x65 pixel sized screens. The 3650 is a series 60 phone built on top of the Symbian platform, but always capable of running J2ME games.

Our team does caution other developers to wait for the series 40 phones to mature a little more. You can run simple games well on current series 40 phones, but if your game uses more than modest amounts of memory it will need to be redesigned with better memory management. Its best to do this after you’ve already had the satisfaction of running the game on other phones.

Also an impressive line up of manufacturers, like Siemens, Panasonic, and Samsung, are licensing the series 60 technology. This means that the Series 60 will very likely become the future de facto standard for intelligent phones. For cell phone developers, this means we will finally have a common set of APIs to develop for without having to hop scotch through a land of mixed APIs. This is very cool.

Laughing Out Loud

We hope our comparison of the Nokia 6310i and the 3650 gave a good understanding of different issues cell phone developers face. There is no doubt the 3650 is a better phone, but even though it may be an uglier phone, the 6310i is still a worthy gaming phone.

Phones will be even better when manufacturers, like Nokia, open up J2ME access to infrared and Bluetooth on the phones. Massive multi-player games over the network will be popular, but we think in person, one on one challenges will be just as popular. There’s just so much satisfaction in seeing a friend laughing and beating them in person. When we were playing head on head snake with two Nokia phones, one developer kept laughing and teasing that his opponent kept on crashing into the walls. The biggest laugh came when we found out he was the one crashing into the wall!

We hope the time will soon come when we can combine the techniques we’ve discussed above with local network calls. We can’t wait to laugh and play networked games on our own 6310i’s and 3650’s.

_______________________________________________________

[back to] Introduction


join | contact us | advertise | write | my profile
news | features | companies | jobs | resumes | education | product guide | projects | store



Copyright © 2002 CMP Media LLC

privacy policy
| terms of service