Hello everyone!
In the previous devlog, I talked about why I chose a 2d12 roll-under system for AstraWeaver.
In this devlog, I will talk about how dice actually work in AstraWeaver. I'll explain how I arrived at the core resolution mechanic, how the attributes evolved, and how to represent different levels of challenge in player-facing roll-under systems.
———
Connecting Two Numbers to be a skill
AstraWeaver is a classless, level-less, highly customizable, crunchy high fantasy RPG about connecting small pieces into something extraordinary. Whether that's your character build, your magic, your equipment, or your team.
Since connection is such a central concept, I wanted the core resolution mechanic to involve connecting multiple elements.
For my lazy brain, adding three or more numbers together becomes significantly more complicated than combining just two. Compared to the additional granularity that more dice could provide, I don’t think that extra complexity is worth it.
Special shout-out to The Tome of Lime Gaming—they have a great video discussing the idea of an “elegance factor,” where elegance = granularity / complexity. I found it to be a really useful way to think about dice mechanics and the trade-off between complexity and granularity. Go check it out if you’re interested; I learned a lot from it.
So I decided to keep it at two numbers.
The core resolution mechanic is combine two numbers to create a target number. I call this target number the Check Threshold (CT).
When a check happens, the GM decides where one of those numbers comes from, while the player decides where the other number comes from. At the moment, the player's number comes from one of their attributes, and it cannot be the same attribute chosen by the GM.
Most of the time, the GM's number will also come from an attribute. But it doesn't have to. It could represent an NPC's current mood, the tension of the scene, or some other temporary condition. This gives me a lot of flexibility when designing other mechanics while keeping the core resolution consistent.
And because attributes are the main way players interact with the world through this system, let's talk about how those attributes evolved.
How the Attributes Evolved
My basic assumption was that very few things people do can truly achieved by a single ability.
When facing a challenge, I wanted players to combine two attributes to represent how their character approaches that challenge. My original design had six attributes divided across body, mind, and interpersonal interaction: Might, Agility, Instinct, Intelligence, Charisma, and Authority.
Newly created characters will have all their attributes set between 5 and 8.
After some time, however, I realized that Charisma and Authority were simply too difficult to distinguish. Imagine a character trying to persuade someone using knowledge from their background. Would that be Intelligence + Charisma, or Intelligence + Authority?
In many cases, the difference would simply come down to how the player described their dialogue. If I used the numbers to enforce that distinction, a player with high Authority might feel pressured to constantly describe their character as being forceful or intimidating simply because that gave them a better chance of success.
That would mean the mechanics were restricting roleplay instead of supporting it.
So I removed Authority and kept Charisma, giving players more freedom to decide how their character approaches a situation.
Ten Skills Without Names
At this point, you might notice something interesting.
With five attributes, there are ten possible pairs.
In many RPGs, those ten combinations could simply become ten named skills. I deliberately chose not to do that.
In a way, AstraWeaver is actually a skill-based game. It just doesn't give those skills names.
The reason is that naming each combination can also define its boundaries. Once you call something "Athletics," for example, players may naturally assume what it can and cannot be used for. It's good for determining which skill to use in which situation. But sometimes, the skill doesn't quite represent how I'm going to do something. So instead, I want the attributes to provide broad concepts, while the combination represents the way a character approaches a challenge.
This does mean I still need to provide some basic guidance for each attribute, so players and GMs are roughly on the same page about what each one represents. The goal isn't to restrict how they can be used, but to reduce unnecessary arguments over interpretation at the table.
How to Adjust Difficulty?
One challenge with a mostly fixed player-facing roll-under system is that the target number doesn't naturally change very much.
So what does an unmodified check actually represent?
In my current design, an ordinary, unmodified challenge roughly means:
- An untrained ordinary person has about one third of chance to succeed on their first attempt. (CT=11)
- Someone with apprentice has about a 50% chance. (CT=13)
- Someone with expert has about a 75% chance.(CT=16)
That's what a normal, unmodified check represents in AstraWeaver.
But what if the GM wants something to be harder?
Instead of constantly adjusting numbers, the GM can simply apply disadvantage.
With disadvantage, the player rolls 3d12 and keeps the highest two results. This reduces the success rate to roughly 16% for an untrained character, 28% for an apprentice, and 50% for an expert.
The expert with disadvantage is roughly comparable to a D&D character with a +10 modifier making a DC 21 check.
On the other hand, sometimes the GM wants to call for a check even when an action is relatively easy, because the result could still be interesting or meaningfully change the scene.
In that case, the GM can give the player advantage.
With advantage, the player rolls 3d12 and keeps the lowest two results. This raises the success rate to roughly 64.5% for an untrained character, 78% for an apprentice, and 91% for an expert.
My hope is that this gives newer GMs a simple way to adjust difficulty without getting lost in numbers or worrying about whether they picked the "correct" DC.
Players can also gain or grant advantage through different abilities and actions. Advantage and disadvantage can cancel each other out, giving players opportunities to actively improve their own chances or help their allies succeed.
Conclusion
That's essentially the core of AstraWeaver's resolution system:
Combine two numbers to create a Check Threshold(CT). Then roll 2d12. If the result is lower than the CT, it’s a success.
Most of the time, those numbers come from the character's five attributes. The GM chooses one, the player chooses the other, and together they form the CT.
In some special situations, one of those numbers can be replaced by something else, such as an NPC's mood or the current state of a scene.
Then, when the difficulty needs to change, advantage and disadvantage can modify the roll.
That's the basic framework.
There are obviously many more details hiding underneath it, but those are topics for future devlogs.
———
In the next devlog, I’ll dive deeper into CT and the numbers behind it: how I determined the attribute ranges and starting values, how the probability curve affects character progression, how I wanted starting characters to feel like novice heroes, and how I arrived at the current critical success system.
There’s quite a bit to unpack, so I’ll save it for the next post.
I also previously posted about CT and received some questions and feedback there, so I'll try to incorporate those discussions into the next post as well.
And I'll try not to make the next one read like a PhD dissertation.
I'd love to hear your thoughts.
Thank you for reading!