posted on Tuesday, December 12, 2006 2:33 AM by Endie

Multiverse - Hands On

Multiverse build middleware for massively multiplayer online titles.  In other words, they don't build the games themselves, nor do they build the back-end database, opsys or the like.  They have (until now) concentrated on trying to build the tools that will let development houses actually develop their own games, while not having to worry about building the object modeling, mapping and other similar tools themselves.

Recently, they changed tack, and announced that they had acquired the rights from Fox to develop a Firefly MMO.  This is a biiig change of direction, a bit like a special effects company announcing that they were going to start making full-length movies themselves.  They have been in the business of making hammers, and are now going to sell cabinetry.  And it is important to note that nobody is currently selling cabinets made with their tools. That is, while a few companies are using the pre-release Multiverse toolset to develop games, none is even close to actually selling anything.

By coincidence, I've been playing around with the Multiverse software for a while now, and have got to the point where I have a server up and running, can log into it and move around, can lay out terrain and place creatures, buildings and the like, and am about to try building quests.  I am confident that others could log in as well, but I've not asked anyone to do so, since what I have is still pretty flawed.  That'll be the next step.

That's an amazing thing, though.  Multiverse has provided enough tools for me - an experienced programmer but not a games developer - to create and support an MMO for myself.  There are massive problematic areas as well, but we'll come to those later.

The software runs on Linux or Windows.  I'm running it on Windows, using Cygwin to run the server modules.  The database backend is MySQL, scripting of mob behaviour, quests and the like is done in Python, while server plug-ins are coded in Java.  Configuration, of course, is done in some pretty basic XML.  Since I'm happy with using all of those, I've been playing about with each area in turn.

It took me about four hours to get the servers set up on a clean install, with none of the components in place initially.  Then it took about 3 hours (including a lot of patching) to get the client set up.  Finally, it took a couple of hours of scanning forums and tailing log files to isolate the two problems that were stopping the client from connecting to the server.  I'd say that less than ten hours to get a pre-release MMO environment set up is pretty damn good going, especially as much of that time was taken up with downloading.

One poster on F13 suggested that the multiverse software is just for building diku worlds.  This is absolutely not the case.  That level of functionality is not there by default.  What you boot into (unless you choose otherwise) is a space with your avatar and some terrain.  No scripted behaviour beyond character animation.  No levels, no hit points, no loot, no mobs, no nothing.  While this means work to start with, it also means that you are not constrained by the diku model. The database doesn't hold any character stats until you add the fields.  Pretty much a blank slate.

A basic object repository is provided to show off the tech.  The avatar models look and behave curiously like those of Sims 2, so that should give an idea of the level of detail and the nature of the animations.  The detail-level is really surprisingly good. The pre-release, freebie, demo animations are less satisfying.  The one for running is jerky and missing some elements, and if you move from a higher surface to a lower one there is no jump animation (although I see that the event is firing): the character merely quantum-leaps immediately to the lower level.  But, of course, this just points to one of the entry-requirements: the example repository is limited because you are supposed to add your own models and animations.  Graphic design expertise will be needed.

There are oddities and bugs as one would expect of beta software.  If you set a small lighting radius to reflect a character holding a lantern at night, then scroll out to a more distant viewpoint, the lighting point follows the camera rather than the character, and you disappear.  These sort of things are annoying but hardly big issues at this point.

In all, I am amzed at the degree to which the Multiverse team has managed to commoditise something as complex as a virtual world client and server: it's really not a million miles away from early Second Life, and is immensely more flexible, albeit with a higher learning curve for scripting.  The bugs are far more sparse than I expected.  It doesn't look even vaguely like something that could be used for AAA titles (a bit of a red flag for their Firefly dream there) but it's extant, real and usable.  If you have an interest in virtual worlds and are happy with the skillsets I've mentioned, you really should give it a try.

Anyway, I'll post next about my experience in scripting some events and creating a Hello World server plug-in.

Comments

# re: Multiverse - Hands On

Tuesday, December 12, 2006 3:08 PM by Dragon
Wow! I didn't realise it was that straight forward (well, as straightforward as you've made it sounds). While I'm not that familiar with some of the technologies used (Python at any rate - and my Java is probably quite lacking), I do have a lot of ideas for an MMO. Specifically, a non DIKU MMO. What hardware platform are you running this on?

Oh, and if you want an objective opinion, I'd be happy to login and look around! :D

# re: Multiverse - Hands On

Tuesday, December 12, 2006 4:50 PM by Endie
I'm running this on a fairly basic machine I use for development: just a P2.8 with hyperthreading (but only a single core) and a gig of RAM. It isn't even a tiny bit thrown by running both client and server on it, though. At first I shut down other processes, but that really doesn't turn out to be necessary.

The world is by no means at a "look at what I've done" stage, since all I'm doing is trying out tutorials and messing about with the results, in the main. It's more at a "can you log in from outside my firewall?" stage... But when I think it's just about solid I'll drop you a note via your site and take you up on your offer. I'll also be intrigued to see if your experiences reflect mine, if you give it a try.

# re: Multiverse - Hands On

Tuesday, December 12, 2006 5:37 PM by Dragon
Being in Dublin for the next 3 months means I won't be able to do much. However, this might be the excuse I need to get a laptop to while away those lonely Irish nights! That is, if the missus doesn't get made redundant in the meantime. :(

# re: Multiverse - Hands On

Wednesday, December 13, 2006 9:42 AM by Endie
Is that a risk at the moment, or just general caution?

The servers and client would easily run on a decent mobile, btw: again, on my old P4 single core the servers and client together only came to 50% processor utilisation, even with some other stuff like ultraedit also going. It chugs a little with Eclipse running at the same time (for Java develpoment), but Eclipse is pretty notorious as a memory hog.

# re: Multiverse - Hands On

Wednesday, December 13, 2006 3:24 PM by Dragon
It's a risk at the moment. Several people have gone already and her department is up for review imminently. She's good at her job and well respected but there's never any certainty in times like this.

If I get the laptop I'm after (Dell M1710), it should be fine - Dual Core 2.0Ghz, 1+Gb RAM. I don't particularly want to install Eclipse on there but it's the best Java IDE out there at the moment. (Or is that best "Free" Java IDE?)

# re: Multiverse - Hands On

Thursday, December 14, 2006 9:15 AM by Endie
Well, best of luck there... Must be a stressful thing with kid, new job and that stress.

And yep, that sounds like a pretty sweet mobile: certainly wouldn't struggle with running multiverse.

As regards Eclipse, it's probably the best free IDE, though I tend to use ultraedit and command line tools a lot. But version 3 of IntelliJ from JetBrains is supposedly very, very good indeed. Just a shame that it's 500 bucks a shot.

# re: Multiverse - Hands On

Saturday, December 16, 2006 12:00 AM by randomatmv
Hi Endie, and thanks for the post - this sounds to us like what we (at Multiverse) think we're trying to do (and it sounds like it's working so far).

The Firefly license was something we couldn't pass up - we're not going to build the game, we like our role as the platform creators. But as fans, and as a way of bringing people to the Multiverse Network, we couldn't resist. We see a good portion of our value to developers on Multiverse as creating interest in the Network in general, so that all games built on the platform have more exposure, and a better liklihood of success. For example, the interest has already created higher traffic for the developer web-sites linked from our site - that's part of the value we bring to the Network with Firefly.

There is a lot of room for visual and animation work, and we will be making more basic material available as we move forward, both as a starter set and as example material of how the system works. But, as you point out, we're looking forward to the indie (and industry) developers to create the excellent visuals. So it may not look like it from what's online now, but I think, in time, we'll be able to convince you that building a AAA title on Multiverse is a great idea.

;-)

# re: Multiverse - Hands On

Saturday, December 16, 2006 1:04 AM by Endie
Yep, I suppose I should really have stressed more that my caveated points are part of the overall design: that the animations and models really are just examples and that it was unfair of me even to criticise them qualitatively, really. As I write the next few parts, though, I think that anyone reading will pick up fairly clearly how impressed I am with what's already there: the sheer flexibility is pretty startling.

I'd not picked up from the press release that you're outsourcing the actual development of the Firefly property. That makes a lot of sense. I could see from the server troubles that mmade accessing the wiki a few nights ago rather tricky that, as advertising, the move had really worked for you.