home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Club Amiga de Montreal - CAM
/
CAM_CD_1.iso
/
files
/
187.lha
/
DMF_v2.5
/
dmf.doc
< prev
next >
Wrap
Text File
|
1988-04-28
|
14KB
|
300 lines
Dungeon Master's Familiar
Version 2.5
-James Gary
Welcome to the Dungeon Master's Familiar. This is version 2.5 and
is pretty solid to the best of my knowledge. Changes will
probably be made in the future (see coming soon list below), so
send a list of the features you would like to see.
What it is for :
The program is intended to assist Dungeon Masters in the
control of an Advanded Dungeons and Dragons game. It supplies a
simple dice roller, but it's power is in the ability to set up a
database of characters and monsters so that battle can be handled
with simple 'point and click's.
How to use it :
NOTE: You MUST have the file 'arp.library' in your libs:
directory for this program to work!
NOTE: Version 2.0 and beyond are no longer compatible with previous
files. Sorry.
All the source is included for your consideration although it
is not clean at all (sorry), but if you just want to run it type
'dmf' or use the icon from Workbench. Inovatools1 is used, so to
recreate the executable you will have to purchase that product
from Inovatronics. Also you will need the header files and link
libraries from ARP. You will be presented with the main combat
window. This is the heart of the Dungeon Master's Familiar. From
this window you will be able to quickly resolve those long and
confusing battles without having to search those awful tables or
remember what weapon is being used by everyone and rolling those
dice off the table. I did something a little unusual here, so
pay attention. The right mouse button has been trapped, so that
it does not work as a menu button (I used no menus). Instead the
right mouse button selects a defender from the list of
characters on the screen. The left mouse button selects the
attacker. When the defender is selected (by clicking with the
RIGHT mouse button) the attack will be resolved and the results
displayed at the bottom of the window. The battle can be
repeated by clicking on the repeat gadget or reversed by
clicking on the reverse gadget. Also you can select a new
defender with the right mouse button and the attack will be
immediately resolved. To select a new attacker you must of
course use the left mouse button, but in that case you must
reselect the defender before the attack is resolved.
The extra gadget holds a real suprise. Thanks to
inovatools1, DMF now has pop-up menus. These will allow me to
greatly enhance the program by including menus and still be able
to trap the right mouse button. For now you are given two
choices: turn and save. Moving the mouse to turn after clicking
extra will present you with a list of turnable creatures. Move
the mouse until the one you want is highlighted, then click
again. The results of the turn will be displayed in the combat
resolution box. The program accurately follows AD&D rules for
turning, but does not check to see if the character doing the
turning is a cleric. Save will give you a list of things to save
against. Select the effect as you did the turning above and the
results will be displayed in the combat resolution box. Every
resonable attempt is made to follow the AD&D rules on turning,
but please read the warnings in the discussion of the editor
window below as monster saves are approximated (but can be made
exact with a little effort on your part). For both saving and
turning, the current attacker is used (the highlighted character
on the main display), and the name is displayed so you can
easily see if you have the wrong character selected. The empty
menu selection between save and turn is there only for
readability.
The edit gadget will bring up a character editor window. The
characters are initialized with reasonable, though useless
information that you should change for your scenario. The edit
window is filled with gadgets (thank you PowerWindows!) that
define all the pertinent (to combat) characteristics of a
character (or monster of course). Name is a string gadget limited
to 15 characters. This is of course the name that will appear in
the combat window, so choose it to be easily recognizable. The
other gadgets are pretty well self explanatory. Level/HD is an
integer gadget for characters. If you are working on a monster,
use the Monster Hit Dice gadgets on the right hand side of the
window. The Level/HD gadget will display the column that the
monster would roll in on the monster combat table and you can use
the HD gadgets to select the level of any character class that
you like (up to level 12). Select size for the monster and the
bonuses against the two different sizes of opponents. Notice that
there is no global hit bonus, you must include that in the bonus
to hit on both sizes. You must also include any numbers normally
added to the damage even if not a magical bonus. For example: a
character has +2 damage and rolls 2d6+2. Set numdie to 2, typedie
to 6, +dam to 4.
The next and previous gadgets will move you forward and back
in the list of characters. The window close gadget will take you
back to the combat window and redisplay the character list. You
MUST quit the editor before you can use the combat system again.
The first gadget (name) is automatically selected so you can
begin editing it. When you press return the next gadget will be
selected and so forth. When the last string gadget is finished
the next character will come up, just as if you had selected the
'next' gadget. This makes it fairly easy to enter your characters
without going back and forth between the mouse and the keyboard.
For now, you will have to use the mouse to select the size, job,
and monster hit dice gadgets. This is a little inconvenient, so
you may wish to enter all the info you can with the keyboard,
then go back and fill in size, etc. with the mouse. I can't think
of any convenient way around this. Suggestions welcome.
The saving throw gadgets will automatically be filled with
the appropriate numbers whenever you change level/HD or character
class. These are straight out of the saving throw table and do
NOT reflect any magical or ability or race bonuses. You must add
these in yourself and enter the proper number in the appropriate
saving throw gadget. The automatic calculation should be pretty
close for most characters, but the rules for monster saving
throws are more complex. I made the best approximation I could
without requiring much more detailed monster information. I
suggest that you carefully compute these numbers according to the
rules in the Dungeon Master's Guide and enter them manually. On
the other hand, it has been my experience that characters save
much more frequently than monsters, so you may just wish to
ignore monster saves and use the book instead. Also be aware
that changing level/hd or class will revert the saves to the
standard values and magical/race bonuses will have to be entered
again.
The lower right corner of the edit window presents you with
an 'extra' file mini-display. This will allow you to retrieve
characters from another file and place them into your current
editable list. Clicking 'open' will give you the standard file
requestor to load a file. The program will construct a list of
the characters in that file and display their names in a fashion
similar to the way file names are displayed in the file
requestor. Clicking on one of those names will highlight it,
then clicking on the 'paste' gadget will copy that character to
the current character of the edit window. You have the standard
up/down arrows and scroll bar to move throught the list. In this
way you will be able to build as many files of characters as you
wish and copy individuals into whatever files you wish to use. I
am planning to enter all the monsters from the Monster Manuals
and Fiends Folio into files in the near future. These files are
assumed to have been saved from the DMF, so they each contain 60
characters. Don't forget to save your file after you have
included the monsters that you need.
In the combat or editor window you can save your file. You
will be presented with Arp's file requestor. You'll need
arp.library in the libs: directory. Read lets you load a file
similarly.
The roller gadget will bring up a dice rolling 'calculator'.
Just click on the size of die you want to roll and the result
will be displayed in the box at the bottom of the window. You may
continue to use the combat window while the roller is up, though
you may wish to drag the roller around. If you close the roller
window, clicking the roller gadget in the combat window will
bring it back up. Clicking the roller gadget in the combat window
while the roller window is up will bring it to the front (nice,
huh?). Unfortunately, when the roller window is active, the
combat window cannot intercept right mouse button clicks, so you
will have to click in the combat window (with the left mouse
button) before you can select a new defender. This unfortunately
selects a new attacker. I can't see anyway around this, but am
open to suggestions. In DMF 2.5 and later, the roller also keeps
running totals in the lower right hand corner of the display.
Next to the total is a gadget to clear the total. Also an
integer gadget is provided the user to input any number he may
wish to roll (eg. 7 for day of the week). This gadget will
seldom be needed because AD&D rules revolve around the standard
set of dice, but occasionally will be useful. There is a
boolean gadget next to that integer gadget that will re-roll the
user specified number. Beware of clicking the re-roll gadget
befor entering a number. Also be sure to press enter after
entering a new number into the integer gadget. The program will
not know what number you want until you do.
To end the program, click on the close gadget of the combat
window. It will automatically close the roller window if it is
open. It will not work if the editor window is up, so close it
first.
Technical notes:
The combat and editor windows were developed with the
assistance of the PowerWindows2.0 program from Inovatronics. The
mutual exclusion of gadgets is accomplished with a set of
programs developed by Davide P. Cervone (thanks Davide!). The
roller window was based on a calculator program written by the
great John Toebes (thanks John!). File requestor courtesy of the
AmigaDos Replacement Project people, keep up the good work guys!
The pop-up menues and the scrolling extra file list was
accomplished using Inovatronics' Inovatools1. Special thanks to
Fred Van Eijk for his assistance with ActivateGadget(). Be sure
you wait for Intuition's ACTIVEWINDOW message before you use
this one in your own programs!
History :
This is the latest in my experience with D&D assistance
programs. The Dragon magazine published a program several years
ago written for the TRS-80. I typed it in and used and enhanced
it over a period of several years. An old room-mate, Jim Northrup
ported it to the Commodore 64 and made some improvements. We
spent a great deal of time discussing the user interface and he
now has an excellent version written in GWBasic running on a
Tandy 1000. I wrote a version from scratch in AmigaBasic, but
wasn't happy with the response or my user interface after
testing. After much consideration I finally got around to writing
a C version, which you now have. It bears little resemblance to
the original beyond intent, but I think is much more useful now.
The saga is not over. I intend to add several features (see
'Coming soon', below).
Coming Soon :
1 - File requestor, top of the list! *****Done in 1.1a*****
2 - Improved output. I am not happy with the results display
and hope to make it more eye-catching. *Done in 2.0
3 - Additional functions
a) Random encounter generator hooked to a timer.
b) Undead turning handler **Done in 2.5**
c) Thief ability rolls
d) Critical hit/miss option
e) Saving throws **Done in 2.0**
4 - Quick manual combat routine for those monsters
you neglected to put into the database before the game.
5 - Your suggestion here.
What you can do :
Modify the code to your liking. I would appreciate a copy if
you do. Better still, let me know your suggestions so that I can
incorporate them (I love programming this machine!). I am also
interested in what you think about the user interface of the
program. How can it be easier to use? The best way to reach me is
through the US mail at:
James Gary
5202 Vassar Ave.
Louisville, KY 40258
or call me (not too early please) at (502) 935-3072.
If you upload this anywhere, please include the entire arc
(source and stuff). Don't send any money! I don't want it and it
won't get you on a list of updates or anything. This is NOT
shareware. It is free. Use it, abuse it, give it away, just
don't sell it please except for media cost on PD disks like
Fred Fish, etc.. Above all enjoy it. My experience with similar
programs is very favorable, I hope you find it useful. Even if
you have no suggestions or complaints, I would appreciate
hearing from you if you find it useful. Thanks for taking the
time to read all of this. -James Gary 3-8-88
***********************************************************
1.1A Additions and changes
1 - Added Arp's file requestor. Really should not have released
it at all without one, but got impatient.
2 - Greatly improved friendliness of editor by auto-selecting
string gadgets as you use them. Thanks to Fred Van Eijk for
help with ActivateGadget() call.
3 - Added 'read' and 'write' gadgets to editor window - stupid
oversight.
-James Gary
3-15-88
***********************************************************
2.0 Additions and changes
1 - Fixed minor bugs
a - Damage vs. large now correctly handled
b - Editor changes reflected in current attacker
2 - Added Saving throws. Note that this changes format of the
data files, but a conversion routine should be easy enough
to write if you don't want to throw away those old files.
3 - Improved appearance of main combat window by highlighting
attacker name.
-James Gary
7-1-88
***********************************************************
2.5 Additions and changes
1 - Added pop-up menus
a - moved saving throws to menu
b - added undead turning
2 - Improved roller window
a - added running total and clear
b - added user specified number and re-roll
c - re-worked with PowerWindows
3 - Added extra file capability to editor window
-James Gary
8-1-88