Skip to content

About

Dynamic context-aware colonist conversations (Pawn-to-Pawn & Player-to-Pawn) with cadence control

Topics

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

RimMind-Dialogue 💬

Contextual Social Dialogue, Native Spoken ToolCalls & Overhead Bubbles for RimWorld 1.6

English | 简体中文

RimWorld 1.6 Dependency: RimMind-Core Unit Tests License: MIT

Imbue your colonists with spontaneous, context-aware conversations, natural banter, and evolving relationships.


📖 Overview

RimMind-Dialogue brings RimWorld colonists to life through organic, natural spoken interactions. Powered by the native express_dialogue function call architecture, colonists talk to each other while eating in dining halls, laboring at craft benches, or resting by campfires.

Core Capabilities

  • Native express_dialogue ToolCall: Transmits spoken dialogue, internal psychological subtext, and relationship delta modifiers (relation_delta: [-5, 5]) as structured function parameters, completely eliminating JSON prompt leakage.
  • Contextual Spoken Triggers: Conversational opportunities trigger organically based on physical proximity (radius 6.9 tiles), shared activities (dining, recreation), and mutual social opinions.
  • Dynamic Relationship Evolution: Conversations dynamically impact mutual pawn opinions, fostering deep romances, bitter rivalries, or lasting camaraderie.
  • Smooth Overhead Speech Bubbles: Renders text motes directly above colonists' heads with word wrapping and gentle fading animations.

🎮 In-Game Showcase

RimMind-Dialogue Showcase Overhead spoken dialogue in the dining hall: Colonists share natural banter over a meal, with speech bubbles and live opinion adjustments.


🏛️ Architecture & Dialogue ToolCall Flow

flowchart TD
    NearbyPawns["Nearby Colonists (Radius < 6.9)"] --> Trigger["Social Context Trigger (Dining / Crafting)"]
    Trigger --> CoreReq["Submit Request via RimMind-Core"]
    CoreReq --> ToolCall["LLM Returns express_dialogue ToolCall"]
    ToolCall --> Parser["DialogueToolParser (Dual Mode & Sanitization)"]
    Parser --> Bubble["Overhead Speech Bubble Rendering"]
    Parser --> Social["Update Pawn Opinion / Relationship"]
    Parser --> Thought["Inject Dialogue Thought into Mind"]
Loading

🛠️ Installation & Load Order

1. Harmony
2. Core (Vanilla RimWorld)
3. RimMind-Core
4. RimMind-Dialogue

🧪 Developer Guide & Testing

Run unit tests covering dialogue schema parsing, arguments unescaping, and opinion delta boundaries:

dotnet test RimMind-Dialogue/Tests/RimMindDialogue.Tests.csproj -c Release

📜 License

Licensed under the MIT License.

About

Dynamic context-aware colonist conversations (Pawn-to-Pawn & Player-to-Pawn) with cadence control

Topics

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages