Transcript of 2D-графика кодом - реально? Делаем 5 игр с Claude и GPT
Студия Игор
0:00Today we will compare different0:01 approaches to 2D graphics generation0:03 and build five 2D games in various0:05 genres. And, of course, we’ll compare0:07 Claude and GPT to see how they build 2D0:09 games. It will be interesting. Hello0:15 everyone and welcome to the Game Studio0:16 channel. My name is Igor, and today we0:18 are going to make 5 whole 2D games. And0:20 now I'll tell you how it all started. I0:23 recently stumbled upon this post from0:25 Anthropic online, where they show a0:27 cartoon they generated with code using0:28 Claude 3.5 Opus. It's a cartoon about0:31 an ant and a watermelon. And it looks0:33 pretty cool. You can see it on the0:35 screen right now. I searched Twitter0:37 for similar cartoons and found a few0:39 more examples that also look quite good0:41. And then I got curious: could I0:43 generate graphics for a game in the0:45 same way? But first, I was interested0:47 in trying to generate a cartoon. I0:49 opened a chat with Claude 3.5 Opus,0:51 selected the extra high mode, and asked0:53 it directly: "Can you generate cartoons0:55 using JavaScript code?" It said, "Yes,0:57 I can." I said, "Well, go ahead and0:59 generate one for me, I want to see." It1:01 said, "Alright, I'll make a cartoon1:02 about a whale that wanted to learn how1:04 to fly," and added, "I can make the1:06 video right here in the browser." I1:07 said, "Go ahead." Then it went away for1:09 a while and came back with this result.1:11 You can see it on the screen right now.1:18 At that moment, I realized we wouldn't1:20 get very far here in the browser, and1:22 it was time to move to Claude Code. I1:24 decided to keep trying to make the1:25 whale cartoon, but we would try a1:27 different approach. I downloaded the1:29 clips from Twitter that, according to1:31 the authors, were generated with code1:33 using Claude. Then I copied those clips1:37 into the project folder, launched1:39 Claude Code, selected the Opus 3.51:41 Sonnet model, and asked Claude to break1:43 these references down into frames and1:46 literally learn to copy this style so I1:48 could create a similar cartoon. As soon1:52 as it finished, I copied the prompt1:54 from the browser about the whale that1:57 wanted to learn to fly and asked Claude1:59 3.5 Opus in Claude Code to generate2:01 this cartoon using that very style. And2:04 you can see the result on the screen2:06 now. If anyone is interested, this2:08 style is called Line Boil. It's about2:10 12 drawings per second. And the outline2:12 is constantly shaking, even when2:13 completely static. First, the blue2:15 guide lines are drawn, and then the2:17 action itself. I think the result2:19 turned out to be really quite cool. And2:22 at one point, I believed that I would2:24 really be able to draw graphics for a2:26 game in this way. But more on that a2:29 little later. Now I was interested in2:31 doing the same thing, but in Pixel Art.2:33 And so I basically asked Opus to do it,2:35 literally "generate the same cartoon2:38 for me, but in Pixel Art." Why Pixel2:40 Art? Because the first game I'm going2:42 to generate today, I wanted to make in2:44 that specific style. But the first2:46 result turned out frankly weak, and you2:48 can see it on the screen right now.2:51 This is far from what I wanted to get.2:53 Then I gave Claude a clarifying prompt.2:56 I asked it to research Pixel Art. To3:00 find references from various artists3:02 and write an engine that would allow3:03 generating decent cartoons and, in3:05 general, creating good graphics using3:07 code in a Pixel Art style. And after3:10 Claude researched references on the3:12 internet, it remade the whale cartoon3:14 in pixel art. In the second version, it3:16 made a 320x180 frame and scaled it up3:19 six times. The sea moves in perspective3:21 using palette cycling, just like in3:22 games from the nineties. The clouds are3:25 made cumulus, and there is a shoreline3:27 with foam around the whale. And I3:29 thought, this is it, we’ve finally3:31 succeeded in making graphics using code3:33. This means we will now be able to do3:35 the same thing, but for a game. And I3:39 very quickly generated this screenshot3:41 in ChatGPT, a reference image—a3:43 concept of our game in Pixel Art style.3:46 The reference, of course, is frankly3:48 unsuccessful. It is maximally3:49 overloaded with details and is quite3:51 difficult to read. I mean, it will be3:53 quite difficult for the neural network3:55 to break it down into parts to3:56 understand what is happening here in3:58 general. But I was interested in4:00 assigning the most complex task4:01 possible to see if the neural network4:03 could handle it or not, and if not,4:05 then move from complex to simple. And I4:07 asked Claude Opus 3.5 in Claude Code4:10 not to generate a game, but rather a4:12 video cartoon of this game, that is, a4:15 walkthrough concept. As if I were just4:17 recording the screen, like I was4:19 playing. Claude puffed away for, I4:21 think, several hours. It wrote 12,0004:24 lines of JavaScript, which nine agents4:26 wrote in parallel under a general4:28 contract. It made props, a hero,4:30 monsters, effects, an interface, and4:32 three whole wings of a dungeon. It also4:34 did the lighting procedurally in the4:36 code: cold blue ambient and warm4:38 torches. The result was a 91-second4:41 video with a game level walkthrough.4:44 And let's take a quick look at this4:46 video. If you close your eyes, it all4:56 looks quite decent. But if you look4:57 closely, you can see a lot of glitches.4:59 I especially didn't like the places5:00 where walls flow into the floor, and5:02 the floor into the walls. And where you5:03 can walk, and where you can't.5:05 Otherwise, I must say, it's quite5:07 similar. And, of course, after that I5:10 asked it to make a game, since we5:11 literally had everything ready for it.5:13 And very quickly I got this result. You5:16 can see it on the screen right now. And5:18 I was able to play it. You could fight5:20 monsters, skeletons, and bats. You5:23 could perform various actions, collect5:25 gold, open chests, and find keys. You5:28 could even pray in a room to restore5:30 health. And in the end, of course,5:32 defeat the boss. Although I didn't find5:38 the level exit right away, as I5:39 mentioned. It was unclear where the5:41 wall was and where the floor was, but5:42 nevertheless, I managed to complete the5:44 level. I thought that it was just not a5:46 very good reference. And the next5:48 reference would turn out better. And in5:50 the same Claude session, I asked it to5:53 use all the developments, knowledge,5:55 and skills it acquired while we were5:57 doing this project, and pack everything6:00 into a skill so I could reuse it to6:02 also recreate a 2D game from a6:04 screenshot or concept, where, of course6:06, all graphics would be made using code6:08. And I decided to test this skill on6:12 another game. It will be a platformer,6:14 and the graphics there will not be6:16 pixel art, but quite vector-based. I6:18 prepared this reference in ChatGPT,6:20 which is called Acorn Jungle. Or6:22 something like that. An acorn in a6:24 cloak, jumping from one flower to6:26 another, a toad nearby, you need to6:28 collect fireflies and avoid all enemies6:30 to pass the level. Yes, this may again6:33 not be the best concept, but I was6:35 interested in making something that6:37 would have a very complex background6:39 and a fairly complex foreground in6:40 terms of drawing graphics. Well, then I6:44 threw this concept into the project6:46 folder and asked Claude 3.5 in Claude6:48 Code to make a demo version of the game6:51 for me using the skill. But now let's6:54 also measure the consumption of weekly6:56 limits. The first version of this game6:59 already made me doubt that I would be7:01 able to achieve any acceptable result.7:03 And as the model worked on this game, I7:05 tried to guide it and suggest some7:07 ideas. And one of the ideas was to try7:10 and connect critic agents as well.7:13 which would monitor all stages of the7:15 work and say what worked and what7:16 didn't, and rate the result on a7:18 ten-point scale. And, of course, the7:20 first result got two out of ten. 377:23 minutes passed iteration after7:24 iteration, and in the end, I got a7:27 result like this. You can see a7:29 screenshot now, and I decided to stop7:31 at this result and not continue making7:33 the game, for one simple reason. 12%of7:35 my weekly limits had already been used7:37 up. And I remind you that I have a $7:40 200 subscription. So, continuing to7:42 work using this approach, that is,7:44 writing all the graphics with code.7:46 It's simply expensive and unprofitable.7:48 And at that moment, I decide: what if I7:50 connect an image generator? Would it be7:53 possible to make a game with good 2D7:55 graphics that looks like a finished7:57 game, rather than just a static picture7:59 with a character running in the8:01 background? I also have a ChatGPT8:04 subscription, and I have Cursor8:05 installed on my computer. I also have a8:07 Cursor plugin for Claude. And Claude8:10 can consult GPT within its session to8:12 ask it to do things, including8:14 generating images. So I asked to use8:16 this approach and create the graphics8:18 in parts, including creating separate8:21 visual effects that would also be done8:23 procedurally with code. Or rather, some8:25 parts would be done with graphics, and8:27 others with code. And things finally8:28 started moving. I literally spent 1%of8:31 my weekly limit, and I got this result.8:36 All characters must be animated. You8:39 can interact with the world and objects8:40 in it; trees sway in the wind, and8:42 leaves fly around. Every element, even8:45 the smallest one, has its own animation8:46. The waterfall flows, the water8:48 reflects light, there is fog, the sun8:51 shining from behind the clouds, and, of8:53 course, other characters in the level8:55 to interact with. I, of course, did not8:57 want to resort to this approach until8:59 the last moment, because it requires a9:01 separate subscription or API key. To9:03 pay for subscriptions to various neural9:06 networks, you may need a bank card.9:08 That's why I want to tell you about the9:10 sponsor of this video, the company9:11 Zarub. It is a service where you can9:14 get a virtual card to pay for foreign9:15 subscriptions. And all of this directly9:17 in Telegram. You just open the9:20 Zarub_bot and click the start button.9:24 Then click the button to go to the9:26 wallet or the blue card button next to9:28 the message input field. Select the9:30 appropriate product, for example, a9:32 virtual Visa card, and click the buy9:34 button. Then choose how much money to9:38 add to the card and enter the promo9:39 code, of course, "GameStudio", to get a9:41 discount. No verification is required9:44 to issue the card. You can pay for the9:46 card issuance via SBP or cryptocurrency9:48, whichever is more convenient for you.9:50 Click "Pay," and a QR code for payment9:52 will be generated. After payment, the9:55 card appears in your personal account,9:57 and you receive a message about the9:58 balance top-up. And 15 minutes later,10:00 another message about the card being10:02 funded. That's it, the card is active10:05 and ready to use. You can find your10:07 card details by clicking the "details"10:09 button, and you can also immediately10:11 view information on how to link the10:13 card to the App Store or other services10:14. Furthermore, the bot provides very10:16 convenient and detailed instructions10:18 for paying for a wide variety of10:20 services. And if you still have any10:22 questions, support is available 24/7.10:25 Apply for a card using the link in the10:27 description or scan the QR code on the10:29 screen. And don't forget the promo code10:31 "game studio". Next, I packaged all of10:36 this into a skill that now creates 2D10:38 graphics using images—or, to be more10:41 precise, by generating images. The idea10:44 for the next game concept was as10:46 follows. Stardew Valley meets a "10:48Stranger Things" setting. It’s a10:50 pixel-art farm on Halloween night. A10:52 boy with a flashlight and a husky, and10:54 a red rift glowing on the right. The10:55 game is called "One Night." Corruption10:57 takes over one tile every 4 seconds and10:59 mutates the crops. There are four11:02 lampposts that hold back various11:03 monsters, and a flashlight that helps11:05 drive them away and burn off the11:06 corruption. And the mutated crops need11:09 to be cut down with a scythe. There is11:11 also a sanity mechanic. When the11:12 flashlight runs out and it gets dark,11:14 for example, your sanity starts to drop11:16. Once it falls all the way to zero,11:18 the game is lost. Next, I measure my11:20 weekly limit usage, starting at 41%.11:24 Let’s see how much of the weekly11:26 limit it takes to make a game using11:27 this approach and this reference. Then,11:30 I simply place the reference and a11:32 short description of the game into the11:34 project folder. I trigger the "ref to11:35 game" skill and specify the folder with11:37 the reference and the brief game11:39 description. Then Opus in Claude Code11:41 asks me a couple of questions about11:42 what we should use to generate the11:44 images. Here, I choose the Image Gen11:45 codec and answer a few questions about11:47 the gameplay. And after that, it begins11:49 building the game. I had to tinker with11:50 the animations a little bit. In the end11:52, the hero’s legs work on inverse11:54 kinematics, and the dog had to be11:55 generated in parts and then assembled11:57 together. Claude created the spiders11:59 using only one sprite for the body,12:01 while the legs were drawn procedurally12:03 in code. And the end result is what you12:06 can see on your screen right now. It12:08 all starts at sunset. Before night12:10 falls, you can already use your12:11 flashlight to clear the corruption from12:13 the plants. But those plants will12:15 eventually need to be cut down with a12:16 scythe. The dog barks when it sees any12:19 monsters crawling out of the rift. You12:21 can drive them away using your12:22 flashlight. Then it gets dark. And it12:24 is very important not to let these12:25 monsters spread across the farm. It is12:27 also important not to let the spiders12:29 devour the lampposts. By the way, once12:31 they eat the lampposts, they go on to12:33 eat the crops, and at some point, if12:34 you don't shine the light on them, they12:35 will start biting as well. That is,12:37 they will start nipping at the dog and12:39 even the character himself, I believe.12:52 It all looks very cool. You can select12:55 objects using your mouse cursor. The12:57 garlands are also swaying in the wind.12:59 And overall, such detailed13:01 world-building is one of the main13:03 components of this skill, which I have13:05 prepared and will, of course, share13:08 with you. For just 4 dollars and 9913:10 cents, you can get access to this skill13:12. Also included in this offer are game13:15 templates that you can refine based on13:17 your references and publish on Steam13:19 immediately. Just kidding, of course,13:21 that's a joke. This skill, like all13:23 others, is available for free and13:25 completely open-source, without any13:26 links or registrations on my GitHub.13:29 The link to this skill will be in the13:30 description under the video. Install it13:32 and enjoy. By the way, I post all links13:34 to similar skills and other additional13:36 materials on my Telegram channel. You13:38 can see the QR code on the screen, and13:39 the link will be in the description.13:40 Subscribe so you don't miss out on all13:42 the most interesting stuff. And now,13:43 let's continue. And you're probably13:46 wondering right now: "Igor, what about13:48 some GPT 6.1 Soul or any other model?13:51 Why use Claude and generate images via13:53 GPT in Cursor when you can just use13:55 this skill directly in Cursor?" Of13:57 course, I also anticipated this13:58 scenario and created a Cursor version14:00 of the skill, which you can also14:02 download from my GitHub using the same14:04 link. And now let's compare one-on-one14:07 how Claude Opus 3.5 and GPT 6.1 O-Soul14:10 handle generating a game using this14:13 skill based on the same reference. In14:17 one of my previous videos on the14:19 channel, I already made a 2.5 D game14:21 with a 3D environment and 2D characters14:23, which was about a fighter attacked by14:26 waves of enemies, like skeletons and14:28 zombies, and you had to shoot them off.14:31 And now I decided to use a similar14:33 reference, but in a Zombieland style.14:35 It will be a deserted night amusement14:37 park. Also a top-down angled view. A14:39 hero with a shotgun, a bunch of zombies14:41. There are smaller zombies, larger14:43 zombies, and many different weapon14:45 options to deal with these zombies.14:48 Then I started development of both14:50 games using this skill in Claude using14:52 the Opus 3.5 model with the X-reasoning14:55 effort, and in Cursor using the GPT 6.114:57 Soul model with the same X-reasoning14:59 effort. And it was just interesting to15:03 watch the game development by GPT in15:05 Cursor, because you could see how it15:07 generated images of characters, the15:09 level, and so on in the chat on the15:11 left, and on the right, it opened a15:13 browser window, and you could see the15:15 game changing on the fly as new parts15:17 were added to it. In the end, the games15:20 from both models turned out very15:22 different, even though both models used15:24 the same reference, the same skill, the15:27 same acceptance criteria, and the same15:29 approach and methodology to development15:31. And GPT 6.1 SL ended up with, well, a15:34 sort of unique game, let's say, very15:36 small and intimate, where you have to15:39 hold out for 90 seconds while hordes of15:41 zombies attack you. You can see the15:43 result on the screen right now. Let’s15:45 watch a little bit. You can draw your15:47 own conclusions. And now let’s look15:57 at the result from OPUS 5.5. The game16:00 turned out, well, much larger in scale16:02 than what GPT 6.1 Soul made. And what I16:04 especially like is that in the16:05 reference, there were these16:06 inscriptions on the floor. And here,16:08 when an event is triggered, for example16:10, when you blow up a large number of16:12 zombies with a gas canister or a fuel16:14 tank, the words "Gas is your friend"16:16 appear. Just like it was in the16:19 reference. Meaning, OPUS interpreted16:21 these floor inscriptions as part of the16:22 game's style and added many different16:24 variations of these messages for16:26 various events. Besides that, it16:28 created a multitude of different16:30 weapons that you can use to fight off16:31 waves of zombies. And overall, the game16:34 turned out quite dynamic and is16:36 interesting to play. I will leave all16:38 the links to the games in the16:39 description below the video. You will16:40 be able to try playing them too. Or16:42 rather, there will be one link, and16:44 through this link, all four games will16:45 be available. Yes, of course, not16:47 without some glitches. For example, you16:49 can see that when the character raises16:51 the gun too high, their front arm clips16:53 through the body. But this is easy to16:55 fix. I know this because when I was16:58 making the next game, I also had16:59 similar errors, and I corrected them17:01 and added those instructions to the17:03 skill so that such errors happen much17:05 less frequently. And now we can watch a17:08 little bit of the result, what kind of17:10 game turned out based on the reference17:11 from Claude Opus 5.5. But I thought17:35 that even this wouldn't be enough for17:36 us. First, because I really want to17:39 push this whole thing to the limit, and17:41 second, because generating each game17:43 like this only takes me 3-5%of my17:44 weekly limit, which is much less than17:46 what I spend on the tests I conduct in17:48 my videos. And so, there will be one17:51 more game, which will be made in the17:53 Diablo style. And we will try now to17:55 make not just a game, but a17:56 full-fledged experience. A few words17:58 about the concept. This concept was18:00 made by one of my subscribers, who also18:02 publishes devlogs about their game's18:04 development on Discord. You can join18:06 the Discord and play this game, as well18:08 as a large number of other games from18:10 other participants. So join in as well,18:13 and share your own games. The link to18:15 the Discord will be in the description18:17 under the video. You can see the QR18:19 code on the screen. But let's continue.18:22 So, you can see the reference on the18:24 screen now. The game is called Night18:26 Camp. It is an isometric camp at night.18:28 A campfire, a cauldron, carts, horses,18:30 and a misty swamp all around. The game18:32 controls will be just like in Diablo.18:34 You will need to walk and attack using18:35 the mouse. We will try to create a full18:38 experience, so in the camp you can pick18:40 up a quest, go outside the village,18:42 fight a boss, and come back to turn it18:44 in. Next, I copy the reference to the18:47 project folder, call the "ref to game"18:48 skill, and provide a link to the18:50 reference. And while Opus makes the18:52 game, I will share some interesting18:54 facts about how this game was built.18:56 The generator draws one piece at a time18:58. It creates the background using depth19:00 layers. First, it writes a so-called19:02 style bible. And this style bible is19:04 included in every image generation19:06 prompt. The code handles scale,19:08 lighting, fog, outlines, and absolutely19:10 everything that moves. Baking glow,19:11 shadows, particles, text, and water19:13 directly into the image is strictly19:14 forbidden. The engine handles all of19:16 that. The user immediately receives a19:18 link to a page in the browser. The page19:20 reloads when source files are updated,19:22 so you can see the game development19:25 process live. A total of three19:27 animation approaches were tried. The19:29 first was to create a sprite sheet of19:31 animation frames, for example, walking.19:33 I abandoned this approach immediately19:35 because GPT still doesn't know how to19:37 generate sprite sheets properly. That19:39 is, the most likely scenario is that19:40 only the right leg will walk there. We19:42 also tried making a full picture of the19:44 character and cutting it into pieces.19:47 That didn't work out well either, at19:49 the very least because the neural19:51 network doesn't have good enough vision19:53 to slice up small parts. Therefore, the19:56 most viable working approach is to19:57 generate separate character parts and19:59 then animate the whole thing in code.20:01 This is all done using a rig and20:02 skeletal animation, which is then20:04 calculated directly in the engine. The20:06 character is first established in a20:08 so-called rig pose. The legs are drawn20:09 under the hips, and the arms do not20:11 overlap the body. Then the generator20:13 draws that same character in parts. A20:15 torso, one arm, one leg. One drawn leg20:18 does the work of two. The back one is20:20 drawn from the same part, but behind20:22 and slightly darker. And the limb is20:24 cut into two bones. The thigh rotates20:26 around the pelvis, the shin around the20:27 knee. The seam is covered by a round20:29 joint cap, cut from the texture of the20:31 limb itself. The main problem with any20:34 procedural walking is that feet slide20:35 on the ground, so the gait phase is20:37 calculated from the distance traveled,20:39 not from time. Each leg has its own20:41 path. When supporting, it moves20:42 backward exactly at the body's speed,20:44 and during the swing phase, it rises in20:45 an arc. The knee is located via inverse20:47 kinematics from the hip to the ankle.20:49 The pelvis height follows the20:50 supporting leg, not a separate sine20:52 wave. The arms move in opposite phase20:54 to the legs. That is the kind of20:55 description Claude prepared. I hope it20:57 was clear to everyone. But most20:59 importantly, you can see an example of21:00 the animation on the screen right now.21:02 And it actually looks pretty good, in21:04 principle. Sometimes, for instance, a21:06 horse in the game is drawn as a single21:08 solid piece, so a weight map was drawn21:10 for the horse. The red channel handles21:12 the neck, green for the tail, blue for21:14 the head. Then the shader rotates the21:16 pixels around the root of each bone and21:18 bends the whole thing at the base. In21:20 other words, thanks to the weight map,21:22 you get proper bends, rather than the21:24 horse twisting its neck like a camel.21:26 Although such problems did occur in the21:28 initial stages as well. Animations are21:30 shared between characters; that is, the21:33 neural network literally animates21:35 walking for one character first, and21:37 then applies it to all other similar21:39 characters. Because of this, no21:40 additional work is done. And that is21:43 how the optimization happens. The21:45 animation is definitely measured by21:47 critics, not just visually inspected.21:48 For each rig, every frame collects the21:51 coordinates of all joints. And then, a21:53 script uses these coordinates to21:55 calculate foot sliding, limping, bone21:57 stretching, and jitters during21:58 transitions. And additionally, of22:01 course, independent critic agents22:03 simply look at the resulting images22:05 produced from these animations. That is22:07, literally the frames of all the22:09 animations. And, as I already said, all22:11 the weather effects: fog, rain,22:13 lightning, all the light, fire, all the22:15 texts, light and shadows, everything22:17 was done procedurally in the engine. By22:20 engine, I don't mean a specific engine;22:23 it’s more of a custom-built engine22:25 that allows for quickly adding all22:28 these effects to the game and creating22:30 all those skeletal animations I just22:33 talked about. And yes, it works on the22:35 web, right in the browser. If you want,22:37 you can just ask Claude or Codex to22:39 port all of this into your engine, for22:41 example, Godot or Unity. It will also22:44 be quite easy to do, because all the22:46 graphics are already sliced into assets22:48 and properly packed. But in the22:50 meantime, our game is ready, and we can22:52 finally play it. If you like what I do,22:54 you can support the channel on Boosty.22:56 You can see the QR codes on the screen;22:58 you can subscribe or make a one-time23:00 donation. It really helps the channel23:02 grow. Links will also be available in23:04 the description. And now we continue.23:06 So, this is the Diablo-style game we23:07 ended up with. But to make it even more23:10 interesting, I asked to generate sounds23:12 and music. And besides that, character23:14 voices as well. For the voiceover, I23:17 used Google Text-to-Speech via the23:18 OpenRouter API. Various voices are23:21 available there, including support for23:23 the Russian language, and you can also23:25 generate lines and set special tags and23:27 intonations. And the result is really23:30 cool. Now let's play the game a little,23:32 and without further comment, let's just23:35 take a look at the result.23:38>> Herbs won't cure the curse, but they23:40 will stop the bleeding.23:42>> They are led by a bone lord. He is at23:44 the ruins in the northeast. Kill him.23:47>> I will.23:56>> Rain. The lord is somewhere nearby.24:11 Alive in my domain.24:21>> Not enough mana.24:23>> You only delayed the inevitable. Sleep,24:30 lord, forever now. The lord is dead,24:40 take your reward. You saved this camp.24:44>> He is bigger.24:45>> Potions are 25 gold. Click again, and24:48 it is yours. Here is the potion. That24:50 will be 25 gold.24:52>> The camp will survive the night. Thank24:55 you, warrior.24:55>> Well, those are the games we ended up24:57 with today. I hope that you enjoyed24:59 them. As I already said, you can find25:01 the skill in the description for free25:03 and install it openly into Claude or25:06 Codeium. Besides that, in the25:07 description you can also find a link25:09 where all four games are available, and25:11 you can play them yourselves. Leave a25:13 like. That way I know that you like25:14 this kind of content. Write in the25:16 comments if you liked it or not, and25:18 which game you liked the most. Don't25:20 forget to subscribe to the channel. It25:22 really helps it grow. And that is all25:24 for today, bye everyone. y
4,680 words · 687 lines







