Beacon Captcha

Script Beacon Captcha 1.0

  • Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the comminuty!

    Now, what are you waiting for? Join the community now!

Supported Minecraft Versions
  1. 1.8
upload_2021-3-19_19-7-44.png

The Beacon Captcha system is a poorly-created script I made in March of 2020 as a partial solution to the onslaught of "server-list" bots. This is not a fully-fledged captcha solution, but it should stop some automated processes.

_____________________________________________________

upload_2021-3-19_19-7-21.png


Demonstration of the Beacon Captcha in action.

If a player has not yet solved the Beacon Captcha, they will be prompted to solve it when attempting to chat or executing a command. They must click on each block that doesn't match with the beacon "tower" until all four stages have been completed. On the final stage, the player must click the beacon block itself to complete the captcha. The player is then granted the ability to speak in chat and execute in-game commands.

After failing or passing the captcha, the player will be presented with an animated success/failure screen that can be exited by clicking on any of the tiles in the GUI.

upload_2021-3-19_19-19-56.png


Still images of the animated success/failure screens.
_____________________________________________________

Permissions:

- beacon.use - Used for /beacon's test commands.
- beacon.bypass - Bypasses the need to use the captcha entirely.

Commands:

- /beacon [var/test/fail/correct/clear]:

"Var" manually scrambles the Beacon Captcha's block patterns. (i.e. if the beacon's blocks were iron and redstone, it'd be randomized to something completely different. By default, this is automatically scrambled every 5 minutes, but the time between scrambles can be edited in the options section of this script.)

"Test" opens up the Beacon Captcha. This does not grant, nor does it revoke the ability to speak in chat/execute in-game commands.

"Fail" shows the Beacon Captcha's animated "failure" screen.

Likewise, "Correct" shows the Beacon Captcha's animated "success" screen.

"Clear" deletes the command sender's Beacon Captcha data. This forces them to complete the Beacon Captcha again.

_____________________________________________________

This script comes with an options menu that allows you to easily edit all of the script's messages and some of its functions.

# In-Game Messages:

# console_send_message:
# This message is sent to the server's console if a player (that has NOT solved the Beacon Captcha) attempts to chat/enter a command.
console_send_message : %player% has not solved the Beacon captcha yet.
# player_send_message:
# This message is sent to a player (that has NOT solved the Beacon Captcha) if they attempt to chat.
player_send_chat : &cYou must solve the &f&lBeacon &r&ccaptcha to speak in chat.
# player_send_command:
# This message is sent to a player (that has NOT solved the Beacon Captcha) if they attempt to enter a command.
player_send_command : &cYou must solve the &f&lBeacon &r&ccaptcha to use commands.
# permission_deny_message:
# This is sent to a player if they do not have the permission required to use /beacon.
permission_deny_message : &cYou do not have access to this command.

# Blocks / GUI Messages:

# refresh_time:
# Sets the time between each "refresh" of the Beacon Captcha's block set.
# NOTE: I do not recommend setting this time to anything less than 10-30 seconds, as this *could* cause lag. (I'm not saying it will, but it's better to be safe than sorry, eh?)
refresh_time : 5 minutes
# beacon_true_blocks:
# Sets the "true" Beacon Captcha blocks, AKA the ones that send you to the "Incorrect Captcha" screen when clicked. These are randomly switched after [refresh_time].
# NOTE: The block list MUST follow this format:
# X, Y, or Z
beacon_true_blocks : gold block, iron block, diamond block, or emerald block
# beacon_false_blocks:
# Sets the "false" Beacon Captcha blocks, AKA the ones that advance you through the 6 stages of the Beacon Captcha. These are randomly switched after [refresh_time].
# NOTE: Like beacon_true_blocks, the block list MUST follow this format:
# X, Y, or Z
beacon_false_blocks : redstone block, lapis lazuli block, or block of coal
# beacon_block_name:
# Sets the name of each Beacon Captcha block. This name is applied to both "true" and "false" Beacon blocks.
beacon_block_name : &fBeacon Block
# beacon_block_beam:
# Sets the name of the Beacon Captcha beam.
beacon_beam_name : &fBeacon Beam
# beacon_beam_lore:
# Sets the lore of the Beacon Captcha beam.
beacon_beam_lore : &7Click me to finish the &f&lBeacon &r&7captcha.
# fail_name:
# Used as the name of every item in the "Incorrect Captcha" screen.
fail_name : &c&l✘ You failed the &f&lBeacon &c&lcaptcha.
# pass_name:
# Used as the name of every item in the "Passed Captcha" screen.
pass_name : &a&l✔ You finished the &f&lBeacon &a&lcaptcha.
# pass_lore:
# Used in line 1 of the "Passed Captcha" screen.
pass_lore : &7You may use commands and speak in chat now.
# quit_lore:
# Used in line 1 of the "Incorrect Captcha" screen's lore and in line 2 of the "Passed Captcha" screen's lore.
quit_lore : &7Click anywhere to exit this menu.


# Sounds:

# correct_sound:
# The sound that plays when you click on a false Beacon Block. (For a list of sounds, contact your local Google Search)
correct_sound : random.orb
# pass_sound:
# The sound that plays when pass the Beacon Captcha. (For a list of sounds, contact your local Google Search)
pass_sound : level_up
# correct_sound:
# The sound that plays when you fail the Beacon Captcha. (For a list of sounds, contact your local Google Search)
fail_sound : note.bass

# Titles:

# gui_title_captcha:
# GUI title for the main Beacon Captcha.
gui_title_captcha : &0What block doesn't match?
# gui_title_fail:
# GUI title for the "Captcha Failed" animated GUI.
gui_title_fail : &0BEACON | INCORRECT
# gui_title_pass:
# GUI title for the "Passed Captcha" animated GUI.
gui_title_pass : &0BEACON | CORRECT

_____________________________________________________

Dependencies:

- SkQuery
- TuSKe

Supported Versions:

- Release 1.8
- Possibly any version above 1.8 (Use at your own risk.)
  • beacon-logo.png
    beacon-logo.png
    99.6 KB · Views: 177
  • beacon-demonstration.png
    beacon-demonstration.png
    25.3 KB · Views: 179
Author
evelon
Downloads
555
Views
555
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from evelon