mirror of
https://github.com/Jylpah/blitz-tools.git
synced 2026-10-21 10:17:05 +02:00
5 files changed
+187
-11
No files matched your search
@@ -2,7 +2,7 @@
|
||||
Python scripts to analyze WoT Blitz replays and stats. All the scripts require [Python 3.7](https://www.python.org/downloads/) or higher. I am using 3.8 myself so you may have to change the Python interpreter version in the scripts' first line.
|
||||
|
||||
### Replays
|
||||
* [upload_wotb_replays.py](wotbreplay_uploader.py): An asynchronous replay uploader.
|
||||
* [upload_wotb_replays.py](upload_wotb_replays.py): An asynchronous replay uploader.
|
||||
* [analyze_wotb_replays.py](analyze_wotb_replays.py): A tool to calculate statistics of a set of replays. Upload the replays first with [upload_wotb_replays.py](upload_wotb_replays.py) and then calculate the statistics.
|
||||
|
||||
### Tank data
|
||||
@@ -27,8 +27,11 @@ Python scripts to analyze WoT Blitz replays and stats. All the scripts require [
|
||||
python3.8 -m pip install motor aiohttp aioconsole aiofiles aiosqlite beautifulsoup4 lxml xmltodict progress
|
||||
```
|
||||
|
||||
4. Upload your replays. Run _python.exe .\wotbreplay_uploader.py --help_ (Windows) or _./wotbreplay_uploader.py --help_ (Linux)
|
||||
5. Analyze replays. Run _python.exe .\analyzeReplays.py --help_ (Windows) or _./analyzeReplays.py --help_ (Linux)
|
||||
4. Upload your replays. Run _python.exe .\upload_wotb_replays.py --help_ (Windows) or _./upload_wotb_replays.py --help_ (Linux)
|
||||
5. Analyze replays. Run _python.exe .\analyze_wotb_replays.py --help_ (Windows) or _./analyze_wotb_replays.py --help_ (Linux)
|
||||
|
||||
### Blitz releases
|
||||
|
||||
[WoT Blitz releases](releases.md): launch dates and key content.
|
||||
|
||||
You can reach me via email: Jylpah@gmail.com or [Discord](https://discordapp.com/): Jylpah#4662. Happy tanking and stats analysis!
|
||||
+12
-3
@@ -2,12 +2,14 @@
|
||||
|
||||
# Extract tankopedia data in WG API JSON format from Blitz app files (Android APK unzipped)
|
||||
|
||||
import sys, argparse, json, os, inspect, aiohttp, asyncio, aiofiles, re, logging, time, xmltodict, collections
|
||||
import sys, argparse, json, os, inspect, aiohttp, asyncio, aiofiles, re, logging, time, xmltodict, collections, configparser
|
||||
import blitzutils as bu
|
||||
from blitzutils import WG
|
||||
|
||||
logging.getLogger("asyncio").setLevel(logging.DEBUG)
|
||||
|
||||
FILE_CONFIG = 'blitzstats.ini'
|
||||
|
||||
BLITZAPP_STRINGS='/assets/Data/Strings/en.yaml'
|
||||
BLITZAPP_VEHICLES_DIR='/assets/Data/XML/item_defs/vehicles/'
|
||||
BLITZAPP_VEHICLE_FILE='/list.xml'
|
||||
@@ -19,9 +21,16 @@ async def main(argv):
|
||||
global wg
|
||||
# set the directory for the script
|
||||
os.chdir(os.path.dirname(sys.argv[0]))
|
||||
|
||||
|
||||
## Read config
|
||||
config = configparser.ConfigParser()
|
||||
config.read(FILE_CONFIG)
|
||||
|
||||
configOptions = config['EXTRACT_TANKOPEDIA']
|
||||
BLITZAPP_FOLDER = configOptions.get('blitz_app_dir', '.')
|
||||
|
||||
parser = argparse.ArgumentParser(description='Extract Tankopedia data from Blitz game files')
|
||||
parser.add_argument('blitz_app_base', type=str, metavar="BLITZAPP_FOLDER", default=".", help='Base dir of the Blitz App files')
|
||||
parser.add_argument('blitz_app_base', type=str, nargs='?', metavar="BLITZAPP_FOLDER", default=BLITZAPP_FOLDER, help='Base dir of the Blitz App files')
|
||||
parser.add_argument('tanks', type=str, default='tanks.json', nargs='?', metavar="TANKS_FILE", help='File to write Tankopedia')
|
||||
parser.add_argument('maps', type=str, default='maps.json', nargs='?', metavar='MAPS_FILE', help='File to write map names')
|
||||
arggroup = parser.add_mutually_exclusive_group()
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
"malinovka": "Winter Malinovka",
|
||||
"medvedkovo": "Dead Rail",
|
||||
"milbase": "Yamato Harbor",
|
||||
"moon": "Sea of Tranquility",
|
||||
"mountain": "Black Goldville",
|
||||
"neptune": "Normandy",
|
||||
"north": "North",
|
||||
|
||||
+73
@@ -0,0 +1,73 @@
|
||||
# WoT Blitz releases
|
||||
|
||||
| Release | Date | Notes | Inaccurate? |
|
||||
|:-------:|:--------:|-------------|-----|
|
||||
| 6.10 | 2020-04-29 | T92E1 nerf, Tier V-IX heavy HP buff, Battle Pass, map fixes | |
|
||||
| 6.9 | 2020-03-25 | Japanese TDs, Tier X heavy HP buff | |
|
||||
| 6.8 | 2020-02-19 | ATGM nerf, Hellas map | |
|
||||
| 6.7 | 2020-01-15 | ATGM US Lights | |
|
||||
| 6.6 | 2019-12-18 | T-62A + Leo buffs | |
|
||||
| 6.5 | 2019-11-21 | New UI | |
|
||||
| 6.4 | 2019-10-16 | Halloween map, mid-tier HT buff... | |
|
||||
| 6.3 | 2019-09-18 | European line | |
|
||||
| 6.2 | 2019-08-14 | New MM | |
|
||||
| 6.1 | 2019-07-10 | Autoloader buff | |
|
||||
| 6.0 | 2019-06-05 | UK TD line #2 | |
|
||||
| 5.10 | 2019-04-24 | new missions | |
|
||||
| 5.9 | 2019-03-27 | New shell tracers, minor fixes | |
|
||||
| 5.8 | 2019-02-21 | Chinese TD line | |
|
||||
| 5.7 | 2019-01-16 | Avatars | |
|
||||
| 5.6 | 2018-12-05 | Normandy map | |
|
||||
| 5.5 | 2018-11-13 | Low-tier clean-up | |
|
||||
| 5.4 | 2018-10-10 | MM "rigging" adjusted | |
|
||||
| 5.3 | 2018-09-12 | MM "rigging" started, Newbie queue added | |
|
||||
| 5.2 | 2018-08-22 | Faust map | |
|
||||
| 5.1 | 2018-07-31 | New MM: vehicle class matching | |
|
||||
| 5.0 | 2018-06-30 | Vineyeards map update, Spare Parts killed | |
|
||||
| 4.10 | 2018-05-24 | Alpenstadt map | |
|
||||
| 4.9 | 2018-04-25 | Chinese heavy tanks | |
|
||||
| 4.8 | 2018-03-28 | Choice of battle modes, crew skills accelerator | |
|
||||
| 4.7 | 2018-02-28 | New minimap | |
|
||||
| 4.6 | 2018-01-31 | Chinese nation | |
|
||||
| 4.5 | 2017-12-19 | Dynasty's Pearl map | |
|
||||
| 4.4 | 2017-11-09 | New British tanks | |
|
||||
| 4.3 | 2017-10-10 | Level 7 screw skills | |
|
||||
| 4.2 | 2017-09-12 | French LTs, Naval Frontier map | |
|
||||
| 4.1 | 2017-08-16 | New markers | |
|
||||
| 4.0 | 2017-07-13 | Rating battles | Y |
|
||||
| 3.10 | 2017-06-15 | Fixes | Y |
|
||||
| 3.9 | 2017-05-19 | Military Honor, Mayan Ruins | Y |
|
||||
| 3.8 | 2017-04-24 | Spare Parts, New 9-slot Equipment system | Y |
|
||||
| 3.7 | 2017-03-22 | Balance changes, Tournaments | Y |
|
||||
| 3.6 | 2017-02-16 | Vehicle Enrichment | Y |
|
||||
| 3.5 | 2017-01-13 | Boosters, Dead rail update | Y |
|
||||
| 3.4 | 2016-11-28 | Canyon map, USA T57 line | |
|
||||
| 3.3 | 2016-11-01 | Updated Mines map | |
|
||||
| 3.2 | 2016-10-04 | Copperfield update | |
|
||||
| 3.1 | 2016-09-03 | Clan tournaments, Yamato Harbor map | Y |
|
||||
| 3.0 | 2016-07-20 | Supremacy mode, Falls Creek update | Y |
|
||||
| 2.11 | 2016-06-28 | Vineyeards map, Oasis Palms update, German paper TDs | |
|
||||
| 2.10 | 2016-06-07 | Rockfield map update, Tank birthdays, high-pen gun for IS-6 | |
|
||||
| 2.9 | 2016-05-03 | Training rooms, +/-1 Matchmaker | Y |
|
||||
| 2.8 | 2016-04-04 | New Russian TD line, new consumables system | Y |
|
||||
| 2.7 | 2016-03-07 | Mirage map | Y |
|
||||
| 2.6 | 2016-02-10 | German LTs, shooting through obstacles | Y |
|
||||
| 2.5 | 2016-01-11 | Camouflages, Clan supply | Y |
|
||||
| 2.4 | 2015-12-09 | Additional Japanese tanks, windows version | Y |
|
||||
| 2.3 | 2015-11-12 | Canal map | Y |
|
||||
| 2.2 | 2015-10-05 | Desert Sands map update | Y |
|
||||
| 2.1 | 2015-09-07 | UK TDs, Clan Chat | Y |
|
||||
| 2.0 | 2015-08-05 | Clans, Oasis Palms updated | |
|
||||
| 1.11 | 2015-07-13 | KV-2, KV-13, Sherman Jumbo | Y |
|
||||
| 1.10 | 2015-06-11 | Port Bay map | Y |
|
||||
| 1.9 | 2015-05-13 | New German medium tanks (Leo) | Y |
|
||||
| 1.8 | 2015-04-14 | Game tutorial, Bot map for new players | Y |
|
||||
| 1.7 | 2015-02-16 | US Turreted TDs | Y |
|
||||
| 1.6 | 2015-01-19 | Castilla map, UK HT line | Y |
|
||||
| 1.5 | 2014-12-01 | UK Nation | Y |
|
||||
| 1.4 | 2014-10-29 | German HT line (Maus) | Y |
|
||||
| 1.3 | 2014-10-02 | USSR IS-4 line, Lost Temple, Black Goldville maps | Y |
|
||||
| 1.2 | 2014-08-20 | Oasis Palms map | Y |
|
||||
| 1.1.1 | 2014-07-23 | Fixes :-) | |
|
||||
| 1.0 | 2014-06-26 | Worldwide launch | |
|
||||
| 0.9 | 2014-05-05 | Nordic soft launch | |
|
||||
+95
-5
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"status": "ok",
|
||||
"meta": {
|
||||
"count": 429
|
||||
"count": 439
|
||||
},
|
||||
"data": {
|
||||
"1": {
|
||||
@@ -872,9 +872,9 @@
|
||||
"tank_id": 3937,
|
||||
"nation": "japan",
|
||||
"tier": 10,
|
||||
"is_premium": true,
|
||||
"is_premium": false,
|
||||
"type": "AT-SPG",
|
||||
"name": "Ho-Ri Type 3"
|
||||
"name": "Ho-Ri Type III"
|
||||
},
|
||||
"3953": {
|
||||
"tank_id": 3953,
|
||||
@@ -3435,6 +3435,86 @@
|
||||
"is_premium": true,
|
||||
"type": "lightTank",
|
||||
"name": "Vickers Light 105"
|
||||
},
|
||||
"3201": {
|
||||
"tank_id": 3201,
|
||||
"nation": "european",
|
||||
"tier": 9,
|
||||
"is_premium": true,
|
||||
"type": "heavyTank",
|
||||
"name": "50TP prototyp"
|
||||
},
|
||||
"4193": {
|
||||
"tank_id": 4193,
|
||||
"nation": "japan",
|
||||
"tier": 9,
|
||||
"is_premium": false,
|
||||
"type": "AT-SPG",
|
||||
"name": "Ho-Ri Type II"
|
||||
},
|
||||
"4961": {
|
||||
"tank_id": 4961,
|
||||
"nation": "japan",
|
||||
"tier": 8,
|
||||
"is_premium": false,
|
||||
"type": "AT-SPG",
|
||||
"name": "Ho-Ri Type I"
|
||||
},
|
||||
"5217": {
|
||||
"tank_id": 5217,
|
||||
"nation": "japan",
|
||||
"tier": 7,
|
||||
"is_premium": false,
|
||||
"type": "AT-SPG",
|
||||
"name": "Chi-To SPG"
|
||||
},
|
||||
"20513": {
|
||||
"tank_id": 20513,
|
||||
"nation": "usa",
|
||||
"tier": 8,
|
||||
"is_premium": true,
|
||||
"type": "heavyTank",
|
||||
"name": "T54E2"
|
||||
},
|
||||
"20769": {
|
||||
"tank_id": 20769,
|
||||
"nation": "usa",
|
||||
"tier": 8,
|
||||
"is_premium": true,
|
||||
"type": "mediumTank",
|
||||
"name": "T25 Pilot Number 1"
|
||||
},
|
||||
"4449": {
|
||||
"tank_id": 4449,
|
||||
"nation": "japan",
|
||||
"tier": 7,
|
||||
"is_premium": true,
|
||||
"type": "heavyTank",
|
||||
"name": "IS-2 Pravda SP"
|
||||
},
|
||||
"4705": {
|
||||
"tank_id": 4705,
|
||||
"nation": "japan",
|
||||
"tier": 6,
|
||||
"is_premium": true,
|
||||
"type": "mediumTank",
|
||||
"name": "Firefly Saunders SP"
|
||||
},
|
||||
"21025": {
|
||||
"tank_id": 21025,
|
||||
"nation": "usa",
|
||||
"tier": 7,
|
||||
"is_premium": true,
|
||||
"type": "mediumTank",
|
||||
"name": "T26E3 Eagle 7"
|
||||
},
|
||||
"21249": {
|
||||
"tank_id": 21249,
|
||||
"nation": "ussr",
|
||||
"tier": 6,
|
||||
"is_premium": true,
|
||||
"type": "heavyTank",
|
||||
"name": "Thunder"
|
||||
}
|
||||
},
|
||||
"userStr": {
|
||||
@@ -3831,7 +3911,7 @@
|
||||
"It12_Prototipo_Standard_B": "Prototipo Standard B",
|
||||
"It13_Progetto_M35_mod_46": "Progetto M35 mod. 46",
|
||||
"It14_P44_Pantera": "P.44 Pantera",
|
||||
"J20_Ho_Ri_type3": "Ho-Ri Type 3",
|
||||
"J20_Ho_Ri_type3": "Ho-Ri Type III",
|
||||
"Oth16_KV_TG": "Smasher",
|
||||
"Oth17_BDT-5A": "Y5 T-34",
|
||||
"Oth18_BDT-5B": "Y5 Firefly",
|
||||
@@ -3852,6 +3932,16 @@
|
||||
"R159_SU_130PM": "SU-130PM",
|
||||
"GB91_Super_Conqueror": "Super Conqueror",
|
||||
"GB93_Caernarvon_AX": "Caernarvon Action X",
|
||||
"GB_Vickers_Light_105": "Vickers Light 105"
|
||||
"GB_Vickers_Light_105": "Vickers Light 105",
|
||||
"A111_T25_Pilot": "T25 Pilot Number 1",
|
||||
"A124_T54E2": "T54E2",
|
||||
"J21_Ho_Ri": "Ho-Ri Type II",
|
||||
"J22_Ho_Ri_type96": "Ho-Ri Type I",
|
||||
"J23_Chi_To_SPG": "Chi-To SPG",
|
||||
"Pl08_50TP_prot": "50TP prototyp",
|
||||
"A121_T26E3": "T26E3 Eagle 7",
|
||||
"Firefly_GuP": "Firefly Saunders SP",
|
||||
"IS-2_GuP": "IS-2 Pravda SP",
|
||||
"KV-1s-BP": "Thunder"
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user