步驟
-
下載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 文件進行解壓