Lost in the desert
Moderator: Alastair
Lost in the desert
Hi, I've just solved this adventure from The Guild, but I could achieve only 80%. The missing points are given for rescuing the boy in the cell, but I didn't manage that because it's not possible to get the boy (after pouring water under the floor plate before night falls). It looks like the CLAM BOY process is not triggered. Can anyone figure out why not?
Re: Lost in the desert
Having a quick look before work... I think I'll need to go back to this though.
Here's the code for "CLAM BOY"...
Flag 24 is set to 4 when the WATER has been POURed at location 45.
So, I'm guessing the issue will be with Flag 5 being equal to 50.
Flag 5 is a Quill flag that auto-decreases each turn. In this game it's being used as the DAY/NIGHT timer, and also relates to things like thirst and hunger... It's pretty much used all over the place in the game so it'd probably be inadvisable to mess about with it to much.
It starts the game being set to 56 (I think). Sunrise, for example, is triggered when it is 52.
I did wonder if that EQ 5 50 in the CLAM BOY code should actually be LT 5 50; to check whether the time is after sunrise. However...
Flag 5 is set back to 50 at certain points in the game... these are from the event table, for example (not related to player input, so ignore the proceeding words, they're just aide-memoires by the programmer...
I'd need to look into that code a bit to see if it could possibly help... However, looking quickly, it appears that it might be that you need to run the day timer down, when you're in the cell, to get it to zero which will set it back to 50 so you could potentially quickly type CLAM BOY and trigger that code.
Makes sense, I guess, if the idea is that you have to leave the water overnight to freeze and get it to work.
(Amusingly, CLAM BOY doesn't seem to do a location check, so I guess you could type it anywhere in the game, providing those two conditions are met.)
Here's the code for "CLAM BOY"...
Code: Select all
CLAM BOY EQ 28 4
EQ 5 50
MESSAGE 74
LET 28 5
So, I'm guessing the issue will be with Flag 5 being equal to 50.
Flag 5 is a Quill flag that auto-decreases each turn. In this game it's being used as the DAY/NIGHT timer, and also relates to things like thirst and hunger... It's pretty much used all over the place in the game so it'd probably be inadvisable to mess about with it to much.
It starts the game being set to 56 (I think). Sunrise, for example, is triggered when it is 52.
I did wonder if that EQ 5 50 in the CLAM BOY code should actually be LT 5 50; to check whether the time is after sunrise. However...
Flag 5 is set back to 50 at certain points in the game... these are from the event table, for example (not related to player input, so ignore the proceeding words, they're just aide-memoires by the programmer...
Code: Select all
DAY _ EQ 5 4
ATLT 24
MESSAGE 25
DAY _ EQ 5 0
ATLT 24
LT 11 4
MESSAGE 26
MESSAGE 27
TURNS
SCORE
END
DAY _ EQ 5 0
ATLT 24
EQ 11 4
MESSAGE 26
MESSAGE 28
PLUS 16 1
LET 5 50
LET 20 0
PAUSE 50
MESSAGE 29
ANYKEY
DESC
DAY _ EQ 5 0
ATGT 23
ATLT 26
MESSAGE 62
MESSAGE 63
PLUS 16 1
LET 5 50
LET 20 0
PAUSE 50
MESSAGE 29
ANYKEY
DESC
DAY _ EQ 5 0
AT 26
MESSAGE 62
MESSAGE 63
PLUS 16 1
LET 5 50
LET 20 0
PAUSE 50
MESSAGE 29
LET 6 3
ANYKEY
DESC
DAY _ EQ 5 0
ATGT 26
MESSAGE 61
MESSAGE 63
PLUS 16 1
LET 5 50
LET 20 0
PAUSE 50
MESSAGE 29
ANYKEY
DESC
DAY _ EQ 5 4
ATGT 23
MESSAGE 66
Makes sense, I guess, if the idea is that you have to leave the water overnight to freeze and get it to work.
(Amusingly, CLAM BOY doesn't seem to do a location check, so I guess you could type it anywhere in the game, providing those two conditions are met.)
Re: Lost in the desert
Thanks for your reply, but the problem is: CLAM BOY is not a valid command, it's only the name of the process!
Re: Lost in the desert
Okay... I'll dig deeper tonight... there wasn't much time before work this morning...
I'll trace the stuff related to GET BOY then and see how it ties into that "CLAMP BOY" event table entry.
Code: Select all
GET BOY EQ 28 5
PRESENT 57
GET 57
MINUS 1 1
MESSAGE 89
DONE
Re: Lost in the desert
I wanted to give it a try and at first I didn't understand it, but I learned that on world of spectrum there are two different games called Lost in the desert. The tzx file is adifferent game than the z80 file I chose the wrong one.
https://worldofspectrum.org/archive/sof ... -the-guild
https://worldofspectrum.org/archive/sof ... -the-guild
Re: Lost in the desert
Yeah... I logged that particular error a long, long time ago. Still not fixed.
Very quickly looking... my original comments still stand, I think. Once those conditions are met the flag 28 is set by the CLAM BOY event, so that GET BOY can be used to "pick" the boy up.
Will check more later if there are still issues.
Very quickly looking... my original comments still stand, I think. Once those conditions are met the flag 28 is set by the CLAM BOY event, so that GET BOY can be used to "pick" the boy up.
Will check more later if there are still issues.
Re: Lost in the desert
It all sounds easy and logical: POURing the WATER sets flag 28 to 4, night is falling, than the CLAM BOY process triggers and set flag 28 to 5, this should allow to GET BOY - but the CLAM BOY process is not triggered!!! I've uploaded a short RZX file to demonstrate the problem (it's in my queued submissions).
Re: Lost in the desert
I'll put some time aside to have a proper look later in the week, then. (You'll probably need to zip up the rzx, as it'll corrupt if attached to the submission form as it is).
Re: Lost in the desert
OK, I've uploaded it again.
Re: Lost in the desert
There must be something wrong with the program; when I'm in the cell with the boy, I can't get him though I have poured the water - when night falls and day breaks and I go N to the corridor with the dead guard and I want to go back to the cell, the door is locked again! I can unlock it and go S - the boy is clamped again and the same procedure has to be done - with the same result.