Re: [Newbie] Room/Zone limitations

From: Ron Cole (rcole@ezy.net)
Date: 06/19/00


>I notice in Oasis I'm not permitted to initialize a new zone > #326 (room
>#32699).  I presume this limitation is due to a signed 16-bit integer
>value for the room number (since zone 327 would imply room 32799 which is
>greater than 2^15 or 32768).  I haven't looked into the code yet to verify
>this, so feel free to flame, but have any of you run into a problem with
>this limit?  I can, for example, see that this would limit a 3-d world to
>be slightly smaller than a 32x32x32 room cube.  Would it, in anyone's
>opinion, break things to switch to an unsigned int or even a long?
>Obviously, special provisions would have to be made for location -1 in the
>former, but is this the only negative value used?  Seems like an awful
>waste of rooms if so.  In the case of the latter, are there potentially
>significant memory limitations with this?  Obviously 2.15 (signed) or 4.3
>American million (unsigned) would be overkill, but that leaves "room" for
>expansion, so to speak.  Since the worldfiles are in ASCII (I assume
>that's default for most people--could be mistaken), this isn't likely to
>invalidate them or require a file conversion I don't suppose.  Opinions?

Yes, its a short (16-bit) int, we changed ours to a long, but I've kept the
cuurent limit at 998 zones so I wouldn't have to mess with the special number
used in the zone files (#99999).  If we run out of room again, it won't be
that big of a deal to code around that either, will just require a different
end of file marker.  It does affect your pfile (load room) and rent files, so
they'll have to be handled in some fashion.  Also, you'll need to look around
for places where vnums and rnums are used in scratch variables and make sure
those are changed too.  It took me all of 2 or 3 hours for the whole project.
I moved the load room to one of the long spares (just makes everyone load at
recall once) and I wrote a conversion program to handle the rent and house
files.

This is a good thing to do even if you'll never need more than 32,000 rooms,
as it gives you more room to organize your world, you can leave more room
between zones for expansion, assign large ranges of zones to each builder,
etc.


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     |  http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html  |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 04/10/01 PDT