Personal project · guardtheweights on GitHub
Echoes of Aethermoor
This started as a question: what does it actually look like when a language model is trying not to tell you something? Most "adversarial" LLM demos are keyword filters wearing a costume. I wanted a narrator that genuinely withholds — one that answers in metaphor and misdirection rather than refusing outright, the way a person guarding a secret would rather change the subject than say "no comment."
The world of Aethermoor holds seven secrets, and the narrator's willingness to hint at them is tied to an eight-rank ladder, Novice through Master. Early on, its answers sit close to plain narrative. By the time a player reaches Sage or Master rank, the same question about who built the world comes back closer to a koan than an answer — deliberately, since a different rank-specific system prompt governs the narrator at each stage, escalating from clear storytelling to paradox and deconstructed language.
The harder engineering problem wasn't the storytelling — it was deciding whether a player had actually understood something. Keyword matching breaks the moment someone paraphrases, so a second model acts as judge: it reads the player's extraction against the real secret and scores whether the underlying idea landed, not whether specific words showed up. An entropy-based closeness metric gives real-time feedback on how near a guess is, so the game can reward genuine comprehension without ever handing over the answer outright.
Ranked narrator dial
Same question, eight ranks, progressively more cryptic answers.
Question: Who built Aethermoor?
The world was raised by hands that meant to be remembered.