Slow Rush Studios logo,
    depicting an apprehensive-looking snail rushing forward

Slow Rush Studios

◂  Hot Pursuit
News index
Ragdolls  ▸

Status Update

Contents

This week I tried out a new spell-casting scheme, including adding 2 new spells.

And, atoms learned to apply status effects to characters, such as "on fire" and "poisoned".

Spell Casting

With enemies chasing and killing us (or at least me) pretty consistently now, our existing spells weren't cutting it.

3 months ago in Designing a Magic System I sketched out a design for how spell-casting could work, based on combining any 2 elements together to cast a spell.

Some assisted brainstorming later (thanks Discord friends), I had some initial spell ideas:

Spreadsheet view of a spell lookup table.
Some brainstorming on how the first few elements should interact to cast spells.

A bit of fiddling later, I had the casting mechanism implemented:

I press 2 keys, and my character tries to cast the spell from the table; the red text says what spell elements I pressed.
(Sorry, I have no idea why the video compression makes that text so hard to read!)

Steam Geyser Jump

I implemented the Steam Geyser Jump spell as a test:

Steam Geyser Jump (better names welcome).

3 facts immediately became clear:

  1. You can't tell what elements you're summoning - especially for the second element, since it disappears as soon as it shows!
  2. This control mechanism is pretty hard to use on a keyboard: Q for Water + Tab for Fire, and repeat that if you want to cast it over - under time pressure!
  3. Steam Geyser Jump looks like a fart jump. Oops. 1

Fireball

Okay so it's kinda hard to cast a movement spell that way. But what about combat spells?

Casting 'weak fireball' on an enemy.

The (non-burning) fireball worked a bit better; Tab + Tab is actually easy to press over and over.

Still, it's a bit fiddly - next week I might try adding the "quick recast via Right Trigger" control and see if that improves things.

Status Updates

Hiding in the last few videos is another feature: enemies and players now keep track of when they're affected by status effects like fire!

This also works for statuses like wet and poisoned:

Status effects wear off after time, but using water to clear them is easiest.
(Yes, water clearing poison is odd, but I haven't got a heal spell yet!)

Under the covers, this is implemented by reworking how characters (players and enemies) interact with the individually-simulated atoms: instead of characters pretending to be made of wood atoms that burn, they check to see if there are any nearby atoms that apply status effects. 2

I think this makes sense because conceptually, characters would be "in" liquids, not blocking them - so for example liquids should flow past them:

Now, water flows past players. (Previously, characters would block liquids.)

Playable web build‎

Here, go fart steam-jump your way to higher ground - and give those hounds a bit of fireball medicine:

Click to focus, then play with keyboard and mouse. No mobile support! Give feedback.

Press F1 for full controls, or here's the quick reference:

And here are the new spells to use 'em with:

Old spells:


1

Probably need to have the steam clearly coming from the ground over a tenth of a second or so, rather than seemingly instantly appearing from my characters bottom.

2

This also means you can't put out a fire just by running away from the fire atoms! (that was a bug - I don't think anyone runs fast enough to outrun fire!)

◂  Hot Pursuit
News index
Ragdolls  ▸