Monday, August 23, 2010

Riven Easter Egg Plus

Well, I'm sure anyone that has played Riven has at least heard of the massive easter egg system that is in there. (Yes, this will work in ScummVM :P). I was checking some scripts in Riven because there are some other hotspots that will make the cursor disappear in the original game but weren't really attached to the easter egg. Richard Watson ("RAWA") even said that they weren't related to the easter egg. Well, it seems that they were originally going to be part of the game, but were cut out - and the scripts prove it.



The first of the hotspots, is the one above the cage. When clicking on the hotspot, this code runs:

switch (tdl) {
case 2:
tdl = 3;
break;
default:
tdl = 0;
break;
}

Unfortunately, all the other hotspots set tdl to 0, so the variable can never truly be set here. Not to mention tdl is also not set to 2 anywhere. (EDIT: See below)

Now for the Cho hotspots. It seems it was intended to have you click the hotspots in a specific order after tdl is set to 3 (from the above code segment). I have labeled them in the correct order here:



The hotspots labeled 1-6 will increase tdl by one if pressed in the right order. When you press the last hotspot, this segment of code is run:

switch (tdl) {
case 9:
araw = 4;
break;
}
tdl = 0;

araw is the variable used for the main Riven easter egg variable! aova is the other one. araw is normally set to 4 when you click the hotspot above the elevator on Garden Island:



So, it seems that this content was cut and replaced by the elevator hotspot. Or it could be that they changed the whole easter egg structure after having this initial "Cho code" in there.

(NOTE: The green/red rectangles are part of the hotspot debugging mode I added to the engine in ScummVM. Green = enabled, red = disabled)

EDIT: Well, turns out there's another piece of the puzzle. Clicking on the jammed lever outside of the cage in the beginning runs this code:

switch (tdl) {
case 1:
tdl = 2;
break;
default:
tdl = 0;
break;
}

Maybe there's a place where tdl is set to 1? The mystery continues!

Sunday, August 22, 2010

Riven and Combinatorics

A short blog post today. I normally can't come up with something that's worthy of a full blog post anyway, so here's an attempt to post a bit more often. Take a look at this page which goes into detail of a lot of the combinations of puzzles in Riven. Gotta love that marble puzzle...

In the programming realm, I added support for drawing the dome combination and telescope combination in the lab journal and Catherine's journal, respectively. Screenshots of course!





Now you might say "But, clone, I can see where the numbers in Catherine's journal end and the page begins." Yes, you can. You also can in the original game. Nothing I can do to make it look better than what it does currently :P

And for those who are really interested and have forgotten the D'ni number system, the dome combo here is 2-6-16-18-22 and the telescope combination is 1-5-5-2-3.

EDIT: I forgot to mention that because Catherine's journal now displays the telescope combination, two more endings are now accessible from the beginning without using the debug console. \o/

Sunday, August 01, 2010

"You've already got me, you lucky devil"

This blog post is a special one. Most of you know that SCI testing is going on already for all those boat loads of SCI games you have. That's for SCI0-SCI1.1, of course. I'm here to announce something different, though. No, not another LordHoto joke. No joke at all, actually!

I'm here to announce that GABRIEL KNIGHT: SINS OF THE FATHERS is completable in ScummVM. Not without bugs of course. And note that it will still NOT be tested in our current SCI testing nor be supported with the rest when they make it into a full release eventually.

EDIT: DrMcCoy has a quick trigger finger and found out that the hi-res (Windows) version is not completable. The DOS CD version is (and almost definitely the floppy version). This should be fixed now.

There are two major bugs with it still, but both are fixable if you use the fan made patches. In other words, both of these bugs were in the original game so they're not "our fault". You can download said patches from here. You'll want the NRS patches for either floppy or CD. There will be some other problems too. The save/restore menu is not working 100%, the text wrapping isn't correct, and transparency does not work yet. You'll see what I mean about the transparency if you get to use the flashlight or arrive at Schloss Ritter.

We do NOT want bugs submitted about Gabriel Knight, we know there's plenty of them still.

Also, please don't play Gabriel Knight if you still have other SCI0-SCI1.1 games to test. We really need you loyal ScummVM users concentrating on those. We love you guys! :D And thanks for all those SCI games you've already played through... and a seemingly neverending amount of bugs :P

Last August, SCI32 games weren't even startable and look how far we've come in just under a year!

Ah, and the obligatory screenshot. This was taken two days ago when I beat it for the first time. Yes, I missed 7 points. No idea where though...


PS - My apologies to pgr on #scummvm (IRC). We had decided not to reveal this, but changed our minds after discovering that the Day 5 lockup was indeed in the original too. It's also skippable using the spacebar. I'll be comparing both the good and bad scripts to add a workaround to the code for it soon. Hopefully I'll be able to figure out something clean ;) I hope you can forgive me! :)