A personal Discord Bot written with discord.py for the game ffxiv
Bot Invite link here
Info: Bot prefix is tataru
, < > refers to a required argument, [ ] is optional,do not actually type these.
"--" denotes a flag for an argument eg. --flagname argument
(note: subcommands for the commands encounterlogs, logs of category FFlogs are omitted as they're similar to the tierlogs command)
Command and Aliases | Description | Example Usage |
---|---|---|
help |
Shows help about a command, or category | tataru help <command name> , tataru help <category name> |
Command and Aliases | Description | Example Usage |
---|---|---|
ping |
Check the bot's websocket latency | tataru ping |
prefix |
Returns the bot current prefixes | tataru prefix |
say |
Echo a message | tataru say <sup, biches> |
about |
Get info about the bot | tataru about |
source |
Returns the bot's github url | tataru source |
Command and Aliases | Description | Example Usage |
---|---|---|
mirapi, mi |
The main command for mirapi by itself returns glamours on the main page | tataru mirapi |
acceptable_flags, af |
Returns acceptable arguments that can be passed as flags for equipment and filters commands | tataru acceptable_flags |
getjobids, gji |
Returns acceptable job ids for the --j flag | tataru getjobids |
getraceids, gri |
Returns acceptable race ids for the --r flag | tataru getraceids |
Sub Command and Aliases | Description | Example Usage |
---|---|---|
filters, f, filter |
Returns glamours based on flags (--r, --g, --j) | tataru mirapi filters --r <4> --g <f> --j <war> , tataru mirapi filters --r <lalafell> |
search, s, se |
The main command for retrieving glamours on mirapi based on a keyword | tataru mirapi search <keyword> |
Sub Command and Aliases | Description | Example Usage |
---|---|---|
filters, f, filter |
Returns glamours based on a keyword with optional flags (--r, --g, --j) | tataru mirapi search filters <詩人らしく> --r <4> --g <f> --j <war> , tataru mirapi search filters --r <lalafell> |
equipment, eq |
Returns glamours based on equipment name with optional flags (--r, --g, --j) | tataru mirapi search equipment <no.2 type b boots> --r <4> --g <f> --j <war> , tataru mirapi search equipment <cotton kurta> --r <lalafell> |
Command and Aliases | Description | Example Usage |
---|---|---|
iam |
Save a character | tataru iam <world> <forename> <surname> |
portrait, por |
Returns a character's lodestone portrait | tataru portrait <world> <forename> <surname> , tataru portrait , tataru portrait <@user> |
Command and Aliases | Description | Example Usage |
---|---|---|
gamerscape_image_find, gif |
Search for an image on gamerscape by filename | tataru gif <name> |
gamerscape_image_search, gis |
Retrieves image names on gamerscape by filename (case sensitive) | tataru gis <name> |
gamerscape_search, gs |
Retrieves pages on gamerscape based on the query | tataru gs <query> |
Sub Command and Aliases | Description | Example Usage |
---|---|---|
glam |
Retrieves images for glamour on gamerscape by filename with optional flags (--g, --r) | tataru gis glam <no.2 type b boots>, tataru gis glam <no.2 type b boots> --r <lalafell> -g <female> |
Sub Command and Aliases | Description | Example Usage |
---|---|---|
random , r |
The main command for returning random pieces of glamour | tataru gis glam random |
Sub Command and Aliases | Description | Example Usage |
---|---|---|
aura , liz , lizzer , lizzard |
return only random au ra pieces | tat gis glam random aura |
elezen elf , giraffe |
return only random elezen pieces | tat gis glam random elezen |
hrothgar , ronso , furry |
return only random elezen pieces | tat gis glam random hrothgar |
hyur , hume |
return only random hyur pieces | tat gis glam random hyur |
lalafell , lala , potato |
return only random lalafell pieces | tat gis glam random lalafell |
miqote , miqo , uwukiteh , catgirl , cat |
return only random miqo'te pieces | tat gis glam random miqote |
roegadyn , roe , galdjent |
return only random roegadyn pieces | tat gis glam random roegadyn |
viera , vii , bunny , bunbun |
return only random viera pieces | tat gis glam random viera |
Command and Aliases | Description | Example Usage |
---|---|---|
encounterlogs, el, encounter |
returns all parses for an encounter by name as found on fflogs | tataru el <shadowkeeper> <world> <forename> <surname> , tataru el <e10n> <@User> , tataru el <"cloud of darkness"> |
search |
search for a player or free company and retrieve their fflogs page | tataru search <Calad Baal> |
tierlogs, tl |
Displays raid parses for the current expansion's raid tier | tataru tierlogs , tataru tierlogs <@User> , tataru tierlogs <world> <forename> <surname> |
logs, l |
returns all parses for a zone by name as found on fflogs | tataru logs 'Eden's Promise' , tataru logs 'Eden's Promise' <@User> , tataru logs 'Eden's Promise' <world> <forename> <surname> |
Sub Command and Aliases | Description | Example Usage |
---|---|---|
best, b |
Displays best raid parses for the current expansion's content | tataru tierlogs best , tataru tierlogs best <@User> , tataru tierlogs best <world> <forename> <surname> |
Sub Command and Aliases | Description | Example Usage |
---|---|---|
adps |
sets the metric for rankings to adps | tataru tierlogs best adps , tataru tierlogs best adps <@User> , tataru tierlogs best adps <world> <forename> <surname> |
- Requires python 3.6 or higher
- you will need to obtain api keys from https://www.fflogs.com/ and https://xivapi.com/
- Install dependencies
pip install -r requirements.txt - Create the database
You will need to create a postgres database owned by postgres and require PostgreSQL 9.5 or higher.
The bot will add the tables on startup. - Setting up configuration
example configuration can be found in the exampleconfig.py,
create a config.py similar to this and place it in the config directory - Upon starting the bot by running the main.py file you will finally need to run the add_zones command to
setup the fflogs cog, and run the add_images to setup the gamerscape cog then, setup_worlds_dc to have the bot save lodestone users.
- Optionally your preferred method of serving images locally with http/https. Note if you choose not to
gis glam random [sub command]
will not function as intended, depending on how you structure your directories you'll need to modify some code you can opt to use the tree structure I have here
- Python 3.6+
- v1.3.4+ of discord.py
- FFlogs account
- lru-dict
- Asyncpg
- Beautifulsoup4
- Jishaku
- Typing
- Psutil
- pyxivapi
- discord-ext-menus