As a service to the web gaming community, I think it would be a great idea to cover a few technologies here on DZone that aid you in creating exciting and fun web games that can be played across the globe using the world's most popular gaming console- the web browser. Most of these games played inside web browsers are played using Flash technology. In many cases, they are done so with the help of a number of other technologies that communicate back and forth from your browser back to the game server. Other technologies assist in the creation of your game worlds and bringing your game to life. In today's post I will be discussing OpenSpace: the Isometric Engine for multiplayer virtual worlds and MMOs.
Hey web guy, what's an MMO?
A MMO is a massive multiplayer online game. There are a plethora of MMOs out there; one of the most popular is a little game called World of Warcraft. This game allows millions of people around the globe to create a virtual online personna and live out the life of their characters and embark upon quests and adventures. Consequently, this game requires the installation of the World of Warcraft client. For many gamers that do not have such an attachment to games like this play web based MMOs, and again, they use the power of Flash technology on the browser for practically instantaneous gaming.
Flash-based MMOs and Virtual Worlds
I bet you have been hanging out on Facebook before, right? Chances are you have seen one to many of your friends playing games like Farmville and Cafe World online. You guess it, both of these (and many others) Facebook games use Flash technology to bring the gaming experience directly to the browser via Facebook. How are these games made? What supporting technologies are used to create them? Enter OpenSpace.
OpenSpace: Isometric Engine
As the OpenSpace website suggests, "OpenSpace is a powerful framework for the Flash platform for rapid development of isometric multiplayer virtual worlds and MMO communities. The OpenSpace engine leverages the power of ActionScript 3 and SmartFoxServer, offering an unprecedented level of features and customizations to make your virtual world look unique." OpenSpace powers web games like Petpet Park, Football Village, Mingoville, and Winx Club: The Online Game. Each of these sites use OpenSpace to power its MMOs and virtual worlds. OpenSpace is bundled with a tile-based isometric engine, the OpenSpace Editor for creating your world maps and placing your game objects, and Client/Server APIs for interfacing with the engine. Let's take a look at the OpenSpace editor, and how it is used to create world maps for these games.
If designing maps for web-based virtual worlds and MMOs are your cup of tea, then the OpenSpace Editor tool is what you will live in when using OpenSpace. Maps are structured in an isometric fashion- 2.5D to be exact. Although, OpenSpace supports custom aspect ratios as well as a traditional 2D top down view. Each map building block is a 'tile' that designers use to piece together the maps in your game. In OpenSpace, each 'tile' may have tile graphics or skins associated with it for added flexibility. Tiles can be stacked in the OpenSpace Editor to create more complex structures, like bridges and overpasses. OpenSpace also supports background and foreground layers, alleviating the need for map designers from having to create tons of 'terrain tiles' making the map creation process faster and less tedious.
OpenSpace Leverages SmartFoxServer
That's right, OpenSpace uses SmartFoxServer for its massive multiplayer server. What's a massive multiplayer server you say? Well, as we discussed, MMOs are designed using the client-server model. Game clients talk back to the server to update game status, world location, etc. It is the SmartFoxServer application in this case that handles those communications. OpenSpace requires a server-side extension to SmartFoxServer that it used to load maps and player inventories, send maps to the clients, calculate paths, and save maps modified by players at runtime. This application is what allows OpenSpace to be a complete solution for MMO and web-based virtual world developers.
If you're ready to make the next hit web game, I encourage you to head over to the OpenSpace website and download a trial version of the OpenSpace Engine. As with most trials, there's a limit to what you can do. However, you will be able to see just how useful the engine and bundled tools are when attempting to compete with virtual worlds like Club Penguin, and games like Petville. Drop me a comment after you've given it a run, and let me know what you think!