The Neverdrains Universe

So I’ve been working on a side project for a while now and I think version 1.0 is ready for a try. @kdeangelo was nice enough to share with me all the SQL databases from all the tournaments his software has hosted over the past 5+ years. From this raw data, I was able to “reconstitute” many of the tournaments and build a large group of static HTML pages with lots of links to tie them all together. Starting at the main page, you can visit the final standings for 167 different tournaments. There are also 500+ Player Pages where you can visit all the tournaments a particular player has played in. Cool.

A few notes on this first iteration:

  1. All the tournaments presented so far are HERB-style qualifying. There are a few dozen other Neverdrain tournaments that I have that use PAPA Ticket-style qualifying (including INDISC 2018 and 2019…), but those are trickier to reconstitute, so I haven’t included them yet.

  2. I’m not a web guy by any stretch of the imagination, so my HTML ability is rudimentary at best. If someone has better web skills and wants to come up with a nicer overall look and feel to present all this information, let’s talk.

  3. Some tournaments have different divisions within a single tournament, so that, for instance they would take the top 24 in Open for the finals, and then the next 8 eligible for a B Division finals, or maybe a Kids Finals. However, currently I only show the cutline for the main tournament and I haven’t produced any “secondary” pages with these other sub-divisions.

  4. Everything presented are the final qualifying standings from these tournaments. Some of them also contain all of the final brackets and results, too, if the TD used Neverdrains to run the finals, so I should be able to reconstitute the final brackets, too, but I haven’t done that yet.

  5. If you think you’ve played in at least 5 of these tournaments, but don’t see a Player Page with your name, let me know and I can look into it. Unfortunately, there were LOTS of players whose name was entered differently/spelled wrong for different tournaments and I only do direct string comparisons.

  6. Same goes for game names… “Addams” vs “Addams Family” vs “The Addams Family”, etc… I would like to have game pages with the top X scores from all the tournaments, but it’s proving difficult because of all the different ways TDs entered the game names… Next update should have some popular games at least for sure.



Wonderful and Amazing. I would love to get involved in helping with this.

Some initial thoughts:

  • Figure out surrogate keys to match up machine names and ultimately try to map back to an @haugstrup -driven OPDB.
  • Similar surrogate key mapping to ultimately a IFPA number of people cross-database.
  • I love data visualization, and at some point a few years ago I wrote up a script that would data-scrape against the user-facing HTML of NeverDrains to dynamically build out a Google chart of scores within a tournament. That sort of thing would be cool to see against this data set as well looking at cross-event scores (even though I know a score in a Selfie League isn’t the same as the same machine in PAPA A-Division).

The screen below is from a MatchPlay event, but I’ve used similar code against NeverDrains.

May I ask what the Tech stack is underneath? Do you have all these things in a single MySQL database?


Nice to see the evolution of this abandoned Wiki! Current and Historical Qualifying database

1 Like

Where’s all the NWPC tournaments? Just 2016?

1 Like

@Adam this is fantastic! It’s been such a bummer to not have all this data available for older tournaments.

The Match Play Events database had at least 10 variations on “Addams Family”. I don’t know what it is about that particular machine that’s so hard to deal with :laughing:

Like Corey mentions, getting OPDB ids attached is one way to query consistently across tournaments.

@coreyhulse I’m currently reworking Best Game for the next version of Match Play. I’m trying to include more data directly in the Match Play UI. Here’s a little sneak peek of details for a single arena in a tournament:


I totally forgot about that thread, Zach, lol, but I’ve definitely been thinking about this ever since tournaments started to “disappear” from Neverdrains because of Karl’s 50 database limit. Karl can always spin them back up, but The Man has enough to do!, so I’m just trying to help him out.


Good catch, Ray. 2015 is missing because the tournament name was “2105 Northwest…” and I only went through “A” to “Z” for outputting the names (doh!), so I’ll add that one back in. Starting in 2017, you guys went to the ticket-style qualifying (Early adopters!), so 2017-1019 will turn up on my next update when I include all the PAPA-style tourneys.


This is the Internet Archive’s Wayback machine for Neverdrains tournaments. I love it!

1 Like

2016! good time, the Lefkoff and Jim came to visit :slight_smile:

1 Like

Wow one year goes by without NWPC and I already forgot the format. Classics has always been classic HERB though right?

1 Like

Yep. It looks like Classic was still HERB-Style - Not many examples where some of the tournaments are ticket-style and other ones are HERB, lol. That’s gonna be a little trickier. Thanks a lot, NWPC!


Love this! thank you Adam - I’m often looking at the DTM data off the neverdrains website.

TPF 2019 is missing also.

We also used Drains for a few events in the UK (3) but understand why you wouldn’t include that.


1 Like

Very cool! Thanks for putting this together. What happened to the 2019 O-Town Throwdown? I ran that tournament, so I know it used DTM. :slight_smile:

Minor thing, but I noticed on the player pages it doesn’t take into account whether a finish ends in a 1, 2, or 3, so you get things like “Qualified 22th”.

I look forward to exploring this data!

1 Like

There is only one YEGPIN tournament in there, should be 2016, 2017, 2018, 2019 they were all Herb Style tournaments they may have been named differently thou. Like Canadian Pinball Championships or Western Canadian Pinball Championship. Awesome work really cool to see all of these past results.

1 Like

Thanks, Megan. I’m actually a pretty anal programmer when it comes to things like this and I have separate cases for “1st” vs “2nd” vs “3rd” vs “4th”… But I didn’t think to extend that all the way out into the 20s and beyond, lol, but I will certainly fix this.

Yep. I have the databases for yegpin 2016 - 2019, but their names started with a year, so they missed out on my first pass. I will update soon, but I have them as “Edmonton Pinball and Arcade Expo 2016-2019”. Note that you went to a ticket-style qualifying for 2019, so that will show up when the other PAPA-qualifying tournaments get done next.

Thanks for the feedback, I’ll fix em as you find em.


I believe from 2015 - 2019 - It was same format pump and dump for main tournament and classics (ticket format).

We had other side tournaments that were card based thou, in 2019 like Pinball Pro and Women’s event.

1 Like

The link for PPO 2015 Main isn’t working. Possibly damaged by a flying chair?


Oh man that chair. :smiley:
The following year the chair kick / dance was on loop for an entire day on one of the monitors. It was surreal.


card style for Classic is one level up of difficulties and need to have bulletproof machines compare to modern/open.
We have kept one of each so our small tournament can provide a taste of both or the players.

1 Like

Thanks Adam. This is amazing! I was always sad when another tournament disappeared from the site.

1 Like