Simple Nightbot command to roll any number of any kind of dice
$(eval var i=parseInt,d=[],e='$(provider)'=='twitch'?'melziiD20':'π²20',j=0,l,m='$(query)'.match(/^(([0-9]+)\s+)?(([0-9]+)?d([0-9]+)|([0-9]+))$/)??{},c=i(m[2]??1),n=i(m[4]??1),s=i(m[5]??m[6]??20);c=c>20?20:(c<1||!c?1:c);n=(n<1?1:n);s=(s<1?1:s);for(;j<c;j+=1){d.push(Math.round(n*(s-1)*Math.random())+n)}r=`$(user) rolled ${d.join(', ')} with ${n<2?'a ':n+'Γ'}π²`+s;l=r.lastIndexOf(',');(l<0?r:r.substr(0,l)+' and'+r.substr(l+1)).replace(/( |π²)20(,| |$)/g,` ${ e } $2`))
Examples:
!roll
- PakL rolled a 2 with a π²6
!roll 20
- PakL rolled a 14 with a π²20
!roll 2d6
- PakL rolled a 11 with 2Γ:game_die:6
Or something absurd like:
!roll 15d19
- PakL rolled a 118 with 15Γ:game_die:19
!roll 5d1
- PakL rolled a 5 with 5Γ:game_die:1
2021-05-25
Any 20 will be replaced by the emote. d20 is now the default instead d6 and I also added the capability to make up to 20 throws at once:
!roll 20 d20
- PakL rolled 13, 6, 4, , 8, 19, 19, 2, 13, 15, 6, 3, 5, 7, 12, 14, 10, 1, 11 and 5 with a
2022-07-08
- Fixed a bug that prevented users to use other dice than d20 when outputting multiple throws and prefexing dice with a "d". (Thanks @MontageTM)
- Removed Discord emote as bot cannot use them across servers anymore.
If this is still active... Is there a way to remove so this doesn't show up?
![image](https://private-user-images.githubusercontent.com/174278599/344495041-79930e85-8a6d-4c4b-80e6-051e795bdf07.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjE5Nzc4OTgsIm5iZiI6MTcyMTk3NzU5OCwicGF0aCI6Ii8xNzQyNzg1OTkvMzQ0NDk1MDQxLTc5OTMwZTg1LThhNmQtNGM0Yi04MGU2LTA1MWU3OTViZGYwNy5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNzI2JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDcyNlQwNzA2MzhaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0zZTI3Y2I3MmE2MDQwNzMyMGM1NWQyM2U3NGUzNzdiYTZlMGIwMzA4NTlhODA2ZTZhYjU1NTA4OTM1ZmZjMjI5JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.A9tGOcZqzrmBsAINbbKgYE8vq5n3n5ZkoDjaEnLbAJs)
Or even better, edit the command so when someone does !roll it shows them rolling 3 dice on a 6 sided dice like this instead of me having to do !roll 3 6?
![image 2](https://private-user-images.githubusercontent.com/174278599/344495125-068d70d6-8df2-4a27-b638-bc847be888b3.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjE5Nzc4OTgsIm5iZiI6MTcyMTk3NzU5OCwicGF0aCI6Ii8xNzQyNzg1OTkvMzQ0NDk1MTI1LTA2OGQ3MGQ2LThkZjItNGEyNy1iNjM4LWJjODQ3YmU4ODhiMy5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNzI2JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDcyNlQwNzA2MzhaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1jMDU2NTc5NTM4ZTZmN2FhNzFhMWEyMjk3NGRhNTlhNzZiMGUyZGI4NTJmYjYzMDk1YzRjZGMxYWNhNjlkZmI3JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.Q8F87IpRTm7GtzL3Z-_8xEP29gyV-H-Pd4la2vEIbN4)