Hacker News new | ask | show | jobs
by sambroner 2852 days ago
Seems like playing one of the best 200 players in the world is a reasonable proxy for a top tier player.

I'm unfamiliar with DOTA rules, but does anyone know if there are any limitations on the openAI team? e.g. Things like keystrokes per minute, scroll speed, etc

4 comments

Yes, as the sibling poster said, there is a 200ms reaction speed restriction on OpenAI. Also note that OpenAI is using the Dota 2 bot API (its input is not pixels, and its outputs are not mouse actions and keystrokes), so it has more precise information than the human team on things like unit coordinates and can target its actions more exactly.
This 200ms restriction seems really slow, but it isn’t. It feels extremely fast, to the point where some heroes and tactics used by humans are useless or impossible. For example, one of the humans played a hero called Axe. It was literally impossible to land one of his skills because it takes 400ms to use it. I’ve seen a lot of professional Dota but I’ve never seen Axe calls being dodged so perfectly and consistently.

If this game was balanced around AI rather than humans, this game would look very different.

200ms is a good measurement on how fast a skilled human can react with a single keypress like activating BKB or phase shift. Players like VP.Noone can be seen doing such reactionary moves even faster than 200ms. Double clicks will already take longer due to slow fingers, which would be the self eul's to avoid axe's call. The moves where eul's was used on axe or blink dagger to escape, well those require players to also move the mouse accurately, which takes even more time.

If OpenAI wishes to have human-like mechanical limitations to make things more about strategy, then they should definitely start adding some sort of action performing delays to actions based on roughly how long a skilled player would take to do them.

This made me think that on top of having a 200ms in actions perhaps the AI can use an action queue where each action will have a delay of 50 ms. This will be a good way to simulate the human latency in using fingers to send the keystrokes. So, if a the DP want to use eul, she will end up taking 200 (base latency) + 50 (first click) + 50 (2nd click) = 300 ms. Still would be able to dodge but now it is much more competitive.
The consistency is definitely a factor, but even in just the top 80th percentile it's quite common to happen.
These were the limitations for the previous OpenAI game:

- Random Draft using a pool of 18 heroes (Crystal Maiden, Death Prophet, Earthshaker, Gyrocopter, Lich, Lion, Necrophos, Queen of Pain, Razor, Riki, Shadow Fiend, Slark, Sniper, Sven, Tidehunter, Viper, or Witch Doctor)

- No summons/illusions

- 5 invulnerable couriers, no exploiting them by scouting or tanking

- No Scan

Not sure if this match has the same limitations, but all heroes in the current game but one (Axe) are in list above, so maybe they added a few new heroes to the allowed pool.

They didn't have the invincible carriers and had more heros this time around.
> had more heros this time around

They had a fixed draft from the above pool with 1 new hero:

Crystal Maiden, Death Prophet, Tidehunter, Gyrocopter and Lich

vs

Lion, Necrophos, Sniper, Witch Doctor and Axe (the new one).

One thing to note is that there is a significant difference between five top-200 players and a team composed of the same, in terms of coordination and familiarity with playstyle.
During the last OpenAI showmatch the bots had an artificial 200ms reaction time imposed on them, I assume it's the same here but I'm not sure.
Thanks.
I don't believe this is the case, as OpenAI was able to hex (an immediate disable) Earthshaker before he got off Echoslam (a spell with no cast delay except the time to click the key).
The ES player didn't queue his abilities so there was delay between blinking and casting echo. Someone counted the frames and it was well over the 200ms minimum.
Here is a post from the Dota 2 subreddit discussing the timing with proof that OpenAI's reaction was over the 200ms minimum:

https://www.reddit.com/r/DotA2/comments/94vdpm/openai_hex_wa...

Yeah. I agree. It was over the 200ms minimum but it was artificial. No human could reasonably perform that type of action as relilably. And that has nothing to do with learning performance.
You can queue abilities to instantly cast them after the previous one finishes, so it is actually quite reasonable for a human to perform that type of action quite reliably.
Did he blink in? Is there a delay there?
There's no delay, but when people looked at the replay, Earth Shaker was actually visible when he thought he wasn't. The AI that disabled him had precast his spell on the out of range Earth Shaker, so when Earth Shaker blinked in to range, the precast spell went off in the following server tick.
That's not what happened. The 200ms delay worked as intended. The reddit thread counting the frames can be seen here: https://www.reddit.com/r/DotA2/comments/94vdpm/openai_hex_wa...
That makes sense, thanks.