Re: [CODE] Zone Numbers

From: Minturn.Del.PRC.Oceana (Del@PRCOceana.Corona.Navy.Mil)
Date: 05/15/00


>
> On a MUD which I am currently on, we are trying to change the way zones
are
> defined to allow for 1000 number zones (0-999) instead of 100.  Most of
the

>> I don't have the code handy, but have you checked the section
>> where it creates "new" zones? As it sets the beginning and
>> ending numbers. (possibly grep for 99)

        And don't forget, you'll have to change the variable types from
short ints to something larger, or you'll run out of zones before you run
out of rooms.  Also, I don't believe stock circle requires that you have
zones of 100 rooms - I'm not sure about Oasis or other systems though.
Something like "grep top *[ch] |grep zone" ought to turn up a few things
though - zone_table[zone_num].top is the top most room in the zone table
for a zone....

                                                        PjD
----
Reply:

Changing the int's to larger is another task in itself and difficult.
Making zones 200 rooms vice 1000 might be more logical. (Maybe even 500
rooms)

Oasis 2.x
genzon.c


fprintf(fp, "#%d\nNew Zone~\n%d 30 2\nS\n$\n", vzone_num, (vzone_num * 100)
+ 99);

further down:

 /*
   * Ok, insert the new zone here.
   */
  zone->name = str_dup("New Zone");
  zone->number = vzone_num;
  zone->top = (vzone_num * 100) + 99; /* <------  */
  zone->lifespan = 30;
  zone->age = 0;
  zone->reset_mode = 2;


     +------------------------------------------------------------+
     | 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