步骤
-
下载MDK包
浏览器访问 Forge官网 下载对应版本的Forge MDK包,点MDK或Src按钮进行下载并解压,国内网络有时候可能会访问较慢或者无法访问,可以自行搜索其他下载链接。
-
配置环境
进入解压后的文件夹,应该可以看到类似的目录结构:
- 看文件夹下的README.md文件,这是官方的配置方案
- 去网上下载已经配置好的 Forge MDK+Gradle 包
- 打开cmd,切换到解压后的目录,使用以下方法。Forge 环境的搭建分为构建代码、下载资源包、配置项目三部分。构建代码是指从 Maven 等仓库中下载 MCP/Forge 的 dependence 依赖库等等,并反编译得到源码。下载资源包当然就是诸如 assets 等游戏声音/语言包。配置项目就是对项目目录做一些配置。首先应对照 README.md 中的命令确定Forge是新版还是旧版。
旧版Forge命令
1.12.2的旧版本以及之前的 Forge MDK 使用下面的命令。
-
构建代码&下载资源包
gradlew.bat setupDecompWorkspace
-
配置项目
对于Eclipse
gradlew.bat eclipse
对于IDEA
gradlew.bat idea gradlew.bat genIntellijRuns
新版Forge命令
1.12.2的新 Forge 版本(例如1.12.2-14.23.5.2854)以及之后的1.14.4等等版本更改了配置命令。
-
构建代码
在IDE里打开项目并导入 build.gradle 这个 Gradle 项目配置来完成。此过程基本分为三个阶段:下载MCP+反编译+下载 Forge 的依赖库,下载过程可能极其缓慢,比如15KB/s,我用了40+ min 完成了这一步,可以尝试挂代理或者把 build.Gradle 中的官方仓库改成国内的一些 Forge 镜像仓库,但是国内仓库可能会有同步不及时而找不到文件的问题,当然就算是官方仓库也会有找不到文件的问题就很离谱。总之建议下载 MDK 前看一下发布日期,不要选那些刚发布没多久的版本
-
下载资源包&配置项目
对于Eclipse
gradlew genEclipseRuns
对于IDEA
gradlew genIntellijRuns
经过漫长等待后,一切就绪。
-
运行
(1.12.2)
最后,打开你的IDE,打开工程,IDEA点击open选择mdk这个文件夹。IDEA会自动识别出 Minecraft Client 运行配置。module可能需要手动选一下。注意:如果出现以下提示,不要Import,会提示导入失败并更新Gradle版本,此时就无法运行了
(1.14.4)
如果刚才的操作都完成了,那应该就可以直接点击运行了
点击运行,你将会看到一个加载了一个空Mod的英文原版Minecraft。
加快配置速度
- 整个下载和配置可能会极其缓慢,如果出现网络问题导致失败,建议使用这个教程上说的代理,把 gradlew 命令全部加上代理。如果还超时那就重新运行一下。
- 你可能会发现项目文件夹里并没有那么大,因为配置过程中下载的文件其实在
C:/Users/用户名/.gradle/cache/minecraft/
(旧版Forge)C:/Users/用户名/.gradle/cache/forge_gradle/
(新版Forge)下,其中,minecraft/assets
文件夹存放的是游戏声音等资源文件。将对应版本的MC的.minecraft/assets
文件夹提前复制到以上目录,即可加快getAssets阶段的配置速度。 - 如果觉得以上太麻烦了,那么直接使用Mouse0w0提供的离线下载包吧。
目录结构
仅对部分文件或目录进行说明。
-
run/
游戏崩溃报告会在这里。 -
src/main/java/
包和代码的存放位置,其中com.example.examplemod为示例mod,删掉即可。 -
src/main/resources/
mod需要的资源文件的存放位置,如模型、材质、语言文件、说明文件等。 -
src/main/resources/mcmod.info
mod说明文件,里面的内容将在Minecraft主界面点击Mods按钮显示,其中,version、mcversion被下面的gradle配置所替换,无需修改,modid用于标识你的mod,其他不再赘述。 -
build.gradle
gradle配置文件,其中,以下部分需要进行修改,version按照版本号的规范可修改成1.0.0,group修改为代码的包名,archivesBaseName为mod ID,同上。例如可以修改如下:version = "1.0.0" group = "moonfan.mymod" archivesBaseName = "mymod"
-
gradlew/gradlew.bat
分别为linux/windows版本。用于配置环境、打包发布等。
Forge/Minecraft 源码目录结构
找到外部库中的 forgeSrc,这就是源码目录:
- assets 资源文件夹,你可以在这里找到 Minecraft 原版的模型/材质等等
- net 源代码文件夹,可以在这里找到 Minecraft 实现的代码,物品/方块等等都能找到
- 当然也可以定位到这个 jar 文件进行解压