Getting Started
This document is a guide for getting started modding The Battle Cats using various different tools.
Preparing the game package
Before you can start modding, you need access to the game's package for whatever platform you are using.
Android
Downloading the APK
APKs can be downloaded from various online sources such as:
Or through the Google Play API with a tool such as apkeep
See Downloading an APK for more details.
After downloading, you may have to merge the XAPK / split APK. See Merging an XAPK for details.
Extracting the APK
See Extracting an APK for help extracting the APK.
iOS
Downloading the IPA
See Downloading an IPA for details on how to download an IPA.
Extracting the IPA
See Extracting an IPA for details on how to extract an IPA.
Locating the .pack and .list files
Inside the extracted APK file, the .pack and .list files will be in the /assets folder.
See Locating local .pack and .list files for more details.
Extracting the .pack and .list files
See Extracting .pack and .list files for details.
Making your first edits
You can now edit whatever you want, before making any changes you should copy the file you are going to change into a different folder so that the original files do not get overwritten.
You could also use source control with something like git to keep track of changes, but this is optional.
See Category:Game data and Category:Game files for all of the game data can modify.
See Category:Game metadata edits for details on how to modify things such as the package name, app name, icon, and permissions.
This should go without saying, do not include content from someone else's mod or Battle Cats Ultimate pack without permission.
Preparing the modified files
Once you have made your edits, you should place the modified files inside DownloadLocal.
This is because unlike every other pack and list file in the game, the game does not check the integrity of DownloadLocal.pack and DownloadLocal.list, therefore you can easily modify them.
DownloadLocal also has the highest pack file priority and so any files placed inside will always overwrite the original files. For example if unitbuy.csv was inside DownloadLocal and DataLocal, the game will read the modified one in DownloadLocal instead of DataLocal.
See DownloadLocal dumping for more details.
There are other game file applying strategies that can be used, DownloadLocal dumping is just the easiest and will work in most cases.
Turning DownloadLocal into a .pack and a .list file
See Packing .pack and .list files for details.
Packing the game package
Once you have the encrypted DownloadLocal.pack and DownloadLocal.list, you should overwrite the old DownloadLocal.pack and DownloadLocal.list with their modified counterparts. Then you need to pack back up the game package.
Android
See Packing an APK for details.
iOS
See Packing an IPA for details.
Signing the game package
Once packed, most platforms will require that the package is signed before you can install it.
Android
See Signing an APK for details.
iOS
See Signing an IPA for details.
Installing the game package
Once signed you can then install the game package.
Android
See Installing an APK for details.
iOS
See Installing an IPA for details.