-
-
Notifications
You must be signed in to change notification settings - Fork 16
Commands for users
Bastion's prefix, the character at the start of commands that makes sure it doesn't try to respond to normal messages, is configurable by server mods. This readme assumes the default of .
. Any command that outputs a Discord Rich Embed has a plain text option for the convenience of mobile users, available by placing .m
after the command, for example .stats.m cardSearch
.
Bastion can clean up command outputs. After the response to a command has been posted and Bastion has finished working with it (e.g. adding Reaction buttons), you can delete the original command and Bastion will delete its response. This allows non-moderators to clean up after themselves.
Many commands support language selection. Where relevant, the format is cardName,inputLanguage,outputLanguage
. For example, "Pot of Greed,en,ja" will search for an English card name close to "Pot of Greed", then return the details in Japanese. You can also use a card's ID instead of the name. When a command's usage notes say cardSearch
, that refers to this.
The next two commands search for a card, and display a profile with detailed information about them, including their name and effect, the type of card, any monster stats, the card's ID in YGOPro (which is also usually their passcode), and its banlist status in each region (including stating in which regions its legal at all).
Usage: <cardSearch>
This displays the card profile in a Discord Rich Embed, with the card name as the title, card text as a separate field with a proper heading, the ID in the footer, and the card image as a thumbnail. This is considered the preferred option. For cards with multiple artworks, the image displayed for a search by name is the default one, corresponding to the ID which is its official passcode. You can choose which artwork appears by searching by ID. If you wish to see a collage, use the mobile view.
Usage: {cardSearch}
This displays the card profile with inline text, using markdown bold and underline for headings and the like. This option allows a user to highlight and copy any part of the text, which is not very well supported on some of the Discord mobile apps. The card image is not usually displayed, but for cards with multiple artworks, a collage of all artworks is uploaded to Discord immediately before the message with the card profile. Note that this can take some time and will result in a slow response.
Usage: .id cardSearch
This simply displays the card's name and ID. This is mostly useful for YGOPro-related purposes but is listed as a general-purpose command just in case.
Slash Command successor: /id
Usage: .stats cardSearch
This displays the card's stats, i.e. the profile without the card text.
Usage: .effect cardSearch
This displays only the card's effect text, without other stats.
Usage: .top lang
This displays the most popular cards that have been searched for, up to the top 15. Include a language code to see the card names in that language. Bastion also tracks more detailed metrics that may be publicly accessible in the future.
Usage: .skill query
This searches for a skill from Duel Links with a name similar to the query and returns information about its effect and characters who can unlock it. If you're looking for a Skill Card from Speed Duels, use a normal card search.
These commands use a filter system. A filter consists of a number of options such as "type:spell" or "attribute:dark", separated by spaces. You can combine multiple options with "+" for AND, "/" for OR and "!" for NOT. For example .search destroy|type:synchro+tuner/xyz+!pendulum attribute:dark
will match Synchro Tuner monsters, or non-Pendulum Xyz monsters, that are DARK, with "destroy" in the text. For more details, see ygo-data
documentation here. When a command's usage notes say filter
, that refers to this.
Usage: .randcard filter
This displays the card profile of a single random card that matches the filter. With no filter, it will display any random card.
Slash Command successor: /random
Usage .matches query|filter
This displays cards with a name similar to the query, and that match the filter. You can add a language code to the filter to search in that language (e.g. .matches マジシャン|ja attribute:闇
). Results are paginated in groups of 10. Pages can be navigated with reaction buttons or the below commands.
Usage: .search query|filter
This command works the same way as .matches
, except it finds cards that exactly match the query in either the name and/or the card text.
Usage: .md#
Short for "match description", this displays the profile for the card in the list of results for the given number (from 1-10). This command is recognised when a message is edited so you can view multiple results without clutter.
Usage: .mp#
Short for "match page", this changes the page of search results to the given number. This command is recognised when a message is edited so you can view multiple results without clutter.
Usage: .link name
This command displays a variety of useful links and images. If no name is provided, it will show the list of possible names. Note that spaces and casing are ignored, so for example a link called summonnegat
can be found with .link Summon Negation
.
Replaced by Slash Command /link
Usage: .rulings cardSearch
This command returns a link to the official Yu-Gi-Oh! OCG Rulings Database page for the given card.
Usage:
.yugi query
This searches the Yugipedia Yu-Gi-Oh! wiki for
a page, using their search engine, and returns the link. Note that this is not limited to card pages, and also follows redirects.
Replaced by Slash Command /yugipedia
Usage: .trivia options
This plays a game where Bastion displays a card image, and users have to provide its name within the time limit. The options
can consist of various things, in any order:
- Include a language code to play the game in that language
- Include a number to play "best of" that many rounds, only counting rounds where a player answered
- Include the word
hard
to have Bastion crop the image to a quarter - Include a filter to have Bastion only play with cards that fit that filter
Use the command .tq
to quit the game or .tskip
to skip a round. Note that trivia needs to be specifically enabled in a channel to use it! Ask a moderator to use .tlock
in an appropriate channel.
Usage: .deck
in a message that uploads a YGOPro deck .ydk
file.
This parses the uploaded deck and sends a direct message with the contents to the user.
Slash Command successor: /deck
Usage: .ping
This returns a simple message, to confirm the bot is online, as well as a measure of its latency.
Slash Command successor: /ping
Usage: .help command
This provides a short blurb and usage notes on the given command. If no command is given, it shows a general-purpose help message.
Slash Command successor: /help
Usage: .commands
This sends a direct message to the user with a list of every command Bastion has that they can currently use, with a short description. Note that this may require multiple messages.