Installation
4.0 | OwlsCheck - CheatCheck
4.0 | OwlsCheck - CheatCheck
- Download the plugin JAR file (e.g., OwlsCheck-4.0-SNAPSHOT.jar).
- Place it in your server’s plugins folder.
- Start or restart the server. A folder named OwlsCheck (or similar) will appear in plugins/.
- Check the config.yml and messages_xx.yml files in the plugin’s folder to customize settings and translations.
Permissions
- owlscheck.use – Required to use any of the /check commands.
Typically granted to moderators, admins, or OPs.
Multi-Language Support
- The plugin loads messages from a file named messages_<lang>.yml, where <lang> matches the language setting in config.yml.
- Available examples include messages_en.yml, messages_fr.yml, messages_it.yml, messages_ru.yml.
- You can create your own translation file (e.g., messages_de.yml for German) by copying one of the existing files and translating the text. Just set language: de in config.yml.
Troubleshooting
- Cannot move or break blocks after a check? Ensure staff used /check <player> pass if the player is cleared.
- “Cannot resolve symbol ‘Player’” errors in your IDE? Make sure you have the Paper/Spigot API in your project’s dependencies and correct imports (import org.bukkit.entity.Player
.
- Timer not stopping? Use /check <player> got to pause the timer, or /check <player> pass/deny to finalize the check.
Example Workflow
- Mod suspects a player is cheating.
- Mod runs /check <player> Discord.
- The player is frozen and sees “CHECK IN PROGRESS” on screen.
- A 5-minute timer starts.
- The player adds the mod on Discord; the mod sees it and types /check <player> got.
- The timer pauses, but the player is still frozen.
- The mod confirms the player is legitimate or finds no evidence of cheating.
- The mod runs /check <player> pass. The check ends; the player is unfrozen.
- Alternatively, if the mod finds cheats:
- The mod runs /check <player> deny. The player is banned.
Commands
All commands require the permission owlscheck.use (or OP status).
- /check <player> <DiscordTag>
- Initiates a check on <player>, freezing them and repeatedly displaying a Title instructing them to add the staff’s Discord (<DiscordTag>).
- Starts a timer (based on check-time in config.yml). If time runs out, the player is auto-banned.
- /check <player> got
- Pauses the timer (the player remains frozen).
- Use this when the player has added you on Discord, but you still want them frozen while you verify or discuss further. They won’t be auto-banned by the timer anymore.
- /check <player> pass
- Ends the check, unfreezes the player, and cancels any pending auto-ban timer.
- Use this when you confirm the player is “clean.”
- /check <player> deny
- Bans the player for cheating.
- Cancels the timer and unfreezes them (since they’re removed from the server).
Behavior During a Check
- Frozen player cannot:
- Move (attempts to move are cancelled).
- Use most commands (only /check is allowed).
- Break or place blocks.
- Drop items or modify inventory.
- Take damage (they’re immune to attacks/environment).
- Repeated Title on the player’s screen (every few seconds) showing:
- “CHECK IN PROGRESS” (or translated text)
- “Add me: ”
- If the player disconnects while on a check, they are immediately banned for “Left during check.”
- If the timer expires (default 5 minutes) and they are still on a check (and not paused with /check got), they are banned for “Timeout on check.”
Configuration
In config.yml:
language: en # Language to use (en, fr, it, ru, etc.)
check-time: 5 # Minutes before an automatic ban if the check isn't resolved
WEBHOOKS #pass,deny,general info
- language: Determines which messages_<lang>.yml file is loaded (e.g., messages_en.yml, messages_fr.yml, etc.).
- check-time: The number of minutes a player has to comply with the check before an auto-ban.
CHECK UPDATE SOON