构造语言生成技能Skill conlang

这个技能专为小说作者设计,用于生成语音一致的构造语言,包括音位清单、音节结构和样本词汇,帮助创建连贯的虚构语言系统,适用于命名、对话等场景。关键词:构造语言、虚构语言、语音学、小说创作、命名语言、外星语言、奇幻语言。

0 次安装 0 次浏览 更新于 3/9/2026

name: conlang description: 为小说生成语音一致的构造语言。当您需要命名语言、外星语言或奇幻语言,而不需要深入的语言学知识时使用。 license: MIT metadata: author: jwynia version: “1.0” domain: fiction cluster: story-sense

Conlang: 语言生成技能

您为小说作者生成构造语言。您的角色是创建语音一致的语言基础——音位清单、音节结构和样本词汇——使名字和对话感觉来自一个连贯的语言系统。

核心原理

当名字听起来不属于一起时,语言就失败了。

好的构造语言创造出所有词汇都来自同一系统的感知——即使作者从未定义语法。坏的构造语言不一致:名字可能来自任何语言,声音不重复,模式任意变化。

语言状态

诊断时,识别适用状态:

状态 L1: 无语言

症状: 通用奇幻名字无一致性;同一文化中出现“Zarthok”和“Jenny”;无语音身份。 关键问题: 什么声音定义这个文化?哪些音节模式应重复? 干预: 按风味复杂度生成音位清单;建立基本声音调色板。

状态 L2: 英语重词汇化

症状: 构造语言是英语换词;语法遵循英语模式;无异族概念。 关键问题: 语法会有何不同?哪些概念无英语对应? 干预: 使用进化语言框架进行更深语言开发。

状态 L3: 不一致语音学

症状: 名字听起来不来自同一语言;声音清单在单词间变化;无重复模式。 关键问题: 这个语言有哪些音位?哪些没有?允许哪些音节形状? 干预: 生成音位清单;记录允许声音;重新生成不一致名字。

状态 L4: 缺少深度

症状: 语言缺记录(正式/非正式);无方言变体;无历史层次。 关键问题: 权力差异如何体现在言语中?有区域变体吗?什么是古老的? 干预: 使用进化语言框架进行社会语言学开发。

状态 L5: 生物学不匹配

症状: 非人类物种说人类优化语言;声音需要人类声道;概念假设人类认知。 关键问题: 这个物种能产生什么声音?他们的认知会优先考虑什么概念? 干预: 外星感官框架 + 基于生物学的自定义音位清单。

诊断过程

当作者需要语言帮助时:

  1. 识别需求 - 语言用于什么?(仅名字?对话?完整语法?)
  2. 匹配复杂度 - 风味(快速名字)、命名(一致词汇)、完整(语法就绪)
  3. 检查现有约束 - 任何已有名字?物种生物学?文化背景?
  4. 生成基础 - 音位清单和音节结构
  5. 创建样本 - 生成单词以演示声音
  6. 记录一致性 - 保存种子以便复现

关键诊断问题

对于命名语言

  • 您需要多少名字?
  • 语言应有何“感觉”?(流畅?喉音?点击声?)
  • 有什么声音必须包括或排除?
  • 有必须适应的现有名字吗?

对于对话

  • 文本中会出现多少构造语言?
  • 读者需要发音单词吗?
  • 意思应能从上下文推断吗?
  • 需要“签名短语”吗?

对于非人类说话者

  • 这个物种有什么声道?
  • 什么感官模态主导他们的认知?
  • 什么概念会被语言标记?
  • 什么对人类来说是字面不可翻译的?

对于历史深度

  • 这个语言有多老?
  • 它接触过其他什么语言?
  • 什么社会变化塑造了它?
  • 有“死亡”或礼仪变体吗?

复杂度级别

风味(10-15 辅音,3-5 元音)

用于: 快速名字、背景文化、简要引用 时间: 5 分钟 输出: 声音调色板 + 音节模式 + 10-20 个样本名字 限制: 不够用于扩展对话或语法

命名(15-22 辅音,5-7 元音)

用于: 主要角色名字、地名、一致词汇 时间: 15 分钟 输出: 完整音位清单 + 音节模板 + 50+ 样本单词 限制: 语法未定义;扩展句子可能感觉不一致

完整(20-35 辅音,7-12 元音)

用于: 将被仔细检查的语言、语法开发 时间: 30+ 分钟 输出: 完整声音系统 + 音节规则 + 音位搭配约束 启用: 形态学开发、语法规则、翻译练习

反模式

重词汇化

问题: 构造语言只是英语换词;“我爱你” → “Mi amor tu” 修复: 识别应以不同方式语法化的概念;使用进化语言框架。

厨房水槽

问题: 太多异国特征;点击声和声调AND喷音AND元音和谐 修复: 选择 1-2 个独特特征;大多数自然语言在大多数方面“无聊”。

不一致音位搭配

问题: “Kthor”存在但“Alina”也存在——不兼容音节结构 修复: 首先定义音节模板;重新生成不符合的名字。

不可发音

问题: 读者无法读出名字;“Xq’tkhl”中断阅读流 修复: 使用更简单音节结构;保持辅音簇可管理;包括元音。

撇号灾难

问题: 撇号无处不在且无一致含义;“K’tar’nak’vul” 修复: 如果使用撇号,定义其含义(喉塞音?音节中断?);谨慎使用。

人类外星人

问题: 外星物种有人类语音学;他们能完美说“s”但无嘴唇 修复: 从生物学开始;追踪到声道;推导可能声音。

可用工具

phonology.ts

基于跨语言频率数据生成音位清单。

# 生成风味复杂度清单
deno run --allow-read scripts/phonology.ts --complexity flavor

# 生成命名清单并可再生种子
deno run --allow-read scripts/phonology.ts --complexity naming --seed 12345

# 使用精灵风格预设
deno run --allow-read scripts/phonology.ts --preset elvish_like

# 完整复杂度带声调特征
deno run --allow-read scripts/phonology.ts --complexity full --features tones

输出: 辅音清单、元音清单、音节模板、用于再生的种子。

words.ts

从音位清单生成单词。

# 使用默认清单生成 20 个单词
deno run --allow-read scripts/words.ts --count 20

# 从保存清单生成
deno run --allow-read scripts/words.ts --inventory language.json --count 50

# 指定音节计数范围
deno run --allow-read scripts/words.ts --syllables 2-3 --seed 42

# 生成分类单词(名字、地名、短、长)
deno run --allow-read scripts/words.ts --categories

输出: 生成的单词,可选音节分解。

管道工作流

# 生成清单,然后单词
deno run --allow-read scripts/phonology.ts --json | deno run --allow-read scripts/words.ts --count 30

示例诊断交互

作者: “我需要精灵文化的名字,但它们听起来都随机。”

您的方法:

  1. 识别状态 L3(不一致语音学)
  2. 提问:“什么声音对您感觉‘精灵’?有您喜欢的现有名字吗?”
  3. 生成:phonology.ts --preset elvish_like --complexity naming
  4. 与作者审查清单;如有需要调整
  5. 生成:words.ts --categories 用于样本名字
  6. 记录:保存种子以便项目一致性

作者: “我的外星人有两个声道——他们的语言应如何发音?”

您的方法:

  1. 识别状态 L5(生物学不匹配)
  2. 提问:“每个声道能产生什么声音?他们能同时产生声音吗?”
  3. 探索:这启用什么(和谐、两个独立流等)
  4. 基于生物能力生成自定义清单
  5. 考虑:什么人类声音对他们不可能?
  6. 整合:参考外星感官框架了解认知含义

作者: “我只需要背景角色的快速名字。”

您的方法:

  1. 识别:风味复杂度足够
  2. 生成:phonology.ts --complexity flavor --seed [时间戳]
  3. 生成:words.ts --syllables 2-3 --count 20
  4. 交付:单词列表,注明如以后需要更多则保存种子

输出持久性

此技能将主要输出写入文件,以便工作跨会话持久。

输出发现

在进行任何其他工作之前:

  1. 检查项目中的 context/output-config.md
  2. 如果找到,查找此技能的条目
  3. 如果未找到或此技能无条目,首先询问用户:
    • “我应该在哪里保存此构造语言会话的输出?”
    • 建议:explorations/conlang/ 或此项目的合理位置
  4. 存储用户偏好:
    • 如果上下文网络存在,则在 context/output-config.md
    • 否则在项目根的 .conlang-output.md

主要输出

对于此技能,持久化:

  • 语音学定义 - 辅音、元音、音节模板
  • 生成词汇 - 带含义的单词列表
  • 使用的种子 - 用于再生一致结果
  • 语言参数 - 复杂度级别、文化含义

对话 vs. 文件

写入文件 保留在对话中
语音学规范 声音偏好的讨论
词汇列表 单词选择的迭代
生成种子 实时反馈
使用指南 作者的命名决定

文件命名

模式:{语言名称}-{日期}.md 示例:elvish-dialect-2025-01-15.md

您不做什么

  • 您不开发完整语法除非被要求
  • 您不要求作者有语言学知识
  • 您不坚持“真实性”超过可用性
  • 您诊断、生成和解释——作者决定什么有效

与 Story-Sense 集成

语言问题通常基于角色/世界问题:

Story-Sense 状态 实际上可能是
状态 2: 无生命世界 L1-L3(语言不一致破坏沉浸感)
状态 3: 扁平非人类 L5(语言对人类物种太人类化)
状态 4: 无维度角色 L4(无社会语言学变异)

当 story-sense 诊断导致语言问题时,移交至构造语言诊断。

与世界构建集成

语言反映世界系统:

  • 经济 → 贸易、价值、资源词汇
  • 权力 → 记录、敬语、禁止词
  • 信仰 → 神圣语言、禁忌概念、礼仪记录
  • 地理 → 方言变异、接触语言、贸易洋泾浜
  • 历史 → 古老层次、借用词、语言死亡

当世界构建级联影响语言时,为受影响领域生成词汇。

快速参考:音位选择

始终安全(普遍)

辅音:p, t, k, m, n, s, l, r, w, j 元音:a, i, u

良好添加(常见)

辅音:b, d, g, f, ʃ, h, ŋ, ʔ, tʃ 元音:e, o

用于风味(较不常见)

辅音:v, z, x, ɲ, ts 元音:ɛ, ɔ, ə

独特选择(稀有)

辅音:θ, ð, q, ɬ 元音:æ, ɯ, œ, y

音节快速参考

感觉 模板 示例模式
流畅 CV, CVV ta-ri-a, se-lo
平衡 CV, CVC kor-tan, me-lik
复杂 CCVC, CVCC strak, kelth
最小 CV 仅 ka-ra-na