您当前位置: 天堂123 > 天堂架設 > 私服如何編輯程式碼和編譯Jar

私服如何編輯程式碼和編譯Jar

2022/6/16

此章節將會找尋一個超級無敵簡單到爆炸的修改,但是可以學習一系列的流程到修改程式碼、編譯jar檔、執行jar檔、觀看成果。

設置目標:

啟動天堂模擬器。
注意命令提示字元內的輸出內容。
看到初始化完畢。
這次的目標就是找尋到程式碼位置,並把他修改輸出的內容。

搜尋
在Eclipse IDE中,算是很常使用的一個功能就是搜尋,這邊我們要做的就是搜尋關鍵字初始化完畢在程式碼的哪個位置,誰在使用他,從而判斷需要修改的地方。

搜尋前記得關閉不必要的專案,避免搜尋到相同關鍵字在不同的專案內。
點選Search→File。

在開啟的Search視窗中,點選File Search頁籤。
Containing text輸入要搜尋的內容初始化完畢。
Scope選擇workspance即可。
最後點擊Search做搜尋。
註:有一些設定和範圍可以自行摸索,這邊只簡單教學使用。


搜尋結果會在下方的Search視窗內。
可以點選右邊的+符號,把所有搜尋的結果展開。(注意搜尋結果太多展開會Lag甚至當掉唷)
見搜尋到兩個檔案 -
messages_zh_TW
messages

初步判斷zh_TW為繁體中文,所以可以斷定為程式是讀取這個位置的名稱來做輸出。
點擊messages_zh_TW的搜尋結果,開啟於編輯區。
見51行的內容。
{ "l1j.server.server.GameServer.initialfinished","初始化完畢"}};

修改方式有兩種 -
第一種,直接修改該行程式碼後方的”初始化完畢”字串內容。
第二種,修改取得該Key對應的程式碼位置。(這種暫時不提及,對新手可能有點難了解其關係)
針對第一種修改方法的修改方式
// 編輯前
{ "l1j.server.server.GameServer.initialfinished","初始化完畢"}};
// 編輯後
{ "l1j.server.server.GameServer.initialfinished","這是第一次嘗試修改天堂核心程式碼呢!好期待!"}};
編輯後記得儲存,快捷鍵Ctrl + S。

接著Build專案,快捷鍵Ctrl + B,確認是否沒有任何錯誤。
到這邊已經成功第一步驟,修改完程式碼了。
編譯Jar並執行
此版本的天堂模擬器是使用Ant做腳本來編譯出jar檔。

開啟L1J-3.80c目錄。
註:記得要開啟Eclipse編輯的那個資料夾唷。

並進入Build的資料夾。

點擊執行BuildManagement.bat檔。

輸入1並按下Enter進行編譯。

可見開始編譯,最後出現BUILD SUCCESSFUL,編譯完成。

此時回到L1J-3.80c目錄內。
注意l1jserver.jar檔案的修改時間是否已經改變成當前時間,其表示已經是編譯後的新jar檔。
執行ServerStart.bat檔案來開啟天堂模擬器。
注意命令提示字元內的輸出內容。
看到這是第一次嘗試修改天堂核心程式碼呢!好期待!。
恭喜第一次的修改和編譯已經成工看到成果了。