MOD 制作教程 🏠 主页

十一、常见问题 FAQ

Q1:单位/建筑在游戏里显示为占位方块

原因:该单位的 art= 指向的素材没有找到。检查:

  • 是否在 res/ 放了对应 .png 或 .r,并在 mod.ini 的 res= 字段列出;
  • PNG 文件名是否与 art= 一致(PNG 按文件名取素材名);
  • 若用的是 .r,检查 [素材名] 段名是否与 art= 一致。

Q2:上传提示「缺少根 mod.ini」

打包时多包了一层文件夹。正确做法:压缩包打开后第一层直接是 mod.ini,而不是 我的mod/mod.ini。

Q3:单位 ID 冲突导致被覆盖

MOD 数据是按 ID 合并:后加载的同名 ID 会覆盖先加载的,未提及的基础内容保留。避免冲突:

  • 给 ID 加专属前缀(如 [cz_flameTank]);
  • 不要复制官方单位 ID 改数值——那会覆盖官方单位;
  • 只要新增内容就不需要复制整张基础表(如 weapons.ini 只列自己的武器即可,基础武器不会丢)。

Q4:unique / excludeUnits 不生效

数组字段必须用 JSON 数组语法:unique=["sniper","grizzly"]。写成逗号分隔字符串 unique=sniper,grizzly 在单元素时会变成字符串而非数组。

Q5:启用了 MOD 但新单位不出现在建造栏

检查单位字段:

  • from= 指向的生产建筑是否正确(步兵 barracks / 载具 factory / 空军 helipad);
  • tab= 是否正确(inf/veh/air/navy);
  • req= 前置科技是否满足;
  • faction= 阵营是否与当前玩家匹配。

Q6:战役地图加载失败 / 黑屏

  • 确认 campaigns.ini 的 file= 与 map/ 内 JSON 文件名一致;
  • 确认 JSON 的 terrain 数组长度 = w × h;
  • 确认 starts 数量 ≥ 玩家数。

Q7:MOD 没启用,但游戏里出现了它的内容

MOD 数据在启动时会加载官方 MOD + 所有已启用用户 MOD。如果内容来自已停用的 MOD,检查:

  • 是否在 MOD 管理器中确认该 MOD 的圆点是灰色(停用);
  • 停用后数据表会恢复快照——若仍异常,尝试在主菜单刷新页面重新进入(恢复基础表)。

Q8:官方 MOD 显示为「官方」但无法操作

官方 MOD 设计为始终启用、只读,不可停用/卸载。这是预期行为。

Q9:.r 素材画出来很乱 / 比例不对

  • 确认 size=WxH 与绘制坐标匹配(坐标在 size 范围内);
  • 渲染会按 画布尺寸 ÷ size 缩放,若 size 声明太小会放大失真;
  • 颜色用 6 位十六进制 #rrggbb。

Q10:MOD 文件在哪里?能分享给别人吗?

  • MOD 解压后在服务器 data/uploads_mods/你的账号/;
  • 分享方式:把 .gsdzmod 文件直接发给对方,对方导入后即可使用(内容在包内自包含)。

Q11:启用 MOD 后列表显示「语法错误」红标签

说明该 MOD 在加载时严格语法校验失败,已停止加载、不会生效。点击标签弹出详细错误面板,逐条显示表/文件/节/字段/行/原因。常见致命错误:

  • kind / armor / proj / prefer / facing 用了枚举范围外的值;
  • 数字字段(hp/cost/dmg/size 等)写了非数字;
  • 布尔字段(crush/buildable/air 等)写了 true/false 以外的值;
  • unique/excludeUnits 写成单值字符串(应使用 JSON 数组);
  • vs=/harvester= 的 JSON 花括号/引号不配对;
  • .r 素材用了未知指令或缺必填字段。

完整规则见 MOD 语法校验规则。修复后重新导入,或停用再启用即可重新校验。

Q12:为什么说「该 MOD 已停止加载」?

这是严格校验的安全策略:一旦发现致命错误,就不合并该 MOD 的任何内容,避免坏数据污染游戏(报错、单位异常等)。宁可这个 MOD 不生效,也不带病运行。

Q13:警告(黄色)和致命错误(红色)有什么区别?

  • 警告:如未知字段,不影响运行,MOD 正常加载;
  • 致命:如类型错误、必填缺失、无法解读,MOD 停止加载。
更多问题:欢迎到游戏内 QQ 群提问,附上 .gsdzmod 与截图能更快定位问题。