Neat! Couple of things I'd do differently: instead of going to the trouble of calculating speed and angle, just track dx and dy since they only go in straight lines. When they bounce, negate the corresponding delta. Much faster than trig! It might also be neat to have the size of the zigzag be configurable, and find out how small of a revealed area you can pull off :)
@Extramrdo Yes, at higher levels they keep moving when it goes completely black It's how you get those situations of finding 2 out of the 3 boos in a trio and are now scrambling with your stylus to find the last one as you lost track of its precise location
i love seeing minigames maxed out, its so entertaining. im sure someday there will be a 2nd part to this closer to halloween day. where the AI maxes out the mini game
I should really do a video where I fix some of the issues with the old minigame scripts, and try and get as high of a score as possible, because they're not perfect.
Wouldn't it also have been possible to instead take the first e.g. 2 frames, interpolate the speed and angle, then just extrapolate the end position? I feel like that'd be quite the cool solution as well. I also don't think full image recognition is needed here, because the background is always static, it should be possible to simply XOR-ing the background with the current image. OpenCV has a function for this "absdiff" that might be worth checking out.
Unless they *start* overlapped. You'd still want the corroboration check until you're at least certain they're isolated, maybe a value of +5. Even then, it's *possible* they start overlapped and stay overlapped for a long while. Also the time the lights are on and the time after the lights go off vary, so you'd at least have to check for the "Go!"
Screen swipes are quite wide, I was expecting a small square/triangular swipe around each boo. With how fast it swipes the cursor, may as well to reveal the darkness completely for a guaranteed win, no path prediction needed.
Ay very cool. Maybe when they interact, you could add code that draws a slightly bigger box (based on how many) to temporarily cover multiple, in case the light turns off at that time
@cosmosspacecentertelevision mb i was talking about later Luigi's Mansion games with the gooigi thing that's basically a semi sentient helping you out in Luigi's Mansion 3
I wonder if there's a most optimal amount of boos on the screen, such so that it takes the longest to find them all but small enough of a number you don't accidentally find the others by swiping across your screen
Maybe you could try prioritizing the Boo model with the least corroberation, since that was the Boo with the most overlap: i.e: there were other Boos around there that could be captured earlier. Then, you go for the ones with the most corroberation, since the extra ones you would have hopefully captured early would have low corroberation.
This is an interesting direction to take this. I'd be interested to see how a neutral network would be able to do. I know it would be unfeasible since it would take a huge amount of compute power to get it running continuously on real-time visuals while also recording it for (as in your case), but this is one of those use cases AI is good for; making it so that the system can learn complex patterns without having to approximate the paths mathematically.
While I understand the urge to do this „properly“, I wonder if it wouldn‘t be a lot easier to just let the program clear the entire screen? Or does the emulator not allow for fast enough mouse movement?
I ran into problems getting the "DS" to register the mouse movements quickly enough. But there is a TAS that does this already, and it would take the fun out of the project. Good question though!
This is awesome! I'm always so impressed with people's coding skills, especially since I can only code in Scratch, and even then, I'm just decent. What if you tried to write a program that tried to be the next Koji Kondo (I don't expect this idea to be taken seriously, but I'd be seriously impressed if you managed to do it xd)
Why not just draw a horizontal and vertical line on the screen and when the boo passes by just make it tap it when it does lol Curious if that would work
theres just know way i could make this script, btw remember how i told you about my programming language, it was interpreted and know i made a compiler that compiler it to python
@@CodeNoodles Thanks! it was really cool to make it, im pretty sure thats a compiler not a tranpiler but i say that because most people think that compilers convert code to binary immediatly but it first compiling to assembly then assembling into binary then linking it all.
If it ever works well enough, we need a livestream of this program running 24:7 just to watch it progress like watching DVD icon getting closer and closer to hitting the corner of the screen. Every time it hits a new record I would get another burst of serotonins.
Can you just drag the cursor across the entire screen with your script to have a 100% guaranteed win rate ? I understand that it's much less interesting but I think it's still fun to show that you can break the game easily (if you can)
Ah, I see. You know where it is because you know where it isn't. By subtracting where it is from where it isn't, or where it isn't from where it is (whichever is greater), you obtain a difference, or deviation. ...That copypasta should never feel relevant to anything...
@@SwitchyWitch_ its always pretty much "i added image recognition and prediction and oh no problems came so i took a long time to fix them so now it works"
Neat! Couple of things I'd do differently: instead of going to the trouble of calculating speed and angle, just track dx and dy since they only go in straight lines. When they bounce, negate the corresponding delta. Much faster than trig! It might also be neat to have the size of the zigzag be configurable, and find out how small of a revealed area you can pull off :)
one of the problems i am suprised that didnt come up was the fact that the boos also bounce off of the light when the light is off.
What, the boos keep moving?
@Extramrdo Yes, at higher levels they keep moving when it goes completely black
It's how you get those situations of finding 2 out of the 3 boos in a trio and are now scrambling with your stylus to find the last one as you lost track of its precise location
he remembered his password🔥
I did 😆
@@CodeNoodlesFinally, would it be possible to vids like this on more recent games like Jamboree
It has been ONE MONTH
God yall are so impatient, joke or not
@@Bupboy its a joke
@@payow_ yeah I covered that base
i love seeing minigames maxed out, its so entertaining. im sure someday there will be a 2nd part to this closer to halloween day. where the AI maxes out the mini game
I should really do a video where I fix some of the issues with the old minigame scripts, and try and get as high of a score as possible, because they're not perfect.
@@CodeNoodles agreed. 3 seconds ant enough for 999 but it he fun to see a highest possible score on Halloween
thanks for putting music credit in the description!! i love qumu and i wanna see them get the credit they deserve :3
Wouldn't it also have been possible to instead take the first e.g. 2 frames, interpolate the speed and angle, then just extrapolate the end position? I feel like that'd be quite the cool solution as well.
I also don't think full image recognition is needed here, because the background is always static, it should be possible to simply XOR-ing the background with the current image. OpenCV has a function for this "absdiff" that might be worth checking out.
Wow those are cool ideas!
big wrinkles in yo brain
Unless they *start* overlapped. You'd still want the corroboration check until you're at least certain they're isolated, maybe a value of +5. Even then, it's *possible* they start overlapped and stay overlapped for a long while.
Also the time the lights are on and the time after the lights go off vary, so you'd at least have to check for the "Go!"
Screen swipes are quite wide, I was expecting a small square/triangular swipe around each boo. With how fast it swipes the cursor, may as well to reveal the darkness completely for a guaranteed win, no path prediction needed.
but that wouldn't have been as funni :(
I was so excited to see this becoming a video! Omg I hope more SM64DS/NSMBDS minigames become image recognised. Awesome video
This is fascinating, amazing how you were able to code this. Really cool video.
Thank you, I really appreciate it!
Ay very cool.
Maybe when they interact, you could add code that draws a slightly bigger box (based on how many) to temporarily cover multiple, in case the light turns off at that time
That's a really good idea!
you forgot the other "B" in the title in Boos
Lol
that's just making a tas for Nipple% in Mario Odyssey
Not funny.
BoosB
@@GamingLoodsAlmere
Bobs
Bbos
this is oddly satisfying to watch
Isn't AI replacing Luigi basically the plot of Luigi's Mansion (Goouigi)
Lol, I didn't think of that 💀
wtf are you saying, the plot of Luigi's Mansion is Luigi is in a manor with ghosts
@cosmosspacecentertelevision mb i was talking about later Luigi's Mansion games with the gooigi thing that's basically a semi sentient helping you out in Luigi's Mansion 3
I wonder if there's a most optimal amount of boos on the screen, such so that it takes the longest to find them all but small enough of a number you don't accidentally find the others by swiping across your screen
I love your videos but any shot you can make them smaller scope so they can come out more often? Fr love your shit just want you to make more
Sure! I really appreciate the support!
nice alternative to clearing all the screen
NEW VIDEOO LETS GOOO
Why do you determine separately the speed and the angle of the boo ? Why do you not simply determine its velocity vector ?
You could drop the trigonometry completely to simplify this - and simply track the x and y deltas and flip as the ghost is predicted to bounce
is there not enough time in each level to erase the whole screen super fast every level? love your videos btw
It struglles to draw 5 boxes within 5 seconds let alone the whole screen.
Idk how to code, but i can see how people can take inspiration from things like this
I love this, that's so cool !
I love these videos, made my day better seeing it, genuinely
With how fast that zigzag is, wouldn't you be able to trivialize the whole thing by just zigzagging over the entire screen?
Maybe you could try prioritizing the Boo model with the least corroberation, since that was the Boo with the most overlap: i.e: there were other Boos around there that could be captured earlier. Then, you go for the ones with the most corroberation, since the extra ones you would have hopefully captured early would have low corroberation.
Would it be feasible to just get program to draw over and reveal the entire screen in less than a second to always get all of them? lol
why do you use image recognition though? thats not necessary because of the static background.
It's very accurate and doesn't require very much processing because of the low resolution. But yes, I could have used a different method.
This is an interesting direction to take this. I'd be interested to see how a neutral network would be able to do. I know it would be unfeasible since it would take a huge amount of compute power to get it running continuously on real-time visuals while also recording it for (as in your case), but this is one of those use cases AI is good for; making it so that the system can learn complex patterns without having to approximate the paths mathematically.
Hundreds or thousands of lines to approximate a circle with straight lines???
That's what I was thinking lol
YOU'RE BACK
While I understand the urge to do this „properly“, I wonder if it wouldn‘t be a lot easier to just let the program clear the entire screen? Or does the emulator not allow for fast enough mouse movement?
I ran into problems getting the "DS" to register the mouse movements quickly enough. But there is a TAS that does this already, and it would take the fun out of the project. Good question though!
Oh it would be a lot less fun for sure :D
If UA-cam isn’t your full time job, what is?
Nice job
Next level: minimize the squiggly draw pattern for boos close enough to each other :)
This is awesome! I'm always so impressed with people's coding skills, especially since I can only code in Scratch, and even then, I'm just decent.
What if you tried to write a program that tried to be the next Koji Kondo
(I don't expect this idea to be taken seriously, but I'd be seriously impressed if you managed to do it xd)
What or how do you get the timing correct on the games like these when the games dont start everytime the same way or same timer?
awesome vid, please lower the music volume next time, it's too loud
Maybe a Kalman filtert could further improve your results
So why did the program fail on that last level? Did it fail to figure out the location of that last Boo?
@@GoldenSandslash15 two boos were close and that confused it, is what probably happened
Is the mouse moving fast enough to brute force the game by lighting up the entire screen?
Loading save states why?
whats the program used for the visual equation?
Why not just draw a horizontal and vertical line on the screen and when the boo passes by just make it tap it when it does lol
Curious if that would work
Well, 20 is better than I could do.
theres just know way i could make this script, btw remember how i told you about my programming language, it was interpreted and know i made a compiler that compiler it to python
That's awesome! It sounds like you made a Python transpiler, which is something I'd like to try at some point.
@@CodeNoodles Thanks! it was really cool to make it, im pretty sure thats a compiler not a tranpiler but i say that because most people think that compilers convert code to binary immediatly but it first compiling to assembly then assembling into binary then linking it all.
3:07 ahhh not math again
The simple solution is to just completely uncover the screen within the time limit.
If it ever works well enough, we need a livestream of this program running 24:7 just to watch it progress like watching DVD icon getting closer and closer to hitting the corner of the screen.
Every time it hits a new record I would get another burst of serotonins.
Couldn't you just swip the entire screen and reveal all the Boos at ones?
Thanksgiving Video when?
using image recognition to find mario boobs 😼
You're running out of Minigames to do!
... Fortunately other games like Mario Party DS exists :D
Me with a robot: Reveal the entire screen
Can you just drag the cursor across the entire screen with your script to have a 100% guaranteed win rate ?
I understand that it's much less interesting but I think it's still fun to show that you can break the game easily (if you can)
awesome
Ah, I see. You know where it is because you know where it isn't. By subtracting where it is from where it isn't, or where it isn't from where it is (whichever is greater), you obtain a difference, or deviation.
...That copypasta should never feel relevant to anything...
never got over 6 rounds
👇
Code Bootles
Dumb question, but why not just cover the entire screen?
Moving the cursor too fast will cause it not to register correctly. It’s more efficient this way, meaning you can last longer.
Ai finally stole my job
nice
please continue 2d minecraft! make a multiplayer system!
why would you do this to us :(
AYEEE
His 🔥 password remembered he
can't you just ditch the image recognition and just clear the whole screen real fast with your bot?
Why not just use a comically large stylus
I kinda feel like you could clear the entire screen within the timer. It doesn't make an interesting coding video, but hey
teach an ai angry birds epic
the squares are too big 😢
Considering your using a script, couldn't you just make it zigzag over the whole screen? lol.
video starts at 6:40
skipping all the interesting parts?? how lame!
@@SwitchyWitch_ its always pretty much "i added image recognition and prediction and oh no problems came so i took a long time to fix them so now it works"
More like hide and boossy’k
yippiee
ai voice??
no
first