Melee Matchup Calculator 1.1 Updates:

The calculator is functionally almost completely the same, but now allows you to decide whether or not you or your opponent want to repick counterpicks if either of you loses on them at first in a best of five set (a feature missing from the 1.0 release). An example of this would be in Marth-Fox, if Marth’s counterpicks of choice are Final Destination and Fountain of Dreams, but Final Destination is stronger for him than Fountain of Dreams, then if he loses his first game on Final Destination he would probably pick it over switching to Fountain – this means that Marth has a lower chance of 3-0’d than if he didn’t have the option of getting Final Destination twice.

The calculator now has two boolean variables, YRepick and ERepick. If both are True, then if a first counterpick is stronger than a second counterpick, it will be picked whenever it can be over the second counterpick. If YRepick is True and ERepick is False, than only your first counterpick will be repicked over your second counterpick where it can be – even if your opponents second repick is weaker than their first. If ERepick is True and Yrepick is False, than only your opponent will repick their first counterpick if it’s stronger than their second, regardless of the strength of your first or second counterpick. If either players second counterpick is stronger than their first, it will always be chosen over repicking a first counterpick.

Python Matchup Calculator 1.1 Code Dump

Melee Matchup Calculator 1.0 Introduction:

In Melee, we generally measure character matchups by determining a ratio that represents either character’s chances of winning a given game. The first problem with this method is that it’s misleading, as a set format would exacerbate matchup disparities that exist on a per-game basis. A matchup that is 60/40 between two characters for any given game is actually closer to a 65/35 in a best of 3 and a 68/32 in a best of five. After failing to find an online calculator that could demonstrate this phenomenon, I went about making one on my own.

The second issue with the “per-game” matchup-ratio is that it completely fails to represent the setting in which competitive melee takes place – best of three or five sets, with stage counter picks that drastically redefine the matchup. While originally I only meant to create a calculator that would return the win/loss ratio for a best of three and best of five set for a given matchup ratio, I figured – why not make it a better reflection of competitive melee? Why not let players make calculations where they can adjust the matchup based on stage striking and counter picking? Well, that’s exactly what this python script does.

This was designed with players using single characters throughout the set in Melee in mind, actually but works for any smash game (though differing stage ban rulesets could be problematic – I’m not aware of non-Melee games stage selection process), and there’s no reason you can’t simply enter matchup percentages for a different combination of character on a counterpick than the one you used for the starter stage.

Update: A beautiful smasher by the tag of Taerk has made a web interface for the program! Check it out here!

There are two versions of the program – the first, which lets the user change variables that correspond to matchup percentages based on striking and counter picking, and the second which is similar except instead of changing variables takes command line arguments (thanks to a helpful friend)

Matchup Calculator – Variables

The variable script, linked above, operates as such: the variables on the first 5 lines each accept a number between 0 and 1 – this represents a matchup ratio on a certain stage. “starter” represents the stage you strike to at the beginning of the set, “ECP1” represents the first stage the enemy player will counterpick if they lose, “ECP2” represents the stage they will counterpick if they lose a second time, “YCP1” represents the first stage you would counterpick if you lost, “YCP2” represents the stage you will counterpick if you lose a second time. Simply fill what your chance of winning on each of these stages (“your” chance on both your and your enemies counterpick. For example, if you’re unfavored 6-4 on every stage you would put 0.4 for every variable).

Note, however, that the calculator assumes that each player bans the opposing players strongest counterpick in a best of 3 regardless of which counterpick is stronger and that it assumes you do not replay any stages (I realize not being able to re-pick your stronger counterpick if you lose on it is a flaw – I’m working on a fix).

Matchup Calculator – Command Line Arguments

The script linked above is nearly identical to the first one, except instead of changing the variables at the top you enter the matchups in the command line – in the order of: starter, ECP1, ECP2, YCP1, YCP2.