Easy to use Offensive Power Rankings (OPR) program for mid-regional scouting


Using v3 worked for me earlier, but I now have a new problem. Running

OPRNet.exe kc 2009 opr
downloads the match data, but fails when parsing with the error:

No matches found. This regional may not have run yet, or may have HTML output that the parser does not recognize.
Failure to parse XML. Code: -2147467259

I’ve attached temp.tmp

Thank you,

Hmmm… the temp.tmp (which is simply the match results HTML page) simply doesn’t have any match data. If you look at the KC results page, you can see that the qualifying matches are no longer up. This looks like a FIRST problem.

Thanks for the bug report though!

I’m currently “evaluating” this app for it’s effectiveness with some very positive findings. The one thing that I would really like to do is to “export” the output into an Excel spreadsheet for ease of viewing offline. If I am not mistaken, the results are only sent to the screen. Is there a way to have them go to a “.csv” file, or some other format that can easily be opened in Excel?

In a command line:

oprnet (regional code) (year) (stat) > blah.csv

This uses the DOS redirect operator to send it to a text file. The stats are are tab-seperated so that you should be able to copy/paste it into excel and have all the cells line up properly.

Yep, that’ll do it!! (Good ol’ DOS, it still has some life left in it :wink: )

By the way. I am currently running this on a Vista x64, quad core system with 8GB of ram. It absolutely rips! No mods were needed what so ever to get this running. THX!!

Well, it’s only solving a TeamCount x TeamCount matrix. Crazier stuff I’ve done in the past was post-season analysis involving every single team (1300x1300 matrix, or so), and that ends up taking a long time.

Also, v4 is done.

-DPR is now called SAA for ‘scores against average’ to make its name more line up with its values
-You can now choose to sort by team. Command-line looks like this:

oprnet il 2009 opr t

. If you don’t want to sort by team, just put an ‘r’ there, or leave the parameter off entirely.
-Command-line users can now append a ‘q’ to completely suppress all non-error messages. For example, this:

oprnet il 2009 opr r q

will only print out the OPR values (or errors if there were any)
-Sorting for SAA/DPR is now reversed, so that the ‘best’ values come first.

OPRNet - v4.zip (21.3 KB)
OprDpr Source v4.zip (8.71 KB)

OPRNet - v4.zip (21.3 KB)
OprDpr Source v4.zip (8.71 KB)

This just keeps getting better and better.

It looks like the SAA/DPR still sorts with the highest number on top (which ismost points scored against, right?)

I’m running on a mac, is there any way that someone could run the app with the numbers from this week’s regionals, export to Excel, and post the results on CD? I loved the OPR last year and it was very useful IMO. Thanks Bongle for making it even better this year!

Match results seem to have disappeared for a number of events. I’ll try and remember to check over the next few days and do this when the results reappear.

Here are OPR for the events that do have match results posted; a zip file of Team, OPR, SAA, and +/- (tab delimited for easy excel import).

each event is a separate text file.

I wrote a script that will generate these txt files on the fly in autohotkey. I can post (more or less uncommented) code if anyone wants.

This was made using v4 of OPRNet (yay for the new ‘quiet’ feature.)

DC IL NJ OK OPRdata.zip (3.76 KB)

DC IL NJ OK OPRdata.zip (3.76 KB)

High DPR can also mean that a robot purposely scored on his own alliance trailers to increase RS (ranking score) or to prevent a G14 violation.

I can tell you that we did this in 4 of our 7 Q-matches. And it got us the highest RS of all the 2 loss teams and allowed us to be seeded 4th. Without this strategy we would not have gotten to pick 1625 and and probably not have won the regional.

In one case we stopped scoring for ourselves with 30 seconds to go and scored about 40 points for the other alliance. So that also lowered our OPR a little bit. I think many the good veteran teams did this to some extent.

Good points. I can’t edit the first post anymore or else I’d add that.

I guess this is up to v5 now. The only difference of any substance is the new prediction feature. Basically, this uses the OPRs computed so far to predict the remaining matches at a regional, and prints out the simulated rankings afterwards. If all the matches have been played, it does a self-analysis to see how accurate it would have been. Based on this, I can say that it is about 65-70% accurate when predicting after 40-50 matches, though this seems to depend heavily on the regional. It is much better at predicting GTR 2008 (80%) than it is predicting DC 2009 (55-60). Still, it is generally a good bit better than a coinflip.

Command-line is:

oprnet <regional> <year> predict <sort style> <quiet flag>

oprnet il 2009 predict t q
oprnet dc 2009 predict t
oprnet oh 2009 predict
oprnet on 2008 predict (this has pretty cool results)

The main problem with predicting match results is that robots evolve quite a bit over the course of a regional. Some break, some get fixed, some get improved tactics or mechanical parts. Without actual ‘on-the-ground’ knowledge of what is going on with individual robots, any purely mathematical model is going to fail. Getting 65-70% of guesses right isn’t bad. But still, the ‘predict’ feature is an entertainment-only kind of feature.

OPRNet - v5.zip (24.7 KB)

OPRNet - v5.zip (24.7 KB)

I just tested this method with v.5. I needed to save it as a .txt file for Excel to open it correctly. No big deal.
I also noted that Excel sorted it backward. In other words, the highest ranked team was listed last.Again, this is no big deal and can easily be dealt with.
I’ll test more to see if I can get Excel to import it in reverse sort order.

Oh sorry, I forgot to fix that. I knew there was something requested…

Any OPR listing for BAE regional?

Nope, because the qualification matches have mysteriously disappeared.

And Buckeye hasn’t been updated yet, it’s only got a few of the elimination matches in there and they don’t even have the cities the teams are from for the awards yet.

Any chase you can have it run a full report, something like:

il 2009 opr saa pm t > blah.csv

That way you can bring all the data in to Excel at once instead of running it multiple times.


I’ll add an “all” option tonight.