核心用法
dnd-dm 是一个将传统桌面角色扮演游戏(D&D 5e)AI化的三层架构系统。用户通过自然语言与AI城主"明萨拉·班瑞"交互,无需专用客户端,任何IM软件即可运行游戏。核心流程为:用户描述行动 → LLM层生成叙事并发起检定 → 引擎层执行骰子/战斗/存档计算 → API层返回结构化结果 → LLM层渲染最终呈现。
系统采用严格分层设计:上层依赖下层,下层零LLM依赖。引擎层(dnd-engine)为纯Python实现,包含90项测试覆盖的骰子、战斗、存档、SRD搜索等功能;API层(dnd-api)提供30个HTTP端点,支持跨平台调用;LLM层(dnd-dm Skill)专注叙事、NPC对话与行为红线,绝不自行计算数值。
显著优点
1. 规则权威性:严格遵循2024版D&D 5e规则,26条运行规则按6层架构组织,避免2014版混淆;检定流程6步标准化,自然1不重投保证公平性。
2. 架构健壮性:三层分离使引擎层可独立运行,90项pytest测试确保核心功能零回归;API自动端口检测,支持Discord/Foundry/Web等多平台接入。
3. 模组兼容性:支持官方模组剧本推进,15条行为红线防止DM偏离剧情或放水作弊;渐进式探索引导(幕前暗示+幕后场景缓存)平衡自由度与结构化。
4. 开发规范性:DM_DEV_GUIDE强制三层分析(新增功能需判定归属层),角色创建7阶段对话式流程、存档系统模板工厂化,降低维护成本。
潜在局限
- 版权依赖:规则书与模组需用户自行准备,无法开箱即用
- 环境要求:需Python 3.10+环境,对非技术用户存在门槛
- LLM幻觉风险:虽有多层约束,复杂场景下叙事与引擎状态仍需人工校验同步
- 实时性限制:纯对话交互,缺乏专用客户端的视觉地图/ token 追踪功能
适合人群
- 熟悉D&D 5e规则、希望降低DM负担的资深玩家
- 需要自动化战斗裁决与存档管理的线上跑团群体
- 具备基础Python环境配置能力的技术型用户
- 追求规则严格性而非自由即兴的守序阵营玩家
常规风险
| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 数值作弊 | LLM层禁止自行计算AC/DC/检定格式 | 强制调用引擎层,6层规则架构常驻校验 |
| 剧情偏离 | 红线规则1禁止自创无关大段剧情 | 模组缓存与行为红线双重约束 |
| 数据丢失 | 存档系统依赖本地JSON文件 | 版本控制建议,定期手动备份saves/目录 |
| 内容安全 | 严禁R18G及未成年人相关内容 | 15条行为红线明确禁止,可审计追溯 |