[comp.sources.games.bugs] Omega bugfix

steve@vsi1.UUCP (Steve Maurer) (02/17/88)

    When doing advanced research in the library, your reward
may possibly be an increase in intelligence.   Unfortunately,
the code only increases your maxiq, not your iq.  The fix is:

osite.c (l_library) approx line 951:

< mprint("You feel more knowledgeable!");
< Player.maxiq++;

> mprint("You feel more knowledgeable!");
> Player.iq++;
> Player.maxiq++;

					Steve Maurer

shefter-bret@CS.YALE.EDU (Bret A. Shefter) (02/18/88)

*** REPLACE THIS LINE WITH YOUR MEmunch, munch, smack gulp <burp>

In article <305@vsi1.UUCP> steve@vsi1.UUCP (Steve Maurer) writes:
>    When doing advanced research in the library, your reward
>may possibly be an increase in intelligence.   Unfortunately,
>the code only increases your maxiq, not your iq.  The fix is:
[deleted]
>                                       Steve Maurer

    You mean this is a bug? I thought it was a feature! (Seriously!)
    Is it time for a rec.games.omega yet?
						     Spectre
    From the only slightly twisted mind of...
	shefter-bret@yale.ARPA                  * DISCLAIMER *
	shefter@yalecs.BITNET                 It's not my fault!
     ...!ihnp4!hsi!yale!shefter
     ...!decvax!yale!shefter            "Elementary, my dear Riker...sir."

dgibbs@bnr-fos.UUCP (David Gibbs) (08/05/89)

This is a fix for a small but annoying bug in the inventory code.  The
symptom of this bug was that a players immunities had a tendency to 
disappear after a while, even though they were generated by a magic
item that was supposed to give a permanent (while worn) version of that
effect.  The cause was that items that were taken directly from in use
to the pack did not have the in use flag set to false, so if they
were later retrieved from the pack and dropped, the ability was lost
a second time, leaving it permanently lost.  (Until you could get two
items giving that ability. But you could then lose it even more.)
 
The following change fixes this bug:

File : oinv.c
in procedure: put_to_pack(slot) 
insert at line 994 (of file)

temp->used = FALSE;

(context follows)

      temp = split_item(num,oslot);
      waitflag = (oslot->used && (oslot->number == num));
      conform_lost_objects(num,oslot);
      if (waitflag) morewait();
+     temp->used = FALSE;
      add_to_pack(temp);




Hope this helps.  (Or was I the only person to be bothered by this?)

-David Gibbs
 (dgibbs@bnr-fos.UUCP or ...!utgpu!bnr-vpa!bnr-fos!dgibbs )

schaker@hydra.unm.edu (Stefan Chakerian) (09/10/89)

Meant to post this a loooong time ago, and don't think it's been
posted.  When using Demonblade or something that makes you berzerk,
you will die....  Actually, you never get a shot.  I survived for
a while because some monsters couldn't hit me and eventually fumbled
themselves to death....


In file oaux1.c:

int goberserk()
{
  int wentberserk=FALSE,i;
  char meleestr[80];
  strcpy(meleestr,Player.meleestr);
  strcpy(Player.meleestr,"CLCCCH");		/* change this line */
  for(i=0;i<8;i++)
    if (Level->site


The old line set attack options to ALACAH for Attack, I suppose, instead
of Cut.  With the ALACAH, you never get a shot because "A" isn't an attack
option.

       ^     ...I'll see you on the illuminated side of the moon.
      /_\-__    
___--/ o \__~-- Stefan Yen Chakerian INTERNET: schaker@hydra.unm.edu
    / \_/ \_~-- Post Office Box 4741 BITNET: schaker@unmb
   /_______\~-- Albuquerque,NM 87196 UUCP:{gatech,ucbvax}!unmvax!hydra!schaker