STAssistant Docs

STAssistant is my personal Discord bot.

Created on February 18, 2019 as TCoAssistant and maintained ever since, this bot has a ton of features.

Despite what its name may suggest, it is not a "virtual assistant" or AI in any way.

Since it's a private bot but a relatively large project, this page serves as a showcase of everything it can do.

STAssistant is written in JavaScript, running on NodeJS, and using the Discord.JS library.

Check out its full changelog here.

Try it out in its public testing server here.

Arguments

This is NOT A COMMAND.

Arguments in <angle brackets> are required for the command to work.

Arguments in [square brackets] are optional.

Arguments that are italicized tell a type of argument. For example, number means to input a number, not the word "number."

Arguments that are plain text tell the word to input. For example, number means to input the word "number."

A vertical bar | separates various arguments you can use with the command.

An ellipsis ... signals either an endless number of arguments if it's at the end, or a range if it's between two arguments.


Birthday Wishes

Usage: --bday [toggle|MonDD[-YYYY]]

Sets up the bot to wish you a happy birthday after you've set it. Year is optional.

Module: bday_wishes

Requirements: Server must have a "System Channel"


Blacklist Server

Usage: --blacklist <id>

Blacklist a server, disallowing STA from joining it.

Restrictions: SweptThrone


Bot Invite Link

Usage: --invite

Sends a link to apply for STA to join your server.

Module: invite_link


Cancel

Usage: --cancel [emoji|user_mention|image_url|image_upload]

Puts a cancelled symbol over an image. Always sends a 72x PNG. No arguments gives helptext.


Changelog

Usage: --changelog

Sends the changelog and a link to the full changelog.


Choose

Usage: --choose <a or b>[ or c ...]

Sends a random item chosen among items separated by " or ".


Color Roles

Usage: --color [#HEXDEC|default|clear|remove]

Sets your color using server roles. No arguments gives helptext.


Color Translate

Usage: --translate [#HEXDEC|rgb(red,grn,blu)]

Translates a color from Hex to RGB or vice versa. No arguments gives helptext.

Module: color_roles


Color Visualizer

Usage: --viz <[#]hexdec>

Sends a 256x image of the input color.

Aliases: --vis


Dice

Usage: --[n]d<#>

Sends n random numbers between 1 and #. Issuing this command without an n is the same as if n were 1.


Dice

Usage: --dice [# [# # ...]]

Sends a random number or numbers between 1 and #. No arguments gives a random number between 1 and 6.


Emoji

Usage: --emoji [what|sleep|sad|upset|mad|angry|hmph|neutral|hello|happy|random]

Sends a STAmoji. No arguments sends a random emoji.


Emote Only Mode

Usage: --emoteonly

Toggles Emote Only mode for the current channel.

Restrictions: ADMINISTRATOR


Help

Usage: --help [features|fun|command]

Get a list of commands, features, or help for a specified command.


Hold

Usage: --hold [emoji|user_mention]

Puts the supplied item in an emoji hand. Always sends a 78x98 PNG. No arguments gives helptext.


Hunt Strat

Usage: --strat

Gives a random funny strategy for Hunt: Showdown.


Leave Server

Usage: --leaveserver <id>

Forces STA to leave a server.

Restrictions: SweptThrone


Log ID

Usage: --log <channel|server>

Logs the ID of the channel or server to console.


Modules List

Usage: --modules [status]

Sends a list of all changeable modules or the statuses of all modules on this server.


Module Module

Usage: --module <module> [yes|true|enable|on|1|no|false|disable|off|0]

Shows the current status of or enables/disables the given module.

STA modules are potentially annoying or disruptive features of STA that can be disabled or enabled per-server.

Restrictions: ADMINISTRATOR (partial)


Pause

Usage: --pause

Pauses STAssistant on this server, preventing most - if not all - of its commands and features.

Restrictions: ADMINISTRATOR


Ping

Usage: --ping

Pings the bot, sending how long it took between you sending the message and STA sending its response.


Real Units

Usage: --real [temp|money] <value>

Translates value from CAD and/or Celsius to USD and/or Fahrenheit. No arguments gives helptext.


Rock, Paper, Scissors

Usage: --rps [r|p|s]

Play rock, paper, scissors. No arguments gives helptext.


Run JS

Usage: --run <code>

Runs JavaScript.

Restrictions: SweptThrone


Server Link

Usage: --server

DMs the sender an invite to the STA test server.

Module: server_link



Set Compete

Usage: --setcompete <competition>

Sets STA's status in the form of Competing in competition

Restrictions: SweptThrone


Set Game

Usage: --setgame <game>

Sets STA's status in the form of Playing game

Restrictions: SweptThrone


Set Listen

Usage: --setlisten <listening>

Sets STA's status in the form of Listening to listening

Restrictions: SweptThrone


Set Stream

Usage: --setstream <stream>

Sets STA's status in the form of Streaming stream with a link to SweptThrone's Twitch.

Restrictions: SweptThrone


Set Watch

Usage: --setwatch <watching>

Sets STA's status in the form of Watching watching

Restrictions: SweptThrone


Stream Editor

Usage: sed/<text_to_replace>/<replacement>

Replaces text in the last message the bot can find.


Time Resolver

Usage: --time [id]

Sends the human-readable time corresponding to the given snowflake. No arguments gives helptext.


Timestamp Resolver

Usage: --timestamp [id]

Sends the timestamp corresponding to the given snowflake. No arguments gives helptext.


True or False

Usage: --tf [query]

Sends return true or return false randomly.


Unpause

Usage: --unpause

Unpauses STAssistant on this server.

Restrictions: ADMINISTRATOR


Update

Usage: --update

Sends the latest update note.

Aliases: --whatsnew

Uptime

Usage: --uptime

Sends the uptime of STA itself and the computer its run on.


Userdata

Usage: --userdata <set|get|del> <userid> <key> [data]

Sets, gets, or deletes userdata with the specified key.

Restrictions: SweptThrone


Usage: --vclink

Sends the link to the voice channel you're in, for screensharing and webcam sharing.


Vote

Usage: vote: [query|# query...]

Starts an easy reaction-based vote for anything. Start lines with a number up to 10 to do a numeric vote.


What's New

Usage: --whatsnew

Sends the latest update note.

Aliases: --update


Whitelist Server

Usage: --whitelist <id>

Whitelist a server, allowing STA to join it.

Restrcitions: SweptThrone


Yes or No

Usage: --yn [query]

Sends yes or no randomly.


SweptTTT Points

Usage: --points <steam_profile_resolvable>

Deprecated. Does nothing. Previously fetched the number of points the requested Steam user had on SweptTTT.


Manage Trigger

Usage: --trigger

Deprecated. Does nothing. Use Discord AutoMod instead.


View Triggers

Usage: --triggers

Deprecated. Does nothing. Use Discord AutoMod instead.