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

From: George Greer (
Date: 07/30/01

On Sat, 28 Jul 2001, Geoff Davis wrote:

>Congrats on the global buffer removal. I think that was probably my
>number one pet peeve.

Hindsight being what it is, they were deemed not worth it ultimately.  The
intention was in the right direction though.

>* Money should be an object, not a field on the character. (Yeah, you
>  mentioned this one).

  > put 152 coins in bag
  > drop bag

No funny special casing.  The only requirement would be handling stuff

  > put 2 sword in bag

so 'coins' wasn't some hideous special case.  It'd probably also support
's' at the end to at least be somewhat grammatically correct.

>* 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?).

If we fixed invisibility to break a fight then we could probably remove the
Void.  The problem being mass spells that would still hit people linkdead
but invisible, unless we special-cased it.

>* 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.

It's a way to rid yourself of an item and seems similar.

>* 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.

Stuff designed years ago does tend to show its age but I am not inclined to
change anything about shops at the moment.  Maybe post-CircleMUD 3.1.

>> * Why is the donation code 'room_0', 'room_1', etc. instead of an array?
>    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 }
>    };

I'd go:

  room_vnum     room;
  int           hometown;

Then 'hometown' would actually mean something.  Gods would simply have a
hometown of the Immortal Complex.  What to do for a frozen person without
losing their proper hometown would be interesting.

>> * 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.

I meant the calendar, which causes a lot of little changes to magical
constants all over the code.

George Greer

   | FAQ: |
   | Archives: |

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