Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/drmboga/wotblitzstatisticspro
Detailed player, tank statistics and history for World of Tanks: Blitz
https://github.com/drmboga/wotblitzstatisticspro
Last synced: about 2 months ago
JSON representation
Detailed player, tank statistics and history for World of Tanks: Blitz
- Host: GitHub
- URL: https://github.com/drmboga/wotblitzstatisticspro
- Owner: DrMboga
- License: mit
- Created: 2022-11-13T20:28:54.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-19T12:39:36.000Z (3 months ago)
- Last Synced: 2024-11-19T13:40:55.173Z (3 months ago)
- Language: C#
- Size: 135 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WotBlitzStatisticsPro
Detailed player & tank statistics and history for [World of Tanks: Blitz](https://wotblitz.com/)
![Player](readme.media/WotStats0.png)
![VehiclesList](readme.media/WotStats1.png)
![E100](readme.media/WotStats2.png)
![VehiclesTree](readme.media/WotStats3.png)- A Blazor WebAssembly application
- Uses [Wargaming API Service](https://developers.wargaming.net/documentation/guide/getting-started/) for gathering players statistics
- Stores statistics snapshots in local database
- Allows to view players, their tanks and achievements statistics, and how it was change in timeThis project uses [SqliteWasmHelper](https://github.com/JeremyLikness/SqliteWasmHelper) by Jeremy Likness. But not as a nuget package. I have cloned the original library and bumped it up to .net 7 manually, because on 05.01.2023 the [pull request](https://github.com/JeremyLikness/SqliteWasmHelper/pull/7) still not merged.
## Run as docker container
```bash
docker build -t wotblitzstatisticspro .
docker run -dp 8840:80 --env WG_APP_ID=AppIdFromEnv wotblitzstatisticspro
```## SQLite check
Run the application and use F12 to open developer tools.
1. Check db name: Open the Application tab, Cache/CacheStorage/SqliteWasmHelper
2. Navigate to the Console tab.:
```js
const cache = await caches.open('SqliteWasmHelper');
const resp = await cache.match('/data/cache/wotblitzstatisticspro.sqlite3'); // Path from step 1
const blob = await resp.blob();
URL.createObjectURL(blob);
```## Update static tanks info
1. Get cached database and open it with [sqlitestudio](https://sqlitestudio.pl/)
2. Run query```sql
SELECT s.TankId, MAX(s.LastBattleTime) LastBattleTime, MAX(s.Battles) Battles, MAX(s.WinRate) WinRate
FROM PlayerTankSessions s
LEFT JOIN VehiclesDictionary v ON s.TankId = v.TankId
WHERE v.TankID is NULL
GROUP BY s.TankId
ORDER BY MAX(s.LastBattleTime) DESC
--
SELECT DISTINCT Type
FROM VehiclesDictionary
--
SELECT DISTINCT Nation
FROM VehiclesDictionary
```3. Find info about each tankId and add it to the `wwwroot/missed-tanks.json`