Getting Started

Welcome, this documentation page contains information about how to use Konek0 and the customization it provides. Konek0 provides a great amount of commands, ranging from fun, leveling, music, utility and most importantly (in my opinion): moderation.
Konek0 uses JSON for customization. These docs will look into that and serve as a guide.

JSON File

First, to access your JSON file, you use the .settings command and download the provided file. This file contains your unique server settings you may edit to customize the bot for your server. After you're done, you use .settings upload with the file attached to update your settings. You can always get the template with .settings template


Variables

Variable Value type Description
true | false BOOLEAN Toggles the setting on or off.
ROLE_ID ULONG The ID of a role of your choice.
CHANNEL_ID ULONG The ID of a channel of your choice.
none | mute | kick | ban STRING The action the bot applies to the user when x happens.

Custom Prefixes

                
                    "custom_prefixes": ["CUSTOM","PREFIXES","HERE"],
                    "enable_default_prefix": true|false,
                
              

"custom_prefixes" is a list where you can add your own custom prefixes in quotation marks, seperated with commas.
"enable_default_prefix" toggles the default prefix (.) on or off. This is true on default.

Muted Role

                
                    "muted_role": ROLE_ID,
                
              

"muted_role" sets the role Konek0 will assign when manually muting users with muting commands, auto-muting and detecting muted users.

Auto Dehoist

              
                  "auto_dehoist": true|false,
              
            

"auto_dehoist" toggles whether Konek0 will automatically reset nicknames of people trying to hoist themselves by using special characters like exclamation marks in front of their names. It will also detect these users when they join your server and give them a random nickname.

Toggleroles

              
                "toggleroles": {
	                  "roles": [ROLE_ID, ROLE_ID],
	                  "deny_access": [ROLE_ID, ROLE_ID]
	                  },
              
            

"roles" is a list where you can set roles, seperated with commas that users can add using the .toggleroles or .roleme command.
"deny_access" is a list where you can set roles seperated with commas that are restricted from using the .toggleroles command. Any user with one or more of these roles will not be allowed to use the command.

Starboard

              
                "starboard": {
	                  "enable_starboard": true|false,
	                  "channel": CHANNEL_ID,
	                  "star_minimum": 3
	                  },
              
            

"enable_starboard" toggles the starboard on or off.
"channel" is the channel in which the starboarded messages will be displayed.
"star_minimum" is the minimum amount of stars a message must receive from different users in order to appear on the starboard.

Welcoming

              
                "welcome": {
  	                "enable_message": true|false,
  	                "channel":"CHANNEL_ID,
  	                "random_message": true|false,
    	              "message": "Hello [USER] (or [MENTION]), welcome to [SERVER]!",
  	                "grant_role_user": ROLE_ID,
  	                "grant_role_bot": ROLE_ID
  	                },
              
            

"enable_message" toggles the welcome message on or off.
"channel" is the channel where the welcome message will be sent.
"random_message" toggles a random welcome message when a user joins the server. This will overwrite "message".
"message" is your custom message that the bot will send when a user joins the server.
"grant_role_user" is the role a user will instantly get once they join the server.
"grant_role_bot" is the role a bot will instantly get once they join the server.

Leveling

              
                "leveling": {
	                  "enable_leveling": true|false,
	                  "announce_levelup": true|false,
	                  "delete_on_leave": true|false,
	                  "xp_gain": "low|normal|high",
	                  "announce_message": "[USER] (or [MENTION]) reached level **[LEVEL]**!",
                    "enable_custom_banners": true|false,
	                  "ignore_channels": [CHANNEL_ID, CHANNEL_ID],
	                  "ignore_roles": [ROLE_ID, ROLE_ID],
	                  "stack_rewards": "true|false",
	                  "rewards": [
                      {"level": 2, "role": ROLE_ID},
                      {"level": 5, "role": ROLE_ID}
                      ]
	                    },
              
            

"enable_leveling" toggles leveling on or off. No one will gain xp when disabled. This is false on default.
"announce_levelup" toggles whether the bot will announce when a user has leveled up.
"delete_on_leave" Toggles whether a user's level gets deleted when they leave the server.
"xp_gain" determines the amount of xp people get for the messages they send.
"announce_message" is your custom message the bot will say when a user levels up. [USER] names the user, [MENTION] mentions and pings the user, [LEVEL] is their new level, [SERVER] names the server.
"enable_custom_banners" toggles custom banners on or off. This is true on default.
"ignore_channels" is a list where you can set channels seperated with commas in which no one will gain xp.
"ignore_roles" is a list where you can set roles seperated with commas that will never gain xp, regardless of where they chat. For example: setting the muted role will prevent muted users from gaining xp.
"stack_rewards" toggles whether users will keep their previous role reward when they earn a new one. Disabling this means users can have one role reward at a time.
"rewards" is a list of role rewards people earn by leveling up. When a user reaches the "level", they will get the "role". You can add as many role rewards as you need.

Logging

              
                "logs": {
	                  "enable_logs": true|false,
	                  "join_log": CHANNEL_ID,
	                  "leave_log": CHANNEL_ID,
	                  "ban_log": CHANNEL_ID,
	                  "unban_log": CHANNEL_ID,
	                  "kick_log": CHANNEL_ID,
	                  "mute_log": CHANNEL_ID,
	                  "unmute_log": CHANNEL_ID,
	                  "delete_log": CHANNEL_ID,
	                  "edit_log": CHANNEL_ID,
	                  "warn_log": CHANNEL_ID
	                  },
              
            

"enable_logs" toggles the logging on or off.
The rest is straight forward: "join_log" logs when a user joins, "ban_log" logs when a user gets banned, "delete_log" logs deleted messages, "warn_log" log when a user gets warned by a moderator or auto-warn, etc.

Word Filter

              
                "word_filter": {
	                  "enable_wordfilter": true|false,
	                  "banned_words": ["BANNED", "WORDS", "HERE"],
	                  "ignore_roles": [ROLE_ID, ROLE_ID, ROLE_ID],
	                  "punishment": "none|mute|kick|ban"
	                  },
              
            

"enable_wordfilter" toggles the word filter on or off.
"banned_words" is a list where you can set banned words in quotation marks, seperated with commas that Konek0 will filter out in chat and notify the user.
"ignore_roles" is a list where you can set roles seperated with commas that will not be affected by the word-filter. It is recommended that moderator roles are added to this list.
"punishment" is the action Konek0 will apply to the user when they get caught by the word-filter.

Anti Ads

              
                "anti_ads": {
    	              "enable_antiads": true|false,
	                  "ignore_roles": [ROLE_ID, ROLE_ID],
	                  "ignore_channels": [CHANNEL_ID, CHANNEL_ID, CHANNEL_ID],
	                  "punishment": "none|mute|kick|ban"
	              },
              
            

"enable_antiads" toggles the ad-filter on or off. This will filter out Discord invite links.
"ignore_roles" is a list where you can set roles seperated with commas that will not be affected by the ad filter. It is recommended that moderator roles are added to this list.
"ignore_channels" is a list where you can set channels seperated with commas that will not be checked for advertisements.
"punishment" is the action Konek0 will apply to the user when they get caught by the ad-filter.

Anti Spam

              
                "anti_spam": {
    	              "enable_antispam": true|false,
	                  "ignore_roles": [ROLE_ID, ROLE_ID],
	                  "ignore_channels": [CHANNEL_ID, CHANNEL_ID, CHANNEL_ID],
	                  "punishment": "none|mute|kick|ban"
	              },
              
            

"enable_antispam" toggles anti-spam on or off. This will detect when users spam messages and filters them.
"ignore_roles" is a list where you can set roles seperated with commas that will not be affected by the spam filter. It is recommended that moderator roles are added to this list.
"ignore_channels" is a list where you can set channels seperated with commas that will not be checked for spam.
"punishment" is the action Konek0 will apply to the user when they get caught by the spam-filter.

Anti Caps

              
                "anti_caps": {
                    "enable_anticaps": true|false,
    	              "caps_percentage": 55,
	                  "ignore_roles": [ROLE_ID, ROLE_ID],
	                  "ignore_channels": [CHANNEL_ID, CHANNEL_ID, CHANNEL_ID],
	                  "punishment": "none|mute|kick|ban"
	              },
              
            

"enable_anticaps" toggles anti-caps on or off. This will detect when users spam caps and filters them.
"caps_percentage" is how much % of a message must be in caps for it to be detected as excessive caps. This won't trigger on short messages.
"ignore_roles" is a list where you can set roles seperated with commas that will not be affected by the caps filter. It is recommended that moderator roles are added to this list.
"ignore_channels" is a list where you can set channels seperated with commas that will not be checked for excessive caps.
"punishment" is the action Konek0 will apply to the user when they get caught by the caps-filter.

Anti Mentions

              
                "anti_mention": {
                    "enable_antimention": true|false,
    	              "mentions_trigger": 4,
	                  "ignore_roles": [ROLE_ID, ROLE_ID],
	                  "ignore_channels": [CHANNEL_ID, CHANNEL_ID, CHANNEL_ID],
	                  "punishment": "none|mute|kick|ban"
	              },
              
            

"enable_antimention" toggles anti-mention on or off. This will detect when users spam mentions and filters them.
"mentions_trigger" is the amount of mentions a message must contain for it to be detected as excessive mentions.
"ignore_roles" is a list where you can set roles seperated with commas that will not be affected by the mentions filter. It is recommended that moderator roles are added to this list.
"ignore_channels" is a list where you can set channels seperated with commas that will not be checked for excessive mentions.
"punishment" is the action Konek0 will apply to the user when they get caught by the mentions-filter.

Images Only

              
                "images_only": {
	                  "channels": [CHANNEL_ID, CHANNEL_ID],
	                  "ignore_roles": [ROLE_ID", ROLE_ID]
	                  },
              
            

"channels" is a list where you can set channels seperated with commas where the image-only filter will take effect. You can only post images in these channels. Messages that don't contain images will be removed.
"ignore_roles" is a list where you can set roles seperated with commas that will not be affected by the image-only filter. It is recommended that moderator roles are added to this list.

Warnings

              
                "warns": {
	                  "warn_limit": 6,
	                  "action": "none|mute|kick|ban",
	                  "adfilter_autowarn": true|false,
                    "wordfilter_autowarn": true|false,
                    "antispam_autowarn": true|false,
                    "anticaps_autowarn": true|false,
	                  "antimention_autowarn": true|false,
	                  "imagesonly_autowarn": true|false,
	                  "anti_ads": {
		                    "warnings": 3,
		                    "action": "none|mute|kick|ban"
		                    },
	                  "word_filter": {
		                    "warnings": 3,
		                    "action": "none|mute|kick|ban"
		                    },
                    "anti_spam": {
                        "warnings": 3,
                        "action": "none|mute|kick|ban"
                        },
                    "anti_caps": {
                        "warnings": 3,
                        "action": "none|mute|kick|ban"
                        },
                    "anti_mention": {
                        "warnings": 3,
                        "action": "none|mute|kick|ban"
                        },
	                  "images_only": {
		                    "warnings": 3,
		                    "action": "none|mute|kick|ban"
		                    }
	                  }
              
            

"warn_limit" is the amount of warnings a user has to have to be punished by "action".
"action" is the action Konek0 will apply to the user when they reach the "warn_limit".
"adfilter_autowarn" toggles whether users will be automatically warned by Konek0 when they get caught by the ad-filter. This is true on default.
"wordfilter_autowarn" toggles whether users will be automatically warned by Konek0 when they get caught by the word-filter. This is true on default.
"antispam_autowarn" toggles whether users will be automatically warned by Konek0 when they get caught by the spam-filter. This is true on default.
"anticaps_autowarn" toggles whether users will be automatically warned by Konek0 when they get caught by the caps-filter. This is true on default.
"antimention_autowarn" toggles whether users will be automatically warned by Konek0 when they get caught by the mentions-filter. This is true on default.
"imagesonly_autowarn" toggles whether users will be automatically warned by Konek0 when they get caught by the image-only filter. This is true on default.

For each filter, (ad-filter, word-filter, anti-spam, anti-caps, anti-mention, image-only), Konek0 can automatically warn the user as mentioned above. When a user gets automatically warned by any of the 3 filters and they now have "warnings" amount of warnings or more, Konek0 will apply "action" to the user. For example: when a user gets caught by the ad-filter and now has 3 warns in total, Konek0's "action" will trigger and it will mute, kick or ban the user or (on default) do nothing at all.