A generative crafting game where players combine basic elements to discover new concepts. Every combination is computed in real-time using a local LLM (Ollama), making each playthrough unique and non-deterministic.
Start with four base elements:
- Fire
- Water
- Earth
- Wind
Drag two elements together to combine them. The system generates:
- A new concept (e.g. Fire + Water → Steam)
- A short explanation
- A representative color
- A persistent entry in your discovery graph
All combinations are generated using a local model via Ollama.
Every discovered element becomes a node in a directed graph of derivations.
The game session is persisted in the browser and can be reset at any time.
Multiple combinations can run in parallel, each resolving independently.
Elements can be moved freely in a workspace and combined spatially.
The game builds an emergent “world tree” based on user exploration.
- React
- dnd-kit (drag & drop system)
- React Flow (discovery graph visualization)
- TypeScript
- FastAPI
- Pydantic AI
- Ollama (LLM inference)
Each element contains:
id: unique identifierelement: display namecolor: visual representationexplanation: generated descriptionparents: source elements used in creation
- Better error handling for the combine function
- Persistent game session (serverside)
- Persistent cache for combined elements, so once someone discovers an element, everyone else gets the same result
- Score system
- Challenges: get a random element's name and receive massive points for discovering it
- Leaderboards
