Freak Boy Color
My entry to the RiveXContra Scripting Challenge, where I made an entire game in just one week! I love making little games in Rive to learn more complicated setups, but this is the most complex one yet!
Break Down
I went into this knowing I wanted to make a game, but not much else. I hopped into Rive and roughed out a super simple version of the game's idea. That was when I landed on arena survival gameplay with on-screen buttons, and some elements (which at the time were placeholders) started to take shape. At the end of that session, I had left myself some notes on how the game could work and some directions for the design.
Ideation
From there, I had to decide on some design elements and ultimately landed on a classic from my childhood, the Game Boy Color (rebranded for my online handle). This, plus choosing to go to a more 8/16-bit style for the game assets, pushed for additional scripting elements that would need to be made to work across artboards.
This file has three scripts in it. One for the gameplay, and two for the design. At this point, I knew that I wanted to have an 8/16-bit style to the gameplay that could stay flat even through the rotations of the characters/enemies as they moved. This, I figured, would be the perfect thing for scripting. The problem was that I forgot about Path scripts and tried to make an overlay using a Node script that would look at what was beneath it and pixelate it to achieve this effect. While that did not work, it did lead to the scanlines that sit over the screen and are customizable. Next, the blocky effect. Not only does it turn smooth vector shapes into adjustable levels of blockiness, but it also has the ability to counter the rotation of the object to keep the effect flat.
(It also works on type)
Scripting
With those two scripts, I had everything needed to start making it an actual game. This one script controlled the Player’s movement/attacks through the d-pad, A/B buttons, and the charge meter that increases with every kill. It also controls the enemies’ spawn, movement, and hit detection. Additionally, the script controlled the title/game over screens and the current/best times.
I also made a video discussing my experience making this game and my thoughts on Rive's scripting as a whole.
Check that out here: https://youtu.be/thuSnu5D7tk