[DGD] Re: Substituting LWOs for persistent objects

Mikael Lind mikkelin at gmail.com
Mon Dec 18 22:20:03 CET 2006


Hello,

2006/12/18, Shentino <shentino at gmail.com>:
> I agree with dworkin, but for another reason.  LWOs that are indexed
> by an object handle, may themselves need an index for their LWOs...to
> handle cases of a few apples and gold pieces inside a satchel being
> carried in a backpack worn by the ranger...lol.

For this reason, I am considering a restriction: only persistent
objects can be environments. I am not entirely happy with that
restriction though, because it will not suit muds with Roguelike-style
maps, at least not if each tile would be its own object. It will do
for now, though.

I intend to support call-outs for distinct LWOs also, though I am not
entirely sure what persistent object should manage the call-out of a
distinct LWO. I am thinking the environment, but then there will be a
lot of adding and removing of call-outs as distinct LWOs move around.

> I would be wary of globally unique integers...keeping them unique
> could cause concurrency problems when MP comes along.

You could partition the number space among several persistent object
nodes to reduce MP problems. Each node could represent a creator or a
directory. You would use the most significant bits of the number to
identify the node, then let each node assign the least significant
bits. An alternative partitioning scheme would be to use the master
object index for the LWO as part of its number.

I will probably use object names for now, with clone numbers of -2 or
less. The clone numbers of distinct LWOs are not guaranteed to be
globally unique on their own, but the object name in its entirety will
be.

Regards,
Mikael



More information about the DGD mailing list