I laughed over landorus u-turn being no.1 prediction, AI already learned the essence of high-level play
@kylekiske_3 жыл бұрын
"high level play" being asleep at the wheel. sure.
@xav99923 жыл бұрын
@@kylekiske_ "high level play" spaning spore with amoongus
@ezla16633 жыл бұрын
@@xav9992 Only in VGC, this is playing OU.
@litapd3113 жыл бұрын
@@xav9992 when the ai is sus
@jamesflanagan69773 жыл бұрын
@@kylekiske_ yeah, a lot of people (especially if they're tilted) will just play on autopilot. Leading something like a choice scarf Landorus Therian and clicking u-turn turn 1 is something that will often work out well for you It's like spamming a high damage move in a fighting game which is the mark of a noob rather than "high level play", you find something that works and just keep doing it. This is an important thing to identify when trying to improve. When you catch yourself going on autopilot the best thing you can do is slow down and try to force yourself to use more time per turn (temporarily). That is not to say you always need to spend a minute thinking through every turn, experience can help you off-load a lot of the processing so you can focus your conscious thought on tricky scenarios (and sometimes you can get in "the zone" where you can play super fast because even though you're not consciously thinking about each play you subconsciously are quickly following the correct logic).
@dangerbeans96393 жыл бұрын
The fact that it plays to the opponents skill level means that you just made a competitive “play against AI” mode in Pokémon. That’s impressive.
@KinkajusRevenge3 жыл бұрын
If the AI is to improve, it should always play its best, and not adjust to skill level.
@tl13263 жыл бұрын
@@KinkajusRevenge with pokemon, a bad player can outplay a good player that over thinks or over estimating a player
@KinkajusRevenge3 жыл бұрын
@@tl1326 Yes, but i believe that in the long term, playing to the best move in a given situation wins more often than trying to underpredict a player
@lucaslbpo913 жыл бұрын
@@KinkajusRevenge but to properly do that the AI will need to see a lot more turns ahead than the current 3
@KinkajusRevenge3 жыл бұрын
@@lucaslbpo91not really. Pokemon is largely about tactics, and knowing your win condition. Prediction is only a small part of it. I doubt most players think more than a few moves ahead, since RNG and other factors change the board often.
@pokeaimMD3 жыл бұрын
This is so sick
@TheThirdBuild3 жыл бұрын
Why do I hear boss music... But seriously, your videos helped a lot in making this, so I'm glad you think it's cool!
@TheMonkeee3 жыл бұрын
Joey himself here :o
@JamesJones-ts5fl3 жыл бұрын
Joey vs FuturesightAI when?
@tomfoolery82383 жыл бұрын
Feature challenging the AI on your channel. Be a sick vid
@Flapjack37343 жыл бұрын
J his name is…
@PositiveBlackSoul3 жыл бұрын
An AI that has a consistent ~50% winrate in all levels of play is honestly pretty cool.
@amberlee45363 жыл бұрын
It has a better winrate than I do
@Noobie2k73 жыл бұрын
Yeah. It actually makes it the best kind of practice AI to put into a videogame. Since if there is always an average of 50% chance to win or lose regardless of your skill level it will always be a challenge and keep you learning and improving.
@Its-DeiTy3 жыл бұрын
And that's on the weakest setting 😂
@meepmeep88753 жыл бұрын
Such a perfect practice tool
@Lastremify3 жыл бұрын
Honestly speaking this is absolutely the golden opportunity! Even though it was not the creators intention having a computer that pushes a player no matter the skill level and both the player and the computer having an even chance at beating each other should be its own project. Modeling skill curves is damn hard and is some secret sauce!
@ZeroNumerous3 жыл бұрын
Playing to the opponent's skill level is actually an incredible accidental creation. You've built an AI that, if it's pared down a bit, could be plugged into a pokemon game to provide an interesting opponent throughout the game.
@asterlofts1565 Жыл бұрын
Honestly, I'm tired of NPCs that don't EVER switch their Pokemon until one of them faints and moves on to the next Pokemon they have... I'd like one or a few that at least have some "skill" and a solid strategy but no unfair to the player and it's challenging and rewarding to defeat them even they gradually increase the difficulty of the battles based on certain game conditions as you progress or do quests or something like that... It would be super interesting and cool and teaches you how to play for real like in Pokemon Showdown, for example!
@ireallyhatemakingupnamesfo1758 Жыл бұрын
Lots of post games have something similar where the only way to get far is to have a competitively viable team
@ironboy3245 Жыл бұрын
Alternatively, slap it into smogon and let it rip
@jmlynr Жыл бұрын
@@asterlofts1565 Having read Chorocojo's Let's Play Pokemon Platinum, Barry seems to be a weirdly skilled NPC by the general standards of the series, not only switching out of unfavorable matchups, but punishing the player character for switching out through the use of the move Pursuit. While kind of a doofus in general, he's sort of an idiot savant when it comes to his chosen form of competition, like so many anime protagonists I guess.
@davidcardinal3654 Жыл бұрын
This is why I liked Pokémon black and white 2. The hard mode was decently difficult and made the second play through way more fun. Wish they would add hardmode to all Pokémon games
@insaneintherainmusic3 жыл бұрын
This is so freakin cool. Congrats on building something this impressive!
@TheThirdBuild3 жыл бұрын
Thanks, I really enjoy your videos too!
@noahz423 жыл бұрын
Its the music man :O
@mudkip_btw3 жыл бұрын
Hi Carlos!
@masterwings503 жыл бұрын
Carlos 😳
@notengonombrex33753 жыл бұрын
Carlos plays competitive? 😳😳😳😳
@JosephCatrambone3 жыл бұрын
Professional ML Engineer / Data Scientist here. You did amazing work. Some particular points that I think deserve commendation: 1. Picking a language based on how well it fits the needs of the project. (Yeah, I'm a Python fanboy, but I think the call to use JS here was the right one for the reason you mentioned.) 2. Being socially responsible with the code release -- thinking of cheaters making the game not fun. 3. Making the model available to test by outsiders. So yup. I'm floored. Awesome work.
@Faherd3 жыл бұрын
17:45 “it has this weird limitation where it played to its opponent’s skill level” THATS SUCH A WHOLESOME LIMITATION THO 🥺
@Katharina-rp7iq3 жыл бұрын
Fun to play against for anyone, giving a challenge but good win chance... that's the perfect opponent for anyone.
@ReyNico3 жыл бұрын
@@Katharina-rp7iq yeah it would be good as a built-in bot for the game. But, he wants it to be the best... That means wrecking everybody
@coreygarris93903 жыл бұрын
Honestly, that seems like the next logical step. Over prediction is a thing.
@Smenchevieve2 жыл бұрын
I feel like a problem that may have led to this was only using the last used move as a parameter and not all the moves that have been used throughout the battle.
@jasonruff12702 жыл бұрын
lol that emoji
@LudikrisTV3 жыл бұрын
"I made an ai that plays at the skill level of its opponents" Dude, that is not easy. Every video game ever wouldn't mind having that ability for co op vs ai games.
@davideleoncini62463 жыл бұрын
It's not usable, the ai can do that because he know the opponent rating and what's usually used at that rating, it couldn't work in single player game
@kairotox3 жыл бұрын
@@davideleoncini6246 Think league of legends. Every player has an elo rating. Their current co-op vs ai mode doesn't scale in difficulty though, any player better than bronze can easily defeat them. If they changed up their difficulty based on the elo of the players, that'd be a LOT better than the current implementation.
@davideleoncini62463 жыл бұрын
@@kairotox I was thinking about Pokemon story mode ahahah, Im with you in this though, it would be good
@Nintendilly3 жыл бұрын
Technically it could be possible. If the ai was incorporated into the story mode it could just base it's level off of how many gym badges the trainer has, probably some other factors too like total number of wins or losses, total number of defeated trainer pokemon.. Definitely would love to see something like this in the main games, the story mode is way to easy
@davideleoncini62463 жыл бұрын
@@Nintendilly it wouldnt make a difference, a pokemon game should just give better pokemon to trainer and make them do moves that actually do something, thats all, youll have a difficult game for 90% of pokemon player. If you want to know why AI wouldnt make a noticeble pratical difference its because you cant make it choose the trainer team and level, thats all setup in advance, and even if you make it choose, you should give a small selection cause of type trainer that use only some type of pkmn.
@JamesJones-ts5fl3 жыл бұрын
This is genuinely one of the best videos I’ve ever seen. I’ve played Pokemon for years at various levels, but I know precious little about actual computer science; yet when I watched you explain the AI in depth, I never felt talked down to or lectured towards, just educated. It’s a rare skill to be able to explain a topic in-depth, and passionately, without coming off as showoff-ish, but you nailed it. Sub earned. Great work, I can’t wait to see more!
@TheThirdBuild3 жыл бұрын
That is truly all I strive for when making these videos; ngl this comment had me tearing up a bit. It's super uplifting to see this and I'll do my best to keep the quality coming!
@cohandora3 жыл бұрын
Yes
@elirantuil50033 жыл бұрын
"Multithreaded" "But he just said he did everything in javascri..... Oh, poor soul"
@illusion94233 жыл бұрын
I didn't really understand it, can you explain?
@elirantuil50033 жыл бұрын
@@illusion9423 there are languages that make it easier to use multithreading... And that is somewhat of an understatement.
@jenidu96423 жыл бұрын
@@elirantuil5003 do you mean like C++ or is it even easier in other languages?
@PabloRozario3 жыл бұрын
@@jenidu9642 for multithreading yes
@jenidu96423 жыл бұрын
@@PabloRozario easier in C++ or other languages?
@atraxian58813 жыл бұрын
I would love to see how it would fare with meme teams like focus-sash + endeavour + quick attack rattatas or pain-split + sturdy level 1 mons. Would the ai find a worthy challenge in trying to predict extremely fringe cases or be at a loss.
@justas4233 жыл бұрын
Might be possible that the computer, through machine learning, could pick up that Level 1 Rattata = FEAR and play accordingly.
@nya693 жыл бұрын
without any kind of learning or preparation for FEAR mons itd probably struggle, but it could very easily be taught or learn to recognise and counterplay any possible FEAR strats
@Awesum2 жыл бұрын
Considering the likelihood of it carrying toxic, and burn it would probably be able to play accordingly..being able to detect the set automatically with its database of million of battles.
@UnknownVir2 жыл бұрын
@@nya69 Actually, I don't think it's likely to run out of PP versus a FEAR pokemon /j
@RocketPropelledMexican Жыл бұрын
If this project is still active I wonder how it would fare against weird metas like revivecats of the former natdex AG
@DaBlueIghuana2 жыл бұрын
I really like listening to you talking about anything, you’re very active but calm at the same time. I can’t really explain it, this is the first of your videos that I have ever seen.
@dynamicbanteranimated84113 жыл бұрын
I’d easily watch a 3-hour version of this with every tangent included; this project is so impressive
@naturegirl19993 жыл бұрын
I’d watch that too
@someghosts2 жыл бұрын
Yeah maybe as a second channel video or something
@keylowjoe Жыл бұрын
2 years later, its still worth a 3 hour version, im now down a rabbit hole and hoping the 3 hour compilation exists.
@ZenoEditz. Жыл бұрын
@@keylowjoe same 😢
@lankyaf28683 жыл бұрын
this video is criminally underrated: the editing, presentation, and the entire project itself of course is AMAZING. Keep it up!
@TrippyPepper3 жыл бұрын
honestly the most impressive video ive ever watched on yt, subbed and look forward to more vids !
@niklasdavind47223 жыл бұрын
Hi trippy pls do more showdown content🙏
@lanuudo3 жыл бұрын
Same
@oliversnetwork97833 жыл бұрын
hi
@Auride3 жыл бұрын
Way back in high school, I tried to do almost the same thing. It's kinda hilarious hearing you describe all my wrong choices! I tried to write it in Java, using Webdriver to interact with PS!, so I had to write a very basic simulator. After half a year, my final demo was winning a carefully designed 2 turn battle where it had to use a strong move followed by a priority move. Great work!
@Radi0actvChickn2 жыл бұрын
It's impressive enough that you were able to make an AI with results these good, but you also made a super entertaining video and explained things very clearly using fantastic visuals. I'm also a programmer, and this is exactly the type of quality programming content I want to see more of on KZbin. You definitely earned my subscription. Looking forward to what you make next!
@kevincheng42883 жыл бұрын
I shiver in fear for the day that this bot ends up loading up full stall and begins to grind down the ladder lol. Jokes aside, very cool. Reminds me a lot of the development of AlphaGo, except on a much smaller scale.
@highvoltage35083 жыл бұрын
I wonder if the AI would ignore hazards and not even click defog/rapid spin, cause if it only plans 3 turns ahead it doesn't care about the long term. I think that teaching the AI the importance of removing hazards is the only thing it has to be manually taught tbh.
@Flapjack37343 жыл бұрын
Imagine playing a 100+ turn match against a stall AI… I would cry lol
@ultimaterecoil11363 жыл бұрын
@@Flapjack3734 100 is kinda tame. 500+ is the point I’d start to worry
@genyrik353 жыл бұрын
@@highvoltage3508 in one of the clips we say lando T click Defog I front of a dragon it’s w screens, so it does seem to recognize that
@robertocorti98453 жыл бұрын
Bots work horizontally. That means lots of computing work. They will probably do better on hyper offense.
@HaloAdherents3 жыл бұрын
Me: Show me your team so I know it's not a stall team. AI: I'm sorry Dave, I'm afraid I can't do that.
@jacobdoolan49783 жыл бұрын
XD
@Eskay_OW3 жыл бұрын
This was a treat to watch you’re awesome
@1owercase3 жыл бұрын
omg hi bestie
@ryankerkhoff82303 жыл бұрын
Eskay!
@Astro-ex2lq3 жыл бұрын
wait eskay under a pokemon vid pog
@bernardeugenio3 жыл бұрын
Pog eskay is here
@noanknows3 жыл бұрын
Yow Eskay!
@AR-io8fv3 жыл бұрын
You’re going far man. My jaw dropped when the graph started going crazy and the music played. Stylish. Sharp as a knife. And lovable. I wish you were my data science professor. Subscribed.
@ipercreeper33003 жыл бұрын
You're going places man Also your editing is fantastic
@TheThirdBuild3 жыл бұрын
I'm still wrapping my head around this video's random surge, but what I can understand is how absolutely grateful I am for the support and kind words yall have given it; A huge THANK YOU to all of you! This has been a huge project, so I'm thinking it's time we assemble a team. If you know a lot about Pokemon, programming, or both, fill out this form ( forms.gle/6R85bn2GwajrgteL7 ) so I can gauge interest in creating a team. No promises anything comes of it, but if you fill it out, I'll let you know if it does. Also, finally learning how to use Discord, so that might be a thing soon too. (P.S.I'm surprised no one's found any Easter Eggs yet. If my face isn't on screen, odds are there's something to find 😉)
@InvaderSqwid3 жыл бұрын
Submitted 👍
@Kuribohdudalala3 жыл бұрын
I doubt I’ll be able to help much, but I wanna learn more about this anwyay
@a-manthegeneral3 жыл бұрын
Done
@PrincessYellowSings3 жыл бұрын
When you finish doubles, it would be so cool to see WolfeyVGC play against it! This is really cool. I hope more people get to see your hard amazing work.
@spikerthedragonbear3 жыл бұрын
double the problems
@snacqk65503 жыл бұрын
Doubles will probably be for DOU because this is for showdown- Wolfey plays VGC
@Talynen3 жыл бұрын
@@snacqk6550 he uses showdown to practice VGC with training partners I thought
@deeznoots62413 жыл бұрын
Would be fun to see ‘anti-computer’ pokemon develop like anti-computer chess
@nathanielgomez83503 жыл бұрын
Holy heck yes. This needs to be a thing.
@AbsolBlogsPokemon3 жыл бұрын
Every facet of this - the concept, the editing, the explanation, and the whole project - is awe-inspiring. Fantastic work on all of this!!!! Really fascinating how fine-tuning it without machine learning has made it better at battling for now - makes me wonder if being more selective with the battles input in the dataset to only have battles between high ranking players could change that or if it wouldn't matter? (EDIT: just watched the sequel to this and learned the fault of neural networks here. Still really rad that you tried it out!) Well, no matter what, I'm really looking forward to seeing whatever comes next!!! Best of luck on your project
@tpsam3 жыл бұрын
Ai trains this Pokémon from egg lvl 1 to 100
@gargoil06243 жыл бұрын
Get back to grinding lvl 100 boy 😂
@theinfiniteconqueror2 жыл бұрын
Dude, every time you go another step into the simulation it just keeps blowing my mind at the solution you used to solve it. Its amazing to see the process.
@KorgCrimson3 жыл бұрын
Absolutely amazing! Ever talk to the dev's of Pokemon Showdown to see if you can make your AI something players can play against?
@JohnYoo393 жыл бұрын
This so much. Future Sight AI would be an amazing tool to test strategies against and for general training. I'm sure gamefreak would love a dynamic difficulty setting to keep players engaged too.
@KorgCrimson3 жыл бұрын
@@JohnYoo39 this! Heck work for game freak and create an actual hard mode AI for pokemon!
@damsonrhea3 жыл бұрын
@@JohnYoo39 I suspect it's probably too big and slow, and probably has some quirks he has to manage.
@alis65812 жыл бұрын
@@KorgCrimson Original BW had a mode like this I believe but only after yo beat the main story. Idk why they never did this again
@adoniscreed40312 жыл бұрын
@@damsonrhea for now... he can only improve from here!
@TalonFlo3 жыл бұрын
I made a PS ai, too. In fact, it was my bachelor thesis. Also we had the same ideas for many topics. I used JS as well for the exact same reason and Tensorflow. Plus I had the same idea to go over the next turn with the original ps code. There are some differences, too. You went for an Alpha Go approach because the used data is from actual pvp battles. I chose Alpha Zero, meaning I wanted the ai to learn by itself. I only used ai vs ai battles so it learns the game by itself. I think this was the main reason, why your project succeeded and mine failed. The ai battles were slow and I couldn't generate enough data in time. In the end, my neural network was very weird, it always predicted Thunder Wave and I wasn't able to fix that before the deadline. However, there is another difference and I think this idea might help you. I noticed that created teams often followed some patterns. If a team doesn't have a grass type, then it's more likely that the pokémon have grass type coverage. But wait, at a specific turn grass knot wasn't used althought I had Swampert on that turn. Could it be, that this pokémon of the opponent doesn't have the move in the set? I was able to create a system to handle this problem. It's a bit too complex for aKZbin comment but if you want, I can show it via voice chat or something.
@hydrostrikehd46613 жыл бұрын
I know nothing about this field, but why not just combining the two approaches? I mean, now that he has a good AI trained on pvp battles data, he can make it train by playing against itself, can't he? Sorry if i'm asking a stupid question, but once again i know nothing about this and i'm just curious.
@schmeat76093 жыл бұрын
Always predicting thunder wave regardless of the mon in front of you is a valid approach if you're on showdown.
@TalonFlo3 жыл бұрын
@@hydrostrikehd4661 This idea is called Alpha Go Zero. And yes, it is a good idea, however we will face the same problem: We need many, many battles to train the ai. Plus, for PS specifically it might not be a good idea, because human players play differently than the ai, which is a problem when predicting the opponent's moves. To be honest, this is also a problem for my Alpha Zero approach.
@hydrostrikehd46613 жыл бұрын
@@TalonFlo Got it, thanks for the answer.
@mattcroft3 жыл бұрын
"Always predicted thunder wave" the 20XX of Showdown
@Sephiron3 жыл бұрын
Bro how are you so smart? Dayum. Max props for the effort on this video!
@sandroeschen95523 жыл бұрын
Du hier :o
@StarLee_3 жыл бұрын
Lol
@maxdavis3 жыл бұрын
Hi Sephi :D
@drowningin3 жыл бұрын
Florida boy
@josidfin3 жыл бұрын
This is absolutely amazing! Love how you explain it and applied it thus far. Thank you for sharing your mind with us here. Going to have to tell my subs to check this video out
@PrismaAce3 жыл бұрын
not gonna lie, something like this could be really useful to the council
@SchmavidSchmobb Жыл бұрын
I don’t know how often this dude uploads, but I see his videos in my recommended very rarely and I’m always so impressed with his mind, his warmth and his ability to communicate complicated ideas
@bibbobella3 жыл бұрын
This feels like one of my old biotechnology classes. You clearly know what you are talking about, do a great job of explaining what you are doing and how it works and overall are just making it interesting...yet I can barely comprehend the kind of time and effort learning all of this must have taken...
@illusion24383 жыл бұрын
This video needs to blow up. As a showdown player myself this has been one of the most interesting videos I’ve seen. Hoping this hits it big because I’m mind boggled by the work you’ve done here. I play a variant of pokemon called draft league in which each player only has 8-12 possible pokemon to choose from and build a team of 6 and each opponent knows what the other 8-12 pokemon the opponent has. Your AI seems perfect already for something like that as compared to OU you only need to prep for 12 possible pokemon and their sets compared to the hundreds on the OU ladder. Can’t wait to see how you grow this.
@TheThirdBuild3 жыл бұрын
Thanks for the complement! Ah yes, I've been thinking the latter half of your comment for a while, and under my best guess, this AI would be an absolute threat in a draft league! There are so many optimization it could make (and I could add) with only 12 possible foes a match. Once I'm done fixing the current set of bugs, we'll see what it can do.
@phantomstryfe3 жыл бұрын
haha im right there with you, seeing this in draft would be amazing... but it could definitely cause problems too, since leagues are just like tournaments and some owners may not like this being used in their league - i for one know that i am unsure of what to think about it in this regard.
@jeronipuff3 жыл бұрын
it's hitting the algorithm rn
@profchipboard66403 жыл бұрын
On top of that, I imagine you could train the dataset for particular player (though sample size might be an issue there) which could be quite significant when looking at tendencies (i.e. whether somebody clicks pursuit or not).
@TheThirdBuild3 жыл бұрын
That's definitely possible, it's just hard to find enough battles from any one player to train on
@pulkitjain23613 жыл бұрын
Hey man, this is incredible, the sheer scale of what you're doing is just insane. Props to you for having the ability to make this happen! Good luck on your future endeavors and on the AI
@xotrovert3 жыл бұрын
Your chance of predicting whether a player will win is almost the same as stone edges chance of hitting. How poetic.
3 жыл бұрын
50%?
@cellP83 жыл бұрын
*stone miss :´)
@zachrowe62713 жыл бұрын
Though the exact thing. That and focus blast
@pulkitjain23613 жыл бұрын
Nice 30%
3 жыл бұрын
@Zeta Then it is 50%.
@BobWhoosta13 жыл бұрын
Dude, how old are you? The level of thoughtfulness and maturity of your channel is off the charts, not to mention the entertainment value and editing. I'm showing this to all my sons, and we're counting it for school. 1000%
@ZimmervisionCZ Жыл бұрын
This is a jaw-droppingly cool project! I'm very excited to check this out in more detail. I'm looking to learn more about competitive Pokemon play, and a skill-matched AI opponent seems like a great low stakes way to do that. Plus you've got amazing production quality on the video itself. All around incredible work!
@drewbilly9 Жыл бұрын
I love how you number the sources and show them at the bottom left that’s so much easier than how most channels link stuff, super cool video :3
@freezerman71093 жыл бұрын
So I used to play on the generation seven ladder and there is a bot on that named FildrongEstNul. The bot is usually a free win because it uses the same team over and over and makes the most basic plays it can so it became obvious it was a bot(not even a good one tbh) . This is shocking that an A.I. like yours can learn mons so quickly and get top500 to the point it can be disguised as a real player. This is great work.
@perrydimes69153 жыл бұрын
fun fact: fildrong is a huge french pokemon youtuber and the username means "fildrong sucks" in french
@freezerman71093 жыл бұрын
@@perrydimes6915 Ok time to make a bot named BlunderBad which will only click the hardest reads like scizor on CB Vic lol.
@cellP83 жыл бұрын
@@freezerman7109 LMAO
@poke-maniacchris29653 жыл бұрын
I’d love to see a top Pokémon player react to or even challenge this AI like Wolfe or Cybertron
@tlb31m3 жыл бұрын
Tag them lol
@michaeloconnell33253 жыл бұрын
Nah nah, it’s singles, gotta get BKC
@Bayckun3 жыл бұрын
14:30 I’m so happy I watched this video. Not only was it intriguing and entertaining, I always thought of myself as a low ladder player since elo decay starts 1400+ and my peak was only 1400 and I averaged around 1350. This gives me a small confidence boost knowing I’m an upper 25% ish player. Thank you man. 🙏
@mysticuno3 жыл бұрын
I love the attention to detail and the polish in this video, especially the easter eggs in the pseudo-code around 20:39. Really looking forward to the rest of the series!
@lilyposting2 жыл бұрын
When you said 81% accuracy my jaw dropped. AI that does its intended task with 55% accuracy is considered pretty good. That’s insane.
@cellP83 жыл бұрын
Congratulations my friend, KZbin just recommended this masterpiece to me, so expect a lot more people to come. Looking forward to the future of this project, and the most important part is that you are having fun with it :)
@enickma9103 жыл бұрын
This is the most high quality video I have ever seen from someone with fewer than a million subscribers, let alone the fewer than 1000 you have. Your channel has a bright future.
@MAVERICKSHOOTERS3 жыл бұрын
The editing, the structuring of the vid, the idea, the vid itself, all amazing, keep up the work this vid gonna blow up
@archetypeknight7713 жыл бұрын
You've got a good presentation style. Can't wait to see where this project goes!
@LancerVillan3 жыл бұрын
Dude people combining and nerding out about their favorite things is always amazing to watch. You got some talent and dedication cannot wait to the fruits of your labour
@icymiles3 жыл бұрын
The fact that this video only has 227 views blows my mind... This is the craziest thing I've ever seen. You're the goat.
@BarrettC93 жыл бұрын
Looks like your comment was the final push into the algorithm zone because it’s been 1 week and now it’s got 55k
@icymiles3 жыл бұрын
@@BarrettC9 LET'S GOOOOOO
@hucklejoko48383 жыл бұрын
Well well, 2 weeks in an it's at 150k
@BarrettC93 жыл бұрын
@@hucklejoko4838 this is ageing nicely
@cellP83 жыл бұрын
@@hucklejoko4838 almost 200k lol, lets gooo!
@InvisibleTower3 жыл бұрын
When the Go-playing computer was in the news, the first thing I thought of was "show me a computer that can play competitive Pokémon and I'll be impressed." This is awesome!
@BrawlLegendLink3 жыл бұрын
This is absolute awesome work for sure, but the Go AI is so much more difficult and impressive in every ascept. Not trying to talk this down in the slightest, of course that is no competition with a full team of Google AI scientists VS a single dude.
@brzt42563 жыл бұрын
@@BrawlLegendLink It's because AlphaGo was coded in Lua. If this guy switches languages, his AI will be top-tier in no time.
@BrawlLegendLink3 жыл бұрын
@@brzt4256 You significantly underestimate the complexity of Go and the effort behind AlphaGo. Pokemon is magnitudes easier to solve, because most of its numeric complexity covers cases that are trivial to rule out and/or don't play any role in the decision making. Another significant difference is that in Pokemon, only a small subset of moves have any impact on future turns, and if they do it is really straightforward. In games like chess and even more so Go a move that seems poor at the time played even for the best human player can commonly turn out to be brilliant 20, 30, 40 turns later. Pokemon is trivial in comparison which makes it way easier to train a decent AI. Also the language doesn't make much of a difference in the end (except for runtime maybe), at the core it is the same Tensorflow library which does the heavy lifting. Other languages just make your life easier.
@gattabat3 жыл бұрын
@@BrawlLegendLink I agree, but pokemon is far more complex at an actual competitive level. This AI can beat the equivalent of an 'average' player at pokemon, in singles OU. The skill level increases drastically after 1500s, and the distributions aren't actually representative of the communities skill (lots of competitive (>1700s) players ceebs laddering). To make a truly powerful pokemon ai, in other words 'solving' it, you would need to account for all the probabilities.
@BrawlLegendLink3 жыл бұрын
@@gattabat No, it is not. The skill ceiling is fairly low, compared to really hard games such as chess or go it is the equivalent of TicTacToe. It is impossible to brute-force solve even chess, which has much fewer possibilites overall. The difference is: In chess, it is impossible to even guarantee that a certain move is objectively bad most of the time (always whenever it does not lead to a known guaranteed loss). In Pokemon, a 6 year old can tell you that Bodyslam always is better than Tackle. Most options are like that.
@SuperCosmicSpaceMagnet3 жыл бұрын
To be so young yet so bright - I'm absolutely stunned. You're an inspiration!
@litapd3113 жыл бұрын
this is one of the coolest and most impressive videos i've seen on youtube from a small creator. both the coding and video are VERY impressive, and it was really cool hearing you walk through your process and decision making
@dawnip42713 жыл бұрын
Love your brutal honesty that's not rude. You seem chill af down to heart.
@SendFoodz3 жыл бұрын
I'm blown away by this project.. and the AMAZING animations in this video.. the production quality of this video is absolute top tier
@0liviaSama3 жыл бұрын
Incredible ai you've made, this is actually astounding you were able to make this with such high odds. If only the ai could emulate how salty some players get, then it'd truly be a top tier player
@TVBenSifka3 жыл бұрын
This mans fuckin made a win predictor more accurate than focus blast, holy shit
@movingparts62703 жыл бұрын
I've been working on a project like this for months! I'm so jealous and excited someone scooped me, and with such a well produced video. Great job!
@FloTheUIM3 жыл бұрын
As someone who fits into both categories of people - Avid Gamer (long time pokemon fan) and an AI & Data Science Masters student(Python FTW haha) , I thoroughly enjoyed this! Seeing the success rates too was really good, can't believe its your 1st DS project! One thing that really amazed me was the 4th parts ability to essentially summarise the learning from the first 3 and make its own decision but outside of the ML lifecycle, truly amazing stuff!
@Dad......3 жыл бұрын
26:10 I don't know anything about competitive pokemon but that was the hypest Who's That Pokemon segment ever.
@PokemonTrainerOrange3 жыл бұрын
I commented on the other video, but this is truly a work of art-the pokemon draft league community has their eyes on it now, and the very creation of a bot this successful could be really cool for mock battles. I don;t think anyone in the competitive pokemon community has come close to what you have today, we have Porygon which tracks Kills/Deaths in replays and that's about the only notable one. If you had a Patreon to help fund the bot, I'm sure plenty of people would want to help make this the best it can be-it has so much potential. Thank you for putting so much effort into a good bot, a high quality video, and sharing it with us.
@KDM2673 жыл бұрын
Bit late to the party but damn... I develop AI to detect cancer subtypes, and the work you've put in here is Masters if not PhD worthy! Just getting the data clean enough to use would have been the biggest pain in the ass. Congratulations Sir! If I could invest in KZbin channels, best believe I would invest with this one
@MoxieBoosted3 жыл бұрын
I'm so excited to see more updates on this!
@Hyacinth8283 жыл бұрын
That neglecting type prioritization in the beginning was so slick. instead of Gen 1 AI you got an absolute monster of a program.
@nixx79123 жыл бұрын
Gives me Jon Bois vibes but with Pokémon! This is the first Pokémon Showdown content I’ve digested in years and it’s easily some of the best. The information is amazing, the theory and process is described succinctly and the production is smooth! You should be extremely proud!
@sergis5283 жыл бұрын
The production and the program are both so insane, you will go places!
@HittingBandy3 жыл бұрын
"Complex" As Lusamine's Clefable Metronome's herself to death. I remembered Clefable using metronome and both my Machamp and her Clefable was inflicted with a 3 turn death timer
@MidoseitoAkage3 жыл бұрын
You mean, Perish Song?
@KurisuBlaze3 жыл бұрын
@@MidoseitoAkage Meaning Metronome landed on Perish Song.
@Paulluxx90003 жыл бұрын
Me and my friends have discussed this recently, it was great to see how it works, and this video explains it very well. Thank you for taking your time to do this.
@uranium543213 жыл бұрын
I don’t think I can overstate how great this video is. Cool projects like this are what first got me interested in machine learning, and I’m sure this video did the same for some people. Thank you for this video, keep up the good work!
@darkraidisciple87173 жыл бұрын
That team at the end. I recognized Ampharos, Empoleon, Gardevoir and Dragapult. Not 100% sure what the green and orange outlines are but I think they might be Pangoro and Ribombee.
@menghamaster44853 жыл бұрын
Gotta say, I deeply respect that you were willing to say: ‘It’s not perfect but it works!’ in so many parts of your process, too many engineers I know and work with focus too hard on finding the “best” solution and fail to find a solution that simply works.
@Sevenes7-S3 жыл бұрын
Why did the algorithm wait to show us this amazing video? I'm excited to see Top Players challenge your AI build in near future.
@Silver198973 жыл бұрын
I love how you had to add inverse damage calculation after your first attempt to make the AI while that’s actually something players around its elo do all the time. Joey has seen damage numbers and known instantly that something has a Choice Band and the AI just had to catch up. You’re really teachin it the basics of being good at the game.
@crowsong80973 жыл бұрын
This is absolutely amazing. It occurs to me that this could be a fantastic tool to teach battles as well. If it knows which action is most beneficial every single turn, I could see this being helpful for demonstrating ideal choices in every circumstance and to train ourselves to be better at battling as well!
@Engelvontot793 жыл бұрын
Please keep a positive attitude towards being a positive influence and I hope you keep us posted on your future endeavors. Thanks for this amazing video!
@perfecteblu3 жыл бұрын
Very well made video that needs to have more views. I really like how the bot is self learning, so hopefully it can climb the ladder with time! I know you mentioned that the bot had similar win percentages vs all player levels. Pretty interesting to see that even AI can play down to an opponents level. A lot of other people in this comments section are also from this part of the community, but I play Pokémon draft league, and I feel like inverse damage calculation plays a big part in how we view the game compared to ladder mains or even doubles mains. Hopefully the weather ball modifier can help the AI learn lol. It might be worth looking at the showdown damage calc and seeing if you can include code from that to maybe improve the AI. Will definitely be keeping an eye on any future uploads regarding this, keep up the good work bro! :D
@acumence3 жыл бұрын
hi blu
@Flapjack37343 жыл бұрын
Dude, this video is legitimately amazing. I’ve played showdown for years and always wondered just how optimized pokemon could get, and seeing this really scratches that itch. Props!
@nicholaswoel-nogueira40743 жыл бұрын
Hey man this is the best thing I’ve ever seen props to you this is an absolutely amazing idea and you are brilliant. This video is going to blow up and this is so dope
@MosEisleyCantinaStories3 жыл бұрын
Ngl I feel like ur being detailed without talking down, or trying to be a "teacher" I feel like I'm talking to myself. And I love hearing people just explain stuff without being "HAHAHA YOU'RE A NOOB! I KNOW SO MUCH MORE!!!"
@Joshcohen97 Жыл бұрын
Albert!!! My mind was blown when I saw you on this. Excited to see you and not surprised youre still killing it, thanks for the video :)
@Ondas5633 жыл бұрын
I just found this video, and it's absolutely amazing what you've done. This is incredibly impressive and I hope this channel blows up, you definitely deserve it
@linus65873 жыл бұрын
This is incredible. I can’t wait to see where this project goes :)
@Stwinky3 жыл бұрын
This is a really impressive project for someone just starting in ML!
@ssssaintmarcus2 жыл бұрын
This is wild man. Very impressive dedication. You are going places brother
@mango-uj1bq3 жыл бұрын
holy hell this video actually made my day. i am really bad at coding but this video has inspired me to keep working on a runescape bot id abandoned. it is just so exciting to see him explain the genius of the code and i cant wait to see my work pay off as well.
@amphicyon43593 жыл бұрын
Ladies and Gentlemen, this is what passion looks like
@pikaclonegod3 жыл бұрын
Hm, a team of dragapult, ribombee, pangoro, ampharos, empoleon and gardevoir.. Interesting, even if I don't see ampharos putting in a lot of work for OU.. But it'll be interesting!
@mag-bu4vn3 жыл бұрын
Weird Ampharos and Empoleon aren't in swsh?
@RiX20xx3 жыл бұрын
well the AI works around the OU tier instead of VGC, so that might be the reason...
@Zoogore67773 жыл бұрын
That intro made me feel smart. Like as if my years of Pokémon battling makes me a strategy genius. 😂
@noahhkun50972 жыл бұрын
If someone realised it was an AI it would be a lot easier to predict as there would be no randomness and you can be assured it “thinks” of every aspect so it’ll pick the best move, which is very easy counterpredict. However just using it to help you, it’s insane and a really cool project
@laerson123 Жыл бұрын
That's not how things work. At the end of the day, his agent tries to pinpoint the odds of his opponents next play. I didn't saw the whole video yet, but the output of the agent could easily be a distribution of choices that is the best against the distribution of moves of the opponent, and them use a RNG to pick the move.
@shilohmagic7173 Жыл бұрын
for a moment I was so excited, then realized this was *July* and also OVER TWO YEARS AGO
@XellossBoi3 жыл бұрын
5 minutes in, I knew this video was going to be amazing! You've created something spectacular. The graphics throughout the video are also top notch and really illustrate your points well. Thank you for sharing this!
@murphthasmurf59233 жыл бұрын
Cant say I didn’t expect machine learning to get ditched. In my experience it always ends up being training wheels for truly good AI.
@IronicHavoc3 жыл бұрын
I get the impression that would be the case for all but the most large scale/ambiguous/volatile problems.
@wompwompana3 жыл бұрын
this is one of the coolest videos i’ve ever seen in my entire life and just makes pokémon even more fascinating and interesting than it already was. amazing job!!! you’re making our state proud 🍊☀️
@benkesler4873 жыл бұрын
This was incredibly accessible for a video involving machine learning, and an application that is dear to my heart as well. Amazing video!
@maximusm58233 жыл бұрын
The way you explain things comes off as very easy to understand you have a talent for this I hope you go very far your channel deserves way more subs great video quality too
@huangzhenglong89853 жыл бұрын
This is a really interesting project. I do wonder about if the AI is be able to "force" opponent players to make the moves it desires to happen ( a bit like chess ) as a byproduct of predicting their moves, and if this happens consistently.
@scripty62483 жыл бұрын
Dude this is actually insane. Beautiful work.
@joskelegoman71673 жыл бұрын
This really was one of the best videos i have seen in a while!
@Apawstacy3 жыл бұрын
You bring restored honor to the term "Florida Man". So cool! Reminds me of Deep Blue. Props if you make history!
@briancordry81653 жыл бұрын
Incredible vid, can't believe how good your art direction / editing are, on top of how deep the math goes. True talent!