Skip to content

A collection of tools that aim to make patching Tanki Online client binaries more convenient.

License

Notifications You must be signed in to change notification settings

puigru/TankiOnlinePatches

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tanki Online Patches

This is a collection of tools that aim to make patching Tanki Online client binaries more convenient.

  • disasm.py: Fetches client binaries from Tanki Online servers and disassembles the specified scripts into a separate branch.
  • build.py: Builds patched client from disassembled sources.
  • build_patch.py: Builds a patch file from disassembled sources.

Tanki Online updates frequently, by using build_patch.py you can export your changes to a patch file, this allows effortless porting of these changes across updates. Once you're happy with your changes, run build.py and it will generate a patched SWF file. You can load it with the "Map Local" feature of Charles Proxy, for example.

Requirements

disasm.py makes use of additional binaries that must be present in a folder named bin.

Included patches

Patches are included in this repository that aid in reverse engineering and data mining. Summary of a notable few:

  • entrance_pcap.patch: Outputs ingoing and outgoing packets to the Flash debugger trace file.
  • entrance_pcap_air.patch: Port of the previous patch for the Adobe AIR (Steam) version of the game. The trace file will be written to %AppData%\TankiOnline\Local Store\flashlog.txt
  • entrance_dumpMaps.patch: Marks all available maps as enabled and dumps them to the trace file as JSON. Match creation details will also be dumped as JSON (BattleCreateModel). Note: The server will ignore any requests to create matches with maps that are disabled.
  • entrance_bypassMigrationDialog.patch: Stops the HTML5 migration dialog from appearing. No longer works as of 2020/12/11.
  • game_dumpMaps.patch: Must be used in conjunction with entrance_dumpMaps.patch. Dumps details about maps as they are loaded in-game to the trace file as JSON (BattleMapModel).
  • game_allBuyable.patch: Shows unobtainable items in the garage. This is a client-side only effect, they cannot actually be purchased.

About

A collection of tools that aim to make patching Tanki Online client binaries more convenient.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages