dice
Privateunrated
Content
56 lines{=(comment):Change displayrolls to 1 to show the dice roll breakdown at the end (the total is always shown). Change to 0 to hide.}
{=(displayrolls):0}
{=(comment):Set prefix and tagname here to change error statement output}
{=(prefix):!}
{=(tagname):dice}
{=(largs):{lower:{args}}}
{=(la1):{largs(1)}}
{=(t):{la1(1):d}}
{=(s):{la1(2):d}}
{=(a):{replace(+,):{largs(2)}}}
{=(n):range:1-{s}}
{=(testt):{m:trunc({t}/1)}}
{=(numt):{if({t}=={testt}):{t}|0}}
{=(tests):{m:trunc({s}/1)}}
{=(nums):{if({s}=={tests}):{s}|0}}
{=(testa):{m:trunc({a}/1)}}
{=(testa2):{m:{a}/1}}
{=(numa):{if({a}=={testa}):{a}|{if({a}=={testa2}):{a}|0}}}
{=(error):Syntax is `{prefix}{tagname} 2d6 -3`.$Roll no more than 20 dice}
{break({numt}<1):{error(1):$}}
{break({nums}<1):{error(1):$}}
{break({numt}>20):{error(2):$}}
{=(d1):{{n}}}
{=(d2):{d1}+{{n}}}
{=(d3):{d2}+{{n}}}
{=(d4):{d3}+{{n}}}
{=(d5):{d4}+{{n}}}
{=(d6):{d5}+{{n}}}
{=(d7):{d6}+{{n}}}
{=(d8):{d7}+{{n}}}
{=(d9):{d8}+{{n}}}
{=(d10):{d9}+{{n}}}
{=(d11):{d10}+{{n}}}
{=(d12):{d11}+{{n}}}
{=(d13):{d12}+{{n}}}
{=(d14):{d13}+{{n}}}
{=(d15):{d14}+{{n}}}
{=(d16):{d15}+{{n}}}
{=(d17):{d16}+{{n}}}
{=(d18):{d17}+{{n}}}
{=(d19):{d18}+{{n}}}
{=(d20):{d19}+{{n}}}
{=(result):{m:{d{t}}+{numa}}}
{=(comment):The following line checks to see if the truncated result is equal in value to the result. If it is it truncates it}
{=(tr):{m:trunc({result})}}
{=(result):{all({result}>={tr}|{result}<={tr}):{tr}|{result}}}
{user} rolls {t}d{s}{if({numa}!=0): {a}}:{if({displayrolls}==1):
[{d{t}}+({numa})]=}
{result}Raw JSON
{
"id": 104261,
"created_at": "2020-01-03T20:36:34.000Z",
"tag_name": "dice",
"nsfw": false,
"owner_id": "396509742572503061",
"uses": 3,
"description": null,
"restricted": false,
"shared": false,
"deleted": false,
"safe": "unrated",
"hidden": false,
"guild_id": "643810771851280394",
"sharer": "396509742572503061",
"content": "{=(comment):Change displayrolls to 1 to show the dice roll breakdown at the end (the total is always shown). Change to 0 to hide.}\n{=(displayrolls):0}\n\n{=(comment):Set prefix and tagname here to change error statement output}\n{=(prefix):!}\n{=(tagname):dice}\n\n{=(largs):{lower:{args}}}\n{=(la1):{largs(1)}}\n{=(t):{la1(1):d}}\n{=(s):{la1(2):d}}\n{=(a):{replace(+,):{largs(2)}}}\n{=(n):range:1-{s}}\n\n{=(testt):{m:trunc({t}/1)}}\n{=(numt):{if({t}=={testt}):{t}|0}}\n\n{=(tests):{m:trunc({s}/1)}}\n{=(nums):{if({s}=={tests}):{s}|0}}\n\n{=(testa):{m:trunc({a}/1)}}\n{=(testa2):{m:{a}/1}}\n{=(numa):{if({a}=={testa}):{a}|{if({a}=={testa2}):{a}|0}}}\n\n{=(error):Syntax is `{prefix}{tagname} 2d6 -3`.$Roll no more than 20 dice}\n{break({numt}<1):{error(1):$}}\n{break({nums}<1):{error(1):$}}\n{break({numt}>20):{error(2):$}}\n\n{=(d1):{{n}}}\n{=(d2):{d1}+{{n}}}\n{=(d3):{d2}+{{n}}}\n{=(d4):{d3}+{{n}}}\n{=(d5):{d4}+{{n}}}\n{=(d6):{d5}+{{n}}}\n{=(d7):{d6}+{{n}}}\n{=(d8):{d7}+{{n}}}\n{=(d9):{d8}+{{n}}}\n{=(d10):{d9}+{{n}}}\n{=(d11):{d10}+{{n}}}\n{=(d12):{d11}+{{n}}}\n{=(d13):{d12}+{{n}}}\n{=(d14):{d13}+{{n}}}\n{=(d15):{d14}+{{n}}}\n{=(d16):{d15}+{{n}}}\n{=(d17):{d16}+{{n}}}\n{=(d18):{d17}+{{n}}}\n{=(d19):{d18}+{{n}}}\n{=(d20):{d19}+{{n}}}\n{=(result):{m:{d{t}}+{numa}}}\n{=(comment):The following line checks to see if the truncated result is equal in value to the result. If it is it truncates it}\n{=(tr):{m:trunc({result})}}\n{=(result):{all({result}>={tr}|{result}<={tr}):{tr}|{result}}}\n{user} rolls {t}d{s}{if({numa}!=0): {a}}:{if({displayrolls}==1):\n[{d{t}}+({numa})]=}\n{result}",
"embed": "{}",
"last_fetched": "2026-10-20T20:50:30.538Z"
}