-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhelp.json
More file actions
62 lines (62 loc) · 11.8 KB
/
help.json
File metadata and controls
62 lines (62 loc) · 11.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
[
{
"Command": "roll",
"HelpText": "The `/roll` command rolls *n x*-sided dice, where *n* is the number of dice to roll and *x* is how many sides each die should have. The *n* argument is optional, and any number is accepted (even dice that do not exist). If you would like to reroll 1s, add `r1` after the dice to roll. If you would like to add or subtract a value after rolling, add the desired operation to the end of the command. Critical fails (including those rerolled) are __underlined__, while critical successes are displayed with **bold** digits. You may roll at most 10 dice at once, with at most 100 sides each.\n\n**Emergency Stop:** If rerolling is enabled and a roll fails to produce at least a 2 after ten tries, the rerolls will be stopped to avoid timing out. If this happens, the roll will be assigned a random value of at least 2, highlighted in __*underlined italic*__digits, and a note explaining this will be printed under the results.\n\n**Usage:**\n`/roll d6` rolls one 6-sided die.\n`/roll d69` rolls one 69-sided die.\n`/roll 2d4` rolls two 4-sided dice.\n`/roll 3d20r1`rolls three 20-sided dice and rerolls 1s.\n`/roll 5d12+4` rolls five 12-sided dice and adds 4 to the result.\n`/roll 3d4r1-2` rolls three 4-sided dice, rerolls 1s, and subtracts 2 from the result."
},
{
"Command": "quote",
"HelpText": "The `/quote` command returns a random quote from the database, with its accompanying data. Image transcriptions are done automatically, when a quote is added, through the Tesseract optical character recognition library and its .NET-wrapper by Charles Weld. If a quote is too long and displaying it would exceed the character limit, it will be split in two and returned as consecutive messages. Splitting quotes is first attempted at around two-thirds of their length, after punctuation or whitespaces. If a suitable location for splitting is not found, a quote will be split at exactly the 66% mark. This command takes no arguments.\n\n**Data storage:** The following data is stored for quotes:\n- ID: A number to reference the quote (zero-indexed). This is displayed at the very beginning of every message returned in the following format: `#No`.\n- Body: The quote itself. Links for attachments are appended to this text.\n- Alt text: A transcription of text contained in the image which is used when executing the `/searchquote` command. Can be overwritten with `.alttext [quote ID] [message]`.\n- User ID: The Discord user ID of the original message's author. This is stored so that an up-to-date display name can be downloaded whenever the bot starts up.\n- Link: A link pointing to the original message so that it can be easily accessed.\n\n**Error-handling:** Since an up-to-date display name is always queried whenever the bot boots up, in the event that the Discord API cannot respond, a placeholder name (‘Someone’) will be used instead. If this happens, a warning in small print will be displayed at the bottom of the quote. Please note that it should still be possible to manually access the original message and check its author through the link, should you wish to see it.\n\n**Usage:**\n`/quote` returns a random quote."
},
{
"Command": "specificquote",
"HelpText": "The `/specificquote` command returns a specific quote. The quote to be recalled may be referenced by its ID number (zero-indexed). You can also specifically query for the latest quote to be added to the database. For general information about quotes, see `/help /quote`.\n\n**Usage:**\n`/specificquote 56` returns quote #56 (the 55th quote to be added to the database).\n`/specificquote #56` returns quote #56 (the 55th quote to be added to the database).\n`/specificquote latest` returns the latest quote."
},
{
"Command": "help",
"HelpText": "https://cdn.discordapp.com/attachments/1337097452859428877/1338829503711150080/guy_screaming_for_help_while_holding_a_chick_fil_a_drink.mp4"
},
{
"Command": "character",
"HelpText": "The `/character` command returns a character block for use with *Dungeons & Dragons*. This command takes no arguments. Six sets of four d6's will be rolled, and three highest results will be summed up in each set. The sum of every set will also be displayed.\n\n**Usage:**\n`/character` will return a randomly-rolled *D&D* stat block."
},
{
"Command": "searchquote",
"HelpText": "The `/searchquote` command executes a search within all quotes for a given query. The query must be at least 3 characters long. The results will be displayed ordered by ID, in a single-row format, with their ID, author, and message displayed, except if there is only one result – in this case, the quote will be displayed in full. If the message exceeds 50 characters, it will be trimmed to prevent spam.\n\n**Usage:**\n`/searchquote cat` returns a list of quotes containing the string ‘cat’."
},
{
"Command": "flip",
"HelpText": "The `/flip` command flips a coin, with a 50/50 chance of it either landing on heads or tails, and returns the result. Emotes of Forint (HUF) coins are added for flare. This command takes no arguments.\n\n**Usage:**\n`/flip` returns the result of a coin-flip."
},
{
"Command": "convert",
"HelpText": "The `/convert` command converts a value between two units of measurement. This command uses version `5.70.0` of the [UnitsNet](<https://github.com/angularsen/UnitsNet/>) library by Andreas Gullberg Larsen. The command takes three arguments: the input number, the source unit, and the target unit. This command supports auto-completion for a limited number of units in the library – when less than 2 characters are typed, a fixed list of common units will be displayed. Units contained in the library but not auto-completed can be used by typing the category name followed by the unit name, and separated by a full stop (you can find the full list of category jsons [here](<https://github.com/angularsen/UnitsNet/tree/master/Common/UnitDefinitions>)).\n\n**Undefined Symbols:** If a unit has no symbol defined, then its internal name will be shown instead.\n\n**Usage:**\n`/convert 20 [🌡️ degrees Celsius (°C)] [🌡️ degrees Fahrenheit (°F)]` (auto-completed) returns the value of 20°C converted to °F.\n`/convert 20 Temperature.DegreeCelsius Temperature.DegreeFahrenheit` (typed manually) returns the value of 20°C converted to °F."
},
{
"Command": "addquote",
"HelpText": "The **Add Quote** context menu command adds a given message to the quotes database, from where it can be recalled by quote slash commands. Upon execution, a backup of the current database will be created, after which the new quote will be added to both the database, and at a random spot in the upcoming queue. After this process has concluded, the bot will affirm it with one of two randomly-chosen replies accompanied by the new quote. For general information about quotes, see `/help /quote`.\n\n**Disallowed Quotes:** Duplicates – the bot will reject any duplicates. Self-quotes – the bot will reject any messages posted by itself. Stickers – Discord only allows bots to post stickers belonging to the same server. Because of this, messages with stickers attached are also rejected.\n\n**Usage:**\nRight-click (or tap-and-hold) any message, then choose Apps → Add Quote."
},
{
"Command": "undolastquote",
"HelpText": "The **Undo Last Quote** context menu command removes the latest quote from the database by restoring the latest backup and removing the quote in question from the upcoming queue. Only the person who has added the quote in question may remove it, and only one quote may be removed in this way. After execution, once a new quote is added, the ability to remove it will become available again. For general information about quotes, see `/help /quote`.\n\n**Usage:**\nRight-click (or tap-and-hold) any message, then choose Apps → Undo Last Quote."
},
{
"Command": "quoteby",
"HelpText": "The `/quoteby` command returns a random quote from the database by a given person. While entering the command, a list will be displayed with all current quote authors from the database, as well as the number of quotes they have accumulated so far. For general information about quotes, see `/help /quote`.\n\n**Usage:**\n`/quoteby [Chosen person]` (auto-completed) returns a random quote by the chosen person."
},
{
"Command": "8ball",
"HelpText": "The `/8ball` command returns a mostly-random fortune based on the replies of a classic magic 8-ball. The fortune returned is based on the query entered as well as the command's user, so the same person asking the same question twice will get the same answer both times, with one exception.\n\n**The Exception:** The seeds for the five most recent questions that have been given a neutral answer are stored so that when asked again, the answer returned will be either positive or negative.\n\n**Usage:** `/8ball [question?]` returns an answer based on the question and the person who asked."
},
{
"Command": "textcommands",
"HelpText": "Text commands are commands which can be recalled using a ‘.’ prefix instead of a ‘/’. Text commands do not show up in the auto-complete list, so they will not interfere with everyday usage of the bot. These commands are generally less technical than slash commands, and mostly consist of simple responses.\n\nThe current list of text commands is as follows:\n`.alcohol`: We will need a lot of alcohol.\n`.ban`: Night.\n`.coffee`: WHO WANTS COFFEE?\n`.creature`: Posts a picture of Homunculus Loxodontus (nicknamed Zhdun, ‘The One Who Waits,’ Snorp, or WOSH).\n`.helpme`: HELP!\n`.horror`: AAAAAAAAAA\n`.no`: I respectfully decline.\n`.ő` (*alt.*: `.o`): Ő\n`.pirate`: You are a Pirate!\n`.q`: Posts a reminder on how to add and undo quotes.\n`.selfie`: Posts a picture of me!\n`.steeve`: He walk.\n`.stop`: Please stop it.\n`.wakeup`: [bangs trays]"
},
{
"Command": "exchange",
"HelpText": "The `/exchange` command converts a value between two currencies. This command uses the [Exchange API](<https://github.com/fawazahmed0/exchange-api>) by Fawaz Ahmed. The command takes three arguments: the input number, the source currency, and the target currency or ‘Quick Reference’. This command supports auto-completion for currencies – when less than 2 characters are typed, a fixed list of relevant currencies for the server will be displayed.\n\n**Quick Reference:** The Quick Reference function is designed to easily provide context by exchanging a currency to all currencies relevant on the server in one reply. The output currencies at this time are (in alphabetical order): Canadian dollars, Costa Rican colóns, euros, Hungarian forints, Indonesian rupiah, Japanese yen, Kazakhstani tenges, Philippine pesos, United States dollars, and Vietnamese dongs. If a currency in this list is the same as the input currency, it will be excluded from the output.\n\n**Updating:** Every time a conversion is called, the age of the current database will be checked first. If it exceeds 26 hours, a new database is fetched before the conversion is performed. The source is updated every day at an irregular time roughly between <t:1744678800:t> and <t:1744700400:t>.\n\n**Usage:** `/exchange 50 [euro (EUR)] [Hungarian forint (HUF)]` (auto-completed) returns the value of 50 EUR converted to HUF."
},
{
"Command": "calculate",
"HelpText": "The `/calculate` command evaluates a numeric expression. This command uses the [Dangl.Calculator library](<https://github.com/fawazahmed0/exchange-api>) by Georg Dangl. The command takes one argument, the expression itself. An expression may or may not contain spaces.\n\n**Supported functions:** basic functions, exponentiation, modulo, parentheses, as well as floor(), ceil(), round(), sin(), cos(), tan(), log(), rad(), deg(), sqrt(). This list is not exhaustive – see the link above for more details.\n\n**Usage:**\n`/calculate 2+2` returns the value of two plus two, equals four.\n`/calculate sqrt(25)+5` calculates the square root of twenty-five – five – then adds five to the result, returning ten."
}
]