Opened 16 years ago

Closed 16 years ago

#1320 closed defect (fixed)

ZAK: Can't Give Club in 5.5 build

Reported by: SF/pyrtolin Owned by: fingolfin
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game: Zak McKracken

Description

Using the 12/1 and 12/3 builds of 5.5, I can't "Give
Golf Club to Shaman" in Zaire. (Or otherwise interact
with him; clicking about randomly will occasionally
bring up a "No Thanks" reply)

English, Floppy, Win32

I tested it in 5.1 and it worked fine, but I only
recenly discovered this, so I can't offer a more narrow
version range.

Ticket imported from: #853874. Ticket imported from: bugs/1320.

Attachments (2)

zak.s02 (5.0 KB ) - added by SF/pyrtolin 16 years ago.
Saved in Shaman's Hut
zak.s05 (4.1 KB ) - added by Kirben 16 years ago.
V1 zak save game

Download all attachments as: .zip

Change History (11)

by SF/pyrtolin, 16 years ago

Attachment: zak.s02 added

Saved in Shaman's Hut

comment:1 by SF/pyrtolin, 16 years ago

Summary: Can't Give Club in 5.5 buildZAK: Can't Give Club in 5.5 build

comment:2 by SF/pyrtolin, 16 years ago

(Where win32= Windows XP SP1, patched to current)

comment:3 by fingolfin, 16 years ago

There is no 5.1 and 5.5 version of ScummVM yet. We didn't even
reach 1.0 so far :-) You probably mean 0.5.1 and a 0.5.5 CVS
build (of which there are dozens different ones).

Anyway, while I'd love to debug this, I can't: I only have the
german Zak.

comment:4 by Kirben, 16 years ago

Owner: set to Kirben

by Kirben, 16 years ago

Attachment: zak.s05 added

V1 zak save game

comment:5 by Kirben, 16 years ago

Owner: changed from Kirben to fingolfin

comment:6 by Kirben, 16 years ago

This problem is caused by fingolfin's changes in
scumm/object.cpp revision 1.141.
fingolfin, could you have a look at issue ? I have attached
save game for v1 zak.

comment:7 by SF/guntherweber, 16 years ago

I encountered the same problem in the english AMIGA version and
posted something to that end in the Help Forum. (I was just about
to file a bug report of my own but checked if that problem was
reported first and found this report.)

comment:8 by fingolfin, 16 years ago

I think that my change in object.cpp is correct. Maybe it uncovered
a problem in the walkbox code or somesuch.

More to the point, getObjActToObjActDist() calculates the distance
between the points (816,92) and (784,106). Pixelwise, this is
(32,14); translated to the V1/V2 coord system (which divides x by
8 and y by 2) that gives (4,7); the maximum of which is 7. The
old distance code would compute "4" as distance, which is clearly
wrong.

The true issue may be related to the question why (816,92) and
(784,106) are used for the computation.. considering that zak is at
(816,92) while the shaman is at (784,92). (Well of course this is
due to adjustXYToBeInBox(), but I need to check how this is done
in the original).

comment:9 by fingolfin, 16 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.