Opened 7 weeks ago
Last modified 7 weeks ago
#15389 new defect
ADL: HIRES5: "GET ALL" fails where picking up individual objects doesn't
Reported by: | eriktorbjorn | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | Engine: ADL |
Version: | Keywords: | ||
Cc: | Game: | Hi-Res Adventure #5: Time Zone |
Description
I'm trying to make myself an optimized walkthrough of Time Zone. (Don't ask!)
At some point, you will probably have to leave some objects to pick them up later. In my case, it was the oxygen mask, the skeleton key, and the iron bar. But when the time came to pick them up, "GET ALL" failed because the game claimed I was already carrying as much as I could.
However, picking the objects up one by one worked without problem. Is this a bug in "GET ALL", or is it a bug in regular "GET object"? It would be cruel indeed if you had to make several runs to the final time zone to get everything you needed there.
"GET ALL" will make calls to HiRes5Engine::isInventoryFull()
while regular "GET object" apparently will not? I was also surprised that it uses item->description
for the weight, but maybe that's just how it's designed.
I'm attaching my walkthrough file. The problem happens at line 718, at the comment where it says "GET ALL should work, but doesn't". The two "dummy" commands earlier in the file are there so that the file can be run using the run_script
debug command.
Attachments (1)
Change History (4)
by , 7 weeks ago
Attachment: | timezone.txt added |
---|
comment:1 by , 7 weeks ago
comment:2 by , 7 weeks ago
Looking at the description
values, they do seem to make sense as weights. (And I should definitely get rid of the sword and the shield, not the tweezers! :-)
So if there is a bug, it's probably in "GET object", not "GET ALL".
comment:3 by , 7 weeks ago
Now that I know approximately what I'm looking for, here's a much shorter test case:
- N. GO MACHINE. GO MACHINE. SIT. SET BLUE. ASIA. SET ORANGE. 50BC. PUSH LEVER. LEAVE MACHINE. E. E. E. N. N. GET POLE. S. S. S. S. GO BOAT. E. LEAVE BOAT. N. N. N. N. E. N. W. GET SHOVEL. DIG. DIG. GET ALL. E. S. W. S. S. E. S. S. E. S. BUY RICE. WITH JADE. BUY ROPE. WITH JADE. W. W. N. GO BOAT. W. LEAVE BOAT. N. N. W. W. W. GO MACHINE. SIT. 1000AD. AFRICA. PUSH LEVER. LEAVE MACHINE. N. N. GET LOG. W. GET LOG. E. E. GET LOG. DROP SHOVEL. GET ALL. GET SHOVEL.
In the final two commands, "GET ALL" fails while "GET SHOVEL" does not.
I have not tried this in an Apple II emulator.
Please note that the walkthrough is still incomplete and contains errors. (It also exploits bugs.)