The Mezunian

Die Positivität ist das Opium des Volkes, aber der Spott ist das Opium der Verrückten

Boskeopolis Land: Let’s Code a Crappy 2D Platformer Like Millions o’ Other People on the Internet & Lose Interest & Give Up Only a Few Months In, Part LI: Cascade Parade

Cascade Parade

I particularly liked this level’s gimmick o’ log platforms moving leftward o’er deathly water & the player needing to hop from platform to platform rightward gainst the tide. Tho I can’t imagine a gimmick similar to this has ne’er been done before, it’s rare ’nough to feel fresh, & yet also feels nature, simple, & integrates with the game’s core gameplay well. I’ve been conscious o’ the risk o’ breaking too far out from this game’s core gameplay with level gimmicks, which can be mo’ alienating than interesting, specially if the gimmick isn’t truly original, just different. ( This is why I canceled a shmup level I was working on. )

The way the logs are programmed isn’t how they seem. The normal way one would expect, with each log being its own sprite & a log-spawner sprite @ the end, would not only create a lot o’ sprites, but since these sprites need to always be in-sync with each other, they have to always be updating & always have to move vertically when they should, which, if they did so by interracting with the water tiles, would require the whole map to be running & interactive. All o’ this seemed like it might go slowly, so ’stead I had all the logs be 1 sprite with 4 or 5 rectangles for drawing the logs & hit detection, which are updated based on the sprite’s x position, which constantly moves left, & the camera position. While this is much mo’ efficient, the downside is that it makes making the logs interactive with the water not work… so I just cheesed it manually programmed their vertical positions in their update code, based on their x positions. The downside to this is that in order to change the map layout, one has to reprogram the sprite code; but the upside is that I didn’t have to add extra code to the water blocks to make the logs interact with them differently & made it simpler to make the logs halfway into the water blocks.

Due to the difference o’ going rightward gainst-stream & leftward downstream, I couldn’t resist applying Wario Land 4 style “folded design”; granted, the way back is easier, ’less the player insists on jumping from log-to-log backward to save time for the time score, which can be e’en harder than going rightward.

’Twas tricky trying to get the difficulty & length right, & I’m still not sure if I shouldn’t have added some space after & ’tween the 2 poorly-drawn dragonflies. Just jumping from platform to platform by itself is surprisingly tricky to get used to, specially when going up waterfalls, so I made the 1st area just platform jumping, followed by a waterfall, before gradually introducing extra obstacles like walls, dragonflies, & axe-throwers.

1 thing I’d thought o’ doing with this level was having a hidden alcove, perhaps where the diamond would be, ’hind the final waterfall @ the end. There were 2 reasons I nixed this idea. 1, I thought it unfairly broke the rules this level set out: the level goal message clearly states that the water is deadly & you should ne’er touch it. The 2nd, mo’ important reason, is that jumping from log to log with waterfall in front o’ you making it impossible to see would be effectively luck-based. I guess I could’ve put solid ground where the waterfall is — perhaps e’en have a piece o’ ground jutting out from both sides as an extra hint that there’s something there — & just ignore the fact that logs are magically going through ground. But I already found a cleverer, less cliché hiding place for the diamond ’bove the wooden cage holding the axe-throwers.

Graphically, this level was me @ my weakest. I’ve already mentioned my failure @ animating the dragonflies — to the point that I should’ve just used the Pollos ’stead. We also have yet ’nother background that’s just a photo saved with a limit palette & dithering without e’en making the background tile horizontally, so I had to just make it lay stationary where’er you scroll. I had worked on a custom-drawn rocky cliff background with waterfalls, but it was looking much worse than this for the effort ’twas taking me to draw it, so I nixed it. Perhaps ’ventually I’ll improve the graphics in this level, but for now I need to move on so I’m not still making this game when I’m in my 40s.

Learn mo’ ’bout Boskeopolis Land @ https://www.boskeopolis-land.com.

Look @ its sloppy source code @ https://github.com/jjwmezun/boskeopolis-land.

Posted in Boskeopolis Land, Programming