精華區beta Minecraft 關於我們 聯絡資訊
這篇是一個如何用 Minecraft-Forge 製作 Mod 的教學 在教學開始之前 先說說為什麼要做 Mod 吧 Minecraft 給我們很好的創作空間 (嗯...或者是生存空間) 但是,玩久了,總會覺得 Minecraft 世界不夠好 而科技始終來自於人性 於是乎,Mod 誕生了 Minecraft 開始有了變化 畫面顯示速度變快了 (OptiFine) 介面有了小地圖 (Rei's Minimap) 生態系變得更豐富了 (ExtraBiomesXL) 還有很多很多有用有趣的東西不斷創造出來 一切都是因為,原本的世界不夠好,我們需要更多變化,更多的創作。 開始進入正題,要怎樣做一個 Mod 呢? 首先,你得先有一些基本知識 我在下面列出幾項,建議都要會一點 1. 你會不會架設 Minecraft 伺服器? 2. 你會不會安裝 Mod? 3. 你會不會寫 Java? 4. 你會不會用 Eclipse? 如果以上都答「會」或是「會一點」,那應該就沒問題 如果只是純單機的話,1 和 2 也許不會也沒關係 這篇是以 Eclipse 為主,理論上不會 Eclipse 也可以做 Mod 但這不在本篇教學範圍內 第一個步驟 先下載 Forge http://files.minecraftforge.net/ 這裡要注意 建議選擇 Recommended 系列的版本 通常這些版本的 Bug 比較少 另外要注意的是下載的檔案 請選擇 src 而不是 installer 也不是 universal 那些是給安裝 Mod 的使用者或伺服器管理員使用的 我們是開發人員,所以選擇 src 下載回來之後,把它解壓縮,會看到一個 forge 資料夾 然後第二個步驟就是執行裡面的 install.cmd (這個 install.cmd 會幫你下載 MCP) (Linux 或其他作業系統請看裡面附帶的 README-MinecraftForge 說明) 接下來就是等待它完成 完成之後裡面應該會多一個 MCP 資料夾 第三個步驟,開啟 Eclipse 把 Workspace 換到 forge/mcp/eclipse 然後就可以開始寫自己的 Mod 了 如何寫一個最基本的 Mod 呢? 程式的部分寫在這裡實在太長 而且網路上已經有非常好的範例和教學 建議先學完下面這一系列教學再做自己的 Mod 基礎 http://www.minecraftforge.net/wiki/Basic_Modding 配方 http://www.minecraftforge.net/wiki/Crafting_and_Smelting 新物品 http://www.minecraftforge.net/wiki/Basic_Items 新方塊 http://www.minecraftforge.net/wiki/Basic_Blocks 材質 http://www.minecraftforge.net/wiki/Icons_and_Textures 學完之後,第四步驟就是做出屬於自己的 Mod 測試方法很簡單,在 Eclipse 按下執行 (Run) 就會跑 Minecraft 了 看看自己做的 Mod 有沒有正常運作吧! 雖然在 Eclipse 單機環境運作正常 但是出了 Eclipse 之後,我的 Mod 要怎麼和別人分享呢? 這時候就要把你的 Mod 包裝成 .zip 或 .jar 檔 請勿自己用 Eclipse 的 Export 包 因為有些函式名稱必須要再經過混淆器才可以用在原 Minecraft 程式上 所以,第五步驟請執行 mcp 資料夾下的 recompile.bat 有 Error 是正常的,只要你確定 Eclipse 下編譯通過,八成沒有問題 第六步驟是執行 reobfuscate.bat Error 不用理它 然後第七步驟到 reobf/minecraft 資料夾下 新增一個 mcmod.info 純文字檔案 範例可以看下面這個連結 https://github.com/MinecraftForge/FML/wiki/FML-mod-information-file 之後,第八步驟把 reobf/minecraft 裡面的檔案全部壓縮成一個 .zip 檔 注意,這個壓縮檔案的邏輯就和一個 Java Library 一樣 別把 minecraft 資料夾也包進去了,要再往下一層才對 更精確的說就是 壓縮檔裡面最上層的資料夾必須是你的 package 最開頭的名稱 到這邊就完成了 這個壓縮檔就和一般的 Mod 一樣 可以到處分享給別人玩囉 -- 另外,最後我補充一個特殊情況 之前我做一個 Mod 的 Addon 會用到另一個 Mod 的東西 但是這個 Mod 沒有提供原始碼 我要怎麼做呢? 其實很多東西 mcp/docs 都有說明 README-MCP.TXT 有提到: * If you want to include external libraries (either as .jar or .class) to the classpath during recompilation add them to a folder called "lib" creating it first if required. 也就是說,我只要把那個 Mod 的 .jar 檔案丟到 mcp/lib 裡面就可以了 要注意的是這裡並不接受 .zip 檔 這時只要把 .zip 檔重新命名成 .jar 就可以了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.247.22
hfs:推! 08/25 22:52
yuan860721:Mods最重要的就是創意xD~ 08/25 23:05
lulanee:還有要能長久更新的毅力orz 08/25 23:07
jeffffliu:怎麼沒裝MCP呢 08/26 07:40
Forge 附的 install.cmd 會自動下載 MCP ※ 編輯: H45 來自: 122.117.174.134 (08/26 09:21) ※ 編輯: H45 來自: 122.117.174.134 (08/26 09:27)
jeffffliu:ok 08/26 10:47