Difference between revisions of "User:Auro/DeltaBot"

From MazeWorld
Jump to: navigation, search
m (Rolls)
m (Documentation)
Line 31: Line 31:
 
=== Rolls ===
 
=== Rolls ===
  
* '''+r xdy z''' - Rolls '''x'''d'''y''', plus or minus '''z'''. Adding t to the end causes the bot to only show the total of the roll.
+
* '''+r xdy z''' - Rolls '''x'''d'''y''', plus or minus '''z'''. Adding ''t'' to the end causes the bot to only show the total of the roll.
* '''+rr n xdy z''' - Repeat rolls. Rolls '''x'''d'''y''', plus or minus z, '''n''' times and displays the results for each set of dice.
+
* '''+rr n xdy z''' - Repeat rolls. Rolls '''x'''d'''y''', plus or minus '''z''', '''n''' times and displays the results for each set of dice.
* '''+rdnd m x''' or '''+rd20 m x''' - Does an DnD skill test, rolling d20+m with a target of x.
+
* '''+rdnd m x''' or '''+rd20 m x''' - Does an DnD skill test, rolling d20+'''m''' with a target of '''x'''.
* '''+rdnd m''' or '''+rd20 m''' - Rolls d20+m.
+
* '''+rdnd m''' or '''+rd20 m''' - Rolls d20+'''m'''.
* '''+rdnd tx''' or '''+rd20 tx''' - Rolls a flat d20 with a target of x.
+
* '''+rdnd tx''' or '''+rd20 tx''' - Rolls a flat d20 with a target of '''x'''.
 
* '''+r% n z''' - Percentile rolls. Rolls'''n'''d% (where a d% is made of 1d10 + (1d10)*10, with 10s counting as 0s, and a result of 00 counting as 100) A target ('''z''') can be provided, which will give the number of successes obtained (A success being a value which is less than or equal to the target)
 
* '''+r% n z''' - Percentile rolls. Rolls'''n'''d% (where a d% is made of 1d10 + (1d10)*10, with 10s counting as 0s, and a result of 00 counting as 100) A target ('''z''') can be provided, which will give the number of successes obtained (A success being a value which is less than or equal to the target)
 
* '''+r% tz''' - As above, but rolling a single percentile die with a target of t.
 
* '''+r% tz''' - As above, but rolling a single percentile die with a target of t.
 
* '''+r% n>z''' or '''+r% >tz''' - As above, but with a success being greater than or equal to the target score instead.
 
* '''+r% n>z''' or '''+r% >tz''' - As above, but with a success being greater than or equal to the target score instead.
 
* '''+atk n ft ir''' - Attack rolls. Rolls '''n''' number of 2d6, and then compares the results to the provided FT and IR values (which default to 6 and 2 if not provided) and then gives the number of crits, solid hits, inaccurate hits, misses and critical failures, as well as the attack roll string.
 
* '''+atk n ft ir''' - Attack rolls. Rolls '''n''' number of 2d6, and then compares the results to the provided FT and IR values (which default to 6 and 2 if not provided) and then gives the number of crits, solid hits, inaccurate hits, misses and critical failures, as well as the attack roll string.
* '''+haggle l p m''' - Haggle Roll. '''l''' is the skill level of the character haggling, while '''p''' is the percentage they are trying to haggle for, and '''m''' is the bonus modifier from good roleplaying. If selling items, suffixing a s to the end will tell the bot that you're selling, otherwise, it will assume that you are buying. If the percentage is too high for the skill level, then the bot will refuse to roll and will inform the user of the cap in which they can haggle up to, otherwise, it will roll 2d6+m and compare it to the target for the percentage desired. If the roll is a success or critical success, the bot will inform you that the character got their discount/increase (on a critical, it will increase said value by 10%) as well as the '''SP''' gained from the success, while a critical failure will inform you that the other party hits the character by applying the percentage in a negative way.
+
* '''+haggle l p m''' - Haggle Roll. '''l''' is the skill level of the character haggling, while '''p''' is the percentage they are trying to haggle for, and '''m''' is the bonus modifier from good roleplaying. If selling items, suffixing a ''s'' to the end will tell the bot that you're selling, otherwise, it will assume that you are buying. If the percentage is too high for the skill level, then the bot will refuse to roll and will inform the user of the cap in which they can haggle up to, otherwise, it will roll 2d6+m and compare it to the target for the percentage desired. If the roll is a success or critical success, the bot will inform you that the character got their discount/increase (on a critical, it will increase said value by 10%) as well as the '''SP''' gained from the success, while a critical failure will inform you that the other party hits the character by applying the percentage in a negative way.
* '''+craft s i''' - Crafting roll. '''s''' is the skill level of the character doing the crafting and '''i''' is the level of the item being crafted. If a "y", "yes" or "true" is provided, then the roll will add in the fact that you have a blueprint. This will take the base target of success based on the level, modifying it by the skill level and if the blueprint is included, and will either roll 1d100 and compare it to the target, or (if the success is guaranteed) will automatically pass with no need to roll. If it succeeds, it will also show the '''1SP''' the player gains as a result.
+
* '''+craft s i''' - Crafting roll. '''s''' is the skill level of the character doing the crafting and '''i''' is the level of the item being crafted. If a ''y'', ''yes'' or ''true'' is provided, then the roll will add in the fact that you have a blueprint. This will take the base target of success based on the level, modifying it by the skill level and if the blueprint is included, and will either roll 1d100 and compare it to the target, or (if the success is guaranteed) will automatically pass with no need to roll. If it succeeds, it will also show the '''1SP''' the player gains as a result.
* '''+hunt l x t''' - Butchering roll. '''l''' is the skill level of the character doing the butchering, while '''x''' is the (optional) meat worth of the target, and '''t''' is either a string for what tier of meat it is, or their equivalent tier number if the meat worth is provided. (delicacy = 2, luxury = 4, tainted = -1, illegal = -2. Anything else resolves to normal or 1) Adding "cooked" in the command or "f" at the end means the meat is cooked, and thus the -5% malus would be applied, but the bonus nutrition would be added so long as the meat is not tainted, while adding "price" or "worth" to the command or "p" at the end will give the worth of the meat in P$ - however, these will only apply if the meat worth is provided as if it's provided, it will print out a string like the following: ''[Food] Hunting - Raw game meat, 11 units - xxx - 3d25 ntri - Delicacy - 110P$ - Weight: 2.2'' - allowing the GM to replace the xxx with the creature butchered for quick input into the character sheet.
+
* '''+hunt l x t''' - Butchering roll. '''l''' is the skill level of the character doing the butchering, while '''x''' is the (optional) meat worth of the target, and '''t''' is either a string for what tier of meat it is, or their equivalent tier number if the meat worth is provided. (delicacy = 2, luxury = 4, tainted = -1, illegal = -2. Anything else resolves to normal or 1) Adding ''cooked'' in the command or ''f'' at the end means the meat is cooked, and thus the -5% malus would be applied, but the bonus nutrition would be added so long as the meat is not tainted, while adding ''price'' or ''worth'' to the command or ''p'' at the end will give the worth of the meat in P$ - however, these will only apply if the meat worth is provided as if it's provided, it will print out a string like the following: ''[Food] Hunting - Raw game meat, 11 units - xxx - 3d25 ntri - Delicacy - 110P$ - Weight: 2.2'' - allowing the GM to replace the ''xxx'' with the creature butchered for quick input into the character sheet.
 
* '''+mine l e f''' - Mining roll, exploration.  '''l''' is the skill level of the character and '''f''' is the floor which they are on. This will roll a 1d100 and look up the result on the mining exploration table, doing any additional rolls as needed before giving the result.
 
* '''+mine l e f''' - Mining roll, exploration.  '''l''' is the skill level of the character and '''f''' is the floor which they are on. This will roll a 1d100 and look up the result on the mining exploration table, doing any additional rolls as needed before giving the result.
* '''+mine l p type n m''' - Mining roll, Pick mining. '''l''' is the skill level of the character, '''type''' is either "m" for Metal, "g" for Gemstones or "s" for Serpentium, and n is how many times the character intends to mine for. This will roll n 1d20, comparing them to the target based on the skill level of the character, and will output how many metal chunks/gemstone chunks/pieces of Serpentium was mined out, as well as how much is in each chunk as well as their weight, and the overall weight if mining for metals or gemstones. '''m''' is the max number of chunks in the current area - if provided, and all chunks are mined before all of the intended mining rolls are done, the character will stop early. Any '''SP''' gained, as well as the '''ntri''' and '''wtr''' burned from the mining, will also be shown.
+
* '''+mine l p type n m''' - Mining roll, Pick mining. '''l''' is the skill level of the character, '''type''' is either "m" for Metal, "g" for Gemstones or "s" for Serpentium, and '''n''' is how many times the character intends to mine for. This will roll n 1d20, comparing them to the target based on the skill level of the character, and will output how many metal chunks/gemstone chunks/pieces of Serpentium was mined out, as well as how much is in each chunk as well as their weight, and the overall weight if mining for metals or gemstones. '''m''' is the max number of chunks in the current area - if provided, and all chunks are mined before all of the intended mining rolls are done, the character will stop early. Any '''SP''' gained, as well as the '''ntri''' and '''wtr''' burned from the mining, will also be shown.
 
* '''+mine l d type n m''' - Mining roll, Drill mining. As above, but using a drill to mine. Apart from the adjustments to the target and the  '''ntri''' and '''wtr''' burned from the mining, these two roll types are the same in how you use them.
 
* '''+mine l d type n m''' - Mining roll, Drill mining. As above, but using a drill to mine. Apart from the adjustments to the target and the  '''ntri''' and '''wtr''' burned from the mining, these two roll types are the same in how you use them.
* '''+mine l b type d m''' - Mining roll, Blast mining. As above, but using explosives to mine. Instead of providing the number of hits, instead, you provide '''d''', the LDV modifier of the explosives you are going to use. This can only mine one blast at a time, but it will roll 1d8+d, divide that by the modifier determined by your skill level, rounding to the nearest whole number (and to a minimum of 1 and a maximum of m if it's provided) and expose that many chunks of ore, while also displaying the '''SP''' gained from the blast mining.
+
* '''+mine l b type d m''' - Mining roll, Blast mining. As above, but using explosives to mine. Instead of providing the number of hits, instead, you provide '''d''', the LDV modifier of the explosives you are going to use. This can only mine one blast at a time, but it will roll 1d8+'''d''', divide that by the modifier determined by your skill level, rounding to the nearest whole number (and to a minimum of 1 and a maximum of '''m''' if it's provided) and expose that many chunks of ore, while also displaying the '''SP''' gained from the blast mining.
 
* '''+room''' - Generate a single random room
 
* '''+room''' - Generate a single random room
 
* '''+room-s''', '''+room-f''', '''+room-d''' and '''+room-u''' - As above but with it being a Safe/Fast/Deep/Unlimited UA dive, thereby adding in the events which go with the room.
 
* '''+room-s''', '''+room-f''', '''+room-d''' and '''+room-u''' - As above but with it being a Safe/Fast/Deep/Unlimited UA dive, thereby adding in the events which go with the room.
Line 56: Line 56:
 
* '''+jobs''' - generate a list of potential random jobs.
 
* '''+jobs''' - generate a list of potential random jobs.
 
* '''+drink''' - generate a random drink
 
* '''+drink''' - generate a random drink
* '''+sgun g h c f''' - Shotgun Pelette Hit roll. Find how many pelettes or flechettes have hit the target. '''g''' (default 12 gauge) can be either .410, 20 gauge, 12 gauge or CAWS, while '''h''' is the number of hits. Add 'flech' if the shell has flechette, and either 'mod' or 'full' if the shotgun has a mod or full choke.
+
* '''+sgun g h c f''' - Shotgun Pelette Hit roll. Find how many pelettes or flechettes have hit the target. '''g''' (default 12 gauge) can be either [[.410 bore|.410]], [[20 gauge]], [[12 gauge]] or [[12 gauge CAWS|CAWS]], while '''h''' is the number of hits. Add ''flech'' if the shell has flechette, and either ''mod'' or ''full'' if the shotgun has a mod or full choke.
  
 
=== For Fun ===
 
=== For Fun ===
Line 64: Line 64:
 
* '''+8ball''' - A variant of Tsuchinoko's '''&asktsuchi''', +8ball allows you to ask DeltaBot a yes/no question, and get a response from DeltaBot in return.
 
* '''+8ball''' - A variant of Tsuchinoko's '''&asktsuchi''', +8ball allows you to ask DeltaBot a yes/no question, and get a response from DeltaBot in return.
 
* '''+MzW''' - They say anything can happen in the Mazes, and using the MzW command could give you anything at all. Random musings from DeltaBot, misquoted quotes, calls for Hebi...
 
* '''+MzW''' - They say anything can happen in the Mazes, and using the MzW command could give you anything at all. Random musings from DeltaBot, misquoted quotes, calls for Hebi...
 
  
 
== GM Tips for DeltaBot ==
 
== GM Tips for DeltaBot ==

Revision as of 14:07, 10 April 2021

DeltaBot (beta name Latius' MzW Bot) is the name of the unofficial MazeWorld general purpose bot.

Following the demise of Sidekick on February 13, 2021, we needed a replacement dice bot. Unfortunately, none of the popular dice rollers available on Discord bot list websites could produce the level of functionality we needed. That is until SpacePrius came up with what would become SnakeEyes.

However, in response to this, the user known as Auro (a veteran MzW player who had been playing on and off since the V2.5 days) decided that he too wanted to make his own dice bot. And, the very next day, he had produced and uploaded Latius' MzW Bot, the first alpha version of his bot.

While SnakeEyes would overshadow his work, Auro strove to make the bot do stuff which SnakeEyes couldn't currently do, and while it is coded in Lua, he has taken steps to learn how to convert it to python and had offered to allow SnakeEyes and/or Tsuchinoko, the two official MzW bots which he calls DeltaBot the "little brother" of, to integrate the code he had made into them. He also works on adding other functions which would make the bot useful outside of MzW as well. The bot is being maintained and hosted by Auro (LatiusAuro#6170) as an alternative unofficial bot.

DeltaBot is built on three core values: Effeciency, to reduce the number of commands needed to be used by a GM; Practicality, to make sure that the commands have a good use, and the all-important Fun Factor. Because some times, you just want to have fun with a bot.

Adding DeltaBot to your server

As an unofficial bot, we do not recommend adding DeltaBot - and at the moment, DeltaBot is in a closed Beta, useable only on a select few servers. When DeltaBot becomes more open beta, you can use +invite to get the invite link.

Documentation

Information

  • +help - Displays a list of commands. Putting a command after the help will display extra help about said command
  • +success - Created to help make checking the number of successes from SnakeEyes much easier, this command accepts a string of true and false, hit and miss, yes and no and/or 1 and 0 values, and returns the number of successes from that string.
  • +about - DeltaBot will introduce himself and tell you all about him.
  • +invite - Get the invite link to DeltaBot so you can add him to your server.

Tsuchi Ported Commands

  • +ore - Random ore type generator, generally used in the context of mines and mining.
  • +ore-c - Generates low-rarity ore (cheap, common)
  • +ore-r - Generates rare ore (rare, very rare)
  • +wpn - Generates a random weapon, weighted based on rarity.
  • +event-safe, +event-fast and +event-deep - Gets a random event for Safe/Fast/Deep route rooms.

Rolls

  • +r xdy z - Rolls xdy, plus or minus z. Adding t to the end causes the bot to only show the total of the roll.
  • +rr n xdy z - Repeat rolls. Rolls xdy, plus or minus z, n times and displays the results for each set of dice.
  • +rdnd m x or +rd20 m x - Does an DnD skill test, rolling d20+m with a target of x.
  • +rdnd m or +rd20 m - Rolls d20+m.
  • +rdnd tx or +rd20 tx - Rolls a flat d20 with a target of x.
  • +r% n z - Percentile rolls. Rollsnd% (where a d% is made of 1d10 + (1d10)*10, with 10s counting as 0s, and a result of 00 counting as 100) A target (z) can be provided, which will give the number of successes obtained (A success being a value which is less than or equal to the target)
  • +r% tz - As above, but rolling a single percentile die with a target of t.
  • +r% n>z or +r% >tz - As above, but with a success being greater than or equal to the target score instead.
  • +atk n ft ir - Attack rolls. Rolls n number of 2d6, and then compares the results to the provided FT and IR values (which default to 6 and 2 if not provided) and then gives the number of crits, solid hits, inaccurate hits, misses and critical failures, as well as the attack roll string.
  • +haggle l p m - Haggle Roll. l is the skill level of the character haggling, while p is the percentage they are trying to haggle for, and m is the bonus modifier from good roleplaying. If selling items, suffixing a s to the end will tell the bot that you're selling, otherwise, it will assume that you are buying. If the percentage is too high for the skill level, then the bot will refuse to roll and will inform the user of the cap in which they can haggle up to, otherwise, it will roll 2d6+m and compare it to the target for the percentage desired. If the roll is a success or critical success, the bot will inform you that the character got their discount/increase (on a critical, it will increase said value by 10%) as well as the SP gained from the success, while a critical failure will inform you that the other party hits the character by applying the percentage in a negative way.
  • +craft s i - Crafting roll. s is the skill level of the character doing the crafting and i is the level of the item being crafted. If a y, yes or true is provided, then the roll will add in the fact that you have a blueprint. This will take the base target of success based on the level, modifying it by the skill level and if the blueprint is included, and will either roll 1d100 and compare it to the target, or (if the success is guaranteed) will automatically pass with no need to roll. If it succeeds, it will also show the 1SP the player gains as a result.
  • +hunt l x t - Butchering roll. l is the skill level of the character doing the butchering, while x is the (optional) meat worth of the target, and t is either a string for what tier of meat it is, or their equivalent tier number if the meat worth is provided. (delicacy = 2, luxury = 4, tainted = -1, illegal = -2. Anything else resolves to normal or 1) Adding cooked in the command or f at the end means the meat is cooked, and thus the -5% malus would be applied, but the bonus nutrition would be added so long as the meat is not tainted, while adding price or worth to the command or p at the end will give the worth of the meat in P$ - however, these will only apply if the meat worth is provided as if it's provided, it will print out a string like the following: [Food] Hunting - Raw game meat, 11 units - xxx - 3d25 ntri - Delicacy - 110P$ - Weight: 2.2 - allowing the GM to replace the xxx with the creature butchered for quick input into the character sheet.
  • +mine l e f - Mining roll, exploration. l is the skill level of the character and f is the floor which they are on. This will roll a 1d100 and look up the result on the mining exploration table, doing any additional rolls as needed before giving the result.
  • +mine l p type n m - Mining roll, Pick mining. l is the skill level of the character, type is either "m" for Metal, "g" for Gemstones or "s" for Serpentium, and n is how many times the character intends to mine for. This will roll n 1d20, comparing them to the target based on the skill level of the character, and will output how many metal chunks/gemstone chunks/pieces of Serpentium was mined out, as well as how much is in each chunk as well as their weight, and the overall weight if mining for metals or gemstones. m is the max number of chunks in the current area - if provided, and all chunks are mined before all of the intended mining rolls are done, the character will stop early. Any SP gained, as well as the ntri and wtr burned from the mining, will also be shown.
  • +mine l d type n m - Mining roll, Drill mining. As above, but using a drill to mine. Apart from the adjustments to the target and the ntri and wtr burned from the mining, these two roll types are the same in how you use them.
  • +mine l b type d m - Mining roll, Blast mining. As above, but using explosives to mine. Instead of providing the number of hits, instead, you provide d, the LDV modifier of the explosives you are going to use. This can only mine one blast at a time, but it will roll 1d8+d, divide that by the modifier determined by your skill level, rounding to the nearest whole number (and to a minimum of 1 and a maximum of m if it's provided) and expose that many chunks of ore, while also displaying the SP gained from the blast mining.
  • +room - Generate a single random room
  • +room-s, +room-f, +room-d and +room-u - As above but with it being a Safe/Fast/Deep/Unlimited UA dive, thereby adding in the events which go with the room.
  • +doors - Generates the potential doors in the UA.
  • +doors-s, +doors-f, +doors-d and +doors-u - As above but with it being a Safe/Fast/Deep/Unlimited UA dive, thereby adding in the events which go with the room.
  • +event-unlim - Get a random Event for the unofficial 'unlimited' UA route.
  • +dndstat - Creates a table of DnD stats using the 4d6k3 roll method, ordered from lowest to highest.
  • +dndstat7 - As above, but roll seven dice pools and discard the lowest one.
  • +jobs - generate a list of potential random jobs.
  • +drink - generate a random drink
  • +sgun g h c f - Shotgun Pelette Hit roll. Find how many pelettes or flechettes have hit the target. g (default 12 gauge) can be either .410, 20 gauge, 12 gauge or CAWS, while h is the number of hits. Add flech if the shell has flechette, and either mod or full if the shotgun has a mod or full choke.

For Fun

  • +rumour - A variant of Tsuchinoko's &rumor, +rumour gives you a rumour which DeltaBot has heard, which may or may not be true.
  • +handbook - Get a random rule from the Activist's Handbook, a rulebook which Auro quotes from every now and again.
  • +8ball - A variant of Tsuchinoko's &asktsuchi, +8ball allows you to ask DeltaBot a yes/no question, and get a response from DeltaBot in return.
  • +MzW - They say anything can happen in the Mazes, and using the MzW command could give you anything at all. Random musings from DeltaBot, misquoted quotes, calls for Hebi...

GM Tips for DeltaBot

Handloading GM Tip

Tips for Game Masters
If you are using the unofficial DeltaBot Discord bot, you may instead use this command: +r% x>y, where:
  • x is the amount of shots for a given caliber
  • y is the chance of success corresponding to the character's skill level.

In the situation described above, to determine the chances of finding spent casings for 36 shots of 9x19mm with Hikaru's Expert level, you would type +r% 36 40; the bot will print out all of the rolls, as well as the total number of successes.


Mining GM Tips

Pick/Drill Mining

Tips for Game Masters
If you are using the unofficial DeltaBot Discord bot, you may instead use this command: +mine s t m x z, where:
  • s is the skill level of the character
  • t is the type of mining done: p for pick mining, d for drill mining
  • m is the ore type: m for metals, g for gemstones, s for Serpentium
  • x is the amount of strikes performed at once
  • z is the maximun number of ores which could be mined.

The bot will print out how much ore you mined out, how much each ore chunk weighs (except for Serpentium), the SP gained and how much ntri and wtr was burned from the mining session.


Blast Mining

Tips for Game Masters
If you are using the unofficial DeltaBot Discord bot, you may use this command: +mine s b m l z, where:
  • s is the skill level of the character
  • b is used to tell the bot this is blast mining
  • m is the ore type: m for metals, g for gemstones, s for Serpentium
  • l is the LDV modifier for the explosions you are using to mine
  • z is the maximun number of ores which could be mined.

The bot will print out how much ore you mined out, how much each ore chunk weighs (except for Serpentium) and the SP gained.


Dojo GM Tip

Tips for Game Masters
If you are using the unofficial DeltaBot Discord bot, you may instead use this command: +r% x>65, where x is the amount of strikes. The bot will print out all of the rolls, as well as the total number of successes.

DeltaBot does not allow rolling more than 250 dice at once (x = 250 or less), to prevent him from spitting errors or becoming unresponsive. To roll a full 500 rounds, simply roll +r% 250>65 twice and add together the number of successes.


Shooting Range GM Tips

Tips for Game Masters
If you are using the unofficial DeltaBot Discord bot, you may instead use this command: +r% x>75, where x is the amount of strikes. The bot will print out all of the rolls, as well as the total number of successes.

DeltaBot does not allow rolling more than 250 dice at once (x = 250 or less), to prevent him from spitting errors or becoming unresponsive. To roll a full 500 rounds, simply roll +r% 250>65 twice and add together the number of successes.