[vworld-tech] Ultimate MMO Platform

Jim Purbrick Jpurbrick at climaxgroup.com
Thu Apr 1 01:32:36 PST 2004


> However, I'd say that the "ultimate MMO platform" has a 
> rather different primary feature: it has to adapt.

I agree. Add adaptability to the list of features. What I'm after is a
platform that can be used for or extended for a large number of
applications.

> Short answer: those organizations who have the skills in 
> those areas are still totally uninterested in getting on the server side,
unless they 
> can do it with zero effort (i.e. someone else will use their 
> produce to do it for them). Unless there's another explanation I've
missed?

I doubt it's even clear to them how their technologies need to change to
work in an MMO setting. I'm guessing that AI might not need to change much,
but that distributed physics would be a right royal headache. I think the
networking infrastructure has to come first.
 
> I'm not sure where you get that idea from, but it's almost 
> bound to be doomed to failure. 

I get the idea from the goal of making the platform as adaptable and
transparent as possible. I don't like the idea of making the main
abstraction a scene graph which you hook callbacks too, or making the
abstraction a messaging one and relying on clients to add everything else.
For me the most natural abstraction is the object. You instantiate an
object, use it, others take copies of it, use their copies. Everyone thinks
theirs is the only copy and forgets about networking, the framework deals
with synchronisation and conflicting updates. Easy.

> In general, distributed object architectures are incredibly slow and
inefficient 

I wasn't thinking of building this thing with CORBA, just using the same
abstraction. Underneath it wouldn't be synchronous object RPC. Objects would
be fat proxies that would use prediction mechanisms to provide non-blocking
interfaces that immediately returned answers, as if the object was the only
copy in existance. Behind the scenes networking, validation and
reconciliation would keep the objects in sync. Inconsistency would be traded
for latency, so the system would appear zero latency at the expense of some
inconsistency between copies.
 
> The people working on the cutting edge with such systems are 
> only just about getting enough performance for environments where
acceptable 
> response times are measured in hundreds of milliseconds.

I want to make a system where it doesn't matter if response times are
occasionally multiple seconds. All that happens is that objects get
temporarily more out of sync. I'd like to be able to build this on top of
e-mail as a tech demo :-)
 
> There is a lot of work in this area if you're interested in reading 
> further. I'd suggest Sun's JINI for a start, which had 
> generated a lot of really interesting stuff last time I looked.

Yep. JINI is really interesting as are tuple spaces in general. Thats where
CRG has gone at the moment.

> You sound close to Crosbie Fitch, who would love to build an MMOG 
> "Cyberspace" (his term), 

No bad thing. I talked about this stuff down the pub with Crosbie a few
months ago.

> and believes it's possible to do on a p2p 
> basis. He's been saying this for quite a few years, and a lot 
> of people have tried to explain why the things he believes will soon be 
> possible are inherently unlikely materialize (and I've seen it put rather
more 
> forcefully than that).

I'm not convinced by his punk rock p2p approach either, although it has a
lot of nice aspects. The real issues with his ideas are those of trusting
the stored persistent state. If you pay Verant 10/month you expect them to
store the world data responsibly, if you pay no one who do you trust? Having
said that the huge connected NWN worlds out there seem to be finding a
social answer to some of the problems by promoting trusted players to GMs.


More information about the vworld-tech mailing list