Crossfire Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CF: Re: apply() cleanup
- To: crossfire (at) ifi.uio.no
- Subject: Re: CF: Re: apply() cleanup
- From: Jan Echternach <>
- Date: Mon, 15 May 2000 16:35:06 +0200
- In-Reply-To: <>; from on Fri, May 12, 2000 at 08:04:59PM -0700
- Mail-Followup-To:
- References: <> <> <> <> <> <> <> <> <>
- Reply-To: Jan Echternach <>
- Sender:
On Fri, May 12, 2000 at 08:04:59PM -0700, Mark Wedel wrote:
> It is possible. If we actually get to the point of servers being up a year, we
> can re-examine possible overflow at that time. Note that not just the crossfire
> server needs to be up that long, but also the hardware it is running on. While
> not impossible, I'd put that in the unlikely category. I think for now we can
If 1000 objects are created per second, the time until overflow drops
to a month. I don't have any real numbers. The 100 objects/second was
just an illustration of how fast 32 bit values can overflow.
> assume the op->count will remain unique, and if we do get a to a point where it
> may not be, we re-examine it (perhaps making it 64 bit or the like)
But a 64 bit op->count looks like a reasonable solution. Re-examining
the issue when an overflow actually happened could be a bit late,
because a solution without op->count would require major design changes
like reference counts.
> just in the case of a blocked one, we can not move the player). The answer to a
> closed trap door would be the same as answer above, which I really don't have a
> good answer for what the right behavour should be.
I don't have any good answers either. But because a rune should only
below a trapdoor because map desinger intentionally put it there, it
doesn't really matter if processing objects in check_walk_on()
continues after the object has moved. At worst, this is an obscure
feature, but I can't think of a case where it would be a bug.
The current state of my apply() cleanup patch is that all objects below
an object are processed in check_walk_on(), regardless of whether it
was moved during processing. I'll just keep it this way.
--
Jan
-
[you can put yourself on the announcement list only or unsubscribe altogether
by sending an email stating your wishes to ]