0
我正在练习手机上的黑客入侵游戏王国时代(v2.0)的ipad。iPhone上的MobileSubstrate游戏黑客攻击
我只是想赚一大笔游戏里的钱,但是我无处可去。玩家在一个类CCPlayer中定义,有时候会被服务器检查。
所以我试图去CCGameInformation类中的数据的核心。函数 - (id)activePlayer是callet很多(像每秒30次),所以我认为这是一个很好的开始。
CCPlayer定义(在包括文件)作为
@interface CCPlayer : FZPlayer <NSCoding>
{
NSString *townName;
NSString *rawLastUpdateEnergyTime;
NSString *rawLastUpdateStaminaTime;
NSString *rawExpansionTimeStarted;
NSString *rawBankUpgradeTimeStarted;
...
int gold;
int level;
int attack;
...
@end
我宣布它在Tweaks.xm为:
@interface CCPlayer:NSObject
{
NSString *townName;
NSString *rawLastUpdateEnergyTime;
NSString *rawLastUpdateStaminaTime;
NSString *rawExpansionTimeStarted;
NSString *rawBankUpgradeTimeStarted;
...
int gold;
int level;
int attack;
...
@end
我实际上包含了整个事情,只是改变了基类。
CCGameInformation被定义为:
@interface CCGameInformation : _ACFacebookAppIdKey
{
CCPlayer *user_;
CCLevel *userLevel_;
....
}
我Tweaks.xm将它定义为
@interface CCGameInformation : NSObject
{
CCPlayer *user_;
}
@end
和我挂钩的样子:
%hook CCGameInformation
- (id)activePlayer
{
CCPlayer* player = (CCPlayer*)%orig;
MSHookIvar<int>(player, "energy") = 10;
NSLog(@"Energy:%d\n",MSHookIvar<int>(player, "energy"));
return player;
}
但它不工作所有。它按预期打印出“能量:10”,但游戏中的能量不会改变。
我是否正确使用挂钩过程和减速,或者游戏只是更保护,然后我期望?
谢谢。
http://twodayslate.wordpress.com/2013/09/23/how-to-properly-hook-into-an-实例变量与 - THEOS / – twodayslate