今天玩杀戮尖塔,好玩,所以试了一下要怎么逆。

这个游戏是java写的,所以基本逻辑就是先把jar包反编译成java源文件,然后修改,然后用idea生成出jar包

这篇只是记录一下基本步骤:

1.反编译jar

这里使用的是idea的java-decompiler插件。

下载好之后找到java-decompiler插件的位置。

先生成一个文件夹,假设名字是test

1
java -cp "C:\decompiler.jar" org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler -dgs=true target.jar test
1
java -cp "decomiler路径" org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler -dgs=true 源jar路径 一个文件夹名

如果正确,文件夹里会生成一个和刚刚同名的jar。解压之后得到源代码。

2.调整目录结构

由于解压后所有内容都是平铺的,需要调整目录结构让idea可以正确识别并生成,同时由于我逆的是游戏模组,所以还需要导入对应的游戏依赖包。

目录结构应该是:

test

  • src
    • main
      • java
        • 源代码
      • resources
        • img
        • localization

生成jar

不是很懂maven,好像是一个管理器一样的东西,这个地方我用它来生成jar代码

详见:杀戮尖塔MOD制作详解

首先构建pom.xml

在里面填写对应的配置项

然后在右边选择package

它会自动生成,如果反编译的文件有问题,就手动修正一下(我只遇到了一个)

然后就能生成对应的jar文件了。


一定要注意文件路径要正确,不然只能生成只有元数据的文件。