註冊 登錄
熾天使-神魔之塔攻略網,提供最專業的攻略資料 返回首頁

小侯侯的個人空間 http://www.tosapp.tw/?154513 [收藏] [複製] [RSS]

日誌

【小侯侯的拆包日記-第一課】如何使用Fiddler取得關卡資訊?

熱度 4已有 2148 次閱讀2018-3-27 18:04 |個人分類:拆包教學

怎麼提前知道關卡資訊?
概念大概就是遊玩英文版神魔之塔,怎麼玩這個之後再說,先來說怎麼在遊玩的過程中取得關卡資訊。

關卡資訊不外乎幾個數值:
敵人id、攻擊、CD、HP、防禦、掉落物、技能
以上說的這些都是可以在遊玩的過程取得的。
那可能有人會問,我可以不要遊玩就取得這些資訊嗎?
答案是,不行
原理大概是這樣:神魔之塔app→送封包要求到MH伺服器→伺服器產生關卡資訊→回傳神魔之塔app→進入關卡
也就是說關卡的內容都是從伺服器決定的,所以你沒有在遊戲中進入該關卡(送出封包要求)的話,你就無法取得該關卡的關卡資訊。
有人又說,那我如果不知道關卡內容就進去打,只為了取得資訊,那我不就浪費體力了嗎?
恩,是的~所以通常我會辦另一個帳號養到體力上限超過50,可以拿來進地獄級就好。

而要截取上述中伺服器回傳的關卡資訊之前,你必須有一台電腦,然後安裝《Fiddler》這個免費工具
使用這個官方連結(http://www.telerik.com/fiddler),並點選Free Download
安裝過程沒有什麼需要注意的,一直下一步或next即可。

安裝完成後,首先必須做幾個設定,
點選「Tools」→「Options」
1.在「HTTPS」分頁,將所有選項都打勾,
假如出現下面第二張圖的提示,請按Yes



2.在「Connections」分頁,將「Allow remote computers to connect」勾選起來,
然後按下OK儲存設定。


3.重開(一定要重開設定才會生效)Fiddler,
然後確認你要玩的手機跟你的電腦在同一個「區域網路」底下。
然後使用手機瀏覽器連上 http://[你電腦的ip]:8888/
假設你電腦ip是192.168.1.11,那就用手機連上http://192.168.1.11:8888/
連上後你會看到下面畫面


請點選最下方的連結,「FiddlerRoot certificate」,他會要求手機安裝一個憑證
是用來授權讓Fiddler可以監聽HTTPS的封包活動(這句如果太複雜你可以忽略)

4. 在安裝完憑證後,請到手機的wifi設定裡設定代理伺服器proxy,讓封包可以轉由電腦上的Fiddler去收發。
在wifi的設定最下方有個HTTP代理伺服器,點進去後,將模式切換為「手動」,並填上你剛剛電腦的ip,及連接埠8888,然後儲存
(此處為iOS11設定畫面,android用戶請自己依型號找尋proxy設置方法)


5. iOS系統還有一個需要特別注意的地方,因為iOS對憑證授權比較嚴格,所以上述設定完後,
請再到「一般」→「關於本機」→拉到最下面的「憑證信任設定」,將Fiddler憑證完整信任開關打開。

完成以上設定之後,你就可以用Fiddler取得神魔的封包了!
在打開遊戲時,你會發現Fiddler的畫面不斷在跑資料,當然每一個封包都有他的意義在,
而這篇主要是著重在關卡資訊,請隨意挑選進入一個關卡,然後睜大眼睛看在url有包含「/api/floor/enter?floorId=...」的資料


找到這筆資料選取它,在右側的欄位裡,最上方請點選「Inspectors」,然後你會看到右側畫面切成上半跟下半部,
上半部為「送出給伺服器的要求資訊」,下半部就是「伺服器回傳的關卡資訊」囉!
接著點選中間有一條黃線寫著「Response body is encoded. Click to decode.」,讓Fiddler幫我們解碼。



這就是關卡資訊的Json,那要怎麼找出我們要的資訊呢?
可以使用線上Json解析(http://json.parser.online.fr/),把上面截到的Json一字不漏的丟進去解析,他會排出一個類似樹狀圖的格式。



解析出來的結果在右手邊,而關卡資訊就在「data」→「waves」下,
waves下面會有數個JObject,這些JObject代表每一層的敵人資訊,會包含著數個enemy的JObject,
我大概說明一下各個值的意思:
monsterId:
敵人ID
characteristic:敵人技能編號(目前可以到神魔維基-敵人技能去查詢對應的技能,熾天使暫時沒有可以查詢對應的地方)
extras:下面有attack、HP、defense,這三個就不用說明了吧,然後attackDuration就是敵人的cd,
 假設cdLock的值是true,則代表敵人初始cd與attackDuration是一樣的,假設有initAttackDuration,則其值為敵人初始cd。

呼~以上第一課到此為止,之後會再分享其他的資訊,感謝收看!
1

路過

雞蛋
2

鮮花
1

握手

雷人

剛表態過的朋友 (4 人)

評論 (0 個評論)

facelist

您需要登錄後才可以評論 登錄 | 註冊
驗證問答 換一個

關閉

站長推薦上一條 /1 下一條

版權宣言|Archiver|手機版|熾天使-神魔之塔攻略網,提供最專業的攻略資料

GMT+8, 2019-9-13 14:50 , Processed in 0.132929 second(s), 8 queries , Gzip On, Memcache On.

Powered by Discuz! X3

Copyright © 2013-2015 Seraphim Raiders All rights reserved.

重點聲明:本討論區是以即時上載留言的方式運作,本站對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場 ,用戶不應信賴內容,並應自行判斷內容之真實性。由於討論區是受到「即時留言」運作方式所規限,故不能完全監察所有即時留言,若讀者發現有留言出現問題,請聯絡我們。本站有權刪除任何留言及拒絕任何人士留言,同時亦有不刪除留言的權利。切勿撰寫粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
返回頂部