I have a question. Why can't it handle concave shapes?? I imagine it's bc the collision detection goes screwy with concave shapes, but I have no idea why
@@nikkiofthevalley collision detection only works for convex shapes. box2d tries to convert the concave shape in a convex shape, but its hard for an algorithm to automate this process.
Indeed, exactly my thoughts. It bolsters yourself so much, if you see how a good programmer tests out things. As a hobby programmer im often depressed how much time is needed for incorporate into new frameworks. Great video! :-)
Cannot really create an ai for an excisting game, because you cannot read data from that game. So you'd have to do it by hand, tell who did better and what the fastest route is... So doing it this way is 1. more fun to watch for us 2. Probably "fun" to create and 3. easier for the ai to use and learn
you’re one of the few channels I respect nowadays. you easily could have extended this video to 10 minutes for extra add revenue but you can see you are doing this to entertain and teach rather than to make tons of money. mad respect
Love your stuff, can't wait to see the AI. You have made it really easy for me to start experimenting with AIs. Already made one with a neural network that can play naughts and crosses and am working on more. Thank You
@@ahreuwu You mean... paint with a fun font? 😂 I agree but I couldn't care less. It actually fits the channel😅😅 And who knows, maybe it's placeholder? (Probably not)
I love this channel more than I should, I really wish this took less time so we could see more videos but it’s still awesome nonetheless!!! Also makes me want to attempt to code myself lol
excellent vid, I really enjoy your content. Used to code myself, all I can say is...No, never again. But it's very nice to watch you solve your problems when you make mistakes. Brings me back to my experiences. Thanks again, looking forward to more. Subbed
You code like me ... 3 hours later ... "Why? Whyyyyyyyy? Please just work. What if I run the exact same code again, maybe it'll work differently? You filthy piece of .... oh, it works. Moving on". By the way, on your course, did they not ever pull you aside and force you to make the choice? You can either have a personality or you can code. YOU CANNOT HAVE BOTH! You choose coding, they give you your regulation sandals, woolly jumper and Star Trek box set and you settle into a life of mind-numbing futility trying to reason with a computer everyday. I think of it like a never ending game of 'Simon Says'. 1- Make some circles. 2 Please make some circles? 3. I told you to make circles. 4 Simon says make some circles ... oh, now you are making circles. At last, onto the next thing.
Seriously though, when there's that one obvious looking problem that you can't fix. For example: if elementA = elementB: that simple statement never branched in one of my recent codes i made so i had to re-do and simplify like 80 lines of a part of a code. Maybe isn't much but simplifying something when you already code simplisticly and efficiently is some hard shit to do. Bitch coding errors can be so annoying sometimes. ESPECIALLY if the issue is something as simple as ''if a = b'' and everything points towards that one ''if'' statement but the issue lies somewhere else, somewhere far away.
I love this game and watching you build some abomination that vaguely resembles it was very fun! I’ve watched you for weeks, but never subscribed til now... Subscribed!
I love how you just casually say what you're going to do, as if it'll be super simple. And then you type a bunch of code and it just blows my mind. You could be writing a completely made-up language and it would make more sense to me than this. Like, seriously, dude, how? How are you so smart?
One of the main things that seems to be missing is the ability to rotate the car by means other than torque being caused by force not through the center of gravity. In the game, by hitting the gas, the car rotates counterclockwise and by hitting the breaks it rotates clockwise independent of the torque. This allows for control of the car in the air.
I recommend having a force on the wheel and reaction force on the car to keep the wheel in place, scaling by distance from intended position by suppose d^4
Tips: 1. In the original game, when you hit gas or brake mid-air, you are able to rotate the car, allowing you to manipulate your car to land on its wheels not the driver's head, also flips/backflips. 2. Tracks in original game are not randomly generated... they are in the game's data, and they loop. well,... each time it loops it scales the terrain a bit so that pits are deeper and slopes are steeper...
Loving these A.I. videos, maybe consider doing some udemy courses (even if they cost a little) in which you go into greater depth on how you develop the actual machine learning models that play these games.
One thing I've had a hard time creating is a bouncing ball that ends up at the same height that it dropped from. If anyone reads this, how do you program that? I'm talking about from scratch.
I love these videos, watching you create code is like watching Bob Ross paint, it’s like “wut the fuck is dis” to “HOLY SHIT THATS AWSOME” and these AI videos are fun to watch as we watch said AI grow and develop, anyway great vid 👍. (#allonesentence)
I have a coding question unrelated to AI. How would one begin making a bot that presses a button on a website? While I don't mean something like a "like" or "retweet" bot, it is the closest thing I can really think of. I have some minor experience in JavaScript, but not to any tangible extent. I have a decent amount of experience in Java and Python, and while those obviously help the understanding of scripting, I have no idea how to begin referencing entities on a web page. I suppose I'm looking more for resources rather than any real advice, but any help is appreciated.
Java and Python are really good for machine learning, and are my go to languages for that, but for referencing DOM elements, JavaScript is probably the most convenient for beginners. If anyone has any objections to this with evidence backing up their claim, please correct me. But to answer your question, probably the easiest way you can access DOM elements is to give the element a unique class or id, then use the code *var [yourElement] = document.getElementById* or *var [yourElement] = document.getElementsByClassName* to get the corresponding element for that class name or id. For instance, you could create a button with the id "likeButton" and use *document.getElementById* to access the button with that id. *Document.getElementById* isn't the best way to do it, but I figure you can do optimizations on your own after you get a working version. Also, I'm not willing to post any links in my comment, as UA-cam has a nasty habit of ghosting comments with links in them sometimes, but Googling "javascript dom elements" should bring you to the w3 link with the similar name. You can read more on it there and try it out in the browser. I feel like I didn't explain it well, and I want to try again before sending this comment, but I'm in a lot of pain, and I have a date with a heating pad. Good luck! p.s. You can also access elements by their type, meaning you can grab buttons directly. That link from w3 schools have that example on that page.
Using jquery is probably the easiest way to grab something on a webpage. $("#buttonID").on("click", function() … or to get the 'AI' to just click it use the trigger function $('#buttonID').trigger('click'); Don't forget to enable jquery on the page first
Pyautogui let's you control the mouse/keyboard In python. pyautogui.readthedocs.io/en/latest/ you could literally get the website open and run a while loop that clicks the mouse X times a second However you wouldn't be able to do anything else at the same time because the mouse is always clicking, no matter what screen you have open
Your channel could've just been about recreating games, that would've been enough! Thats awesome that you don't stop there, and recreating games is just a part of whats to come in videos "AI learning", so... Good job!
It's about the technique you're proposing. "observe numbers via RAM" to controll a game directly rather than making your own game with API for your AI to control it. That's what I would be interested in, but I couldn't find anything useful.
Omg that is P5JS :DD Nice choice, The Coding Train is a beautiful channel, like your Also, another sort of 2D engine available to use in P5 is Three.js, very much used and maybe nicer than Box2D
“Box2D is incredibly powerful”
“Box2D can’t handle concave shapes”
Yeah
I have a question. Why can't it handle concave shapes?? I imagine it's bc the collision detection goes screwy with concave shapes, but I have no idea why
@@nikkiofthevalley collision detection only works for convex shapes. box2d tries to convert the concave shape in a convex shape, but its hard for an algorithm to automate this process.
roblox > Box2D
1:37 I got wheels, they're multiplying, and I'm losing control~
967patty oh wooow
There's a joke here and I don't get it...
its too late, the coup has already begun...
and now, the weather
‘Cuz the power you’re supplying, it’s electrifying!!
I like that you show all the failures before you succeed.
When did he succeed?
That success happened when? *It is very relatable*
Jason Ho He probably meant in general. Anyways in the end (next parts) it's pretty obvious he is going to succeed.
Indeed, exactly my thoughts. It bolsters yourself so much, if you see how a good programmer tests out things. As a hobby programmer im often depressed how much time is needed for incorporate into new frameworks. Great video! :-)
Before you realease you mean.
"Ok, go."
>syntax wrong
"Ok, go."
>syntax wrong
"Ookkkkaaaay, go!"
>it's in the wrong direction
Now THAT'S a relatable coding experience.
@Qwimpy very relatable
Yep. Every coder's life.
I have done only basic Javascript training and that’s so relatable
ua-cam.com/video/dQw4w9WgXcQ/v-deo.html
Shoto Todoroki i thought this was a rickroll
Damn, he actually just makes the game first before the ai. That is a shitload of work. Kudos to you CB
Cannot really create an ai for an excisting game, because you cannot read data from that game. So you'd have to do it by hand, tell who did better and what the fastest route is... So doing it this way is 1. more fun to watch for us 2. Probably "fun" to create and 3. easier for the ai to use and learn
@@mrkirby8622 unless you're using vision based AI. Way more complicated and takes heck of a lot more time. But is infinitely more generic.
@blupilot1 Well, access memory.. This is a browser game, It's not just... a pain... 😂😂
well, open source games would be a good option as well. at least if the game is written half-way decently and in a language you know..
@@mrkirby8622 Cheat Engine?
You should make an ai that plays doodle jump.
David Lynch good idea
Yesss
David Lynch (That plays doodle jump well)
(Could should probably would)
(Just maybe if we asked politely)
"owch
owch
owch
owch
owch
owch
owch
owch
owch
owch"
- Console
Sup bro I subbed! :)
IT'S ALIVE AND IT HAS FEELINGS
XD
I appreciate simple games so much more after watching this
Come back to the Discord Server Code Bullet!
We miss you
"Many car like abominations later" made me laugh so hard!
"Do you want to learn how to make games like this"
...no.
This made me laugh
you’re one of the few channels I respect nowadays. you easily could have extended this video to 10 minutes for extra add revenue but you can see you are doing this to entertain and teach rather than to make tons of money. mad respect
Always waiting for a new vid I love them keep me coming lol
Mocee 0 the videos keep you coming?
Sounds hot xd
I remember when that game was like "THE SHIT".
It was pretty fun.
@@TheB2100 the same thing was with hovercraft
Do AI learns to play Plants VS Zombies
is it even possible?
he'd have to code it which would take forever
definitely should do this!
need an rnn
He gotta make an AI with learns the plants and learns the zombie itself.
Love your stuff, can't wait to see the AI. You have made it really easy for me to start experimenting with AIs. Already made one with a neural network that can play naughts and crosses and am working on more.
Thank You
Hey dude thanks for making these I can’t imagine the time it takes and I am so glad you do these, there so fun to watch
Many, many tears later...
2:00
Hahaha that arm snap sound effect tho
The thumbnail look like it's was made by a 12 years old boy
Keep making your thumbnail like that
rocky ben thats literaly the original game
@@franmesic5205 they mean about the thumbnail itself, it has like only 30 seconds of time spent in photoshop lol
@@ahreuwu You mean... paint with a fun font? 😂 I agree but I couldn't care less. It actually fits the channel😅😅 And who knows, maybe it's placeholder? (Probably not)
he's 7 so he is atleast above average
@@riomcneil4727 eh
This is one of the funniest ones you have made. Ive got tears. Love it
I love your channel bro!
I love this channel more than I should, I really wish this took less time so we could see more videos but it’s still awesome nonetheless!!! Also makes me want to attempt to code myself lol
Now this is the quality content I subscribed for!
Time lapse coding is so fun and satisfying to watch ^^
"baby steps" as he implemented a shit ton of code that I don't understand. Still luv ur vids.
I understand what the words mean
They're "anglesh"
Someguy1237 thanks for the info!
excellent vid, I really enjoy your content. Used to code myself, all I can say is...No, never again. But it's very nice to watch you solve your problems when you make mistakes. Brings me back to my experiences. Thanks again, looking forward to more. Subbed
probably the best video to come out of this channel. keep it up!
And I thought I knew how to code...
4:05 *punches hand*
Code Bullet: *delayed reaction* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Been subbed since first vid keep up good work
“I have other things I want to do this year” is now my excuse for everything
I have never laughed at a video so much before😂😂
I love this channel, it is so fun to watch, keep it up my guy!
You code like me ... 3 hours later ... "Why? Whyyyyyyyy? Please just work. What if I run the exact same code again, maybe it'll work differently? You filthy piece of .... oh, it works. Moving on". By the way, on your course, did they not ever pull you aside and force you to make the choice? You can either have a personality or you can code. YOU CANNOT HAVE BOTH! You choose coding, they give you your regulation sandals, woolly jumper and Star Trek box set and you settle into a life of mind-numbing futility trying to reason with a computer everyday. I think of it like a never ending game of 'Simon Says'. 1- Make some circles. 2 Please make some circles? 3. I told you to make circles. 4 Simon says make some circles ... oh, now you are making circles. At last, onto the next thing.
Relatable
Seriously though, when there's that one obvious looking problem that you can't fix. For example: if elementA = elementB:
that simple statement never branched in one of my recent codes i made so i had to re-do and simplify like 80 lines of a part of a code. Maybe isn't much but simplifying something when you already code simplisticly and efficiently is some hard shit to do. Bitch coding errors can be so annoying sometimes. ESPECIALLY if the issue is something as simple as ''if a = b'' and everything points towards that one ''if'' statement but the issue lies somewhere else, somewhere far away.
just give me a break already. why can't code just fix itself when you run it...
@@TechSupportDave was the error you used "=" and not "==" in the if statement?
I love this game and watching you build some abomination that vaguely resembles it was very fun! I’ve watched you for weeks, but never subscribed til now... Subscribed!
I love how you just casually say what you're going to do, as if it'll be super simple.
And then you type a bunch of code and it just blows my mind.
You could be writing a completely made-up language and it would make more sense to me than this.
Like, seriously, dude, how? How are you so smart?
One of the main things that seems to be missing is the ability to rotate the car by means other than torque being caused by force not through the center of gravity. In the game, by hitting the gas, the car rotates counterclockwise and by hitting the breaks it rotates clockwise independent of the torque. This allows for control of the car in the air.
Congrats on getting sponsored!
Good luck for your future, Evan! Keep up the good work!
I did computer science for my GCSE's, though the theory was easy the coding was difficult... really difficult.
you videos are getting me excited for programming. ganna go to school for it soon, suuper excited.
Is it just me, or do you sound like Adam from SomethingElseYT?
There are some slight differences
He does
Yea
I recommend having a force on the wheel and reaction force on the car to keep the wheel in place, scaling by distance from intended position by suppose d^4
Tips:
1. In the original game, when you hit gas or brake mid-air, you are able to rotate the car, allowing you to manipulate your car to land on its wheels not the driver's head, also flips/backflips.
2. Tracks in original game are not randomly generated... they are in the game's data, and they loop. well,... each time it loops it scales the terrain a bit so that pits are deeper and slopes are steeper...
Loving these A.I. videos, maybe consider doing some udemy courses (even if they cost a little) in which you go into greater depth on how you develop the actual machine learning models that play these games.
AI learns to dodge ninja stars: ua-cam.com/video/ESdkBmqNAK8/v-deo.html
One thing I've had a hard time creating is a bouncing ball that ends up at the same height that it dropped from. If anyone reads this, how do you program that? I'm talking about from scratch.
Dude it sounds like you had 42 headaches and a half, and 69 more in part two! Great work man! Can't wait to see the AI at work!
come drop a "hi" on your discord ;-; the discord community misses you
Holy shit I've been watching you from 9 months?! Keep up the great work man
You are hilarious. I enjoy your videos so much. Keep up the great work!
how many times did you punch your head into the keyboard while debuging?
I'm no programmer. Don't know what you are doing in code. But hell, your narration is so entertaining. Subscribed.
I love these videos, watching you create code is like watching Bob Ross paint, it’s like “wut the fuck is dis” to “HOLY SHIT THATS AWSOME” and these AI videos are fun to watch as we watch said AI grow and develop, anyway great vid 👍. (#allonesentence)
When you get first view but don’t notice until 3 minutes in
Nice taste in music, I'm not even kidding.
omg. omg. omg. a new video!!!!!!
I can always watch you when im sad, and be happy after the video :D
I have a coding question unrelated to AI. How would one begin making a bot that presses a button on a website? While I don't mean something like a "like" or "retweet" bot, it is the closest thing I can really think of. I have some minor experience in JavaScript, but not to any tangible extent. I have a decent amount of experience in Java and Python, and while those obviously help the understanding of scripting, I have no idea how to begin referencing entities on a web page. I suppose I'm looking more for resources rather than any real advice, but any help is appreciated.
I want to know as well
Java and Python are really good for machine learning, and are my go to languages for that, but for referencing DOM elements, JavaScript is probably the most convenient for beginners. If anyone has any objections to this with evidence backing up their claim, please correct me.
But to answer your question, probably the easiest way you can access DOM elements is to give the element a unique class or id, then use the code *var [yourElement] = document.getElementById* or *var [yourElement] = document.getElementsByClassName* to get the corresponding element for that class name or id.
For instance, you could create a button with the id "likeButton" and use *document.getElementById* to access the button with that id.
*Document.getElementById* isn't the best way to do it, but I figure you can do optimizations on your own after you get a working version. Also, I'm not willing to post any links in my comment, as UA-cam has a nasty habit of ghosting comments with links in them sometimes, but Googling "javascript dom elements" should bring you to the w3 link with the similar name. You can read more on it there and try it out in the browser. I feel like I didn't explain it well, and I want to try again before sending this comment, but I'm in a lot of pain, and I have a date with a heating pad. Good luck!
p.s. You can also access elements by their type, meaning you can grab buttons directly. That link from w3 schools have that example on that page.
Using jquery is probably the easiest way to grab something on a webpage. $("#buttonID").on("click", function() … or to get the 'AI' to just click it use the trigger function $('#buttonID').trigger('click'); Don't forget to enable jquery on the page first
there is an easy way in python 3 as well. Try to look smth about web drivers. All you need is Selenium library.
Pyautogui let's you control the mouse/keyboard In python. pyautogui.readthedocs.io/en/latest/ you could literally get the website open and run a while loop that clicks the mouse X times a second
However you wouldn't be able to do anything else at the same time because the mouse is always clicking, no matter what screen you have open
Love the music choices
Hey, if you like code bullet you might like my content too. Let me know what you think!
If I had to use that engine I think I would eat an entire container of Tide pods.
Saw it, clicked it, laughed, Oh, gotta watch Part 2 now
*checks date*
Damn it, was so excited for Part 2.... :(
YOU GOT AN ADD!!!! Good for you, welcome to the big leagues.
Fucking love you man! FUCKING love your commentaries. That's all I needed!! Subcribed!✌👍
Notification gang
Your channel could've just been about recreating games, that would've been enough! Thats awesome that you don't stop there, and recreating games is just a part of whats to come in videos "AI learning", so... Good job!
Hey, if you like code bullet you might like my content too. Let me know what you think!
Come back to the Discord plz dude :(
No idea idea what are you writing in that text editor, but your voice over is absolutely enjoyable!!
why did you select box 2D knowing it was extremely annoying, hard and irritating
What do you recommend?
@@Swanicorn unity
:D you definitly are having fun doing this, you're happiness is contagious ;-) Thanks for making it fun to program for new generations!!!
The 5 dislikes are probably the AI's lol
I used this game a bunch, super cool to see an AI playing it now!
Sorry to disappoint you, but for now its a human.
Yeah I realised after I finished the video, I commented beforehand :P
I love your channel, but you really need to just observe numbers via RAM, and have the AI actually play the game, instead of you making your own.
Hey, this sounds interesting. Can you share some pointers like articles or google key words? Thanks!
@@vlkodrak1987 sorry, I didn't understand what you meant. Can you repeat that?
It's about the technique you're proposing. "observe numbers via RAM" to controll a game directly rather than making your own game with API for your AI to control it. That's what I would be interested in, but I couldn't find anything useful.
@@vlkodrak1987 pretty sure he's just making shit up lol
Don't think we'Ve forgotten about the second part of the Enjgma machine video!
0:54 looks pretty accurate, just model the car as a motor bike and the landscape as the moon, done!
This is legitimately hilarious, love your vids
Omg that is P5JS :DD
Nice choice, The Coding Train is a beautiful channel, like your
Also, another sort of 2D engine available to use in P5 is Three.js, very much used and maybe nicer than Box2D
5:48
Evan: Oh no
Music: Oh oh oh oh
"And you can hit it with balls" Code Bullet, 2018
I love you, that 7:15 caught me off guard :D
your issues gave me the laugh I needed today
I'm trying to program a NEAT library. Thanks for more videos related to my project! XD
1:27 CRAKCS HIS VOICE XD
I've been waiting for this forever
This guy is a freaking code wizard
Awesome! Your videos are so much fun! Thanks!
Literally the best channel on UA-cam
Man, I like to say that I’m amazed by anything you do in every your video. I don’t know shit about coding, but you seem to be good as hell at it
You never cease to amaze me
I found you by looking up coding cuz I am going into CyberSecurity and ur one of my fav youtubers.
This basically sums up my whole school year xD always making wrong code in JS and after 10 years you finally found the most obvious answer
Hey, if you like code bullet you might like my content too. Let me know what you think!
This is why I'm subscribed haha good stuff!
Loved the vid! Looking forward to seeing part two ✌️
amazing video like always mate
This is the best series on the channel
Already liked before watching, know its gonna be good!
People think programming is some glorious activity with flashy lights and music montages, when in reality 3:20 to 3:45 sums it up perfectly.
1:03 - 1:08 subtitles are so funny! "Platform for doctor to bounce on" and more! Only 0.99! Ok idk
Balin, 😂😂😂 i laughed so hard on this one, good video man 🙂