Dice Roller - Kassoon.com (2024)

[ Open in New Window ]

Macros [hide]

Name: (Save the dice roll as a re-usable button)

Campaigns [?] [hide]

Campaigns allow multiple people to share and use a single dice roller. All rolls are logged to the group so you can see who rolled what and what the result was. Useful for play-by-post or email!

Directions [?] [hide]

Syntax
1d20Rolls a 20-sided die. The first number is the amount of dice and the second is the number of faces on each die.
2d20+5Rolls two 20-sided dice and adds 5 to them.
d10-d4Rolls a 10-sided die and a 4-sided die and subtracts the two.
5*d100Rolls a 100-sided die and multiplies the result by 5.
d6+d6+d6+d6-lowRolls four 6-sided dice and subtracts the lowest result.
d20+d20-highRolls two 20-sided dice and subtracts the highest result. 5e Disadvantage, to use Advantage you can do d20+d20-low.
d6r2Rolls a 6-sided die and will reroll on a result of 2 or lower.
d20+5;d8+3Use a semicolon to make multiple rolls at once.

Input any sort of dice string you wish to roll followed by any valid arithmetic. Syntax is: [number of dice]d[number of sides on die][arithmetic]. Some examples separated by commas: d6, 1d20+5, 1d4+(5-2)/2, 3d8-6+2, d10+5+1d8, 5*1d100

You can also use "low" or "high" to use the lowest/highest dice roll in your result. For example, for 4d6 drop the lowest: d6+d6+d6+d6-low

You can reroll dice below a certain amount (like for rolling brutal weapons in D&D 4e) syntax is #d#r# where the third # is the number to reroll on. Some examples: d8r2+5, 2d6r1

If you register on the left, you can create a campaign, which allows a group of people to share a single dice roller. After creating a campaign, you can add usernames to your group, and they'll be able to access and use an instance of that dice roller. Whenever anyone in your group makes a roll it will be broadcasted to the entire group, and show who rolled and what they rolled. If you run a pbp, pbe, or any sort of online game where the DM primarily needs to resolve the rolls for everyone, you can use a campaign to allow the players to roll instead since they won't be able to fake their results in the dice generator or hide rerolls.

When rolling in a campaign you can optionally specify a description of your roll to broadcast to other players, and/or select a target to roll against. The targets are set by the group owner, and their number value cannot be seen by the players. When you roll against a target, a roll above the taget amount will be a 'hit,' while a roll below will be a 'fail.' Using these allows your players to know if they've succeeded or not right away, without necessarily telling them the number they need to roll. It's up to you to decide how to determine the target numbers and what a hit or fail means.

'; par.appendChild(div);}function saveAllMacros() { var inps = $('diceMacroList').getElementsByTagName("input"); svar.name=[]; svar.txt=[]; for (var i = 0; i < inps.length; ++i) { svar.name.push(inps[i].value); var txt = ""+inps[i].onclick; svar.txt.push(txt.match(/'(.*?)'/)[1]); } var svtx = JSON.stringify(svar); localStorage.setItem("diceMacros",svtx); //$('diceMacroVar').value=svtx; //ajSub($('diceMacroForm'),onSub);}function ajSub(form, callback) { var xhr = aI(); var params = [].filter.call(form.elements, function (el) {return !(el.type in ['checkbox', 'radio']) || el.checked;}) .filter(function(el) { return !!el.name; }) .filter(function(el) { return !el.disabled; }) .map(function(el) { return encodeURIComponent(el.name) + '=' + encodeURIComponent(el.value); }).join('&'); xhr.open("POST", form.action); xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xhr.onload=function(){callback(xhr);}; xhr.send(params); return false;}function onSub(a){ if (a.responseText.startsWith("login")) { $('errmsg').innerHTML="If you log in on the left your macros will be accessible on any device you use."; } else if (a.responseText.startsWith("error")) { $('errmsg').innerHTML="Error! You should email kassoon@kassoon.com with this: "+a.responseText; }}function rolldie(a, b) { if (!doSo) { doSo = true; tP("dieUse"); } try { $('expBtn').innerHTML = 'Expand'; } catch (x) {} var c = $("sendgroup"); if (c != null && c.checked) { var z = $("dicetxt"), y = $("dicetarget"); $("rollbtn").disabled = "disabled"; aPS("/dnd/dice-roller/" + z.className + "/", "frames=false&brief=1&sendgroup=on&dicetxt=" + z.value.replace(/\+/g, "@@") + "&dicetarget=" + y.options[y.selectedIndex].value + "&dicedesc=" + escape($("dicedesc").value), cbDice, "diceresult", false); return true; } try { var d = $(a).value.split(";"); for (var ii = 0; ii < d.length; ++ii) { c = d[ii]; for (var e = /([0-9]+)?d([0-9]+)r?([0-9]+)?/, g, f = null, h = null, j = /r([0-9]+)/; g = e.exec(d[ii]);) { j = 0; if (g[1] == undefined) g[1] = 1; let ctxt = ""; for (i = 0; i < g[1]; ++i) { var l = Math.ceil(Math.random() * g[2]); if (g[3] && g[3] < g[2]) for (; l <= g[3];) l = Math.ceil(Math.random() * g[2]); j += l; if (g[1] > 1) ctxt += " + "+l; if (f == null || l < f) f = l; if (h == null || l > h) h = l; } ctxt = ctxt.substring(3); d[ii] = d[ii].replace(e, j); c = j == g[1] * g[2] ? c.replace(e, "" + ctxt+" = "+j + "") : j == g[1] ? c.replace(e, "" + ctxt+" = "+j + "") : c.replace(e, ctxt+" = "+j); if (f != null) { d[ii] = d[ii].replace(/low([a-z]+)?/gi, f); c = c.replace(/low([a-z]+)?/gi, f); } if (h != null) { d[ii] = d[ii].replace(/high([a-z]+)?/gi, h); c = c.replace(/high([a-z]+)?/gi, h); } }//for each regex $(b).innerHTML += c + " = " + eval(d[ii]) + "
"; $(a).style.color = "#000" }//for each semicolon } catch (k) { $(a).style.color = "#F00" }//try catch return true}

This website exists thanks to the contribution of patrons on Patreon. If you find these tools helpful, please consider supporting this site. Even just disabling your adblocker will help (it's only text and plain image ads I promise). Becoming a patron will upgrade your account to premium, giving you no ads and more features.

Shout outs: Stacey, rtlowe80, Brian Nunziato, Garrett Smith, Marinos Papadimitriu, Carlo Puche, PartySheep, Matt Yates, Elisa Martinez, Ryan Flagg, JMartins, Jade Arrowood, Sean Kane, Angelo Anderson, yoland katamari, Dave Walker, Rhonda Seiter, Alexa Hobusch, Jonathan Lekse, Katie White, JollyGamer, Jayden wingler, Yi Tan, Burlyfighter, Gillian Tolbert, David R Abbott, Rick Marsh, Brittany DeNicholas, Phillip Hash, Amanda Kettles, John Trent Dumproff, Lou Bliss, Pythor Sen, Michael Isberg, Nat, Cory Evans, Thomas Wilhelm, BestWorseCaseScenario, Damian Steele, Irate The Pirate, Icarus Unleashed, Mark L, Conall Reilly, keith oneal rogers, Patrick Natale, Cam Largent, Thaddeus Johnson, Siren, Donavan Guay, AstroLass, Lizzie, Michael Hamilton, Vedie V, Mylon Schroder, Nathan, Tiffany Mathis, Jordan Florez, Robert Rich, Rodney O'Dell, Robin Ellis-Foster, Deanna Pyle, Jess, Lars Yell, Zee Livezey, Kevin, Kerry Melton, Mary Kieser, SallySparrow132, Naomi B, J, Millergendraft, Federica Frezza, Nick Soucy, Melanie Warga, Jeremiah Walker, Bryan Sheairs, Bryan Kempka, Max Hops, Sarah Holland, Joshua David Maddox, Jennifer Smith, Liz Fontain, Ray Bissonnette, Joe Dalby, Joline Tran, Nicholas Zamora, ShortyMcgibble, Mr. Vinclair, mtnman1979@aol.com, KFB_Patreon, eric sun, Dani, Bruce Willison, Gundar Wez, Nahellion, Ben Pytlik, Nicholas Hanke, bilbens baggo, Stuart, Brysen Packer, Maxwell Mayer, Gannon Dubay, Thobek, Aaron Teupe, Felix Schmäche, XMrMonkyx ., Miss Zilla M, Jordan Brazeal, Kyle Clark, Jake Lane, Adam Ruiz, Phillip P Torchia, Stefan Gottschalk's, Remora Jewel, jeremy baisch, Daniel Edwards, Zealot23, Shane Andrews, Brandon Mußiq, CJMAXP, KingHavok1217, Mx Charlie, Zachary Burgess-Hicks, Shazear, Steve Rosenlund, Leanna Orr, lufink, Ezzela1891, John Nazario, Gary, Gordon Alexander Fallon, Justin Stensgard, Jason Clark, Trey Vickory
Their contribution stands as a beacon of hope for all adventurers!

Dice Roller - Kassoon.com (1)

Dice Roller - Kassoon.com (2024)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Duane Harber

Last Updated:

Views: 5552

Rating: 4 / 5 (51 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Duane Harber

Birthday: 1999-10-17

Address: Apt. 404 9899 Magnolia Roads, Port Royceville, ID 78186

Phone: +186911129794335

Job: Human Hospitality Planner

Hobby: Listening to music, Orienteering, Knapping, Dance, Mountain biking, Fishing, Pottery

Introduction: My name is Duane Harber, I am a modern, clever, handsome, fair, agreeable, inexpensive, beautiful person who loves writing and wants to share my knowledge and understanding with you.