[DGD] Recompiling object trees
Jason Cone
jcone at cs.tamu.edu
Sat Feb 21 19:06:12 CET 1998
-----Original Message-----
From: harte at xs4all.nl <harte at xs4all.nl>
To: dgd at imaginary.com <dgd at imaginary.com>
Date: Saturday, February 21, 1998 11:28 AM
Subject: [DGD] Re: Question for mudlib developers
>Quoting Jason's message from 21 Feb:
>[...]
>| > 1) If I made a dramatic change to something fundemental, like the
>| > auto object, it seemed cleaner to restart the mud from scratch.
>|
>| Agreed.
>
>Which with the current DGD version is no longer an issue, provided you
>build a mudlib (or lower level lib to base it on) to be able to
>recompile a whole tree of objects, starting from the auto-object if you
>have to.
>
>[...]
I'm curious as to what you mean by this. Doesn't this imply keeping track
of the inheritance tree for every object? I've also had poor luck in
recompiling the auto object. For example: I start the MUD, I recompile the
auto object (*), and I type 'who'. I get the following error:
/bin/player/_who.c, 4: inherited different instances of /sys/auto/auto
(*) When recompiling an object, if it's inherited by an object (in this
case, the auto object fits this description) it's destructed as per the
following code:
[...]
oObjectToUpdate = find_object(sFile);
if(!oObjectToUpdate)
write(sFile+" is not loaded.\n");
else
{
if(catch(compile_object(sFile[0..strlen(sFile)-3])))
{
destruct(oObjectToUpdate);
write(sFile + " will be reloaded at next reference.\n");
}
else
write(sFile + " has been updated.\n");
}
[...]
Perhaps I've made a fundamental error or I'm missing something that is not
explicitly stated. Thoughts?
||==================================================================||
|| || "Hard work spotlights the character ||
|| Jason H. Cone || of people: some turn up their ||
|| Dept. Computer Science || sleeves, some turn up their noses, ||
|| Texas A&M University || and some don't turn up at all." ||
|| jcone at cs.tamu.edu || - Sam Ewing ||
||==================================================================||
List config page: http://list.imaginary.com/mailman/listinfo/dgd
More information about the DGD
mailing list