Last updated 2026-09-29. It describes how the game uses AI today and is revised as the models, providers, and safety systems change. It explains our design and intent; it is not a warranty about any particular output. The binding terms are in the End User License Agreement.
IMMRAMA is a single-player narrative role-playing game that uses generative AI ("large language models," or LLMs) to bring its world to life. This page explains, in plain language, how that works and what protections are in place.
Rather than a fixed script, IMMRAMA's narrator, non-player characters, and combat narration are produced (or edited) at the moment you play, so that the story can respond to the choices you actually made instead of a small, pre-written branch tree.
At the base level — the experience every player gets by default, with no setup required — the game does not hand a blank page to an open-ended generator. It retrieves the nearest pre-approved, hand-authored passage for the current situation and has a small model perform a narrow, bounded edit over that passage (for example: substituting the correct name, tense, or recent event) rather than writing new prose from nothing. The intent of this design is that the base tier never needs to generate arbitrary raw text — only to adjust vetted text to fit the moment.
| Tier | What it means | Who controls the model |
|---|---|---|
| Deterministic (no AI) | The game plays from hand-authored content and rules, calling no AI model at all. | Nobody. No model runs. |
| Managed (default) | You play with no setup. Tech Duinnin's service relays your AI calls to third-party AI providers, under agreements we hold with them. We do not run the models ourselves, and we operate no inference hardware. | The third-party provider runs the model; Tech Duinnin chooses and configures which one |
| Your own AI server | You point the game at an AI server you have access to: one you run yourself, or a hosted service where you hold your own account and pay for your own usage. The game does not require this. | You, as that server's operator or customer |
| Local | You run an AI model on your own machine — a small CPU model, a larger downloaded GPU model, or a local server such as Ollama. | You, entirely on your own device |
If you choose your own AI server or Local, you are stepping outside the managed path. See EULA.md Section 10 for what that means for billing, terms, and responsibility. The deterministic tier needs no AI provider at all, so nothing you type on it is sent anywhere for generation.
The EULA deliberately names no vendors, so that a backend change never requires re-accepting the contract; this section and the Privacy Policy are the live list instead. As of 2026-10-10: the managed tier relays text to Anthropic (Claude) first, with Google (Gemini) as the backup when Anthropic is unavailable. Google (Gemini) also generates the game's images and speech. If you attach your own Anthropic or Google key, your text goes only to the provider whose key you attached, billed to you. The local tier downloads third-party open-weight models such as the Qwen family, including optional speech models on voice-capable builds. The your-own-server tier accepts any address you enter, such as a server you host yourself (for example, a llama.cpp-based server or Ollama); on the hosted web service the address field also offers suggestions for a few third-party services (currently Google, Anthropic, DeepSeek, Alibaba Cloud (Qwen), Zhipu, Moonshot, and OpenRouter). Installed builds offer no suggestions and name no service. Whatever you point the game at receives your prompts under its own terms.
The base/managed experience relies on the safety filtering built into our managed AI provider's service, plus our own prompt-level constraints that keep the narrator on-topic and editing vetted text rather than generating freely.
When you opt into your own AI server or Local, Tech Duinnin no longer controls the provider's own infrastructure or its network-side filtering, so an additional layer of protection activates specifically for that tier, because it is standing in for guarantees that only existed on the managed path:
These layers are defense in depth: each one is imperfect on its own, and each is expected to work alongside the others, not to replace them.
Regardless of which tier you use, the game's automated safety checks are built to refuse the following categories of content. These are the categories the systems target; as the section below says, no filter catches everything:
When a refusal happens, you will see an in-story acknowledgment that the narration stepped back, never a system error message, and never a penalty, flag, or warning against your account. **We do not punish players for content the AI generated** — filtering targets the output, never the player.
IMMRAMA is single-player. We do not have staff read, sample, or moderate the private narrative content generated during your individual playthrough — see EULA.md Section 12 for the full commitment. The safety layers above are automated specifically so that private play can stay private while still being screened.
This document describes the design and intent of the game's safety architecture. It is not a warranty. Automated filtering reduces risk; it does not eliminate it. No classifier catches everything, filters can also stop harmless content by mistake, and AI-generated text can still be wrong, inconsistent, or unexpected. The binding disclaimers are in the EULA, particularly Sections 5 and 17.
Which safety layers are active depends on the tier you choose and on the build you are running. The additional layers described above for the your-own-server and local tiers are being rolled out with those tiers, so a specific version may have more or fewer of them active than this page describes. On those tiers in particular, the model runs on infrastructure we do not operate, and we cannot guarantee behavior there equivalent to the managed tier.
If you find output that seems to have slipped past these checks, please tell us at developer@techduinnin.com. Reporting it never counts against you or your account.