fieryhenry / tbcml

A python library designed to make modding The Battle Cats easier, more automated, and more powerful
MIT License
7 stars 3 forks source link

iOS ipa support? #22

Open cintagram opened 2 months ago

cintagram commented 2 months ago

current tbcml cannot modify ios battlecats (.ipa file), do you have plan to support ios?

Both Android and iOS bc app structure are similar. all things in assets folder in apk are also in the ipa file. So we can change logo, datapacks, html…

It could be hard to implement all features like mailboxhack or libc modifications (antiban)

fieryhenry commented 2 months ago

yeah, I just dont have any apple devices and so i haven't bothered to support it. I'll need to research how ipa works

cintagram commented 2 months ago

i modded bc ios ipa several times, i will write the code when im free so you can ask... :)

fieryhenry commented 2 months ago

i've started some ipa stuff here: https://github.com/fieryhenry/tbcml/tree/ipa, i don't know if it works and signing the ipa file still needs to be done. Scripting and a few other small things also need implementing but those things aren't really a priority atm.

here's a basic script:

import tbcml

ipa_path = tbcml.Path("/home/fieryhenry/Downloads/The-Battle-Cats.ipa")

loader = tbcml.IpaModLoader("en", "13.1.1")
loader.initialize(ipa_path)

mod = tbcml.Mod()

cat = tbcml.Cat(cat_id=0)
form = tbcml.CatForm(tbcml.CatFormType.FIRST, name="cool name!")
cat.set_form(form)

mod.add_modification(cat)

ipa = loader.get_ipa()
ipa.set_package_name("jp.co.ponos.battlecatsen.hii")
ipa.set_app_name("The Battle Cats Ipa test")

loader.apply(mod, open_path=True)

i might merge the IpaModLoader class with the normal ModLoader class when everything's done

cintagram commented 2 months ago

you dont have to sign ipa beforehand, it is signed with certificate(user-own or enterprise, etc) when user installs the ipa. Anyway I will contribute that branch too.

cintagram commented 2 months ago

here is latest ipa files for jp 13.2.0, kr 13.1.1, en 13.1.1.

https://1drv.ms/u/s!Agp_r-p679-flyXHEx3gB6JJ43I9

fieryhenry commented 2 months ago

thanks

randomkidpooping commented 1 month ago

here is latest ipa files for jp 13.2.0, kr 13.1.1, en 13.1.1.

https://1drv.ms/u/s!Agp_r-p679-flyXHEx3gB6JJ43I9

how do I use it

cintagram commented 1 month ago

here is latest ipa files for jp 13.2.0, kr 13.1.1, en 13.1.1. https://1drv.ms/u/s!Agp_r-p679-flyXHEx3gB6JJ43I9

how do I use it

what is your purpose?

SDLSikosiao commented 1 month ago

here is latest ipa files for jp 13.2.0, kr 13.1.1, en 13.1.1.

https://1drv.ms/u/s!Agp_r-p679-flyXHEx3gB6JJ43I9

how do I use it

what is your purpose?

Apart from that, what other application can I use to install more ipas?

cintagram commented 1 month ago

Apart from that, what other application can I use to install more ipas?

use altstore or sidestore

cintagram commented 4 weeks ago

oh ponos released 13.3.0jp. i will upload jp13.3.0, other13.2.0 ipas today