Member Greeter

Guide to teach you to Configure the Welcome Module Correctly!

Enabling the Server's Member Greeter

1. Toggling the Member Greeter On.

The first thing we're going to do is to enable the server's member greeter. When Sasuke joins on a new server, all the fancy stuffs that Sasuke do, including Member Greeter, is disabled by default, which is why you have to enable the server's member greeter first. You can enable this by typing the command s!welcometoggle and tada! You're set.. No.. But you've already made it the first step!

Sasuke confirming the enabling of this Feature! Way to go!

Similarly, as stated on the message above, if you want to disable this feature in your server, you can do so by typing the command again.

2. Setting the Member Greeter Channel.

Well, Sasuke wouldn't know where to send the messages the first time you toggled it on whenever a new member joins - which is why even after you toggled the Member Greeter, it probably won't respond to any users that are joining. This is where you set up the channel for where the Member Greeter would be used. Type: s!setwelcomech [channel mention | channel ID] You can either supply a channel mention (e.g. #welcome - where it's shrouded in blue and is clickable) or just a channel ID (right click the channel, select COPY ID, for Desktop)

Setting the channel through a channel mention or even use Channel ID.

3. Tada! You're Completely Set Up! (about 30%?)

Ooh, a member just joined ----> Here's how Sasuke would react:

Look! Sasuke just greeted the incoming member in a fancy embed style!

You've set up the Member Greeter for your bot. Well I wouldn't say that it's "Complete" though because we're just at the tip of the iceberg in customizing these message! Remember when I said "full control customization"? Well that only starts from here!

Customizing the Message (Text)

You can do full customization using only text with Sasuke. Here's how it would look like:

As you see, that's an only plain text with a resolved image URL. A Modifier is used as a place holder for the name and server name. We can edit our greeting message just like this with the use of s!setwelcomemsg msg=set [Message Content]. Easy, isn't it? Let's replicate the result from the image above.

s!setwelcomemsg msg=set Hello, **{usermention}**, Welcome to **{guildName}**.
For Testing the bot, go to #test
Hope ya enjoy your stay :wink:
https://tenor.com/view/naruto-and-sasuke-dancing-party-hard-anime-dance-gif-11653930

Notice that I used modifiers to replace the joining member's name and the server's name.

And there we go! Sasuke just confirmed it!

Sasuke just confirmed your custom greeting message!

How about we test it?

We exactly got what we wanted! Note that the channels will only resolve to mention if they are available in your server.

TAKE A GOOD LOOK AT THE FOLLOWING!

  • Modifiers can be used to replace the text with dynamic information (changing) like the username changes per user Join. You can also use the markdown feature discord offers for text like single for italics, double for bold, etc. Check all the available modifiers here!

  • Remember to use the command s!setwelcomemsg msg=true before testing the configured text message. This will set all of your greeter message to use the message. Same would be for using embed (ss!setwelcomemsg embed=true)

  • You can still use most of the flavor text (markdown) that you've been using for discord. Bold, italics, underline, strikethrough, spoilers, etc.

Customizing the Message (Embed)

How to set up the values for the Embed?

Let's begin by typing s!setwelcomemsg embed=set on our typing field. Do not send this message yet, this section of the message will allow the bot to understand that you are trying to set something on your embed. It should be followed by embed options, with a format of -optionname:[option-value]. Option name and the corresponding allowable values will be discussed below. It should also be worth noting that you can pass as many embed options as you like.

REMEMBER

You can still use markdown flavors on the embeds except for the author, title, and footer field. Embed does not support masked links / hyperlinks as of the moment, which is unfortunate. However, modifiers can also be used anywhere on the embed.

  1. Placing Text Embed options that allows text placement includes the previously mentioned author name (-author=name:[]), title (-title=:[]), description (-description=:[]), and footer text (-footer=text:[]). This places the text inside the brackets to their location according to what was previously discussed.

  2. Placing URL Embed options that only allows URL to be passed through. This includes the masked links and the url for images to be used. You can use the url providing modifiers on this options too, such as the avatar URL or server icon url. This includes author image (-author=image:[]), author url (-author=url:[]), url (-url:[]), thumbnail (-thumbnail:[]), image (-image:[]), and footer image (-footer=image:[]).

  3. Changing colors As mentioned earlier, embed are unique for having a single band of color on its side, which is also modifiable in this case. Just use the option -color:[] to set it. Note that only valid hex codes are accepted. Example:

s!setwelcomemsg embed=set -thumbnail:[{avatarDynamic}] -title:[Welcome to {guildName} {user}!] -color:[#00ffff] -footer=text:[You are our {memberJoinRankOrdinalized} member!]
//sets the thumbnail, title, color, and footer text of the embed
All the parameters on the example have successfully been accepted.

Then activate the embed type message:

WORTHY TO BE REMEMBERED

You can set these options on different messages. Example, you set the thumbnail and color on a message, then you set the title and description on another message, the embed settings from those two options are saved.

Let's test how it looks like:

Nice, you can see what we've set up here. Title, thumbnail, color, and footer.

We've successfully set up the embed, but it's kind of boring, there's a big space taking up at the middle of the embed, we will make use of that. now let's do:

s!setwelcomemsg embed=set -description:[some random text here] -image:[A valid image URL here]

WHAT TO LOOK OUT FOR WHEN REMOVING FIELDS

  • You cannot remove embed fields that require URL to work, like thumbnail for instance. To have them removed from the embed, set a non-image-resolving URL when setting it - like -thumbnail:[https://google.com] for example. (Google doesn't resolve to image.)

  • You cannot remove the color of the embed, if you want to set it to the default one (black), just use the #000000 hex.

  • Take note of the spacing between the space brackets, bot will treat them as false values when you put them close together [], add a single space beween them [ ].

Selecting which custom message to use (Default, Message, Embed)

You can select which method to use (assuming you've set all of them) for the member joins. For Example, if you want to use the default custom message, just type s!setwelcomemsg default=true, and this will set all the greeter message in your server to default until you change it again to other method. If you've set a custom message, you may use s!setwelcomemsg msg=true, same goes for embed (s!setwelcomemsg embed=true). Note that the bot will reject your request if you haven't set anything for the selected method.

Modifiers

Here are the list of available modifiers you can use in setting Member Greeter.

Remember to include the brackets!

Modifier

Use

Definition

Avatar

{avatar}

The Avatar Image URL for the user! (treats GIF as a static image)

Avatar Dynamic

{avatarDynamic}

The Avatar Image URL for the user in dynamic format! (works with GIF)

Channel Count

{channelCount}

The current total number of channels the server has, including text, voice, and category channels!

Category Channel Count

{categoryChannelCount}

The current total number of category channels the server has!

Text Channel Count

{textChannelCount}

The current total number of text channels the server has!

Voice Channel Count

{voiceChannelCount}

The current total number of voice channels the server has!

Created At

{createdAt}

The time (in Javascript Date Format) when the joining member's account was created! [UTC]

Created At M/D/Y

{createdAtMDY}

The time (human readable format) when the joining member's account was created! [UTC]

Discriminator

{discriminator}

The discriminator (the 4 numbers after the hash [#] symbol of the username) of the user!

Display Color

{displayColor}

The Color of the User that joined! (Usually just default)

Display Name

{displayName}

The Username of the Member that joined, or Nickname, if there is any!

Guild Icon

{guildIcon}

The Icon URL of the server.

Guild Icon Dynamic

{guildIconDynamic}

The Icon URL of the server in dynamic format.

Guild Name

{guildName}

The name of the Server.

Guild Owner

{guildOwner}

The username of the server owner.

Guild Owner Nickname

{guildOwnerNickname}

The username of the server owner, or nickname if there is any.

Guild Owner Tag

{guildOwnerTag}

The username#discriminator of the server owner.

Guild Owner Discriminator

{guildOwnerDiscrim}

The discriminator of the server owner.

Guild Owner Avatar

{guildOwnerAvatar}

The Avatar Image URL for the server owner.

Guild Owner Avatar Dynamic

{guildOwnerAvatarDynamic}

The Avatar Image URL for the server owner in dynamic format),

Joined At

{joinedAt}

The time (in Javascript Date Format) when this user joined the server.

Joined At M/D/Y

{joinedAtMDY}

The time (human readable format) when this user joined the server.

Member Count

{memberCount}

The total number of users this guild currently has.

Tag

{tag}

The username#discriminator of the user that joined.

User

{user}

The username of the user that joined.

User Nickname

{userNickname}

The username of the user that joined, or nickname if there is any.

User Tag

{userTag}

The username#discriminator of the user that joined.

User Discrim

{userDiscrim}

The discriminator of the user that joined.

User Avatar

{userAvatar}

The Avatar Image URL for the user!

User Avatar Dynamic

{userAvatarDynamic}

The Avatar Image URL for the user in dynamic format!

User Mention

{usermention}

A mention format for the user that joined. Note that you cannot use this in various places in the Embed.

Member Join Rank

{memberJoinRank}

The order from which the member has joined.

Member Join Rank Ordinalized

{memberJoinRankOrdinalized}

The order from which the member has joined, in ordinalized format (with suffixes like st, nd, rd, and th)