You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a discord chatbot. Its commands are split into two groups, simple commands that entirely depend on side effects and commands that can be chained. Those pipes of comands can for example be used for image editing.
Some of the commands may use deprecated APIs that are now offline.
List of Commands
Command
Description
9ball
Decides your fate
animalCrossing
Finds an animal crossing npc
bf
Brainfuck Interpreter
c#
Run csharp code
chess
Play chess
circleIsYou
Basic Baba Is You movement implementation in a discord message, with movement being implemented through reaction events on the message
edit
This is a more advanced command which allows you to chain together functions that were made specific for this command
embed
Posts an embed
emojiUsage
Which emojis are actually used on this server?
environment
Prints bot environment info
Explain
-
GetVideoLink
-
loadConfig
loads the attached config
meme
Automatically steals a meme from reddit
messageDB
Builds all messages of a server into a database (large json file) and implements operations on it such as generating an activity plot
messageInfo
Posts message information, takes message ID as argument
nice
Check if a user is nice
overwatch
Prints todays overwatch arcade game modes
Padoru
-
Ping
-
place
Basically just r/place
play
Plays youtube videos in voice chats
poll
Creates a poll
profile
Prints your bot profile (GDPR?-Style)
Reacter
-
reaction
Post reaction images
sendRoleEmojiMessage
Let users of your server get roles from emote reactions
serverInfo
Posts server information
tictactoe
Play TicTacToe against other people!
timer
Posts a updating message for some event
toggleMessageLinkPreviews
Preview message links on this server
togglePatchNotes
Get annoying messages
uno
Play uno with other humans
userInfo
Posts user information, takes message ID as argument
warframe
Get notifications for warframe rewards or check the world state
List of chainable commands
AudioCommands
Description
Speak
Let's a fictional character narrate the text you input using the fifteen.ai api. Working characters include GLaDOS (Emotions: Homicidal), Twilight Sparkle (Emotions: Happy, Neutral), Fluttershy (Emotions: Neutral), Rarity (Emotions: Neutral), Applejack (Emotions: Neutral), Rainbow Dash (Emotions: Neutral), Pinkie Pie (Emotions: Neutral), Derpy Hooves (Emotions: Neutral), Solider (Emotions: Neutral), Miss Pauling (Emotions: Neutral), Rise Kujikawa (Emotions: Neutral). Default Voice is GLaDOS. Available voices last updated: 03.05.2020
PlayAudio
Plays audio in voicechat
DrawAudio
Draw the samples
Pitch
Adds a Pitch to the sound
Volume
Adds Volume to the sound
DrawCommands
Description
DrawText
Draw Text into pic
DrawCircle
Draw Circle into pic
DrawRect
Draw Rect into pic
Rect
Get Rect
White
Get white
Red
Get red
Col
Get a color from rgb
ColName
Get a color from name
Lerp
Lerp two colors
FunctionalCommands
Description
Vector
Creates a new Vector object
ForFunc
Traverses through a for loop and creates a new object of the resulting array in each iteration
Map
'tis map from haskel
Error
Throws an error
GifCommands
Description
Rainbow
I'll try spinning colors that's a good trick
SpinToWin
I'll try spinning that's a good trick
Pat
Pat the picture
BackAndForth
Mirror the gif in time around the axis of the end time
GetPic
Get single picture from a gif
GetNumFrames
Get the number of gif frames
ToGif
Converts a bitmap array to a gif
ToBitmapArray
Converts a gif to a bitmap array
ChangeSpeed
Change the gifs playback speed
SetDelay
Change the gifs playback speed
MultiplyFrames
Copy each frame x times
Reverse
Make the gif go backwards
ForB
ForFunc for bitmaps, requires a color to color lambda pipe
MapG
Map for gifs
InputCommands
Description
LastT
Gets the last messages text
LastP
Gets the last messages picture
LastG
Gets the last messages gif
LastM
Gets the last message
ThisT
Outputs the given text
ThisP
Gets attached picture / picture from url argument
ThisG
Gets attached gif / gif from url argument
ThisA
Gets mp3 or wav audio files attached to this message
GetTweet
Gets a tweet by id
ProfilePic
Gets a profile picture
ProfilePicG
Gets a profile picture gif
MyProfilePic
Gets your profile picture
ServerPic
Gets the server picture from a server id
Emote
Gets the picture of the emote
EmoteG
Gets the pictures of the emote
StringArray
Returns an string array from the argument
IntArray
Returns an int array from the argument
Range
Returns an int array with numbers from start to start + count
Mandelbrot
Render a mandelbrot
AudioFromYT
Gets the mp3 of an youtube video
AudioFromVoice
Records audio from the voice chat you are currently in
LogicCommands
Description
Gt
Greater than
Lt
Less than
Geq
Greater than or equal
Leq
Less than or equal
Eq
Equal
And
And
Or
Or
MathCommands
Description
Add
Addition
Sub
Subtraction
Mult
Multiplication
Div
Dividing
Pow
Powification
Sqrt
Sqrtification
Log
Logification
Sin
Sinification
Cos
Cosification
Pi
Pi
E
E
Rdm
Get random integer number
RdmDouble
Get random number between 0 and 1
MessageCommands
Description
GetContent
Gets the messages text
GetMediaLinks
Gets the messages attachment links
GetVideoLinks
Gets the messages video links
MessageDBCommands
Description
GetDB
Get the DB
GetAllMessages
Get those messages
FilterMessagesFrom
Get those messages
GetMessagesFromChannel
Get those messages
CountMessages
Plot those messages over time
PlotMessages
Plot those messages over time
PlotMessagesInterval
Plot those messages over time
GetUser
Gets a user
GetDate
Gets a date
PictureCommands
Description
GetColor
Get the color of a pixel
ColorChannelSwap
Swap the rgb color channels for each pixel
Reddify
Make it red af
Invert
Invert the color of each pixel
Rekt
Finds colored rectangles in pictures
Memify
Turn a picture into a meme, get a list of available templates with the argument -list
TextMemify
Put text into a meme template, input -list as Meme and get a list templates, The default Font is Arial and the fontsize refers to the number of rows of text that are supposed to fit into the textbox
Expand
Expand the pixels
Stir
Stir the pixels
Fall
Fall the pixels
Wubble
Wubble the pixels
Cya
Cya the pixels
Inpand
Inpand the pixels
Blockify
Blockify the pixels
Squiggle
Squiggle the pixels
TransformPicture
Perform a liqidify transformation on the image using a custom function
An example pipe for a mandelbrot zoom with rotating colors: $edit for(i:0:20:0.2) { mandelbrot(%i, 1.01:0.28, 100) } > foreach(i:0:360) { rotateColors(%i) } resulting in this gif:
Another example of an edit pipe would be this: $edit "https://cdn.discordapp.com/attachments/491277915015610389/666212145179918337/image.png" > for(i:0.1:4:0.2) { liq(Stir, 0.3:0.5, %i) > liq(Stir, 0.7:0.5, %i) } resulting in:
or this: $edit profilePicture(300699566041202699) > for(i:0:10:0.2){ liq(Inpand, 0.68:0.43, %i) }
Deployment
If .NET 6 is installed this project can be run by executing dotnet restore and dotnet run in the cli in the MEE7 project folder.
For server compatability the bot can also be run using docker compose like so docker-compose build.
In any case the environemnt variable BotToken must be set to a valid discord bot token of any bot account before the bot can start successfully.
Have fun ^^
Acknowledgements
Thanks to everyone who found new ways to use this bot and give me gifs to show here :D
About
A discord chatbot including image editing functionality and various other commands