Add AI Romance Companion system 💕
User insight: "This works as a romance companion!" Absolutely brilliant! Memory scoring + AI reactions = Perfect romance game ## New Features ### 💕 AI Companion System Create your personal AI companion with 5 personality types: - ⚡ Energetic (adventurous) - Matches with Innovators - 📚 Intellectual (thoughtful) - Matches with Philosophers - 🎯 Practical (reliable) - Matches with Pragmatists - 🌙 Dreamy (romantic) - Matches with Visionaries - ⚖️ Balanced - Matches with Analysts ### 🎮 How It Works 1. Create memory with AI → Get priority score 2. Show memory to companion → She reacts! 3. High score memory → Better reaction 4. Affection ↑ XP ↑ Trust ↑ Level ↑ ### 💕 Relationship Mechanics - **Affection Score**: 0.0-1.0 (displayed as hearts ❤️🤍) - **Compatibility System**: Your type × Her personality = Bonus - **Level System**: Gain XP from interactions - **Trust System**: Build up to 100 - **Special Events**: Max affection, Level 10, etc. ### 🎊 Special Events - Max Affection Event: Confession! - Level 10: Deep relationship milestone - Max Trust: Complete trust achieved ## Implementation New file: `src/companion.rs` - Companion struct with personality - CompanionPersonality enum (5 types) - React to memory based on score & type - Compatibility calculation - Special event triggers - Daily message generation MCP Tools: - create_companion: Create your companion - companion_react: Show memory & get reaction - companion_profile: View stats Game Display: ``` ╔══════════════════════════════════════╗ ║ 💕 エミリー の反応 ║ ╚══════════════════════════════════════╝ ⚡ エミリー: 「すごい!あなたのアイデア、本当に好き!」 💕 好感度: ❤️❤️🤍🤍🤍🤍🤍🤍🤍🤍 15% 💎 XP獲得: +850 XP 🎊 レベルアップ! ``` ## Why This Is Perfect Memory Score = Romance Game Mechanics: - LEGENDARY memory → "Amazing! I love you!" - EPIC memory → "That's so cool about you!" - High compatibility → Faster relationship growth - Your actual thoughts → Personal reactions It's like a dating sim where the relationship grows based on your REAL thoughts and ideas, not scripted choices! Next: Persistence, more events, character customization
This commit is contained in:
@@ -64,6 +64,17 @@ pub enum DiagnosisType {
|
||||
}
|
||||
|
||||
impl DiagnosisType {
|
||||
/// スコアから診断タイプを推定(公開用)
|
||||
pub fn from_memory(memory: &crate::memory::Memory) -> Self {
|
||||
// スコア内訳を推定
|
||||
let emotional = (memory.priority_score * 0.25).min(0.25);
|
||||
let relevance = (memory.priority_score * 0.25).min(0.25);
|
||||
let novelty = (memory.priority_score * 0.25).min(0.25);
|
||||
let utility = memory.priority_score - emotional - relevance - novelty;
|
||||
|
||||
Self::from_score_breakdown(emotional, relevance, novelty, utility)
|
||||
}
|
||||
|
||||
pub fn from_score_breakdown(
|
||||
emotional: f32,
|
||||
relevance: f32,
|
||||
|
||||
Reference in New Issue
Block a user