I’ve been experimenting with procedurally generated puzzles and developed this proof of concept for a basic logic puzzle. In “Den of Thieves,” you need to find a thief among three suspects through deductive reasoning. Each turn you either investigate to gather clues or accuse one of the suspects. Every game has a different set of suspects and clues.
The procedural generation works by creating three suspects with random properties, choosing a thief, and building a matrix of possible clues. Every turn you investigate, you uncover clues about the thief or one of the suspects. The clues take the form of [subject boolean property], resulting in text like “Greg has brown hair” or “The thief does not have red hair.” Eventually the game will stop giving more clues; when that happens it should always be possible to identify the thief with the information that’s been provided.
You can play it online here: gamefic.com/den-of-thieves-beta/index.html
Any feedback is appreciated.