網友評分: 5.8分
rgssad加密文件解包器是一款針對RPG游戲所推出的游戲解碼器。它的功能十分強大,能夠可以查看RPGVR游戲里的東西和修改,可輕松配上RPG制作文件,讓你完美解碼RPG游戲包,想怎么玩都行。
開始的8字節是文件標志,用于判斷是不是RGSSAD文件。然后是n個
struct SubFile
{
unsigned long filenamesize;
filenamesize 字節的文件名;
unsigned long filesize;
filesize 字節的文件正文;
};
不過所有的SubFile結構都是xor加密過的。MagicKey的初值是0xDEADCAFE
MagicKey 的變換規則為 MagicKey = MagicKey * 7 + 3;
其中文件名是按字節異或,filenamesize filesize 以及文件正文都是按雙字異或的。
方案一:使用自己的加密/解密算法
第一種加密方案是修改RGSS102J.dll中的解密算法,然后自己把素材打包成RGSSAD格式。
此方案要求使用者對程序設計以及二進制文件的修改有一定的基礎。
由于小寶現在還沒有試過外掛dll這種技術,所以這里介紹一個相對簡單的方法——修改MagicKey的初始值。在前面一節中,我們知道RMXP是使用0xDEADCAFE作為MagicKey的初始值,那么我們把RGSS102J.dll中的DEADCAFE修改掉,然后自己打包就可以防范那些一般的解包工具(比如我提供的那個,還有RGSSAD Extractor)。
當然,如果你覺得有必要的話,還可以給這個修改過的dll文件加一個強殼,然后隨游戲發布。
方案二:混淆文件名
第二種加密思路是混淆文件名。在Windows操作系統下,有 //:*?"<>| 這9個字符是不能用作文件名的。除去//表示文件目錄,我們還有7個特殊字符可用。如果在原有文件名中加入這幾個本來不能用的字符,那么解包程序就會因為不能正常創建文件而提取失敗。
注:此方法需要自己打包資源文件,以及修改rxdata文件,工作量比較大。
混淆不能絕對保證自己的游戲不被盜用,它的主要目的是打擊盜用者的信心,讓他在還沒有導出全部素材的時候就已經垂頭喪氣,精疲力盡了。
當然對于游戲而言,無論什么樣的加密方案都只是增加破解者的工作強度,而不能真正保護自己的素材不被提取,因為素材終歸是要在游戲中使用的。