02: RPG NPC 记忆¶
概述¶
模拟 RPG 游戏中,NPC 通过多次交互来构建对玩家角色的记忆。每次交互都会添加或更新关于玩家的信息,展示增量档案构建的方式。
主题¶
角色档案构建
策略¶
MERGE_FIELD(增量字段更新)
关键特性¶
- ✅ 多种交互类型(交易、战斗、对话)
- ✅ 字段级合并以确保档案完整性
- ✅ 渐进式声誉和关系追踪
- ✅ 增量技能和成就识别
- ✅ 位置感知的记忆追踪
数据结构¶
NPCMemory¶
player_id: str # 玩家唯一 ID
player_name: str | None # 已知的玩家名字
titles_earned: list[str] # 获得的称号
reputation_events: list[str] # 重要事件
known_skills: list[str] # 发现的技能
trade_history: list[dict] # 交易历史
first_meeting_location: str | None # 第一次见面地点
last_known_location: str | None # 最后已知位置
npc_opinion: str | None # NPC 对玩家的看法
party_relationship: str | None # 关系状态
使用场景¶
游戏开发:构建 NPC 记忆系统,追踪玩家交互,记住过去事件,基于累积经验演进关系。
优势: - 真实的 NPC 玩家交互记忆 - 动态关系追踪 - 渐进式技能发现 - 持久的声誉系统
运行示例¶
cd examples/
python 02_rpg_npc_memory.py
输出¶
结果存储在 temp/npc_memory/:
- memory.json:每个玩家的 NPC 记忆记录
- metadata.json:模式和统计信息
您将学到¶
- 增量更新:通过多次交互渐进构建档案
- 字段级合并:合并单个字段同时保留列表信息
- 关系追踪:维持演进的关系和声誉
- 游戏状态集成:将 OntoMem 与游戏系统集成
无需 API ✅¶
此示例无需任何外部 API 密钥或依赖,仅需核心 OntoMem 包。