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