There are Limits to how much value you can add.
The limit for the wallet.json
is the 32-bit integer wich is 2,147,483,647
.
That's why everything is only 2100000000
, the reason is, if the number is at the limit and only + 1 would happen the whole number would turn over and the value goes into minus (With which you cant do anything). That way there are about a hundred million coins/keys/.. buffer that you can collect before this happens.
To set the Highscore you actually have to edit two files with the same number (but they also can be different).
user_stats.json
is the local highscore which you can see next to the crown over the "What's New?" button.
top_run.json
is the score viewable in the "Top Run" list (on opening the leaderboard).
Both files user_stats.json
have the 32-bit integer limit which is 2,147,483,647
.
The top_run.json
had until 3.29.0 has had the 64-bit integer limit which is 9,223,372,036,854,775,807
, was changed to the 32-bit limit.
You can still play the old versions of the SubwaySurfers app, by downloading them from apkmirror.com.
On the bottom left of the Download APK
page, you can see the apk upload date, which you need to set your phone's date to, to avoid the annoying Download Update
popup.
When finding out what the best highest number for the expirationValue
in upgrades.json
is,
I found out that when the number is set too high (the first try was 64-bit) and the Token Boost widget duplicates itself multiple times under each other (which got really laggy).
So the highest number is 99999999999999
.
When editing shortcut
or icon
values in any file, they will stay and the values dont reset.
This means you can Link any button to any (available) page or you can set all icons to specific icons.
You can get a list of the available icons and shortcuts list here.
Id | Name | Default Value | File |
---|---|---|---|
highscore |
Highscore | 2147483647 | Android/.../user_stats.json |
currentScore |
CurrentScore | 2147483647 | Android/.../top_run.json |
1 | Coins | 2100000000 | Android/.../wallet.json |
2 | Keys | 2100000000 | Android/.../wallet.json |
3 | Shop Boards | 2100000000 | Android/.../wallet.json |
4 | Shop Headstart | 2100000000 | Android/.../wallet.json |
5 | Shop Score Booster | 2100000000 | Android/.../wallet.json |
6 | Event Coins | 2100000000 | Android/.../wallet.json |
collectedTokens |
Season Tokens | 2 | Android/.../season_hunt.json |
doubleCoins |
Double Coins | 2 | Android/.../upgrades.json |
permanent_score_multiplier.expirationValue |
Token Boost Time | 999999999999999 | Android/.../upgrades.json |
token_multiplier_low.expirationValue |
Token Boost Time | 99999999999999 | Android/.../upgrades.json |
(Inside the Player Profile from right to left)
Nmae | Place | Default Value | File |
---|---|---|---|
Champ | 102 | 2147483647 | Android/.../user_stats.json |
Diamond | 103 | 2147483647 | Android/.../user_stats.json |
Gold | 104 | 2147483647 | Android/.../user_stats.json |
Silver | 105 | 2147483647 | Android/.../user_stats.json |
Bronze | 106 | 2147483647 | Android/.../user_stats.json |
Since the 3.29.1 update, the json files in the assets/tower/gamedata
directory of the APK are now encrypted.
It seems like they are in some form compiled. This change prevents me from updating SubwayBooster, as it is no longer possible to read the necessary files.
Therefore, SubwayBooster will remain at version 1.4.0 until it is possible to decrypt or decompile the files and access the data again.
Apparently Sybo still dosnt encrypt the save files of the IOS version, nor the assets files. If that changes in the future, we will have to see. Until then SubwayBooster will use the IOS version of the game and extract the assets files, which have the same format.
All files have a version
key.
Some save files might not work and get corrupted if their version doesn't match what's needed by the app.
The weird thing is that not all files are like this and will still work.
But it is still something to check for.