Zone flags rock. But you should take it further, esp for use with your builders. Try this zone struct: struct zone_data { char *name; /* name of this zone */ char *author; char *editor; char *levels; byte status; byte source; int lifespan; /* how long between resets (minutes) */ int age; /* current age of this zone (minutes) */ int top; /* upper limit for rooms in this zone */ int reset_mode; /* conditions for reset (see below) */ int number; /* virtual number of this zone */ long bitvector; /* Bits for zones */ struct reset_com *cmd; /* command table for reset */ int idle_time; /* if zone is idle for <age> minutes, purge it and wait for for players to to enter */ /* * Reset mode: * * 0: Don't reset, and don't update age. * * 1: Reset if no PC's are located in zone. * * 2: Just reset. * */ }; It is what we use on PhoenixMUD and it is extremely useful. We use the author/editor/levels fields to fill in the areas command. Status and Source are defined by the following arrays: /* ZONE Status */ const char *zone_status[] = { "In Progress", "Waiting to be Proofed", "On Hold", "Finished", "Active", "\n" }; /* ZONE Source */ const char *zone_source[] = { "Original", "Stock", "Re-Write", "Public", "\n" }; These can be used to help calculate how original your world is. You add in editing capability to zedit and then not allow most builders to set a zone to finished/active. If they edit anything in a zone with these settings, we set it back to In Progress, and only Active zones get moved the the playing port. It is a VERY nice system and has really improved the quality of our zones (even if it does bug the heck out of some builders.) One last thing, additions to show stats to use this stuff: Current stats: Players: 25 players in game 22 connected 678 registered 825634503 top idnum World Database: 1637 mobiles 2737 prototypes 4562 objects 3141 prototypes 9230 rooms 142 zones 6 paths Zone Sources: 73 Original 35 Stock 10 Re-Write 24 Public Zone Status: 10 In Progress 8 Waiting to be Proofed 1 On Hold 0 Finished 123 Active Internal Buffers 0 large bufs 6770 buf switches 2 overflows 19095939 buf cache hits 1669177 buf cache misses 92792k Total Bytes writen to players Up since Tue Mar 30 15:32:18 1999: 0 days, 18:21 --Angus - masque@phoenixmud.org Benjamin Draper <satrycus@DRACHENBURG.DEMON.CO.UK> on 03/31/99 08:54:24 AM Deltanet wrote: > > Maybe this has been discussed, I haven't seen it. > Adding in the zone file(zedit.c) a field called ZONE STATUS > This field would only have two options. OPEN/CLOSED > Why stop at 2 options? Why not have zone flags? Just a simple copy of the room flag code, and you can set all sorts of things. We're using a 'CLOSED' zone flag which stops all non-immortals from entering it, and this flag is also set on any objects and mobiles that are created, thus stopping normal players handing them or attacking them. We've also got !PORTAL, !RECALL and !TELEPORT flags, an ARENA zone flag, and a CLAN zone flag which designates the zone as set aside for clan construction for our clan olc. I think they're useful, although some could argue that I'm just mimicing the affects of some room flags. -> Ben +------------------------------------------------------------+ | 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 : 12/15/00 PST