Overview
A faithful Python re-creation of Island of Secrets (Jenny Tyler & Les
Howarth, illustrated by Patrick Lynch), one of those classic 1980s Usborne type-in
BASIC adventure books. It's ported directly from the BASIC listing on pages 21-;29
of the book, so it plays exactly like the original -; two-word verb/noun commands,
a scene that redraws every turn, and deliberately no LOOK verb, because in
1984 the book's paintings were the graphics.
Background
You play Alphan. Long ago the evil Omegan knocked the Earth from its orbit and it's
been dying ever since; Grandpa's notes say it can be set right, but only from the Island
of Secrets across the Crawling Creek. It's a real adventure with real puzzles -;
one of them wants you to literally SAY the words a speaking stone utters.
The educational angle is the interesting part. The original's whole design was about
cramming a world into 16K, which happens to be exactly the engine/content split you'd
want for a general text-adventure engine. Rooms, objects, vocabulary and starting
placement are pure data; the per-verb behaviour is handlers. So this
port doubles as an honest baseline -; a study of what an old game did cleverly, and
what it did that you'd never want to repeat (a giant IF tree, game state
hashed into magic strings) -; before evolving toward a cleaner, declarative engine.
How It Works
Pure Python standard library, 3.7+, no dependencies. The map is a 10-wide grid where N/S move ±10 and E/W move ±1, so there's no adjacency table to maintain. Method names in the engine cite the original BASIC line numbers so you can diff against the listing.
Two ways to play: a text-mode terminal version with ASCII-art placeholders, and
island_gui.py, a small Tkinter window with an image pane, a scrolling story
log, an input box, and a status bar for Time / Strength / Wisdom. An
ART_BRIEFS.md shot-list covers all 80 rooms -; grounded in Lynch's
original art where the book illustrated a room, and usable as prompt seeds for
generating the rest.