# Plundered Hearts (Infocom Release 26, serial 870730, Z-machine V3) # VERIFIED COMPLETE SOLVE: 25/25, won=True, died=False -- best ending, # "Happily Ever After" (father rescued AND away with Jamison). # # Reproduce with the RNG-pinned replay harness (free, no API): # cd ~/src/zwalker # python3 scripts/replay_solve.py games/zcode/plundered.z3 walkthroughs/plundered_verified_25.txt --seeds 4 # => plundered_verified_25.txt: VERIFIED 25/25 at seed 1 | 186 cmds | died=False | won=True # # the bare substring "you are dead" -- Lafond's mandatory pre-duel taunt on the # beach ("You will have no need of her when you are dead.", extras.zil:2168 in # the official source) false-positives on it, turning this clean win into # died=True. Refining that marker to the Zork-style kill phrasing # "afraid you are dead" fixes it; all previously verified solves reproduce # their documented results with the refined marker. # # Ending: the full-score "Happily Ever After" finale. Papa is freed from the # dungeon cell and slips out the library window; the crew storms the mansion on # the tray signal; Nicholas Jamison runs Lafond through in the duel on the # beach; the heroine loads Lafond's dropped pistol from the powder horn and # shoots Crulley off the cliff ("earning the title, 'Happily Ever After'"), # then sails for America with Nicholas at 25/25 in 192 game turns. # # Why a pinned seed: this route is deterministic in practice -- it scores # 25/25 with the identical 192-turn timeline at every RNG seed tested (1-8); # seed 1 is pinned only so the replay is bit-stable. What actually gates the # game is scripted timing, which this route satisfies: the anchor is lowered # before the tide turns (else the ship drifts onto the reefs near move 100), # the wet rag lands on the powder-magazine fuse (else the ship explodes near # move 130), the butler must drink the drugged goblet and collapse BEFORE the # tray is waved (signalling first summons the crew while he is awake -- he # drags you to the dragoons and you die), the exact phrasing "wave tray in # moonlight" is required for the signal point (plain "wave tray" is a no-op), # and Cookie -- who only shows up because of that signal -- wrestles the # re-woken crocodile so you can reach the dungeon. The two leading "z" lines # flush the prologue's two [Press RETURN or ENTER] pauses. # # Route facts (which commands, not their expression here) cross-checked from # community walkthroughs (J. Gunness's solution, eristic.net, and # walkthroughking.com) and the historicalsource/plunderedhearts ZIL; every # step machine-played and validated against the binary through the GameWalker # pathway. Header prose is original. # #% MAX_SCORE: 25 #% WIN_TEXT: earning the title, "Happily Ever After\." # # Generated by a hand-adapted route machine-recorded through GameWalker # (RNG seed 1); replay-verified by scripts/replay_solve.py. # ===== Prologue: the Lafond Deux ===== z stand up z z get coffer z hit crulley with coffer z z read missive yes z z stand up z z z n open cupboard in get clothes remove frock tear frock wear breeches wear shirt out z d n n get bottle s s open coffer get invitation u s break window with coffer s get ladder u u u u n n examine barrels dip rag in water open hatch d throw rag at fire u n examine winch raise lever in get dagger out s s sit in cask get pork cut line with dagger z z z get out of cask w n w n e z get garter w s ne u remove clothes get gown wear gown n e d show invitation to butler s z z z z e n n examine bookcase get treatise get hat press island n d e e get key get horn w w s examine bottle read label put laudanum on pork give pork to crocodile z z s w unlock door with key open door n give garter to papa s e n n u s s w s yes z z z z u e open door n drink wine pour wine in green goblet pour wine in blue goblet put laudanum in blue goblet get spices blow spices at lafond s give blue goblet to butler z z z get tray wave tray in moonlight s w d z e n open portrait n d s s get rapier attack crulley again wake jamison with salts unlock chains with brooch n n u s s w u e s untie rope swing on rope get all s s s z z yes get pistol load pistol shoot crulley