Infinite dialogue for Stardew Valley - A SMAPI mod that uses AI language models to generate dynamic, contextual conversations with NPCs.
- 🤖 AI-Powered Dialogue: Generate infinite, contextual conversations using various AI language models
- 🎭 Character Consistency: Each NPC maintains their unique personality and speaking style
- 🌍 Multi-Language Support: Translation on the fly or using prompt translation packs.
- 📱 Cross-Platform: Works on PC, Mac and Linux.
- 🔌 Multiple AI Providers: Support for OpenAI, Anthropic Claude, Google Gemini, Mistral, DeepSeek, and more
- 📚 Content Pack Support: Full Content Patcher support and content pack for SVE.
- ⚙️ Highly Configurable: Extensive configuration options through Generic Mod Config Menu
ValleyTalk requires configuration of an AI language model provider. The mod supports:
- OpenAI (GPT-3.5, GPT-4)
- Anthropic Claude
- Google Gemini
- Mistral AI
- DeepSeek
- VolcEngine
- LlamaCpp (for local models)
- OpenAI-Compatible APIs
Configure your preferred provider through the mod's config file or using Generic Mod Config Menu.
The mod uses Harmony patches to intercept dialogue requests and generates contextually appropriate responses based on:
- Character personalities and relationships
- Current game state and events
- Player history and interactions
- Seasonal and temporal context
- DialogueBuilder: Core AI dialogue generation system
- Character Management: Maintains NPC personality profiles
- Event History: Tracks game events for contextual awareness
- LLM Integration: Supports multiple AI provider APIs
- Content Packs: Modular character and prompt system
# Clone the repository
git clone https://github.com/dandm1/ValleyTalk.git
cd ValleyTalk
# Build the project
dotnet build src/ValleyTalk.csprojValleyTalk/
├── src/ # Main mod source code
│ ├── llms/ # AI provider implementations
│ ├── config/ # Files related to mod configuration
│ ├── Generation/ # Dialogue generation logic
│ ├── Patches/ # Harmony patches
│ ├── Interop/ # API for interaction with other mods
│ └── UI/ # User interface components
├── ContentPack/ # Base content pack
│ └── assets/ # Character bios and prompts
└── Extensions/ # Mod extensions (SVE support)
ValleyTalk provides an API for other mods to interact with the dialogue system:
// Example: Access the ValleyTalk interface
var vtInterface = Helper.ModRegistry.GetApi<IValleyTalkInterface>("dandm1.ValleyTalk");This allows other mods to temporarily override parts of the prompt for specific game characters, to update the results based on that mod's context.
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is available under LGPL v3.
- Issues: Report bugs and request features on GitHub Issues
- Nexus Mods: Community discussion on the mod page
- Built with SMAPI by Pathoschild
- Uses Harmony for runtime patching
- Stardew Valley by ConcernedApe
- Community translations and feedback
Enhance your Stardew Valley experience with endless, personalized conversations!