Sueta
BO

BotCaptcha

1.1

Prevent bots from bothering your players

·Plugin

BotCaptcha v1.0

The plugin:

Long version:
This plugin starts multiple captcha processes when an unregistered player/bot joins the server.
There are four captcha systems: a ping captcha where the ping of the player is checked intensive and carefully; a clicking captcha where the player has to click the correct glass pane in an inventory; a writing captcha where the player has to type a random generated word into the chat; a proxy checker which checks if the player uses a VPN/Proxy; (in the end the player needs to click a message in the chat).
When the player/bot makes a mistake he gets kicked and one try is added to his account. When three tries are reached the player gets banned. Your website or Discord server gets displayed when the player tries to join again. You can configure everything except some intern admin messages.
When the player passed every captcha he will be registered in a database and/or config file. Yes you read right! You can activate MySQL database support and config file support or just on of them.
You can activate/deactivate all feature, change messages etc. in the config file but you can also you commands! All the commands and there functions are listed down below!
As an admin you can also activate the feature that for example: you activated only the MySQL storing system and 5 players got registered and 5 blocked in this time. Now you enable the config storing system but an inconsistency is between the database storing system and the config one. But don't worry.
When you join the server as an admin you can choose whether you want the two storing system synchronized with each other or not!
Also the names of the users are getting automatically updated when they join the server (user changes his name).
All operations were asynchronous programmed for the best experience!

Short version:
- up to four captcha systems (ping, click, write, proxy)
- each player has 3 tries
- everything can be controlled via the config file or with commands
- two storing systems (MySQL and yaml config)
- everything is configurable except intern admin messages
- storing system synchronization
- names of users are getting automatically updated in the storing systems
- asynchronous programmed

Commands:
/botcaptcha | Information
/botcaptcha help | All commands
/botcaptcha enable | Enable all functions
/botcaptcha disable | Disable all functions
/botcaptcha mysql | Enable/Disable MySQL
/botcaptcha config | Enable/Disable config
/botcaptcha register <player> | Register player
/botcaptcha unregister <player> | Unregister player
/botcaptcha block <player> | Block player
/botcaptcha unblock <player> | Unblock player
/botcaptcha blockproxy | Enable/Disable proxy-check
/botcaptcha pingcaptcha | Enable/Disable ping captcha!
/botcaptcha invcaptcha | Enable/Disable inventory captcha
/botcaptcha writecaptcha | Enable/Disable writing captcha
/botcaptcha setping | Max ping allowed
/botcaptcha settimelimit | Time limit for inv + writing captcha
/botcaptcha comparevalues | Compare + copy database + config

Config:

# Prefix of the plugin: every message starts with this 
prefix: '&7(&aBot&cCaptcha&7) &a' 
# ################################## 
# Boolean shows if the plugins functions are enabled 
enabled: true 
# ################################## 
# Boolean shows if the MySQL storing system is activated (remember: when you are changing this boolean not through a command in game you will need to reload your server) 
mysql: false 
# ################################## 
# Boolean shows if the config storing system is activated 
config: false 
# ################################## 
# The URL of your website where the player needs to accept the terms of usage 
url: 'https://your.website' 
# ################################## 
# This integer shows the time that the player has to finish a captcha 
time-limit: 10 
# ################################## 
# Boolean shows if the ping captcha is activated 
check-ping: true 
# ################################## 
# Boolean shows if the inventory captcha is activated 
inventory-captcha: true 
# ################################## 
# Boolean shows if the inventory writing is activated 
writing-captcha: true 
# ################################## 
# Integer shows the max ping allowed while joining the server 
max-ping: 250 
# ################################## 
# Boolean shows if proxies/VPN are getting blocked 
block-proxies: true 
# ################################## 
# Boolean shows if a permitted player gets a messgae while joining if there are inconsistencies between the database and the config file (both the MySQL and the config storing system need to be activated for this to happen) 
compare-database-configuration: true 
# ################################## 
# These are the basic messages 
messages: 
    no-player: '&aYou need to be a player!' 
    no-perms: '&aYou are not allowed to execute this command!' 
    wrong-args: '&aWrong command usage! Use /botcaptcha help!' 
# ################################## 
# These are the permissions of the plugin 
permissions: 
    admin: 'botcaptcha.admin' 
    bypass: 'botcaptcha.bypass' 
# ################################## 
# This shows how many bots got blocked in the past 
blocked-bots: 
    mysql: 
    config:

Support:
Add me on Discord TsundereLover#0778 for any questions!

I am sorry that the description is not well formatted! I am a programmer and not a designer :D !

Have fun with the plugin!

Similar projects

Plugin →