Although this message was originally written for the writer of Dikuedit
for Windows, I thought I would also send it to the circle MUD mailing
list for anyone who is interested in this program and/or it development.
This is a lengthy message containing bug reports and suggestions for
improvement, so don't read on if you are not interested.
---
I just took a look at your program and thought I would give you some
feedback. The following is meant to be constructive criticism and my
personal viewpoint, please treat it as such.
What I Considered to be bugs:
1. The Zone Number field should be able to take 0 as a valid number (as
opposed to 1-319).
2. Right now you must run in 800x600 resolution or beter for the window
to fit on a 14" screen. (This was already documented in the readme.wri
file.)
3. Overwriting of existing files is not error checked. (This was also
documented in the readme.wri file.)
4. The Room Description field is not capable of displaying 79 characters
if a lot of the characters are capital or numeric. You can enter the
data, but the window is not large enough to display it all at once. I
would reccomend a larger window and/or different font.
5. The Exit Description field is too small. I couldn't even fit in one
complete line of text, let alone a few. It should be able to handle at
least three to four lines.
6. When you create a new object the type initializes to 'armor'.
however the information box remains blank and the Value 0 through Value 3
fields are labeled as 'Value 0' to 'Value 3'. This also occurs in the
Spell information window. The spell value is initially armor, but all
the other fields are blank.
In both cases, the other fields and information windows should be filled
in according to the default type. As it is now, you must actively
re-select the default type in order to get the other information to fill
itself in.
7. The Extra Description button for objects doesn't work at all.
8. The five item limit on shops it way too small. Fifty is more like it!
9. The Spell Information and Zone Statistics windows do not close when
you exit the main program. You must manually close them yourelf.
10. When you reset the fields of a room, the directional information is
not reset. Although there is another button to do this, I can see no
reason at all not to reset them when you want to reset an entire room.
Nothing major, but a bug in my opinion.
11. When you reset an object, although the fields reset, the little x's
next to the modifier boxes are not erased. The modifier values are set
to 0, but the actual boxes remain checked. Definitely a bug.
12. When you reset a shop, the shopkeeper messages are not reset to
their default values. In fact I saw no way to restore those default values.
Suggestions for Improvement:
1. The program is written to fit a screen instead of being written for a
resizable window. The best programs for Windows are able to resize
themselves to fit in whatever size window you want. While this might not
be an easy improvement to make, it would be a nice one. An easier
improvement would be to force the program to run maximized. Running it
regularly you only get the strip which appears at startup, and as soon as
you do something it maximizes itself anyway. While this isn't a major
problem, it is a funky feature.
2. In terms of readability and clarity, the screens would look much
nicer if all of the data entry fields were white and everythign else was
grey. While this is mostly the case, many of the fields read as follows:
Zone Number: __
Where _BOTH_ the marking 'Zone Number: ' and the data entry box '__' are
white. Putting markings on grey backgrounds makes it even clearer that
they are marking which cannot be changed. Again, not a major problem,
but something that greatly improves readability, neatness and clarity.
3. The way you have done description fields is a pain to edit. You must
hit tab to get to the next line, and if you want to go back and insert
text, you may as well retype the entire thing, because you have to
manually change each line so you can type into it (by this I mean that
each line is usually full, and when you go to insert some words, you just
get beeps when you try to surpass the 79 characters per line).
To improve upon this you should make the description fields one large box
that is 79 characters wide and several lines long. Text should wrap
around when it exceeds one line, and the entire description should be
considered as one field. Being able to hit return within the box to get
to a new line would also be desireable. Basically when you are typing
a description you want a mini editor. Take a look at how your favorite
editor operates and try to incorporate those ideas and premises.
4. Each box should be well marked and able to display the entire
contents of the field it represents. Several of them aren't able to
display all of the words, and the Keywords field on a room direction
simply is not marked and is not big enough to display anything more than
five or six characters.
5. The words 'File Number' at the top of each screen would read better
as 'Zone Number'. This is more my opinion than constructive criticism. :)
6. When you add a shop, room, object or mobile to the existing file, it
would be nice if the fields for the next number were automatically cleared
and/or a message was displayed saying that the shop, object, room or
mobile was added successfully. As it is now only the virtual number
increases and that can be hard to notice. Another argument for clearing
allt he fields is that you rarely need to reuse the information form the
last object, shop, room or mobile on the next one. (See reccomendation
about cloning function.)
7. Since Circle code changes so rapidly and since people constantly
alter the code to suit their needs, it would be much nicer to allow the
program to read from .def files as is done with Dikued. This allows you
to update and modify affect flags, wear positions, spells, etc.. This is
_ESSENTIAL_ for any program that is going to last for over a year. It
makes the program more dynamic and adaptable to changes that coders make
to their MUDs.
8. Add a remove end of file information button so you don't force people
to do it manually. Actually it would be nice if it was automatically
removed when you opened the file and was automatically put abck when you
closed it. The user shouldn't have to deal with that crap.
Suggestions for more features:
1. Add a clone feature so you can clone an existing object, zone, room,
mobile or shop.
2. Add a Dikued style simulator which would enable you to walk through
your zone, look at mobiles, look at objects, look at directional
descriptions, look at doorstates, etc.. This would be very helpful in
checking to see tha you have put your zone together correctly.
3. Add the ability to print maps of your zone to the screen and to a
printer. (This was alluded to as a feature for V3.0 in the readme.wri file.)
4. Add the ability to make files in other MUD formats, and built in
functions for converting a zone from one format to another.
5. Add a list function (which can take a zone number as an argument)
which lists out al the objects, mobs or rooms for the specified zone (for
all zones if none is specified). It could be a simple menu item which
opens up a window with a listing of what is requested. This is very
useful if you want to create a zone and use existing objects or mobs in
it. It would also be pretty nice to be able to print out this list.
Not tested:
1. Using the program on existing files.
2. Using the program on multiple zones.
3. Any of the help files or information.
4. Running in other resolutions or Window's settings. (I was in 800x600
256c resolution, 386 enhanced mode.)
I hope this information helps your development. I would also like to
make a plea to you to release the source code with your program so that
others can modify it to suit their needs. As someone who uses source
code for examples, modifies source code to make improvements I think are
needed and sometimes releases modifications I think are good enough to
help other people out, I can't tell you enough how much I reccomend
releasing source code.
If you want/need any help on this project, contact me at the address
below. I would definitely reccomend looking at Dikued (a widely used
area editor/creator), and the version I modified which cleaned up the
program a bit. Contact me if you need help locating these programs.
Good Luck,
##=====================###================================================##
|| Joshua Sky Barrow ||| Harvard University Faculty of Arts and Science ||
##=====================###================================================##
|| 19 Central St., #28 ||| "If you can imagine it, you can achieve it. ||
|| Somerville, MA ||| If you can dream it, you can become it." ||
|| 02143-2834 ||| Unknown ||
##=====================###================================================##
|| (617) 666-0859 ||| E-mail: jsbarrow@fas.harvard.edu ||
##=====================###================================================##