MOD 制作教程 🏠 主页

二、mod.ini 清单格式

mod.ini 是每个 .gsdzmod 包内必须存在的文件,位于压缩包根目录。它用 INI 文本格式说明这个 MOD 的名称、作者、版本,以及引用了包内哪些数据文件。

2.1 [mod] 元数据字段

一个最简的 mod.ini:

[mod]
name=我的第一个MOD
desc=这是一段简单的介绍
version=1.0
author=张三
[mod]>name= (string) — 必填。MOD 显示名称。
在 MOD 管理器列表里显示的名称。留空会导致上传失败(「mod.ini 缺少 [mod] name」)。
[mod]>desc= (string) — 可选。MOD 简介。
在 MOD 管理器列表的名称下方显示。
[mod]>version= (string) — 可选,默认 1.0。版本号。
显示在列表描述右侧,如「· v1.0」。
[mod]>author= (string) — 可选。作者名。
显示在列表描述右侧,如「· 张三」。

2.2 引用文件字段

这些字段指向包内相对路径的数据文件,全部可选。引擎会按字段依次读取并合并进对应数据表:

[mod]
name=赤色黎明增强
units=units.ini
buildings=buildings.ini
weapons=weapons.ini
factions=factions.ini
art=art.ini
campaigns=campaigns.ini
res=flameTank.r,efifer.png
[mod]>units= (file) — 单位数据文件,格式同 units.ini。
按 ID 合并进 R.UNITS:同名 ID 覆盖,未提及的基础单位保留(只写自己新增的单位即可)。
[mod]>buildings= (file) — 建筑数据文件,格式同 buildings.ini。
合并进 R.BUILDINGS。
[mod]>weapons= (file) — 武器数据文件,格式同 weapons.ini。
合并进 R.WEAPONS。单位/建筑用 weapon=xxx 引用。
[mod]>factions= (file) — 国家/阵营数据文件,格式同 factions.ini。
合并进 R.FACTIONS。
[mod]>art= (file) — 美术配置(PNG 精灵注册表),格式同 art.ini。
注册 use_png=true 的条目进 R.ART_PNG。
[mod]>campaigns= (file) — 战役地图清单,格式同 campaigns.ini。
注册到 R.MapINI,地图 JSON 必须位于包内 map/ 文件夹。
[mod]>res= (comma-separated) — res/ 素材清单,逗号分隔的相对路径。
列出要使用的素材文件(可含子路径),两种写法都可以:res=demo.r(相对包内 res/)或 res=res/demo.r(相对包根),引擎会自动去掉重复的 res/ 前缀。PNG 按文件名(去扩展名)作为素材名;.r 文件按其中 [素材名] 段注册(见 .r 素材格式)。

2.3 编写要点

  • INI 注释用 ; 或 # 开头;
  • 字段值 不要加引号(加了引号引擎会去掉);
  • 数组字段(如 res=)用逗号分隔;
  • 被引用的文件必须真实存在于包内,否则上传会被拒绝(「mod.ini 引用文件不存在:xxx」)。
官方 MOD 的 mod.ini 位置:官方 MOD 解压后放置在 data/mod/{id}/mod.ini,格式与用户 MOD 完全一致。