首页 攻略 单机攻略 查看内容

《饥荒:联机版》自制MOD教程

  MOD基本文件结构

  这里我用由 Eyres1 制作的 Never Perish Icebox(永久保鲜羊大白勺冰箱)来作为例子:

  如上图所示,一个必须具有两个文件:

  modmain.lua:游戏载入你制作的mod所需要的文件;

  modinfo.lua:储存mod的作者、版本等信息的文件。

  接下来我们打开这两个文件看看:

  modinfo.lua

  第一行描述了该mod的名称,

  --The name of the mod displayed in the 'mods' screen.

  name = "Never Perish Icebox"

  第二行是作者留下的对该mod的简介,

  --A description of the mod.

  description = "Food doesn't perish in the Icebox."

  第三行记录了制作者的名讳,

  --Who wrote this awesome mod?

  author = "Eyres Valkrie"

  第四行是作者设置的mod版本号(注意,mod版本号跟游戏版本号是两码事)

  --A version number so you can ask people if they are running an old version of your mod.

  version = "1"

  第五行是本mod对应的游戏API版本号(当你自己制作了一个mod以后,记得在每次游戏更新后检查自己mod是否依然能够正常运行,努力debug,并更改这一行的数值,然后上传到创意工坊)

  --This lets other players know if your mod is out of date.

  This typically needs to be updated every time there's a new game update.

  api_version = 10

  第六行说明本mod是否兼容 Don't Starve Together。

  -- Compatible with Don't Starve Together

  dst_compatible = true

  第七行是向玩家说明本mod是否和 Don't Starve 和 Reign of Giants 兼容(因为Don't Starve Together和Don't Starve两者有大量相同代码,所以经常有人把Don't Starve的mod和Don't Starve Together的mod交换使用)

  -- Compatible with both the base game and reign of giants

  dont_starve_compatible = true

  reign_of_giants_compatible = true

  这八行说明本mod是否需要重启生效

  --Some mods may crash or not work correctly until the game is restarted after the mod is enabled/disabled

  restart_required = false

  第九行说明本mod是否能够兼容其他mod

  -- Set this to true to prevent _ANY_ other mods from loading while this mod is enabled.

  standalone = false

  modmain.lua

  Never Perish Icebox这个mod的modmain.lua中只有一行代码,

  TUNING.PERISH_FRIDGE_MULT = 0;

  它的作用是修改 data\scripts\tuning.lua 中 TUNING 对象的成员 PERISH_FRIDGE_MULT,也就是修改游戏中 Icebox 的保鲜时间长度。

  由此可见,要提供mod元信息,你就应该给出 modinfo.lua;而为了真正实现你的 mod 的功能,你则应该在 modmain.lua 中编写代码。