Author Topic: Announcing - AHStats application - Get your whole AH History!  (Read 3005 times)

Online steely07

  • Silver Member
  • ****
  • Posts: 1967
AHStats — your main-arena career, without the copy-paste

All credit to Spatula for the orig idea, this app is all new code, but Spatula was the inspiration!

It scrapes your pilot and squad info from the HiTech stats site into a local database and gives you a career summary, per-tour breakdowns, a kills-by-plane matrix, squad rosters and arena leaderboards — with charts, and CSV/HTML export if you want to take it elsewhere.

Only one full career is loaded in it so far, which is mine, so every demo number below is me — warts included. Consider it a worked example rather than a brag:

212 tours, April 2001 to June 2026. 2,786 hours in the air — 116 days of my life, apparently.

Hurricane Mk IIC: 1,290 kills. More than a third of everything the per-plane pages tracked, and nearly 8× the next type. I also died in it 962 times, so it earned its keep.

Ship gunners have killed me 216 times. I have killed a ship gunner zero times. The app will tell you this in a nice sortable grid, in case you enjoy watching a man confront himself.

The P-51D and I are dead even — 153 to 156 — after twenty-five years. Some things just don't resolve.

The point isn't my flak problem, it's that once your own career's in there, all of this is a click. Best tour, best rank, which plane actually earns its slot, who keeps killing you — it's all queryable.

One caveat: the per-plane matrix covers 3,624 of my 6,595 career kills, because those pages only exist for tours where HTC published them. The career totals are complete; the per-plane view is as complete as the source allows, and the app says so rather than pretending.

Get it: AHStats.exe from the releases page, no Python needed. Defender may flag it as a false positive on first run — that's the usual PyInstaller single-exe heuristic, not the app doing anything; restore it from quarantine, or build from source yourself, the code's all in the repo.

Getting it running

1. Download. Grab AHStats.exe from the releases page. That's the whole thing — no Python, no installer, no dependencies. Put it wherever you like and double-click it.

Defender may flag it as a false positive on first run. That's the usual PyInstaller single-exe heuristic, not the app doing anything; restore it from quarantine, or build from source yourself — the code's all in the repo. It keeps its database and log in %LOCALAPPDATA%\AHStats, so it won't scatter files where you put the exe.

2. First sync. Type your in-game ID in the Pilot/Squad ID box, click the arena you actually fly (Melee for most people), leave Sync Mode on Full History, and hit Sync Full History.

Then go and do something else. It's pulling every tour that arena has ever had — In my case 226 of them for Melee — and it deliberately waits 3 seconds between requests so it isn't hammering HTC's server for a hobby project. Expect 15 to 35 minutes for a long career, less if you started recently. The progress bar tells you where it's up to, Stop quits cleanly, and if you close the app mid-sync it offers to resume from where it stopped next time you open it.

You only ever do that once. After the first run it fetches just the new tour, which takes seconds.

3. Look at it. The tabs are populated from that point on: Career Summary for the lifetime totals, Tour Detail for one tour, Tour History for all of them in one grid, Kills by Plane for the matrix. Every grid sorts on a left-click and filters on a right-click, and exports to CSV or HTML if you want it elsewhere.

For a squad, flip the pilot/squad toggle and put the squad name in the same box. For someone else's squad roster, the Squad tab takes any player name and any tour.

https://github.com/steelington/AHStats













Aces High, Wing Commander, Dickweed Heavy Bomber Group: www.dickweedhbg.com

FSO Films : https://www.youtube.com/channel/UCFs6CAXBQoVBctljybD65fA?view_as=subscriber

Online The Fugitive

  • Plutonium Member
  • *******
  • Posts: 19202
      • Fugi's Aces Help
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #1 on: July 25, 2026, 08:06:33 PM »
Was having fun with this before I left for vacation.  Awesome job!

Did you get it to work with multiple IDs over a career?

Online steely07

  • Silver Member
  • ****
  • Posts: 1967
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #2 on: July 25, 2026, 08:14:35 PM »
Yep, you can, it's the Career View row, just under the Pilot/Squad ID box. The feature is called identity groups.

How to set one up:

1. Sync each name separately first. Syncing always hits literal game IDs, so put each old handle in the Pilot/Squad ID box and run Sync Full History for each one in turn. The group is a view over data you've already got, not a way to fetch it.
2. Click Manage Groups... next to Career View.
3. Give it a Group Name (the placeholder suggests MyTotals) and list the Game IDs comma-separated — MDJOE, Fugitive. It needs at least two, or it won't save.
4. Save, then close.
5. Pick the group from the Career View dropdown. Career Summary, Tour History, Kills by Plane and Graphs now sum every ID in the group as one career, and the status line marks it [group: MyTotals] so you can tell what you're looking at.

To edit one later, reopen the dialog and choose it from the Existing group dropdown — it loads the name and IDs back into the fields for you to re-save. Delete Selected removes it.

Three things worth knowing:

- Groups are per type. A pilot group only appears while the pilot/squad toggle is on pilot. Flip to squad and it vanishes — that's by design, not a bug.
- The ID box still drives syncing. With a group active, an empty ID box makes Sync fall back to syncing every member in turn, which is usually what you want when a new tour lands. If the box has a name in it, that name is what gets synced.
- Exports don't follow the group. Export Tours CSV, Export Plane Kills CSV and Export HTML Report all read the ID box directly, so they give you the single ID, not the summed career, the grids merge, the exports don't yet.
Aces High, Wing Commander, Dickweed Heavy Bomber Group: www.dickweedhbg.com

FSO Films : https://www.youtube.com/channel/UCFs6CAXBQoVBctljybD65fA?view_as=subscriber

Online The Fugitive

  • Plutonium Member
  • *******
  • Posts: 19202
      • Fugi's Aces Help
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #3 on: July 25, 2026, 09:16:44 PM »
Awesome! Can't wait to mess with it when I get home.

Thanks for all the work on this!

Offline caldera

  • Platinum Member
  • ******
  • Posts: 6735
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #4 on: July 25, 2026, 09:19:54 PM »
 :x :x :x :x :x :x :x :x :x :x

Looks awesome!
Snuggie - voted "Sexiest Man Alive" for the entire Greater East Asia Co-Prosperity Sphere!

Online Shane

  • Plutonium Member
  • *******
  • Posts: 8474
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #5 on: July 30, 2026, 11:56:09 AM »
Yep, you can, it's the Career View row, just under the Pilot/Squad ID box. The feature is called identity groups.

Looks awesome!   :aok  :salute

I'll be using it soon.  I manually downloaded my stats way back for a big chunk of my early career... curious how it's changed since my return, plus picking up other arenas; I played a lot of CT & AvA and those stats still exist, but stats are not enabled in the new AvA arena.
Surrounded by suck and underwhelmed with mediocrity.
I'm always right, it just takes some poepl longer to come to that realization than others.
I'm not perfect, but I am closer to it than you are.
"...vox populi, vox dei..."  ~Alcuin ca. 798
Truth doesn't need exaggeration.

Online Dadtallica

  • Gold Member
  • *****
  • Posts: 2567
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #6 on: August 02, 2026, 08:37:30 PM »
This is super awesome! However, I am not sure how to use it l :old:. Can you walk am old fart through it? I see a folder tree with lots of clicks lol. Did I miss the instructions?
October Player Poll Results

Back in 2022 after a loooooong break from 2010. Old name Ratpack, same for the BBS. Old squads, Excaliburs, 172nd Rabid Dawgs.

Online The Fugitive

  • Plutonium Member
  • *******
  • Posts: 19202
      • Fugi's Aces Help
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #7 on: August 02, 2026, 09:45:32 PM »
This is super awesome! However, I am not sure how to use it l :old:. Can you walk am old fart through it? I see a folder tree with lots of clicks lol. Did I miss the instructions?

Click this  link..... https://github.com/steelington/AHStats/releases/download/v1.0.4/AHStats.exe

It will download an exe file. Save it to a harddrive

Using the file manager right click the exe file and click "show more" then click "create desktop icon".

Grab and drop the new icon to the desktop.

Double clicking the icon opens the app.

Once open, type your name in the top box, select the arena you want to info from, then click the "sync history" button. A pop up should tell you about how long it will take to gather the info, click ok and wait.

Once its done downloading the data you can use the buttons to view the data in the big box.

Refreshing the download isnt as long each time because the app remembers the old data downloads and so it only searches for the recent ones that have not been down loaded.

I have found an issue with it when combining multiple names for a single player, but other than that it is fun checking the data out.

Offline Lusche

  • Radioactive Member
  • *******
  • Posts: 24060
      • Last.FM Profile
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #8 on: August 03, 2026, 11:52:39 AM »
I can not get any MA data before Tour 93, it says only 227 tours are available- "Fetch Tours" doesn't get any results prior Tour 93.
Would also be nice if you could manually enter a range for downloading data in addition to download all tours or specifically selecting a single one from drop down list (cumbersome).

Edit: I can download earlier Late War MA tours by selecting "All", but of course this also makes the tool trying to download lots of tour data from Arenas "Lusche" never flew in. Also, MA data earlier than tour 93 is missing from Career Stats if you select MA only.
« Last Edit: August 03, 2026, 01:53:31 PM by Lusche »
Steam: DrKalv
E:D Snailman

Offline Lusche

  • Radioactive Member
  • *******
  • Posts: 24060
      • Last.FM Profile
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #9 on: August 03, 2026, 02:30:04 PM »
Also, Groups seem to be limited to 10 Id entries, So I can't get my total career stats shown  :old:
Steam: DrKalv
E:D Snailman

Online steely07

  • Silver Member
  • ****
  • Posts: 1967
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #10 on: August 03, 2026, 04:41:23 PM »
Thaks Fuji for your message, and Mr Snail, great feedback also, I'll look into these issues and come up with a fix over the next couple of days, make a new version and post back here when done!

<S>!
Aces High, Wing Commander, Dickweed Heavy Bomber Group: www.dickweedhbg.com

FSO Films : https://www.youtube.com/channel/UCFs6CAXBQoVBctljybD65fA?view_as=subscriber

Online steely07

  • Silver Member
  • ****
  • Posts: 1967
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #11 on: August 03, 2026, 11:45:23 PM »
Aces High, Wing Commander, Dickweed Heavy Bomber Group: www.dickweedhbg.com

FSO Films : https://www.youtube.com/channel/UCFs6CAXBQoVBctljybD65fA?view_as=subscriber

Online steely07

  • Silver Member
  • ****
  • Posts: 1967
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #12 on: August 05, 2026, 04:22:38 PM »
Fixes

- Pre-Tour-93 Main Arena tours are visible again. Tours with unprefixed ids (Tour92 and older) were filed under an arena no picker offered, so with Melee (MA) selected nothing before Tour 93 showed up — in Career Summary, Tour History, Kills by Plane or Graphs. Only "All" reached them, and that dragged in every other arena. They now sit in Melee (MA), which is the arena that continues them (Tour 92 ends 2007-09-30, LW Tour 93 begins 2007-10-01 — one unbroken career). On a full cache that's 81 extra tours: 307 instead of 226, back to Tour 12 / 2000-12-26.
- Existing databases repair themselves on first launch of the new version — nothing to re-sync, nothing to delete.
- Listing the same game ID twice in an identity group no longer kills the save — it used to fail outright and lose the whole group. Repeats are now ignored.
- The tour picker's dropdown arrow works from a cold start. Pickers were only filled after a sync, or after changing arena/pilot, so on a fresh launch the arrow looked dead. All four pickers (Single Tour sync, Tour Detail, Squad, Arena Planes) now load from the local cache when the window opens.
- Typing a tour name actually selects that tour. Previously the box took your typing but synced whatever was selected before — on a fresh launch, always the newest tour. The box is now read at the moment you click the button. Typed text ranks the same way the list does, so "Tour 21" gets Tour 21, not Tour 210–219; text matching nothing is discarded rather than quietly syncing the wrong tour.

New

- Era column on Tour History and on Kills by Plane grouped by model — marks the pre-split tours "Main Arena" so you can tell which side of the 2007 split a tour is on.
- Tour Range sync mode, alongside Full History and Single Tour. Type a first and last tour number and sync just that stretch. Read within the selected arena; backwards entry works.
- Type-to-filter tour pickers everywhere. The old option menus were a 300-entry column with tiny scroll arrows, no scrollbar and no mouse wheel. Now type "92" and it's there; wheel and scrollbar work, Enter takes the first match.
- Identity group editor shows every ID at once — multi-line box, one ID per line (commas still accepted), with a live count. The old single-line box scrolled earlier names out of sight, which read as a ~10-name limit. There was never a limit.
- Sync progress that looks alive. Taller bar in its own row, plus a line underneath redrawing 4×/second: which tour of how many, percent, elapsed, and a measured estimate of time remaining. Covers full history, tour range, single tour, resumed syncs and plane backfill.
- Standing note on the Squad tab explaining that "so-and-so is not part of a squad" is HiTech's own answer for some players/tours, not an AHSTATS bug.

- Tour labels vary by era — "Tour 47", "Late War Tour 200", "Melee Tour 318" — but filtering on the number alone finds any of them.
- HiTech's own dropdown starts at Tour 12, so Tours 1–11 aren't fetchable by any version.
- Reporters credited in the changelog: The Fugitive and Lusche.
Aces High, Wing Commander, Dickweed Heavy Bomber Group: www.dickweedhbg.com

FSO Films : https://www.youtube.com/channel/UCFs6CAXBQoVBctljybD65fA?view_as=subscriber

Offline DmonSlyr

  • Platinum Member
  • ******
  • Posts: 7589
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #13 on: August 08, 2026, 09:24:52 AM »
This is cool! :x  Awesome work Steely! Can't wait to check it out.

You may want to post this to the general discussion so more people see it.

  :rock
The Damned(est. 1988)
-=Army of Muppets=-
2014 & 2018 KoTH ToC Champion

Online Shane

  • Plutonium Member
  • *******
  • Posts: 8474
Re: Announcing - AHStats application - Get your whole AH History!
« Reply #14 on: August 20, 2026, 03:51:46 PM »
Bumping because this is a nifty program.

Great work, Steely.
Surrounded by suck and underwhelmed with mediocrity.
I'm always right, it just takes some poepl longer to come to that realization than others.
I'm not perfect, but I am closer to it than you are.
"...vox populi, vox dei..."  ~Alcuin ca. 798
Truth doesn't need exaggeration.