Opened 3 months ago

Last modified 2 months ago

#11119 new defect

QFG1VGA: eating the Kobold's mushrooms assumes they're mixed with the Fairy ones

Reported by: lwcorp Owned by:
Priority: low Component: Engine: SCI
Keywords: original Cc:
Game: Quest for Glory 1

Description

When your inventory's only mushrooms are the Kobold's ones, you still get a message about mixing those mushrooms with the Fairy ones.

I assume they could have had even worse affects (maybe death?) if they weren't mixed.

Attachments (1)

image-20190831-103827.png (91.3 KB ) - added by lwcorp 3 months ago.

Download all attachments as: .zip

Change History (4)

by lwcorp, 3 months ago

Attachment: image-20190831-103827.png added

comment:1 by lwcorp, 3 months ago

It should be mentioned maybe it was the Kobold himself who mixed them.
But the "It must have spent its entire life in these caves!" message suggests it's unlikely he went to the sunny or glowing (depends on day or night) Fairy Ring...

comment:2 by digitall, 2 months ago

Component: Port: Win32Engine: SCI

comment:3 by sluicebox, 2 months ago

Keywords: original added
Priority: normallow

This is behavior is the same as in the original, and the whole mushroom thing is a mess of unhandled edge cases.

A flag is set when you pick fairy mushrooms, and if you eat kobold mushrooms afterwards then you get this message. The flag is never cleared and it's only purpose is to show this message. It doesn't affect health or anything else.

Really, the problem is that flags are used to track which mushrooms you have, but that's too simple to handle the complexities from being able to mix, eat, sell, and arbitrarily drop individual mushrooms most anywhere. I liked this game a lot as a kid (and still do!) but would get frustrated with these features whose consequences weren't handled.

I'm setting this to low priority since it's a cosmetic bug in the original. I don't see a clean fix, we'd have to inject flag clearing in several places, and even then there will always be holes in the mushroom logic since you can drop them and that wasn't taken into account.

Note: See TracTickets for help on using tickets.