I made a web page where you can simulate a complex dice roll sequence with conditionals (e.g. re-roll when roll is a 1) using a Python-like syntax. (Click the “Toggle Syntax” button to view examples)
It needs a second to load because it has to load a Python interpreter in the background (I’m not good at web development) but once that’s done, it works really well.
It’s still very barebones and I still have to work out some problems.
Maybe some of you could use it, though.
There’s also just the Python version available to run locally here
Everything is GPLv3, enjoy!
This is super cool!
Does it support things like
max
/min
to simulate advantage/disadvantage?It would be really cool to mathematically compare different kinds of rolls, like the cascading dice damage post from a couple weeks ago (even if its not built into the notation, just writing out the logic by hand)
No, there is no advantage or disadvantage functionality. I made it purely for balancing, so finding out the average damage a character would do. In that case I would just write out all the different rolls the character would do when attacking and have the program calculate using that. It’s pretty barebones
Still a very cool project! Fun to play around with
How does it compare with https://anydice.com/ ?
Pretty similar but I couldn’t get re-rolls to work on there. That’s the main reason I made this
Extremely impressive! I wrote a dice probability calculator myself recently, but abandoned perfect calculations in favor of a million roll simulation. What you have done is really quite lovely.
Thank you very much. I, too, initially used a sampling approach but that was obviously inefficient and inaccurate. Getting this to work was a HUGE pain so it’s nice to read some kind words about it, thank you
Nice Work, but did you forgot to link the Website?
Yes, yes I did… It’s here
Thank you for pointing that out
I am working on a dice expression evaluator on my side, and I will certainly reuse your code if I can ! Thanks for giving the example, as a GNU enthusiast, it is very nice ! Great job making it work !
Best of luck to you. I think my code is quite messy but if you can use any of it, feel free!
Cool. I used to have an app that would do this and it was great to play with for various scenarios. Nice to see a website version.
What was the app called and is it still available?
No, it was oooold. Like, ipod touch old. It didn’t make it past ios 5, I think. It’s why I’m loving your webpage.
Okay, would’ve been interesting to see