In the original Suika game, two watermelons annihilate each other allowing for the possibility of an infinite score. Seems a little like making the game too easy, but making two watermelons is actually insanely hard for humans. I would love to see how far the AI can go with this new rule.
Is it insanely hard? I have played 2048 few times and it's not that hard. Watching that AI play there, it looked like it was making really stupid mistakes. My main problem with 2048 has been RNG rather than messing up. Last version of 2048 that I played was about combining alcohol.
@@justskip4595the added physics to these fruits is what make this game tricky or sometimes some fruits just get launched off causing you to lose instantly
Yeah, them lazy kids don't want to make omelette so you kill a few to tell them what's gonna happen if there's no omelette on that plate by the time you get back. 😂😂
Plenty of people have identified the double watermelon effect wasn't right. The one that bothered me was the lose condition. It's not when a fallen fruit touches the held fruit, it's when any fallen fruit leaves the play area at all.
@@raffimolero64 I'm not totally sure; I've gotten the impression that it when the top of the fruit is a certain amount above the apparent top of the play area.
So many people have pointed out that 2 watermelons annihilate each other, which would allow his AI to get an even better score. HOWEVER, in the actual game there are a few complications he didn't include. For one thing, the fruit hit boxes are NOT all circles. Grapes in particular have a very irregular hit box that causes them to be very annoying. Secondly, the fruits have different and odd weight values that can make them push other fruits around. Thirdly, it's actually impossible to drop larger fruit on the far sides, because they hit the lip of the cup and bounce inward. Finally, and most importantly, is Fruit SpaceX. In the actual game, when two fruit combine, they merge into each other, very rapidly. So rapidly that if a light fruit is sitting above the fusion in just the wrong way, that fruit can get launched out of the jar at escape velocity and it's game over. This kills so many runs, and all of these factors would make reaching that AI 2 watermelon goal a lot harder. All in all, though, really good job with the programming, and your usual awesome level of comedy in the video.
Good thing switch has a very good emulator. People who is good at modding switch game should be able to transplant this AI to train on the actual game.
The cherry on top would be random fruit. The AI is basically running the exact same game with saves and checkpoints. +haha Understanding the best positions for random fruit, and potential future fruit, is overkill for a fun YT video and asking the impossible from CB, though.
Also idk if anyone said this yet, but fun fact, in the actual Suika game, when two watermelons touch, they disappear. It's kind of weird but it will probably allow for your AI to get an infinite score, which would be cool to watch.
Surprisingly, nobody has mentioned the most important difference between this and the real game, which is that in the real game you can see which fruit is next in your queue. This is the sole factor that makes the game significantly skill based.
I *think* the order is the same for every run, otherwise the generational approach wouldn't work, for a neural network approach that would be something to take into account, as well as maybe letting the AI wait for things to settle or move around, but that would be a lot of inputs and very complex
@@rupertdean7431I'm pretty sure the order is "random" (more likely to get certain fruits) because you can get different starting fruit and some runs are better than others with large fruit drops.
At 2:30 you were hoping you saved recently, but unity actually creates a temp save file each time you press play (located in temp file. Have to change file type to a .unity file). HOWEVER, unity also stupidly deletes this when you reopen the project. I always go and grab this file before reopening a crashed project. Can save a ton of time Also, really liked the video! I remade suika myself for a personal project, and it's really cool seeing you do it too ^^
You forgot to add that two water melons combines into a cherry to start the whole thing over again. Thats how some people have managed to get 7000+ score and theoretically you can keep on going for infinite score.
One thing to consider is that a person playing the game can wait for the fruit to settle, you don't have to drop the next fruit right away. This AI seems to only be able to drop the fruit at a set interval.
I mean, there's many ways to make the AI perfected. But past a certain point it becomes too much effort and little reward. Especially when the AI is already much better at the game than most humans.
After 11:37 it hesitates a little bit and waits (it does it again a few seconds later too). Not sure if that is just lag or if the AI does have the ability to wait but chooses not to.
@RepentandbelieveinJesusChrist5 Repent to The Holy Watermelon ”Therefore the Watermelon himself will give you a fruit: The cherry will conceive and give birth to a strawberry, who will conceive and give birth to a grape, who will conceive and give birth to an orange, who will conceive and give birth to a persimmon, who will conceive and give birth to a tomato, who will conceive and give birth to a pear, who will conceive and give birth to a peach, who will conceive and give birth to a pineapple, who will conceive and give birth to a honeydew melon, who will conceive and will call him Suika.“ - SuikaGame 69:420 LOL
i absolutely love the editing style, i don’t remember the last time i was this invested in a video and the jokes are perfectly cut and i am in disbelief. I am sure the coding isn’t that easy but the editing is absolutely amazing and idk how you do this
I did that challenge few days ago it took me approximately 6 hours (an afternoon) and I don't understand how he managed to produce that much bug and ending up programming for a couple of days the base game. Tbh I am not that good of a developer, I would not be able to achieve what he did with the machine learning part but it is not impressive and I am guessing he is producing a video so he would obviously cut the boring/frustrating parts...
as someone who has watched streamers play this game for countless hours - one of the biggest challenges in this game is its popping mechanism. when fruits combine they kind of jump around, push and move other fruits and sometimes a fruit can pop out of the container making you Insta lose. Can you PLEASE make a part two !!! would love to see the AI struggle with the rng.
I'm wondering if perhaps the ai would be able to account for the rng, as it would just be based off of the physics of the game, which should be entirely predictable. would be interesting to explore
Can you do more in depth code breakdowns in your 2nd channel? Like not too much into the nitty gritty, but explain stuff like your general coding process, what things worked and didn’t work, and what how you specifically implemented the genetic algorithm for this game?
Yeah it’s funny how sometimes he explains it and then sometimes he’s like… this is take me a week to program and record! So let’s not talk about it all!
He knows that people aren’t gonna watch that cause who has the attention span for that these days? I’m sure some people are actually curious on how he does what he does but that’s a small minority that simply won’t bring in the required views to put food on the table. People just wanna see cool ai learning algorithm sh[.^ .]t, and the video reflects that. He even states it outright halfway through the video saying that viewers click off the video and f[.^ .]ck up his watch time. These vids are meant to entertain, not inform. I’m sure like half the people who went to read this comment quit partway through because a paragraph of text is scary, so a 20 or 30 minute video on how the code works in comparison deeeefinitely isn’t gonna keep people’s attention for long. It would be a reliable source of views from a few diehard fans, sure, but what good will reliability do if so few people are gonna watch it?
@@imabird1566 I mean yes but no… like I’m not asking for full Tutorial or anything but the ones I find most entertaining on this channel are the ones where he even relatively decide to go into anything he’s doing. Anybody can say they are slapping an AI to a system or game. Anybody can draw a box! To be fair video like this seems pretty easy to copy without actually having to do the code for. I like the one where he’s comparing the AI or explaining neural netwerk works like he has in the past. You know… it wasn’t the most scientific and attention show us exactly how to do it but it was there and made it more entertaining. Like he had mentioned in the past that he used to explain it more himself! And from what I’ve seen people don’t mind it when he explains it. Although I don’t have his analytics page so…
Yeah, I don't need every detail, but at least state what the AI "sees" / what are it's inputs and outputs. Does it see the current field? Or just what fruit it currently holds? Sorry, without any of that information, I feel like I just wasted 13 minutes watching this.
dude i used to watch you as a little kid and i cant believe i found you again im so happy i love your videos so much the fact ur still using the same sprites of ur character i just love it so much thank you so much for a slice of my childhood
Only thing missing is the combination "explosion" that happens in the original game. Makes the game way harder imo. (Apart from the 2 watermelons canceling each other out that others already mentioned.)
@@laytonjr6601 While I won't deny that's the end effect, I don't think anyone would hesitate to agree that it's janky and probably shouldn't exist. Especially in the funny melon merging game. It's not like we're playing Dark Souls over here.
@@Charmlie.R only reason I said it is because the video is all about how AI matches up to humans. There are people who got a score of 9999 even with this mechanic, and I'm wondering if AI can do the same.
Its honestly amazing to see how simple some of the games that get really popular are (suika game, vampire survivors, wordle). It really goes to show how important creativity and an idea is in game development, along with proper execution of said idea.
yes but it's also luck base on human psychology, a lot of game that got exploded in popularity is because human gets addicted to achieving something in said game
7:42 for the best edit, i want that screen as a music eq visualization now. CB you are getting so dang good at this! You edits have always felt fun to watch, ll yhe way back, just genuinely funny timing and enjoyable transitions that felt abrupt but meaningful. Now its one long deep fried brain rollercoaster of the gosh darn best gaming related content i enjoy on UA-cam lol.
There are a couple of improvements to make the game more like the original: When 2 fruits evolve, they create a little explosion, moving the fruits that are touching them in the moment of the evolution, this kind of explosion increases strength depending on the size of the fruit (in order to understand my words better you could watch frame by frame a fruit evolution from the original game) 2 watermelons evolve to air, so the AI could get infinite score
Oh my god the NorthernLion jumpscare at 1:00 caught me so off guard! I've been watching the egg for nearly a decade at this point, so to see another of my favorite UA-camrs also watching his content makes me so happy
I think something that makes a big difference on how the game plays that isn't included in this version is that when two fruits join, they explode, shoving the fruit around them. if there's a cherry on top of a peach or pineapple, there's a decent chance it gets shot outside of the play zone
most of the game clones are missing an important mechanic... the explosion which occured when 2 fruits joined. watching people rage when cherries got catapulted due to unexpected chain is the best part IMO.
@@beepbop6697 obviously he would be doing that if it were possible, he needs direct feedback from the games server, this is information that only the game can see in code, you cant extract this, and ai cant go off a visual input in 99% of cases, this is why he has to recreate it
@@beepbop6697 in this case he cant see the specific functions that the game is requesting and sending out because it is encrypted, if he were to do this on an open source game then he would be able to see the code that detects if, for example 2 fruits touch each other, then he would be able to write the ai to refer to that code to see if two fruits touched. However he has no access to the games code so something like this is impossible therefore has to make the game himself so he can make the ai read the code
In the real Suika game, sometimes merging fruits causes the fruits above them to launch into space making you lose. There were times when it looked like that could have happened when your AI was playing.
I was wondering if someone was going to comment this or not because I feel like it’s a pretty important function to include as I’ve seen many runs end because of it.
@@ShlokParab It's radioactive but not fissile so it would not induce such a reaction even if you had a star worth of it. But you might be able to extract energy from it's radiation.
One thing not mentioned, was the weight of the fruit. I dont know how you calculated it, but it always seemed like all the fruit weighed the same and their density changed, making cherries oppressive as hell and shifting the whole board without much warning
Yeah, the weight in the game is definitely set up so getting a smaller fruit wedged between 2 large fruit is maximally annoying. So may times when you expect the bigger fruit to squeeze the smaller one out, instead they just sit there not moving.
Instead of doing the chain thing (which sounds expensive to calculate), you could've just calculated an inverted 'fruit score' based on their distance from the bottom and their size, so a fruit of size 1 at position 0 == decent, a fruit of size 15 at position 15 == 225, which is bad. This would mean that the larger a fruit gets, the more it's punished by being at the top. That plus a 'average weight of fruit times total number of fruit' on screen (i.e. 2x 1 + 1x 16 = 6, but 1x 2 + 1x 16 = 9) would give you a good indicator of efficiency at very low calculation cost
You unironically simulated a nuclear reaction with the three-fruit-match causing an explosion. You need a critical mass of radioactive "atoms" to constantly turn into matching fruits thus sustaining your nuclear reaction. The controlled one is like a nuclear reactor at a power station, and the uncontrolled one is literally a nuclear bomb!
now just imagine if code bullet found out that you can run genetic algorithms without rendering the game and calculating physics frame by frame. Edit: For clarification, what I meant was that you can progress the AI via an unrendered simulation of the game with approximated physics, saving significant computation, and then you can render one version from each generation to show progression in a video.
All I can think of is CB reading this comment, having a crushing moment of realisation, and spacing out so hard he completely forgets it ten hours later when his alarm goes off lol
Without rendering makes sense, but how would you train a genetic algo on a physics based game without calculating physics? Also, without rendering everything, he'd have no good way to visualise if it's working, and no good B-roll for the video. Things to consider :)
The traditional kanji usage, "西瓜", mean something closer to "Western Melon". It does have an alternative kanji usage of "水瓜", which actually does mean "water melon", but I've never seen that usage before outside of being in 'alternative kanji usage' section of a dictionary.
A bit of personal sharing here. Wanted to say thank you, I have busy life and always pushed away my interest for learning how to code, yet your ridiculous videos actually motivated me to start learning. (I used your brilliant affiliate link just cause you deserve it). Who knew... an AI entity convince me to actually learn its language (I still question if you're actually human... mostly the TV head makes me skeptic). All jokes aside, great content and thanks for the strange inspiration to try this out. Any tips will be appreciated. So far my plan is to do every computer science and data lesson. (I'm pretty comfortable with math and physics... I guess an engineering degree is not entirely useless)
5:55 Please give in depth answers to some bugs in future videos! Love seeing the little things that can go wrong and I can avoid in my own code. This explanation of the exploding glitch was awesome!
I actually cant be bothered to care how coding and game design works for the most part. Your humor is 90% of why i watch. The interesting struggles you go through and the game choice is the other 10%.
Hello friendo, may i know where your pfp came from? Is it a fan art, personal drawing, anime, or made by an artist? If it's any of the above ,can you give me the sauce? If it was a personal drawing and you got more to share (in insta for example) give sauce too
I love the journey from “don’t worry this will be cool” to “OH GOD WHY IS EVERYTHING ON FRUITY-TASTING FIRE” to “Oh, hey! Success! On to the next part to program” that takes place in Bullet’s videos. 😆
@@AnonymaxUKNot only does it not have auto save, any infinite loop in your code immediately crashes the editor. You misspelled an end condition in your for loop ? All your (non-code) work is gone forever !
The fact that we've gotten so much code bullet this year puts the biggest bloody smile on my face. Keep up the great work chief, lots of love from down under
This video was awesome! I'm not even really a fan of the Suika game but the editing in the beginning had me laughing out loud multiple times. I really liked your strategy for the algorithm of "Fruit Chains" because it does seem to be a good strategy to look for, rather than just brute forcing with the score as the determining factor. Overall great video! Very interesting, funny, and well put together.
4:33 This reminded me of the trial scene from HBO: Chernobyl Valery Legasov: -''The steam blows more fuel channels apart. We do not know how high the power went. We only know the final reading. Reactor #4, designed to operate at 3200 megawatts - went beyond 33,000.''
4:43 - "trying to allocate 34359738368 B" :DDDDD This reminded me when i was having some strange 3 Exabyte file on a 1 Tb HDD and i was unable to delete it since there was not enough space in the recycle bin. And shift+deleting it was also not working for some other strange reasons 6:56 - i honestly thought the zoomout would continue into the real THX logo :D
I've got to admit that the second Channel helps a lot with the wait between this videos because a few months ago I would be like damn finally I've been waiting 6 months for a code bullet video I was really wanting this
If you make suika game *but bouncy* with some original assets you could totally get Alpharad to play it on Alpharad gold, he's playing like EVERY Suika-like.
Irony is that there WAS 2048-like games that came out before Suika game.... They used circles as well, and one was even 3D.... Proves that "presentation = popularity" at times. People probably saw the cutesy fruit designs and got sold on that.
It's fascinating to see people call other variants 'clones' like it didn't exist before... Earliest Suika game I can find is early 2021, but I bet it goes back much further in china/japan. There's a slight variation floating around which is more like magical drop in that you start with the board filled with random fruit and the doubling is used to annihilate fruits until there's nothing left. Some people are insanely fast at that - to the point I think they just used AI...
3:19 uh… no? That fail condition isn’t the collision of the fruit the cloud is holding with another fruit, it’s when any fruit is above rim after it’s dropped.
Hey, just so you know in Suika, if two watermelons touch, they disappear and award you points, leaving you more space on the board! Idk if your AI needs to go that far, most players wont even know that, I'd figure its important just in case you really wanted to push the limits.
2:30 If Unity ever crashes "Temp\__Backupscenes\0.backup" is a copy of the scene the last time you entered play mode. This file is auto delete when opening Unity so grab it before restarting.
This is the perfect game to showcase the power of AI because it's very simple, easy to program the game, and easy to pass all the necessary information, the AI isn't overwhelmed with too much data, but it's dynamic enough that the AI could find strategies where it would be hard for humans to find them.
@@Johnnyb3g00dthe ai still found the correct strategy, codebullet just provided a goal. Humans are good at knowing the goal but not that good at executing the strategy to reach that goal.
@@Johnnyb3g00d But the AI simply followed the instructions and then train on in so it can improve. By those standards no AI has better strategy because all we did was program it to do so
In the original Suika game, two watermelons annihilate each other allowing for the possibility of an infinite score. Seems a little like making the game too easy, but making two watermelons is actually insanely hard for humans. I would love to see how far the AI can go with this new rule.
ik
code bullet you gotta fix it, this is free second channel content we're talking about here
Is it insanely hard? I have played 2048 few times and it's not that hard. Watching that AI play there, it looked like it was making really stupid mistakes. My main problem with 2048 has been RNG rather than messing up.
Last version of 2048 that I played was about combining alcohol.
@@justskip4595the added physics to these fruits is what make this game tricky or sometimes some fruits just get launched off causing you to lose instantly
I second this!!
"It's like children, you gotta kill a couple to make an omelet"
-Code Bullet, 2023
"I'm making the mother of all omelets here Jack, can't fret over every egg!"
that takes on a new meaning@@themenacingfox
Yeah, them lazy kids don't want to make omelette so you kill a few to tell them what's gonna happen if there's no omelette on that plate by the time you get back. 😂😂
True
I swear on my life I saw this comment right as he was fucking saying it
"Its f*ckin suika game. Clearly your time isnt super valuable."
This line gets funnier with every re-watch.
Every rewatch makes this line more poignant
Take my like and get out
What code bullet doesn't realize @ 5:30 is he's literally modeled critical mass for nuclear explosions with fruit.
Suikaheimer, the destroyer of fruits.
I think he knows. he aptly called this beautiful mess "going nuclear" lmao
Bro I paused this video to see if anyone was talking about this, it def looks like a nuke
I was about to mention that. He pretty much did so, yeah.
E
Plenty of people have identified the double watermelon effect wasn't right.
The one that bothered me was the lose condition. It's not when a fallen fruit touches the held fruit, it's when any fallen fruit leaves the play area at all.
Specifically, is it when the *top?* or the *center* of the circle that leaves the play area?
@@raffimolero64
I'm not totally sure; I've gotten the impression that it when the top of the fruit is a certain amount above the apparent top of the play area.
ah yes someone have clips where they parry the flying fruits thus saving the play
the height limit is the cloud, i’ve seen that countless times
Lolsies
I love how code bullet invented nuclear bombs in a game about combining fruit
fr 💀
Thermonuclear Fusion Suika Game 💀
So many people have pointed out that 2 watermelons annihilate each other, which would allow his AI to get an even better score. HOWEVER, in the actual game there are a few complications he didn't include. For one thing, the fruit hit boxes are NOT all circles. Grapes in particular have a very irregular hit box that causes them to be very annoying. Secondly, the fruits have different and odd weight values that can make them push other fruits around. Thirdly, it's actually impossible to drop larger fruit on the far sides, because they hit the lip of the cup and bounce inward. Finally, and most importantly, is Fruit SpaceX. In the actual game, when two fruit combine, they merge into each other, very rapidly. So rapidly that if a light fruit is sitting above the fusion in just the wrong way, that fruit can get launched out of the jar at escape velocity and it's game over. This kills so many runs, and all of these factors would make reaching that AI 2 watermelon goal a lot harder.
All in all, though, really good job with the programming, and your usual awesome level of comedy in the video.
Also the container seems to be slightly larger than the original game, based on how the big and small watermelon look side by side?
Good thing switch has a very good emulator. People who is good at modding switch game should be able to transplant this AI to train on the actual game.
The cherry on top would be random fruit. The AI is basically running the exact same game with saves and checkpoints. +haha
Understanding the best positions for random fruit, and potential future fruit, is overkill for a fun YT video and asking the impossible from CB, though.
There's also another thing. The bigger fruit seem to have greater and greater "spin" values that move around the other fruit
"Fruit SpaceX."
AMAZING
Also idk if anyone said this yet, but fun fact, in the actual Suika game, when two watermelons touch, they disappear. It's kind of weird but it will probably allow for your AI to get an infinite score, which would be cool to watch.
I don't know about that. I'm not watching an AI play this game for the rest of infinity.
@@chitlitlahi would
@@chitlitlahI would
@@chitlitlahi would
@@chitlitlahi Would
no way code bullet accidentally created a perfect representation of a nuclear detonation using fruits and berries
5:35 Only Code Bullet could manage to program nuclear fission into Suika Game
E
fusion*
fission is splitting, fusion is joining
thing is
fusion is 2 atoms turning one, fission is one atom turning into 2 + a neutron
@@DR20005 in this case it's fission because they're multiplying
@@DR20005its neither, or maybe a bit of both. till the apple it was kind of like fusion then started looking like fusion ig.
Waiting for the day that Code Bullet reveals he’s actually not coding anything and is just insanely good at video games
At this point he's mostly outsourcing the coding to ChatGPT.
a score of 4k means he is pretty good at this game, but nowhere near the top of the charts which is over 7k
E
I'm waiting for the reveal that he's actually an AI lol
@@Rezuviousyeah but the watermelons didn't disappear
3:07 he clicked so fast that the first fruit spawned itself twice in the same space, fusing on the spot to make a strawberry
Surprisingly, nobody has mentioned the most important difference between this and the real game, which is that in the real game you can see which fruit is next in your queue. This is the sole factor that makes the game significantly skill based.
I *think* the order is the same for every run, otherwise the generational approach wouldn't work, for a neural network approach that would be something to take into account, as well as maybe letting the AI wait for things to settle or move around, but that would be a lot of inputs and very complex
@@rupertdean7431it should just be another input node for the AI.
The fruits being truly random wouldn't effect much
@@Harmoniou-s this ai doesn't haver input nodes though
Also that in the original game all the fruit shift every like 20 seconds and the big fruit magically float/shift to the top
@@rupertdean7431I'm pretty sure the order is "random" (more likely to get certain fruits) because you can get different starting fruit and some runs are better than others with large fruit drops.
At 2:30 you were hoping you saved recently, but unity actually creates a temp save file each time you press play (located in temp file. Have to change file type to a .unity file). HOWEVER, unity also stupidly deletes this when you reopen the project. I always go and grab this file before reopening a crashed project. Can save a ton of time
Also, really liked the video! I remade suika myself for a personal project, and it's really cool seeing you do it too ^^
Gotta like this so people would know
is it bc of the recent paywall they did
@@arlynnecumberbatch1056Eh? No... Why would it be? That doesn't make any sense.
"HOWEVER, unity also stupidly deletes this when you reopen the project"
Yeah that just plain doesn't make sense
@@st.haborymAre they using the temporary project for debugging and actually running stuff?
You forgot to add that two water melons combines into a cherry to start the whole thing over again. Thats how some people have managed to get 7000+ score and theoretically you can keep on going for infinite score.
You forgot to add that two watermelons combine into nothing which lets you get an infinite score
One thing to consider is that a person playing the game can wait for the fruit to settle, you don't have to drop the next fruit right away. This AI seems to only be able to drop the fruit at a set interval.
I mean, there's many ways to make the AI perfected. But past a certain point it becomes too much effort and little reward. Especially when the AI is already much better at the game than most humans.
After 11:37 it hesitates a little bit and waits (it does it again a few seconds later too). Not sure if that is just lag or if the AI does have the ability to wait but chooses not to.
this game isn't straightforward to program a strategy for i feel
@@XerosOfficial lag because any other fruits are not moving during this time
@RepentandbelieveinJesusChrist5 Repent to The Holy Watermelon ”Therefore the Watermelon himself will give you a fruit: The cherry will conceive and give birth to a strawberry, who will conceive and give birth to a grape, who will conceive and give birth to an orange, who will conceive and give birth to a persimmon, who will conceive and give birth to a tomato, who will conceive and give birth to a pear, who will conceive and give birth to a peach, who will conceive and give birth to a pineapple, who will conceive and give birth to a honeydew melon, who will conceive and will call him Suika.“
- SuikaGame 69:420 LOL
5:40 That is surprising close to how a nuclear weapon works.
Bro built a scientifically accurate nuke in the fucking suika game
fission
TACTICAL NUKE INCOMING
@@nikolozgilles TACTICAL SUIKA GAME LMAOO
I'm glad I wasn't the only one who thought about that lol
i absolutely love the editing style, i don’t remember the last time i was this invested in a video and the jokes are perfectly cut and i am in disbelief. I am sure the coding isn’t that easy but the editing is absolutely amazing and idk how you do this
Realistically redeveloping suika isnt hard, but it's still impressive to do it so casually.
And without saving... 🤦♂😅
I did that challenge few days ago it took me approximately 6 hours (an afternoon) and I don't understand how he managed to produce that much bug and ending up programming for a couple of days the base game.
Tbh I am not that good of a developer, I would not be able to achieve what he did with the machine learning part but it is not impressive and I am guessing he is producing a video so he would obviously cut the boring/frustrating parts...
@@meh6422No, you didn’t
@@keepercool98 I din't what ?
@@meh6422 yeah okay
as someone who has watched streamers play this game for countless hours - one of the biggest challenges in this game is its popping mechanism. when fruits combine they kind of jump around, push and move other fruits and sometimes a fruit can pop out of the container making you Insta lose. Can you PLEASE make a part two !!! would love to see the AI struggle with the rng.
I'm wondering if perhaps the ai would be able to account for the rng, as it would just be based off of the physics of the game, which should be entirely predictable. would be interesting to explore
Not to mention that the fruit has a pattern, it can be cherry, strawberry, strawberry, cherry, grapes and here it’s simply random.
Also, he got the rolling physics pretty wrong I think as compared to actual suika
When CodeBullet accidentally codes nuclear fission simulation into a fruit matching game…
Can you do more in depth code breakdowns in your 2nd channel? Like not too much into the nitty gritty, but explain stuff like your general coding process, what things worked and didn’t work, and what how you specifically implemented the genetic algorithm for this game?
I bet Evans response to this is: "I could do this, but I really can't be fucked"
Yeah it’s funny how sometimes he explains it and then sometimes he’s like… this is take me a week to program and record! So let’s not talk about it all!
He knows that people aren’t gonna watch that cause who has the attention span for that these days? I’m sure some people are actually curious on how he does what he does but that’s a small minority that simply won’t bring in the required views to put food on the table. People just wanna see cool ai learning algorithm sh[.^ .]t, and the video reflects that. He even states it outright halfway through the video saying that viewers click off the video and f[.^ .]ck up his watch time. These vids are meant to entertain, not inform. I’m sure like half the people who went to read this comment quit partway through because a paragraph of text is scary, so a 20 or 30 minute video on how the code works in comparison deeeefinitely isn’t gonna keep people’s attention for long. It would be a reliable source of views from a few diehard fans, sure, but what good will reliability do if so few people are gonna watch it?
@@imabird1566 I mean yes but no… like I’m not asking for full Tutorial or anything but the ones I find most entertaining on this channel are the ones where he even relatively decide to go into anything he’s doing. Anybody can say they are slapping an AI to a system or game. Anybody can draw a box! To be fair video like this seems pretty easy to copy without actually having to do the code for. I like the one where he’s comparing the AI or explaining neural netwerk works like he has in the past. You know… it wasn’t the most scientific and attention show us exactly how to do it but it was there and made it more entertaining.
Like he had mentioned in the past that he used to explain it more himself! And from what I’ve seen people don’t mind it when he explains it. Although I don’t have his analytics page so…
Yeah, I don't need every detail, but at least state what the AI "sees" / what are it's inputs and outputs. Does it see the current field? Or just what fruit it currently holds? Sorry, without any of that information, I feel like I just wasted 13 minutes watching this.
Each video is like a different genre of chaos, and I am _here for it_
dude i used to watch you as a little kid and i cant believe i found you again im so happy i love your videos so much the fact ur still using the same sprites of ur character i just love it so much thank you so much for a slice of my childhood
Seeing Northernlions face anywhere in this video was the absolute last thing I expected lmfao
CB is a confirmed NL andy
he is your favorite youtuber's favorite youtuber
I should have scrolled a little more before making my comment lol, but yeah, it makes me wonder how deep down the rabbit hole CB is
His face seems to pop up everywhere these days haha.
It's definitely better than having any other big streamer's face appear
Only thing missing is the combination "explosion" that happens in the original game. Makes the game way harder imo. (Apart from the 2 watermelons canceling each other out that others already mentioned.)
Ah, a remake not having physics jank that probably shouldn't exist actually mattering lol
Game dev is funny.
@@Charmlie.Rit makes the game harder and makes it possible to launch fruits out of the box
@@laytonjr6601 While I won't deny that's the end effect, I don't think anyone would hesitate to agree that it's janky and probably shouldn't exist. Especially in the funny melon merging game. It's not like we're playing Dark Souls over here.
@@Charmlie.R only reason I said it is because the video is all about how AI matches up to humans. There are people who got a score of 9999 even with this mechanic, and I'm wondering if AI can do the same.
@@ounobaga1829it could if he improved it but it takes to much time for a UA-cam video
Make it so that two watermelons combine into a cherry 12:01
One of the things that was drilled into my head in school was to regularly save my work. Your crash and losing everything is exactly why.
and backups
and version control
working alone can get wicked undisciplined!
I save before every time I test something in case I accidentally made an infinite loop.
Whenever I'm coding something for a while, after I stop I keep Ctrl+S'ing on everything for a while lol, get a lot of 'Save As' popups for webpages
Its honestly amazing to see how simple some of the games that get really popular are (suika game, vampire survivors, wordle). It really goes to show how important creativity and an idea is in game development, along with proper execution of said idea.
yes but it's also luck base on human psychology, a lot of game that got exploded in popularity is because human gets addicted to achieving something in said game
A simple game has a much lower barrier to entry than a more complicated one
@@phelpysantrue, that is also the only reason why candy crush is the #1most downloaded gane
Not really creative it's basically the copy of 2048
@@hypertabloid9357 I'm pretty sure it's a genre of games just like match 3 games and stuff like that
4:40 IT TRIED TO ALLOCATE 34GB OF MEMORY LMAOOO
4:05 I've never laughed so much at such a human reaction to computers being computers
5:15 i just realized that chain reaction is perfectly match with Oppenheimer's Nuclear Apocalypse Math
Yeees, just what i thought too
7:30
7:42 for the best edit, i want that screen as a music eq visualization now.
CB you are getting so dang good at this! You edits have always felt fun to watch, ll yhe way back, just genuinely funny timing and enjoyable transitions that felt abrupt but meaningful.
Now its one long deep fried brain rollercoaster of the gosh darn best gaming related content i enjoy on UA-cam lol.
Do you know the name of the music?
There are a couple of improvements to make the game more like the original:
When 2 fruits evolve, they create a little explosion, moving the fruits that are touching them in the moment of the evolution, this kind of explosion increases strength depending on the size of the fruit (in order to understand my words better you could watch frame by frame a fruit evolution from the original game)
2 watermelons evolve to air, so the AI could get infinite score
Oh my god the NorthernLion jumpscare at 1:00 caught me so off guard! I've been watching the egg for nearly a decade at this point, so to see another of my favorite UA-camrs also watching his content makes me so happy
2:06 lol, we've all been there dude. ctrl-alt-delete, praying you saved recently - good times.
6:04 “if going to explode dont” 💀
Bro I died reading that 🤣
Wish I could implement that line to Bethesda games: if going to crash, dont
I think something that makes a big difference on how the game plays that isn't included in this version is that when two fruits join, they explode, shoving the fruit around them. if there's a cherry on top of a peach or pineapple, there's a decent chance it gets shot outside of the play zone
9:54 you just achieved the power that everyone wants
most of the game clones are missing an important mechanic... the explosion which occured when 2 fruits joined.
watching people rage when cherries got catapulted due to unexpected chain is the best part IMO.
I mean he is like trying to recreate the entire game so its not gonna be perfect every time but on this vid he did miss quite a few key features
@@excalibur2038hence why it would be better to train his AI on the real game instead of creating a similar looking clone of his own creation.
@@beepbop6697 obviously he would be doing that if it were possible, he needs direct feedback from the games server, this is information that only the game can see in code, you cant extract this, and ai cant go off a visual input in 99% of cases, this is why he has to recreate it
@@excalibur2038 there is no server with a single player standalone game.
@@beepbop6697 in this case he cant see the specific functions that the game is requesting and sending out because it is encrypted, if he were to do this on an open source game then he would be able to see the code that detects if, for example 2 fruits touch each other, then he would be able to write the ai to refer to that code to see if two fruits touched. However he has no access to the games code so something like this is impossible therefore has to make the game himself so he can make the ai read the code
In the real Suika game, sometimes merging fruits causes the fruits above them to launch into space making you lose. There were times when it looked like that could have happened when your AI was playing.
I was wondering if someone was going to comment this or not because I feel like it’s a pretty important function to include as I’ve seen many runs end because of it.
no-one is talking about how funny "if going to explode, don't" is
5:25 this behavior is actually fascinatingly similar to how real atomic bombs work
4:55 Bro created nuclear fission but with fruits
I bet it's possible in real life. Like, potassium has a slightly abundant radioactive isotope, and is found in bananas.
@@ShlokParab It's radioactive but not fissile so it would not induce such a reaction even if you had a star worth of it. But you might be able to extract energy from it's radiation.
Nuclear Frution
6:05
if(goingToExplode) dont();
ah yes✨✨
One thing not mentioned, was the weight of the fruit. I dont know how you calculated it, but it always seemed like all the fruit weighed the same and their density changed, making cherries oppressive as hell and shifting the whole board without much warning
Yeah, the weight in the game is definitely set up so getting a smaller fruit wedged between 2 large fruit is maximally annoying. So may times when you expect the bigger fruit to squeeze the smaller one out, instead they just sit there not moving.
Instead of doing the chain thing (which sounds expensive to calculate), you could've just calculated an inverted 'fruit score' based on their distance from the bottom and their size, so a fruit of size 1 at position 0 == decent, a fruit of size 15 at position 15 == 225, which is bad. This would mean that the larger a fruit gets, the more it's punished by being at the top.
That plus a 'average weight of fruit times total number of fruit' on screen (i.e. 2x 1 + 1x 16 = 6, but 1x 2 + 1x 16 = 9) would give you a good indicator of efficiency at very low calculation cost
You unironically simulated a nuclear reaction with the three-fruit-match causing an explosion. You need a critical mass of radioactive "atoms" to constantly turn into matching fruits thus sustaining your nuclear reaction. The controlled one is like a nuclear reactor at a power station, and the uncontrolled one is literally a nuclear bomb!
now just imagine if code bullet found out that you can run genetic algorithms without rendering the game and calculating physics frame by frame.
Edit: For clarification, what I meant was that you can progress the AI via an unrendered simulation of the game with approximated physics, saving significant computation, and then you can render one version from each generation to show progression in a video.
The hwat?
All I can think of is CB reading this comment, having a crushing moment of realisation, and spacing out so hard he completely forgets it ten hours later when his alarm goes off lol
Without rendering makes sense, but how would you train a genetic algo on a physics based game without calculating physics?
Also, without rendering everything, he'd have no good way to visualise if it's working, and no good B-roll for the video. Things to consider :)
Well if he did that, no Timelapse of 100 games, meaning no content, meaning a boring video
How good do just raw calculations look in a video?
Fun fact: Suika means watermelon, and the kanji used is literally water + melon.
The traditional kanji usage, "西瓜", mean something closer to "Western Melon".
It does have an alternative kanji usage of "水瓜", which actually does mean "water melon", but I've never seen that usage before outside of being in 'alternative kanji usage' section of a dictionary.
A bit of personal sharing here. Wanted to say thank you, I have busy life and always pushed away my interest for learning how to code, yet your ridiculous videos actually motivated me to start learning. (I used your brilliant affiliate link just cause you deserve it). Who knew... an AI entity convince me to actually learn its language (I still question if you're actually human... mostly the TV head makes me skeptic).
All jokes aside, great content and thanks for the strange inspiration to try this out. Any tips will be appreciated. So far my plan is to do every computer science and data lesson. (I'm pretty comfortable with math and physics... I guess an engineering degree is not entirely useless)
5:55 Please give in depth answers to some bugs in future videos! Love seeing the little things that can go wrong and I can avoid in my own code. This explanation of the exploding glitch was awesome!
THIS
I actually cant be bothered to care how coding and game design works for the most part. Your humor is 90% of why i watch. The interesting struggles you go through and the game choice is the other 10%.
E
I subbed because I'm a programmer and gamer and his projects are inspiring.
3:41 Oh woah that actually does look really fun! I hope you release a version of it in the future 😄
Hello friendo, may i know where your pfp came from? Is it a fan art, personal drawing, anime, or made by an artist? If it's any of the above ,can you give me the sauce? If it was a personal drawing and you got more to share (in insta for example) give sauce too
I love the journey from “don’t worry this will be cool” to “OH GOD WHY IS EVERYTHING ON FRUITY-TASTING FIRE” to “Oh, hey! Success! On to the next part to program” that takes place in Bullet’s videos. 😆
The endless cycle of pain of Code Bullet
1:42 before something clipped out of bounds, I was getting concerned I wasn't watching code bullet.
Thank you so much for uploading I cant comprehend how hard you work on these videos i love you (glazzing)
I think the fruit bounce a bit more when they combine in the actual game. That's actually a hard and unpredictable part of Suika game.
4:48 - Code Bullet created Suika game, but... Oppenheimer edition.
I typed in 'guy at drum set' in DuckDuckGo, and Henry is image number 1. I didn't know Henry was such a famous musician.
8:58 Generation 93 Sample 5 had a melon I believe, and he deserves more respect Mr “Bullet”, if that’s even your real name
You’re right! How did you catch that?
@@azutheboredcat2441I never miss a melon.
@@celestia8060um
CB: "It's like children you gotta kill a couple to make an omelette"
8:35
Then he said "or whatever it is"
The suika game constantly crashing from accidental nuclear mechanisms made of fruit is somehow so funny to me
Honestly the best programming vid I've seen in years. I really felt the failure to save down deep.
At least we got introduced to a dope beat?
The song at 2:45 where he freaks out and codes it all again is Driftin' · Cushy
Honestly surprised Unity doesn't have auto-save
@@AnonymaxUKNot only does it not have auto save, any infinite loop in your code immediately crashes the editor. You misspelled an end condition in your for loop ? All your (non-code) work is gone forever !
@@AnonymaxUK unity is absolutely awful and only used because it's free and has a large community tbh
"Honestly the best programming vid I've seen in years" is just every CodeBullet video.
4:43 "Fatal Error? Bit dramatic"
The error: you tried to allocate 134892354923654823647234 gigabytes of ram when you have 16gb WHAT R U DOING EVAN?
Ummm actually, it is about 34 billion bytes indicated by the B behind the numbers. This would equal to about 34 gigabytes 🤓🤓🤓🤓🤓🤓🤓🤓🤓
Ahh yes
134 SEPTILLION Bytes…
That’s around a YB of data…
@@chenterr103it’s still asking for around double his hard drive space
6:05 “if(goingtoexplode)don’t” explosion glitch: understandable have a nice day!
The fact that we've gotten so much code bullet this year puts the biggest bloody smile on my face. Keep up the great work chief, lots of love from down under
This video was awesome!
I'm not even really a fan of the Suika game but the editing in the beginning had me laughing out loud multiple times.
I really liked your strategy for the algorithm of "Fruit Chains" because it does seem to be a good strategy to look for, rather than just brute forcing with the score as the determining factor.
Overall great video! Very interesting, funny, and well put together.
I’m under 2 minutes into this video and you’re already one of my new favorite UA-camrs. Time to binge watch a bunch of your content 😂
Been watching this guy for ages, they’re all great
4:13 #justiceforHenry
Thank you
let henry cook man 😔
Justice for Henry 🤛😫 🤜
It's fine he got celery sticks
Honestly, the nuke graphic was super fitting. That fruit explosion basically *is* how nukes explode
4:33 This reminded me of the trial scene from HBO: Chernobyl
Valery Legasov: -''The steam blows more fuel channels apart. We do not know how high the power went. We only know the final reading. Reactor #4, designed to operate at 3200 megawatts - went beyond 33,000.''
I’m pretty sure Code Bullet just explained nuclear fission
As soon as I saw this game, I knew you would make an AI to beat it lol
Hyped to watch :)
4:43 - "trying to allocate 34359738368 B" :DDDDD
This reminded me when i was having some strange 3 Exabyte file on a 1 Tb HDD and i was unable to delete it since there was not enough space in the recycle bin. And shift+deleting it was also not working for some other strange reasons
6:56 - i honestly thought the zoomout would continue into the real THX logo :D
I've got to admit that the second Channel helps a lot with the wait between this videos because a few months ago I would be like damn finally I've been waiting 6 months for a code bullet video I was really wanting this
The fact that the "fruit explosion" resembles A LOT the process of a nuclear bomb system just make this so much better 🤣
This is inadvertenly a good explanation of how atom bombs work.
If you make suika game *but bouncy* with some original assets you could totally get Alpharad to play it on Alpharad gold, he's playing like EVERY Suika-like.
Move over suika month we got suika year 😂
Oppenheimer would be proud. 5:23
Henry missed a good pun opportunity if he used "drumsticks" to replace his drumsticks.
Irony is that there WAS 2048-like games that came out before Suika game.... They used circles as well, and one was even 3D....
Proves that "presentation = popularity" at times. People probably saw the cutesy fruit designs and got sold on that.
It's fascinating to see people call other variants 'clones' like it didn't exist before... Earliest Suika game I can find is early 2021, but I bet it goes back much further in china/japan.
There's a slight variation floating around which is more like magical drop in that you start with the board filled with random fruit and the doubling is used to annihilate fruits until there's nothing left. Some people are insanely fast at that - to the point I think they just used AI...
2:22 remember: unused ram is wasted ram
6:34 is how feel I feel when I take the first sip of sprite and the fizz goes up my nose.
6:33
3:19 uh… no? That fail condition isn’t the collision of the fruit the cloud is holding with another fruit, it’s when any fruit is above rim after it’s dropped.
Can we just talk about how CB just described nuclear fission and a nuclear meltdown in this video @5:00
If Code Bullet teaches AI to play plants vs zombies I will explode, or maybe detonate, nah, explodonate
Look at how the fruit explodes is a really good analogy for a fusion reactor
5:49 love CB casually making a resonance cascade in his Suika copy for this vid. lol
3:03 I'd never think a man watching a strawberry roll onto the other and repeating "don't explode" could make me so anxious
When 2 watermelons touch they should disappear, I wonder if this AI can basically go forever when you implement that rule :)
6:53 was the PTSD necessary?
I like that his error was basically a critical mass nuclear explosion for fruit.
4:38 Nothing like trying to allocate 34 Gb of memory.
Hey, just so you know in Suika, if two watermelons touch, they disappear and award you points, leaving you more space on the board! Idk if your AI needs to go that far, most players wont even know that, I'd figure its important just in case you really wanted to push the limits.
`if (goingToExplode) dont();` is my favourite algorithm
2:30 If Unity ever crashes "Temp\__Backupscenes\0.backup" is a copy of the scene the last time you entered play mode. This file is auto delete when opening Unity so grab it before restarting.
This is the perfect game to showcase the power of AI because it's very simple, easy to program the game, and easy to pass all the necessary information, the AI isn't overwhelmed with too much data, but it's dynamic enough that the AI could find strategies where it would be hard for humans to find them.
The AI literally didn't find the correct strategy. He programmed that in, lol
@@Johnnyb3g00dthe ai still found the correct strategy, codebullet just provided a goal. Humans are good at knowing the goal but not that good at executing the strategy to reach that goal.
@@Johnnyb3g00d But the AI simply followed the instructions and then train on in so it can improve. By those standards no AI has better strategy because all we did was program it to do so
Yeeeeee Code Bullet is back!!!!! Finally the handsomeman let him of the leash ! Btw Your Animator is a King!
Unity tip for 2:17 - CTRL + P (pause shortcut) works every time to not cook the project