用途:奇幻姓名生成器是一款写作辅助工具,用于在撰写世界观、预设、任务文本或种子数据时,为奇幻角色生成有据可查的姓名。它面向繁体中文(zh-TW)输出,覆盖人类、精灵、矮人、兽人/兽民与半身人五个种族,语料包含174个姓氏与1,100个名字,每个条目附原拼写、繁体中文转写与词源注释。
主要能力:可按种族、性别、数量生成姓名;支持一次运行内固定种族(例如生成8个名字都针对同一角色,而非八个种族各一个);性别可留空,让每个名字自行抽取对应词池;可用随机种子精确复现某次结果;输出格式支持 full(默认,含展示名、原拼写、来源词池与词源)、plain(每行一个展示名)与 json(包含全部字段,便于喂给其他脚本或写入数据文件);默认会重新抽取以避免重名,也可显式允许重名;可用 --list-packs 查看各词包的词池规模、命名惯例与风格说明。未知种族会报错,而不会静默回退。
使用方式:资料给出的示例命令为 python3 scripts/namegen.py --race elf --sex female -n 8,路径相对于该技能目录,若工作目录在别处需使用绝对路径。技能自包含:scripts/namegen.py 为纯标准库 Python,仅读取 assets/corpus/,整个目录复制到任何位置均可运行。建议不确定种族时先运行 --list-packs,或在需要为周边设定保持一致的命名习惯时查阅其命名惯例说明。
适用场景:为角色、NPC、背景传说生成姓名并解释取名理由;在需要可复现命名的流程中使用种子;把生成结果以 json 形式接入其他脚本或数据文件;在角色性别未定时批量抽样。资料还说明其在 MUD 项目中的定位是创作期工具,运行时另有独立路径,不应把游戏代码接到本技能的副本上,也不要期望修改其中一份会影响另一份;该项目将三个可玩种族绑定到词包(人类→fantasy-human、精灵→fantasy-elf、兽民→fantasy-orc),矮人与半身人为仅登记、无可玩种族绑定的备用词包,除非另有说明,其名字属于背景设定而非玩家角色。
挑选要点(资料强调生成只是第一步):抽取约所需数量三倍的候选,再依据角色已知信息筛选;让词源贴合角色而非只贴合音感,例如坚忍的边境守卫用「寒水」比仅听起来冷硬的名字更合适,并在呈现名字时说明适配理由;遵守词包的命名惯例,人类有世袭姓氏、私生子取地景姓(Snow、Rivers、Stone),精灵无固定世袭姓、第二元素为可随迁居或成年礼变化的氏族或栖居地复合词,矮人有并行使用的父名与氏族名、氏族名承载锻造/采矿意象并以工艺传承而非血统头衔相传,兽人/兽民的氏族名是须赢得的部落图腾或战功荣誉、未证明自身的角色应只保留本名,半身人姓氏反映家族行业或继承的身体/性情绰号;留意个别名字的备注,例如性别开放或来自特定构词模式;注意转写长度,人类词包对姓氏做语义转写(Snow→雪原、Coldwater→寒水),平均约2字,其余四个词包为音译、约5字、最长可达8字(如 Duskwalker→杜斯克瓦爾克爾、Skullcrusher→斯庫爾克魯斯赫爾),若需放入窄小位置(UI 标签、战斗日志行、有长度上限的姓名栏),应在确定前检查渲染长度,宁可重抽较短姓氏也不要截断;最后以带理由的候选清单呈现,交由使用者选择。
限制:资料未提供图形界面、在线服务、收费或价格信息;工具依赖本机 Python 3 环境(示例命令为 python3);名称质量受限于语料范围;未知种族是错误而非回退。语料为 弄墨 Inknomu(https://inknomu.com/namegen/fantasy)以 CC BY 4.0 授权,发布或衍生内容须署名来源,完整声明与上游来源清单见 assets/corpus/THIRD_PARTY_NOTICES.md;不要在 CI 或构建中重新抓取语料,它是有意做的一次性静态内置。