Re: Geoff's pet peeves [WAS: least favourite quirk]

From: Geoff Davis (azrael@laker.net)
Date: 07/28/01


Hey, George:

Congrats on the global buffer removal. I think that was probably my
number one pet peeve. Some of my remaining pet peeves might be such as
the following:

* Money should be an object, not a field on the character. (Yeah, you
  mentioned this one).
* CircleMUD still relies on the existence of room #0 and a few others.
  This reliance should be removed, or at least be made flexible enough
  to be changed without having to recompile the game.
* Moving linkdead characters to the void is kind of a lame way to
  prevent them from being attacked. The whole "rescued by the gods"
  thing needs to go! :) I would *prefer* that linkdead players are
  just invisible to everyone but imms (perhaps add a !(ch)->desc to
  the INVIS_OK() macro, I think?).
* Split the drop code from the donation code. While functionally these
  things are similar, there are special cases written in that depend on
  which subcmd is used. These commands are *not* conceptually equivalent
  and should, IMHO, be therefore separated.
* Shops are very convoluted. I'm not sure that pl20 is the right place
  to change them, though. Perhaps 3.1? They need some serious cleanup and
  re-design, IMHO.
* There are some more, but I can't think of them right now.

> * Why is the donation code 'room_0', 'room_1', etc. instead of an array?

I don't use donation rooms, personally, so I never cared about this
functionality. This would prolly be a reasonable change. I might suggest
making all rooms configurable from the same location, such as:

    #define ROOM_CFG_DONATION        (1)
    #define ROOM_CFG_RENT            (2)
    #define ROOM_CFG_START_FROZEN    (3)
    #define ROOM_CFG_START_IMMORTAL  (4)
    #define ROOM_CFG_START_MORTAL    (5)

    struct room_cfg_data {
      room_vnum      room; /* Vnum of room */
      int            type; /* Type of room; see above */
    } room_config[] = {
      { 1204,    ROOM_CFG_START_IMMORTAL },
      { 3001,    ROOM_CFG_START_MORTAL },
      ...
      { -1, 0 }
    };

> * Why isn't the time scale easily changeable?

This is actually a remarkably simple change to make. One could argue
either way for it being a part of the mainline distribution.

-Geoff

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/06/01 PST