🎯 Dota 2 Random Hero Picker
Fair-pick randomizer for Dota 2. Strength, Agility, Intelligence, Universal.
Last updated: June 9, 2026 · By Λ
Keyboard: Space or R to roll U Undo C Clear
Session pick counts
Strength
Agility
Intelligence
Universal
By Λ · Updated June 9, 2026 · ~3 min read
Random Draft, but actually random
Dota 2 has a built-in Random Draft mode, but on most evenings my friends and I play All Pick and end up with the same three heroes between us. I built this picker for the unranked nights when we want to force ourselves out of the comfort pool. Roll for each player, lock the picks before queue, then go play. It is the closest you can get to true Single Draft without leaving All Pick.
How attribute filters help
Filtering by primary attribute is a soft way to nudge towards a team composition. If two friends roll Strength heroes and a third rolls Intelligence, you usually end up with a serviceable lineup without explicitly drafting roles. It is not a substitute for actual draft theory, but for casual nights it is enough.
This is a fan-made utility and is not affiliated with Valve. Dota 2 is a trademark of Valve Corporation. Hero names are referenced by text only for informational gameplay use.
How to Use
- Pick an attribute pill: All, Strength, Agility, Intelligence, or Universal.
- Click Roll Hero, or press Space or R.
- Watch the reel spin and lock on a hero.
- Click Undo (or press U) to revert the last roll.
- Click Reset session (or press C) to clear counters.
Key Features
- Fair-pick algorithm. Biases toward lowest-count heroes.
- Primary attribute filter. Filter by Strength, Agility, Intelligence, or Universal.
- Full 2026 roster. All current heroes, organized by attribute.
- Keyboard shortcuts. Space, R, U, C.
- Counters persist. localStorage saves counts.
- Private by design. Rolls are computed by script running on your device, and nothing about your session is sent anywhere.
What the Roll button actually does
The page feeds four hero arrays into the site's shared reel engine: 35 Strength, 33 Agility, 34 Intelligence, and 24 Universal, 126 names in total. Each roll finds the lowest session count in the active pool, keeps only the heroes tied at that count, and draws one of them at random. The reel is decoration; the winner is already decided before it spins. Counts live in localStorage under the key bqt-dota2-picks-v1, so the rotation survives a closed tab.
A worked example
Tap the Universal pill and roll four times. Say you land Marci, Techies, Io, and Snapfire: those four now sit at a count of 1, the other 20 Universal heroes sit at 0, and roll five is guaranteed to come from those 20. Marci cannot reappear until all 24 have been rolled once. On the All pill the same rule covers all 126 heroes, so repeats take roughly 25 games to become possible.
Limitations worth knowing
Counts are stored per browser, so rolls on your phone do not advance the rotation on your desktop, and clearing site data erases them. Undo steps back one roll, not a whole evening. The roster is a hand-maintained list, so newly released heroes appear only after the list ships again. All four attribute filters also share one set of counters rather than tracking separately.
Frequently asked questions
Can the same hero land twice in a row?
Not within one filter. A win lifts the hero above the pool minimum, so the engine skips it until the rest catch up. Undo, or a filter switch, can set up a repeat.
How do I start over for a new group?
Press Reset session or the C key; every counter returns to zero and the next roll treats all heroes as equally due.
Is Universal handled differently from the other pools?
No. It is a fourth list of 24 heroes; the All pill just merges the four lists into one pool.