Section 2 - Hard Mode
[ Counterfeit Monkey is designed to be fairly accessible -- this is a primary design concern for the puzzles and user interface. The implication of that, though, is that the game is likely to be easier than some hard-core puzzle aficionadoes are likely to prefer; and, of course, there are a lot of possible solutions that are substantially more obscure than others, which players are unlikely to find unless forced.
So we also provide a hard mode, to offer a more focused puzzle experience for the people, one that will hopefully still be fun if the player chooses to revisit it after having already finished easy mode. To that end, there are a few mild jokes that riff on easy-mode gameplay, and a few puzzles are swapped entirely for something new and harder.]
Understand "hard" or "hard mode" or "expert" or "harder" or "difficult" or "expert mode" or "harder mode" or "difficult mode" as selecting hard mode. Selecting hard mode is an action out of world.
Check selecting hard mode when the Fair is visited:
say "It is now too late in the game to change modes. If you wish, you may restart the game and choose HARD any time before reaching the Fair." instead.
Hardness is a truth state that varies.
Check selecting hard mode when the Fair is not visited:
if hardness is true:
say "Hard mode is already on." instead;
say "Once you've selected hard mode, you can't go back: certain puzzles with multiple solutions will be made more difficult and some puzzles will be altered entirely. Are you sure? >>";
unless the player consents:
say "Hard mode selection canceled." instead.
[Implementing hard mode is largely a matter of deleting a number of the most obviously useful items from the game, forcing the player to look for alternative options that may be more difficult to find. In a couple of cases, we replace the useful item with something else as a bit of a tease. The list of things we take out of play:
PEAR (PEARL etc.)
CLOCK (still included, but it gains the adjective BROKEN after its first gelling, and is not useful for the Waterstone puzzle, forcing the player to work with ASS or MEMBER instead.)
Hard mode also changes the functionality of the vowel rotator in the late game, replacing it with a somewhat more challenging encryptor.]
Carry out selecting hard mode:
now hardness is true;
remove the gum from play;
remove the funnel from play;
now the funnel is not buried;
now the printed name of the twig is "bent twig";
now the printed name of the fossil is "twisty fossil";
now the printed name of the tomes is "dusty tomes";
remove the sticky from play;
remove the banana from play;
move the pineapple to the large carton;
remove the wrap from play;
remove the screwdriver from play;
remove the screwdrivers from play;
move the prickly-pear to the holder of the pear;
remove the pear from play;
remove the wheel from play;
now the introduction of the clock is "It's stopped working sometime in the recent past, possibly thanks to its fall when we gelled it.";
follow the initialize hash codes rule;
now tutorial mode is false;
Report selecting hard mode:
say "[story title] is now in 'hard' mode. Tutorials are off. The world is reconfigured against you. Good luck."
Test hardnames with "tutorial off / hard / y / drop all / look / look carefully / x bent twig / x broken clock / wave t-remover at twig / wave l-remover at clock / wave m-remover at tomes / wave s-remover at members / wave y-remover at army" holding the twig and the clock and the tomes and the members and the army.
Test hard2 with "tutorial off / hard / y / autoupgrade / wave p-remover at patron / wave m-remover at patron / z / wave m-remover at patron" in the drinks club.
Understand "model" as the members when hardness is true.
Understand "model" as the army when hardness is true.
Understand "bent" as the twig when hardness is true.
Understand "dusty" as the tomes when hardness is true.
Understand "twisty" as the fossil when hardness is true.
Before printing the name of the clock when hardness is true and printed name of the clock is not "broken clock":
if the clock is in the repository:
make no decision;
now the printed name of the clock is "broken clock";
reset hash code of the clock;
Understand "broken" as the clock when hardness is true.
[We can't actually go back to easy mode once we're in hard mode, but we should react to the player's attempts to do so.]
Understand "easy" or "easy mode" or "mode" as selecting easy mode. Selecting easy mode is an action out of world.
Check selecting easy mode:
if hardness is false:
say "Easy mode is the default mode for [story title], and is already active." instead;
say "Once hard mode is selected, it cannot be turned off. Please restart if you would prefer to play the game in easy mode." instead.