TuskBot
is a Rocket League Discord Bot focused on tracking player ranks and in-game stats.
Install TuskBot on your discord server
If the "Manage Roles" permission is granted, TuskBot
will create 19 new roles (unless they already exist). These will be named:
Bronze I
Bronze II
Bronze II
Silver I
Silver II
Silver III
Gold I
Gold II
Gold III
Platinum I
Platinum II
Platinum III
Diamond I
Diamond II
Diamond III
Champion I
Champion II
Champion III
Grand Champion I
Grand Champion II
Grand Champion III
Supersonic Legend
Then: everytime a !register
or !ranks
is executed, that player will be automatically assigned the role of their highest rank.
You can choose to add this permission at any time and TuskBot
will go to work adding these roles and assigning them to players upon execution of !register
or !ranks
Once the bot is installed, you can type !help
to see a list of all possible commands.
Most commands won't work unless you have registered your Rocket League account first:
!register <account-id> [platform]
-
Steam:
<account-id>
: This is the unique ID that identifies your steam account. You can use either:- The number at the end of a link like
http://steamcommunity.com/profiles/76561198257073170
. In this case it would be76561198257073170
. - The text at the end of a link like
https://steamcommunity.com/id/jubishop
. In this case it would bejubishop
. - On the desktop version of Steam, you can find this link by right-clicking anywhere in the empty space of your profile and selecting
Copy Page Url
. Then simply paste it into the address bar of your browser.
- The number at the end of a link like
[platform]
: This defaults to steam, so you can omit it.- Example: In this case, the player could register with:
!register 76561198257073170
or:!register jubishop
.
-
Playstation:
<account-id>
: This is your PSN.[platform]
: This should beps
.- Example: If your PSN is
jubishop
, you'd register with:!register jubishop ps
- If your PSN contains spaces, wrap it in quotes:
!register "My Name" ps
-
XBox:
<account-id>
: This is your Gamertag.[platform]
: This should bexbox
.- Example: If your Gamertag is
jubishop
, you'd register with:!register jubishop xbox
- If your Gamertag contains spaces, wrap it in quotes:
!register "My Name" xbox
-
Switch: Sorry, Switch is not yet supported.
If you are the server's owner (or you're whitelisted), you can register people other than yourself. The command is !admin_register
, and the first param becomes the discord user to register.
- Steam Example:
!admin_register @jubi jubishop
- PS Example:
!admin_register @jubi jubishop ps
- XBox Example:
!admin_register @jubi jubishop xbox
By default, all playlists are considered when assigning roles. Server owners (or whitelisted users) can narrow this selection to any set of playlists they prefer using !role_playlists
. Playlist names are identified as:
standard
doubles
duel
solo_standard
rumble
dropshot
hoops
snow_day
Join the playlists you care about with a |
between each one. For example, if you want to only assign roles based on the ranks in the doubles
, standard
, and solo_standard
playlists:
!role_playlists doubles|standard|solo_standard
If you run !role_playlists
with no parameters, it'll show you what playlists are currently being used.
If you want to go back to the default, run !clear_role_playlists
.
Server owners (or whitelisted users) can also update the role of every registered user in the channel with !update_all_roles
.
!ranks [member]
- To get your own ranks, simply type
!ranks
- To get the ranks of another registered player, follow the command with the name, nickname, or @ of another discord member.
- Example:
!ranks jubi
- Example:
!ranks @jubi
- Example:
- If the
Manage Roles
permission has been granted, every time a rank is checked, the role of that player will be updated to their current highest rank. - Because Psyonix provides no official API for accessing console ranks, the ranks TuskBot reports for Playstation and XBox accounts may be somewhat outdated. 😕
There are 3 commands for getting stats in various ways.
You can fetch lifetime stats, across all game-modes and playlists, with:
!stats [member1] [member2] [member3] ...
- You can click the ⬅️ and ➡️ buttons to flip between the different pages of statistics.
- To fetch your own stats, simply type
!stats
- If you provide a list of players it will display a table so their stats can be easily compared side by side. You can fetch up to 6 players at a time.
- This data is gathered from calculated.gg.
- The image above was generated with the command:
!stats @jubi @Zoynx @Jetpoof @Piaka @Tombst0ne @FezDispenser
Lifetime stats aren't great for comparing players. Someone who mostly plays Duel 1v1 is going to have wildly different stats than someone that prefers Standard 3v3. The !series
command provides a way to view stats for the specific games where all the players were playing together. This makes for much more interesting comparisons.
!series [member1] [member2] [member3] ...
- You can click the ⬅️ and ➡️ buttons to flip between the different pages of statistics.
- To fetch your own stats, simply type
!series
- This data is gathered from ballchasing.com. Stats are generated from the uploaded replays of the player who executes the
!series
command. Your replays must be markedpublic
for TuskBot to access them. The easiest way to have all your replay files automatically uploaded is using BakkesMod. You can find instructions here. - If you do not upload your replays to ballchasing.com, you will get 0 results from
!series
. - Because of API rate limits,
!series
will only work off the games you've played in the last 36 hours. - If you provide a list of players it will display a table so their stats can be easily compared side by side. You can fetch up to 6 players at a time.
- After a session of playing Doubles together, the image above was generated with the command:
!series @jubi @FezDispenser
Everytime a !series
command is executed, TuskBot
stores those replays in its own database. The !alltime
command uses those stored replays to show you the aggregate data of all the !series
commands you've ever run. So as long as you execute a !series
command at least once every 36 hours, you'll be able to use !alltime
to get the complete comparative stats of your games ever since you began using TuskBot
.
!alltime [member1] [member2] [member3] ...
- The display format for
!alltime
is exactly the same as!series
. - The
!alltime
command will only pull data from the stored replays inside its local database. Only the!series
command will get new data from ballchasing.com - If you do not upload your replays to ballchasing.com, or you never run the
!series
command, you will get 0 results from!alltime
.
By default, TuskBot
will accept commands when you address it directly via @Tusk
or prefix your command with !
. Server owners can change this with !set_command_prefix
. To change it to @
:
!set_command_prefix @
Now all commands will begin with @
. If you wanted to change it back to !
:
@set_command_prefix !
If you ever forget what your command prefix is, you can address @Tusk
directly to find out:
@Tusk command_prefix
Note: The maximum command prefix length is 8 characters.
Use the !help
command to learn about simple commands to get URLs to specific player pages on ballchasing.com, calculated.gg, rocketleague.tracker.network, etc.
You're welcome to join the server where TuskBot
was developed and try it out for yourself.
Feel free to hit me up in my discord channel, I'm @jubi
. Or you can provide feedback through Issues here on this github repo.