Package: battle-cats-save-editor
Battle Cats Save File EditorA python save editor for the mobile game The Battle CatsJoin thediscord serverif you want to suggest new features, report bugs or get help on how to use the editor (please read the below tutorials / watch the latesttutorial videofirst before asking for help).Thanks toLethal's editor for giving me inspiration to start the project and it helped me work out how to patch the save data and edit cf/xp:https://www.reddit.com/r/BattleCatsCheats/comments/djehhn/editoren/Beeven and csehydrogen's open source code, which helped me figure out how to patch save data:beeven/battlecats,csehydrogen/BattleCatsHackerEveryone who's given me saves, which helped to test save parsing/serialising and to test/develop new featuresHow to useIf you have a pc: watch aTutorial video, or scroll down for a text tutorialIf you only have an android device: read theAndroid text tutorialIf you only have an ios device: watch theIOS tutorial video(Made by Viarules)Main tutorialYou no longer need a rooted device nor a rooted android emulator.Although if you want to get unbanned / fix the elsewhere error you will still need one. I recommend LDPlayer, Nox, or MEmu if needed. Bluestacks is also an option but is more difficult to root as it doesn't have a built in option.Install python (You'll need version 3.9 and up)https://www.python.org/downloads/Enter the command:py -m pip install -U battle-cats-save-editorinto command prompt or another terminal to install the editor (NOT the Windows Python app). If that doesn't work then usepython3orpythoninstead ofpyin the commandEnter the command:py -m BCSFE_Pythonto run the editor. If that doesn't work then usepython3orpythoninstead ofpyin the commandLook below for the tutorial that you need, or watchherefor a videoUsing Transfer CodesIf you don't have a rooted device or an emulator setup then do this:Go into the game and look in the top right of the screen and record / remember the game versionGo into the in-game transfer system inSettings-> Data Transferand clickBegin Data TransferIn the editor use the option calledDownload save data from the game using transfer and confirmation codes(enter the corresponding number, not the name itself)Enter the game version that you are using,en=english,kr=korean,ja=japanese,tw=taiwan.Enter your transfer codeEnter your confirmation codeEnter the game version that you recorded earlier in step 5. If you entered everything in correctly it should work and you should be able to select a place to put the saveIf you get a parsing error please join thediscord serverand report it in #bug-reports and / or dm me your save file (preferablynottransfer codes)Edit what you wantGo into theSave Managementoption and selectSave changes and upload to game servers (get transfer and confirmation codes). It may take some timeEnter those codes into the game's transfer system (click onResume Data Transfer) (You may need toCancel Data Transferin-game before doing so)If you press play you may get aThe current Save Data is in violationmessage, if so press ok and try again and it should go away, if it doesn't look at the tutorial belowUsing a rooted deviceIf you can't upload your save data using the in-game system because your are banned or theThis save data is currently active elsewheremessage appears, you will need direct access to the save data:If you don't have a rooted device:You will need to get one of the emulators listed earlier, I recommend LD Player because I know that it works with this method. If you change the default install location, make sure to keep a note of it for it laterEnableroot permissionin the settings and underADB DebuggingselectOpen local connection. You will need to restart LD Player for the changes to workOpen the editor and select the option namedUse adb to pull the save from a rooted deviceand enter your game versionIf you get the option to add adb to your path, select entery.The editor will look for adb in default install directories of common emulators and add it automaticallyIf it fails, then you will need to eitherEnter the path to your emulator's install directory, it might look likeC:\LDPlayer\LDPlayer4.0Download adb with fromhere. Extract the zip and copy the folder path (not adb.exe itself) into the editorNow rerun the editor and try the option again. If it still doesn't work you'll need to manually do it, using the tutorial below.If you get a parsing issue please join thediscord serverand report it in #bug-reports and / or dm me your save file (preferably not transfer codes)Edit what you wantGo into save management and select an option to push save data to the gameEnter the game and you should see changesPut adb in pathTo use the options in the editor to get and push your save data to the game, you will need to have adb in your path system environment variable. The editor will try to do this automatically, but it may not work. So do this if it doesn't (If you're not using windows look up how to do this):If you are using an emulator: Go to your emulator's install directory, if you're
using LDPlayer it will most likely be inC:/LDPlayer/LDPlayer4.0.
Then findadbin that folder (other emulators might have it in thebindirectory)If you aren't using an emulatorDownload the Android SDK Platform Tools ZIP file for Windows, and unzip it.Copy the path to the folder that you are in (not adb.exe itself)Then open the windows start menu and search:edit the system environment variablesand press enter.Then click on theEnvironment Variablesbutton.Then in theSystem variablesbox find the variable namedPath, then
click on theeditbutton.Then clickNewand paste the path into it.ClickOkthenOkagain thenOkagain.Relaunch powershell and maybe restart your whole pc, and try the command
again.If this method is too difficult, just use a root file explorer instead
and manually get the files that you want. The path that you will need is:/data/data/jp.co.ponos.battlecatsen/files/SAVE_DATAHow to fix "This save data is currently active elsewhere" or "The current Save Data is in violation"You will need to get access to save data so you will need a rooted device / emulator, so look at the first part of theUsing a rooted devicetutorial.Select the option inInquiry Code / TokentoFix elsewhere error / Unban accountIt may take some time but after, you should be able to choose one of the options in save management to push the save data to the game.If you press play you may get aThe current Save Data is in violationmessage, if so press ok and try again and it should go away, if it doesn't then either you've done something wrong or the process didn't work. You may need to follow the tutorial in the second part of the old help videohere(3:40) and use theOld Fix elsewhere error / Unban account (needs 2 save files)feature insteadHow to unban an accountYou can get banned for editing in any amount of cat food, rare tickets, platinum tickets or legend tickets.The way you fix it is the same method as the elsewhere fix, so just follow that.How to prevent a ban in the futureInstead of editing in platinum tickets use thePlatinum ShardsfeatureInstead of editing in rare tickets use theNormal Ticket Max Trade Progress (allows for unbannable rare tickets)featureInstead of hacking in cat food, just edit everything in that you can buy with cat food, e.g battle items, catamins, xp, energy refills (leaderships), etc. If you really want catfood then you can clear and unclear catnip missions with the featureCatnip Challenges / Missionsthen entering 1 when asked. You'll need to collect the catfood in-game after each clear thoughInstead of hacking in tickets, just hack in the cats/upgrades you want directlyAndroid TutorialIf you don't have a pc to install and run the editor you can use Termux.DownloadF-Droid- You can download the Termux apk directly but then it won't automatically updateInstall F-DroidOpen it and wait for it to finishUpdating repositoriesTap the green search button in the bottom right and search forTermuxTapTermux Terminal emulator with packagesTapINSTALLand thenOPENonce installedOnce opened enter the commandpkg install pythonIf that doesn't work then read this:https://stackoverflow.com/a/71097459Then runpython -m pip install -U battle-cats-save-editorIf that doesn't work then runpkg upgradeand try againThen runpython -m BCSFE_PythonYou can then use the editor like normal (If asked to enter the path to a save file, then just enterSAVE_DATA)Install from sourceIf you want the latest features and don't mind bugs then you can install the editor from the github.DownloadGitRun the following commands: (You may have to replacepywithpythonorpython3)git clone https://github.com/fieryhenry/BCSFE-Python.git
py -m pip install -e BCSFE-Python/
py -m BCSFE_PythonIf you want to use the editor again all you need to do is run thepy -m BCSFE_PythoncommandThen if you want the latest changes you only need to rungit pullin the downloadedBCSFE-Pythonfolder. (usecdto change the folder)