『壹』 俠隱閣反編譯解包方法教程
戰棋RPG游戲俠隱閣已經在steam平台發售一胡正御段時間,游戲目前開放第一章全部內容,有玩家已經成功解包了部分游戲內容,下面給大家分享玩家「一川草滿城風」帶來的解包方法
(一)反編譯工具
dnSpy 是一款針對 .NET 程序的逆向工程工具,基於 ILSpy 發展而來的 .net 程序集的編輯,反編譯,調試神器。該項目包含了反編譯器,調試器和匯編編輯器等功能組件,而且可以通過自己編寫擴展插件的形式輕松實現擴展。該項目使用 dnlib 讀取和寫入程序集,以便處理有混淆代碼的程序(比如惡意程序)而不會崩潰。為了方便吧友,我推薦一個下載地址吧(留言或者私聊我)。unity的源碼都存放在dll中,那麼反編譯的工作就是把從dll 中提取出源碼,基本上我們的代碼都在Assembly-CSharp.dll這個文件中,將游戲安裝路徑 PathOfwuxia_DataManagedAssembly-CSharp.dll文件拖動到dnspy反編譯工具中就實現了破解,我們就能看見c#源碼啦,爽!
舉個例子,在Heluo.Data中CharacterInfoData裡面能看見一個清銷函數GetPredictionDamage用來計算預估傷害,我們點開這個函數褲岩跳到SkillData能看見具體計算方式,比如用到了攻擊方攻擊(CharacterProperty.Attack)和倍率(coefficient))。
(二)資源提取工具
相比於Disunity與UnityAssetsExplorer工具,AssetStudio 擁有可視化界面,可以批量導出貼圖,模型,字體,音頻等,可以預覽,最新版支持Unity5.x,所以在這使用AssetStudio作為資源提取工具。為了方便吧友,這里我推薦一個下載地址(留言或者私聊我)。使用方法:點擊菜單 File 中的「Load folder」,載入 unity 游戲的 Assets -bin -data 文件夾。也可以選擇「Load file」,載入 .unity3d 或者 .boundle ,.assets文件。
我們載入PathOfWuxiaAssetBundlesconfig,如下圖所示。點一下Asset list,現在就能為所欲為了,啦啦啦。舉個例子,點下Skill我們能看見所有技能的數據。
『貳』 C# 反編譯軟體的使用(dnspy)
為了實現C#代碼的反編譯,dnSpy是一個強大的選擇。首先,你需要在github上下載dnSpy,地址為github.com/0xd4d/dnSpy/...。
隨後,打開dnSpy軟體,將需要反編譯的C#生成的.exe文件和dll拖拽至軟體中。接著,選擇菜單目錄「文件」,點擊「導出到工程」,將文件導出至指定位置。
在導出的工程文件中,利用Visual Studio進行打開時,你可能會遇到找不到資源文件.resx的問題。此時,需要將通過dnSpy反編譯得到的窗體資源文件,將.resource文件轉換為.resx後綴的文件。
接著,使用Visual Studio開發者工具,執行命令形式的"resgen xx.resourse xx.resx"來完成資源文件的重新生成。例如,參考下圖所示的操作,將窗體的資源文件重新導入至Visual Studio。