kcwellsch@water.UUCP (Ken C. Wellsch) (10/24/84)
These are bugs that I have found in the `empcre' program. The version
that I am referring to was released I believe this spring (April 84
possibly). These bugs will probably only be of interest to the person
running the game. To fix them probably requires the source for
`empcre'. (Happy disassembling!)
(1) The locations of `big meteor' impacts are supposed to be
spaced apart reasonably well (like volcanos). This doesn't
occur because of a straight-forward bug. To keep impacts
reasonably well spaced `empcre' tries to find a random location
that is above some lower limit (`[lolim= ]') from all the other
impact locations. The function `ndst' is used to find the
minimum distance from an x,y pair to all x,y pairs in a table
(`coord' structure of previous locations). The mistake in
`empcre' is to call `ndst' with the very first location. How
far is a point from NO others? Well, `ndst' says it is zero.
The procedure reduces the lower limit if we have been
repeatedly unsuccessful in finding a random point greater than
this lower limit. Unfortunately the procedure continually try
to find a location, reducing the lower limit to -1 for which the
minimum distance of separation is satisfied. (0 > lolim)
The solution is to compute the first x,y pair then enter
this procedure starting with the second.
(2) The locations of `small meteor' impacts also have the same
problem as in bug (1). The solution is the same.
(3) The last bug I have found is a cosmetic one. When the `world
creator' specifies the `-trace' flag, the map that results is
not correct. A ` ' represents water, a `^' mountains, but where
are the `-' for wilderness?
The problem is the result of adding the wasteland sector (`\' or
`@'). The string " ^s-" is indexed by sector-type, unfortunately
a wilderness sector is 4. So nothing is printed for the
wilderness sectors but a ` '.
The solution is to change this string to " ^s@-".
A final bit of information about `empcre': there is a flag called
`locflag' which is not made public. It is for testing purposes. The
locations of volcanos, big meteor impacts, small meteor impacts, gold
strikes, and oil deposits are destructively changed to sector-types
`s', `*', `+', `g', and `o' respectively. One needs to generate a map
of the world after the `creation' to see this.
Ken Wellsch
{ ihnp4 | utcsrgv | allegra } ! watmath ! water!kcwellsch