此站点为镜像站,如有编辑wiki的意愿请前往主站进行编辑
加入Noita中文维基群获取更多wiki编辑上的帮助。
→加入游戏社区|Noita魔法群|Noita交流群|Noita贴吧|与更多玩家一起游玩Noita。
此站点为镜像站,如有编辑wiki的意愿请前往主站进行编辑。
加入Noita中文维基群获取更多wiki编辑上的帮助。
→加入游戏社区|Noita魔法群|
|Noita交流群|Noita贴吧|
与更多玩家一起游玩Noita。
Mod
阅读
2024-10-29更新
最新编辑:幽狐HOFOX
阅读:
更新日期:2024-10-29
最新编辑:幽狐HOFOX
- 本页面 面向 模组制作者。关于 安装模组,请参阅 如何安装模组.
- 关于 已经存在的某个特定模组 的信息,请参阅 Noita-模组(en)百科 。
制作Noita的模组 是非常 简单 且 有趣 的,但是 这个过程 可能隐含了许多 具体实现的细节。这些页面 意在 降低 制作模组 的门槛、避开制作模组过程中常见的坑
制作模组 只需要以下 工具:
- 一个合适的 文本编辑器 (比如 VS Code、Sublime、Vim)
- 一个合适的 图像编辑器 (比如 Aseprite、Gimp、Paint.net、Photoshop)
Noita的 游戏逻辑 主要作为一个 实体组件系统(ECS,Entity Component System),以 Lua 和 XML 语言实现。游戏中每个独立的 “东西”(敌人、子弹、魔杖、物品 甚至包括 玩家)都是 实体,只不过构成它们的组件不同。虽然在 没有任何编程知识 的情况下,通过 简单地编辑 实体XML 或 相关的 精灵表 也可以完成很多内容,但是还是推荐对Lua有所了解。
入门
在继续下去之前,第一步是 找到 Noita本体 所在的文件夹 (大多数情况下位于 C:\Program Files (x86)\Steam\steamapps\common\Noita
),然后阅读 tools_modding\READ_ME_FIRST.txt
。
提取数据文件
Noita的所有 基础资产(精灵表、脚本、实体定义)都被打包在 Noita\data\data.wak
中。技术层面来说,提取这些文件并不是必须的,但是查看 文件结构 和 示例代码 会非常有帮助。
对于 Windows平台
要访问 Noita的数据文件,请按照以下步骤操作:
- 将
tools_modding\
文件夹 中的 所有文件 复制到 Noita的根目录。 - 运行
data_wak_unpack.bat
。应该会打开 一个终端窗口。 - 应该会打开 一个包含Noita资源的 资源管理器窗口:
%UserProfile%\AppData\LocalLow\Nolla_Games_Noita
。 - 将 这个文件夹 固定到快速访问 或 复制到
一个之后方便访问的地方
。 - 很多资源可能是 隐藏的,要查看它们的话,点击 资源管理器 的
查看
选项卡,勾选显示/隐藏
分组 中的隐藏的项目
即可。
现在你可以直接访问 Noita的所有Lua代码、实体XML定义、精灵表 啦,也就是说你现在可以 直接查看 游戏内容的秘密,所以要记得 不要剧透 哦。
对于 Linux平台
- Start Noita on Steam, once, using
-wizard_unpak
as a launch parameter. (I.e. Right-click, Properties, General, Launch options) - 这将会把 数据文件 提取到
.steam/steam/steamapps/compatdata/881100/pfx/drive_c/users/steamuser/AppData/LocalLow/Nolla_Games_Noita/
- Remove the launch parameter again.
- Bookmark or copy this folder somewhere for easy later access.
下一步
已经开了个好头,那么接下来进一步阅读:
- 浏览 模组制作 基础、调试、最佳实践
- 将
mods\example
复制一份并对它进行一些更改,让你更熟悉 文件结构。 - 熟悉
tools_modding\
目录下的 文档:component_documentation.txt
(组件文档)lua_api_documentation.txt
(Lua API文档)- 这些是你能找到的 始终保持最新的文档。当下而言,它们是你最好的朋友。
- 下载并查看 其它模组制作者制作的模组,编辑 这些模组,感受一下发生了什么变化。
需要帮助?
在 Noita Discord 服务器 的 #modding-general
和 #modding-support
有一个 活跃且有好的 关于模组制作的社区。大可放心加入并提问交流!