現今的線上遊戲(MMORPG)為了抵擋駭客來逆向分析遊戲的主程式,會利用商用殼(Packer)來保護遊戲的主程式,因為直接購買商用殼就不需花費大量的時間和人力去開發加殼軟體,所以就能專注在遊戲的開發。也許有人認為商用殼會被駭客破解,因此並不是特別安全,不過商用殼也有强弱之分,所以只要將無法破解商用殼的駭客抵擋在外就能達到此目的。
2021年2月17日 星期三
劍靈(Blade & Soul) - 商用殼介紹(nProtect、WinLicense、Themida)
2020年7月2日 星期四
劍靈(Blade & Soul) 逆向分析研究 - 自動移動到NPC
在分析完遊戲的坐標系統以及障礙物的相關資訊,我們接下來要撰寫路徑搜尋的程式,因此需要使用路徑相關的演算法。可能大部分沒有接觸這塊領域的同學,也許不知道要使用什麼路徑演算法,我們可以效法遊戲公司最常使用的路徑搜尋,那個演算法就是A*路徑演算法,A*在網路上已經有相當多的現成程式碼,因此我們只要稍微修改一下,就能符合我們需要的功能了。
2020年6月30日 星期二
劍靈(Blade & Soul) 逆向分析研究 - 人物移動方向計算
人物在移動時,如果遇到轉彎,需要讓它識別什麼時候是左轉、右轉或是往後移動,所以我們需要分析人物在移動到下一個坐標前,它的移動方向是哪裡。
2020年6月16日 星期二
劍靈(Blade & Soul) 逆向分析研究 - 坐標系統分析
在設計Bot之前,分析遊戲裡面的坐標系統是非常重要的,因為在尋路的過程我們需要坐標的轉換,以利我們在二維坐標的障礙物偵測,不過有些障礙物只能透過三維坐標來偵測障礙物,因此需要了解整個遊戲的坐標系統的轉換才能繼續開發我們的Bot程式。
2020年4月23日 星期四
2020年2月29日 星期六
2020年2月28日 星期五
2019年12月13日 星期五
劍靈(Blade & Soul) 逆向分析研究 - 列舉人物技能ID
在自動化的過程中,必須要分析人物的攻擊,那麼就要知道程式是使用哪個函式來調用技能,在調用技能之前需要將技能的所有物件和ID列舉出來,所以這次的工作就是把技能物件、技能ID、名稱印出來。
2019年12月7日 星期六
2019年11月23日 星期六
劍靈(Blade & Soul) - 血量與魔力值分析
在研究Bot時,分析人物的血量是開始的第一步,不過對於不熟悉逆向的同學,可能這步就非常困難,但對於逆向高手當然是輕而易舉,由於人物的血量在遊戲的介面是可以顯示他的數值,因此搜尋血量值就變得相較簡單,那麼在撰寫程式需要獲取他的位移值(Offset Value),這邊有人會有疑問,為什麼要獲取位移值 ? 因為遊戲重新啟動,他的DLL(Dynamic-Link Library)或EXE的模組起始位址可能每次都不一樣,所以如果不獲取到模組的位移值,就不能每次都穩定的抓取血量和魔力值。
訂閱:
文章 (Atom)