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:
But fundamentally, players just did not understand that the linear view above was actually a little "gun program" doing something like this: 3
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":
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:
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:
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.
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?
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?
- Make each Sign be both an Action (e.g. fire projectile) and a Modifier
- 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:
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:
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 give me your feedback!
Tell me what you like, what you hate, what needs polish, or anything else that comes to mind.
Try Signcrafting
- You'll be given 2 random starting abilities (guns), so just refresh the page if you didn't like the ones you got.
- Run around and open chests to pick up Signs; you also get a Sign at the end of each level.
- Press Tab to open or close your signcrafting UI and click with the mouse to move Signs around.
Known issues:
- It's hard to tell which Signs are "newly picked up" vs which you already had. Ideas welcome!
- Not all Signs have Action modes right now - I still have a few more bullets and whatnot to dream up.
- Tooltips will say "X damage per level" but you can't level up Signs right now (still figuring out if that should still be a thing).
- Right now you always use the "angular" view for the signcrafting tree, but some people like the linear tree better - I will add a toggle in future probably.
Wild Future Ideas
I've got plenty more to experiment with, so watch this space!
- Try out more ability types, which should all be customizable via Signs too:
- adding event-based skills back in, like "trigger this Sign when I get damaged"
- mobility skills like dash/teleport/grappling hook/jump pack that trigger Signs
- drones, turrets, mines and other skills that trigger action Signs for you
- melee attacks - Signs which are focused on close range high risk, high reward gameplay
- Try out Signs having a third "Passive" mode, like traditional roguelike perks, because why not triple my workload?
- What if you could trigger an ability from another ability? And other totally insane other ideas that just might be fun. 5
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.
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).
Well, ex-Noita players understood it immediately, of course. But I want the game to be approachable for new players too.
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.
Programmer-gamer friends: ever notice how a skill tree looks kinda like an abstract syntax tree? Yeah.


