Opened 22 years ago

Closed 22 years ago

#257 closed defect (fixed)

ZAK256: missing markings

Reported by: SF/logicdeluxe Owned by: SF/ender
Priority: normal Component: Engine: SCUMM
Version: Keywords:
Cc: Game: Zak McKracken


Built on May 13 2002 18:33:48 win Inside the Mars face there are no markings on the statue which are required for the yellow crystal. Also the Sphinx markings are missing in the map room. They appear just like on the Sphinx itself, befor you used the cryon on them.

Ticket imported from: #555651. Ticket imported from: bugs/257.

Attachments (1)

zak256.s05 (35.0 KB ) - added by SF/logicdeluxe 22 years ago.

Download all attachments as: .zip

Change History (15)

by SF/logicdeluxe, 22 years ago

Attachment: zak256.s05 added

comment:1 by SF/ender, 22 years ago

Um, it looks okay to me, with your save and the latest CVS. Unless it's supposed to actually have a drawing there? It's been so long since I played original Zak I can't recall :)

comment:2 by SF/ender, 22 years ago

Owner: set to SF/ender

comment:3 by SF/inguin, 22 years ago

Yes, it IS supposed to have a drawing. Zak has to redraw it in the center of the pyramid in Mexico in order to free the yellow crystal shard.

comment:4 by SF/vvs, 22 years ago

This is apparently because random number generator is not working in Zak for some reason. All puzzles are at their initial state without any randomness. You can play it several times and still get the same puzzles every time (like TPC phone number, markings puzzles, buttons combinations, winning lotto numbers etc.)

comment:5 by fingolfin, 22 years ago

Interesting. Note that o5_getRandomNr is being called and returns random results, as desired.

However I don't quite see how this would reduce the observed effects. If the numbers were not really random, there should still be a drawing (always the same one), shouldn't it?

comment:6 by SF/vvs, 22 years ago

Yes o5_getRandomNr is working, but it doesn't matter. After looking at original SCUMM (Maniac Mansion) I noticed that random seeds got updated every run of game loop and also when called from scripts, while in ScummVM it gets updated only when called from scripts. So, as the scripts call getRandomNumber at the same point, usually in the beginning to initialize its internal variables, the pseudo random numbers in ScummVM are completely predictable and will be the same every time game starts. I've patched ScummVM so, that getRandomNumber(255) get called every run of game loop and the results now look sufficiently random as intended. But you are right, there are still no drawings :-( Also, RNG logic in ScummVM looks pretty suspicious to me. Why _randSeed2 was initialized but never used there?

comment:7 by fingolfin, 22 years ago

Adding a call to getRandomNumber every time we go thru the run loop sure is no problem. Will do that.

As to _randSeed2 not being used: that's just fine. The var is only there from when it was used for the reversed engineered random number generator. However, our current RNG is actually better than the old one even though it uses less state date (better in the sense of a standard chi square test, the PRNG used in Monkey Island for example is very weak).

However, all of this leaves the original problem open: no drawings are visible. I am 99% sure that this is not caused by the random number generator.

comment:8 by SF/ender, 22 years ago

I'm waiting for Yot to be free to hopefully help with this one.

comment:9 by SF/khalek, 22 years ago

with latest cvs I can see markings on the statue from the save game, not sure its the correct behaviour as I've never played through zak before

comment:10 by SF/inguin, 22 years ago

Hm, I still can't. :-( Do you only see that there are markings or did you actually try to read them? It is supposed to have a pattern of several lines on it.

comment:11 by SF/khalek, 22 years ago

yes I've been told there are supposed to be more than dots sorry for getting your hopes up that this might have been fixed already

comment:12 by SF/inguin, 22 years ago

Wow, we're so damn stupid (must be the influence of the Caponian device): Just because there's nothing to see at the drawings doesn't mean we can't copy them to their respective destinations. Just use the yellow crayon on it, don't draw any lines and click "Finished drawing". Of course that's not the way it's supposed to be, but at least it's possible to finish the game.

comment:13 by SF/ender, 22 years ago

Resolution: fixed
Status: newclosed

comment:14 by SF/ender, 22 years ago

Oh, I always knew it would still work - thats why Zak is labeled as
completable :)

In any case, yot has spent much time finding the really odd cause of this
bug (caused by some really odd stuff in Zaks engine), and the fix will be in CVS sometime in the next few hours.

So after months of searching, we can finally declare this case... closed!

Note: See TracTickets for help on using tickets.