Distribution schemes (was Re: [MUD-Dev] Languages for MUD drivers)
iman at issystems.co.nz
Sat Nov 20 06:03:10 New Zealand Daylight Time 1999
> Bruce Mitchener, Jr. wrote:
> Sent: Friday, 19 November 1999 14:20
> That just gives AI an advantage over players and
> requires them to be in the
> same process space as the rest of the system. As for
> your efficiency point,
> I don't plan on sending text messages to any of them.
> World events will
> travel to any interested and connected server and to
> the clients.
> Presentation of the world events or processing of the
> world events is a
> client issue. With proper authorization, clients will
> be able to produce
> various world events as well. This would allow even
> stuff like a weather
> system to be separated out into a rather specialized
> 'client'. AI wouldn't
> suffer any disadvantages that I can tell by doing it
> this way over having it
> in the same process space.
I simplified vastly in talking about how I solve some of the traffic
and computational problems. One of the biggest things I try to focus
on is the somewhat millitary minded 'need-to-know' principle. I have
a '.watchers' property which tells me which connection objects are
interested in receiving notification messages when some other object
does something. That way I don't simply broadcast every thing out to
every server and client. If you haven't registered an interest in a
location, mob, event, etc, you don't get told about it.
The 'rather specialized "client"' you mention above is what I call
another server. Never, never, ever, let something be decided on a
client under the control of your player that will affect anything
except perhaps visual or sound output. You'll just get cracked and
hacked a la Diablo flavour. I find it so incredible that a program
with such technical excellence can fall into such a simple trap. But
then, they probably never saw any value to a server based product, and
without that, there's no way around it.
What you say above though, I agree with whole-heartedly. Good design
will give you all the advantages, and none of the disadvantages.
MUD-Dev maillist - MUD-Dev at kanga.nu
More information about the MUD-Dev