2012年2月4日 星期六

Minecraft 如何將 SMP Mod Port 到 bukkit

相同文章也發表於巴哈姆特

一般在 Minecraft Forum 看到的 SMP Mod大多是 for Vanilla 的 Mod
(Vanilla : 官方 Server),如果要能執行在 bukkit 上面,
是需要進行轉換的(轉換在這裡就稱為 Port)

為何 Vanilla Server 的 Mod 無法直接用在 bukkit 上面?
因為 Vanilla Server是經過混淆器包裝過的程式,也就是裡面的
class 檔案,都呈現 aa.class  wz.class 這類的名稱。

而雖然 bukkit 裡面也有官方 Server 的部分,但這些 class 名字是有
解譯過的,也就是會呈現最原始的情況。

再者, bukkit 有改過這些 class 的原始碼,所以在方法和變數名稱都
和原始的有所差異,所以在  decompile 的時候需要使用修改過的檔案來進行
Mapping。

首先,先了解要 port 一個 SMP Mod 所必需的東西: