Feedback on Barnyard Diku Area Creator V1.2

From: Mr. Wizard (jsbarrow@husc.harvard.edu)
Date: 09/09/94


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              ||
##=====================###================================================##



This archive was generated by hypermail 2b30 : 12/07/00 PST