Well, now it’s certainly been a while since I’ve updated this. That’s largely thanks to school taking my attention, followed by me dropping out, and then starting an entirely different career path. But enough personal stuff-- my winter vacation has given me time and energy to get back to work, and it feels good. Here’s a list and description of what’s new/different. Some of these things were added during my brief spikes of motivation over the last few months, but a lot of it was done in the last week.
Starting/Respawning Platforms

It doesn’t sound exciting, but this simple change makes a huge difference in how I can design stages. They work like this: At the start of a game, or when you respawn, each player has a starting platform to stand on. Bombs and everything else go right through them. As soon as you step off, they disappear. Also, when you respawn, they disappear from under you after a few seconds.
Why they’re a big deal
Prior to their addition, I had to design stages with two rules in mind that I decided were important:
-
As the level is destroyed, each player’s spawn point should not be affected-- you shouldn’t spawn in the air and be expected to find your footing on the way down.
-
The indestructible platforms that the players spawned on should not be easy to “camp” on. If I used just one or two indestructible blocks, it would be very difficult (in most stages) to kill a player perched on top because bombs tend to roll off. My solution was the “jelly bowl” configuration (described in a post above). It did what I needed it to do (mostly), but it also took up a lot of space and it provided walls that players could walljump off of that I didn’t necessarily want them to.
So these things immediately and entirely eliminated both of those design limitations.
Respawn Blocks
Respawn Block gif
These blocks can be blown up like any other destructible block, except after a few seconds, they (try to) respawn. If something is blocking them, they just wait until the space is free. Also, unlike other blocks, you can break these with your melee attack, allow you to dig through certain areas. Kinda neat, right?
Why they’re a big deal Similar to the starting platforms, respawn blocks allowed me to make stages more destructible which is a big deal because I consider that to be the game’s primary hook. I decided early on that all stages need to be traverse-able enough when all of the destructible blocks are gone that the players can still get to each other. Previously, that meant that indestructible tiles had to hog up a bunch of extra space. Worse still, I had to find other ways to prevent cheap camping tactics, like placing timed spike traps on a lot of the smaller platforms. The respawn block immediately allowed me to replace all of those unwanted indestructible blocks.
The new stage elements have meant a lot of stage adjustments, so for that reason I’ve temporarily removed the “remix” feature described in my previous post. They’ll be back though.
Match Timer
I feel like the common theme with these updates is “well, duh”. So yes, I finally added a timer to keep matches from going too long. Usually matches end in under three minutes, but there are a couple of stages where it becomes harder to get a kill as the terrain is destroyed, and I find that it gets a bit annoying. If the match ends and both players have the same number of lives left, Sudden Death starts (both players respawn with one life). Pretty much what you’d expect. The only thing is I don’t have an option to play without the time limit now. A big reasons why is that the menu system I made is terrible to work with (it was a learning experience, at least). I’ll probably let players disable it if/when I feel like dealing all of that.
Melee Clash
Along with the array of explosives at your disposal, players can also get a kill with a swipe of their claws. The game gets a bit silly when players find themselves close to each other, madly mashing the attack button while also trying not to get hit themselves. To help separate players, I’ve made it so that if two players melee attack detection areas collide, the players bounce away from each other.
End Match Screen
I always wanted to display some kind of stats at the end of a match. The easiest thing to track is player deaths (easier than tracking kills), so for a very long time, I had a horrendously ugly screen for this purpose. It was functional, but… well, just look shame.
End match screen (OLD)
Before my recent spike in ambition, I planned on axing the feature altogether. Doing it properly would take more work than it would be worth, I thought. Then I changed my mind. Here’s an example of the new version:
End match screen (NEW)
It’s still simple, but hopefully the improvement is obvious. I’m sure the pixel art isn’t blowing anybody’s mind, but I’ve been seriously lacking confidence in that area, so I’m proud of myself for how it turned out. The icons show what killed each player, and while I recognize that I need a text label to identify that, I couldn’t think of what to put exactly. “Cause of death” sounds too dark. “Lives spent” sounds too vague. Maybe somebody here can help me out with that. I’m trying to convince myself to do a “kills” and “self-destructs” icon list, but I’m not sure it would add that much. What I would like to do is make nine cat faces of each respective player’s colour that are replaced by the “killed by” icons. They icons already pop in one after another with a bomb blast sound effect. It’s kinda cool.
AWARD SYSTEM
You may have noticed the weird labels at the bottom of each panel, and you can probably guess what’s going on there. I wanted to do an award system ever since I thought of the stupid cat pun “PAWLESS VICTORY” (“clawless” would also work… maybe I should change it?). But I didn’t want to do it on account of this game’s most obvious inspiration, Towerfall, already having done it. But then I realized that Smash Bros. had already been doing it for years before that, so who cares, right? I’m sure you can point you dozens of other examples.
I don’t really want to explain anywhere in the game what each one means. Most of them are (or will become) obvious anyways. For the sake of this thread, I’ll share a few of my favourites:
“CLAWLESS VICTORY!” - won match without any melee kills
“PURRIST” - collected 0 power-up crates
“CATATONIC” - did absolutely nothing the whole match (no input)
“NEKOMANCER” - lots of Ghost Bomb kills
“CHEATER!” - I decided to leave a debug feature in. Play around with the keyboard, and you’ll get it.
“SCREW AROUND TOO MUCH” - lots of deaths by sawblades (hopefully somebody gets the reference
)
BLOOM
This was easily the easiest new feature to implement. I just followed along with a (somewhat shoddy) YouTube video. It provided a shader script that I don’t think it ever actually used, but it did show me the import-able effects, including bloom lighting. I think it really sells the arcade-y, neon look I was going for. For comparison, here’s the (boring) old version:
No bloom
And here’s how it looks now:
Bloom!
I realize it might be a bit too much for some folks’ eyeballs (I played with the settings, and I decided that this is how it looks best), so you can press ‘B’ to toggle the effect if you like.
MINOR UPDATES
There are many, including stage tweeks. The notable things are:
-
Force Bomb: Only explodes when touched by another bomb after it has been “deployed”.
-
Froggies! The little critters hopping/flying around hopefully give the stages a bit of life, so I’m going to add a few more varieties. The frogs should have been easy, but I had a really hard time getting the animation to work properly. Specifically, the “hopping” frame wouldn’t switch to the neutral “landed” frame immediately all the time. They’re behaving now, and they’re easily my favourite so far.
Frogs gif
Note: The graphics in the gif are kinda messed up for some reason. Check out the video at the bottom (or better yet, try out the game) to see how it’s supposed to look.
-
Critters are now compatible with (and squash-able by) crush blocks
-
Crush blocks are now compatible with stage details (like grass, bushes, etc.)
I’d like to add:
Grasshoppers: using essentially the same code as the frog, only with longer pauses which occasionally goes to a leg-rubbing animation with accompanying chirp sounds.
Butterflies (at least two colour variants): If I can make them land on a still player’s tail or nose, I’ll be very happy, even though it’ll basically never happen during a real match because players move around so much.
Snails: It’s going to be tricky to code its movement if its going to go up walls and ceilings as I’d like. If the ground they’re on is destroyed (and the snail itself somehow barely escapes the blast), they’ll escape into their shells and plop down to the ground (or the abyss).
… And I will very likely add a few more after that.
And I think that’s about it for now. So I’ll end this with a link to where you can download the game (two game controllers are required to play, but you can use spacebar to activate player 2 when the match starts if you just want to play around and see how it feels).
Download the most recent build of Cataclysm here!
And also a video of my girlfriend and I playing in which I try to make use of the newly-added passageways to the outside of this particular level, only to accidentally blow myself up in the process. Watch the video here.
As always, thanks for reading.