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

Slow Rush Games

◂  What a Weekend
News index

Signcrafting and Skill Trees

Contents

Most roguelites let you collect items to make overpowered builds, based on characters with some starting skills.

But I want to go further than that.

What if you could build your own whole skill tree? Let me show you Signcrafting!

Signcrafting

I've always wanted players to have a seemingly-unlimited variety of abilities to play with - for a bit we had Magicka-inspired spellcasting, and then I replaced that with perks that you equip to create your own guns and abilities. 1

Over the last few months, I've been gradually refining that into Signcrafting, the core mechanic of player progression in a run of Signs of Danger.

Signcrafting lets you become so powerful that you break the game: you pick up dangerous Signs,2 which are leftover pieces of alien high technology, experiment with them to learn how they work - and then equip Signs onto your skills to create ridiculously overpowered guns and other abilities.

Understanding Signcrafting

But signcrafting had one big problem: it was completely incomprehensible to new players.

Players might - on a good day - manage to pick up some Signs and equip them to create something like this:

A row of perks assigned to an ability.
A bunch of Signs equipped onto one of a player's gun abilities. Perfectly incomprehensible as far as the average player was concerned.

But fundamentally, players just did not understand that the linear view above was actually a little "gun program" doing something like this: 3

Visualization of the Signs affecting each bullet
Equipped Signs would form a tree-like structure, which means that the gun alternates between shooting a weak bullet that creates big explosions and a slow sniper bullet.

I simplified the mechanics, I improved the UI, I even considered adding a mandatory tutorial (yuck) - but nothing really helped. 4

Until one day, I drew a diagram.

A diagram much like the one above.

And I realized it looked a lot like what other games call a "skill tree":

Screenshot of a Path of Exile skill tree
A very small portion of Path of Exile's skill tree, which is famous for having a ridiculously large skill tree.

Hmm.. what if players could actually do Signcrafting in a UI that looked like a skill tree - maybe that would help players get signcrafting?

Arranging a Tree

Skills in skill trees are normally laid out by hand by game designers, but when players can build their own skill tree, well, that's harder.

First I tried prototyping a force-directed tree:

A force directed tree layout is a mini physics simulation where nodes push each other away & linked nodes try to stay close together.

It was very satisfying to play with, but I just couldn't get sibling nodes (nodes with the same parent) to stay in a consistent order as they moved around.

And that's a problem when a gun shooting "Explosion, Heal" is very different from shooting "Heal, Explosion".

Fortunately D3 has a tree layout which wasn't too hard to adapt:

The Reingold–Tilford 'tidy' algorithm with Buchheim et al's improvements, ported from D3; the output can be rendered in radial (circular) or cartesian (square-ish) modes.
(very rough implementation - you'll notice the tree goes off screen sometimes!))

Now I had a UI prototype, and I just needed to, you know, delete half of the existing signcrafting code and rewrite it to actually use a tree.

No biggie.

Signcrafting with the new tree: making my tommy gun shoot a weak bullet which has an on-hit effect of causing an explosion and every second bullet is a rocket.

But I found a new problem.

Invalid Combinations

Signs can only affect certain other types of Signs.

So if you make an invalid combination, what should happen?

Well, if you put Big + Accelerate (two modifier Signs) on your gun without including a projectile for those two signs to modify... nothing happens! Your gun just doesn't work.

Encouraging players to experiment is important to helping them find game-breaking synergies, but players get very confused when their gun stops shooting.

I briefly considered preventing invalid Sign combinations, but playing with the tree UI prototype showed that was a bad option: Signs often ended up temporarily creating invalid combinations as I moved them around.

Doubling My Scope

What if I just... made it harder to make invalid combos of Signs, by making most combos valid?

  1. Make each Sign be both an Action (e.g. fire projectile) and a Modifier
  2. Then a Sign can be invoked as either an Action or a Modifier, depending on what its parent Sign is expecting.

This is of course twice as much work per Sign, but I think it might be worth it?

Now it's still possible to make combinations that are less effective, but usually something will happen when an ability is triggered:

Experimenting with 3 signs to find the best combination: a Flame's Action shoots flame a small distance, but its Modifier mode will add a flaming trail. Rapid's action shoots bullets - or speeds up firing other bullets. Weak adds more bullets to the magazine but does only low damage as a bullet itself.

And yes, sometimes you will die, which is hilarious for everyone else.

Balancing (or lack thereof)

I basically haven't done any balancing yet.

You can do wild things:

A playtester at Epiccon last week built their very own A-10 Warthog. Survival not guaranteed.

Now, finding game-breaking combos is kinda the point.

But in the name of making enemies not a complete pushover I might have to add damage scaling, energy costs (instead of ammo?), or put limits on the number of Signs you can have in each ability.

Feedback Requested

Please, try out the playable build below and Discord give me your feedback!

Tell me what you like, what you hate, what needs polish, or anything else that comes to mind.

Try Signcrafting‎

  1. You'll be given 2 random starting abilities (guns), so just refresh the page if you didn't like the ones you got.
  2. Run around and open chests to pick up Signs; you also get a Sign at the end of each level.
  3. Press Tab to open or close your signcrafting UI and click with the mouse to move Signs around.

Known issues:

Press F1 for help, including to see keyboard/mouse controls. By playing you agree to our Privacy Policy and Terms of Service.

Wild Future Ideas

I've got plenty more to experiment with, so watch this space!


1

It was kinda like Noita's wandcrafting, but more flexible and maybe a little less obtuse?

Compared to Noita, you put projectile perks before modifier perks (that made more sense to me), perks had levels (like Risk of Rain) so you could split and combine them to control the strength of their effects, you could trigger perks when you get damaged/healed/etc, there was no draw pile or shuffle or discard or wrapping mechanics, and instead of mana you have ammo.

But you know, still pretty clearly Noita-inspired.

2

Dangerous Signs, Signs of Danger, geddit? I know, I know puns are the lowest form of humour (if you don't think of them first).

3

Well, ex-Noita players understood it immediately, of course. But I want the game to be approachable for new players too.

4

The game did playtest a whole lot better when projectile and modifier Signs automatically got applied to the current gun - but bypassing the whole ability customization system is hardly a fix.

5

Programmer-gamer friends: ever notice how a skill tree looks kinda like an abstract syntax tree? Yeah.

◂  What a Weekend
News index