OiwexO / PoolPredictor

Balls movement prediction mod for 8 ball pool game
20 stars 3 forks source link

Latest 8 Ball Pool version 55.8.0 #14

Closed DuxiiT closed 1 month ago

DuxiiT commented 2 months ago

Would this work using the latest 8 ball pool version? I tried the same steps but got an error while building the APK because of the iwex folder, this is the error at smail_classes5 while convering it to .DEX using APKTool on Windows:

Exception in thread "main" com.android.tools.smali.util.ExceptionWithContext: Exception occurred while writing code_item for method Landroidx/annotation/RequiresOptIn$Level;->values()[Landroidx/annotation/RequiresOptIn$Level; at com.android.tools.smali.dexlib2.writer.DexWriter.writeDebugAndCodeItems(DexWriter.java:1119) at com.android.tools.smali.dexlib2.writer.DexWriter.writeTo(DexWriter.java:415) at com.android.tools.smali.dexlib2.writer.DexWriter.writeTo(DexWriter.java:370) at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:56) at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:35) at brut.androlib.ApkBuilder.buildSourcesSmali(ApkBuilder.java:211) at brut.androlib.ApkBuilder.buildNonDefaultSources(ApkBuilder.java:159) at brut.androlib.ApkBuilder.build(ApkBuilder.java:100) at brut.apktool.Main.cmdBuild(Main.java:296) at brut.apktool.Main.main(Main.java:95) Caused by: com.android.tools.smali.util.ExceptionWithContext: Error while writing instruction at code offset 0x2 at com.android.tools.smali.dexlib2.writer.DexWriter.writeCodeItem(DexWriter.java:1392) at com.android.tools.smali.dexlib2.writer.DexWriter.writeDebugAndCodeItems(DexWriter.java:1115) ... 9 more Caused by: com.android.tools.smali.util.ExceptionWithContext: Unsigned short value out of range: 66291 at com.android.tools.smali.dexlib2.writer.DexDataWriter.writeUshort(DexDataWriter.java:115) at com.android.tools.smali.dexlib2.writer.InstructionWriter.write(InstructionWriter.java:397) at com.android.tools.smali.dexlib2.writer.DexWriter.writeCodeItem(DexWriter.java:1352) ... 10 more

OiwexO commented 2 months ago

Hello. This mod only works with 8 Ball Pool version 5.8.0 armeabi-v7a (32-bit). New 8 ball pool versions have better security, so you can't just inject code into apk.

DuxiiT commented 2 months ago

Ah I understand, would you say that it's impossible to do something like this on the newest version of 8 ball pool? thinking about chetos such as EasyVictory or Snake how are they made?

Hello. This mod only works with 8 Ball Pool version 5.8.0 armeabi-v7a (32-bit). New 8 ball pool versions have better security, so you can't just inject code into apk.

OiwexO commented 2 months ago

I bet it's still possible, but it's a lot harder to do than in older versions because now you have to find the signature check and probably a lot of other checks in both the obfuscated Java and native code and disable them. Cheats like EV, Snake and others either run the game in a virtual environment or use superuser privileges to inject at runtime instead of modifying the game's apk. Also, the game's security mechanisms change from version to version, so what works now may not work with newer versions.

DuxiiYT commented 2 months ago

I've tested quite a few Chetos and they all seem to function the same way which is to create an 8 ball pool instance using a seperate APK rather than modifying the 8 Ball Pool APK directly, is it hard to achieve and if so how?

I bet it's still possible, but it's a lot harder to do than in older versions because now you have to find the signature check and probably a lot of other checks in both the obfuscated Java and native code and disable them. Cheats like EV, Snake and others either run the game in a virtual environment or use superuser privileges to inject at runtime instead of modifying the game's apk. Also, the game's security mechanisms change from version to version, so what works now may not work with newer versions.

OiwexO commented 2 months ago

is it hard to achieve and if so how?

I don't know, never tried to do this