Sonar icon

Sonar -----

Sonar is a lightweight and easy-to-use anti-bot plugin for Velocity, BungeeCord, and Bukkit.




  • Fix incompatibility with BungeeCord build 1909+
If you're still using BungeeCord or a fork of it, consider upgrading to Velocity if you can.
https://velocitypowered.com/

Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Feb 16, 2025

  • Fix invalid level name in the JoinGame packet
  • Implement a safer Sonar API get() method
  • Add some basic doc comments to the API
  • Mark unused dimensions as deprecated
Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Feb 13, 2025

  • Link documentation in language.properties and config
  • Add Brazilian Portuguese (pt-br) translations #440
  • Fix race condition in VerifiedPlayerController
  • Bump caffeine from 3.1.8 to 3.2.0 #436
Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Jan 29, 2025

  • Use full registries to fix compatibility #429
  • Downgrade mariadb-java-client to 3.4.1
  • Fix invalid block state ids for 1.21.4
This release aims to fix some compatibility issues with certain mods and clients. Please note that it is impossible for Sonar to simply "fix" broken packets sent by any mod or client.

Thanks to FallenCrystal for helping me implement the new registries. Check our her repository if you want to learn more about how we've implemented the new registries.

Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Jan 18, 2025

This is a hotfix release that fixes a NoClassDefFoundError on BungeeCord and Bukkit.

Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Jan 1, 2025

  • Update 1.19-1.21.2 codecs
  • Bump adventure from 4.17.0 to 4.18.0
Happy New Year!

Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Dec 31, 2024

  • Minecraft 1.21.4 Support #408
Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Dec 6, 2024

  • Fix crash issue on 1.13-1.13.2
  • Downgrade mysql-connector-j to 9.0.0
This is a hotfix release that fixes the MySQL driver not loading correctly and 1.13-1.13.2 clients crashing when joining the server.

Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Dec 1, 2024

  • Bump mariadb-java-client from 3.4.1 to 3.5.1
  • Bump mysql-connector-j from 9.0.0 to 9.1.0
  • Use version name instead of ID for logging
Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Nov 26, 2024

  • Clear ByteBuf if the packet has no start
  • Fix invalid-username never being used
Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Nov 11, 2024

This is a hotfix release that removes an accidental debugging statement that caused all errors to be printed out to console in full detail.

Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Nov 4, 2024

  • Move username check to post-login
  • Fix pre-join disconnects not encoding correctly
  • Make unsupported version message configurable
  • Update language/config files for Chinese #404
  • Add client ticking check for 1.21.2+
Massive thanks to the sponsors of Sonar who help keep this project running: Hydoxl
----------, Nov 2, 2024

  • Don't serialize modern json twice
  • Fix NoClassDefFoundError on BungeeCord and Bukkit
This is a hotfix release that resolves an exception on startup introduced by #401
----------, Oct 26, 2024

  • Fix timestamp check false positive
  • Fix component serialization on <1.16 #401
This release fixes gradients being parsed incorrectly for Minecraft 1.15.2 and below.
Additionally, random disconnects during the CAPTCHA have been fixed.
----------, Oct 26, 2024

  • 1.21.2 Support #370, #397
  • Make verification world time configurable
  • Exempt Bedrock players from the vehicle check
  • Exempt Bedrock players from the view distance check
  • Remove useless variables from some events
  • Fix UpdateTime packet on 1.21.2
  • Fix CAPTCHA Y position breaking lighting
  • Fix errors during configuration phase
  • Use hashes for command tab completion
  • Don't print permission message if empty
Some false positives and timeouts related to lag have been fixed.
There've been some more microoptimizations that are not listed.
----------, Oct 23, 2024

  • Remove VerifiedPlayerController#estimatedSize
  • Add easier API method for verifying players
  • Add more stability checks to the database
  • Implement missing view distance check
  • Fix translation error in Spanish translations
  • Tell user how to disable the welcome message
  • Fix possible position issue with vehicles
----------, Oct 6, 2024

  • Fix block heights varying on different versions
  • Use one entity ID for all vehicles
  • Fix the Discord link in Polish translations
  • Add verification welcome message
  • Small micro-optimizations to networking
  • Fix potential NullPointerException
  • Bump dependencies #386
----------, Sep 29, 2024

  • Make the update checker more accessible to users
  • Hide secure-chat toast from 1.20.5+ clients
  • Use the modern way of registering Velocity commands
  • Randomize X and Z positions in vehicle check
  • Fix a potential issue in the vehicle handler
  • Add some more smaller movement validations
  • Fix the 1.7.2-1.7.10 minimum Y coordinate issue
  • Exempt Bedrock players from packet order checks
  • Fix max total packets false positive on 1.7-1.8
  • Add CaptchaGenerationStartEvent, CaptchaGenerationEndEvent
  • Fix custom CAPTCHA background image not working
  • Fix invalid login mappings for 1.18-1.18.1
This update fixes login issues on 1.7.2-1.8 and 1.18-1.18.1. Additionally, /sonar will now show whether the version you're using is up to date or not.
The API groupId has been changed from xyz.jonesdev.sonar to xyz.jonesdev. Check out the repository for more info: https://repo.jonesdev.xyz/#/releases/xyz/jonesdev
There've been some more microoptimizations that are not listed.
----------, Sep 22, 2024

  • Fix invalid block mappings for 1.14-1.14.3
  • Cap username length in LoginSuccess (clientbound)
  • Add invalid window ID check to transactions
  • Randomize some more position-related values
  • Fix a false positive with the moved too far check
  • Fix a false positive with Bedrock players
  • Fix some potential issues on 1.7.2-1.7.10
  • Fix potential issues regarding the IP limit check
This version of Sonar introduces a new fingerprinting system (which is basically just a fancier name for what Sonar had before).
It is highly recommended to reset (delete) your database. Instead of saving the IP address and UUID in the database, Sonar now saves a hashed combination of the username and IP address.
----------, Sep 15, 2024

  • Implement more interactionless checks #378
    • Add legit swing verification check
    • Recode vehicle movement check
    • Fix hotbar (slot) check never actually working
This release patches a recently found bypass by ttProxy.
----------, Sep 11, 2024

  • Don't allow players to send empty packets
  • Recode Y position and gravity calculation
  • Implement SetPlayerRotationPacket packet order check
  • Implement PaddleBoatPacket packet order check
  • Optimize image RGB buffer writing
  • Randomize some placeholder variables during login
  • Remove useless PlayerInfoPacket
  • Only log expired database entries if there are any
  • Don't load the database driver twice
  • Use regular JdbcConnectionSource, not pooled
  • VarInt encoding optimizations PaperMC/Velocity@f034c02
  • VarInt reading optimizations PaperMC/Velocity#1418
  • Fix multiple block types being incorrect on 1.16
----------, Sep 9, 2024

  • Use shared exceptions in hot code #372
  • Don't handle the handshake for server pings
  • Merge failCountCache and blacklist into one
  • Optimize login check order/priority
  • Use host address instead of raw InetAddress
  • Recode the join rate-limiter
  • Code style improvements and micro-optimizations
    • Remove unnecessary ctx.channel() calls
    • Reduce usage of channel.isActive()
----------, Sep 3, 2024

This is a hotfix release that fixes a NullPointerException on start under certain circumstances.
----------, Aug 28, 2024

  • Recode CAPTCHA generation #367
  • Fix Bedrock users sometimes verifying multiple times
  • Fix a bug where Bedrock users were unable to verify at all
  • Fix Bedrock false flagging the vehicle speed check
  • Bump dependencies
    • Bump h2databases from 2.1.214 to 2.2.220
    • Bump mysql-connector-j from 8.4.0 to 9.0.0
    • Bump mariadb-java-client from 3.4.0 to 3.4.1
    • Bump bstats from 3.0.2 to 3.0.3 #364
  • Don't create duplicate entries in database
  • Exempt fake (spoofed) players from being checked
----------, Aug 28, 2024

  • Log client brand and locale if invalid
  • Fix incorrect usage of libby since 55030c5
  • Bump dependencies #362, d15b3c8
  • Use rotation packets to improve the vehicle check
  • Add verification.checks.vehicle.minimum-packets to config
----------, Aug 16, 2024

  • Improve the collision check #360
    • Add more configurable block types (ENCHANTMENT_TABLE, TRAPDOOR, STONE)
    • Fix a bug where the XP bar was shown to players in creative mode
  • Implement missing "fell through blocks" check
  • Fix verification.currently-preparing not being used
  • Fix Bedrock players not being able to be transferred #356
  • Implement Bukkit Support #347
    • Instead of replacing existing pipelines, Sonar now removes every pipeline and adds the necessary ones, therefore saving RAM and CPU usage by minimizing the handlers in the channel.
  • Allow general.max-online-per-ip to be 0
Sonar will only work on standalone Bukkit servers that are not behind a proxy (e.g., BungeeCord or Velocity). If you use a proxy, please install Sonar on the proxy instead of the backend server
----------, Aug 10, 2024

  • Bump dependencies #355
  • Fix IP addresses being parsed incorrectly
    • This fixes an issue with the verified and blacklist command not working
  • Update Czech translations #354 (thanks to @slosacoder)
  • Add Georgian translations #351, #350 (thanks to @GreenedDev)
  • Add Polish translations (thanks to Najek and foren)
----------, Jul 30, 2024

  • Fix client brand reading (Revert e0cc9bd)
----------, Jul 4, 2024

  • Add Indonesian translations (thanks to LourenT)
  • Bump dependencies #343, #344
  • Globalize and simplify per-platform injection
  • Simplify client brand reading for 1.8+
  • Add support for H2 databases #342
----------, Jul 3, 2024

  • Simplify transfer packet sending for 1.20.5+
  • Fix possible race condition in the disconnect logic
  • Make subcommand descriptions translatable
  • Simplify update notifier json parsing
  • Use Indra for better global versioning
  • Add Spanish translations (thanks to Juansitoh)
  • Fix online per IP being calculated incorrectly
----------, Jun 29, 2024

  • Remove unnecessary UncaughtExceptionHandler
  • Fix notifications breaking scheduled tasks
----------, Jun 18, 2024

  • Update Chinese translations #335
  • Make server write timeout configurable
  • Add some missing translations
  • Allow user to disable automatic update checking #332
  • Update priorities of checks performed on login
  • Use compute for more efficient ConcurrentMap I/Os
  • Migrate placeholders to MiniMessage components #329
  • Use ScheduledExecutorService instead of Thread #328
  • Fix invalid timestamp in database #331
  • Movement tick should be incremented even if check disabled #330
  • Improve collision check and fix potential bypass
  • Fix rare NoSuchElementException
  • Extract protocol checks to their own session handler
  • Single-release hijacked packet on Bungee #326
  • Take a snapshot of the JoinGame packet
  • Hook bandwidth handler after handshake packet
  • Preload all registered packets on start
  • Recode PluginMessage handling to fix memory leak
  • Fix memory leak on BungeeCord #325
  • Fix exception when cancelling login on Bungee
  • Remove useless biome codecs #324
  • Implement new slot check #323
  • 1.21 Support #322, #334, #321
Important: In order for the new placeholder system to work properly, you must reset your messages.yml and webhook.yml.
----------, Jun 18, 2024

  • Recode verification system #319
  • Bump dependencies #318, #309
  • Fix several concurrency issues #317
  • Optimize player data handling #316
  • Recode too many accounts check #315
  • Implement 'verification disabled' warning #313
  • Minimize shadowed jar file #311
----------, Jun 12, 2024

  • Update translations #307
    • Add French translations #300 (thanks to ekiff)
  • Update and improve some packet-related code #306
  • Improve networking performance #305
  • Fix NullPointerException #304
----------, May 25, 2024

  • Bump capja from 1.0.2 to 1.0.3 #294
  • Don't cache map data to avoid memory issues #293
(Thanks to @NoltoxGit for reporting)
----------, May 11, 2024

  • Add more softdepends for compatibility #290
  • Update translations #289 (thanks to @F3F5)
  • Recode the map CAPTCHA #288
  • Generalize packets and clean up code #287
  • Use pre-encoded packet snapshots to reduce CPU usage #286
  • Small microoptimizations #285
  • Use experience bar instead of action bar #284
----------, May 11, 2024

  • Add experimental Geyser support #281
  • Add translations for Chinese Simplified #280
  • 1.20.5 and 1.20.6 Support #278
----------, May 3, 2024

  • Don't fail players when disconnecting #276
  • Check for more packets in the vehicle check #275
  • Improve performance through multi-threading #271
----------, Apr 25, 2024

  • Recode max accounts per IP check #268, #266
  • Allow user to manually verify players #265
----------, Apr 20, 2024

  • Restructure dependency management #260
  • Update Russian translations #259, #247, #245 (thanks to @F3F5)
  • Hide blacklist logs during attack #257
  • Improve code readability and maintainability #255
  • Improve verification limits and state system #254
  • Implement vehicle mounting check #251
Each platform will now have its own download link and plugin file. This is done to prevent library/dependency issues on different platforms.
----------, Apr 7, 2024

  • Recode map CAPTCHA #243
  • Don't drop messages that aren't ByteBufs #242
  • Implement missing packet limits #241
  • Fix translation error in the Russian language #240
It is recommend to reset your configuration if you are planning to use the CAPTCHA.
----------, Mar 24, 2024

  • Implement CAPTCHA-on-fail option #237
  • Fix local database cache duplicating after reload #236
----------, Mar 13, 2024

  • Correctly close database connection #233
  • Recode bStats metrics implementation #232
  • Relocate database drivers to avoid compatibility issues #231
----------, Mar 5, 2024

  • Remove unused protocol ids to avoid exploits #229
  • Fix NullPointerException #227
  • Remove pipelines if they are not needed anymore #226
  • Use correct packet limits for PluginMessagePacket #225
If you're currently on 2.0.20, please immediately update to this version as this fixes a huge issue on BungeeCord servers.
----------, Mar 1, 2024

  • Only calculate mitigation stats if webhook is enabled #223 (thanks to @HAMMERxPL)
  • Drop connections from unknown protocol versions #221 (thanks to @HAMMERxPL)
  • Implement experimental support for MariaDB #220
  • Use correct multiple-byte unit for formatting #219
  • Optimize codecs by removing unused dimensions #218
  • Remove duplicate audience listener #217
----------, Mar 1, 2024

Resource Information
Author:
----------
Total Downloads: 5,220
First Release: Feb 24, 2024
Last Update: Feb 16, 2025
Category: ---------------
All-Time Rating:
24 ratings
Find more info at docs.jonesdev.xyz...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings