The first game using Macaw

After a few breaks and change of plans, I was finally able to finish the first game using the game engine I’ve been working on! Or should I say the second game? After all, pong game was done a while ago 🙂

Anyway, Crazy Bird (very creative name, I know) is done and playable. I can add and improve many and many things, but at some point I had to say ‘hey, this is it’. I started this game to prototype some ideas for more advanced games. This way I (or you, my dear reader) can use some parts of this game for a different game. I’ve heard from many other developers (and other professions as well) that starting is many times the hardest part. So, here I present you “the start” and best of all: free of charge 🙂

Video: (I’ll embed the video on this page later…)

The game is very simple, it consists of you, as a bird (macaw), trying to collect as many good fruits as possible. The challenges you’ll face are mushrooms which will make you crazy, and bad fruits which will deduct one point of life.

Now talking about the more tech side of the game… Macaw uses an ECS approach like I mentioned in this previous post. Because of that, in this game, I’ve used in total 8 systems where 5 custom systems made specifically for this game. It’s a very short game so I only created 3 scenes (menu, credits and game). I also counted the lines out of curiosity and there are a total of 1048 lines of code. Not so bad, right?

You can use the game’s code to learn more about how to use animation with macaw, play some music, handle object collision and event, scene management… You get the idea. Even though it’s a simple game, It’s a complete one. I hope this code can be used to help others. I might talk about each of the items I listed in this paragraph in the future and/or write some documentation to facilitate the learning process.