Multiverse Developer Newsletter Vol. 2 - Number #1

Multiverse Developer Newsletter


Volume II, Issue 1


In this edition:

Corey's Column: Browncoat Spirit

Oh, sure, I called myself a Browncoat before. But when we announced that Multiverse and Fox are partnering to choose an independent development team to create a Firefly MMO, that's when I experienced true Browncoat spirit.

Everyone on the Multiverse team is a Firefly fan, a Browncoat. Myself, I blinked and missed the show when it was on TV in 2002, but uber-engineer Jeff Weinstein (famous, of course, to many of our developers as HuggyBear9000) lent me the DVDs a couple years ago. I was floored, naturally. And I was sad—very sad that I couldn't visit the 'Verse after that handful of episodes. The spinoff Serenity movie (which Multiverse saw en masse, shutting down the company for the day) helped a bit, but I, like millions of other fans, wanted more. I wanted to return to the 'Verse...

Being eyeball-deep in the virtual world industry as we are, lunchtime conversations at Multiverse sometimes circle back to recurring topics like "What TV show would make a great MMO?" (Other hot topics: "Quien es mas macho: William Shatner or Chuck Norris?" and the nearly fistfight-inspiring "skill-based systems or class systems?") Anyway, the most frequent answer to the TV MMO question has been Firefly. Joss Whedon created an incredibly rich and compelling setting, a setting that he barely got the chance to show us. There's so much left to see. So many stories to be told. And now, thanks to the MMO, thousands (millions?) of us won't just watch those stories, we'll create them ourselves in the game.

Speaking of millions of players, what does this mean for you, a developer on the Multiverse platform? Good things. A Firefly game will help bring even more players onto the Multiverse network, increasing the size of the market into which you'll launch your virtual world.

Our plan was to announce the game at a Firefly convention in L.A. Unfortunately, despite the fact that the show had sold out weeks in advance, the event organizers mysteriously cancelled the convention the night before. But for Browncoats, the premature cancellation of something they love is just a speedbump, not a roadblock. After all, thanks to them, "the little show that could" became one of the all-time best-selling DVD sets at Amazon.com; and their dedication led, in 2005, to the big-budget theatrical release of Serenity. So they weren't going to let a little thing like a cancelled convention hold them back.

Attendees took it upon themselves to immediately create a replacement show, the "Browncoats' Backup Bash." Browncoats all over the world—even ones who weren't going to the convention—began to donate money via PayPal so that the hundreds of attendees who already arrived at the hotel could still have a show. Actors from the Firefly series itself, stiffed by the original event's organizers, volunteered to come to the replacement show and hang out with fans. The sheer will and creativity were downright inspiring.

We see that same never-say-die attitude in the developers building worlds on the Multiverse platform. We've now got 8,000 registered teams of independents who, before Multiverse, had been told that they'd never get to make the worlds they were dreaming of.

And as a startup with a crazy idea of enabling anyone to make a virtual world, we at Multiverse strive to live up to those examples of Browncoat spirit ourselves.

Don't forget Mal's dictum: "We've done the impossible, and that makes us mighty."

Corey

Corey Bridges
Executive Producer, Multiverse

Discuss this article in the forums

2006 Multiverse Year in Review

by Random (Ron Meiners), Multiverse Developer Relations Manager

2006 was an amazing year for Multiverse, a year that saw a dream become the foundation for a new generation of virtual worlds, and a new generation of virtual world creators. The worlds you are now creating will be filled with much that has never been seen before: new ways of moving, new UI, new graphics, new game play, and even new ways of conceptualizing the uses of virtual worlds. You are literally creating worlds that have never been dreamed of before. The ability for inspired creators to find the tools they need to craft new worlds will mean a revolution in virtual worlds. This is the revolution you are making.

And to get here, we hit a number of important milestones in 2006:

James Cameron and Mike Sellers Join the Advisory Board: Two top advisors bringing us important perspectives on MMOG development, from the early beginnings of the first MMOG to the evolving relationship between virtual worlds and Hollywood, and a wealth of creativity, new stories, and exciting potential partnerships.

Closed Beta Program: in early 2006 we released the first Beta version of Multiverse to a small number of hand-picked developers. Their input has driven a lot of improvements, smoothed rough edges, and suggested new features. In addition, many of them have done an outstanding job of providing support to others in the forums. Their worlds will likely be the first ones you'll see (apart from your own, of course!)

GDC: Did you stop by and see us at GDC? We were out to meet and greet, showing off our early tools and server. It was a great event for us, with lots of new contacts and interest in the Multiverse Platform.

Austin Games Conference: Multiverse was the buzz of the Austin Games Conference. From keynote speaker Jon Landau (producer of such films as Titanic, and a member of the Multiverse Advisory Board) to presentations by Online Alchemy, Mars Authority, Wardog, and Max Gaming, we made a lot of the industry sit up and take notice: there's a new way to make MMOGs now.

Open Beta: The release everyone was waiting for: our open beta release. Finally a chance to dig in with the server tools and begin creating a new world. Along the way, we're finding and fixing bugs, improving our usability, and adding to the documentation, both from our engineering team but also with the additions you are making to the forums and the documentation wiki. At this point we're proud to say that there have been over 8000 signups to the Developer Program!

Firefly: We found a natural match for Multiverse, and the independent spirit and creativity we want to enable. The Browncoats are our kind of folks, and we look forward to working together to build a new incarnation of Firefly, and in doing so, help ensure the success of all the developers working with us.

That's my take on the year, or at least on the big events. There have been a thousand little interactions I've had or seen that really keep me excited about what you, the Multiverse developers, are doing. It's you who are building this multiverse of new worlds. The future of this new medium is up to you. And as good a year as 2006 was for us, we can't wait to see what you do in 2007. Can't wait!

Discuss this article in the forums

Show Your World at GDC 2007!

The Game Developers Conference (GDC), one of the biggest and most important trade events in the game industry, is being held this year in San Francisco on March 5-9. As we did last year, Multiverse will have a booth at the GDC Expo (West Hall, booth number 560).

This year Multiverse wants to showcase your work at GDC. You are creating the new worlds that will make Multiverse the best place to find MMOGs and virtual experiences, and we want to show people the great stuff you are doing. Send us your logo, screenshots, or trailers, and if they make the cut, we'll put them on display at the show and on our web site! (Just email developers at multiverse dot net.) And if you will have a cool demo world up and running in early March, let us know now. We'll want to show that off, too. You are the message we want to get out: that great worlds are being built on Multiverse. We want YOU to be part of our show at GDC. If you're ready to start promoting your world or MMOG, drop me a line at developers at multiverse dot net.

Discuss this article in the forums

Guest Columnist: Draive on Creating Pets

by Draive

To introduce myself, my name is Ash Downing aka "Draive" and I am working on several games using the Multiverse Platform. My primary focus is on server-side code.

The first system I added was a basic pet system that enables players to take control of mobs (that is, monsters and other creatures) and and give them various behaviors and commands such as "follow," "stay," and "attack." Creating the system was fairly straightforward. I wrote the vast majority of it in the Python scripting language, and made some minor modifications to the MARS system in Java.

Interfacing your Python scripts with the existing Java backend is relatively quick and painless. Fortunately, I spent much more time on my logic than having to deal with interfacing into the existing system. The Multiverse Developer Wiki continues to have example code added to it enabling us to understand the MARS system fairly easily.

The script consists of definitions for "slash" commands entered by the user via the client (so called because you precede the command with a slash "/"). Each command is broken down into its own class in the script. There are three components found in each class:

  • The player's ID
  • The ID of the mob you have targeted
  • Any arguments you need defined from the slash command input

Some important methods in the script that have to do with the Multiverse Java code are the getproperty, setproperty, and sendObjChatMsg commands. The getproperty and setproperty commands define properties in either the player or the targeted mob. You can use these properties for anything from flags (to use in your script) to stats that affect combat. Use the sendObjChatMsg command to send messages to the player that will appear in their client chat window (channel one). There is a brief article on these commands in the developer wiki.

In addition to writing the Python script, I made some minor modifications to the MARS system, in particular, the behavior class pertaining to combat. I added a passive mode to this class so that the player can turn off the "attack when attacked" feature. I implemented a slash command that enables a player to turn on this mode for a pet.

A UI designer could easily make a simple interface for the existing Python code to provide players with a "pet UI". Multiverse interfaces are defined with XML and use Python scripts to perform actions.

Being able to focus on coding my features and not having to worry about low-level functions such as networking or SQL calls makes programming a game much more enjoyable. I'm finding that Multiverse allows me to rapidly prototype my features and change them in a relatively short time if need be. So far, with relative ease I have developed a complex combat system, pet system, guild system, stealth abilities, and other features on the Multiverse platform.

I plan to release the majority of my work to the community over time and hope to see other developers do the same. Check out my pet system on the Developer Wiki to see an example of just how easy it is to start adding features for your game.

Discuss this article in the forums

Tech Corner: The Distributed Object Model

by Rafhael Cedeno, Multiverse CTO

The upcoming beta 2 release of the Multiverse platform introduces a completely re-architected distributed object model (DOM) that provides scalability, improved reliability, and a persistence mechanism. Reliability and scalability are critical features for most games, so the new DOM is definitely a good thing, but it means that if you are one of the few intrepid souls who have written some custom object code, you will have to rewrite it. The good news is that now that this architecture is in place, any future enhancements will not require significant rewrites of your code.

In the old architecture, a single object server managed all objects in a game world. Not only is such an architecture not scalable, but it also presents a single point of failure: if the object server goes down, then all object operations would fail, which would essentially halt most activity in a game world. The new architecture is distributed, which means there can be many object servers, providing virtually unlimited scalability. If one of the servers goes down, only the objects that it manages are affected, so reliability is improved as well.

Before describing the object model, it's important to understand what an "object" is in this context. Server-side objects can represent both physical and non-physical objects, for example, players, mobs and NPCs, items, and structures. Additionally, light sources and sounds can also be objects. Basically, any distinct thing that may need to be persistent is a good candidate for an object. For example, a sword is an object, because it can exist, either on its own, or in a player's inventory. However, player health is not an object since it has no meaning on its own: it is intrinsically tied to the player. Thus, it is better represented as a property/statistic of a player.

A typical server deployment will have many plug-in servers running on multiple machines. Each plug-in should have local access to pertinent object data, to avoid querying the data over the network. To accomplish this, the object model provides for dividing up an object into sub-objects that can be associated with a plug-in. So, for example, a combat sub-object stores combat-related data such as health and mana, a location sub-object stores geographical data such as the location, current movement direction and speed, and so on. The combat plugin server will keep the combat sub-object locally, but can also make network queries to get data from sub-objects stored on other plug-ins, if necessary.

A master object binds all the sub-objects together. The master object has references to all sub-objects via a unique object ID (OID). Each object, both master objects and sub-objects, has a unique OID. The central database server provides OIDs to all the plug-in servers to guarantee uniqueness.

This article continues in the Multiverse Developer Wiki.

Discuss this article in the forums

Virtual Worlds - Ready - Fire - Aim

As part of our commitment to the evolution of Virtual Worlds, Multiverse has sponsored the creation of the SDForum Virtual Worlds SIG (Special Interest Group). Virtual world experts Bob Ketner and our own Corey Bridges are co-chairs. The SIG's first official meeting is coming up in just a few days, where our good friends IBM will be talking about their involvement in the new medium of virtual worlds. It should be a very interesting discussion!

When: Monday, January 22 2007, 6:30 PM
Where: Pillsbury Winthrop Office Silicon Valley, 2475 Hanover Street, Palo Alto, CA

Virtual environments have become significant places for innovations in social interaction, business collaboration, and learning. The development phase of the basic information communications ended around the time of the dot-com crash. Now, we are in the deployment phase of virtualization. This trend will create an unstoppable pull toward pervasive use of virtualization that will affect many aspects of commerce and society.

What are the forces that make these questions particularly urgent? What technologies will be needed to overcome the barriers faced in virtual world deployment?

Join a panel of IBM researchers to address these issues in light of the company's recent forays into virtual worlds, including Doug McDavid (IBM Academy of Technology), Dave Kamalsky (IBM Almaden Research Center), and other IBM representatives.

For more information, see:


New Issues Tracker Available

Multiverse has recently deployed a new Issue Tracking system, to facilitate reporting issues, and to track issue status. This will give you a central integrated system for reporting bugs and other issues that you uncover, and enable you to track our progress in resolving them. Just log in with your developer ID and enter the information into the fields provided. It helps us if you can describe the condition thoroughly, and give us information about what was done to create the issue, and some detail about your system to help us identify hardware-specific issues.

Thanks for your help with this. Your feedback is very valuable to us in making the Multiverse platform a solid, extensible, scalable platform for the new era in MMOG creation.

NOTE: You can now update your Multiverse developer program account, including your email address and other information. Simply choose Developer Account on the Multiverse website and submit the desired changes.


Discuss this article in the forums

Found in the Forums:

"After all, unless you're in a game at launch, just about everyone you meet will have an 'older' character than you, and in most any MMO I can think of, that does equal 'better' in some respect. However, if your character has only cosmetic differences(like perhaps a new hat) after a year of playing, a lot of people might feel a little(can't really think of a better word here) scunnered, no matter how much 'fun' that year of playing has been. Which leads to the conclusion that characters probably have to 'advance' in some tangible way. The trick is to do that without having the game result in being an 'oldest character wins every time' effort. "

—MightyAl, Multiverse Developers Forums