# Notice, credits and provenance ## What this is An independent reimplementation of *Hunt the Wumpus*, the cave-hunting game that went round timesharing systems and then every home computer of the following decade, written from scratch in TypeScript in 2026. ## Credit where it is due - **Gregory Yob**, 1973 — wrote the original, reportedly out of irritation at how many computer games of the day were played on a grid. Hanging the rooms on a dodecahedron instead is the whole idea, and it is his. - **People's Computer Company** and **Creative Computing**, who carried the listing and the article that explained it. - Every type-in book and school terminal that passed it along, which is how most people met it. This project is not affiliated with or endorsed by anyone connected to the original. No original source code was used, consulted or copied. ## How this code came to exist Clean-room, and worth being specific about because it is what makes the licence below meaningful: - **The rules are not ours to own, and we use them freely.** Twenty rooms, three tunnels each, two pits, two bats, one wumpus, five crooked arrows that fly through five rooms, a wumpus that wakes three times in four. Game mechanics are ideas rather than expression; nobody gets to fence them off, and so may you use them. - **The cave is the cave.** `src/game/cave.ts` uses the room numbering every listing of this game has used since 1973 — room 1 leads to 2, 5 and 8 — so that a transcript from a magazine still makes sense against it. A numbering is a fact about a graph, not a piece of writing. It is written out by hand and then *proved* to be a dodecahedron in `cave.test.ts` rather than trusted. - **The artwork and the music are ours.** Every mark on the map is SVG generated from the graph in code, and every note is generated by the synth in `src/audio/`. There are no imported assets of any kind. - **The synth is shared with its sibling.** `src/audio/synth.ts` is the same engine as the one in [lemonade](https://git.coffeylabs.org/jcoffey-dev/lemonade) — same author, same licence. What is written for it here is new. ## The words on screen are ours, deliberately This is the part worth reading, because the obvious thing to do was the wrong thing. The 1973 game has famous lines in it. Anyone who played it can still quote the one about the bats. Those sentences are Gregory Yob's writing, not a rule and not a fact — and a project released under a copyleft licence has no business licensing words it did not write. The sibling project went back and took the original's wording out of itself for exactly this reason; this one never shipped with it. So every line the machine prints here was written for this project: | What the game has to say | Where the words came from | | --- | --- | | the three warnings | ours (`SENSE_TEXT` in `src/game/constants.ts`) | | the four deaths, and the kill | ours (`DEATH_TEXT`, `WIN_TEXT`) | | being carried off by bats | ours (`BATS_TEXT`) | | the refusal, the prompts | ours | | the instructions screen | ours — the rules are Yob's, the sentences are not | Two things are still not original, and neither is a copyright question: - **The name.** It is still *Hunt the Wumpus*, and the animal is still a wumpus. Names and short titles are not subject to copyright, and it is kept deliberately — calling it something else would be pretending this is a different game, which would be less honest rather than more. - **`YOU ARE IN ROOM 12` and `TUNNELS LEAD TO 3 11 13`.** These are the only sensible words for what they report, and the order follows from the fact that you need to know where you are before the exits mean anything. There is no creative expression in them to own. ## One rule that is ours Yob's game is a single cave: you kill the wumpus or it kills you, and either way that is the end. Here a kill is a door rather than an ending — you go deeper, into a fresh cave with the same twenty rooms and whatever arrows you did not spend, until something gets you. It is a frame around the 1973 game rather than a change to it: every hunt inside it is the original, unaltered, and the reasoning is in `src/game/constants.ts`. ## Licence Copyright (C) 2026 John Coffey. This program is free software: you can redistribute it and/or modify it under the terms of the **GNU Affero General Public License** as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version — see [LICENSE](LICENSE). AGPL rather than plain GPL because the leaderboard is a network service: §13 means anyone who runs a modified copy of this for other people over a network has to offer them its source. Running the game without the scores service is entirely supported and imposes nothing extra. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. *None of the above is legal advice.*