[楓之谷私服]SRC編譯完整教學

最後更新於 2022 年 6 月 19 日

SRC包含了該端口所有的源碼,什麼指令、函數都需在SRC中定義,可謂是整個端口最重要的命脈。

*版本為TMS v120 , 請務必記得備份 , 若有任何損失本人不負責。

下載IDE

在開始之前,我們要先下載一個IDE – NetBeans IDE 我使用的是 7.4 版本,下載請點我

image 87 [楓之谷私服]SRC編譯完整教學

新增專案

在開始之前,先將伺服器端的dist、src資料夾複製,在桌面(任意地方)新增一個資料夾後貼上。

SRC1 [楓之谷私服]SRC編譯完整教學

接著打開NetBeans IDE,File – New Project…

SRC2 [楓之谷私服]SRC編譯完整教學

選擇 Java – Java Project with Existing Sources – Next>

SRC3 [楓之谷私服]SRC編譯完整教學

輸入專案名稱(隨意名稱) 和 選擇輸出資料夾(隨意位置) 後按Next> 。

SRC4 1 [楓之谷私服]SRC編譯完整教學

Source Package Folders右側Add Folder… 選擇 src資料夾(不要點進去)後按開啟。

SRC [楓之谷私服]SRC編譯完整教學

直接按Finish。

SRC5 [楓之谷私服]SRC編譯完整教學

至此專案就新建完成,左側會出現一個新的專案,內容包括

  • Source Packages(你的SRC內容)
  • Libraries

Libraries上按右鍵 – Add JAR/Folder…

SRC6 [楓之谷私服]SRC編譯完整教學

選擇dist\lib內的所有jar檔開啟。

SRC7 1 [楓之谷私服]SRC編譯完整教學

開啟後Libraries內就會出現你伺服器端中的jar檔了。

SRC結構 [楓之谷私服]SRC編譯完整教學

出現亂碼

若是發生錯誤,很有可能是你的專案Java版本選擇錯誤,在專案上按右鍵 – Properties

image 88 [楓之谷私服]SRC編譯完整教學

Sources – Source/Binary Format 選擇正確的JDK版本 (整合包內的版本是JDK8)。

SRC8 [楓之谷私服]SRC編譯完整教學

修改JAVA檔

專案開啟後,下一步可以開始修改內容了,比如說我希望將「拍賣」鍵改為呼叫萬能NPC,修改拍賣內容的檔案在 handling – MapleServerHandler.java 中。

搜索 ENTER_MTS,將內容修改為呼叫NPC(萬能NPC)即可。

會使用到的語法:

c.getPlayer().getLevel(); //獲得玩家等級
c.getPlayer().dropMessage(5, "訊息內容"); //跳出訊息
NPCScriptManager.getInstance().start(c, NPC編號); //開啟NPC對話
SRC9 [楓之谷私服]SRC編譯完整教學

完整代碼

在最上方 import 處加上

import tools.MaplePacketCreator;
import scripting.NPCScriptManager;

*請注意每個case之間的內容是互不相關的,不要把別的case誤刪了。

case ENTER_MTS:
     if (c.getPlayer().getLevel() < 10) {
        c.getPlayer().dropMessage(5, "尚未達到10級將無法使用。"); //若玩家等級小於10級,跳出訊息「尚未達到10級無法使用。」
     } else {
        NPCScriptManager.getInstance().start(c, 9000020); //如果玩家大於10級則呼叫NPC 9000020 對話。
     }
     c.getSession().write(MaplePacketCreator.enableActions());
     break;

編譯輸出

修改完想要修的地方後,該怎麼編譯呢?

上方工具欄找到一個槌子旁邊有掃把的圖示

SRc10 [楓之谷私服]SRC編譯完整教學

按下去後下方輸出視窗跳出 BUILD SUCCESSFUL (total time: ? seconds) 代表編譯完成。

SRC11 [楓之谷私服]SRC編譯完整教學

接著你在輸出資料夾內可以看到有三個資料夾和兩個檔案,這個dist資料夾和伺服器端的dist是相同的。

SRC12 [楓之谷私服]SRC編譯完整教學

我們只需要將剛剛輸出的dist資料夾中的 專案名稱.jar 修改檔名為 TMS120.jar 然後覆蓋回伺服器端/dist 資料夾中。 (修改的檔名取決於你伺服器端dist中的jar檔名。)

SRC13 [楓之谷私服]SRC編譯完整教學

至此,SRC的編譯已經完成,從腳本撰寫、修改WZ到現在編譯SRC,基本上楓之谷世界大部分內容你都可以隨意新增、修改、刪除了,自己研究一下吧!

學習網站

這邊推薦幾個給新手架私服學習的網站

AICL社群娛樂集團論壇的楓之谷綜合技術交流版AICL社群娛樂集團 網站

R3VER.SE論壇的楓之谷私服 版

XinChiStory論壇 的楓之谷相關技術討論 版

冰楓論壇 的 私服討論版

87楓之谷私服架設討論區(FB社團)

對岸

楓葉物語論壇的 冒險島單機 版

快捷方式網絡遊戲技術論壇的 冒险岛|枫之谷|MapleStory 版

國外

RaGEZONE論壇的 MAPLESTORY 版

CSDN、巴哈、github…等搜索關聯詞也可以查到有關私服的內容,多去發掘吧。

4e52d54f6bc42abb41d26eb5b0df6517?s=250&d=wavatar&r=g [楓之谷私服]SRC編譯完整教學
5 1 評分
Article Rating
訂閱
通知
guest
20 Comments
在線反饋
查看所有評論
eightyeight
eightyeight
1 年 前

請問如果服務端內沒附src該怎麼處理呢?

eightyeight
eightyeight
回复  eightyeight
1 年 前

對了 用大大的v120 src套在v113上會出事嗎?

eightyeight
eightyeight
回复  pluto
1 年 前

好的了解,謝謝大大! 真的幫助我很多

kaa
kaa
11 月 前

請問一下 我使用的時候會出現 read-only ,反編譯的檔案無法進行編輯 上網也找不到方法

soya1377
soya1377
10 月 前

請問一下,在導入dist/lib的資料後,source packages前面圖示出現紅色驚嘆號可能是什麼問題呢?
嘗試無視後先試著如教學更改拍賣為NPC並編譯輸出後,顯示start.java裡面有錯誤(如圖),求大大解救 (我架的是沒有src的tms120,拿了您整合包裡的src出來嘗試)

soya1377
soya1377
回复  soya1377
10 月 前

已解決:java版本問題(電腦裡同時有java7跟8,預設是java7)

先到tool -> java platform新增路徑到JDK1.8,然後到libraries的properties的java platform改為JDK1.8,最後再到專案的properties改為JDK8(前面platform沒先改這邊不會顯示JDK8),再編譯就沒有錯誤產生了

非常謝謝大大的教學,每次觀看您的文章都會讓我學到很多!!

soya1377
soya1377
回复  pluto
10 月 前

請問大大有考慮做寵物全圖吸的教學嗎? 在Movepet那邊摸索了好久還是一頭霧水

asd
asd
3 月 前

請問 src 裡面是 .class 要如何編譯

asd
asd
回复  asd
3 月 前

已自行解決 .class已轉成.java了

asd
asd
3 月 前

請問 匯入 dist\lib內jar檔後 原本Projects內資料夾正常 變成驚嘆號 更改 Source/Binary Format JDK 8 還是沒變動 是為什麼?

asd
asd
回复  asd
3 月 前

我只有安裝 java 8 應該不會是 java版本問題?

asd
asd
回复  pluto
3 月 前

如圖片 這些 .java 我是從 .jar 反編譯過來的
只要點Libraries 就跳出紅色驚嘆號

588685.png
Zisha
Zisha
2 月 前

大大你好~請問如何在SRC中新增指令以及變更楓之谷的解析度呢?
或是等比例放大楓谷遊戲視窗
我的版本是113,在網路上搜尋都找到不相干的…不然就是我不太會搜尋
希望大大提點一下

asz910858 最後編輯於 2 月 前
新同學
新同學
1 月 前

大大問一下 你這個程式現在ide 是最新版本的13版
但安裝的時候到一個畫面會顯示 找不到JDK
是因為版本的問題嗎
還是我安裝太高的阪本

煩請大大回覆了感恩