← 首页
小镇谋杀
彩排晚宴
自定义章节
写一句简介让 AI 生成完整章节,或直接编辑下方 JSON。
AI 辅助生成
一句话就够,越具体越好
生成章节
章节 JSON
载入「小镇谋杀」
载入「彩排晚宴」
清空
{ "title": "小镇谋杀 · 四小时", "genre_brief": "现代小镇黑色电影 · 克制、图像优先、无超自然。语言冷而精准,避免说教。多用感官细节(光、声、温度、手部动作)。", "dramatic_focus": "今夜 23:00 之前,镇上书店老板 Eli Carter 将死于非命。你刚刚收到匿名线报,距离凶案还有 240 分钟。找出凶手,阻止它。", "time_budget_minutes": 240, "move_cost_minutes": 5, "talk_cost_minutes": 15, "starting_cell_id": "square", "opening_text": "晚风把镇广场的雪粒卷成小圈。你攥着那张潦草的字条——\"今晚 Eli 会死\"——指尖发紧。镇上的钟敲了七下。距离午夜还有四个小时。你抬眼望去:酒馆的窗子泛着琥珀色的暖光,书店亮着一盏孤灯,磨坊在更远的黑里只剩剪影,教堂的尖顶刚刚收到最后一缕落日。", "cells": [ { "id": "square", "name": "镇广场", "dramatic_purpose": "枢纽——连接所有去处;公开对峙的唯一舞台。", "ambient": "风从四个方向同时涌来,喷泉早已冻结。", "exits_to": [ "tavern", "bookstore", "mill", "church" ] }, { "id": "tavern", "name": "老桦酒馆", "dramatic_purpose": "情报集散地——醉汉漏嘴、女招待看见一切;玩家的天然第一站。", "ambient": "灯光把烟雾糊成琥珀色,吧台后挂着一排没洗的杯子。", "exits_to": [ "square", "bookstore" ] }, { "id": "bookstore", "name": "Eli 的书店", "dramatic_purpose": "受害者唯一可被接触/警告的地点;玩家与\"将被杀的人\"面对面。", "ambient": "一盏黄灯吊在收银台上方,墙上是发霉的诗集和一只走慢的钟。", "exits_to": [ "square", "tavern" ] }, { "id": "mill", "name": "旧磨坊", "dramatic_purpose": "凶手计划行凶的地点;只有凶手和共谋知道这是个\"约定\"。", "ambient": "木结构在风里嘎吱作响,地上铺着多年没动过的灰。", "exits_to": [ "square" ] }, { "id": "church", "name": "圣彼得堂", "dramatic_purpose": "掩盖者的领地——用告解誓约压制证词的场所。", "ambient": "彩窗在残光里只剩血色,祷告椅上有一本翻开的弥撒书。", "exits_to": [ "square" ] } ], "npcs": [ { "id": "eli", "name": "Eli Carter", "role": "书店老板", "dramatic_role": "victim", "start_cell_id": "bookstore", "start_stance": "疲惫、客气、有点心事", "start_knows": [ "f1", "f3" ], "appearance": "五十来岁,灰呢外套,左手食指有墨。", "desire": "安静地把店开下去,等遗嘱生效。", "secret": "他知道弟弟欠了钱,却以为对方只会再来求一次。", "focus_options": [ "警告 Eli:今晚别离开店,别赴任何\"对账\"邀约", "不动声色地问 Eli 最近有没有人来找过他", "直接告诉 Eli 你收到的匿名线报" ] }, { "id": "marcus", "name": "Marcus Vale", "role": "Eli 同父异母的弟弟,赌徒", "dramatic_role": "murderer", "start_cell_id": "tavern", "start_stance": "过分热情,频繁看表", "start_knows": [ "f1", "f2", "f3" ], "appearance": "三十出头,外套袖口磨白,右手指节有新伤。", "desire": "今晚必须把遗嘱里的\"孤儿院\"换成自己。", "secret": "他十一点会约 Eli 去磨坊\"对账\",然后动手。", "focus_options": [ "试探 Marcus:今晚有什么安排", "提到 Eli 的名字,看 Marcus 的反应", "直接质问 Marcus 那道指节伤是怎么来的" ] }, { "id": "sara", "name": "Sara Quinn", "role": "酒馆女招待", "dramatic_role": "witness", "start_cell_id": "tavern", "start_stance": "紧张、回避眼神", "start_knows": [ "f5" ], "appearance": "二十多岁,围裙上有一道新鲜的酒渍,手指无意识地擦着同一只杯子。", "desire": "别惹麻烦,但不愿对凶杀视而不见。", "secret": "傍晚她看见 Marcus 从厨房偷拿了一把切肉刀。", "focus_options": [ "安静地问 Sara 今天看见什么不寻常", "点一杯酒,让 Sara 卸下防备", "直接问 Sara 有没有看见 Marcus 拿刀" ] }, { "id": "father-lou", "name": "Father Lou", "role": "教区牧师", "dramatic_role": "cover", "start_cell_id": "church", "start_stance": "克制、温和、寸步不让", "start_knows": [ "f1", "f4" ], "appearance": "六十岁,黑长袍洗得发灰,胸前木十字架边缘磨光。", "desire": "保住告解誓约——他相信这是上帝的事。", "secret": "告解里 Marcus 说过\"想让他消失\",但他视为试探。", "focus_options": [ "请 Father Lou 听你说一件可能涉及人命的事", "问 Father Lou 最近有没有人来告解", "直接告诉 Father Lou 你怀疑 Marcus" ] }, { "id": "old-tom", "name": "Old Tom", "role": "常驻酒鬼", "dramatic_role": "bystander", "start_cell_id": "tavern", "start_stance": "醉醺醺,话多", "start_knows": [ "f1" ], "appearance": "七十岁,胡子里夹着面包屑,永远坐在角落同一把椅子。", "desire": "换一杯酒,被人听一次。", "secret": "没有秘密,但听到的八卦最多。", "focus_options": [ "给 Old Tom 买一杯,听他闲扯最近的八卦", "问 Old Tom 关于 Marcus 的事", "直接问 Old Tom 今天酒馆里有没有反常的事" ] } ], "facts": { "f1": "Marcus 欠了 Eli 一大笔钱,本月底就要违约。", "f2": "Marcus 今晚 11 点要去旧磨坊\"谈生意\"。", "f3": "Eli 新立的遗嘱把书店和存款都留给了孤儿院。", "f4": "Father Lou 在告解室里听过 Marcus 说\"想让他消失\"。", "f5": "今天傍晚 Sara 看见 Marcus 从酒馆厨房偷拿了一把切肉刀。" }, "scheduled_events": [ { "id": "e1", "trigger_at_remaining_minutes": 180, "kind": "npc_moves", "npc_id": "marcus", "to_cell_id": "square", "description": "Marcus 离开酒馆,到镇广场转一圈打听消息。" }, { "id": "e2", "trigger_at_remaining_minutes": 60, "kind": "npc_moves", "npc_id": "marcus", "to_cell_id": "mill", "description": "Marcus 提前到磨坊,等 Eli。" }, { "id": "e3", "trigger_at_remaining_minutes": 30, "kind": "npc_moves", "npc_id": "eli", "to_cell_id": "mill", "description": "Eli 被 Marcus 以\"对账\"为由约去磨坊。" } ], "closing_event": { "trigger_at_remaining_minutes": 0, "end_kind_default": "murder_happened", "end_kind_overrides": [ { "signal": "intercepted_at_mill", "ending": "prevented" }, { "signal": "exposed_marcus_publicly", "ending": "prevented" }, { "signal": "sara_testified", "ending": "prevented" }, { "signal": "warned_eli", "ending": "prevented" } ] }, "info_flow": [ { "fact_id": "f5", "from_npc": "sara", "to_npc": "old-tom", "propagation_minutes": 30 }, { "fact_id": "f5", "from_npc": "old-tom", "to_npc": "father-lou", "propagation_minutes": 60 }, { "fact_id": "f2", "from_npc": "marcus", "to_npc": "sara", "propagation_minutes": 45 }, { "fact_id": "f1", "from_npc": "old-tom", "to_npc": "sara", "propagation_minutes": 0 }, { "fact_id": "f1", "from_npc": "marcus", "to_npc": "old-tom", "propagation_minutes": 0 } ], "prevention_signals_glossary": { "warned_eli": "玩家明确警告 Eli 今晚不要离开书店或不要赴任何\"对账\"邀约。", "exposed_marcus_publicly": "玩家在镇广场或其他公开场合让至少 2 个 NPC 听到对 Marcus 的指控。", "intercepted_at_mill": "玩家在 60 分钟剩余前已抵达磨坊并表明拦截意图。", "sara_testified": "玩家说服 Sara 公开作证她看见 Marcus 拿刀。" }, "dramatic_role_glossary": { "murderer": "永远不主动承认杀机;他会说谎、转移话题、把指控引向别处。露马脚只通过身体细节(手抖、看表、笑得太晚)。", "victim": "不知道自己今晚会死。客气、疲惫、对家事敏感。可以被警告,但需要具体证据他才会相信。", "witness": "紧张、欲言又止;需要被问对路才说。给她安全感(一杯酒、一个不被听见的角落)她会松口。", "cover": "以告解誓约 / 信仰理由挡问题;他不会直接撒谎,但会沉默或绕开。可以被良知打动,但极慢。", "bystander": "爱八卦,知道什么说什么;不分轻重。喝得越多说得越多。" }, "endings": { "prevented": { "label": "阻止了", "tone": "good", "closing_narrative": "钟敲十一下。磨坊里安静着——风穿过空木架,没有别的声响。Eli 还在书店的灯下,没抬头。你站在广场上,呼出的白气在街灯里散开。明天太阳照常升起。" }, "murder_happened": { "label": "没能阻止", "tone": "bad", "closing_narrative": "钟敲十一下。磨坊那边传出一声闷响,又一声。然后是风。第二天清晨他们会在地板上找到 Eli Carter,灰里有两个脚印——一个是他自己的,一个不是。" } } }
字段说明见
chapter.ts
:title / dramatic_focus / cells[] / npcs[] / facts / scheduled_events / closing_event / info_flow / endings
验证并开始 →