Game On Spotlight: Far7

This guest post is by Egor Kuryanovich and the team who developed Far7, winner of the Best Technology award in the Mozilla Labs Game On 2010 competition.

Not long ago in a country far, far away….

Three boys decided to create a start-up. We were all into gaming, web development and space, so it was small wonder our project ended up as a browser-based space simulation game. Right from the beginning, we chose to employ only technology that would enable us to create a virtual world free from any limitations, be it platform, bandwidth or gameplay.

While many of today’s giants started in a “garage”, we began in a small basement housing a couple of computers, a bicycle and a microwave oven. The future game’s concept was taking shape in our heads and we were itching to start.

We turned one of the walls into a backlog by covering it with several hundred post-its, each with a minor task written on it. The ventilation pipe below the ceiling became our progress bar: we put completed tickets on it. The idea was that the project should be complete by the time the progress bar had filled up, but the further we moved, the more tickets there were, and now new tasks have almost doubled from what we started with!

When we were starting to create the engine for our game, we opted for using cutting-edge technology available in next-generation browsers. The GAME_ON competition which kicked off in September only proved us right. So here we are, honored to post this message on the Mozilla website.

Like any other innovative project, Far 7 is a package of technologies. The “ingredients” of the game may change more than once until you get a combination that is as stable and user-friendly as can be achieved, with the highest possible performance. The client side of Far 7 uses JavaScript reinforced with the MooTools library. The interface is built on JxLib. The world is drawn with SVG and the Raphael library.

On the other side, the game is served by a complex platform written in Perl. These are the application itself built on Catalyst, a life daemon on the AnyEvent event machine and a Meteor comet server. Far 7 uses MySQL for a database and memcached for fast access to cache.

The set of technologies has hardly changed since we began developing the project. Only the Raphael library was added in the process to handle SVG. We plan to migrate to MongoDB partially or completely in the future, as our own tests have shown it to be the best solution for an online game.

But it is not just technology that matters to us – we take a highly responsible approach to everything: from the art to the setting, carefully crafting every little feature, every fine detail. We are not making a game for designers or programmers – we are creating the game primarily for gamers, so that any one of them can just enter and exclaim, “Wow! That’s really cool!” and then, “Wow! Is all that really happening in my browser!?”

We are insanely happy to have won the prize for the best technology, but we are not even considering calling it a day. We are aiming for the best-overall game! As early as this spring, anyone will be able to try a full-fledged beta filled with drive and fun.

Here is what we have in store for you: • colorfulbattles, • dozensofbattletacticsandweapons, • variousequipment, • anadvancedtradingsystem, • agrippingstoryline, • hundredsofworldstoexplore, • andthousandsofnewfriends.
Deep space is opening very soon! Do you have what it takes to conquer it? Find out at http://far7.by, follow the news at http://twitter.com/far7_by and don’t forget you are the master of your own destiny!