1. EricOakford

    I Wanna Go Fast

    Most SCI games keep track of CPU speed. They do this at startup in a room commonly known as speedTest, and save the recorded speed in a global variable commonly known as machineSpeed. Initially, there was no upper limit. This leads to bugs in Leisure Suit Larry 3. In the exercise room, the...
  2. EricOakford

    SCUMM Nutcracker Utilities

    I've just been informed on Mixnmojo of a set of utilities called Nutcracker. It's a set of tools for editing resources in SCUMM games. Its decompiler outputs code that very closely matches that of the original SCUMM syntax, as shown in the official SCUMM documentation. If this were an IDE, it'd...
  3. EricOakford

    A Fresh Restart

    Restarting a 16-bit SCI game is pretty simple. In Game:restart... (method (restart) (if modelessDialog (modelessDialog dispose:) ) (RestartGame) ) In other words, it clears any modeless dialog, and invokes the kernel call RestartGame to clear...
  4. EricOakford

    Zak McKracken's Gambling Problem

    Here's my first SCUMM-related discovery! One of the things you need to keep track of in Zak McKracken and the Alien Mindbenders is your characters' CashCard balance. Just like reality! The best way for Zak to replenish his savings is to play the lottery, which only he can do. You can rig the...
  5. EricOakford

    Flagged: A History of SCI Game Flags

    KQ4 and LSL2, the first-ever SCI games, did not have many of the luxuries that later games did. For starters, there were no special procedures to handle event flags. All events were flagged using global variables directly. This way is obviously inefficient and a waste of heap space. To address...
  6. EricOakford

    The Virgin Suicide

    We all know how, in the original Leisure Suit Larry, the title character would commit suicide if he didn't lose his virginity by sunrise. I even uploaded a video of this on YouTube. But what causes this? When does it happen? Does sleeping with the prostitute prevent it? And can this happen in...