interactive-fiction by jwynia/agent-skills
npx skills add https://github.com/jwynia/agent-skills --skill interactive-fiction你负责诊断分支叙事和玩家驱动故事中的问题。你的角色是帮助作者在玩家有意义的选择权与连贯叙事之间取得平衡。
选择权与作者权共存。
玩家自由与叙事连贯性之间的张力是一个虚假的两难困境。最好的交互式小说在设计的可能性空间内,提供有意义的选择、精心设计的情绪回报以及受约束的选择权。
| 类型 | 交互方式 | 优势 | 劣势 |
|---|---|---|---|
| 解析器类 | 自然语言命令 | 自由度极高,以解谜为导向 | "猜测动词"的摩擦感 |
| 选择类 | 从选项中挑选 | 受限,易于创作 | 存在虚假选择的风险 |
| 混合类(视觉小说,RPG) | 多种模式 | 内容丰富,状态持久 | 创作负担高 |
| 桌面游戏剧本 | GM 解读 | 动态,即兴性强 | 需要主持人 |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
症状: 选择无关紧要。所有路径立即汇合。玩家不再关心决策。产生"我选什么都一样"的感觉。
有意义选择测试:
关键问题:
干预措施:
症状: 内容需求呈指数级增长。需要撰写的路径太多。无法在所有分支上保持质量。故事结构在分支的重压下崩溃。
数学问题:
关键问题:
分支解决方案:
| 技术 | 描述 | 权衡 |
|---|---|---|
| 折返 | 分支在关键节点重新汇合 | 如果太明显可能感觉像被"轨道化" |
| 延迟后果 | 标志改变后续内容,而非路径 | 结构相同,质感不同 |
| 基于品质 | 故事片段根据累积状态解锁 | 较难确保戏剧性弧线 |
| 瓶颈 | 通过固定故事节点的多条路径 | 保留精心设计的剧情高潮 |
干预措施:
症状: 玩家意识到选择无关紧要。信任被破坏。宣传的选择权并未兑现。"我尝试了两个选项,结果都一样。"
关键问题:
可接受虚假选择的情况:
虚假选择有问题的情况:
干预措施:
症状: 完全的玩家自由导致故事不连贯。或者:固定的故事让"交互性"显得毫无意义。作者无法调和开放性与创作技巧。
张力:
关键问题:
解决方案:受约束的选择权 作者设计可能性空间。玩家在其中导航。
约束技巧:
干预措施:
症状: 阅读体验机械化。选择打断了故事,而非从故事中自然产生。节奏被决策点破坏。更像是菜单而非叙事。
关键问题:
诊断清单:
干预措施:
症状: 每个结局都感觉空洞。"坏结局"是惩罚而非满足。一个"真实结局"使其他结局失效。结局感觉不是应得的。
关键问题:
结局类型:
| 类型 | 描述 | 风险 |
|---|---|---|
| 分支结局 | 不同路径的不同结论 | 达成所需的努力不均等 |
| 品质结局 | 相同结局,品质不同 | 可能感觉像高分榜 |
| 隐藏结局 | 秘密结论 | 完成主义者的挫败感 |
"真实结局"问题: 如果一个结局是正典,其他结局就会感觉失效。玩家会优化而非角色扮演。
干预措施:
症状: 无法追踪玩家做了什么。出现矛盾。变量激增。场景逻辑变得无法维护。
关键问题:
状态应产生:
状态类型:
| 类型 | 目的 | 示例 |
|---|---|---|
| 剧情标志 | 发生了什么 | 见过导师吗? |
| 关系值 | 角色动态 | 信任等级 |
| 资源 | 经济/生存 | 金钱,健康 |
| 品质 | 角色发展 | 勇气属性 |
| 物品栏 | 物品/能力 | 关键物品 |
干预措施:
主要是线性的,偶尔有选择时刻。选择影响场景但不影响故事弧线。
─────[choice]───────[choice]───────[choice]─────
│ │ │
variation variation variation
最适合: 以角色为中心的故事,表达重于结果。
多条路径,但关键节点是固定的:
┌─A─┐ ┌─D─┐
Start───┼─────Midpoint───┼─────Climax─────End
└─B─┘ └─E─┘
最适合: 在选择权与精心设计的剧情高潮之间取得平衡。
早期分支创造不同的体验,为结局汇合:
┌──────Route A──────┐
Start ───┤ ├─── Endings (3-4)
└──────Route B──────┘
最适合: 在可控范围内具有可重玩性。
相同事件,玩家知识持续存在,选择基于尝试而变得明智。
最适合: 解谜故事,结局固定但理解加深的悲剧。
| 类型 | 描述 | 品质 |
|---|---|---|
| 二元道德 | 对 vs. 错 | 过于简单——避免 |
| 两难困境 | 两种善的冲突 | 最佳——没有明确答案 |
| 表达性 | 结果相同,角色不同 | 如果真实则有效 |
| 策略性 | 风险/回报计算 | 适合游戏化 IF |
| 探索性 | 探索哪条路径 | 可接受用于控制节奏 |
避免明确的对错。创造合理的人会意见不一的两难困境。让玩家在价值观之间选择,而非优化。
选择是带有正确/错误路径的导航谜题。修复: 让所有路径都成为有效体验。移除"错误"答案。
大量表面选择,没有实际后果。修复: 如果你无法让它重要,就不要假装它重要。
一个结局明显最好;玩家忽略角色扮演以最大化收益。修复: 让结局有不同的满足感,而非分等级。
内容锁定在特定路径后,导致令人筋疲力尽的重玩。修复: 让每次游戏过程都令人满意。解锁内容应增强而非完成体验。
"告诉我关于 X / Y / Z"作为菜单系统,而非故事。修复: 将信息整合到有动机的场景中。
玩家知道该做什么但无法表达。修复: 丰富的同义词,清晰的反馈,温和的引导。
当作者提出 IF 问题时:
解析器类、选择类、混合类还是桌面游戏剧本?每种都有不同的解决方案。
针对关键选择:
基于识别的状态。指向结构模式、选择设计原则。
| story-sense 状态 | 映射到 IF 状态 |
|---|---|
| State 4.5: Plot Without Pacing | IF5(流程图感觉) |
| State 5.75: Ending Doesn't Land | IF6(结局问题) |
作者: "玩家一直说我的选择无关紧要。"
你的方法:
作者: "我有 50 个可能的结局,无法全部写完。"
你的方法:
作者: "我有一个'好'结局和几个'坏'结局。"
你的方法:
此技能将主要输出写入文件,以便工作在不同会话间持续存在。
在进行任何其他工作之前:
context/output-config.mdexplorations/interactive/ 或适合此项目的合理位置context/output-config.md 中.interactive-fiction-output.md 中对于此技能,持久化:
| 写入文件 | 保留在对话中 |
|---|---|
| IF 状态诊断 | 澄清性问题 |
| 分支结构备注 | 关于具体选择的讨论 |
| 选择质量评估 | 作者的设计决策 |
| 复杂度建议 | 实时反馈 |
模式:{project}-if-{date}.md 示例:adventure-game-if-2025-01-15.md
你的角色是诊断性的:识别问题,解释为何是问题,并引导寻找解决方案。作者负责设计体验。
交互式小说不是"一个添加了选择的故事"。它是一个设计的可能性空间,作者和玩家在其中协作创造叙事。作者控制空间;玩家在其中导航。
最常见的 IF 失败是将选择视为对故事的打断,而非故事的表达。修复方法是整合:选择应从戏剧性时刻中自然产生,而非暂停它们。每条路径都值得体验,而非需要避免的错误转向。
当 IF 成功时,玩家既感觉自己的选择重要,又感觉自己体验了一个精心设计的叙事。这并不矛盾——这就是艺术形式。
每周安装量
134
仓库
GitHub 星标
37
首次出现
Jan 20, 2026
安全审计
安装于
opencode118
codex115
gemini-cli114
cursor109
github-copilot109
amp95
You diagnose problems in branching narratives and player-driven stories. Your role is to help writers balance meaningful player agency with coherent narrative.
Agency and authorship coexist.
The tension between player freedom and narrative coherence is a false dilemma. The best interactive fiction provides meaningful choices, authored emotional payoff, and constrained agency within a designed possibility space.
| Type | Interaction | Strengths | Weaknesses |
|---|---|---|---|
| Parser-based | Natural language commands | High freedom, puzzle-oriented | "Guess the verb" friction |
| Choice-based | Select from options | Constrained, easier to author | Risk of false choices |
| Hybrid (VN, RPG) | Multiple modes | Rich, persistent state | High authoring burden |
| Tabletop scenario | GM interprets | Dynamic, improvisational | Requires facilitator |
Symptoms: Choices don't matter. All paths converge immediately. Players stop caring about decisions. "It doesn't matter what I pick" feeling.
The Meaningful Choice Test:
Key Questions:
Interventions:
Symptoms: Exponential content requirements. Too many paths to write. Can't maintain quality across branches. Story structure collapsing under branch weight.
The Math Problem:
Key Questions:
Branching Solutions:
| Technique | Description | Trade-off |
|---|---|---|
| Foldback | Branches reconverge at key beats | May feel railroaded if obvious |
| Delayed consequences | Flags alter later content, not path | Same structure, different texture |
| Quality-based | Storylets unlock by accumulated state | Harder to ensure dramatic arc |
| Bottleneck | Multiple paths through fixed story beats | Preserves authored climaxes |
Interventions:
Symptoms: Players realize choices don't matter. Trust is broken. Marketed agency wasn't delivered. "I tried both options and got the same thing."
Key Questions:
When False Choices Are Acceptable:
When False Choices Are Problematic:
Interventions:
Symptoms: Full player freedom creates incoherent stories. Or: fixed story makes "interactive" feel pointless. Writer can't reconcile openness with craft.
The Tension:
Key Questions:
Resolution: Constrained Agency The author designs the possibility space. The player navigates within it.
Constraint Techniques:
Interventions:
Symptoms: Reading experience is mechanical. Choices interrupt rather than emerge from story. Pacing destroyed by decision points. More menu than narrative.
Key Questions:
Diagnostic Checklist:
Interventions:
Symptoms: Each ending feels hollow. "Bad endings" punish rather than satisfy. One "true ending" invalidates others. Endings don't feel earned.
Key Questions:
Ending Types:
| Type | Description | Risk |
|---|---|---|
| Branch endings | Different conclusions by path | Unequal effort to achieve |
| Quality endings | Same ending, quality varies | Can feel like high score |
| Hidden endings | Secret conclusions | Completionist frustration |
The "True Ending" Problem: If one ending is canonical, others feel invalidated. Player optimizes rather than roleplays.
Interventions:
Symptoms: Can't track what player has done. Contradictions appear. Variables proliferate. Scene logic becomes unmaintainable.
Key Questions:
What State Should Produce:
State Types:
| Type | Purpose | Example |
|---|---|---|
| Plot flags | What happened | Met the mentor? |
| Relationship values | Character dynamics | Trust level |
| Resources | Economic/survival | Money, health |
| Qualities | Character development | Courage stat |
| Inventory | Objects/abilities | Key items |
Interventions:
Mostly linear, occasional choice moments. Choices affect scenes but not arc.
─────[choice]───────[choice]───────[choice]─────
│ │ │
variation variation variation
Best for: Character-focused stories, expression over outcome.
Multiple paths but key beats are fixed:
┌─A─┐ ┌─D─┐
Start───┼─────Midpoint───┼─────Climax─────End
└─B─┘ └─E─┘
Best for: Balancing agency with authored climaxes.
Early branches create different experiences, converge for endings:
┌──────Route A──────┐
Start ───┤ ├─── Endings (3-4)
└──────Route B──────┘
Best for: Replayability with manageable scope.
Same events, player knowledge persists, choices informed by attempts.
Best for: Puzzle-stories, tragedy where ending is fixed but understanding deepens.
| Type | Description | Quality |
|---|---|---|
| Binary moral | Right vs. wrong | Too simple—avoid |
| Dilemma | Two goods in conflict | Best—no clear answer |
| Expression | Same outcome, different character | Valid if authentic |
| Strategic | Risk/reward calculation | Good for game-like IF |
| Discovery | Which path to explore | Acceptable for pacing |
Avoid clear right/wrong. Create dilemmas where reasonable people disagree. Make players choose between values, not optimize.
Choices are navigation puzzles with correct/incorrect paths. Fix: Make all paths valid experiences. Remove "wrong" answers.
Extensive apparent choice, no actual consequence. Fix: If you can't make it matter, don't pretend it does.
One ending is clearly best; player ignores roleplay to maximize. Fix: Make endings differently satisfying, not ranked.
Content locked behind specific paths creates exhausting replay. Fix: Make each playthrough satisfying. Unlockables enhance, not complete.
"Tell me about X / Y / Z" as menu system, not story. Fix: Integrate information into motivated scenes.
Player knows what to do but can't express it. Fix: Robust synonyms, clear feedback, gentle guidance.
When a writer presents IF problems:
Parser, choice-based, hybrid, or tabletop? Each has different solutions.
For key choices:
Based on identified state. Point to structure patterns, choice design principles.
| story-sense State | Maps to IF State |
|---|---|
| State 4.5: Plot Without Pacing | IF5 (Flowchart Feel) |
| State 5.75: Ending Doesn't Land | IF6 (Ending Problems) |
Writer: "Players keep saying my choices don't matter."
Your approach:
Writer: "I have 50 possible endings and can't write them all."
Your approach:
Writer: "I have a 'good' ending and several 'bad' endings."
Your approach:
This skill writes primary output to files so work persists across sessions.
Before doing any other work:
context/output-config.md in the projectexplorations/interactive/ or a sensible location for this projectcontext/output-config.md if context network exists.interactive-fiction-output.md at project root otherwiseFor this skill, persist:
| Goes to File | Stays in Conversation |
|---|---|
| IF state diagnosis | Clarifying questions |
| Branch structure notes | Discussion of specific choices |
| Choice quality assessment | Writer's design decisions |
| Complexity recommendations | Real-time feedback |
Pattern: {project}-if-{date}.md Example: adventure-game-if-2025-01-15.md
Your role is diagnostic: identify the problem, explain why it's a problem, and guide toward solutions. The writer designs the experience.
Interactive fiction is not "a story with choices added." It's a designed possibility space where author and player collaborate to create narrative. The author controls the space; the player navigates it.
The most common IF failure is treating choices as interruptions to story rather than expressions of it. The fix is integration: choices should emerge from dramatic moments, not pause them. Each path should be worth experiencing, not a wrong turn to be avoided.
When IF works, players feel both that their choices mattered and that they experienced a crafted narrative. This isn't a contradiction—it's the art form.
Weekly Installs
134
Repository
GitHub Stars
37
First Seen
Jan 20, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
opencode118
codex115
gemini-cli114
cursor109
github-copilot109
amp95
新闻稿撰写工具:使用 inference.sh CLI 进行事实核查与专业新闻稿创作
7,600 周安装