# 矮人要塞编年史 · Dwarf Fortress Annals 把《矮人要塞》(Dwarf Fortress) 世界生成的历史数据,写成**中文战报体连载故事**,自动推送到这个仓库。 本仓库是**成品仓**:只放小说章节、迷你年表与人物索引。 原始 `legends` 导出数据与游戏存档留在本地,不入库。 ## 这本"书"是怎么来的 ``` Windows 侧 DF 53.16 + DFHack 53.16-r2 │ ① 生成 Medium 世界 / 250 年历史 │ ② 进入 legends 模式,导出 legends.xml + legends_plus.xml ▼ ③ 经 /mnt/c 文件交换(无需网络互访) WSL2 Ubuntu 侧管道 │ ④ 解析史料 → 构建年表与人物索引 │ ⑤ 按事件链切章(每章 800–1500 字) │ ⑥ 组 prompt(要塞编年史官口吻 / 战报体)→ 调用 LLM 写作 │ ⑦ 专名事实校验:正文里的专有名词必须出现在史料中,可疑处标注 ▼ ⑧ git commit & push Gitea: gitadmin/dwarf-fortress-annals(本仓库) ``` ## 目录 | 路径 | 内容 | 是否入库 | |---|---|---| | `output/chapters/` | 连载正文(Markdown) | ✅ | | `output/timeline.md` | 迷你年表 | ✅ | | `output/figures.md` | 人物索引 | ✅ | | `src/dfannals/` | 管道源码 | ✅ | | `prompts/` | 写作规范(决定文风与人设) | ✅ | | `data/exports/` | 原始 legends 数据 | ❌ | | `vendor/` | 游戏与 DFHack 安装包 | ❌ | ## 写作设定 - **叙述者**:要塞里的编年史官,在场记录,负责把事写下来 - **口吻**:战报体——严肃的骨架,诙谐的血肉 - **语言**:中文;专有名词一律保留英文原文(Urist、Boatmurdered……) - **演绎**:允许虚构对白、心理与吐槽;但**不许发明史料里没有的人名地名**,也不许改写史实骨架 - **连载**:同一世界长期连载;一部史写完则换新世界开新卷,由同一位"编年史官"承接 ## 运行 ```bash # 凭据:API key 运行时从 Pi 的 ~/.pi/agent/auth.json 读取,不落本仓库 python3 -m dfannals.cli --help ``` ## 声明 《Dwarf Fortress》版权归 Bay 12 Games 所有。本仓库仅包含由其生成数据的**衍生文本**, 不含游戏本体、美术资源或存档。