Devlog #15: Bringing the Mechanics Together

Hello! I’m fedellen and welcome to my 15th weekly devlog. This week we’ve made some great leaps in the development of our unicorn runner project. abonbon delivered some beautiful background layers which I’ve implemented with a whole new system which parallaxes both horizontally and vertically. Reading back on my last post, three side goals I set for myself were to import balloons, spark traps, and to get an Astral Defense iOS version compiled. While I didn’t bother with compiling an Astral Defense version quite yet, the two obstacles have been added to the game and have really amped up the gameplay.

New Background Layers

When I’m presented with some assets for something I’ve never implemented I’ll often stare at them puzzling for an abnormal amount of time before finally coming to the conclusion that I get to learn something new. Its been a little over a year for me that I’ve been making games, or even programming for that matter. Somewhere along this path I’ve gone from Googling programming problems every 10 minutes to almost never Googling programming problems and that not only saves time but feels pretty good.

I’ve heard that adding too many background layers with Stencyl can get intensive on performance so I was fairly worried about how to go about implementing them. In the end I decided to put them all in the same layer as actors and simply attach them to the bottom camera every time the camera is updated. Additionally I added a variable to have them fall off the screen at different speeds depending on where the camera is; causing a vertical parallax effect. They all use the constant speed and tiling behaviors I’ve already wrote which easily handles the horizontal paralaxing. You can see examples of it in motion in my recent IndieDevHour or ScreenshotSaturday tweets.

Stencyl Haxe Code - Vertical Parallax

Making the Gameplay

After importing the background layers and getting it all functioning it was time to get some obstacles imported and start making a game out of this prototype. Balloons are functioning in game as both obstacles and “boosts” as they knock the player up or down depending on from where they collide. Spark traps are functioning and will be zapping the unicorn, ending the player’s run. In addition I dropped in a placeholder “dark magic orb” as another game ending obstacle which flies through the screen at 1.5*constant_speed. These three obstacles along with the rainbow rails and coins are already providing me with many tools to create fun jumping puzzle combinations.

Everything spawns just off screen and uses the same constant speed behavior to keep things consistent. I place a dummy actor at the end of a puzzle to trigger the spawning of the next event. A coin event spawns on every other event to break up the action a bit. Right now I have 4 different types of puzzles but I intend to expand into many more including some long rainbow rides to the top layer. There is a bunch of polish to do on all of the current mechanics in game and a couple fun ones yet to add.

Rainbow Sparkle Time Early Prototype Screenshot

Next Time

The goal next week is the keep pushing ahead on development of the unicorn runner whenever we find time. Much of the core gameplay is now prototyped and functional but still very unpolished in its current state. Artistically there is a lot of animation and assets to create/polish which will be an ongoing goal for weeks to come. Recently I did compile the first .apk of the project for my phone so I can now test on the go. A personal goal of mine this week will be to create at least 10 different jumping puzzles to add to the game and add in the special “star mode.” Stretch goal would be to start developing and adding some sound effects.

Thanks for reading!
fedellen, Pixel Pajama Studios

Leave a Reply

Your email address will not be published. Required fields are marked *