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 LII: I Wanna Be Your Vacuum Cleaner

I Wanna Be Your Vacuum Cleaner

Accompanying music

I’d been toying with the idea o’ a “race ’head o’ the screen” type level ( distinguished from typical autoscroll levels by the ability to go as quickly ’head as you want, rather than locking you back & forcing you to wait, which I hate ) since near the beginning o’ this project. As that article shows, the original idea was a basic saw. Howe’er, not only is that idea cliché, ’twould also use a factory level, & I already have all 4 o’ that theme’s slots filled, while the new domestic theme has plenty o’ slots to fill.

Having decided this, I for some reason came up with the idea o’ a giant cat chasing you, but then realized that that would be far too difficult to animate, so I changed it to a vacuum, which I could just slide forward without any animation. & ’cause I was extra lazy & too unskilled an artist to draw a tolerable vacuum, I just used a photo o’ my vacuum. I actually like how it looks in all its sloppiness: it’s like the indie video game version o’ a B-movie monster — a B-video-game monster.

Ironically, I would then waste far too much time drawing & tinkering with all the other graphics, including the spinning fan, which the player will barely see, since they’re racing past it just to survive.

Beyond that, the trickiest task was pacing out the level. As I try to show in the video, I paced out the level just so that the player wouldn’t have to e’er stop, which is a philosophy I like to take with level design, inspired by Donkey Kong Country 2. That’s tricky to follow for this level, as the main challenge is s’posed to be holding the player back so they’re @ risk o’ being devoured by the vacuum. When I 1st designed the level, I designed it just like that, with jumps & falls tightly packed in horizontally so that the player couldn’t help but bonk into walls if they didn’t stop. Feeling that that was just annoying, I spread them out a bit, so that it’s possible to not bonk into walls while going straight forward, but in some cases ( such as the staircase midway thru the level ), it requires tight jumping, as there’s li’l space.

Part o’ me still worried that some parts may be unfair for those who aren’t familiar with the level, such as the optimal pattern o’ running under the 1st bouncing ball, jumping o’er the 2nd ball, & then holding the jump button just long ’nough that you can reach the top o’ the block just after & run under the 3rd bouncing ball. On the other hand, I didn’t originally design this setup this way, I just figured it out as I played this o’er 100 times in the process o’ testing & developing it, & I wouldn’t be surprised if a speedrunner could find a better way to beat the score. Indeed, tho this video shows 32 as the score requirement, I lowered it to 30 afterward, as it seems you’re almost guaranteed to get 32 if you’re not intentionally lagging ’hind. & yet I’m just as worried that this level may be too trivial to beat normally. It’s very rare that the vacuum has e’er been able to catch up to me when not intentionally letting it or going for the diamond. This & the fact that the attic level I’m working on may prove to be too complex for the 2nd level o’ the game, I may move this level down to the 1st cycle, rather than the 2nd cycle it’s in now.

I also feel like the diamond isn’t in the most creative place. Howe’er, I wanted to keep the whole level within the screen vertically, so that left nowhere to hide the diamond, other than past the keycane, which is a trick I already used for “Brier Flier”. Anyway, the ease o’ finding the diamond is balanced by how hard it is to grab it without the vacuum catching up to the player — tho this is balanced back by the fact that you don’t have to beat the level to keep the diamond, so you can just grab the diamond & let yourself die. Unfortunately, by balancing the vacuum’s speed to allow you just ’nough time to grab the diamond, this makes it easy to reach just the keycane before the vacuum catches up, as stated earlier. But maybe this all works better if I go ’head with making this the 2nd level.

Read this source code that should be vacuumed up
Learn mo’ ’bout this project @

Posted in Boskeopolis Land, Programming