πŸ‡¨πŸ‡³ δΈ­ζ–‡ Β· πŸ‡ΊπŸ‡Έ English

β€” ✦ β€”

# Cultivation World Simulator An AI-driven cultivation world simulator that aims to create a truly living, immersive xianxia world. ## Overview Cultivation World Simulator combines traditional game-rule systems with large language models. By first establishing a complete ruleset for the cultivation world, it creates an autonomous, vibrant, immersive virtual world with emergent stories. Core idea: **Build a credible rule-based world model first, then plug in AI to bring it to life.** ### Tech Stack - **Frontend Rendering**: pygame (Web support in the future) - **Simulation Engine**: custom event-driven simulator - **World Model**: rule-based deterministic systems - **AI Integration**: LLM-generated actions, decisions, micro-stories ## Background I have been a long-time reader of xianxia novels, from classics to modern works. As a game AI practitioner, I believe today’s LLM capabilities are sufficient to support a xianxia-style world simulation. However, LLM-only NPC decision/dialogue is not enough. A credible rule system must ground the world as the β€œworld model”, and then AI makes it vivid. I aim to create a pure, joyful, direct, living sense of immersion. Not a mere marketing demo, nor purely academic like β€œStanford Town”, but a world that players can actually feel and inhabit. If you like this project, consider starring it. You can also watch an intro video on my Bilibili: [`link`](https://space.bilibili.com/527346837). ![Screenshot](assets/screenshot.png) ## Development Progress ### πŸ—οΈ Foundation - βœ… World map basics - βœ… Diverse terrain types (plain, mountain, forest, desert, water, etc.) - βœ… Time system (year-month timestamps) - βœ… Frontend UI (pygame) - βœ… Simulation framework - βœ… Project documentation (README) - βœ… Config system - [ ] Standalone release (packaged exe) - [ ] Web frontend (later) - [ ] ECS parallel toolkit (later) - [ ] Player-configurable prompts (later) ### πŸ—ΊοΈ Tile System - βœ… Basic tile mechanics - βœ… Normal, cultivate, city, sect regions - βœ… Same-tile NPC interactions - βœ… Qi distribution and yields ### πŸ‘€ Character System - βœ… Core attributes - βœ… Cultivation realms - βœ… Spiritual roots - βœ… Basic movement actions - βœ… Personality - βœ… Breakthrough system - βœ… Relationships - βœ… Perception radius - βœ… Buff system: buffs/debuffs - βœ… Artifacts - [ ] Special abilities - [ ] Epithets/nicknames - [ ] Combat-related - [ ] Attribute points allocation - [ ] Skill system (techniques) - [ ] Equipment system - [ ] Skill learning - [ ] Learnable skills - [ ] Personal techniques (flexible integration) - [ ] Life professions (alchemy, formations, farming, forging, etc., with tailored prompts and info space) - [ ] Mortals support - [ ] Prodigies (stronger abilities and AI) ### πŸ›οΈ Organizations - [ ] Sect system - βœ… Settings, techniques, healing, base, styles - βœ… Special sect actions: Hehuan Sect (dual cultivation), Hundred Beasts Sect (catch spirit animal) - [ ] sect will AI, tasks, recruiting - [ ] Sect tiers: different titles, abilities, actions - [ ] Clans - [ ] Court/Empire (TBD) - [ ] Inter-organization relations ### ⚑ Action System - βœ… Basic movement - βœ… Action execution framework - βœ… Defined actions (rule-complete) - βœ… Long-duration actions and settlement - βœ… Multi-month actions (cultivate, breakthrough, play, etc.) - βœ… Auto-settlement upon completion - βœ… Multiplayer actions: initiator + responder flow - βœ… LLM actions that affect relationships - βœ… Systematic action registration and runtime logic - [ ] Richer actions ### 🎭 Event System - [ ] World-scale events: - [ ] Auctions - [ ] Secret realm exploration - [ ] Martial tournaments - [ ] Sudden events - [ ] Treasure/cave emergence - [ ] Novelized/CG/film-style presentations - [ ] Natural events: - [ ] Natural disasters - [ ] Beast tides ### βš”οΈ Combat - [ ] Combat design (roots influence skills and styles) - [ ] Advantages and counters - βœ… Win-rate estimation (simple) ### πŸŽ’ Items - βœ… Basic items and spirit stones - [ ] Trading mechanics - [ ] Economy system ### 🌿 Ecology - βœ… Animals and plants - βœ… Hunting, gathering, materials - [ ] Beasts/monsters ### πŸ€– AI Enhancements - βœ… LLM interface integration - βœ… Character AI (rules AI + LLM AI) - βœ… Coroutine decision making, async, multithreaded speedups - βœ… Long-term planning and goal-driven behavior - βœ… Reactive responses to external stimuli - βœ… LLM-driven NPC dialogue, thinking, interaction - βœ… LLM-generated micro-stories - βœ… Use different models (max/flash) per task needs - βœ… Micro-theaters - βœ… Battle micro-theaters - βœ… Dialogue micro-theaters - βœ… Multiple writing styles - [ ] NPC observation space design - [ ] One-off choices (e.g., switch techniques or not) - [ ] Long-term memories / unforgettable memories ### πŸ›οΈ World Lore - [ ] Lore framework - [ ] Worldbuilding - [ ] Ancient history generation ### Specials - βœ… Fortuitous encounters - [ ] Paths/Daos - [ ] Possession & Rebirth - [ ] Formations - [ ] Opportunities - [ ] Tribulations & Heart devils - [ ] Flexible world rules - [ ] Divination & Omens - [ ] Male-female traits inversion ## Usage ### Run Steps 1. Clone the repo: ```bash git clone https://github.com/your-username/cultivation-world-simulator.git cd cultivation-world-simulator ``` 2. Install dependencies: ```bash pip install -r requirements.txt ``` 3. Configure LLM: Edit `static/config.yml`: ```yaml llm: model_name: "gpt-3.5-turbo" # or another model supported by LiteLLM key: "your-api-key-here" # your API key ``` See the LiteLLM docs: [`link`](https://docs.litellm.ai/docs/providers) 4. Run the simulator: ```bash python -m src.run.run ``` ### Basic Operations - A random map is generated at startup - Observe characters moving and acting in the world - Press ESC to quit ## Contributing Contributions are welcome! ## License This project is licensed as specified in [`LICENSE`](LICENSE). ## Contact Open an issue or pull request if you have questions or suggestions.