[DGD] Could it work...

Matt Taylor mtaylor at ntlworld.com
Wed Sep 19 03:43:05 CEST 2001


Thanks Erwin, 

Sorry to take up loads of time with simple questions. I'm probably the most
inexperienced coder here ... Hope it's not too much trouble.

I guess what we want to know is what do we need to ensure our MUD can be
persistent. I know we've been warned off doing it as an initial project, but
if the help is out there then my coding partner at least is willing to give
it a shot :) There's strength of will for ya ;)

Obviously we are going to need to include more than we have.
The way I understand it we might need:

(1) Some sort of object manager to keep track of compiled objects and their
clones so they are not lost.

(2) Some sort of r-limits applied. This would be on call-outs,
receive-message and open, close? I couldn't understand why open/close would
need r-limits though :(

(3) Resource management. So that, as you mentioned, someone doesn't take the
game down with 60000 clones of an object.

(4) State dumping and restarts from state-dump for crashes etc.

But I can't think of any more. Perhaps I am being Dr. Dim so I would
appreciate help (cheeky I know, seeing as you guys have been so helpful
already) :)

Please don't despair with me ... I do learn, it just goes in slowly ;)

Regards and thanks,


Matt 

> On Wed, Sep 19, 2001 at 12:22:35AM +0100, mtaylor wrote:
>> Me again I'm afraid,
>> 
>> My coding partner thinks that we can use what we need of the kernel lib to
>> develop our own system. The good thing for us about doing that is that we
>> will then understand what is going on.
>> 
>> Does anyone have the time (and/or patience) to list what it is the kernel
>> lib does and very briefly how and why it does it.
> 
> Disclaimer: I doubt this list is complete.
> 
> The kernel-lib...
> 
> - provides the basic ability to add users, grant users access, grant
> users limited quota of objects, stack/ticks/callout-usage, to avoid
> someone going ahead and creating 60000 clones of some object and
> thereby taking the game down.
> 
> - provides the ability for external objects to 'hook' themselves into
> the /kernel/sys/driver.c object (and one or two other /kernel
> objects) so that you will be notified if an object is compiled,
> cloned, destructed, freed, inherited, a file #include'd, etc.
> 
> This is where you would hook up an 'Object DB' that keeps track of
> the inheritance information so that you can write your own 'upgrade'
> command that recompiles whatever is necessary.  This is one of the
> things that is _not_ provided by the kernel-lib. :)
> 
> - provides a basic wiztool (with a very nice 'store results for reuse'
> approach).
> 
> - enforces that inheritables, clonables and 'other' code are in
> separate directories, 'lib/' subdirs for inherities, 'obj/' subdirs
> for clonables and, more recently, 'data/' subdirs for LWOs.
> 
> I'm sure there are other useful things but these are just some that
> come to mind right now.
> 
> Hope this helps,
> 
> Erwin.

_________________________________________________________________
List config page:  http://list.imaginary.com/mailman/listinfo/dgd



More information about the DGD mailing list