第 02 章
模组的构成
.oamod 压缩包和 oamod.yaml 配置文件:身份、布局、上限、数据键、脚本扩展,以及它启用的标准规则。
包
.oamod 是模组文件夹的 zip。配置文件位于顶层或顶层所含的唯一文件夹中(Finder 的“压缩”即生成此类文件)。存储或 deflate 条目;无链接、设备名、绝对路径或 ..;解压后至多 4 GiB。
escalation.oamod玩家下载或打开的文件├─ oamod.yaml必需 配置文件:身份、布局、上限、规则├─ badge.png256 × 256,显示在资料库和本站├─ totala1.hpi · esc.ufo档案,按加载顺序列在 layout 下├─ units/ · weapons/ · features/松散数据文件夹,叠加在档案之上├─ scripts/ · objects3d/ · textures/COB 脚本、3DO 模型、GAF 贴图├─ sounds/ · bitmaps/ · guis/模组替换的音频、图片和菜单└─ README · LICENCE其余内容随包携带并被忽略配置文件
严格 YAML:单文档,顶层为映射,无锚点、无块标量。文件未写的一切都按 3.1c 运行。
oamod: 1 id: escalation # kebab-case,1 到 32 字节;安装文件夹的名称 name: Escalation version: "10.2.0" # 自由文本,从不排序 author: {name: Wotan and the ESC team} packaging: {revision: 1, date: 2026-10-15, packager: Core Prime} homepage: https://example.net/escalation tags: [units, balance, ai] requires: {base: ta-3.1c, engine: ">= 0.8.0"} # 引擎范围要加引号 layout: archives: [esc.ufo, escgui.ccx] limits: units-per-player: {default: 1500, max: 5000} hacks: ai.income-multipliers: {easy: 1.0, medium: 1.5, hard: 2.0} weapons.high-arc-ballistic: true veterancy.model: escalation
可声明的内容
安装位置
安装到 Documents/Open Annihilation/Mods/
发布前的检查
- 配置文件像加载时一样通过校验:解析两次,第二次带上包内的 INI 和玩家的注册表设置。
- 没有仅 ASCII 大小写不同的两个名称;没有同名的文件和文件夹。
- version 和 packaging.revision 从未以不同字节发布过。发布脚本会拒绝。
- 所列的每条规则都已由本 Open Annihilation 实现,否则资料库会列出该模组但无法安装。