Overwatch 2 Random Hero Picker | FLANK.GG
Click the Roll button on our Overwatch 2 Random Hero Picker to generate a random hero selection. You can select/deselect roles by clicking on any role: Support, Damage, and Tank. You can also select/deselect heroes by clicking on them. Instant Roll also chooses a random hero, but it does so instantly without animations.
About This Random Overwatch 2 Hero Generator
This Random Overwatch 2 Hero Generator chooses a character randomly from the heroes you select. All Overwatch 2 heroes are selected by default, but you can select/deselect them by clicking on them. You can also select/deselect entire roles by clicking on the Support, Damage, and Tank buttons.
The Roll and Instant Roll buttons both randomly choose a hero from the selected characters. The normal Roll shows an animation before revealing which character was picked, while Instant Roll immediately shows the random hero.
After a character is chosen, you can see their abilities below the generator.
Overwatch Heroes and Roles
Our Overwatch 2 hero randomizer includes the following 41 characters grouped into the 3 Overwatch roles Support, Damage, and Tank:
Support
Ana, Baptiste, Brigitte, Illari, Juno, Kiriko, Lifeweaver, Lúcio, Mercy, Moira, and Zenyatta
Damage
Ashe, Bastion, Cassidy, Echo, Genji, Hanzo, Junkrat, Mei, Pharah, Reaper, Sojourn, Soldier: 76, Sombra, Symmetra, Torbjörn, Tracer, Venture, and Widowmaker
Tank
Doomfist, D.Va, Junker Queen, Mauga, Orisa, Ramattra, Reinhardt, Roadhog, Sigma, Winston, Wrecking Ball, and Zarya
If you want to know which characters are good in the current meta, check out our Overwatch 2 Tier List.
How We Randomize Your Overwatch 2 Character Pick
Our Overwatch 2 hero randomizer uses Javascript's Math.random() function to generate a pseudo-random number greater or equal to 0 and less than 1. We then multiply this random number by the number of heroes you've selected to scale it. Finally, we use Javascript's Math.floor() function to round this number to the largest integer that's less than or equal to it.
randomNumber = Math.floor( Math.random() * numberOfSelectedHeroes )
Every selected hero is stored in a Javascript array with an index from 0 to the number of selected characters minus 1. The randomly selected hero is the hero indexed at the random number we generated.
This should be sufficiently random for common use cases of this tool.
When using the Roll button (rather than Instant Roll), we also randomly generate a number between a range of numbers to determine how many characters to cycle through before revealing your pick. This does not affect the outcome of the roll. It's simply used to create the roulette/slots like animation.
Other Random Pickers
Check out our other random pickers: