NES AI Learnfun & Playfun, ep. 3: Gradius, pinball, ice hockey, mario updates, etc.

Поделиться
HTML-код
  • Опубликовано: 11 янв 2014
  • Learnfun and Playfun are software I wrote to automate the playing of Nintendo games. In this series I show the AI playing various games (some good, some bad) with color commentary. Games in this episode: Super Mario Bros., Color A Dinosaur, Cliffhanger, Pro Wrestling, Pinball, Mega Man 2, Gradius, Double Dare, Arkanoid.
    Episode 1: • Computer program that ...
    Episode 2: • NES AI Learnfun & Play...
    Website with code and paper: tom7.org/mario/
    Tom 7's Invincible Web Site: tom7.org/
    My 48h Ice Hockey-inspired game "Age of Umpires": radar.spacebar.org/f/a/weblog/...
    Time I ran a 10k in hockey skates: radar.spacebar.org/f/a/weblog/...
  • ИгрыИгры

Комментарии • 1,4 тыс.

  • @thefriendliestgaming
    @thefriendliestgaming 9 лет назад +347

    "Deaf dumb and blind.. but sure plays a mean pinball"
    I died.

    • @tom7
      @tom7  9 лет назад +129

      Sorry 4 killing u

    • @cmyk8964
      @cmyk8964 2 года назад +2

      Tommy?!

    • @jacksong6226
      @jacksong6226 Год назад

      hes a pinball wizzard

  • @FlyntofRWBY
    @FlyntofRWBY 9 лет назад +169

    I just can't stop laughing at what Playfun does. Especially the part where it kept letting the other team score because it thought that going to the right was good.

    • @WetDoggo
      @WetDoggo 3 года назад +8

      I couldn't stop laughing at the end sketch 😂
      Perfectly executed 👌

    • @Tomsonic41
      @Tomsonic41 4 месяца назад

      I'm wondering how it would cope with a soccer game, where the goals switch over at half time? Would it do totally pro moves and score own goals all the time?

  • @CountArtha
    @CountArtha 8 лет назад +288

    That bot is f**king _pro_ at Gradius.

    • @ChunkyWaterisReal
      @ChunkyWaterisReal 8 лет назад +8

      DUDE RIGHT?! i was like bruhhhhh

    • @Cake_Sauce
      @Cake_Sauce 7 лет назад +26

      If it was programmed to play arcade games, how well could it handle TouHou?

    • @CaptainShonko
      @CaptainShonko 7 лет назад +4

      Be great to see Thunderforce 4 done with this!

    • @daPvta
      @daPvta 7 лет назад +2

      +Cake Sauce THIS. Please

    • @ewok0075
      @ewok0075 7 лет назад +7

      What about Silver Surfer?

  • @lunaticker1893
    @lunaticker1893 10 лет назад +101

    The real life representations of what playfun does are gold.

  • @andrew_cunningham
    @andrew_cunningham 9 лет назад +45

    It's really cool how it considers hacking into the game's RNG a better strategy than actually playing. Like in the hockey game, it just froze the other player or something when it couldn't win. If it could achieve perfect manipulation and still play halfway competently, then it could annihilate most games.

    • @Lomaxxx53
      @Lomaxxx53 9 лет назад +7

      Well, it's not considered hacking if the game let's you do it. it's just humanly impossible, but machine-ly achievable.

    • @andrew_cunningham
      @andrew_cunningham 9 лет назад +3

      Not literally, it just sounded reasonable. You got the point right? Does it matter?

    • @a1be31s8x9
      @a1be31s8x9 9 лет назад +8

      Dixit Dominus What it's doing is what's known as "exploiting" the game. It's not hacking, but many online games will ban you for doing it.

    • @andrew_cunningham
      @andrew_cunningham 9 лет назад

      See previous response.

    • @a1be31s8x9
      @a1be31s8x9 9 лет назад

      Andrew Cunningham I was talking to Dixit

  • @mrcloudlion
    @mrcloudlion 9 лет назад +679

    The program is interesting enough, but the commentary is amazing. Thanks for teaching and making me laugh.

    • @tom7
      @tom7  9 лет назад +63

      Aw thanks :)

    • @Lionman44
      @Lionman44 9 лет назад +11

      suckerpinch That Pinball Wizard reference was amazing.

    • @Raz_Tactical
      @Raz_Tactical 9 лет назад +6

      suckerpinch I know its not a NES game but could you make it play touhou project?? I'd love to see it perform those superhuman moves but unfortunately I'm not that good with computers and programming.:)

    • @tom7
      @tom7  9 лет назад +6

      It's gotta be a NES game, sorry! :)

    • @Raz_Tactical
      @Raz_Tactical 9 лет назад +1

      No prob :) just a question.

  • @tom_something
    @tom_something 6 лет назад +3

    I love the fact that during any uncontrollable cut scene, the AI is pushing right and A in a desperate attempt to get to those precious points.

  • @nubcakes1000
    @nubcakes1000 9 лет назад +15

    I absolutely LOVE how this program will go into beast mode whenever faced with a chance at game over. it becomes a KILLDOZER

  • @LoftusWatching
    @LoftusWatching 9 лет назад +90

    I was expecting to be impressed and interested in the A.I. and the results but i definitely wasn't expecting to laugh as much as i have done while watching these. The way you humanize playfun and just deadpan everything works perfectly. As i'm sure many others who watch this are i'm a (much less experienced) programmer so these videos are truly brilliant to watch. Great job.

    • @tom7
      @tom7  9 лет назад +17

      Thanks, I really appreciate comments like these! Stay tuned for more weird stuff! :)

    • @NoNameAtAll2
      @NoNameAtAll2 6 лет назад +1

      no more videos?

  • @tehlolzfactor
    @tehlolzfactor 9 лет назад +162

    I'm an up and coming programmer and seeing this kind of stuff is extremely inspiring and hilarious. Thanks so much for this.

    • @tom7
      @tom7  9 лет назад +37

      That's great! Never give up! :)

    • @tonyroot7299
      @tonyroot7299 9 лет назад +4

      same here, you're an inspiration for programmers :)

    • @tom7
      @tom7  9 лет назад +10

      Antoine Racine-Gingras aw thanks :)

  • @Gustavo6046
    @Gustavo6046 8 лет назад +37

    Too bad this series stopped... :(

  • @JohnWolfe
    @JohnWolfe 9 лет назад +150

    Is it possible to play a co-op game with Playfun? Like Double Dragon or TMNT II?
    It would be massively entertaining to watch you play alongside the program.

    • @Meoiswa
      @Meoiswa 6 лет назад +8

      I think the problem is you'd have to play hundreds (thousands?) of games before the AI learns to play with you

    • @Jayfeather298
      @Jayfeather298 6 лет назад +36

      it doesn't play the game realtime

    • @3lH4ck3rC0mf0r7
      @3lH4ck3rC0mf0r7 5 лет назад +8

      @@Jayfeather298 Correct, we'd first have to figure out how to play the algorithm in real time. Perhaps switching away from FCEUX could be helpful, and trying some other, maybe simpler way of emulating all the futures

    • @Atlas_Redux
      @Atlas_Redux 4 года назад +1

      @@3lH4ck3rC0mf0r7 There is no alternative to FCEUX. It's the most precise emulation there is. Using ANY other base would make it horribly unreliable.

    • @3lH4ck3rC0mf0r7
      @3lH4ck3rC0mf0r7 4 года назад +1

      @@Atlas_Redux Incorrect. PuNES is the most accurate NES emulator there is, according to the tests ran by TASvideos. FCEUX on the other hand, scores fairly low on the same tests. Mesen is also another of the closest NES emus out there (none perfectly emulates a real NES 100%). FCEUX runs games just fine, but being completely singlethreaded slows down the entire AI.

  • @secretmilo
    @secretmilo 7 лет назад +104

    please do another one of these

    • @tom7
      @tom7  7 лет назад +34

      I will eventually. Thanks for your enthusiasm! :)

    • @jjt171
      @jjt171 7 лет назад +4

      IT'S BEEN TWO YEARS

    • @tom7
      @tom7  7 лет назад +25

      Sure has! Sorry to keep you waiting, but I want to make sure I have something new and interesting to show, and it's hard to juggle with all my projects, full-time job, life, etc.

    • @jjt171
      @jjt171 7 лет назад +6

      suckerpinch Ah, it would be a shame if the series stopped here.. It's such a great series to watch. But either way, good luck with everything.

    • @secretmilo
      @secretmilo 7 лет назад

      ***** HELL YEAAH

  • @DantalionNl
    @DantalionNl 7 лет назад +11

    I love how your ai monitors binary values to determine psuedo random game operations and basically forces the game to give him goodies.

  • @nates9536
    @nates9536 7 лет назад +28

    Playfun- "That's a nice score you have there Sweden. It would be a shame if... one of our players never came back. Muhahaha"

  • @AuroraNemoia
    @AuroraNemoia 9 лет назад +19

    Playfun could be used for finding gnew glitches in games to make Tool-assisted speedruns better!

  • @XFanmarX
    @XFanmarX 8 лет назад +28

    Heehee. Those mini-skits you do are actually really funny. "Learnfun Age 1/2"
    Great sense of humour imo. x)
    Love these 3 video's. I might not understand much of the data on the right side of the screen but it's very interesting to see none the less!

  • @TheRetroGamingGuys
    @TheRetroGamingGuys 9 лет назад +26

    This is one of the most interesting things i've ever seen. The commentary is amazing, the software is really cool and there's something about you thats just very likeable. I look forward to seeing more of this in the future!

    • @tom7
      @tom7  9 лет назад +10

      Thanks, I appreciate that! More is in the works.

    • @MikehMike01
      @MikehMike01 3 года назад

      @@tom7 it’s been 6 years

  • @Cronenburger
    @Cronenburger 10 лет назад +9

    Watching the program play Gradius had me laughing out loud with the absurd "skill" that it displays. I would absolutely love to see more of this stuff.

  • @Leviathanshadex
    @Leviathanshadex 7 лет назад +40

    These are very entertaining, please continue this series.

  • @graysongdl
    @graysongdl 9 лет назад +83

    IDEA! Can you set up a bot on each controller? You can have them fight eachother on multiplayer games!

    • @DasAntiNaziBroetchen
      @DasAntiNaziBroetchen 8 лет назад +3

      Graysongdl
      I think that's a really good idea! It would probably result in much different results than if the bot played a single player game.

    • @graysongdl
      @graysongdl 8 лет назад +30

      DasAntiNaziBroetchen Watch one of them pause the game before they lose.

    • @DasAntiNaziBroetchen
      @DasAntiNaziBroetchen 8 лет назад +1

      Graysongdl
      Hahaha

    • @graysongdl
      @graysongdl 8 лет назад +13

      DasAntiNaziBroetchen And if it's one of *those* games where either person can pause and unpause, watch them rapidly fight by P1 pausing, and P2 unpausing.

    • @DasAntiNaziBroetchen
      @DasAntiNaziBroetchen 8 лет назад +3

      Graysongdl
      lol
      Or they'll leave it paused, since no one can lose that way.

  • @SaigneurGuerrier
    @SaigneurGuerrier 9 лет назад +8

    those 3 videos I just watch are AWESOME ! your AI random moves, your commentary, the little scenes to show how it would relate if a human did the same, I love the concept !
    This AI is capable of the best and the worst, that makes it so fun to watch !

    • @tom7
      @tom7  9 лет назад +3

      Thanks for the nice comment; I'm glad so many people find it entertaining when it does stupid stuff! :)

    • @SaigneurGuerrier
      @SaigneurGuerrier 9 лет назад

      suckerpinch you are inspiring me to apply the concept to other stuff... maybe my next project !

  • @smurfwolf7
    @smurfwolf7 9 лет назад +68

    I would like to see more, because it's interesting and you're funny.

    • @tom7
      @tom7  9 лет назад +36

      I know it's been a while but this quarter I've been working on it again! Thanks for the encouragement :)

    • @ewanfoley2120
      @ewanfoley2120 9 лет назад +12

      suckerpinch yeah, vsauce brought this to my attention and I love this. And the reenactments in the second video were 10000000000000/10. Keep it up man, just the fact that you even started it is amazing

    • @clauddd
      @clauddd 9 лет назад +2

      suckerpinch You're gonna work on this kind of videos again? Great! Well, Im going to subscribe. Good Luck.

    • @Tober13
      @Tober13 9 лет назад

      suckerpinch You entertained me. Thank you.

    • @tom7
      @tom7  9 лет назад +1

      ToberSan 愛 You're welcome and thanks for watching! :)

  • @coder13
    @coder13 7 лет назад +16

    My friend just told me about these videos. Man I wish there were more, this was too good.

  • @curtismackie3291
    @curtismackie3291 9 лет назад +13

    It occurs to me Playfun probably *likes* getting scored on in Ice Hockey, if it's paying any attention to Sweden's score in any of its functions.
    I wonder how big an improvement it would be to add the option for the human trainer to annotate certain frames as "critical" for extremely negative things like dying. These would then be expanded into windows that include a couple frames before the critical frame, and probably around 20 frames after (so it can potentially scoop data on things like Mario's death animation), to get a set of "sad frames."
    Learnfun could then be run on the non-sad frames to find "happy" functions, and separately on the sad frames to "sad" functions, and any sad functions that appear very different from happy functions are kept separately for Playfun to *avoid* increasing. I think that would keep the project reasonably within the scope of "MAKE DA NUMBERS GO BIGGER" without adding too much work for the human trainer (he just has to go through and come up with a list of maybe ten frames at most, I think if you mark too many things you risk splitting and diluting the sample size).

    • @curtismackie3291
      @curtismackie3291 9 лет назад +2

      Also, Learnfun could identify happy functions that tend to decrease exclusively on sad frames and weight them more heavily than other happy functions.

  • @robert357900
    @robert357900 7 лет назад +10

    I know it almost 3 years old film but I hope you'll read this. I wonder how AI vs Player or AI vs AI would look like (if it even possible at this moment). Second is how AI will work in race games.

    • @tom7
      @tom7  7 лет назад +12

      AI vs AI is possible and I'm hoping to work that into the next series of videos. Player vs AI would be possible if I had a cluster of computers, but unfortunately it runs too slowly right now to really show that off. I haven't tried any race games. Feel free to make some game suggestions!

    • @robert357900
      @robert357900 7 лет назад +2

      I'm glad you reply. About games if I remember correctly there was 3 types of race games. Typical go-straight race like Excitebike or Road Fighter, "pseudo-3D" like Rad Racer and isometric like RC Pro-Am or Micro Machines. The last one will be little too hard for AI.

  • @efobust2859
    @efobust2859 2 года назад +2

    you have my gratitude, 7 years later and these videos are amazing and interesting

  • @ikeyasector
    @ikeyasector 2 года назад +1

    I've watched these videos over the years and it still fascinates me. Something about watching an AI learn and play games is amazing... but what is more amazing is how it figures out how to do things that none of us ever thought of.

  • @harmlesstech1524
    @harmlesstech1524 7 лет назад +32

    I want to see playfun as a human in real life, and i want you to narrate all of it.

    • @Koettnylle
      @Koettnylle 7 лет назад

      Thats actually a brilliant idea

    • @DrayCrouse
      @DrayCrouse 5 лет назад

      "Playfun has been known for being an AI for Nintendo games, but in reality... this is how it would act." *Text on screen says "Playfun's Real Life"*

  • @vforvargon
    @vforvargon 9 лет назад +5

    Loved this series, and I find your commentary and delivery hilarious. More videos would be very welcome indeed.

    • @tom7
      @tom7  9 лет назад +7

      Thanks! :) Something in the works currently...

  • @Wh0NeedsFr1ends
    @Wh0NeedsFr1ends Год назад +1

    Dr. Tom7, your face is going on my CS Mount Rushmore. I can't even imagine what it would have been like to have you as a TA while you were chasing your PhD. This is so ahead of it's time, and your style is.......singular. I'm a fan.

    • @tom7
      @tom7  Год назад +2

      Sorry, I still need my face (for now)!

  • @jedgrahek1426
    @jedgrahek1426 2 года назад +2

    I'm very new to your channel, but I want to say that I am in love with your style of speaking, your subject matter, and most especially your attitude and perspective and humor about everything; it's very fun listing to you talk, in other words. And I am kind of shocked that content of the quality I've watched so far, and posting on youtube for this long, wouldn't have gotten you more subs by now. Again I'm new, haven't even really looked through your posting history... I just find so much to appreciate and enjoy about your content.... but I certainly can't claim to be representative of any norm, so maybe that's part of it. Your videos are simultaneously technical and irreverent, maybe that venn diagram is slim lol.

  • @solarpowered3364
    @solarpowered3364 9 лет назад +4

    I can really see this taking off for you in a big way. I and Im sure alot of others really enjoyed these videos and also it was very interesting to see how the program figured out how to progress. I hope you make more of these video as your program improves.

    • @tom7
      @tom7  9 лет назад +2

      Thanks! :) I'm still workin'...

  • @PieInTheSky9
    @PieInTheSky9 10 лет назад +24

    Please tell me you're going to make more of these? These are gold.

    • @tom7
      @tom7  10 лет назад +19

      Glad you like them! :) I have plans for some more, and they are fun (though a lot of work) to make. But first, some more development...

    • @DouchebagAssholeify
      @DouchebagAssholeify 10 лет назад +2

      suckerpinch
      Please do.

    • @Naxvarus
      @Naxvarus 9 лет назад +1

      suckerpinch I would love for you to make more of this. This is great.

    • @tom7
      @tom7  9 лет назад +1

      ***** (: Thank you very much!

  • @Gidonka1
    @Gidonka1 9 лет назад

    This is probably the greatest video series I have ever seen. Brilliant commentary, fascinating topics, and captivating ideas. Great job!

    • @tom7
      @tom7  9 лет назад

      Thank you very much! :)

  • @PoisonBladeoo7
    @PoisonBladeoo7 9 лет назад

    Please do more of these! I loved every moment of these videos of playfun and learnfun, it's so funny, and your skits in between games are hilarious.

    • @tom7
      @tom7  9 лет назад

      Thank you! (: More in the works...

  • @himanimbob
    @himanimbob 9 лет назад +64

    is there a way to run two playfuns for 2 players?

    • @tom7
      @tom7  9 лет назад +95

      Coming soon!

    • @GrandpaNinjaSnail
      @GrandpaNinjaSnail 9 лет назад +5

      suckerpinch OMG!!!!!! NOW!!!!!!

    • @nickdown54321
      @nickdown54321 9 лет назад +4

      suckerpinch This can only be amazing. I eagerly await it.

    • @intothekey
      @intothekey 9 лет назад +1

      suckerpinch Lol what would happen if they both played a vs game. My guess there would be a lot of mimicking behavior.

    • @tadashimori
      @tadashimori 9 лет назад +5

      intothekey My guess would be both letting the other score a lot.

  • @Redrover1760
    @Redrover1760 3 года назад +4

    You most certainly had to search for this again. Still nice to revisit nostalgia.

  • @JavierChiappa
    @JavierChiappa 8 лет назад +2

    This videos get better and better. Loving the re-enactments.

  • @Bleach821
    @Bleach821 9 лет назад

    Your little cut outs to the Real Life Learnfun crack me up EVERY SINGLE TIME, it's my favorite thing about your videos. :D Absolutely love your commentary, it's so refreshingly casual, haha.

    • @tom7
      @tom7  9 лет назад

      Solowinged thanks very much :)

  • @chewyiskickass
    @chewyiskickass 10 лет назад +14

    A shame we didn't find out how long the Pinball Wizard could have kept it going. Damn windows updates!

  • @Jaies_
    @Jaies_ 9 лет назад +3

    This is SO entertaining! You and you're program is AWESOME

    • @tom7
      @tom7  9 лет назад +1

      Aw, thank you! (:

  • @DeadFleshPariah
    @DeadFleshPariah 9 лет назад

    Playfun is such a quirky little mischief-maker, with all the weird exploits like putting the ship past the armor and making the hockey game draw. Your commentary was hilarious, I lol'd several times watching this. Seriously great stuff. I hope to see more Playfun in the future - maybe if it gets better at Mega Man, a playthrough or something. That series was pretty big in my childhood and I don't even care if our software friend totally puts me to shame, it makes great entertainment.

  • @devinyoung581
    @devinyoung581 10 лет назад

    Thank you for this trio of videos. The concept behind how this program works is intriguing and watching it actually work is a blast. Though I do like the personification of playfun. I do hope that you expand upon this and share it with us, I enjoy watching them.

    • @tom7
      @tom7  10 лет назад

      Thanks! :)

  • @odiexx
    @odiexx 10 лет назад +3

    This is the coolest thing I've ever seen.

  • @einarjh
    @einarjh 10 лет назад +11

    This was thoroughly enjoyable and entertaining, thank you!

    • @TomMurphyVII7
      @TomMurphyVII7 10 лет назад +1

      Thank you :)

    • @jayrettmason3809
      @jayrettmason3809 10 лет назад +2

      *****
      No thank you this was really enjoyable hope you make more playfun vids

    • @lionblaze30
      @lionblaze30 10 лет назад +1

      *****
      Are you going to make more?

    • @TomMurphyVII7
      @TomMurphyVII7 10 лет назад +5

      I hope so, but first some more work! Thank you for your enthusiasm :)

  • @johnesco
    @johnesco 9 лет назад +1

    I adore NES games, really like AI, enjoy finding out more about machine learning... these videos are just one big mash-up of so many things that I like!

  • @Wyatt_James
    @Wyatt_James 3 года назад

    I really enjoy the Ice Hockey segment just because it's a general AI vs a specific AI. Neat concept.

  • @rasko125
    @rasko125 9 лет назад +78

    Do you want Skynet? Because that's how you get Skynet.

    • @DearValentina
      @DearValentina 9 лет назад +4

      Archer pls

    • @MrIronhat
      @MrIronhat 9 лет назад +3

      nah, more like Legion

    • @MrStronglime
      @MrStronglime 8 лет назад +3

      Griff Rush It would probably try to increase his money variable, looking at us human as examples.
      He likes when numbers go up.

    • @LoinkLoink
      @LoinkLoink 6 лет назад

      There are a ton of factors that determine how dangerous an artificial intelligence could be to the human race. But overall, AI only becomes a threat if it were to ever have access to militarized technology long enough to learn how to use it. AI that plays video games are safe, especially since the majority of games they can play are very old retro games compared to online games like Chess, strategic games about beating your opponent.

  • @jeromkiller
    @jeromkiller 9 лет назад +42

    Can't you make the program teach itself? Like lets say it plays for an hour, and then it stops to compare its bytes with a couple of preveous results, and let it continuously pick the best serries of bytes so it can pick its best results?

    • @tom7
      @tom7  9 лет назад +86

      Yes, I'd like to try something like this (and there are some ideas in the paper about it), but it would definitely requires some art for it to decide on its own objectives. What if it decided that the purpose of Metroid was just to enter really exquisite passwords on the password screen forever?

    • @ChrisBromley93
      @ChrisBromley93 9 лет назад +7

      suckerpinch Hey man anymore episodes coming? :)

    • @IntenseBean
      @IntenseBean 9 лет назад +1

      suckerpinch Doesnt Deepmind have same kind of general AI program that teaches itself? There are some videos on youtube about their AI playing retro games

    • @Backonos
      @Backonos 9 лет назад

      he already said*****
      suckerpinch 1 month ago
      +TehFreakers Love Double Dragon! I also played a lot of TMNT as a kid and only later realized that I wasn't the only one who found it crazy hard. I think DD should work pretty well; I'll try it in a future episode...

    • @weterman4320
      @weterman4320 9 лет назад

      suckerpinch Well could you not make the program do its thing, then makes copies of himself at the end of the level, each one with random "mutations" of objectives. and each of these copies will also mutate, so a copy will mutate an objective that makes him finish the level faster. So his copy will have the new mutation, he finishes the level 1 minute faster than the original, and he copies himself again. Over time, There will be much more copies of the ones that finish the level faster, than the ones that finish slower.

  • @check86
    @check86 9 лет назад

    This series is amazing. Hilarious and fascinating. Great work! Please make more! Double Dragon 2 would be my request.

  • @mattmatician
    @mattmatician 9 лет назад

    These three vids are amazing! You have a great voice and a keen eye for editing. I hope you're able to do more. Thanks for making these.

    • @tom7
      @tom7  9 лет назад +1

      Matthew Edmunds Thanks! It's fun but soooo much work, so I'm glad you appreciate the editing. :)

  • @stupidaccountlinking
    @stupidaccountlinking 9 лет назад +3

    These are ridiculously funny. Thanks!

  • @darkespeon64
    @darkespeon64 9 лет назад +10

    man he loves mario

    • @tom7
      @tom7  9 лет назад +15

      Of course! It's canon!

  • @underhallandeframling3267
    @underhallandeframling3267 7 лет назад +1

    Thank you for sharing the software. I was waiting for a new video for a long time, I like your other videos/projects too but machine learning and classic/retro systems are two of my favourite topics. Now I can experiment myself. Thank you. And keep up good work. :)

  • @tonyroot7299
    @tonyroot7299 9 лет назад

    I loooove your videos the work that went into this program and commentary... oh my god please do more of those!!

  • @amanatee
    @amanatee 9 лет назад +6

    laughing so hard at lunchbreak lolol

    • @lancel8459
      @lancel8459 9 лет назад

      That cliff hanger and hockey.

    • @amanatee
      @amanatee 9 лет назад

      ***** lol glad you saw this

  • @Ymbirtt
    @Ymbirtt 10 лет назад +4

    I noticed that Gradius had a 2-player mode. Would Playfun be able to cope with access to both controllers? Given the crazy moves that Playfun pulls off in single-player mode, I'd be interested in seeing it attempt some cooperative multiplayer games.

    • @VJFranzK
      @VJFranzK 2 года назад

      Life Force (Salamander) is the NES 2 player co-op sequel of Gradius, and yes it would be interesting!

  • @trbot
    @trbot 5 лет назад

    absolutely fantastic series. love it. the sense of humor is great (hugely developed from your first vid in this series -- you learn fast). as a cs phd who enjoys hacking, and writing programs to play games, this is something i've always wanted to do, but never had the time to devote to. :) great fun!

  • @Jasonafex
    @Jasonafex 9 лет назад +1

    Like others who have recently discovered your videos, Huge fan of this series! The commentary is both hilarious and insightful.

    • @tom7
      @tom7  9 лет назад +1

      Thank you very much (:

  • @EmergencyTemporalShift
    @EmergencyTemporalShift 8 лет назад +7

    I love your acting.

  • @tinostarks
    @tinostarks 9 лет назад +3

    ...it's like I'm watching how the terminator that will murder me (in the future) take its first baby steps.

    • @GarrettMoffitt
      @GarrettMoffitt 9 лет назад +3

      Why do you think your murder will be in the future?

  • @dachozogod
    @dachozogod 8 лет назад

    This is so amazing to watch. I love how it pokes the games for little "cheats". Please keep this thing developed!

  • @paladin5105
    @paladin5105 9 лет назад

    Great work on it dude! Its so interesting to watch this,looking foward to the next episode

  • @themusicofkberg
    @themusicofkberg 9 лет назад +4

    Great series! Can we please have more episodes?

    • @tom7
      @tom7  9 лет назад +7

      I know it's been a while, but I have really been working on advancements this year! Stay tuned...

    • @themusicofkberg
      @themusicofkberg 9 лет назад

      suckerpinch Will do.

  • @Raykkie
    @Raykkie 9 лет назад +3

    How can a simple AI be so cute ?

  • @barothemage
    @barothemage 9 лет назад

    Cannot wait for next episode. I keep watching this every month after january.

    • @TomMurphyVII7
      @TomMurphyVII7 9 лет назад

      Aw, thanks! :)

    • @barothemage
      @barothemage 9 лет назад

      *****
      Seriously man, I cannot wait to see LF&PF beat games like Metroid or Castlevania II.

  • @DanAdamKOF
    @DanAdamKOF 10 лет назад +2

    These were pretty entertaining, surprisingly. Normally if it involves games or tech stuff and people try to be funny with little skits it usually isn't that funny, but this hits the mark.

  • @trudyneo
    @trudyneo 8 лет назад +12

    if you got 100 or even 1000 people at some event to play these games then it would start to play more like a human and would learn a lot more tricks of the game

    • @JustPingo
      @JustPingo 8 лет назад +7

      No, this doesn't work like a neural network. It simply determines what is good and what is bad by watching one player play beforehand. But it won't get better after that because the training is very limited (it can only understand "this part of the RAM should get bigger" and "this part of the RAM should get smaller").

    • @Fuchsia_tude
      @Fuchsia_tude 7 лет назад +1

      I think he means rather than one person it should use multiple playthroughs as its corpus

    • @JustPingo
      @JustPingo 7 лет назад +2

      Fuchsia 'tude Either it's the same as using a longer training sequence, or then it's backpropagation and so out of the scope of this method.

  • @televisionandcheese
    @televisionandcheese 7 лет назад +4

    How would play fun do in two play co-op games, whith two play funs running?

  • @peterbarnes8492
    @peterbarnes8492 5 лет назад

    I have so much respect for people who can write programs on a computer. This is so cool.

  • @TheUndeadLeech
    @TheUndeadLeech 10 лет назад +2

    Was so looking forward to the 3rd part of this :) awesome!

  • @kgb255
    @kgb255 9 лет назад +4

    suckerpinch Was wondering if it would be possible to create a program that does this on newer generation consoles or maybe even on pc games? Love the videos.

    • @tom7
      @tom7  9 лет назад +1

      It kinda requires that the game be very small so that I can emulate millions of copies. 8-bit for now, but, maybe some day. Glad you liked the videos! :)

    • @daveboy2000
      @daveboy2000 9 лет назад +4

      suckerpinch
      How about Dwarf Fortress?

    • @TANMAN9095
      @TANMAN9095 9 лет назад

      suckerpinch what about super nintendo

    • @Dogz9221
      @Dogz9221 9 лет назад

      suckerpinch
      Does it work with Atari 2600 games?

    • @babis8142
      @babis8142 9 лет назад

      guys it's very simple. It works with NES games. ONLY.

  • @edstervedster
    @edstervedster 9 лет назад +3

    If Playfun always becomes really awesome on its last life because it doesn't want to die,
    why aren't lives more highly prioritised in general?

  • @DeadlyHandle
    @DeadlyHandle 9 лет назад +1

    Your entertaining commentary makes seeing your child at work even more enjoyable.

    • @tom7
      @tom7  9 лет назад +2

      DeadlyHandle Thanks, and I'm glad you enjoyed it! :)

    • @ToniT800
      @ToniT800 9 лет назад

      suckerpinch Just start a kickstarter project! I am sure you are famous enough now to achieve to collect like 500 k$ for this project.

  • @DNICE631
    @DNICE631 9 лет назад

    Thank you for bringing me down memory lane! Good times!

  • @ZachHixsonTutorials
    @ZachHixsonTutorials 9 лет назад +9

    You should do metroid, im curious how it would handle that

    • @johnrobertson6992
      @johnrobertson6992 9 лет назад +6

      Given its nonlinear nature and how well it handled Megaman, I'd say not very well.

    • @renakunisaki
      @renakunisaki 9 лет назад +1

      Metroid doesn't have any variables that increase the closer you get to your next objective, so there wouldn't really be any way for it to tell if it's doing well or not.

  • @OreoBlakesters
    @OreoBlakesters 9 лет назад +3

    And this is how Ryan from The Office set about destroying the world.

  • @skins4thewin
    @skins4thewin 6 лет назад

    You're really on to something special here. I really hope you keep making these videos! I wouldn't worry about the fun factor in watching and needing to cut out too much, as true retro gamers will find this stuff entertaining, no worries there. I would just maybe try to make the program even better if possible, like maybe a way to make less emphasis put on it using the start button. I think it would be fun to have a clip of a game played without any optimizational settings and then a clip with, to show the difference and increase in how well it does.
    Great work so far, and some genuinely funny commentary treating it like a real person. The bit in the last episode about the green area being happy and red being sad was especially funny.

  • @dantescanline
    @dantescanline 10 лет назад +1

    this project is really fascinating and your commentary is hilarious, thanks.

    • @tom7
      @tom7  10 лет назад

      thanks! :)

  • @renakunisaki
    @renakunisaki 9 лет назад +3

    I suppose it kills itself to escape traps because losing a life and some progress is less punishing than being in that situation. Then of course on its last life that's no longer true because losing all lives is very punishing.
    Also I guess it doesn't play conservatively because it doesn't need to. Humans won't do those kinds of extreme manoeuvres like putting your nose right up to the shield or carelessly flying within one pixel of a hazard, because they can't be sure it will work out. They might fly a little too far and crash, or not react fast enough if the hazard moves. They know that, so they stay well away. A computer has no trouble making the precise motions and fast reactions necessary to get away with those dangerous tricks.
    Really, it *is* doing the same thing as a human player: it knows that if it gets too close to this spot, it will die, so it avoids that spot. But a human, who can't extrapolate the future with 100% accuracy (maybe the enemy will suddenly change direction on the next frame with no warning) and can't control their ship as precisely (reaction times and the physical motion of the fingers limit their precision) assigns a sort of "danger gradient" to the obstacle: the closer I get to that spot, the more likely I'll die. The computer, knowing exactly what the enemy's next move will be and with effectively zero reaction time (it takes much less than one frame to react, especially if it's also controlling the framerate) and zero input error (it has no risk of accidentally flying a little further than it intended), sees no risk in being very close to the dangerous spot, only in actually colliding with it.
    If you wanted it to play more "human-like", maybe the simplest way would be to introduce those human limitations: limit how long it has to decide on its reaction, introduce random errors into its predictions (randomly corrupting RAM on future frames might be enough), and have its inputs sometimes delay (the game will use the same input as the previous frame even if that's not what the AI wanted), and hopefully it will learn to work around those the same ways a human does. Though it might end up playing quite poorly as a result... a more effective, but less realistic option, might be to take its plan, simulate a few frames ahead with random inputs, and punish it based on how many of those frames ended in death.
    The hockey game is especially interesting. It doesn't seem to care too much about winning. If you think about it, it's able (as it demonstrates) to manipulate the opponents with its inputs, so it's really playing both teams at once. That combined with the limitation of Learnfun that it only cares about values increasing means it probably wants to maximize both team's scores. (It might also be assigning more weight to one or the other. Depending how the game stores them, maybe it's not "team 1 score" and "team 2 score", but "left side score" and "right side score" - that would really confuse it when the sides switch.) It might even be trying to lose as badly as possible, since that does make one variable (the opponent's score) increase a lot.

  • @user-uc4ll6kx1g
    @user-uc4ll6kx1g 8 лет назад +7

    I think the learnfun needs to become smarter. It needs to know that decreasing values are good sometimes. It'd also be good if it could somehow detect losing conditions. P.S. Have you considered making the third algorithm that would learn from the results of playfun and adjust it's input closing the feedback loop (learnfun -> playfun -> adjustfun -> playfun -> ...)?

    • @NotJustSomeGuy
      @NotJustSomeGuy 8 лет назад

      I think first we just need to make learnfun do it's stuff faster.

  • @jacobm8242
    @jacobm8242 9 лет назад

    Please make more of these, they're awesome!

  • @andycepi
    @andycepi 7 лет назад +1

    dang your transitions between the games are on point

  • @Daleylife
    @Daleylife 9 лет назад +13

    Are there any updates to this?

    • @tom7
      @tom7  9 лет назад +47

      I've been working on it recently but no new videos yet, sorry. I want to make sure they are fresh!

    • @9joao6
      @9joao6 9 лет назад +3

      suckerpinch
      Found this today through reddit, and was very sad when most people were confused as to why there were no videos, as I wanted more information about this software, and the possibility of an installation guide. But your reply right here made it all better. Regardless of no new videos or not, I'm glad you're still... well, 1: alive, 2: working on it, and 3: with new videos in mind. Keep it up man, I'm definitely subscribing! :)

    • @paralinq
      @paralinq 9 лет назад

      suckerpinch I'd like to work on a bot for the game Lethal League using your software as a base, if you have any updates I'd love if you could post a GitHub repo or something.

    • @tom7
      @tom7  9 лет назад +1

      kidovate I think my software will only be useful for NES games, but you can find the source code linked from the description, and I commit to the repository pretty often. :)

    • @9joao6
      @9joao6 9 лет назад +1

      kidovate
      Keep us updated on this!

  • @Dachshundwarlord
    @Dachshundwarlord 7 лет назад +4

    I wish I could be like you. I am just starting my coding journey at Coding Dojo....

  • @gaetaboss_mattj3047
    @gaetaboss_mattj3047 7 лет назад +1

    it was both hilarious to watch and genuinely interesting. I'm an IT student, and I'll be majoring in AI once I reach my 3rd year of college and it just looks like a lot of fun to make these kind of things, now I'm even more motivated to study!! :)

  • @johneygd
    @johneygd 7 лет назад

    It sounds science fiction but now already being so close, this is mind blowing.

  • @NicroLife
    @NicroLife 9 лет назад +4

    O.o He wants to know how many 10-letter words could be written on the top row of a keyboard... So he writes a program!? What type of prodigy are you!?

    • @frixrandy
      @frixrandy 9 лет назад +8

      Actually pretty easy, put the top row letters in a string, run through the string checking against a dictionary; database or website, would only take a minute to make. He is very smart though.

    • @NicroLife
      @NicroLife 9 лет назад +3

      Randy Frix The thing is, I'd never even know where to begin with any of those, specifically even referencing a database to the program.
      Then again, I suck at programming, so anything amazes me at this point.

    • @tom7
      @tom7  9 лет назад +2

      NicroLife Yes, not too hard, and I actually really enjoy solving little word problems like that with a program. I think in this case I just used "grep" with like [qwertyuiop] repeated 10 times?

    • @tom7
      @tom7  9 лет назад

      ***** Most typewriters (in the US, at least) have the same letter layout as US keyboards do.

    • @tom7
      @tom7  9 лет назад

      ***** thanks :)

  • @y788lhjk1
    @y788lhjk1 9 лет назад +3

    Vsauce prought me here

  • @day5209
    @day5209 9 лет назад +2

    13:00 It seems like Learnfun draws really good. It looks very 3D. Fantastic.

    • @Thedamped
      @Thedamped 8 лет назад +7

      +YourComputerExpert Why do you have two comments on this video calling someone autistic? And what is it that you think autistic means?

    • @Hwyadylaw
      @Hwyadylaw 8 лет назад

      He's learned the proper technique to use 3D colors. Fantastic.

  • @01hZ
    @01hZ 9 лет назад +1

    this is so funny to watch, especially on old school games.. its like watching a kid play for the first time.. crazy how it is just software and every time i remind myself of that it just amazes me. well done!

    • @tom7
      @tom7  9 лет назад

      Master thanks! :)

    • @Dorumin
      @Dorumin 9 лет назад +1

      Master in that case that kid is a boss at pinball

  • @Emeengor
    @Emeengor 8 лет назад +3

    +suckerpinch actually you should commercialise this especially if you are able to fine tune it a little more I mean it's seems very promising in the fields of bug/glitch detection and also in revealing gaming secrets never known before( like mario escaping a seemingly inevitably pitfall by jumping or like in gradius when you have your aircraft in front of the boss's shield you can attack its core and one shot kill it etc) Developers pay people to do this kind of testing... so I bet they are interested in cutting some expenses by using software like this also gamers would pay to find tips and tricks (or at least would cause huge traffic which could also result to income via ads or whatnot)

    • @MrNisseKiller
      @MrNisseKiller 8 лет назад +1

      I'm pretty sure it only works on NES games, and that it wouldn't work on any modern games because the objectives aren't as straight forward. Just look at how it plays Mega Man, and then imagine what it would do if you made it play some modern game like Assassin's Creed or Call of Duty or whatever

    • @Emeengor
      @Emeengor 8 лет назад +1

      Joseph Joestar! you dont get how deeplearning works.... it played like this because it only had 1 day to try on an average consumer CPU...
      deep learning doesnt need to hardcode the target of each game it "finds it out" on tis own...
      the only thing you need is a strong server of cloud and to give it enough time (like a month) to simulate million upon millions of stragies it will simply do everything that is possible to be done in the each game and beyond.

    • @Yotanido
      @Yotanido 7 лет назад

      Even if you give it like a year of time, the search space in games like Assassin's Creed is simply too big.
      It generally performs best when the screen doesn't move or constantly moves to the right. Games where it could move the screen itself were all right..
      Now take a look at how it performed with Zelda. Open world type of games just don't work.
      There is no simple objective and the whole game might even be separated into missions. These missions are rather complex themselves.
      Also keep in mind that modern games are no longer programmed like this. You no longer have this simplistic memory map, you have rather complex memory structures. Instead of a simple score counter, your missions might be the instantiation of a class, which would allocate some space on the heap where your counter resides. The next time you start a mission, even the same one, it could be in a completely different place.
      This simply does not transfer. It really doesn't.

  • @Asdayasman
    @Asdayasman 9 лет назад +5

    Oh jesus, PLEASE find some way to make this play touhou.

    • @Asdayasman
      @Asdayasman 5 лет назад

      I KNEW I'd seen this video before!
      I just found you again! RUclips recommended that floating point computer to me.

  • @AdamSinicki
    @AdamSinicki 9 лет назад +2

    These videos are wicked, awesome work! I don't know what it is that's so funny and fascinating about watching AI work. I tried to make a piece of software once to write articles for me and among other things that it messed up it became randomly super hyperbolic. Everything was truly utterly superb...

    • @tom7
      @tom7  9 лет назад

      Aw, thank you very much! :)

    • @mejzlik.handpan
      @mejzlik.handpan 9 лет назад

      Hey Adam, hows your progress on developing ambidexterity/creativity? I found some kind of golden nail and it is called polyrhythms - you are developing ambidextreous movements to beats. It can be practiced on musical instruments (drums, piano, guitar) and I am thinking about some kind of game which will cover it.. playing around Leap Motion device can be interesting.

  • @BiroZombie
    @BiroZombie 9 лет назад

    This series has been quite fun to watch! I'm really enjoying it! As for the commentary, it's hit and miss for me, as I like what you're explaining, while showing what's happening, and the little things that you notice your program try to do.
    Five games that I think it'd do well at are "Rampage," "Breakthru," "Wild Gunman," "Hogan's Alley," and "Duck Hunt". Yes, the last three are games where you use the Zapper (in which, if it's done on an emulator, then the mouse would be used, and I don't know if it'd be able to recognize that). I'm just thinking of games where points would make it happy.
    Keep up the good work with it!

  • @nezudough2423
    @nezudough2423 7 лет назад +5

    that was not a swedish accent

    • @BasedBroad
      @BasedBroad 7 лет назад

      That wasn't even the swedish flag

  • @littleampton2
    @littleampton2 8 лет назад +4

    Why do you call giving the computer goals cheating? If you don't know the goals of the game, you can't play it neither :P

    • @tom7
      @tom7  8 лет назад +10

      +Claude Frollo It's cheating because the whole purpose of the project is to have the software learn how to play the game without any per-game advice. I just want it to be able to watch me play and figure it out. People are usually able to figure out the goals of a game without any advice, right?

    • @littleampton2
      @littleampton2 8 лет назад +5

      I think that's because most games usually share similar goals (kill enemies, get to end of the level, get as much score as you can) and we're used to it.

    • @ieatsoap88
      @ieatsoap88 8 лет назад

      hi frollo did u escape dem ytp's

    • @littleampton2
      @littleampton2 8 лет назад +1

      +oͬ̽̔ Calvin Somethin Ouwens Yes

    • @MouseGoat
      @MouseGoat 8 лет назад

      +suckerpinch play fun just knows that there is more ways to play a game than the the human expected one X)

  • @cuanmcgovern-bray7497
    @cuanmcgovern-bray7497 9 лет назад

    things like this make me really happy, its just cool to see the little exploits the players and probably the devs never knew about

  • @bgildersleeve
    @bgildersleeve 8 лет назад

    Oh man, pausing with the Zambonis in the middle! Memories... :)