Version 0.2 of Gaffy Foxers Platformer has gone great! As the project wraps up, though, I would like to look back on what I've actually made. This also gives me some time to share some thoughts on why I made the game as I did.
Version 0.1 as I'm going to call it, started quite well. Made in 5 weeks from basically the ground up (notably, this class did not cover GMS2! I taught myself this between lessons on JS!), it's simple but it was quite fun. Combining the urban environment I've spent my college years navigating with the 16-bit games I love, I feel the mood is pretty novel. My class was very happy with it, though I always wanted to do more.
I'm glad I ended up picking doors to implement first, as it showed my player stats needed a lot of work. Now, they're all persistant, and I even used this opportunity to make some other objects stick around or properly clean up on room changes, something very important if a single level is jumping across rooms.
Semi-solids, (stealing the terminology from Super Mario Maker), were another bit of an elusive item for me. For some reason, though with 0.2 I made them finally work. They work on every object, though I did make some changes later, such as a hard snap instead of a slow rise. This did cause problems, though...
Given I'm adding more objects, I felt a less fragile physics object was in need. Being based on the wooden crate, it acts basically the same, but it won't smash, which is useful for a situation where I don't want it to be lost.
This update was quite indulgent. Many older platforms, including the 16-bit machines I'm immitating, couldn't easily do a fade to black by smoothly decrementing each color. They still had fade-outs, but the logic was much simpler. It's not fully accurate, since I still would need to find actual palette tools in GMS2, but the trick of a color multiply plane filling/emptying the individual channels in chunky steps looks quite nice.
Slopes! Gosh, this is a big enough feature to sell a whole game by! My first approach was, admittedly, very naive. Since at the time, I was using the slower semi-solid logic, a hacky implementation was quite simple, and demonstrated above. Just tilt a semi-solid! This fell apart once I added the snapping, however, as it now snaps you to the Y-position of the top left corner. Since it was either buried, or at the top of a slope, it... broke everything. GMS2 does have a "precise" collision mode, using the actual graphic of the object for collision rather than a rectangle. Using that got me this:
This has, so far, worked even better than the semisolid version, and I will use this wherever it's appropriate in Level 2 (and in a couple places in Level 1!)
Given the SMBUSA elements I've already got, one element I felt was nice from that game to use was a "solid" enemy. Instead of a jump defeating it, it's basically a moving platform. In the final graphical update, they are a builder rat, solid due to carrying a plank on their back. Their logic though... this was another problem point!
Making the logic work to get off of a rat was easy with jumping, but here you can walk off, and this meant you could "stick" to them even from far away should you walk off, or get pushed off. This needed some extra objects to handle it, but it works smoothly now.
My plans for Level 2 involve an under-construction skyscraper, which is likely to have some very breakable materials. Now, there's scaffolding to fill that job, basically being Mario bricks, but themed to my environment.
This is actually a new update for the site since it's not my work on display, though I've shared it on my socials. Having just one song for the entire game wasn't going to work with this new level I've added, so I did some digging on a definitely clean source. In the end, I settled on The Mod Archive, which had a large amount of Public Domain music. It does mean I've had to retire "Jazz Funk Theme", and that song will be sorely missed.
Now, all the features of Level 2 I need are in place, all that's left is designing it.
Oh hey, a level design. This was somewhat improvised on the fly, I feel like that works better for me than trying to sketch it on paper. Designing a vertical level is not easy though, especially if the player isn't super vertically gifted. I feel like the outcome works nice, though, plus the implication that this tower is right next to a *very* tall mountain could be used for a sloping level 3. All the logic should already be in place for SMB3-like all-direction scrolling, too.