查漏补缺

你的理解非常准确。我来逐条确认,并补充你可能遗漏的算法模块。


一、LLM负责的部分(内容生成)

用途 说明 是否需要LLM
普通场景生成 每轮20个场景,共200轮,由LLM生成描述和选项 ✅ 是
层间事件生成 每层一次,生成场景、选项,并指定陷阱选项 ✅ 是
BOSS个性化设定 根据道德比例生成心魔形态、开场白、战斗中的动态台词 ✅ 是(或预配置+变量)
卡牌名称与描述 每张普通牌和万能牌的名称、描述由LLM生成 ✅ 是
新手引导文本 可放在RAG数据库或静态文本,也可由LLM生成 ⚠️ 可选(静态更稳)
帮助文档 静态文本,无需LLM ❌ 否

核心原则:LLM只负责叙事内容,不参与游戏机制的逻辑判断。


二、代码负责的算法模块(游戏机制)

2.1 道德倾向算法(核心)

  • 输入:玩家每轮选项(A/B/C/D)
  • 处理
    • 根据选项更新善、恶、中立数值(含基础分和连续选择加成)
    • 每轮后检查是否触发极端结局(比例≥阈值)
    • 200轮后计算普通结局比例
  • 输出:道德三值、是否触发结局

2.2 每层牌数控制算法

目前的设计是每轮必得1张普通牌,加上层间事件可能获得0或1张万能牌。这已经是最简形式,几乎算不上“算法”,只是一个简单的计数器:

每轮结束后:
  获得1张普通牌,类型由选项决定
  总普通牌数+1

如果未来需要调整牌数(如某些轮不获得),只需在配置中指定哪些轮次无牌,逻辑依然简单。

2.3 BOSS战规则算法

  • 输入:双方手牌(类型、数量)、玩家动作(质疑/跟/不跟)
  • 处理
    • 判定质疑结果(翻牌验证、计算胜负)
    • 更新手牌(收回、弃牌、额外弃牌)
    • 切换先手方
    • 检查胜利条件(手牌数为0)
  • 输出:对局状态、胜负结果

2.4 层间事件陷阱判定

  • 可由代码随机指定一个选项为陷阱,无需LLM参与逻辑。
  • 也可由LLM在生成时标记陷阱选项(如JSON返回trap: "C"),代码读取即可。推荐后者,让LLM控制叙事一致性。

2.5 结局判定

  • 极端结局:由道德倾向算法实时触发。
  • 普通结局:200轮后根据最终比例分档。
  • BOSS战结局:结合BOSS战胜负与道德倾向,生成最终结局文本(可由LLM生成,也可预置)。

2.6 背包管理

  • 纯数据结构:存储当前层获得的每张卡牌(类型、名称、描述、获得轮次)。
  • 提供查询接口(packcard)。

2.7 辅助功能

  • 状态显示(status):根据道德比例输出模糊描述(如“善念较重”)。
  • 存档/读档(如需):序列化当前游戏状态。

三、可能遗漏的算法模块

3.1 BOSS AI 策略(如果BOSS不是纯随机)

  • 如果希望BOSS有一定智能,需要设计决策算法(如根据手牌分布、玩家历史行为决定是否质疑、跟牌或不跟)。
  • 可以是基于规则的简单AI(例如:当怀疑概率>阈值时质疑),也可以由LLM实时生成BOSS的“思考”并做出决策,但后者复杂且慢。建议用规则AI。

3.2 同伴系统(如果加入)

  • 同伴在平时给出建议,需要根据当前道德值、场景类型生成对话(可由LLM生成)。
  • 同伴在BOSS战的建议(如“我觉得他在虚张声势”)也可由LLM生成,但需注意调用频率。

3.3 轮回奖励/图鉴系统

  • 记录已解锁结局、卡牌图鉴,纯数据存储,无复杂算法。

四、技术架构总结

┌─────────────────┐
│    玩家输入     │
└────────┬────────┘
         ▼
┌─────────────────────────────────────┐
│          游戏主循环(代码)          │
│  - 解析指令(选项/背包/状态/帮助)   │
│  - 调用道德算法更新数值               │
│  - 调用牌数控制记录卡牌               │
│  - 检查结局触发                       │
│  - 调用LLM生成下一场景(如需要)      │
└─────────────────────────────────────┘
         │
         ▼
┌─────────────────────────────────────┐
│            LLM服务(可选)           │
│  - 场景生成(普通/层间)             │
│  - 卡牌名称描述生成                   │
│  - BOSS个性化台词生成                 │
└─────────────────────────────────────┘
         │
         ▼
┌─────────────────────────────────────┐
│             数据存储                  │
│  - 道德三值                           │
│  - 当前层卡牌列表                     │
│  - 游戏进度(层数、轮次)             │
└─────────────────────────────────────┘

算法数量

  • 核心算法:2套(道德倾向算法、BOSS战规则算法)
  • 辅助逻辑:牌数计数、陷阱判定、结局判定(可视为简单逻辑,不算复杂算法)

五、你的总结非常准确

“用到LLM的我觉得就场景生成,两套模板,BOSS设定,新手指引啥的可以放文本也可以放RAG数据库,背包完全可以由项目完成不需要LLM记忆,LLM对于BOSS战策略这块也是一个点”

完全正确。补充两点:

  1. BOSS战策略可以用LLM作为“AI队友”提供建议,但核心对战逻辑仍是代码。
  2. 除了场景生成,卡牌名称描述也建议由LLM生成,以增强收藏感和叙事连贯性。

如果你准备进入开发阶段,可以基于这份总结搭建技术方案。

posted @ 2026-03-15 01:44  神秘园欢迎您  阅读(27)  评论(0)    收藏  举报