Bot destroys Tetris (or at least plays better than an average human)

แชร์
ฝัง
  • เผยแพร่เมื่อ 2 ต.ค. 2024

ความคิดเห็น • 131

  • @DanielBerke
    @DanielBerke 3 ปีที่แล้ว +40

    As someone using Python in my PhD, the most impressive part to me is that you're doing this by taking screenshots, analysing them, and sending controls back, rather than hooking into the code of a Tetris game itself. That's frankly amazing.

  • @justingolden21
    @justingolden21 3 ปีที่แล้ว +8

    Me laughing at his pronunciation of "tetromino" : )
    Me realizing the game was developed by Russians and he's Russian: 0_0

  • @Aimlesswaves.
    @Aimlesswaves. 3 ปีที่แล้ว +14

    You have some great comments already but I would not recommend using nes tetris as a gold standard just because it is used in a tournament. The mechanical inputs differ significantly, the in game engine differs significantly, and in general it's a castrated prototype version compared to every other tetris from the past 20 years. I like competitive tetris and the nature of nes tetris is a whole different beast entirely.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +2

      Hmmm. I can't say you convinced me not to go NES, but you definately saw some doubt. Probably will try both NES and tetris.com again, and see how it goes.

    • @Aimlesswaves.
      @Aimlesswaves. 3 ปีที่แล้ว +4

      @@GamesComputersPlay I mean sure, you can try if you like. As an example though, a major part of the difficulty of nes comes from mechanical inputs. The controller isn't exactly optimal, and the game isn't as responsive as you'd like, resulting in people, "hyper tapping" or "rolling" just to get to the correct side at high speeds. A computer that could input every other frame has a huge advantage. As well, rng actually becomes a factor in older tetris compared to new. In new tetris games, besides having the ability to slide and fit in gaps via t-spin, is the grab bag mechanic. Newer tetris games give you one of every piece in a random order. Tetris.com surely implements this. This ensures no drought of I pieces, and ensures consistency with a larger variety of strategies, especially in ones that reward combo-based tetris, t-spin doubles or triples, and perfect clears. None of those are particularly relevant in single player but you could have an unholy amount of s-z pieces in a row that practically force gaps, and an eventual loss.

    • @EebstertheGreat
      @EebstertheGreat 3 ปีที่แล้ว

      @@Aimlesswaves. You can do T-spins on the NES, you just don't get any extra points for doing so. Everything else is true though. The rotation system is also more primitive.

    • @Aimlesswaves.
      @Aimlesswaves. 3 ปีที่แล้ว

      @@EebstertheGreat Some T-spins are not possible, and even between modern games what you're allowed to t-spin or not varies depending on engine. Though mostly yes, I was referring to ones where it is profitable.

  • @OutbackBoy
    @OutbackBoy 3 ปีที่แล้ว +3

    Your videos are superb. So well written, narrated and animated. I look forward to you getting the recognition you deserve.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      Fingers crossed! Thanks. I probably won't take credit on the animation part though. It's just doodles I made at the lunch break :)

  • @CrashuMat
    @CrashuMat 3 ปีที่แล้ว +11

    I believe there is a NES emulator which allows scripting, meaning you could get the positions of the peices etc without the bottle neck of screen shots etc.
    Am enjoying your videos so far.

    • @shazers7313
      @shazers7313 3 ปีที่แล้ว

      FCEUX right ? I'm not sure on this one.

  • @joelculver1421
    @joelculver1421 3 ปีที่แล้ว +11

    Good result considering you aren't even using all the information available. I wonder how close you'd get to the human record if you used alpha-beta pruning on all the possibilities in the 'next' queue to keep the calculations quick.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +10

      Thanks! This is exactlly what I was thinking about for my next attempt at the Tetris: first, use the NES version, next, use the next piece.
      As for the pruning. I see what you are saying,with two piecies, we need to analyse square more positions 40^2=1600.
      However, if you look at the current version, it wasn't the algorythm to find the best position that was a bottleneck. It was all the screenshot/parcing image/ pressing buttons part that took most of the time. Will the 1600 position be a comparable load time-wise? I don't know - we'll see when we get there. If yes, some pruning will definitely be useful.

    • @joelculver1421
      @joelculver1421 3 ปีที่แล้ว

      @@GamesComputersPlay Completely agree it may not be the bottleneck. I don't know much about Tetris, but it seems like you have to place the current piece, and then the queue contains 3 pieces which would need to be placed? Coupled with the hold feature the maths gets a bit tricky, but assuming the hold piece is different from the piece currently in play and the three in the queue, this makes for a worst-case scenario of 40^4*4~=10^7 times more possibilities to consider. Or including the extra factor of 40 from piece in play, about half a billion combinations without pruning.
      Combinatorics was never my strong suit so I may be a few orders of magnitude out there!

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +3

      @@joelculver1421
      Ah, sorry, I was thinking about NES version already, it only has one "next" and no "hold". If we look at this one with threee nexts and a hold - yes, that's about 40^5 positions to consider, 10^7, you are right. Definitely need some heavy pruning to make it work!

    • @joelculver1421
      @joelculver1421 3 ปีที่แล้ว +1

      @@GamesComputersPlay Looking forward to seeing your progress with NES and other games then. I only found your channel today and I've been watching all of them.

    • @EebstertheGreat
      @EebstertheGreat 3 ปีที่แล้ว +2

      @@GamesComputersPlay I would love to see an attempt at a NES Tetris bot. Especially one that heavily prioritizes getting tetrises.

  • @user-rf4vc7mt4d
    @user-rf4vc7mt4d 3 ปีที่แล้ว +17

    This channel is going to blow up very soon

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +5

      Hope so, thanks for your support!

    • @strebicux6174
      @strebicux6174 3 ปีที่แล้ว +1

      This is 1.6k subscribers in just a day or two

    • @BatBeardGames
      @BatBeardGames 3 ปีที่แล้ว +3

      @@GamesComputersPlay Well the algorithm finally suggested your channel to me and I've been watching everything and loving it. You're very informative and dry humorous and your methods of achieving AI autonomy in games are usually very clever. I was shocked to see that you have so few subscribers given the time spent and time span making your videos but be assured sometime soon that will change.

    • @superdupergrover9857
      @superdupergrover9857 3 ปีที่แล้ว

      Yes, I am usually not in on the action so early.

  • @codahighland
    @codahighland 3 ปีที่แล้ว

    Thank you for the keyboard optimization. XD I was thinking "this is really, really slow, I'm way faster than this" and then you fixed it.

  • @ZezimaTruth
    @ZezimaTruth 3 ปีที่แล้ว

    Found your channel today at 6.6k subs... Looking forward to seeing you blow up.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      It was like 200 only a month ago. Just want to say THANK YOU to everybody watching and liking! Next video is coming soon!

  • @kenothegreat609
    @kenothegreat609 3 ปีที่แล้ว +8

    This is reall underated! Not even 100 views

  • @DeltaModelX
    @DeltaModelX 2 ปีที่แล้ว +2

    this was a fun video, worth my time! however, 5 year olds watching unfunny "ironic" jokes that are actually just unfunny with no excuse, get 300m views a month,
    good job, should be a crime to be this underrated

  • @thecardczar8764
    @thecardczar8764 3 ปีที่แล้ว +2

    I was just going to say that you are just like CodeBullet but Russian, and then you said you took a lot of inspiration from him lol. Your channel is awesome though, I look forward to being able to say I found you at around 5000-6000 subs when you get to 1 mil!

  • @DeltaModelX
    @DeltaModelX 2 ปีที่แล้ว +2

    put this on 16x speed and it will almost look like that 1 tryhard in tetris multiplayer lobbies

  • @PlufferPalen
    @PlufferPalen 4 ปีที่แล้ว +6

    woa
    still underrated

  • @electricfall
    @electricfall 3 ปีที่แล้ว

    Great video, very informative and easy to understand

  • @rubixtheslime
    @rubixtheslime 3 ปีที่แล้ว +2

    My wife would've probably beaten this in a 1v1, but not me. Given the constraints it's actually quite impressive. There was an experiment I heard of where none of the top NES Tetris players were able to form a single Tetris when the next view was disabled. I'm interested to see what you come up with!

  • @Notester82
    @Notester82 2 ปีที่แล้ว +2

    It was pretty neat to take a step back and analyze Tetris skills (keeping the stack low, avoiding holes and wells, etc.) one by one to then teach the program said skills, especially since everything feels second nature to me, an experienced Tetris player. Cool video and final program result! :D

  • @teprox7690
    @teprox7690 2 ปีที่แล้ว +1

    how you know, that the highscore not done by a bot like yours?

  • @creepercraftytT99
    @creepercraftytT99 9 หลายเดือนก่อน

    1:34 1st party, the *cough* "awful" web version was made by T(he) T(etris) C(ompany) itself
    11:46 PERFECT CLEAR!
    13:47 PERFECT CLEAR!!, AGAIN!!
    18:03 it's a 2-wide, the easiest in the *-wide family, you can perform some combos with it, but you're kinda forced to clear many lines per combo, lowering the maximum combo you can get

  • @codahighland
    @codahighland 3 ปีที่แล้ว

    The Tetris well strategy is not the strongest strategy in modern Tetris like it is in NES Tetris. Modern Tetris gives bonus points for clearing lines on consecutive piece drops, called combos. And even in traditional Tetris, the one-wide well strategy isn't optimal for survival, only for high scores. Consider a two-column well so that you can choose to clear lines at any time with almost any piece. This will be especially powerful with next piece preview support.
    A possible optimization: You only need to parse a full screenshot once. Afterward you can track the board state in memory since you know where all the pieces are, and you only need to sample a maximum of 16 pixels per frame at the start of each move to identify which piece you've been given. (You can possibly optimize that down to 9, or even fewer if you use color to identify pieces, but the effort doesn't seem worth it.)
    Of course this only works when you can be sure you're playing fast enough that the pieces always end up where you want them -- any mistakes that desync the board from your model will be fatal. Perhaps you can use the delay frames between pieces to refresh the board state.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      Interesting idea about checking only a few places to get information on the piece on top. Not sure it will bring a lot of time save (most of the time is taken by taking th screenshot itself).
      You are quite right about another concern: every now and then program makes mistakes (for example, keystroke doesn't register or speed's to high). If we read the whole field every time, we can get back from it, if it is calculated - we never will.
      What I certainly agree with is there is room for improvement. The library I use - standard Python library for such things is not the fastest one. There is a faster screenshot library, developed exactly for these purposes - it is a little more difficult to work wiuth, but may be worth it!

  • @itryen7632
    @itryen7632 3 ปีที่แล้ว +1

    A perfectly clear level at line 100!
    WWWOOOOOHHHOOOOO!!!

  • @kaplanbahadir2301
    @kaplanbahadir2301 3 ปีที่แล้ว +1

    Codebullet needs to up his game, or this guy will steal the show!

  • @brown_note4710
    @brown_note4710 2 ปีที่แล้ว

    Boom! Tetris for Jonas

  • @esorty1913
    @esorty1913 3 ปีที่แล้ว +1

    Could you try to let an AI beat Mini Motorways? This would be a challange yes, but you could check which strategy actually works best, once and for all.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      I see this game being really popular these days. Haven;t played it, but I played previous, similar game from those develppers - Mini Metro. I did think if there is a wway to use Python to assist the player, but so far can't find a good way.
      Great idea though!

    • @esorty1913
      @esorty1913 3 ปีที่แล้ว +1

      @@GamesComputersPlay I know it will be difficult to do that. Maybe just use the score system to train a neural network that plays randomly?

  • @kat5607
    @kat5607 3 ปีที่แล้ว +2

    i was wondering why you didnt use the hold mechanic and looking at the next few pieces.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +2

      Frankly, I was so excited that this thing actually worked, that I totally forgot about it. And then the video was out and it was too late. I do want to to ocome back to it again sometime, optimize a few things and indeed make use of Next and Hold.

  • @cadenmccauley5033
    @cadenmccauley5033 3 ปีที่แล้ว +1

    Nice work! I've seen worse vids with more views...

  • @bloodykenshiro8218
    @bloodykenshiro8218 2 ปีที่แล้ว

    Version 1 looks like me playing, most of the time. If I can suggest something, how about Puyo Puyo?

  • @themightyripples6582
    @themightyripples6582 3 ปีที่แล้ว

    Towards the end you said you have no idea what happened. Maybe your code for detecting and filling wells saw the 2 tile wide well as 2 separate wells and wasnt sure how to fill it at first, but then the squares, and L's wound up using the stacking is back programming. Squares went into that hole, but the L's didnt until nearly the last moment. Once the L went in, there was a 2 tile deep well made in the 2 tile wide well that was there b4 so it just started doing what it was doing b4 the 2 tile wide well. Jjst a guess though

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      You mean at 17:17? Yeah, I am still not sure why it happened. Looking at the output of the program is wanted to put it in some other place (although also a weird one), but something went wrong.

  • @swagmoneybuge
    @swagmoneybuge 3 ปีที่แล้ว +1

    I heard about an AI made to survive Tetris as long as possible. When it was activated, it paused the game. It technically won.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      Haha. It actually makes sense, right? You can't lose if you don't play - mission accomplished!

  • @Raf99
    @Raf99 3 ปีที่แล้ว

    In my opinion you are better than Code Bullet in term on commentery. I dont really like his voice and jokes while you are normal and good to hear :)
    Also respect for the room two

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +2

      Thanks, I really appreciate it! I'd say we are quite different - and that's a good thing! And he definitely was an inspiration behind me starting this channel in the first place.
      As for the Room Two - I quite enjoyed it. I didn't beat the first one, but second had a system of hints that bailed me out more times that I would like to admit. Still have third in my library, waiting to be installed and played.
      If I may, a recommendation: Infinifactory (you can see an icon sticking out there too) - is something I'd like to recommend, if you like those "engineering puzzles" games.

  • @jungqianchen8348
    @jungqianchen8348 3 ปีที่แล้ว

    th-cam.com/video/Qoo4s6A4WQU/w-d-xo.html&t
    I leave this link for reference, there is a tetris bot called Cold Clear developed by Minus Kelvin to play Puyo Puyo Tetris(a crossover game that feature Tetris with modern rules).
    The bot is programmed to play 1v1 games,(and it's likely the strongest PPT bot that I'm aware), but PPT has an Endurance Mode that is basically the same as the game you used(you lose when the stack is too high, Gravity increses the more you play).
    I'm sharing this information just for learning, please don't take it as a insult, Cold clear has been developed for 1-2 years, it's obviously better.
    At 42:20 minute mark you can see how the bot stack normally, in case there are no Perfect clears.

  • @duckypewpy
    @duckypewpy 3 ปีที่แล้ว

    Hi what a wonderful video..... is there any way to contact you directly? I looked and tested out the code provided and i am very impressed... but i would like to know how some part of the code works.... so i thought asking u directly would be the most productive way in learning.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      Hey, thanks!
      Drop me a line at gamescomputersplay@gmail.com and we'll figure out the best way to connect.
      As for the tetris code. Looks like (one of the viewers was tested the code too and noticed that) tetris.com added some visual effects to their game, that mess with the screen reading, the bot is almost "playing blind" at this time. It will an update to fix that.

  • @zulc22
    @zulc22 2 ปีที่แล้ว

    oh, I would TOTALLY wanna see you make a Dr. Mario or Sokobon bot.

    • @GamesComputersPlay
      @GamesComputersPlay  2 ปีที่แล้ว

      Yes, they are in the to-do list.
      Dr. Mario should be relatively easy and fun I think.
      As for sokoban - I actually gave it a try with bruteforce a while ago - and failed. Too many options for bruteforce.
      I do have an idea or two how to approach it, but it's all back of an evnelope at this point.

  • @DiamondNoobie
    @DiamondNoobie 3 ปีที่แล้ว +1

    Cccooooooooll

  • @shazers7313
    @shazers7313 3 ปีที่แล้ว +1

    I realized I can easily beat the IA because it doesn't use hold. It goes quite fast but the stacking isn't perfect and it is very limited due to not holding. Also it could stick more to the right well policy to have to burn less. Also another weakness is that it doesn't make use of lock delay. Whenever the piece touches the ground on a guideline game like Tetris.com it can be moved for a short period of time and that's how players survive past level 13 or so, but this is really hard to implement. This IA is more adapted to NES Tetris than modern games because of this, and the fact that it doesn't use spins. It is really at a disadvantage compared to humans. Anyway I'm only sharing my Tetris knowledge to help you and give useful feedbacks, what you did is amazing. I have a similar project going on but with classic Tetris.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      Thanks. I do realise that I missed all the opportunities coming from Hold and Next - although it will be much more difficult challenge from programming perspective. Next attempt, maybe.
      Lock delay - probably impossible. Due to the nature of the code (screenshot - parsing, calculating, presssing buttons), it is as if it sees the game at abot 10 FPS, maybe even fewer. No way you can relliable use locak delay in this situation.

    • @shazers7313
      @shazers7313 3 ปีที่แล้ว

      @@GamesComputersPlay yes. A simple thing to do would be to use two threads, one to place the piece and the other to find a spot for the next one. This would improve your times and help you survive higher levels, without having to adjust the ai. Also I see an issue with your evaluation function. You give a better evaluation to flatter builds but in the actual game it's not always better to have a completely flat build, because it can't accommodate S and Z pieces, especially with a bot that can't tuck pieces under others. What the AI should look for is a board with 1, 2 or 3 slopes, and no major height difference. (2 is best in my opinion)

  • @coledustin4068
    @coledustin4068 2 ปีที่แล้ว

    This channel is WAAAAAYYYYY under recognized

  • @Dakkidaze
    @Dakkidaze 2 ปีที่แล้ว

    I was thinking how you would you implement t-spin then I realized the game used is too primitive to even recognize t spin

    • @GamesComputersPlay
      @GamesComputersPlay  2 ปีที่แล้ว +1

      Actually, this version DOES have T-Spin. Problem is two-fold. I haven’t heard about T-spin until the video was out, and I have absolutely zero ideas at the moment how to approach it.

  • @nimosasru6
    @nimosasru6 3 ปีที่แล้ว +1

    I have an idea for another video, games are called "ball sort" or "mazes & more" (for android)

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      Hello Nimos. I haven't heard of these games, looked it up. Ball Sort looks like an amasing game to code a solver for. As for mazes - I did try a different maze game once - solving a maze was very fun, so this one might be a good option too. Thanks two very nice suggestions indeed!
      I don't promise it'll happen soon tho. I am finishing a video now about Monopoly, have a couple lined up after that. And with my speed, it will be a while...

    • @nimosasru6
      @nimosasru6 3 ปีที่แล้ว +1

      @@GamesComputersPlay I've got another idea for next video, games like chess, five-in-a-row, checkers or The Mill (bot vs your bot), another games like Thrive ar interesting too, but game logic is too hard and have too many factors to count on them

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +3

      Nice ideas.
      - Chess. Definetely interesting to give it a try, but I dont expect any homegrown program like mine it to be any good really. Checkers aremuch more promising.
      - Five in a row - yes, And on a similar note, I want to start with something simpler, I have Connect-four in mind
      - The Mill - also yes, heard about it, I don't think I played it myself
      -Thrive. Looks to have too many options to come up with something. On a similar note, I played a game called Osmos, which is up the same alley, but simpler - maybe something like that.

  • @Eli_Kennemer
    @Eli_Kennemer 2 ปีที่แล้ว +1

    Make a bot to find a single diamond in Minecraft

    • @GamesComputersPlay
      @GamesComputersPlay  2 ปีที่แล้ว +1

      Interestingly, I never played Minecraft. Literally not once. I know I am probably missing out, knowing, how people are obsessed and how many hours are logged. You wouldn't log hundreds if it wasn't fun, obviously.
      One day FOMO will probably prevail and I'll run it and net thing I remember would be 3 months afterwards. We'll see.

    • @Eli_Kennemer
      @Eli_Kennemer 2 ปีที่แล้ว

      @@GamesComputersPlay Definitely worth your time (Not just as a logic puzzle but just to play as well) - I think it would be interesting given how basic the game can be and how people seem yo pickup its concepts fairly quickly.
      There are also plenty FOSS remakes/projects; so you don't hafta buy a key or mess about with Java of you don't want to.
      There are a lot of projects & ideas around AI and botting in Minecraftb but I want to see something purely based around numbers and statistics, I think that could be really interesting.

  • @l.zevicreations
    @l.zevicreations ปีที่แล้ว

    2:45 Plot twist: It isn't a human playing

  • @sobertillnoon
    @sobertillnoon 3 ปีที่แล้ว +1

    You gotta call spoilers when saying stuff like the intimate fate of the USSR. I haven't gotten to those episodes of history yet.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      Haha, my next video is about a game that captain Cook used to play. I shall not say anything about the manner of his demise. Now I'll go and eat something... Hawaiian pizza maybe?

  • @illdie314
    @illdie314 3 ปีที่แล้ว +1

    This is awesome! One thought I had that you might find interesting:
    At some point you implemented an disincentive to create long-bar dependencies in the form of those wells, and I wonder if implementing a more generalized dependency disincentive would be slightly more effective. That is, to provide a negative score for creating board states that can't accommodate as many tetrominos without leaving holes. The exact numbers could even be influenced by the preview of which piece is appearing next, and it might end up giving the program some additional ability to plan forward.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      margin = 1.96 * math.sqrt(count*(1-count)/nSimulations)
      - 1.96 is a Z-score for 95% confidence
      - count is the number in question (count of games where player didn't go bankrupt)
      - nSimulations is a total number of simulations
      From this article: www.ekorn.nl/2019/11/13/margin-of-error-heads-or-tails/

    • @illdie314
      @illdie314 3 ปีที่แล้ว

      @@GamesComputersPlay oh this was about the Tetris AI's strategy not the Monopoly tips. I loved those videos too though, you have a great channel!

  • @carboncuber3147
    @carboncuber3147 3 ปีที่แล้ว

    I'd love to see you write a python program that can play the game Hocus. It's an illusion puzzle game that is designed based off of M. C Escher drawings. One of my favorite puzzle games. It's like 99¢ on steam.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      Turns out this game is already in my library - I one of those guys who hoards games on sales to play them 5 years later...
      So, yes, haven't played it yet - so good chance to check it out.

    • @carboncuber3147
      @carboncuber3147 3 ปีที่แล้ว

      @@GamesComputersPlay awesome sauce. It can be a very relaxing game to play.

  • @caffained
    @caffained 3 หลายเดือนก่อน

    could u please update this?

  • @jusleefer
    @jusleefer 2 ปีที่แล้ว

    You think a computer could play dwarf fortress?

    • @GamesComputersPlay
      @GamesComputersPlay  2 ปีที่แล้ว

      The biggest challenge in games like this is to get the information on screen and transform it into the meaningful data for the program - matrices and variables and coordinates and so on. Construction and RTS games like this there is a lot of information on screen and it comes in so many different types. While it is theoretically possible, in practice that would be a nightmare to implement.
      Having to juggle all those settings and options would be also not easy and require either human insight into the game or some extensive trial and error - but still it would not be as bad as the data reading.

  • @michaeldean4362
    @michaeldean4362 3 ปีที่แล้ว

    Would love to see the NES Tetris version. Great work, love the channel

  • @EebstertheGreat
    @EebstertheGreat 3 ปีที่แล้ว

    The version of Tetris you are playing actually ends before the speed becomes unplayable. If a player manages to beat level 30 (300 lines from a lvl 1 start), the game immediately stops.

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      I guess you are right - I googled highscores and all of them are below 300 lines.
      The program, however, has issues keeping up much earlier. I think there is a way to optimize the latency and get somewhat better results, but I still doubt I can beat best humans.

  • @zaxtonhong3958
    @zaxtonhong3958 2 ปีที่แล้ว

    Funnily enough there were t spins in the original NES tetris

    • @GamesComputersPlay
      @GamesComputersPlay  2 ปีที่แล้ว +1

      Really? I mean you can probably perform it, but you don;t get extra points, right?

    • @zaxtonhong3958
      @zaxtonhong3958 2 ปีที่แล้ว

      @@GamesComputersPlay
      Yeah they’re not worth anything extra. But there are rare cases where a T spin can keep your stack clean

  • @foiledthrice
    @foiledthrice 3 ปีที่แล้ว

    You mentioned wanting to make the AI play the NES version of tetris at the beginning of the video, and there’s actually a few other ones being developed as well right now, and we’d love to have you on board! We have a channel in the main classic tetris discord at ctm.gg/discord if you’re interested in joining, we’ve had a whole AI tournament and showcase so far, it’s a ton of fun

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      Thanks, that does sounds exciting, joining the server.
      Can't promise I get to the NES Tetris project very soon though. So I'll just listen around for now, hope that's okay.

  • @RoamingAdhocrat
    @RoamingAdhocrat 3 ปีที่แล้ว

    6:24 the red squiggly - why is part of it floating after the line completes? Shouldn't it fall?

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      No, I don't think so. After piece has fallen, any complete lines are removed. Anything that is in the air at that time, stays in the air.

  • @decesses
    @decesses 3 ปีที่แล้ว

    Really interesting, thank you
    A code walk through video would be really interesting

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว

      I actually like coding tutorials, where besides the main point of the video, you actually get to see a professional coder at work. It's like at least 50% of value is in just watching someone who knows how to do things the right way and just soak those good habits in.
      As I am an amature, it would be a direct opposite of that. I may have an interesting idea or two regarding the project, but the way I code would make a decent programer cringe.
      But feel free to look into the source code. I'd be happy to answer questions if you have any.

  • @kfiramar9967
    @kfiramar9967 3 ปีที่แล้ว

    Dammm you make such a good content!

  • @AlexanderBukh
    @AlexanderBukh 2 ปีที่แล้ว

    yay hexcells 0:50 !!!

    • @GamesComputersPlay
      @GamesComputersPlay  2 ปีที่แล้ว

      Great game, one of my favourites. Played through all 3 parts twice.

  • @Watermelon_cat815
    @Watermelon_cat815 5 หลายเดือนก่อน

    bro can you show me the code

    • @GamesComputersPlay
      @GamesComputersPlay  5 หลายเดือนก่อน

      there is a link to the github repo in the description. As far as I can see tetris.com changed the appearance, so most probably it will not work anymore.

    • @Watermelon_cat815
      @Watermelon_cat815 5 หลายเดือนก่อน

      @@GamesComputersPlay k

  • @boo24998
    @boo24998 3 ปีที่แล้ว

    candy crasher?

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      You mean Candy Crush, right? Yeah, I thought about it - either it or Bejewelled or maybe Tetris Attack (also similar concept).
      The problem I see with Candy Crush is they really try ti make it interesting constatly adding new rules and game pieces. For the programming it is easier when the set of rules is the same and difficulty is added by speed or volume.

    • @boo24998
      @boo24998 3 ปีที่แล้ว +1

      @@GamesComputersPlay true. bejewled is a classsic.
      I love your channel.it is like visual asmr for me. keep it up

  • @RoamingAdhocrat
    @RoamingAdhocrat 3 ปีที่แล้ว +1

    hey, where's your laptop??

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +2

      Oh, I just realised that I forgot to put it there in front of me!!! That's actually quite funny you noticed that!

  • @OmneAurumNon
    @OmneAurumNon 3 ปีที่แล้ว

    Write your own chess engine?

    • @GamesComputersPlay
      @GamesComputersPlay  3 ปีที่แล้ว +1

      Great idea, although a bit too ambitious at this point. I guess it would be possible to wrtie a program to play not terrible in the beginning, but, for exmple endschpiel will be quite a challenge.

  • @copescale9599
    @copescale9599 ปีที่แล้ว

    I would like to see the AI play Pokemon Red or Blue.