j2me游戏-皇家骑士团破解
皇家骑士团 是诺基亚时代喜欢玩的一款游戏,突然之间就想重新玩玩。
但是发现有的关卡过不去了,就动了修改的念头。
文章图片
游戏界面 【j2me游戏-皇家骑士团破解】首先将游戏扔进去,以下是游戏目录
文章图片
image.png 通过逐个查看,可以发现lang.dat,是游戏的所有文字,由此,我们从这里切入。
文章图片
image.png 我们开个项目,遍历出所有的文字与序号
文章图片
image.png 其中可以发现其中76可以作为切入点,每局的收入做手脚
全局搜索lang.dat可以找到解析入口,如下:
public static int a(String str, boolean z) throws Exception {
DataInputStream dataInputStream = new DataInputStream(GameMidlet.a.getClass().getResourceAsStream(str));
bt = new String[dataInputStream.readInt()];
int length = bt.length;
for (int i = 0;
i < length;
i++) {
bt[i] = dataInputStream.readUTF();
}
dataInputStream.close();
return bt.length;
}
可以看出bt是这些文字的集合
继续追踪可以发现,是这个方法再查找调用
public static String a(int i, boolean z) {
if (i >= bt.length) {
return new StringBuffer().append("?: ").append(i).toString();
}
String str = bt[i];
if (!z) {
return str;
}
str = a.a(a.a(a.a(a.a(str, "%K5", "'5'", true), "%K0", "'0'", true), "%K7", "'7'", true), "%K9", "'9'", true);
if (str.indexOf("%KM") == -1) {
return str;
}
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(a.a(17, new String[]{cV.j(1), cV.j(2), cV.j(4), cV.j(8)}));
if (stringBuffer.length() > 0) {
stringBuffer.append('/');
}
stringBuffer.append(a.g(18));
return a.a(str, "%KM", "'2','8','4','6'", true);
}
进一步查找 是a类里面的这个方法总调用
public static String g(int i) {
return a.a(i, false);
}
接下来搜索76
文章图片
image.png 可以看到判断是不是1 1是自己 其他就是打印289这个值 289这个值是敌方保密
文章图片
image.png 搜索这个dc一路跟踪,可以发现f类的E方法
文章图片
是 最后的地方赋值给cb 这个cb就是我们的金钱
我们考虑从这里入手
如4561行所示,添加以下,然后每局都会加1000金币,无视建筑
const/16 v4,0x3e8
文章图片
Screenshot_2019-06-16-15-51-17-205_bin.mt.plus.png
推荐阅读
- 游戏IP(立足于玩家情感的粉丝经济)
- 人生游戏--是游戏,还是人生()
- 「按键精灵安卓版」关于全分辨率脚本的一些理解(非游戏app)
- (小说)月流水几亿的火爆游戏养成记
- 游戏治愈了我无聊之症
- 生活与游戏日记(第182篇)(〔成长瞬间〕关注解决问题2019.10)
- 我妈让我不要玩游戏多做点事
- 牛逼!C++开发的穿越丛林真人游戏,游戏未上线就有百万人气
- 《暴走江湖》-单机休闲挂机游戏
- 游戏|2022年如何学习前端前沿技术,破卷而出()