Files
aibis-dream/Assets/Scripts/MiniGame/HuoShan/Language/SYSTEM_ARCHITECTURE.md
T
2025-12-04 20:38:02 +08:00

7.3 KiB
Raw Blame History

语言系统架构说明

🎯 系统分离

正确的架构

两个独立的系统:

1. ExpressionManager (表达系统)
   └── LanguageParticleManager (粒子表达)
   
2. LanguageAnalysisManager (语言分析系统)
   └── MemoryDecryptorMode (记忆解密器)
       └── 未来可扩展其他分析模式

📋 系统对比

特性 ExpressionManager LanguageAnalysisManager
用途 粒子表达、情绪可视化 语言解密、分析解谜
FixState Expression LanguageAnalysis
相机 Expression / ExpressionDeep LanguageAnalysis / LanguageAnalysisDeep
Yarn 进入 - <<enter_language_analysis>>
Yarn 退出 - <<exit_language_analysis>>
子系统 LanguageParticleManager MemoryDecryptorMode
命名空间 AibisDream AibisDream.MiniGame.Language

🎮 使用指南

使用表达系统 (ExpressionManager)

title: UseExpression
---
<<open_expression>>
<<start_expression "我好怕|怎么办" "我能做到" "Done">>
===

用于: 粒子效果、情绪表达、焦虑转化等

使用语言分析系统 (LanguageAnalysisManager)

title: UseLanguageAnalysis
---
<<enter_language_analysis>>
<<memory_decryptor_start Success>>
===

用于: 记忆解密、语言解谜、频率调谐等

📂 文件组织

Assets/Scripts/MiniGame/HuoShan/Language/
├── ExpressionManager.cs                    # 表达系统管理器
├── LanguageParticleManager.cs              # 粒子系统
├── LanguageYarnCommand.cs                  # 表达系统 Yarn 命令
│
├── LanguageAnalysis/                       # 语言分析系统文件夹
│   ├── LanguageAnalysisManager.cs          # ✅ 主管理器
│   ├── LanguageAnalysisYarnCommands.cs     # ✅ Yarn 状态切换命令
│   ├── README.md                           # 系统说明
│   ├── SETUP_GUIDE.md                      # 设置指南
│   └── QUICK_REFERENCE.md                  # 快速参考
│
└── MemoryDecryptor/                        # 记忆解密器子系统
    ├── MemoryDecryptorMode.cs              # ✅ 核心逻辑(属于 LanguageAnalysis
    ├── MemoryDecryptorRenderer.cs          # 渲染器
    ├── MemoryDecryptorInputHandler.cs      # 输入处理
    ├── MemoryDecryptorYarnCommands.cs      # ✅ 解密器命令(调用 LanguageAnalysisManager
    ├── MemoryDecryptorData.cs              # 数据结构
    └── MemoryDecryptorConfigExample.cs     # 配置示例

🚀 完整使用流程

语言分析系统(你应该使用的)

title: Start
---
准备进入语言分析系统...

// 1. 进入语言分析状态(完整的状态机切换)
<<enter_language_analysis>>

// 2. 启动记忆解密器
<<memory_decryptor_start GameSuccess>>

提示:调整频率到 90Hz,移动解码器条...
===

title: GameSuccess
---
🎉 成功解密!
<<memory_decryptor_stop>>
<<exit_language_analysis>>
===

title: GameSuccess_Fail
---
再试试...
===

🎯 Yarn 命令完整列表

语言分析系统命令

命令 功能 调用对象
<<enter_language_analysis>> 进入语言分析状态 LanguageAnalysisYarnCommands
<<exit_language_analysis>> 退出语言分析状态 LanguageAnalysisYarnCommands
<<memory_decryptor_start>> 启动解密器 MemoryDecryptorYarnCommands → LanguageAnalysisManager
<<memory_decryptor_filter_start>> 开始过滤 MemoryDecryptorYarnCommands → LanguageAnalysisManager
<<memory_decryptor_set_frequency>> 设置频率 MemoryDecryptorYarnCommands → LanguageAnalysisManager
<<memory_decryptor_check>> 检查匹配 MemoryDecryptorYarnCommands → LanguageAnalysisManager
<<memory_decryptor_stop>> 停止解密器 MemoryDecryptorYarnCommands → LanguageAnalysisManager

表达系统命令(独立使用)

命令 功能
<<open_expression>> 打开表达视图
<<start_expression>> 启动粒子系统
<<close_expression>> 关闭表达系统
<<reset_expression>> 重置表达系统

🏗️ 场景设置

方式 A:完整集成(推荐)

Hierarchy:
├── FixSystemCenter
│   └── LanguageAnalysisManager          # ✅ 语言分析系统
│       ├── Language Analysis View
│       │   ├── Canvas (UI)
│       │   └── MemoryDecryptorMode      # 记忆解密器
│       │       ├── MemoryDecryptorRenderer
│       │       └── MemoryDecryptorInputHandler
│       ├── Language Analysis Camera
│       └── Language Analysis Deep Camera
│
└── ExpressionManager                     # 表达系统(独立)
    └── LanguageParticleManager

方式 B:快速测试

Hierarchy:
└── LanguageAnalysisManager (只测试语言分析)
    └── ... (同上)

📝 快速开始

1. 最简设置

  1. 创建 LanguageAnalysisManager 对象
  2. 添加 UI 和相机
  3. 添加 MemoryDecryptorMode 子组件(不需要设置 Config
  4. 连接 UI 引用

2. 测试 Yarn

<<enter_language_analysis>>
<<memory_decryptor_start>>

3. 操作界面

  • 点击"启动过滤分析"
  • 调整频率到 90Hz
  • 拖动解码器条到 (3, 5)
  • 点击"验证对齐"
  • 成功!

⚠️ 重要提示

不要使用

以下命令已从 ExpressionManager 中移除:

  • <<switch_to_particle_mode>>
  • <<switch_to_memory_decryptor_mode>>
  • ExpressionManager 中的任何 MemoryDecryptor 方法

应该使用

语言分析系统:

  • <<enter_language_analysis>> - 进入
  • <<memory_decryptor_*>> - 解密器命令
  • <<exit_language_analysis>> - 退出

表达系统:

  • <<open_expression>>
  • <<start_expression>>
  • <<close_expression>>

🎉 系统优势

清晰的职责划分

  • ExpressionManager → 专注于粒子表达
  • LanguageAnalysisManager → 专注于语言解密

独立的状态管理

  • 通过 FixStateMachine 统一管理
  • 每个系统有独立的 FixState
  • 符合项目整体架构

易于测试

  • 可以单独进入 LanguageAnalysis 状态
  • 不影响其他系统
  • 完整的生命周期管理

🔧 文档索引

语言分析系统(你要用的)

  • 快速参考: LanguageAnalysis/QUICK_REFERENCE.md
  • 设置指南: LanguageAnalysis/SETUP_GUIDE.md
  • 系统说明: LanguageAnalysis/README.md
  • 测试对话: LanguageAnalysis/TestLanguageAnalysis.yarn

记忆解密器(子系统)

  • 详细文档: MemoryDecryptor/README.md
  • 快速入门: MemoryDecryptor/QUICKSTART.md
  • 自动配置: MemoryDecryptor/AUTO_CONFIG_FEATURE.md

表达系统(独立系统)

  • 使用说明: LanguageParticleSystem_Summary.md
  • Yarn 命令: LanguageYarnCommand.cs

🎯 记住

使用语言分析系统时:

  1. <<enter_language_analysis>> 进入状态
  2. 再使用记忆解密器命令
  3. 最后 <<exit_language_analysis>> 退出

不要混用两个系统!它们是独立的!


📖 开始使用: 查看 LanguageAnalysis/QUICK_REFERENCE.md
🚀 快速测试: 导入 LanguageAnalysis/TestLanguageAnalysis.yarn