Skip to content
This repository was archived by the owner on Jul 5, 2024. It is now read-only.

Commit b42e368

Browse files
committed
Initial commit
0 parents  commit b42e368

12 files changed

+3933
-0
lines changed

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2019 James R T
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
# Fiddler Cats
2+
**Battle Cats Fiddler Mailbox Hack**
3+
4+
_"Playing it like a fiddle."_
5+
6+
This mailbox hack allows players to acquire items and/or cats of their choice.
7+
8+
## Disclaimer
9+
10+
This repository was made only for research and educational purposes. I am not personally responsible in any way for any unethical malpractices because of this tool. If [PONOS](https://www.ponos.jp/) were to approach me to take down, archive or privatise this repository, I will be obliged to follow their will.
11+
12+
Please support the developers of Battle Cats so that they can add more content for the players of Battle Cats! ヾ(°∇°*)
13+
14+
## Features
15+
16+
1. This hack follows a Man-in-the-Middle (MITM) network approach instead of the usual save data modification (using transfer code and confirmation code). The latter would be more easily detected by the corresponding servers if playing online.
17+
18+
2. This method would not require any jailbreaking, rooting or any game cheating/hacking software.
19+
20+
3. As far as I know, this method is also region-insensitive since it just utilizes the main Internet connection to `ponosgames.com`, instead of taking advantage of region-specific package names and hash salts.
21+
22+
4. This method allows users to specifically curate the list of items or/and cats (including expendables like Rare Tickets, Treasure Radars, EXP and Cat Food) that they desire to obtain (such as retrieving cat units locked based on story progress or past limited-edition cat units).
23+
24+
## Usage
25+
26+
We will be using [Fiddler from Telerik](https://www.telerik.com/fiddler) since it is free, so download and install Fiddler on your computer. Of course, you could use Wireshark, Firebug, Charles Proxy, etc. and I would assume that the steps would be similar. At the time of this writing, I was using Fiddler v5.0 (and it is working for Battle Cats v9.0).
27+
28+
Firstly, connect your mobile device (or emulator) to your computer's Internet connection (possibly through the `Mobile Hotspot` feature).
29+
30+
Next, setup your Fiddler to decrypt HTTPS traffic through SSL proxying (follow [this tutorial](https://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/DecryptHTTPS)).
31+
32+
After that, configure your mobile device to pass their HTTPS traffic to Fiddler (follow [this tutorial](https://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureForiOS) for iOS devices or [this tutorial](https://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureForAndroid) for Android devices). Do take note that without rooting, this method will only work with Android versions before `Nougat` (<7.0). Beyond Android `Nougat`, root access would be required.
33+
34+
Once the traffic is re-routed through your computer, set a filter in Fiddler's `Filters` tab to show only the host `nyanko-items.ponosgames.com` and tick the options `Break request on POST` and `Break request on GET with query string`. After the filter setup is done, go to `Actions` and press `Run Filterset now`.
35+
36+
![fiddler-filterset](./assets/images/fiddler-filterset.png)
37+
38+
On your mobile device (or emulator), open up your Battle Cats and go to the Mailbox (in the bottom-right corner of the Main Menu). Fiddler should show a red-colored `GET` Web Session to `https://nyanko-items.ponosgames.com/messages.php?action=list&accountId=<your-account-id>` so select that and click `Break on Response`.
39+
40+
![fiddler-break-on-response](./assets/images/fiddler-break-on-response.png)
41+
42+
NOTE: If Fiddler indicates another red-colored `GET` Web Session to `https://nyanko-items.ponosgames.com/api/v2/count.php?accountCode=<your-account-id>`, just let that `Run to Completion` and ignore it as it is not relevant to our objective.
43+
44+
Through `TextView` on Fiddler's `Inspectors` tab, you would be able to edit the response by following this JSON format:
45+
46+
```json
47+
[
48+
{
49+
"id":1,
50+
"accountId":"<your-account-id>",
51+
"title":"Items",
52+
"body":"",
53+
"clientVersion":50600,
54+
"country":"en",
55+
"accepted":null,
56+
"created":<unix-timestamp>,
57+
"items":<item-list>
58+
},
59+
{
60+
"id":2,
61+
"accountId":"<your-account-id>",
62+
"title":"Cats",
63+
"body":"",
64+
"clientVersion":50600,
65+
"country":"en",
66+
"accepted":null,
67+
"created":<unix-timestamp>,
68+
"items":<cat-list>
69+
}
70+
]
71+
```
72+
73+
> You should modify the value of `country` to your respective region defined by PONOS.
74+
75+
> Also, just to clarify, the value of `itemCategory` indicates the type of item that the user will receive (`0` is `Items` and `1` is `Cats`).
76+
77+
Edit the values of `<your-account-id>`, `<unix-timestamp>`, `<item-list>` and `<cat-list>` accordingly to valid values. Pick your item or/and cat choices from the lists provided (`cat_list.json` and `item_list.json`) and feel free to edit the `"amount"`. `"title"` can also be changed to whatever you like.
78+
79+
Forward the response to Battle Cats by clicking `Run to Completion` and it will show the items in the Mailbox.
80+
81+
![mailbox-list](./assets/images/mailbox-list.PNG)
82+
83+
Take note that if you take too long to do the previous steps, Battle Cats might respond with a timeout (`Cannot display due to connection error`) and you might need to redo the whole process again.
84+
85+
![mailbox-connection-error](./assets/images/mailbox-connection-error.PNG)
86+
87+
Click the `Accept` button and it will send a `POST` request to `https://nyanko-items.ponosgames.com/messages.php?action=accept`, which will be intercepted by Fiddler again. Click on `Break on Response` again and this time, you need to send a blank `200 OK` response (which you can send through `HexView`) instead of `400 Bad Request`. Edit the HTTP Response Header Fields as follows:
88+
89+
```http
90+
HTTP/1.1 200 OK
91+
Date: Day, DD MMM YYYY HR:MN:SC GMT
92+
Content-Type: text/html; charset=UTF-8
93+
Content-Length: <some-integer>
94+
Connection: keep-alive
95+
Server: Apache
96+
97+
98+
```
99+
100+
Replace `Day`, `DD`, `MMM`, `YYYY`, `HR`, `MN` and `SC` accordingly. The value of `<some-integer>` should be consistent for both the `GET` and the `POST` requests.
101+
102+
![fiddler-hexview](./assets/images/fiddler-hexview.png)
103+
104+
Click `Run to Completion` and Battle Cats should show you a dialog box showing that you have received the items/cats specified. Click `OK`.
105+
106+
The corresponding items/cats would then be added to your inventory. Do remember to exercise moderation (or don't even cheat at all!) so as to prevent getting banned.
107+
108+
## Acknowledgements
109+
110+
Credits to [this Reddit post](https://www.reddit.com/r/BattleCatsCheats/comments/a775je/mailbox_hack_mitm_proxy/) for the original hacking method.
64.1 KB
Loading

assets/images/fiddler-filterset.png

70.8 KB
Loading

assets/images/fiddler-hexview.png

88.1 KB
Loading
106 KB
Loading

assets/images/mailbox-list.PNG

159 KB
Loading

autohack.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Placeholder for automated hack script (possibly by using FiddlerScript).

0 commit comments

Comments
 (0)