holy-heck-i-really-like-stats/README.md
2023-04-27 10:41:28 +10:00

1.3 KiB

Holy Heck I Really Like Stats

Pokemon Showdown data processing, mostly for HHIRLLL's Pokemon league. Ugly as fuck.

Also includes a bot to automate replay ingestion and provide misc utilities.

Requirements

  • Python with sqlite
  • requests

Usage

$ ./index.py -h
usage: hhirlstats [-h] [-v] [-C] [-t FILE] [-o FILE] replay [replay ...]

extracts stats from a Showdown replay

positional arguments:
  replay                replay ID or URL

options:
  -h, --help            show this help message and exit
  -v, --verbose         add debugging info (default: None)
  -C, --no-cache        fetch replays instead of using cache (default: False)
  -t FILE, --teams FILE
                        JSON file defining players to teams (default: teams.json)
  -o FILE, --output FILE
                        output data file (default: data.db)

Replay files are cached after they're downloaded for the first time save issuing requests to Showdown on every new run.

Run the program once with all your replays (or once for each replay), then run whatever SQL queries against the data file (default data.db) you want.

Future work

  • include timestamps in logs to correlate KOs with the mon that KOed
  • calculate gametime based on active turns rather than moves used
    • also solves the issue where paralyzed/confused turns are not counted
  • use asyncio in bot