-
-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Exalted system logic roll - possible API enhancement #198
Comments
Hi @Kilitar thanks for the suggestion! I had a similar request a few years ago, #22. From that, success pools were implemented, but the double 10 wasn't, as it seemed a bit tricky to do. The library has advanced a lot since, so it should be easier to do now. I've been trying to find some good information on the Exalted rules around the "10 counts as double", to see if it could also apply to other dice rolls, but it's proven difficult to find much. I have seen hints that it can sometimes apply to 7, 8, and 9 as well. What I'm trying to figure out is what exact functionality is required. Some thoughts: A specific "double" modifier ( // greater than 5 is success (`>5`), max roll (10) is double (`dbl`)
5d10>5dbl: [3, 7*, 6*, 10*dbl, 1] = 4
// greater than 5 is success (`>5`), greater than or equal to 7 is double (`dbl>=7`)
5d10>5dbl>=7: [3, 7*dbl, 6*, 10*dbl, 1] = 5 A generic "adjust" (Or similar name) modifier // greater than 5 is success (`>5`), multiply values of 10 by 2
5d10>5adj=10:*2: [3, 7*, 6*, 10*, 1] = 4
// greater than 5 is success (`>5`), multiply values greater than or equal to 7 by 2
5d10>5adj>=7:*2: [3, 7*, 6*, 10*, 1] = 5 The benefit of the second method is that it's a lot more flexible (Although I'm not sure what the output should look like). If you're able to provide any more information on the exact rules, then I can try and figure out exactly how it will need to work. |
Just thought of another option for possible notation. Multiply modifier ( // greater than 5 is success (`>5`), max roll (10) is multiplied by 2
5d10>5mul2: [3, 7*, 6*, 10*mul2, 1] = 4
// greater than 5 is success (`>5`), greater than or equal to 7 is multiplied by 2
5d10>5mul2>=7: [3, 7*dbl, 6*, 10*mul2, 1] = 5 I'm not overly happy with the suggested output in any of the options; |
Yeah, you are right, I did not want to overwhelm the suggestion with all available options of Exalted rules and other similar systems and rules expansions. There are systems (like we used) which use only basic rules and do not implement anything "extended. Like in my case double for 10's is just what I need. Basic: Extensions (for some Exalted-clone systems) Unlucky numbers: To cover such complex "mismatch" like: 10d10 vs TN5, with 1 as umlucky -1, 10 as double, and 7 as lucky*3 would be something like : 10d10>5{1=-1;7=3;10=2} I think optimal solution to cover all possibilities is just above. Allow to specify "dataset" of how to multiply each result. But it is long and might be confusing :( and in extreme case it may end like this: :P Or just stick with very basics (which should cover most of cases, in system used by me all of them) - double for top roll (6 for d6, 10 for d10), and consider add option to deduct -1 for 1 roll (fail) |
Hey, thanks for the feedback. The Unlucky numbers are already possible with success / failure modifiers. So using your example above:
// anything greater than 5 is a success (+1), equal to 1 is failure (-1), everything else is zero
// Rolls; 1 = -1, 10 = 1, 2 = 0, 7 = 1, 9 = 1
10d10>5f=1: [1_, 10*, 2, 7*, 9*, 5, 3, 8*, 1_, 4] = 2 Just need to figure out the best way of handling the multiplication of numbers. A multiplication modifier could work. Something like: // max roll on die is multiplied by 2
10d10mul2
// equal to 10 is multiplied by 3
10d10mul3=10
// equal or greater than 7 is multiplied by 2
10d10mul2>=7 It could be tricky to get it to work with when using success modifiers, and without (So it works with normal rolls as well), but it should be possible. I'm thinking of changing the notation output for success / failure modifiers, so instead of 5d10>=7f=1mul2: [4, 8+, 1-, 10+*2, 2] = 2 Does that seem sensible, and cover the basics? |
Yep, that covers the basics and yes, use + for success, - for failure and * for multiply looks like a good idea :). |
Okay, thanks for the feedback. I'll look at implementing something like this when I can. PRs are always welcome as well :) |
|
I've had to remove this from the The functionality is working though. I'm going to have a think about how best to handle the conflicts. |
Hello,
My RPG use similar system like games based on Exalted RPG system rolls.
The core of this system is standard "D10 dice pool" against target number
Something what can be flawlessly done using your api with syntax "5d10>5".
Only difference is - if you roll 10, you get 2 sucsess points instead of 1.
Rolls using 5d10>5: 3-7*-6*-10*-1 = 3 sucssesses
Result I am looking for: 3-7*-6*-10**-1 = 4 sucssesses
Any chance to expand your system to cover Exalted RPG engines in the future?
Thank you.
The text was updated successfully, but these errors were encountered: