2/05/2014

[遊戲開發] Unity Cocos2D 防作弊 遊戲修改大師、八門神器

我在玩遊戲時遇到能改的我也會偷改…誰叫他期間限定又設的超難!

總之為了大宗玩家必需維持公平性
有付錢買裝的人比一般人強,但會改數值的人沒花錢可是無敵…
叫付錢玩家怎再繼續花錢呢



一、不斷換記憶體位址
var HP = new INT(1);
var tmp = new INT(HP - 1);
HP = tmp;


二、加密數值
set get 時都經過轉換

三、不要顯示數值
以百分比、血條顯示狀態
雖然可以用加減法找到數值但門檻變高
個人認為可以讓玩家享受遊戲的本質。而不是在意數字上的變化

四、驗證數值
扣血前記錄數值,扣完血後隔個一小段時間檢查血量不應該是滿的(有自動補血技能另外計算
或統計總扣血量和總補血量檢查不合理處

例:記錄目前值 舊值  變動值
在下一次變動時驗證  目前值 - 舊值 ==  變動值
目前值被改的話就可以驗證到作弊


沒有留言:

張貼留言