My first gaming project ever using Microsoft MakeCode Arcade!
I got a PYGAMER from Adafruit a month or so ago because it just looked like it would be a load of fun to goof around with as a small handheld NES emulator. It delivered on that front, and I tweaked Adafruit’s printed housing to add a (relatively) ginormous 2000 mAh battery to get longer periods of play.
The potential of the platform seemed wasted on games that already existed though. I needed to create something new.
This was not without great internal debate, however. The desire to make games has been in me for some time, but as one of those “when I have the time,” things that have been put off indefinitely for fear of a potentially steep learning curve. MakeCode Arcade’s simple interface got me to take that first step with the promise of building a game with Lego-like blocks of code.
So… let’s get into what was learned on this journey:
Title Screen / Music
Tone blocks, you were the easiest to understand and have made this game what it is. Thank you.
You can’t truly have Trogdor without his iconic theme. You don’t even have to click that link to know how it goes. It’s in your head right now. It was even in Guitar Hero 2. You’re welcome.
Sprites / Pixel Art
Maybe comes naturally for some, but as far as I’m concerned, this was not for the faint of heart. The limits on the color palette and sprite size were a challenge that required a lot of creativity coupled with trial and error. How developers and artists can get these things to look great and animate them is (currently) beyond me.
As it stands, I’m most proud of how that fireball turned out. It’s so horribly blocky when viewed close up, but looks great when fired out of Trogdor’s gut (P.S. how do I get it to fire from his mouth?!).
Okay, okay… I’m proud of how Trogdor turned out too… Behold the majesty of that beefy arm!
Code / Logic
Initially, the game was going to use some of the coding logic seen in the Galga tutorial, but that ended up giving me an “020” error with a frowny face whenever played for a hot minute on the PYGAMER. Not entirely sure why that wouldn’t work, but I did discover a clever alternative in the “Eat the Fruit” game found on the main page. Instead of individual “on game update” blocks for each sprite, this code cleverly used an “if/else if” block along with a random number generator to pick what sprites fly across the screen.
I used that as a basis for the logic and tweaked it to my liking for this game.
I then added all of blocks that determine the sprite interactions, and we had ourselves a game.
Speaking of which…
It’s fairly straightforward. You control Trogdor’s movement with the D-pad and burninate with the A-button. The interactions with the sprites hopefully make it a bit more interesting.
+1 point for chowing down (running into).
+0 points for burninating.
+2 points for burninating.
-1 heart for getting attacked by one.
+5 points for burninating.
-1 heart for crashing into one.
-1 heart for getting arrowed (ow, my skin!).
Cannot be burninated.
Got it? Great, let’s play now! Like, start mashing buttons right here!
Like what you’re seeing here? Leave me a comment below, follow me on Twitter @DragonMtnDesign, or say hey if you ever bump into u/DragonMountainDesign on Reddit.
Adafruit even covered this game on their blog. I was really excited to see that.