Opened 4 years ago

Last modified 2 years ago

#12010 new feature request

SCUMM: MI1: Giving items that Guybrush does not carry causes weird behavior

Reported by: antoniou79 Owned by:
Priority: normal Component: Engine: SCUMM
Version: Keywords: bug, script
Cc: ceztko Game: Monkey Island 1

Description

As reported by youtube user ceztko, there seems to be a bug when Guybrush attempts to give to another character an item that Guybrush does not have in his inventory. The item, for example, can be something laying on the ground, such as the notes in the beach of Monkey Island.

The example given is "giving" the notes on the beach (first screen) of Monkey Island to Herman Toothrot. Guybrush is then stuck in a loop of going through reading the contents of all notes available in the game.

It is possible that the bug could affect other games of the engine.

Here is the full description and steps to reproduce from the youtube video showing the bug:

Funny bug that I encountered at least 15 years ago. Nobody created a video for it yet, so I did it.
Please note: I recorded the video with scummvm, but this is script bug, *not* scummvm. You can reproduce it with original executable in DosBox with PC VGA 256 colors (floppy version) and Amiga version with WinUAE. Also here I used the English language but Italian also showed the bug. Pretty much certainly other versions/languages will show the same bug. It's possible that some original executable may crash instead, including the PC VGA 256 colors CD version that is shown here, meaning that scripts are definitely bugged.

The video has been taken using scummvm PC VGA 256 colors CD version and a documented Monkey 1 boot parameter[1], precisely 9432 (this one should work only on the CD versions), but I guarantee that it will trigger also if you reach Monkey Island with regular game play. With the boot parameter, this is the command line that I used:

scummvm.exe -d0 -b 9432 monkey

To reproduce the bug (other variations are possible):

  • Start from Monkey Island, by the beach;
  • Reach the fort;
  • Push the cannon;
  • Pick the scope;
  • Talk with Herman Toothrot, be nice and don't rush;
  • Go out of the fort and enter back: talk again with HT, be nice and don't rush;
  • Go out of the fort, reach the closest beach;
  • Go by the water edge, talk with HT when he appears and again be nice and don't rush, so HT will stay by the beach a few seconds;
  • As soon as you stop talking to HT, "Give" the notes on the beach to HT.

Guybrush will begin reading the notes plus other pseudo-random ones indefinitely. Also HT will stop and "listen" silently. To stop the loop, as soon as Guybrush ends reading one note, compulsively click the jungle or any other exit. The trick will work not only on this beach but also on the other beach on the East and in the pond with the hanged navigator. Depending on your dialogue choices this trick may work or not, because HT may choose to not stop and rush away.

Video from youtube channel ceztko from the person who spotted the issue:
https://www.youtube.com/watch?v=4S95euFt2BA

Change History (3)

comment:1 by ceztko, 4 years ago

Cc: ceztko added

comment:2 by sev-, 4 years ago

Summary: [SCUMM] Secret of Monkey Island giving items that Guybrush does not carry causes weird behaviorSCUMM: MI: Secret of Monkey Island giving items that Guybrush does not carry causes weird behavior

comment:3 by dwatteau, 2 years ago

Summary: SCUMM: MI: Secret of Monkey Island giving items that Guybrush does not carry causes weird behaviorSCUMM: MI1: Giving items that Guybrush does not carry causes weird behavior
Type: defectfeature request

Since this is an original script bug and not a ScummVM bug, I'm changing this to a feature request.

Interestingly, when trying to reproduce this with the v5 French CD version under DREAMM, the game crashes with a "Can't set name of object 272" error (or something like that), so yeah, as said above, the game clearly doesn't expect this to happen.

Note: See TracTickets for help on using tickets.