Hacker News new | ask | show | jobs
by nevster 1630 days ago
Are there people using bots to play this? I played in one of the 100 player matches and the top players were just ridiculous.
5 comments

Yeah... I played a few rounds and after getting my butt kicked incredibly fast, (side note: I love Tetris and am the household champion in comp. games), I thought there was something fishy going on.

Yep, bots galore. A simple Google search turned up an open source bot on github[1], meaning there are probably better bots hidden within the community.

Ugh. So many online games today are ruined by cheaters.

[1] https://github.com/misterhat/tetrio-bot

Dev of the game here, its anticheat is quite sophisticated (esp. for a webgame), trying to run a bot like this at any significant speed would get you promptly automatically banned. There's not really many times this happens - rather, Quick Play just tends to have a few really good players in it. For example: all the plays on the leaderboards for the "40 LINES" and "BLITZ" modes are ensured correct and fair. They're prominent community figures, most of the time. If you're not convinced, there's a liveplay[1] of a top player playing it at their top speed.

[1] https://www.youtube.com/watch?v=MJDz4-pr9J4

This game plays so well, I really like it. I've sucked at TGM and nullpomino for years and I'm looking forward to sucking at this now. Thanks for posting the video, it can be hard to believe how good some people are at tetris.
> Yeah... I played a few rounds and after getting my butt kicked incredibly fast, (side note: I love Tetris and am the household champion in comp. games), I thought there was something fishy going on.

Being good in your household means basically nothing for an online game, especially one like Tetris. Games like this, the skill ceiling is insanely high, if you haven't seen high level play before then you're probably drastically underestimating what humans are capable of.

Other competitive game genres are like this too. Compared to 'good in my family' players for FPS games, top tier pros will basically look like they're running an aimbot. I'm big into Starcraft and the pros for that game look similarly insane when you watch from their perspective, with how fast they are at context switching.

As a decently active player in the community, it's actually really hard to make a convincing bot. there's a lot of subtle tells (timing, handling, types of setups, response to pressure) that make bots really obvious to an experienced eye.

More importantly, there's just a lot of people who are really good at Tetris. Once someone practices enough, they naturally become faster because of muscle memory, up to levels that seem superhuman to beginners[1].

In short, it's far more likely that the people you played are just players who have practiced a good amount, rather than bots that have somehow remained undetected.

[1] happy to 1v1

Nope, some of the best players in the world hang out in Quick Play, and they're simply built different.
I mean, there are bots too.

https://github.com/misterhat/tetrio-bot

There certainly are, but something like this would immediately get picked up and banned. It's hard to cheat without being blatantly obvious.
Haven’t tried multiplayer yet but there are definitely bots on the solo play leaderboard. The fastest time for getting 40 lines in blitz mode is 15 seconds. It’s not humanly possible.
You'd be surprised how deep the skill hole can go. Looks at this 20-ish seconds for 40L mode with hand cam:

https://www.youtube.com/watch?v=4OFq31lek2g

https://www.youtube.com/watch?v=MJDz4-pr9J4

https://www.youtube.com/watch?v=Azm-hbVTRJk

Huh. Seems like I may be in the wrong here. I've been watching some of the NES Tetris videos recently and they don't even go this fast so I thought it wasn't possible. I guess that's that's the different between a "sprint" and a "marathon" though?

I can barely even register the next piece at that speed, I wonder if these players are mostly just visualizing the board in their mind. Doesn't seem possible to be looking at both the upcoming piece and the playfield at this kind of speed.

NES tetris and modern tetris are VERY different games. NES tetris didn't have hard drop, hold, SRS, 7-bag randomizer, or multiple piece previews, all of which are in all modern guideline tetris games and can help you go faster. Tetr.io and Jstris go even further than guideline tetris: there's no line clear delay and you can set DAS/ARR[1] to anything you want, which lets you go even faster.

The bottleneck isn't the keyboard input. Pretty much all top players use ARR 0 and 2-step finesse[2] (or something close to it), which means you can position any piece where you want in 2 keystrokes at most, plus 1 more to hard drop it. And certain stacking styles (e.g. 6-3 stacking[3]) lend themselves well to not requiring the full 2 keystrokes pretty often, so in practice you end up with ~2.6 keys per piece instead of 3. A typical DAS for a pro player (e.g. someone like Firestorm) might be somewhere around 70ms. So if we roughly estimate 100ms average per piece (70ms to DAS, with some extra for the sometimes-needed rotation and hard drop), that would be ~10 pieces per second, which is well over the ~6.5 PPS in the record sprints.

The physical pressing of the keys also isn't really a bottleneck. Keys per second in the top sprints is ~16. I just mashed my movement/rotation keys into `time | wc -c` and got ~35 KPS after 2 beers, and I don't even have a particularly gaming-focused keyboard.

The bottleneck also isn't reaction times. Someone might trot out a hastily-googled 250ms as a typical human reaction time and claim 100ms per piece isn't possible, but good players aren't reacting to each piece as it comes -- they're using the previews (and hold) to react to the piece that's coming 4-5 steps in the future, which is closer to a second away.

It's really just about how fast you can process the upcoming queue and still stack cleanly.

[1]: https://harddrop.com/wiki/DAS [2]: https://four.lol/mid-game/finesse [3]: https://harddrop.com/forums/index.php?showtopic=2985

Wow, thank you for this very thorough response. I also had to look up SRS [0] as a key concept. Really impressive the way that all the different piece and placement combinations have been broken down in a comprehensive way.

I can see now how this becomes a much more organized and deterministic game with these changes, allowing players to plan their moves and inputs precisely so that they are barely need any visual feedback to confirm the state of the board, allowing them to queue up multiple moves in rapid succession.

Of course I’m sure it takes a lot of training and practice as well!

0: https://tetris.fandom.com/wiki/SRS

> Seems like I may be in the wrong here. I've been watching some of the NES Tetris videos recently and they don't even go this fast so I thought it wasn't possible. I guess that's that's the different between a "sprint" and a "marathon" though?

That's because the NES Tetris has considerably different mechanics. NES Tetris simply wasn't built for fast play. The DAS, piece locking, RNG rules etc. are very unforgiving, so the players are doing most of the work fighting against them instead of finding piece placements as fast as possible.

WR for 40L is 14.9 by Reset[1] last I heard. 15 is definitely humanly possible.

[1]: https://twitter.com/jstrisgame/status/1424548438096683011

Damn
no they just are really good

it’s insane how good you can get in so little time tbh

mix of muscle memory, strats and changing default settings (DAS/ARR etc) to allow you to play faster