The Godot game engine, once an obscure open-source project, has recently gained significant attention. Known for its node-based system and capabilities in both 2D and 3D game development, Godot is a powerful tool for game creators. It has been used to develop successful games like “Brot Doe Keeper” and the upcoming “Do Drop Dynasty.”
Many people wonder if Godot is a good choice for game development. As someone familiar with this engine, I decided to put it to the test by remaking my brother’s game, “Sky Balloon Freakout.” This project allowed me to explore Godot’s features and share my experience with you.
A few months ago, my brother challenged himself to create a game in just one day, resulting in “Sky Balloon Freakout.” The game involves navigating a balloon through clouds while dodging fighter jets and bullets. Inspired by his work, I decided to create my own version with a unique twist.
We started by setting up a new project and implementing basic movement. Initially, nothing happened because I forgot to add input mapping, which is crucial for player controls. Once corrected, I smoothed out the movement to make it feel more natural and added a slight rotation effect for direction changes, although it needed refinement.
Next, I established boundaries to keep the player within the game area. With basic controls in place, I added a scoring system. The score increases over time, but resets if the player goes out of bounds. A “Press to Start” prompt was also included to initiate gameplay.
To add excitement, I introduced an enemy that follows the player. If it makes contact, the game resets. I also worked on bullet mechanics, ensuring they spawn randomly for added challenge. Although the initial artwork was basic, I planned to enhance it later.
Creating artwork is my favorite part of game development. I transformed my brother’s balloon character into a vector graphic and designed additional elements like bullets and jet fighters. Adding a drop shadow effect gave the visuals a sticker-like appearance, enhancing the game’s aesthetic.
To complete the game, I designed a sky background inspired by a popular animated movie, added textures, and applied a vignette effect to focus attention on the player. I also created a logo, naming the game “Sky Balloon Freakout DX” to signify its uniqueness.
Polishing the game involved refining the menu, creating a cloud shader for the background, and adding sound effects. I introduced slow-motion effects and visual elements like exploding triangles upon player death. These enhancements, along with varied facial expressions for the balloons, made each playthrough feel distinct.
Remaking “Sky Balloon Freakout DX” was a rewarding experience, especially since it was for my brother. This project demonstrated how user-friendly and versatile the Godot engine is for game development.
If you’re interested in learning to code, consider exploring Brilliant, an educational platform offering lessons in math, programming, AI, and more. Their interactive courses are highly effective, and I recommend their “Computer Science Fundamentals” course for those interested in programming and algorithms. Brilliant offers a 30-day free trial, and the first 200 viewers can receive a 20% discount on their annual premium subscription by visiting brilliant.org/goodg.
Thank you to Brilliant for supporting my game development journey. For more of my work, visit my website at gus.fun, where you’ll find interviews, FAQs, and more. See you next time!
Start by setting up a new project in Godot. Implement basic player movement and input mapping. Experiment with adding a scoring system and boundaries to keep the player within the game area. This hands-on activity will help you understand the core mechanics of game development in Godot.
Develop a simple AI for an enemy that follows the player. Implement collision detection to reset the game upon contact. This activity will enhance your understanding of AI behavior and collision mechanics in Godot.
Design your own game assets using vector graphics tools. Transform basic shapes into characters and objects, and apply effects like drop shadows to enhance their appearance. This activity will allow you to explore the artistic side of game development.
Incorporate visual effects such as slow-motion and exploding triangles upon player death. Add sound effects to enhance the gameplay experience. This activity will teach you how to use Godot’s animation and audio features effectively.
Refine your game by improving the menu interface, adding a background shader, and testing for bugs. Gather feedback from peers and iterate on your design. This activity will help you understand the importance of polishing and testing in game development.
Here’s a sanitized version of the YouTube transcript:
—
Good! What started out as an obscure open-source project has taken the spotlight in recent years. With its node-based system, 2D and 3D capabilities, and an impressive logo, it’s honestly amazing how powerful this free game engine truly is. It’s also been used to create successful games like “Brot Doe Keeper” and the upcoming “Do Drop Dynasty.”
But the question that most people have is: is it any good? Unlike my other programming videos, I’m actually very familiar with this engine, so instead of just telling you why I like it, I decided to challenge myself to remake my brother’s legendary game, “Sky Balloon Freakout,” and I’ll let you be the judge. Let’s get started!
A couple of months ago, my brother wanted to challenge himself to make an entire game in a single day, and thus “Sky Balloon Freakout” was born. The idea is to float around the clouds and dodge incoming fighter jets and bullets trying to take you out. Ever since he made it, I’ve been curious to see what it would look like if I created my own version and put my own spin on it. So yes, I’m remaking a game inspired by another game.
We created a project, and it was time to implement some movement. It was actually pretty simple; I just added some code, but nothing was happening at first. I realized I forgot to add the input mapping, which is kind of important, and now it works! Next, I wanted to smooth out the movement a bit to make it feel less stiff. I applied some adjustments, and voila! I also added rotation when moving in a certain direction, but it looked terrible. I just wanted the character to lean in that direction, not do a full somersault.
Next, I created a boundary system to prevent the player from leaving the room, which is important. Now we have the basic controls of the game: you can move and go out of bounds. Great! It’s time for some fun stuff like scoring. I added a score meter at the top and a “Press to Start” text to indicate that you need to press space to play. Your score increases every second, and if you go out of bounds, it resets.
Now, we need an enemy—something scary that will make the player want to run away. This is the best placeholder artwork I could come up with. I made the enemy follow you around, and if it touches you, it resets. I also started working on a bullet. It looked a bit odd, but don’t worry; we’ll replace the art later. I made it so that the bullets spawn randomly, which is quite chaotic!
Now we almost have the main core loop of the game, except that the bullet just went through me. It was time for my favorite part of any project: creating the artwork. I turned my brother’s balloon character into a vector version, and after a few iterations, I was happy with how he looked. I then created the rest of the artwork, including a bullet and a jet fighter. I added a drop shadow effect to give it more texture, making it feel like a sticker floating in the sky.
After that, I created a sky background that resembles wallpaper from a popular animated movie. I played around with some textures and added a vignette to keep the focus on the player. Overall, this stuff looks really nice, except for the text. Speaking of which, you can’t have a game without a logo, so I called it “Sky Balloon Freakout DX” because it’s special.
I polished up the menu and created a cloud shader for texture in the background. At this point, it was all about polishing, which has become my favorite part of these projects. I started adding sound effects and made it so that when you die, you go into slow motion. I created some triangles that explode out of you when you die, and after some adjustments, it looked much better. Lastly, I added transitions and more sound effects, including different facial expressions for the balloons to keep each run feeling unique.
And that’s pretty much “Sky Balloon Freakout DX”! It was incredibly fun to remake a game that already exists, especially since it was for my brother. I always enjoy using this engine, and I hope it shows how easy it was to use.
If you’re struggling and would like to learn how to code yourself, check out a word from today’s sponsor, Brilliant. Brilliant has thousands of lessons on foundational and advanced math, programming, AI, neural networks, and more, with new lessons added each month. Their interactive lessons are proven to be six times more effective than passive learning, like just watching random lecture videos.
One course I really like is “Computer Science Fundamentals,” which helps with decision-making, writing programs, and algorithms. I highly recommend trying everything Brilliant has to offer. There’s a 30-day free trial; just visit brilliant.org/goodg or click the link in the description. The first 200 viewers will get 20% off Brilliant’s annual premium subscription.
Thank you to Brilliant for supporting the channel and my game development journey! If you want to check out more of my work, visit my website, gus.fun, where you’ll find interviews, FAQs, and more. I’ll see you next time!
—
This version removes any informal language, potential distractions, and maintains a professional tone while preserving the essence of the original content.
Game – A structured form of play, usually undertaken for entertainment or fun, and sometimes used as an educational tool, often involving a set of rules and objectives. – Developing a video game requires a deep understanding of both programming and storytelling to create an engaging experience for players.
Development – The process of creating, designing, and programming software applications, including games, from conception to deployment. – The development of the new app involved several stages, including planning, coding, testing, and deployment.
Coding – The act of writing instructions for a computer to execute, using a programming language. – Coding is an essential skill for software developers, enabling them to create applications and solve complex problems.
Engine – A software framework used to build and develop video games, providing necessary tools and features such as rendering, physics, and scripting. – The Unreal Engine is popular among developers for its powerful graphics capabilities and versatility in game development.
Programming – The process of designing and building an executable computer program to accomplish a specific computing task. – Programming requires logical thinking and problem-solving skills to effectively translate ideas into functional code.
Graphics – The visual components of a computer program or game, including images, animations, and visual effects. – High-quality graphics can significantly enhance the user experience in video games by making them more immersive.
Controls – The interface elements that allow users to interact with a computer program or game, often involving input devices like keyboards, mice, or game controllers. – Designing intuitive controls is crucial for ensuring that players can easily navigate and enjoy the game.
Mechanics – The rules and systems that govern the gameplay of a video game, defining how players interact with the game world. – Innovative game mechanics can set a game apart by offering unique challenges and experiences to players.
Resources – Assets and tools available to developers for creating software, including libraries, frameworks, and documentation. – Utilizing open-source resources can accelerate the development process by providing pre-built components and solutions.
Algorithms – A set of well-defined instructions for solving a problem or performing a task, often used in programming to process data and perform computations. – Efficient algorithms are essential for optimizing the performance of software applications, especially when handling large datasets.