Like many young kids, my 7 year old son loves Nintendo. Super Mario games are his favorite. Last year just a day before our summer trip, YouTube recommended a video on how to make 2D games in Godot game engine by Brackeys. As an avid gamer and programmer, I found Godot very understandable and easy.
So I made the game in the video. It was a platformer that had mario-like features. Played it with my son, he loved it. So I decided to turn this into a father-son activity. Besides I wanted to learn game development for a long time.
Every evening at our summer trip, we would play the game and my son would suggest new features. After he went to bed, I was working to add what he wanted, and luckily most of the nights the game had the feature. One night he wanted double jump, the other night secret section in the map. The list went on. Health system with heart count like Zelda, a sword to our main character, potions, chests, anything a Mario fan can imagine. All added to the game. It was like a kitchen sink example of a game, but we had fun and I was learning new skills.
Where we needed new animations, I purchased aseprite and started drawing pixel art animations. I made the ladder climb animation. Drawing pixel art is a completely different area of expertise, and I know very little about drawing (I really suck at drawing).
When we required new sound effects, I plugged in my podcasting microphone and my son did the effects. The death sound, ouch, is him. Sword slash effects are me.
As anyone that produces any kind of digital work, I shared the status of the game on social media. This is the last version of it, posted the day our summer trip ended:
Çok fazla spam olmasın diye her güncellemeyi atmıyorum ancak son 3-4 günde:
— Seyfeddin Bassarac (@seyfoyun) August 5, 2024
- Sağlık sistemi, hitbox ve hurtbox (vurma ve dayak yeme)
- Bölümde gizli alanlar
- Double Jump
- Coinlerin yukarı aşağı hafif dalgalanması
- Merdivenler
ekledim. İlginçtir en zorlayan merdiven oldu.… pic.twitter.com/ttnnPrX7FX
This is the death sound effect:
Dün karakter ölünce ses çıkarmıyor diye mikrofonla oğlumun sesini kaydettim, ölünce o çalıyor. Bir de yürüme ve zıplama efektleri ekledim: pic.twitter.com/LStLMcFSxD
— Seyfeddin Bassarac (@seyfoyun) July 29, 2024
This year’s summer trip we started working on it again. I decided to put periodical devlogs for the game. I don’t think it will turn into a full game, but sharing the process may inspire you.
So first thing this time, my boy (in Kratos’s voice) wanted an underground level. So we’ve built one:
I used the same sprites as the first level, but added a dark color mask to the layers to create the underground effects. Also found a torch sprite and added 2D point light sources to them to increase the contrast. Also while playing Hollow Knight, I realized that the main character always has a very light glow around it at all times. So that’s in the game.
Roll was a highly requested feature, so that’s also in the game.
Kids love lava, so obviously dangerous lava fills the pits of the level at all times. Found a gurgling liquid sound from royalty-free sound websites and added it as 2D audio. 2D audio means the sound gets louder when the camera gets closer to the audio source in the level. Added reverb effect to the sound effects bus to create a cave-like ambience.
Under the hood, I’ve refactored the main character code using a state machine. Now everything is well structured and a lot of the animations bugs are gone. But the combat system as general really bugged me. I was using a sword sprite attached to my character sprite, and the sword would rotate when the attack button would be pressed. Instead, I drew an attack animation using aseprite. Now the attach has quick anticipation frames, followed by an instant slash with a large sword trace visual:

The self-made sound effects were a little out of place, so I replaced them with sounds I got from a sound pack I purchased.
Now the attacking is okay-ish, but the enemies should respond better to attacks. So after this post I’ll work on impact as and the variety of different attack animations. Jumping and attacking will have a wider slash, roll and attack will be a thrust and so on.
I've redone the jump as well, now the character has kinematic jump, the velocity changes when falling down, the horizontal speed affects the jump. Overall the jump feeling is more realistic.
My son mostly finds ideas from Super Mario games, so he asked for invisible question blocks, so I made them as well.
Here’s what I have so far:
I’m also trying to keep up with the theory of game development as well. Spending my idle time to learn how other Godot developers create their games (the Godot community is amazing). About the finish “A Theory of Fun for Game Design” by Raph Koster and it already changed the way I look at games.
For the pixel art, bought the Pixel Logic book by Michael Azzi and it’s a great primer on how to draw proper pixel art.
Pixel Logic also has chapters on animations (which are delivered as HTML files in addition to the PDF), but I’ve stumbled upon Penusbmic’s Animation tutorials. Really like his style and learned a lot from his approach.
Also purchased Game Feel, a book about how to achieve certain effects by successfully combining animation, effects and sound to create that, well, Game Feel. I believe the techniques here will be useful for my animation work on iOS apps as well.
Looking forward to give more updates on the game, hopefully very soon.