Opened 18 years ago

Closed 7 months ago

#3110 closed defect (invalid)

SCUMM: Zak McKracken (FM-Towns) - Time bug in airplane

Reported by: SF/hux- Owned by: AndywinXp
Priority: normal Component: Engine: SCUMM
Version: Keywords: FM-Towns
Cc: Game: Zak McKracken

Description

There is no time in airplane to do the appropriate tasks. As soon as the stewardess has handed over the peanuts you end up in the destination city.

Ticket imported from: #1676326. Ticket imported from: bugs/3110.

Attachments (2)

zak.s02 (6.9 KB ) - added by SF/hux- 18 years ago.
saved game from entering the airplane
zak-fm.s06 (16.6 KB ) - added by tag2015 7 months ago.

Download all attachments as: .zip

Change History (36)

by SF/hux-, 18 years ago

Attachment: zak.s02 added

saved game from entering the airplane

comment:1 by sev-, 18 years ago

Summary: Time bug in airplaneZAK: Time bug in airplane

comment:2 by sev-, 18 years ago

To process your bug report appropriately, we need you to provide the following additional information:

* ScummVM version (PLEASE test the latest CVS/Daily build) * Bug details, including instructions on reproducing it * Language of game (English, German, ...) * Version of game (talkie, floppy, ...) * Platform and Compiler (Win32, Linux, MacOS, ...) * Attach a save game if possible * If this bug only occurred recently, please note the last version without the bug, and the first version including the bug. That way we can fix it quicker by looking at the changes made.

This should only take you a little time but will make it much easier for us to process your bug report in a way that satisfies both you and us.

Thank you for your support!

comment:3 by SF/hux-, 18 years ago

Version: ScummVM 0.9.1 Bug details: Happens after a short while in the airplane. Sometimes you have a short time to walk in the plane, but never enough time to full fill the tasks. Works great with Windows XP, but not so great with ScummVM 0.9.1. Language: English Installation: HTC P4350, Windows mobile.

comment:4 by fingolfin, 18 years ago

Owner: set to fingolfin
Resolution: worksforme
Status: newpending

comment:5 by fingolfin, 18 years ago

I can't reproduce this problem. I just went through the whole sequence in the airplane (toilet, microwaved egg, etc.), just fine. Like you using the V1 version (with the crappy old graphics).

hm, maybe you have "fast" or "very fast" mode activated by accident? (Ctrl-F / Ctrl-G) ?

comment:6 by SF/hux-, 18 years ago

I tryed out now running ScummVM on my computer (hadn't figured out it was possible) and it runs fine through the airplane sequence. This problem only seems to appear when i run ScummVM on my cell phone. Perhaps my cell phone is too fast for an old game like this ;)

And yes its the very old version that runs on DOS/Windows.

comment:7 by SF/hux-, 18 years ago

Status: pendingnew

comment:8 by fingolfin, 18 years ago

Owner: changed from fingolfin to SF/knakos
Resolution: worksforme
Summary: ZAK: Time bug in airplaneWINCE/ZAK: Time bug in airplane

comment:9 by fingolfin, 18 years ago

Nah, your cell phone isn't too fast. Still, maybe for some odd reason the fast mode has been activated on the cell phone?

Knakos, can you reproduce this issue?

comment:10 by fingolfin, 18 years ago

Owner: SF/knakos removed
Summary: WINCE/ZAK: Time bug in airplaneZAK: Time bug in airplane

comment:11 by fingolfin, 18 years ago

Correction: I can reproduce the problem with your savegame, but not with other savegames of mine, nor when playing to that point right form the start of the game.

So I am tempted to close this as a case a of "broken savegame". But maybe you can reproduce this from other savegames or even when playing from the start of the game straight to this point, too?

comment:12 by bluegr, 18 years ago

This should be renamed to: "WINCE: Timing bug in the airplane in ZAK" cause it seems to be more like a WINCE issue rather than an issue with ZAK itself

comment:13 by fingolfin, 18 years ago

No. As I stated, I can reproduce the problem (on Mac OS X). So it's not WINCE specific.

comment:14 by SF/hux-, 18 years ago

I have now tryed to reinstall the game and started a fresh new game and still have this bug. I am starting to wonder if its a time bug, since I figured out it seems to happen when I start doing stuff in the airplane. If I just sit and do nothing I wont be thrown out of the airplane either.

comment:15 by fingolfin, 18 years ago

Ah. Can you then perhaps give a precise step-by-step guide with which you can often/always reproduce the issue, starting from the airport? Timing might be important, too.

comment:16 by SF/hux-, 18 years ago

At first when I noticed this issue it used to happen after a short while in the airplane. I could open some of the lockers and the stewardes would come and tell me to sit down, but now when I step in the airplane for the first time and get handed the peanuts from the stewardes I get thrown out if I click anywhere on the game-screen with my pen. It does that aswell if I use some of the buttons on my cell phone. If I decide to just sit I wont be thrown out for perhaps 10 minutes. If I choose a flight after that I am often able to walk abit, eg. I've managed to reach the toilets once and then been thrown out from the plane. I am not sure if it has anything to do with the destination I choose at the airport. Would you like me to time the throw-outs on some of the destinations?

comment:17 by sev-, 18 years ago

What is the status of this item?

comment:18 by sev-, 16 years ago

Raising priority. This bug is nice to get fixed before the release.

comment:19 by sev-, 16 years ago

Priority: normalhigh

comment:20 by sev-, 15 years ago

Owner: set to fingolfin

comment:21 by fingolfin, 13 years ago

Owner: fingolfin removed

comment:22 by sev-, 13 years ago

Priority: highnormal

comment:23 by sev-, 13 years ago

Lowering priority/

comment:24 by SF/spellbreaker, 13 years ago

Just wanted to say that this is still an issue. Tested on Android ( different versions up to 2.3.4). Only happens with FM Towns version, other Versions work well for me. (Latest Version available on Android Market )...

comment:25 by raziel-, 4 years ago

Keywords: FM-Towns added
Summary: ZAK: Time bug in airplaneSCUMM: Zak McKracken (FM-Towns) - Time bug in airplane

comment:26 by bluegr, 4 years ago

This was reported again (with a savegame) on #11921

comment:27 by BenCastricum, 4 years ago

With this specific save file attached I get dropped at the airport as soon as I received the peanuts. After some debugging, the cause of this is, is the first 2 comparisons of the code evaluate to true and this specific scene ends. Even if you don't press or click anywhere after loading the saved game.

I do not say there is no time bug, just this savegame shows something else then a time bug.

room 11 script 263

...
[0027] (48) if (VAR_CLICK_AREA == 4) {
[002D] (C8)   if (VAR_KEYPRESS == VAR_CUTSCENEEXIT_KEY) {
[0032] (18)     goto 0065;
[0035] (**)   }
[0035] (**) }
[0035] (A8) unless (Var[53]) goto 0026;
[0039] (80) breakHere();
[003A] (28) unless (!Var[248]) goto 0039;
[003E] (68) VAR_RESULT = isScriptRunning(36);
[0041] (A8) if (VAR_RESULT) {
[0045] (2E)   delay(3600);
[0049] (18)   goto 0039;
[004C] (**) }
[004C] (A8) if (Var[248]) {
[0050] (18)   goto 0039;
[0053] (**) }
[0053] (19) doSentence(254,261,0,1);
[005A] (62) stopScript(105);
[005C] (1C) startSound(109);
[005E] (2E) delay(60);
[0062] (3C) stopSound(42);
[0064] (AE) waitForMessage();
[0065] (42) startScript(79);
[0067] (00) stopObjectCode();
END

comment:28 by AndywinXp, 12 months ago

I can't reproduce this anymore, is this still a thing?

in reply to:  28 comment:29 by eriktorbjorn, 11 months ago

Replying to AndywinXp:

I can't reproduce this anymore, is this still a thing?

I played through the FM Towns version in Linux a while back. I wasn't even aware that there was supposed to be a bug!

by tag2015, 7 months ago

Attachment: zak-fm.s06 added

comment:30 by tag2015, 7 months ago

I can reproduce the issue on the FM-Towns GOG version using version 2.8.1 or a daily build (on Win10).
I attached a save (this is a new playthrough, I went directly to the airport after the usual tasks).

Just enter the plane end let the cutscene play. DO NOT hit esc or skip lines. After the hostess gives you the peanuts, you'll have very little time to go to the lavatory, clog the toilet, etcetera, and often the flight ends before you have time to do everything (with the landing noise and the hostess "speech").
The time available is not always the same, sometimes you can manage to get to the egg-in-microwave part, other times you can't even get to the lavatory. So I think this is not really a time bug, but something else that triggers the "flight end" improperly.

comment:31 by eriktorbjorn, 7 months ago

I've only had the time to test it by just walking into the plane, listen to the speech, and wait for it to land. But that has always worked fine for me.

The main script seems to be room-11-209, which is waiting for some conditions to happen before it starts playing sounds and calling room-11-201, which is the actual landing.

The variables involved are 300, 315, and 322. By the time the script is first called, they were 3, 0, and 0 respectively.

If Var[300] is 3, it waits for Var[315] to be set. (There is a "goto" instruction to the point where the landing begins here, but I think that's only run if you press Esc since it's right after a "begin override" instruction.)

Once Var[315] is set, the landing can still be held up by Var[322] being non-zero, or the room-11-206 script running. But I'm guessing that's just to prevent awkward transitions.

Var[315] is unconditionally set after a delay by room-11-212, like this:

Script# 212
[0000] (2E) delay(28800);
[0004] (46) Var[315]++;
[0007] (1A) Var[322] = 0;
[000C] (A0) stopObjectCode();
END

And that's the only place I've found so far. I'm guessing that delay is the duration of the flight.

Setting Var[300] to something else than 3 would theoretically initiate the landing, I think, but that would have to be well timed because the script also waits for Var[300] to be set to 3. No idea what that's about yet, but that's still my best guess so far.

comment:32 by eriktorbjorn, 7 months ago

I played through the scene a few times, and always had lots of time to spare.

The landing will trigger prematurely if you press the Esc key, of course. Less obviously (I didn't remember it myself), right-clicking acts as pressing Esc. So if you're in the habit of doing that, e.g. because it triggers the default action in later SCUMM games, you could easily trigger the landing by mistake.

Could that be what happens here? Maybe not, but it would be such a wonderfully simple explanation for it, so it's worth asking.

in reply to:  32 comment:33 by tag2015, 7 months ago

Replying to eriktorbjorn:

The landing will trigger prematurely if you press the Esc key, of course. Less obviously (I didn't remember it myself), right-clicking acts as pressing Esc.

Oh my, I think you may be right. I tested again being very careful not to right click anywhere and I couldn't reproduce the bug...
feel free to close and sorry for the noise

comment:34 by AndywinXp, 7 months ago

Owner: set to AndywinXp
Resolution: invalid
Status: newclosed

Thanks for testing again folks :-) Closing...

Note: See TracTickets for help on using tickets.