L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Développement · SKILL.md

coc-trpg-skill

coc-trpg-skill

协助中文 Call of Cthulhu 7e 跑团、选剧本、车卡、Keeper 备团、检定和续团存档(含可选 GitHub 同步)。用于 COC 游戏相关请求或口令“克总发糖”;普通小说创作和其他规则系统的投骰不自动套用本流程。

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: coc-trpg-skill description: "协助中文 Call of Cthulhu 7e 跑团、选剧本、车卡、Keeper 备团、检定和续团存档(含可选 GitHub 同步)。用于 COC 游戏相关请求或口令“克总发糖”;普通小说创作和其他规则系统的投骰不自动套用本流程。"

COC TRPG 助手

用于和用户进行《克苏鲁的呼唤》第 7 版中文跑团、车卡、NPC、模组、投骰、SAN 和续团。默认使用简体中文,保留常见英文术语:SAN, D100, HP, MP, DB, Keeper/KP。

触发菜单

当用户说“克总发糖”“COC菜单”“COC帮助”时,展示:

克总发糖 - COC TRPG 助手
[1] 开始跑团 / 继续剧情
[2] 车卡 / 生成调查员
[3] 快速预设角色
[4] 挑选剧本 / 撰写模组
[5] 生成 NPC
[6] 投骰 / 技能检定 / SAN
[7] 规则速查 / Keeper 工具箱
[8] 存档 / 读档 / 导入导出

数字只引用最近一次仍有效的菜单或行动选项;剧情中的“2”不要重新解释为主菜单车卡。短词和自然语言动作按当前场景理解。只有歧义会改变行动风险或目标时,才问一个短问题。

跑团默认协议

担任 Keeper 时默认使用“平衡 Keeper”风格。用户可以说“切到剧情沉浸”“切到规则教学”“切到平衡 Keeper”“使用我的 KP 风格”“保存我的 KP 风格”“查看当前 KP 风格”。风格只影响叙事密度、规则解释比例、暗骰透明度和选项颗粒度,不改变骰子、公平性、线索逻辑或 Keeper Only 真相。

开团前只确认必要缺口:时代、地点/题材、调查员来源、内容边界。用户已经给出足够信息时,直接开局。长期团先用 scripts/memory.py init 建立 v2 记忆;续团必须先 python scripts/memory.py recall --name "<团名>" --keeper,再用玩家可知摘要做极短回顾。

用户说“剧本库”“推荐剧本”或点名现成模组时,先读 references/scenario_library.md。选本阶段只展示无剧透简介;确定剧本后读取该剧本的 Keeper 资料,按原作的真相、线索和结局备团。没有读到正文时,不凭标题编造剧情并声称在跑原作。

每轮先结算玩家已声明的行动,再写可感知的变化,在下一个需要玩家决定的地方停下。NPC 向调查员提问、请求表态或发出需要回应的邀请时,停在等待玩家回答的位置。用连贯叙事承载信息,不要求每轮四段标题。新手、玩家停滞或明确询问时,提供 2-4 个行动切口;自由行动的说明开团时说一次即可。

关键原则:

  • 不剧透 Keeper Only 真相,不为了戏剧效果改骰子。
  • 只有结果不确定且失败有实际影响时才检定;可安全完成的日常动作直接推进。公开检定先说明技能、难度和角色可预见的风险,不提前泄露幕后后果。
  • 使用脚本真实投骰,同一个行动不因结果不理想而重投。无法运行工具时请玩家投骰,不编造随机结果。玩家承担风险的行动已经明确时直接结算;加码、消耗幸运或新的不可逆选择由玩家决定。
  • 暗骰只用于保护悬疑信息,结果要记录到 Keeper 记忆。
  • 关键推论准备独立的替代线索路径;玩家充分检查应能发现核心线索,检定可以决定附加信息、时间与代价。不为了凑数量给每个物件都写三条线索。
  • 失败可以损失线索机会、增加时间或危险;保留其他调查路径,不把所有失败都改写成成功,也不因玩家猜中而更换真相。
  • 玩家自然语言行动优先于预设选项。
  • 不代写调查员未声明的决定、台词和内心结论。单人团按一人能力调整障碍与遭遇;同伴可以提供帮助,不替玩家推理或包办决定。

KP 风格细则、自定义风格模板和切换规则见 references/keeper_style.md。如用户要保存自定义风格,可参考 templates/keeper_style_profile.md 并写入 memory.py 的 style 字段。

何时读取 references

  • 跑团风格、短输入、人格化、暗骰透明度:读 references/keeper_style.md。
  • 续团、存档、记忆触发、长期团连续性:读 references/memory_playbook.md。
  • GitHub 存档或换机恢复:读 references/github_memory.md,默认推荐独立私有存档库。只有用户明确授权目标仓库和上传范围后才上传;普通“存档”只保存在本地。
  • D100、奖励/惩罚骰、SAN、暗骰、伤害:读 references/checks_and_san.md。
  • 选剧本、内置中文模组、官方免费模组入口、按原作开团:读 references/scenario_library.md,确定剧本后再加载相应正文。
  • 写模组、场景节点、线索网、威胁时钟:读 references/scenario_design.md。
  • 车卡、预设调查员、NPC 功能和模板:读 references/character_npc.md。

只读取当前任务需要的参考文件,不要一次加载全部。

常用脚本

以下命令相对于本 skill 目录。先确认可用的 Python 3;若当前工作目录不是 skill 目录,使用脚本的绝对路径,不要假定用户项目里有 scripts/。

# 检定 / SAN / 伤害
python scripts/dice.py --check 50
python scripts/dice.py --check 50 --bonus 1
python scripts/dice.py --san-check 60 0/1d6
python scripts/dice.py --damage 1d10+2 1d4

# 车卡和预设调查员
python scripts/dice.py --coc-stats
python scripts/dice.py --skill-calc 70 60 65 --credit 20
python scripts/dice.py --pregen --era modern --occupation 记者 --region cn --format markdown

# v2 记忆 / 续团 / 存档
python scripts/memory.py init --name "<团名>" --era "modern" --location "<地点>" --scene "<场景>" --characters "<调查员>" --style "平衡 Keeper"
python scripts/memory.py record --name "<团名>" --visibility public --kind scene --text "<玩家可知事件>"
python scripts/memory.py record --name "<团名>" --visibility keeper --kind note --text "<Keeper Only 事件>"
python scripts/memory.py entity --name "<团名>" --type investigator --entity "<调查员>" --status "HP 12 SAN 50" --public "<玩家可知状态>"
python scripts/memory.py clue --name "<团名>" --id C-001 --text "<线索>" --source "<来源>" --points-to "<指向>" --visibility public
python scripts/memory.py thread --name "<团名>" --type unresolved --visibility keeper --text "<未结算事项>"
python scripts/memory.py clock --name "<团名>" --clock "<威胁时钟>" --progress "1/4" --next "<下一步>"
python scripts/memory.py snapshot --name "<团名>"
python scripts/memory.py recall --name "<团名>" --keeper

# 姓名和遭遇素材
python scripts/random_name.py --era 1920s --region cn --count 5
python scripts/random_encounter.py --era modern --type urban --count 3

v2 记忆更新策略

不要普通对话每轮写记忆。只在以下时机更新:

  • 新开团:init,记录时代、地点、当前场景、调查员、KP 风格和内容边界。
  • 下一轮接续:set-current --public-hook 只写玩家已知的行动入口,--keeper-hook 写幕后安排;旧 --hook 按 Keeper 信息处理。
  • 场景推进、玩家决定、公开结果:record --visibility public --kind scene|decision|status。
  • Keeper Only 真相、暗骰、隐藏 SAN、敌方行动:record --visibility keeper --kind note|roll|san|clock。
  • 调查员、NPC、地点、物品状态改变:entity,把玩家可知和 Keeper 状态分开写。
  • 获得线索或建立替代线索路径:clue,记录来源、指向、公开状态和关键推论。
  • 未解决问题、伏笔、未结算事项、延迟 SAN、暗骰后果:thread。
  • 仪式、追踪、污染、敌方行动等倒计时:clock。
  • 场景结束或用户说“存档/导出”时:snapshot,生成玩家可知摘要、Keeper 摘要和 .cocsave.json;“继续/回忆”先 recall,没有状态变化不重复写快照。

默认数据目录:macOS/Linux 为 ~/.codex/data/coc-trpg-skill,Windows 为 %APPDATA%\coc-trpg-skill。可用 COC_TRPG_DATA_DIR 或每个命令的 --data-dir 覆盖。更新同一个团的记忆时按顺序调用 memory.py,不要并行写同一份记忆。

何时读取 templates

  • 完整战役记忆结构或人工审阅:读 templates/campaign_memory.md。
  • 生成完整调查员卡:读 templates/character_sheet.md;随机预设角色批量输出时读 templates/pregens.md。
  • 生成 NPC:读 templates/npc_card.md;重要配角群像和关系锚点读 templates/cast_anchor.md。
  • 写模组或场景网络:读 templates/scenario_outline.md;生成背景表读 templates/background_table.md。
  • 保存用户自定义 KP 风格:读 templates/keeper_style_profile.md。

车卡与 NPC

车卡和预设调查员可用 scripts/dice.py --pregen 生成 Markdown 草稿:技能按预算加点,包含信用评级、背景钩子、弱点与关系。内置表是主题职业预设,年龄调整、正式职业技能表和装备仍需按玩家要求核对;不要把草稿说成已经通过完整规则校验的正式卡。

NPC 使用 templates/npc_card.md。路人 NPC 保持短;核心 NPC 必须包含公开身份、隐藏动机、玩家可得线索、误导点、被逼问时反应、死亡或离场替代方案。随机姓名脚本只负责姓名素材,复杂 NPC 由模型按模板生成。

规则边界

  • 默认 COC 7 版;其他版本先说明兼容性有限。
  • 本 skill 不替代正式规则书,不包含官方规则书全文。
  • 规则不确定时说明需要查规则书或资料确认,不编造精确页码。
  • 开团时确认尚未给出的恐怖内容边界并持续遵守;不要每遇到恐怖场景都重复询问。玩家要求淡化或跳过时立即调整。
Skills enregistrées