天堂私服| GM指令分析(贈送)「L1J版」 - J.J.'s Blogs
文章推薦指數: 80 %
等等,給客服人員操作給予特定玩家帳號獎勵。
核心版本. L1J-3.80c. 分析. 在開始分析前,要知道 GM 指令的指令效果與 ...
Thiswebsite
Archives
Categories
Tags
About
RSS
歡迎!您似乎正在使用廣告攔截器。
請考慮通過禁用您的廣告攔截器來支持我。
J.J.Huang
2021-10-18
天堂私服
5.核心分析/修改
瀏覽次數:次
{{moment(1634520600000).fromNow()}}
天堂私服|GM指令分析(贈送)「L1J版」
章節用意present的指令,此指令用於贈送指定的物品給指定帳號或是全部的帳號,該操作可以思考套用在推廣、首次加入Line..等等,給客服人員操作給予特定玩家帳號獎勵。
核心版本
L1J-3.80c
分析在開始分析前,要知道GM指令的指令效果與使用方式,才方便開啟除錯(Debug)進行分析。
效果:創建一個物品並將其放入個人倉庫;對於無法強化的物品,指定強化的數值將被忽略。
範例:
1.present${帳號}${道具編號}${強化等級}${數量}
註:帳號填入*等於所有帳號,另外程式碼中提示的參數順序是錯誤的,上方為正確的。
1.分析資料表:
先進入commands表,找到present的指令。
class_name是L1Present。
2.指令的分析:
啟動模擬器除錯模式,並啟動天堂遊戲登入兩個帳號。
12線上GM路人甲
首先確認路人甲道具欄、倉庫的內容。
倉庫無任何物品、身上無歐西斯匕首。
線上GM使用贈送的GM指令,指定送一把+10歐西斯匕首給MoroseJJ的(路人甲)帳號。
1.presentMoroseJJ1101
再次確認路人甲道具欄、倉庫的內容。
倉庫依舊無任何物品、身上無歐西斯匕首。
將路人甲重新登入。
再次確認路人甲道具欄、倉庫的內容。
倉庫已經有歐西斯匕首。
將歐西斯匕首領取並鑑定。
至此可以確認贈送指令,是將物品放置倉庫內。
3.分析程式碼:
透過搜尋L1Present開啟程式碼。
1src/l1j/server/server/command/executor/L1Present.java
36~46行,在取得傳入的指令參數,再用itemId查找物品是否存在。
註:這段程式碼不再特別說明,基本上不難。
48行,為主要的邏輯操作,可見使用的是L1DwarfInventory的present方法。
註:Dwarf=侏儒,表示是個人倉庫的物件。
Ctrl鍵壓住,再左鍵點擊present方法即會開啟跳轉到物件與方法位置。
197~208行,根據指令參數,判斷是否為*做不同的SQL語法查詢,最後將取得的account存放在一個accountList物件內。
注意到210行,在呼叫了一個present方法。
Ctrl鍵壓住,再左鍵點擊present方法即會開啟跳轉到物件與方法位置。
該段程式碼過長,直接講述內容行為:
判斷itemId查找物品是否存在。
判斷物品是否為可堆疊的物品。
寫入資料表character_warehouse內。
SQL語法:1234567891011121314151617181920212223242526INSERTINTOcharacter_warehouseSETid=?,account_name=?,item_id=?,item_name=?,count=?,is_equipped=0,enchantlvl=?,is_id=?,durability=?,charge_count=?,remaining_time=?,last_used=?,bless=?,attr_enchant_kind=?,attr_enchant_level=?,firemr=?,watermr=?,earthmr=?,windmr=?,addsp=?,addhp=?,addmp=?,hpr=?,mpr=?,m_def=?
對於每個欄位的用處:
id=流水號
account_name=遊戲帳號
item_id=物品號
item_name=物品名
count=數量
is_equipped=物品是否已裝備。
enchantlvl=強化等級
is_id=是否已鑑定
durability=耐久度(損壞度)
charge_count=?
remaining_time=剩餘時間
last_used=?
bless=祝福
attr_enchant_kind=屬性強化種類(1=地,2=火,4=水,8=風)
attr_enchant_level=屬性強化等級(1~3)
firemr=?
watermr=?
earthmr=?
windmr=?
addsp=?
addhp=?
addmp=?
hpr=?
mpr=?
m_def=?
部分欄位尚未確認功能,所以用?表示。
到此基本上就對贈送的指令分析完成。
結論
程式碼:
src/l1j/server/server/command/executor/L1Present.java
處理客戶端來的GM指令present的處理。
src/l1j/server/server/model/L1DwarfInventory.java
提供針對倉庫操作的一些方法。
結語贈送的指令,分析過後,可以初步了解操作玩家倉庫的方法,之後要節日贈送或是客服使用,甚至是自動化每天登入送贈品都可以參考使用。
另外remaining_time這個欄位,可以用運在限時使用的物品,就像是蠟燭,當被使用時,可使用時間將會慢慢扣除。
原創文章真的不易,希望多多支持,感謝。
最後建議回顧一下首章天堂私服|天堂私服架設教學,了解其章結目錄,此處會不定時更新。
免責聲明
本部落格文章中皆不提供任何所謂的遊戲「主程式」、「模擬器」、「登入器」…等等相關程式的下載點。
本部落格文章中所見之遊戲主程式和服務器端程序均來自網路發佈,版本歸原作者所有。
本部落格文章為研究SQL資料庫與修改JAVA語法使用,並非商業用途,亦無做營運事實等任何一切商業行為。
本部落格文章內容是為研究學習設計思想和原理為目的,絕沒有故意侵權或惡意抄襲、篡改其他遊戲內容!
天堂私服|GM指令分析(創立套裝)「L1J版」
天堂私服|GM指令分析(限等贈送)「L1J版」
延伸文章資訊
- 1天堂私服| GM指令分析(贈送)「L1J版」 - J.J.'s Blogs
等等,給客服人員操作給予特定玩家帳號獎勵。 核心版本. L1J-3.80c. 分析. 在開始分析前,要知道 GM 指令的指令效果與 ...
- 2天堂私服GM指令! - 天堂討論區
在DB中之characters內的AccessLevel改成200就是GM了[/backcolor]GM指令表[/backcolor].全部召回[.全部召回]召回全部玩家[/backcolor]...
- 3天堂私服玩家指令在PTT/Dcard完整相關資訊
白水指令40024 卻在LINE群說是銀箭~ 太瞎~~~3萬隻銀箭試問哪個玩家會跟GM要的啦. ... 投稿要到匿名網站唷匿名投稿連結網址https://goo.gl/41eWJc.天堂私服gm...
- 4太陽神V14 GM指令 - 軟體兄弟
清除]清除地上物品‧玩家附近除外。.滿級[.滿級] 馬上 ... ,天堂私服常用GM指令簡表~ .help(說明) .summon(招喚) .cleaning(清除地上所有物品) .settin...
- 5官方網站| 天堂私服列表熱門推薦
天堂指令. 中文指令英文指令. /誰/who; /對話/chat; /創立/create; /加入/join ... 泡泡/bubble; 斷絕△玩家ID /exclude△玩家ID; /邀請聊...