admin 发表于 2023-6-19 08:50:07

【天堂架设75】私服模擬器一般指令詳細分析

在開始分析前,要知道GM指令的指令效果與使用方式,才方便開啟除錯(Debug)進行分析。

效果:顯示在線用戶數。
範例:

.who
.who all
而一般指令是:

/who
/who ${角色名稱}
1.分析資料表:

先進入commands表,找到who線上人數的指令。
class_name是L1Who。

2.分析程式碼:

***本内容需购买可见***


此時做個反向分析找尋呼叫的位置。
在方法C_Who上,按下右鍵並選擇Find Usages
下方會彈出此所有使用此方法的清單。
剛好只有一個地方,我們點擊將其開啟在工作區。
這時候會開啟PacketHandler.java。
src/l1j/server/server/PacketHandler.java
在前面幾次分析中也有提到。
PacketHandler會發現對應的是個OP_CODE。
C_OPCODE_WHO:請求查詢遊戲人數
註:我為什麼會知道對應的是客戶端的什麼行為?因為有註解有寫得很清楚。

分析至此告一段落。

页: [1]
查看完整版本: 【天堂架设75】私服模擬器一般指令詳細分析