[net.games.emp] Bug in `shipdamage'

kcwellsch@water.UUCP (Ken C. Wellsch) (07/05/85)

Bug Report
Function: shipdamage()
Export Version: Jun 9, 1984.

  I was looking through the `shipdamage' function from
  "Export Version of Jun 9, 1984" and noticed that the
  items in `shp_v[]' are not `correctly' damaged.

  Each entry in `shp_v[]' should be checked to see whether
  it is an item using vchrstr, (vchr[type].vch_flag == VCH_ITEM),
  which then implies that it can be damaged.

  In fact, whatever sector currently resides in `sect' is
  indexed to get the type rather than the ship structure.
  The index range is correctly obtained with respect to the ship
  in question but `sect.sct_v[i].v_type' is indexed rather
  than `shp->shp_v[i].v_type' for the entry type.
  
  This implies that some unrelated type is obtained and if it
  should be an `item' then whatever is contained at that index on
  the ship will be damaged. Naturally the items damaged on the
  ship will not follow a logical pattern, and should the type
  field of whatever is in `sect' contain a bizarre value, then
  the indexing of `vchr' will be out to lunch.

  I should expect such an obvious bug has been fixed in later
  releases...

					Ken Wellsch

------
Ken C. Wellsch
{decvax,clyde,ihnp4,allegra}!watmath!water!kcwellsch

ewa@sdcc3.UUCP (Eric Anderson) (07/17/85)

This reminds me of a bug associated with sailing over mines. I don't know if
it was ever fixed. If your ship was damaged below 20% it kept sailing until
it ran out of mobility. Only when you stopped with 'h' did it sink.
And if you killed the process, the damage was never inflicted.

Eric Anderson, UC San Diego