1020 lines
30 KiB
Plaintext
1020 lines
30 KiB
Plaintext
[S_NO_CHANGE]
|
|
Nothing was modified.
|
|
|
|
// Administration Module
|
|
|
|
|
|
//permissionType Setting
|
|
[S_PERMISSIONTYPE_DESCRIPTION]
|
|
Changes how permissions will be regarded for bot commands. For all modes except for the "discord" mode, you can use the `{prefix}grant` and the `{prefix}revoke` commands to configure permissions.
|
|
|
|
__Permission Types__
|
|
**`discord`:** Only discord-based permissions work with bot commands.
|
|
**`grant`:** Only grantable permissions from the bot work with bot commands. *(requires you to set everything up yourself)*
|
|
**`both`:** Both discord-based and grantable permissions work with bot commands. *(default)*
|
|
|
|
[S_PERMISSIONTYPE_INVALIDTYPE]
|
|
The provided value is not a valid permission type; try: `discord`, `grant`, or `both`.
|
|
Use the command `{prefix}setting permissiontype` for more information.
|
|
|
|
[S_PERMISSIONTYPE_SUCCESS]
|
|
Successfully set permission type to `{type}`.
|
|
**{description}**
|
|
|
|
[S_PERMISSIONTYPE_DESCRIPTIONS]
|
|
switch('{type}') {
|
|
case 'discord':
|
|
"Only discord-based permissions will work with bot commands."
|
|
break;
|
|
case 'grant':
|
|
"Only grantable permissions from the bot will work with bot commands."
|
|
break;
|
|
case 'both':
|
|
"Both discord-based and grantable permissions work with bot commands."
|
|
break;
|
|
}
|
|
|
|
[S_PERMISSIONTYPE_GRANTWARNING]
|
|
You enabled the **grant** permission type, which means **nobody can use commands until Administrators grants roles/users the permission to use them**. For more information, refer to the `{prefix}grant` and `{prefix}revoke` commands.
|
|
|
|
|
|
// Moderation Module
|
|
|
|
//Generic filter entries
|
|
[S_FILTER_INVALID_INFRACTION]
|
|
The given infraction is invalid, must be one of `{valid}`.
|
|
|
|
[S_FILTER_ACTION_ADD_START]
|
|
You will be asked a series of questions in order to configure the actions for the filter.
|
|
|
|
What type of action are you adding?
|
|
Can be one of `{valid}`.
|
|
|
|
> You can cancel this series of prompts by responding with `cancel`.
|
|
|
|
{wordwatcher}
|
|
|
|
[S_FILTER_ACTION_ADD_TIMER]
|
|
Would you like the **{action}** to have a timer?
|
|
Not assigning a timer will use defaults for the corresponding action.
|
|
|
|
Respond with a duration or **n**o.
|
|
|
|
[S_FILTER_ACTION_ADD_TIMER_FAIL]
|
|
Failed to resolve a valid timestring, skipping this step for now.
|
|
You can add a timer with the edit prompts later.
|
|
|
|
[S_FILTER_ACTION_ADD_POINTS]
|
|
Do you want modpoints to be assigned for these actions?
|
|
Actions without assigned points will use default values from modpoints.
|
|
|
|
Respond with the amount of points or **n**o.
|
|
|
|
[S_FILTER_ACTION_ADD_EXPIRATION]
|
|
Do you want the modpoints to have an expiration?
|
|
Actions without assigned expiration will use default values from modpoints.
|
|
|
|
Respond with the duration or **n**o.
|
|
|
|
[S_FILTER_ACTION_ADD_EXPIRATION_FAIL]
|
|
Failed to resolve a valid timestring, skipping this step for now.
|
|
You can edit this later.
|
|
|
|
[S_FILTER_ACTION_ADD_POINTS_FAIL]
|
|
Failed to parse points from your response.
|
|
Will use defaults for now. You can edit this later with the edit prompts.
|
|
|
|
[S_FILTER_ACTION_ADD_POINTS_RANGE]
|
|
The point value you gave was out of range and was capped at **{value}**.
|
|
|
|
[S_FILTER_ACTION_ADD_FORCE]
|
|
Should the action be forced to bypass automatic infracton escalation?
|
|
|
|
Respond with **y**es or **n**o.
|
|
|
|
[S_FILTER_ACTION_ADD_PRUNE]
|
|
Should the user's recent messages be pruned after being actioned?
|
|
|
|
Respond with **y**es or **n**o
|
|
|
|
[S_FILTER_ACTION_ADD]
|
|
Successfully added a **{type}** action for {trigger} filter events.
|
|
**Duration:** {duration}
|
|
**Points:** {points}
|
|
**Force:** {force}
|
|
**Prune:** {prune}
|
|
|
|
[S_FILTER_ACTION_RESET]
|
|
Successfully removed all actions.
|
|
|
|
[S_FILTER_ACTION_REMOVE_START]
|
|
Which action are you looking to remove?
|
|
Respond with the corresponding number.
|
|
|
|
> This will time out in 60 seconds.
|
|
> You can also cancel with `cancel`.
|
|
|
|
[S_FILTER_ACTION_PROPERTIES]
|
|
**Duration:** {duration}
|
|
**Points:** {points}
|
|
**Force:** {force}
|
|
**Prune:** {prune}
|
|
**Trigger:** {trigger}
|
|
|
|
[S_FILTER_ACTION_REMOVE]
|
|
Successfully removed **{type}** action for `{trigger}` filter events.
|
|
|
|
[S_FILTER_ACTIONS_EXISTING]
|
|
There is already an action in place for `{trigger}` filter events.
|
|
You can either remove or modify it.
|
|
|
|
[S_FILTER_ACTION_REMOVE_NO_ACTIONS]
|
|
No filter actions to remove.
|
|
|
|
[S_WORDFILTER_WORD_IN_ACTION]
|
|
The following words are already tied to an action and were skipped.
|
|
`{words}`
|
|
|
|
[S_FILTER_INVALID_TRIGGER]
|
|
The trigger cannot be left empty!
|
|
|
|
[S_FILTER_NOACTIONS]
|
|
You haven't configured any filter actions.
|
|
|
|
[S_FILTER_CURRENT_ACTIONS]
|
|
Currently configured actions for the filter.
|
|
|
|
[S_FILTER_ACTION_EDIT_START]
|
|
Which action are you looking to edit?
|
|
Respond with the corresponding number.
|
|
|
|
> This will time out in 60 seconds.
|
|
> You can also cancel with `cancel`.
|
|
|
|
[S_FILTER_ACTION_EDIT_SELECT]
|
|
Which property of the action are you looking to edit?
|
|
Must be one of `{properties}`.
|
|
|
|
[S_FILTER_ACTION_EDIT_BADPROP]
|
|
Invalid property.
|
|
|
|
[S_FILTER_ACTION_EDIT]
|
|
Successfully edited action **{type}**.
|
|
**Duration:** {duration}
|
|
**Points:** {points}
|
|
**Force:** {force}
|
|
**Prune:** {prune}
|
|
**Trigger:** {trigger}
|
|
|
|
[S_FILTER_ACTION_EDIT_DURATION]
|
|
Respond with the new duration.
|
|
**0** will remove the timer, meaning defaults will be used if permanent mutes are disabled.
|
|
|
|
[S_FILTER_ACTION_EDIT_DURATION_ERR]
|
|
Cannot edit duration for a **{action}** action.
|
|
|
|
[S_FILTER_ACTION_EDIT_DURATION_ERR2]
|
|
Failed to parse a valid timestring.
|
|
|
|
[S_FILTER_ACTION_EDIT_BOOL]
|
|
Should **{prop}** be used with the action?
|
|
Respond with **y**es or **n**o.
|
|
|
|
[S_FILTER_ACTION_EDIT_BOOL_INVALID]
|
|
The supplied value could not be resolved to a boolean.
|
|
|
|
[S_FILTER_ACTION_EDIT_POINTS_DISABLED]
|
|
Cannot configure modpoints as they are disabled.
|
|
|
|
[S_FILTER_ACTION_EDIT_POINTS]
|
|
Respond with the new point value.
|
|
|
|
[S_FILTER_ACTION_EDIT_POINTS_FAIL]
|
|
Failed to parse points.
|
|
|
|
[S_FILTER_ACTION_EDIT_EXPIRATION]
|
|
Respond with the new expiration.
|
|
**0** will disable expiration.
|
|
|
|
[S_FILTER_ACTION_EDIT_EXPIRATION_FAIL]
|
|
Failed to parse a valid timestring.
|
|
|
|
[S_FILTER_ACTION_EDIT_TYPE]
|
|
Respond with the new action type.
|
|
Must be one of `{valid}`.
|
|
|
|
[S_FILTER_ACTION_EDIT_INVALID_TYPE]
|
|
The supplied action type is invalid.
|
|
|
|
[S_FILTER_PRESETS]
|
|
Successfully updated which presets to use.
|
|
Now using `{presets}` presets.
|
|
|
|
[S_FILTER_PRESETS_ADD]
|
|
Successfully added `{presets}` presets to the regex filter.
|
|
|
|
[S_FILTER_PRESETS_REMOVE]
|
|
Successfully removed `{presets}` presets from the regex filter.
|
|
|
|
[S_FILTER_PRESETS_RESET]
|
|
Successfully removed all presets from the regex filter.
|
|
|
|
// Wordwatcher
|
|
|
|
[S_WORDWATCHER_DESCRIPTION]
|
|
Configure the behaviour of the word watcher.
|
|
|
|
Wordwatcher is a moderation utility that flags messages for manual review based on keywords.
|
|
Keywords can be regex expressions.
|
|
|
|
Wordwatcher also supports having 5 reactions for quick actions.
|
|
|
|
[S_WORDWATCHER_TOGGLE]
|
|
Successfully toggled the word watcher **{toggle}**.
|
|
|
|
[S_WORDWATCHER_BYPASS_ADD]
|
|
Successfully added **{changes}** to the bypass list.
|
|
|
|
[S_WORDWATCHER_BYPASS_SET]
|
|
Successfully set the bypass list to **{changes}**.
|
|
|
|
[S_WORDWATCHER_BYPASS_RESET]
|
|
Successfully reset the bypass list.
|
|
|
|
[S_WORDWATCHER_BYPASS_REMOVE]
|
|
Successfully removed **{changes}** from the bypass list.
|
|
|
|
[S_WORDWATCHER_IGNORE_ADD]
|
|
Successfully added `{changes}` to the ignore list.
|
|
|
|
[S_WORDWATCHER_IGNORE_SET]
|
|
Successfully set the ignore list to `{changes}`.
|
|
|
|
[S_WORDWATCHER_IGNORE_RESET]
|
|
Successfully reset the ignore list.
|
|
|
|
[S_WORDWATCHER_IGNORE_REMOVE]
|
|
Successfully removed `{changes}` from the ignore list.
|
|
|
|
[S_WORDWATCHER_ADD]
|
|
Successfully added **{changes}** to the watch list.
|
|
|
|
[S_WORDWATCHER_SET]
|
|
Successfully set the watch list to **{changes}**.
|
|
|
|
[S_WORDWATCHER_RESET]
|
|
Successfully reset the watch list.
|
|
|
|
[S_WORDWATCHER_REMOVE]
|
|
Successfully removed **{changes}** from the watch list.
|
|
|
|
[S_WORDWATCHER_CHANNEL]
|
|
Will log flagged messages to <#{channel}>.
|
|
|
|
[S_WORDWATCHER_ACTION_LIMIT]
|
|
You've hit the limit of quick actions. Either modify or remove existing ones.
|
|
|
|
[S_WORDWATCHER_ACTION_ADD_START]
|
|
You can only define up to 5 quick actions, you currently have {amount} existing actions.
|
|
|
|
[S_WORDWATCHER_ACTION_ADD_TRIGGERS]
|
|
Which emoji should represent this action?
|
|
Make sure it is one that the bot has access to (i.e. from this server or one you know the bot is in).
|
|
|
|
The bot will use defaults if no emoji is given.
|
|
|
|
// Wordfilter
|
|
[S_WORDFILTER_DESCRIPTION]
|
|
Configure the word filtering behaviour for your server.
|
|
|
|
> Each option that is a list (explicit, fuzzy, regex, whitelist, bypass and ignore) work with the methods **add|remove|set|reset**.
|
|
> **NOTE:** Regex is meant for advanced users, if you do not understand how to use regex, ask someone who does or use the presets or other available filters.
|
|
|
|
> Silent means that the bot will not respond in chat. If actions are set in place the bot will DM if configured.
|
|
|
|
> Actions are managed through a series of prompts.
|
|
|
|
> Currently available presets are `profanity`, `obscenity` and `slurs`.
|
|
|
|
[S_WORDFILTER_PRESETMISSING_ARGS]
|
|
Missing arguments. Must be one of `profane`, `slurs` or `obscene|nsfw`
|
|
|
|
[S_WORDFILTER_EXPLICIT_ADD]
|
|
Successfully added `{changed}` to the explicit word filter.
|
|
|
|
[S_WORDFILTER_EXPLICIT_REMOVE]
|
|
Successfully removed `{changed}` from the explicit word filter.
|
|
|
|
[S_WORDFILTER_EXPLICIT_SET]
|
|
Successfully set the explicit word filter to `{changed}`.
|
|
|
|
[S_WORDFILTER_EXPLICIT_RESET]
|
|
Successfully reset the explicit word filter.
|
|
|
|
[S_WORDFILTER_WHITELIST_ADD]
|
|
Successfully added `{changed}` to the whitelist.
|
|
|
|
[S_WORDFILTER_WHITELIST_REMOVE]
|
|
Successfully removed `{changed}` from the whitelist.
|
|
|
|
[S_WORDFILTER_WHITELIST_SET]
|
|
Successfully set the whitelist to `{changed}`.
|
|
|
|
[S_WORDFILTER_WHITELIST_RESET]
|
|
Successfully reset the whitelist.
|
|
|
|
[S_WORDFILTER_FUZZY_ADD]
|
|
Successfully added `{changed}` to the fuzzy word filter.
|
|
|
|
[S_WORDFILTER_FUZZY_REMOVE]
|
|
Successfully removed `{changed}` from the fuzzy word filter.
|
|
|
|
[S_WORDFILTER_FUZZY_SET]
|
|
Successfully set the fuzzy word filter to `{changed}`.
|
|
|
|
[S_WORDFILTER_FUZZY_RESET]
|
|
Successfully reset the fuzzy word filter.
|
|
|
|
[S_WORDFILTER_REGEX_ADD]
|
|
Successfully added `{changed}` to the regex word filter.
|
|
|
|
[S_WORDFILTER_REGEX_REMOVE]
|
|
Successfully removed `{changed}` from the regex word filter.
|
|
|
|
[S_WORDFILTER_REGEX_SET]
|
|
Successfully set the regex word filter to `{changed}`.
|
|
|
|
[S_WORDFILTER_REGEX_RESET]
|
|
Successfully reset the regex word filter.
|
|
|
|
[S_WORDFILTER_TOGGLE]
|
|
Successfully toggled the word filter **{toggle}**.
|
|
|
|
[S_WORDFILTER_IGNORE_ADD]
|
|
Successfully added {changed} to be ignored by the word filter.
|
|
|
|
[S_WORDFILTER_IGNORE_REMOVE]
|
|
Successfully removed {changed} from being ignored by the word filter.
|
|
|
|
[S_WORDFILTER_IGNORE_SET]
|
|
Successfully set {changed} to be ignored by the word filter.
|
|
|
|
[S_WORDFILTER_IGNORE_RESET]
|
|
Successfully reset the ignored channels for the word filter.
|
|
|
|
[S_WORDFILTER_BYPASS_ADD]
|
|
Successfully added **{changed}** to the word filter bypass list.
|
|
|
|
[S_WORDFILTER_BYPASS_REMOVE]
|
|
Successfully removed **{changed}** from the word filter bypass list.
|
|
|
|
[S_WORDFILTER_BYPASS_SET]
|
|
Successfully set the word filter bypass list to **{changed}**.
|
|
|
|
[S_WORDFILTER_BYPASS_RESET]
|
|
Successfully reset the word filter bypass list.
|
|
|
|
[S_WORDFILTER_SILENT_TOGGLE]
|
|
Successfully toggled word filter silent mode **{toggle}**.
|
|
|
|
Additional parameters:
|
|
> points, ex `{prefix}set wordfilter action shit mute 10 pts`
|
|
> force, useful if you want to guarantee a mute if modpoints are enabled
|
|
> prune, will prune the user's messages after being actioned
|
|
*These can be anywhere in the configuration command*
|
|
|
|
[S_WORDFILTER_WORD_NOT_INCLUDED]
|
|
Word must be in filter to be actioned!
|
|
|
|
[S_WORDFILTER_ACTION_ADD_TRIGGERS]
|
|
Which words should trigger this action? If you want this action to be a generic one (i.e. it is triggered for any filter event that doesn't have a an action tied to it) respond with **gen**eric.
|
|
Alternatively you can respond with **ex**plicit, **fuz**zy or **reg**ex if you want the action to be tied to a filter list.
|
|
|
|
For specific word triggers respond with a list of the words that should trigger it.
|
|
|
|
> Words that are not included in a filter will not trigger any actions as they are not filtered, unless a generic action is in place.
|
|
|
|
__Letting this prompt time out will make the action a **generic** one.__
|
|
|
|
[S_WORDFILTER_ACTION_EDIT_TRIGGER]
|
|
Here you can use the following keywords `add`, `remove` and `set` to modify the trigger.
|
|
|
|
> Using `reset` doesn't require any further arguments.
|
|
|
|
> The `set` keyword requires a new list of trigger words.
|
|
> Words that are already present in another action will be skipped.
|
|
|
|
> `add` and `remove` and be used in the same response.
|
|
> **Ex.** `add word1 word2 word3 remove word1 word4 word6` will first add word1, word2 and word3 and then remove word1, word4 and word6.
|
|
|
|
**To change the trigger to be `generic`, `explicit`, `fuzzy` or `regex` simply respond with one of them.**
|
|
**Using `set`, `add` or `remove` on one of the generic triggers will convert the trigger to a list of words.**
|
|
|
|
__This prompt will time out in 2 minutes.__
|
|
|
|
//Link filter
|
|
[S_LINKFILTER_DESCRIPTION]
|
|
Configure the link filtering behaviour for your server.
|
|
|
|
> Silent means that the bot will not respond in chat. If actions are set in place the bot will DM if configured.
|
|
|
|
> Actions are managed through a series of prompts.
|
|
|
|
[S_LINKFILTER_ADD]
|
|
Successfully added `{domains}` to the **{filter}** filter.
|
|
|
|
[S_LINKFILTER_SET]
|
|
Successfully set the {filter} filter to **{domains}**.
|
|
|
|
[S_LINKFILTER_REMOVE]
|
|
Successfully removed **{domains}** from the {filter}.
|
|
|
|
[S_LINKFILTER_RESET]
|
|
Successfully reset the {filter} filter.
|
|
|
|
[S_LINKFILTER_INVALID_MODE]
|
|
Invalid mode, must be either `whitelist` or `blacklist`.
|
|
|
|
[S_LINKFILTER_MODE]
|
|
Successfully set the link filtering to **{mode}** mode.
|
|
|
|
[S_LINKFILTER_OPPOSITE]
|
|
The following links exist in the **{op}** filter and were skipped
|
|
`{opposite}`
|
|
|
|
[S_LINKFILTER_SKIPPED]
|
|
The following domains are already in the filter and were skipped.
|
|
`{skipped}`
|
|
|
|
[S_LINKFILTER_FAILED]
|
|
The following entries failed to resolve to a valid domain.
|
|
`{failed}`
|
|
|
|
[S_LINKFILTER_ACTION_ADD_TRIGGERS]
|
|
Which domains should trigger this action? If you want this action to be a generic one (i.e. it is triggered for any filter event that doesn't have a an action tied to it) respond with **gen**eric.
|
|
Alternatively you can respond with **whitelist** or **blacklist** if you want the action to be tied to a filter list.
|
|
|
|
For specific domain triggers respond with a list of the domains that should trigger it.
|
|
|
|
> Domains that are not included in a filter will not trigger any actions as they are not filtered, unless a generic action is in place.
|
|
|
|
__Letting this prompt time out will make the action a **generic** one.__
|
|
|
|
[S_LINKFILTER_DOMAIN_IN_ACTION]
|
|
The following domains were already tied to another action and were skipped.
|
|
`{domains}`
|
|
|
|
[S_LINKFILTER_TOGGLE]
|
|
Successfully toggled the link filter **{toggle}**.
|
|
|
|
[S_LINKFILTER_IGNORE_ADD]
|
|
Successfully added {changed} to be ignored by the link filter.
|
|
|
|
[S_LINKFILTER_IGNORE_REMOVE]
|
|
Successfully removed {changed} from being ignored by the link filter.
|
|
|
|
[S_LINKFILTER_IGNORE_SET]
|
|
Successfully set {changed} to be ignored by the link filter.
|
|
|
|
[S_LINKFILTER_IGNORE_RESET]
|
|
Successfully reset the ignored channels for the link filter.
|
|
|
|
[S_LINKFILTER_BYPASS_ADD]
|
|
Successfully added **{changed}** to the link filter bypass list.
|
|
|
|
[S_LINKFILTER_BYPASS_REMOVE]
|
|
Successfully removed **{changed}** from the link filter bypass list.
|
|
|
|
[S_LINKFILTER_BYPASS_SET]
|
|
Successfully set the link filter bypass list to **{changed}**.
|
|
|
|
[S_LINKFILTER_BYPASS_RESET]
|
|
Successfully reset the link filter bypass list.
|
|
|
|
[S_LINKFILTER_SILENT_TOGGLE]
|
|
Successfully toggled link filter silent mode **{toggle}**.
|
|
|
|
// Invite filter
|
|
|
|
[S_INVITEFILTER_DESCRIPTION]
|
|
Configure the invite filter behaviour.
|
|
|
|
[S_INVITEFILTER_ACTION_EXISTS]
|
|
An action already exists for invite filter triggers, you can either edit it or remove it.
|
|
|
|
[S_INVITEFILTER_TOGGLE]
|
|
Successfully toggled the invite filter **{toggle}**.
|
|
|
|
[S_INVITEFILTER_IGNORE_ADD]
|
|
Successfully added {changed} to be ignored by the invite filter.
|
|
|
|
[S_INVITEFILTER_IGNORE_REMOVE]
|
|
Successfully removed {changed} from being ignored by the invite filter.
|
|
|
|
[S_INVITEFILTER_IGNORE_SET]
|
|
Successfully set {changed} to be ignored by the invite filter.
|
|
|
|
[S_INVITEFILTER_IGNORE_RESET]
|
|
Successfully reset the ignored channels for the invite filter.
|
|
|
|
[S_INVITEFILTER_BYPASS_ADD]
|
|
Successfully added **{changed}** to the invite filter bypass list.
|
|
|
|
[S_INVITEFILTER_BYPASS_REMOVE]
|
|
Successfully removed **{changed}** from the invite filter bypass list.
|
|
|
|
[S_INVITEFILTER_BYPASS_SET]
|
|
Successfully set the invite filter bypass list to **{changed}**.
|
|
|
|
[S_INVITEFILTER_BYPASS_RESET]
|
|
Successfully reset the invite filter bypass list.
|
|
|
|
[S_INVITEFILTER_SILENT_TOGGLE]
|
|
Successfully toggled invite filter silent mode **{toggle}**.
|
|
|
|
// Protection Setting
|
|
[S_PROTECTION_DESCRIPTION]
|
|
Configure how moderation immunity works. Can be specific roles or role position based.
|
|
|
|
__Protection Types__
|
|
**`position`:** Users cannot infract others with a higher role than them. *(default)*
|
|
**`role`:** Users cannot infract others with specified protection roles.
|
|
|
|
[S_PROTECTION_INVALID_ARGS]
|
|
Invalid argument, must be either `role` or `position`.
|
|
|
|
[S_PROTECTION_TYPE]
|
|
Successfully set protection type to `{type}`.
|
|
|
|
[S_PROTECTION_ADD]
|
|
Added `{changes}` to the protected list.
|
|
|
|
[S_PROTECTION_REMOVE]
|
|
Removed `{changes}` from the protected list.
|
|
|
|
[S_PROTECTION_SET]
|
|
Set the protected list to `{changes}`.
|
|
|
|
[S_PROTECTION_LIST]
|
|
The following roles are protected.
|
|
{list}
|
|
|
|
//Automod
|
|
[S_AUTOMODERATION_DESCRIPTION]
|
|
Configure automatic infraction escalation & other automated moderation behaviour.
|
|
|
|
**Note:** Toggling useprevious on will cause the automod to use the previous exceeded threshold's action if no new threshold is exceeded.
|
|
|
|
[S_AUTOMOD_TOGGLE]
|
|
Successfully toggled automatic infraction escalation **{toggle}**.
|
|
|
|
[S_AUTOMOD_NOARG]
|
|
Missing action type argument.
|
|
|
|
[S_AUTOMOD_INVALID_TYPE]
|
|
Cannot set **{infraction}** as a threshold.
|
|
|
|
[S_AUTOMOD_INVALID_POINTS]
|
|
Invalid points supplied, must be an integer between 0 and 1000.
|
|
|
|
[S_AUTOMOD_REMOVE_POINTS]
|
|
Successfully removed **{type}** at **{points} points**.
|
|
|
|
[S_AUTOMOD_REMOVE_NOPOINTS]
|
|
No points to remove.
|
|
|
|
[S_AUTOMOD_ADD_POINTS]
|
|
Successfully added action **{type}** at **{points} points**.
|
|
|
|
[S_AUTOMOD_ADD_POINTS_TIMED]
|
|
Successfully added action **{type}** at **{points} points** for **{time}**.
|
|
|
|
[S_AUTOMOD_OVERWRITE_POINTS]
|
|
Successfully overwrote **{oldType}** with **{type}** at **{points} points**.
|
|
|
|
[S_AUTOMOD_OVERWRITE_POINTS_TIMED]
|
|
Successfully overwrote **{oldType}** with **{type}** at **{points} points** for **{time}**.
|
|
|
|
[S_AUTOMOD_NOACTION]
|
|
No action set at that threshold.
|
|
|
|
[S_AUTOMOD_REMOVE_LENGTH]
|
|
Successfully removed length for **{type}** at **{points} points**.
|
|
|
|
[S_AUTOMOD_USEPREV_TOGGLE]
|
|
Successfully toggled usage of previous exceeded threshold **{toggle}**.
|
|
|
|
[S_AUTOMOD_LENGTH_SUCCESS]
|
|
Successfully set the action duration.
|
|
|
|
//moderationPoints Setting
|
|
[S_MODERATIONPOINTS_DESCRIPTION]
|
|
Configure points and point expiration for infractions. Utilized by auto-moderation.
|
|
|
|
**Note:** Associating a word with a point value will use that point value if it is detected in the infraction reason and no point value is given manually.
|
|
|
|
[S_MODERATIONPOINTS_NAN]
|
|
Invalid points: `{arg}`
|
|
|
|
[S_MODERATIONPOINTS_TOOSMALL]
|
|
The provided integer is too small: `{arg}`
|
|
|
|
[S_MODERATIONPOINTS_TOOBIG]
|
|
The provided integer is too big: `{arg}`
|
|
|
|
[S_MODERATIONPOINTS_INVALID_TIMESTRING]
|
|
Could not parse a valid timestring from arguments!
|
|
|
|
Make sure you're using the right format!
|
|
**(int unit)**
|
|
s, sec, secs, second, seconds - will parse to seconds
|
|
m, min, mins, minute, minutes - will parse to minutes
|
|
h, hr, hrs, hour, hours - will parse to hours
|
|
d, day, days - will parse to days
|
|
w, week, weeks - will parse to weeks
|
|
mon, mth, mths, month, months - will parse to months
|
|
y, yr, yrs, year, years - will parse to years
|
|
|
|
[S_MODERATIONPOINTS_ASSOCIATE]
|
|
Successfully associated `{word}` to `{points}` points.
|
|
|
|
[S_MODERATIONPOINTS_ASSOCIATE_REMOVE]
|
|
Successfully removed the following associations: {words}
|
|
|
|
[S_MODERATIONPOINTS_ASSOCIATE_RESET]
|
|
Successfully cleared all point associations.
|
|
|
|
[S_MODERATIONPOINTS_ASSIGN]
|
|
Successfully assigned {points} points to {infraction} infractions.
|
|
|
|
[S_MODERATIONPOINTS_EXPIRE]
|
|
Successfully set {type} to expire in `{time}` time.
|
|
|
|
[S_MODERATIONPOINTS_TOGGLE]
|
|
Successfully toggled modpoints {toggle}.
|
|
|
|
[S_MODERATIONPOINTS_INVALID_TYPE]
|
|
Cannot assign points to **{infraction}** type.
|
|
|
|
//IGNORE SETTING
|
|
[S_IGNORECHANNELS_DESCRIPTION]
|
|
Define the channels that the bot will ignore commands in from non-bypassed users.
|
|
|
|
[S_IGNORE_ADD]
|
|
Successfully added the following channels to the ignore list: `{changes}`
|
|
|
|
[S_IGNORE_REMOVE]
|
|
Successfully removed the following channels from the ignore list: `{changes}`
|
|
|
|
[S_IGNORE_LIST]
|
|
The following channels are being ignored by the bot: `{channels}`
|
|
|
|
The following roles have ignore bypass enabled: `{roles}`
|
|
|
|
[S_IGNORE_BYPASS_ADD]
|
|
Successfully added the following roles to the channel ignore bypass: **{changes}**
|
|
|
|
[S_IGNORE_BYPASS_REMOVE]
|
|
Successfully removed the following roles from the channel ignore bypass: **{changes}**
|
|
|
|
//moderationLog Setting
|
|
|
|
[S_MODERATIONLOG_DESCRIPTION]
|
|
Define the channel to which moderation logs are sent. The setting also allows you to exclude/include types of actions from being logged in the channel.
|
|
|
|
[S_MODERATIONLOG_CHANNEL404]
|
|
{val} does not resolve into a channel.
|
|
|
|
[S_MODERATIONLOG_CHANNEL_SUCCESS]
|
|
Successfully set the modlogs channel to {channel}.
|
|
|
|
[S_MODERATIONLOG_OFF]
|
|
Successfully disabled moderation logs.
|
|
|
|
[C_MODERATIONLOG_INFRACTIONSLIST]
|
|
The following infractions are set to be logged: {list}.
|
|
|
|
[S_MODERATIONLOG_INFRACTIONSMETHODS]
|
|
switch("{method}") {
|
|
case "add":
|
|
"added"
|
|
break;
|
|
case "remove":
|
|
"removed"
|
|
break;
|
|
case "set":
|
|
"set the"
|
|
break;
|
|
}
|
|
|
|
[S_MODERATIONLOG_INFRACTIONS]
|
|
Successfully **{method}** infraction type{plural} `{types}` to be logged.
|
|
|
|
[S_MODERATIONLOG_INFRACTIONSFAIL]
|
|
Failed to **{method}** any infractions.
|
|
|
|
//nicknameLog Setting
|
|
[S_NICKNAMELOG_DESCRIPTION]
|
|
Configure member nickname logging for your server.
|
|
|
|
[S_NICKNAMELOG_TOGGLE]
|
|
Successfully toggled member nickname logging **{changed}**.
|
|
|
|
[S_NICKNAMELOG_CHANNEL]
|
|
Successfully set member nicknames to log to {emoji_text-channel}**{changed}**.
|
|
|
|
//memberLog Setting
|
|
|
|
[S_MEMBERLOG_DESCRIPTION]
|
|
Configure member join and leave logging for your server.
|
|
|
|
__Available Tags__
|
|
**`{mention}`**: user mention
|
|
**`{tag}`:** username#discriminator
|
|
**`{user}`:** username
|
|
**`{serversize}`:** server member count
|
|
**`{servername}`:** server name
|
|
**`{accage}`:** user age
|
|
**`{id}`:** user ID
|
|
|
|
[S_MEMBERLOGS_TOGGLE]
|
|
Successfully turned member logging **{changed}**.
|
|
|
|
[S_MEMBERLOGS_CHANNEL]
|
|
Successfully set member joins and leaves to log to {emoji_text-channel}**{changed}**.
|
|
|
|
[S_MEMBERLOGS_JOIN]
|
|
Successfully **{action}** the member join message to
|
|
`{changed}`
|
|
|
|
[S_MEMBERLOGS_LEAVE]
|
|
Successfully **{action}** the member leave message to
|
|
`{changed}`
|
|
|
|
//voiceLog Setting
|
|
[S_VOICELOG_DESCRIPTION]
|
|
Configure logging of voice joins and leaves for your server.
|
|
|
|
[S_VOICELOG_TOGGLE]
|
|
Successfully turned voice join and leave logging **{changed}**.
|
|
|
|
[S_VOICELOG_CHANNEL]
|
|
Successfully set voice joins and leaves to log to {emoji_text-channel}**{changed}**.
|
|
|
|
//messageLog Setting
|
|
[S_MESSAGELOG_DESCRIPTION]
|
|
Configure message logging for your server. Message logging utilizes webhooks, ensure the bot has the **Manage Webhooks** permission in the logging channel.
|
|
|
|
[S_MESSAGELOG_ROLES_LIST]
|
|
The following roles are ignored by chatlogs: {roles}
|
|
|
|
[S_MESSAGELOG_CHANNELS_LIST]
|
|
The following channels are ignored by chatlogs: {channels}
|
|
|
|
[S_MESSAGELOG_IGNORE_ADD]
|
|
Successfully added {changed} to be ignored by the message logger.
|
|
|
|
[S_MESSAGELOG_IGNORE_REMOVE]
|
|
Successfully removed {changed} from being ignored by the message logger.
|
|
|
|
[S_MESSAGELOG_IGNORE_SET]
|
|
Successfully set {changed} to be ignored by the message logger.
|
|
|
|
[S_MESSAGELOG_IGNORE_RESET]
|
|
Successfully reset the ignored channels for the message logger.
|
|
|
|
[S_MESSAGELOG_BYPASS_ADD]
|
|
Successfully added **{changed}** to the message logger bypass list.
|
|
|
|
[S_MESSAGELOG_BYPASS_REMOVE]
|
|
Successfully removed **{changed}** from the message logger bypass list.
|
|
|
|
[S_MESSAGELOG_BYPASS_SET]
|
|
Successfully set the message logger bypass list to **{changed}**.
|
|
|
|
[S_MESSAGELOG_BYPASS_RESET]
|
|
Successfully reset the message logger bypass list.
|
|
|
|
# [S_MESSAGELOG_ROLES]
|
|
# Successfully {action} the following roles: {changed}
|
|
|
|
# [S_MESSAGELOG_CHANNELS]
|
|
# Successfully {action} the following channels: {changed}
|
|
|
|
[S_MESSAGELOG_ATTACHMENTS]
|
|
Successfully turned attachment logging **{changed}**.
|
|
|
|
[S_MESSAGELOG_NSFW]
|
|
To enable attachment logging the channel needs to be marked nsfw.
|
|
|
|
[S_MESSAGELOG_RESET]
|
|
Successfully reset the chatlogs setting.
|
|
|
|
[S_MESSAGELOG_TOGGLE]
|
|
Successfully turned message logging **{changed}**.
|
|
|
|
[S_MESSAGELOG_TOGGLE_PERM]
|
|
Successfully turned message logging **{changed}**.
|
|
|
|
**Note:** The bot lacks the `MANAGE_WEBHOOKS` permission and is as such unable to configure the webhook for message logging.
|
|
|
|
[S_MESSAGELOG_CHANNEL]
|
|
Successfully set messages to log to {emoji_text-channel}**{changed}**.
|
|
|
|
//mute Setting
|
|
[S_MUTE_DESCRIPTION]
|
|
**Assign/create a muted role, choose mute functionality, define a default mute duration, or enable permanent mutes.** If creating a new muted role, creating permissions could take some time. Default mute durations will only be assigned if permanent mutes are off and a duration is not passed to the mute command.
|
|
|
|
__Mute Types__
|
|
**`0`:** Mutes only add/remove the muted role. *(default)*
|
|
**`1`:** Mutes remove all roles except for the muted role.
|
|
**`2`:** Mutes remove all roles, does not require a muted role.
|
|
|
|
[S_MUTE_TYPENAN]
|
|
The argument provided is not a number! The available types are: `0`, `1`, or `2`.
|
|
View `{prefix}setting mute` for more help.
|
|
|
|
[S_MUTE_TYPEINVALID]
|
|
The argument provided is not a valid type! The available types are: `0`, `1`, or `2`.
|
|
View `{prefix}setting mute` for more help.
|
|
|
|
[S_MUTE_TYPESUCCESS]
|
|
Successfully set the **mute type** to `{type}`.
|
|
|
|
[S_MUTE_TYPESWITCH]
|
|
switch({type}) {
|
|
case 0:
|
|
"Mutes will now *only add/remove* the muted role.";
|
|
break;
|
|
case 1:
|
|
"Mutes will now *remove all roles except for the muted role*, and then add them back once done.";
|
|
break;
|
|
case 2:
|
|
"Mutes will now *remove all roles* and then add them back once done.";
|
|
break;
|
|
}
|
|
|
|
[S_MUTE_PERMANENTINVALID]
|
|
The argument provided is not a boolean value. *(__t__rue, __f__alse)*
|
|
|
|
[S_MUTE_PERMANENTSUCCESS]
|
|
Successfully set **permanent mutes** to `{boolean}`.
|
|
|
|
[S_MUTE_DEFAULTINVALID]
|
|
The argument provided is not a time value. *(1hr, 3d, etc.)*
|
|
|
|
[S_MUTE_DEFAULTSUCCESS]
|
|
Successfully set the **default mute duration** to `{time} seconds`.
|
|
|
|
[S_MUTE_ROLEMISSINGPERMISSION]
|
|
The bot *must have* the `MANAGE_ROLES` permission to create a new mute role.
|
|
|
|
[S_MUTE_ROLEPROMPT]
|
|
Found an existing role named **{name}** `({id})`, would you like to use it and update these roles permissions?
|
|
Answering no will create a new role with updated permissions. *(__y__es, __n__o)*
|
|
This prompt will time out in __30 seconds__.
|
|
|
|
[S_MUTE_ROLEPROMPTERROR]
|
|
You provided an invalid input, please try again.
|
|
|
|
[S_MUTE_ROLECREATEERROR]
|
|
The bot encountered an issue while creating a role for the guild.
|
|
|
|
[S_MUTE_ROLEMISSING]
|
|
Cannot find a specified role with those arguments.
|
|
To create a new role, try `{prefix}set createmute Muted`.
|
|
|
|
[S_MUTE_ROLESUCCESS]
|
|
Successully set the **mute role** to {emoji_role}**{role}**.
|
|
|
|
[S_MUTE_CREATESUCCESS]
|
|
Successfully set the **mute role** to {emoji_role}**{role}**.
|
|
{permissions}
|
|
|
|
[S_MUTE_CREATESUCCESSALT]
|
|
Successfully created and set the **mute role** to {emoji_role}**{role}**.
|
|
{permissions}
|
|
|
|
[S_MUTE_CREATESUCCESSWARNING]
|
|
Some issues were found while creating permissions.
|
|
|
|
[S_MUTE_GENERATEDPERMISSIONS]
|
|
**Permissions have been applied to all possible channels.**
|
|
|
|
[S_MUTE_UNGENERATEDPERMISSIONS]
|
|
**None of the permissions have been changed.**
|
|
|
|
//Silent Setting
|
|
[S_SILENT_DESCRIPTION]
|
|
Configure if all moderation commands will execute silently. Silent executions will delete the exeuctor's message and will not respond unless encountering an error.
|
|
|
|
[S_SILENT_INVALID]
|
|
The argument provided is not a boolean value. *(__t__rue, __f__alse)*
|
|
|
|
[S_SILENT_SUCCESS]
|
|
Successfully set **silent** to `{value}`.
|
|
|
|
//DmInfraction Setting
|
|
[S_DMINFRACTION_DESCRIPTION]
|
|
Configure if messages get sent to users after they're infracted. Setup custom messages and customize what infractions you want to send to the user.
|
|
|
|
[S_DMINFRACTION_TOGGLESUCCESS]
|
|
Successfully **{boolean}** the setting **dmInfraction**.
|
|
|
|
|
|
// Utility Module
|
|
|
|
|
|
//stickyRole Setting
|
|
[S_STICKYROLE_DESCRIPTION]
|
|
Configure the role persistence when users leave and rejoin (roles get automatically reassigned upon rejoin).
|
|
|
|
[S_STICKYROLE_TOGGLE]
|
|
Successfully toggled role persistence `{toggle}`.
|
|
|
|
[S_STICKYROLE_ADD]
|
|
Successfully made `{changes}` sticky.
|
|
|
|
[S_STICKYROLE_REMOVE]
|
|
Successfully made `{changes}` unsticky.
|
|
|
|
[S_STICKYROLE_SET]
|
|
Successfully set sticky roles to `{changes}`.
|
|
|
|
[S_STICKYROLE_LIST]
|
|
The following roles persist when a user leaves and rejoins:
|
|
{list}
|
|
|
|
//guildIndex setting
|
|
[S_INDEX_DESCRIPTION]
|
|
Configure guild indexing and description for your guild.
|
|
|
|
[S_INDEX_DESCRIPTION_SET]
|
|
Successfully set the guild description to
|
|
```
|
|
{changes}
|
|
```
|
|
|
|
[S_INDEX_TOGGLE]
|
|
Successfully toggled guild indexing `{toggle}`.
|
|
|
|
//welcomer Setting
|
|
[S_WELCOMER_DESCRIPTION]
|
|
Configure a message that is sent to new members upon join.
|
|
|
|
**Usable tags:**
|
|
{mention} - mentions the user
|
|
{tag} - username#discriminator
|
|
{user} - username
|
|
{guildsize} - member count of the server
|
|
{guildname} - name of the server
|
|
{accage} - age of the account
|
|
{id} - ID of the account
|
|
|
|
[S_WELCOMER_TOGGLE]
|
|
Successfully toggled the welcomer `{toggle}`.
|
|
|
|
[S_WELCOMER_SET]
|
|
Successfully set the welcomer message to
|
|
`{change}`
|
|
|
|
//guildPrefix Setting
|
|
[S_GUILDPREFIX_DESCRIPTION]
|
|
Customizes your prefix in the guild.
|
|
|
|
[S_GUILDPREFIX_SUCCESS]
|
|
Successfully set the guild prefix to `{prefix}`.
|
|
|
|
[S_GUILDPREFIX_LENGTH]
|
|
The guild prefix cannot exceed {max} characters. `[{length}/{max}]`.
|
|
|
|
[S_GUILDPREFIX_SPACES]
|
|
The guild prefix cannot include spaces.
|
|
|
|
[S_GUILDPREFIX_RESET]
|
|
Successfully reset the guild prefix to `{prefix}`.
|
|
|
|
//autorole setting
|
|
|
|
[S_AUTOROLE_DESCRIPTION]
|
|
Configure automatic role assignment in your guild.
|
|
|
|
[S_AUTOROLE_ADD]
|
|
Successfully added the following roles to autorole:
|
|
`{changes}`
|
|
|
|
[S_AUTOROLE_REMOVE]
|
|
Successfully removed the following roles from autorole:
|
|
`{changes}`
|
|
|
|
[S_AUTOROLE_LIST]
|
|
The following roles are added to users upon join.
|
|
{list}
|
|
|
|
|
|
// Developer Module
|
|
|
|
|
|
//Premium Setting
|
|
[S_PREMIUM_DESCRIPTION]
|
|
View the server's current premium subscription tier. |