New features:
You can now specify an exact frame size instead of a size range.
- Added the ability to disable calling the garbage collector after generating a captcha.
- Added ability to specify frame sizes for framed captcha.
Please note that this changes the message configuration for them, we recommend resetting the configuration or removing specific translation lines so that the proxy regenerates the correct lines.
- Added ability to limit plugin message amount in the filter.
- Added the ability to override the execution of a ping check after the check is completed.
- Added the ability to switch spam and ping attack.
Fixes:
- Now the filter will try to spawn the player to the center of the framed captcha correctly, even when the captcha is not symmetrical.
- The proxy has been updated to the latest version of BungeeCord.
- Fixed two serious memory leaks when generating and loading captcha from disk.
- Fixed increased RAM consumption when using fall check.
- Fixed file captcha cache calculation, which was broken in the last update.
- Fixed missing hex color for kick reason when connecting to a server.
⋘────────────────────↠∗∗↞────────────────────⋙
A new update of NullCordX has been rolled out ->
Implementations
Fixes from 3.8.1x
- Added support for 1.20.3. (1.20.4 has the same protocol)
- Added a new rendering layer - colorize. Now you can paint a specific element any color, including even transparency.
By the way, we have a fork of Paper that you can purchase as an addon to this resource!
- Fixed false positives of fall checks for clients 1.12 and lower.
- Fixed captcha encoding for online mode
- Fixed dump command
- Now the generator will not throw an exception if no font is specified for the code generator
If you want higher mitigation you should check XDP firewall system
Also, remember to increase socket files-limit, so you can absorb more sockets.
https://stackoverflow.com/questions/880557/socket-accept-too-many-open-files/32699260#32699260
If you have any question or problem hit us on -> https://discord.shieldcommunity.net
⋘────────────────────↠∗∗↞────────────────────⋙
⋘────────────────────↠∗∗↞────────────────────⋙
A new update of NullCordX has been rolled out ->
Fixes from 3.8.0x
Addons
- Fixed false positives of proxy check
- Fixed large heap memory allocation for captcha
- Fixed captcha generation when using large fonts
Implemented the ability to specify vertical mirroring for the mirror layer
By the way, we have a fork of Paper that you can purchase as an addon to this resource!
If you want higher mitigation you should check XDP firewall system
Also, remember to increase socket files-limit, so you can absorb more sockets.
https://stackoverflow.com/questions/880557/socket-accept-too-many-open-files/32699260#32699260
If you have any question or problem hit us on -> https://discord.shieldcommunity.net
⋘────────────────────↠∗∗↞────────────────────⋙
⋘────────────────────↠∗∗↞────────────────────⋙
A new update of NullCordX has been rolled out ->
Big changes in configuration:
Captcha optimization and improvments:
- Migrated to a more updated configuration system from the Elytrium developers.
Loading and saving configuration should now be more faster and correct.- From this moment on, the entire captcha configuration has now been divided into separate configuration files that are located in a separate captcha directory in the nullcordx directory.
In addition, each type of captcha is now configured separately, with the exception of render layers.
This means that you can now, for example, configure separate frame sizes for framed-captcha and animated-framed-captcha.
Most parameters are no longer shared.- The structure of the translation configuration has been changed.
Added absolutely all translation strings from nullcordx.- Added minimessage support for all string related configurations.
Now it's easy to create beautiful gradient or rainbow text in any message, including messages from bungeecord!- Now for all configurations where you need to specify the path to files, the ability to specify a directory has been added.
The proxy will load all files in the directory.- Added the ability to parse the subnet mask for IP addresses.
Now you can specify for example 127.0.0.0/24 to include addresses from 127.0.0.1 to 127.0.0.255 in the list.- Warning! There has been a bit of cleaning done on most configs, some options have been moved or merged, so please be sure to check out the configs and tweak them!
Loading old configurations may break existing configurations.
Don't forget to make a backup copy of your configurations to configure the new configuration the same way!
Antibot improvments:
- Captcha generator has been optimized.
Now the captcha is generated 2 times faster and takes up almost 2 times less memory space.- Added file cache for fonts.
Now the proxy will load much faster, since it will not have to redraw the fonts every time.- The code generator is now a separate render layer.
The generator was divided into 3 types of layers - code, arithmetic and number spelling.
You can set up and use any of the generators or use them together in one captcha.
Or create a second template for the generator that only draws, for example, numbers with a certain font.- Added 2 more default fonts - dialog and dialog-input.
- Added the ability to make default fonts italic or bold.
- Added random render layer.
It allows you to draw one of the layers specified in it randomly.
This can be useful, for example, for random render of code and arithmetic.- Added the ability to use only the color palette from version 1.8 of the game.
By default, 4 color palettes are used for more accurate colors, but this captcha takes up some memory space.
Using only one palette can save almost 4 times memory space, however, image colors may be poor.- Now the captcha generator will forcefully terminate its work when reloading nullcordx.
Motd improvments:
- Added the ability to configure any number of custom modes.
For example, you can create a mode called test which will contain only framed-captcha and then switch it with the command /antibot check custom false test (where false is whether to switch the mode for bedrock players)
Thus, you can create any modes in advance and switch their commands for different situations.
(Don't forget to enable custom mode with the /antibot toggle custom command so that the filter uses custom checks.)- Added the ability to specify risks for proxy checks.
- Added ASN check.
Now you can block the specified hosting providers from which bot attacks are usually carried out.- Added a new proxy service - Vpn Api.
- Now country and asn check will periodically update the database while the proxy server is running.
Other improvments or fixes:
- Added the ability to send the same game protocol for all versions.
- Added ability to set online placeholders for custom motd.
- Added protocolize support for motd cache type 2.
By the way, we have a fork of Paper that you can purchase as an addon to this resource!
- Added more information about which components are loading during the nullcordx initialization process.
- Added api for anti-proxy, anti-asn and anti-country.
- Added info about dynamic dns updating.
- Fixed sometimes wrong dithering for captcha.
- Added ability to configure pooled or unpooled ByteBufAllocator for cached packets.
- Fixed velocity forwarding mode.
- Fixed guava and some other dependency relocation.
- Added api to override isNeedCheck for antibot.
- Added pagination for whitelist command.
- Added /antibot banlist command with pagination.
- Added HaProxyConnectionInitEvent event.
- Fixed entity remove packet for 1.17 client.
- Fixed wrong description and configuration for tcp fast open.
- Fixed advanced ping check mode checking.
- Added ability to disable PlayerHandshakeEvent event.
- Added UserFailedCheckEvent event.
- Added ability to hide server switching log.
- Fixed /antibot servers reload command.
If you want higher mitigation you should check XDP firewall system
Also, remember to increase socket files-limit, so you can absorb more sockets.
https://stackoverflow.com/questions/880557/socket-accept-too-many-open-files/32699260#32699260
If you have any question or problem hit us on -> https://discord.shieldcommunity.net
⋘────────────────────↠∗∗↞────────────────────⋙
⋘────────────────────↠∗∗↞────────────────────⋙
A new update of NullCordX has been rolled out ->
The update was already available on discord two days after the version was released due to all the changes we have in front of Waterfall.
That's why it's important to be on discord to get early access, because on builtbybit there are only tested updates.
- Implemented 1.20.2 support
- Updated upstream stuff and libraries
- Implemented fall and proxy check condition
- Fixed placeholder on wrong captcha message for Spanish translation
- Fixed slightly incorrect translation of the no-permission message for the Russian translation
- Fixed velocity forwarding for offline mode
- Fixed loading of glowing circle background for animated captcha
- Fixed allow state saving for proxy check if enabled DO_NOT_KICK_IF_ERROR
- Fixed loading of condition check. Now it will load recursively
- Fixed wrong width and height for cached captcha file loading/saving
If you want higher mitigation you should check XDP firewall system
Also, remember to increase socket files-limit, so you can absorb more sockets.
https://stackoverflow.com/questions/880557/socket-accept-too-many-open-files/32699260#32699260
If you have any question or problem hit us on -> https://discord.shieldcommunity.net
⋘────────────────────↠∗∗↞────────────────────⋙
⋘────────────────────↠∗∗↞────────────────────⋙
Large update has been roled out ->
- Rewrited message system now it's possible depending on the settings of the game client, to display the desired translation (by default Spanish, english and Russian) however, you can add your own language and translate it or change the current one
- Updated upstream with some other changes
- Fixed and improved the feature of blocking the IP address when an exception occurs during an incoming connection
- Fixed plugins like FastLogin dependency by returning the unused field "stats"
- Fixed issue where bungeecord config could change server names to lower case
- Fixed incorrect "fall-and-hand-captcha" pass condition
- Fixed situation when "connect-to-filter only-on-attack" was enabled, the many check was triggered
- Fixed incorrect entity frame hitboxes for clients 1.12.2 and below
- Fixed null forward secret and null game version in waterfall.yml config which could lead to unexpected behavior
- Removed unnecessary decoding check when checking nickname length for dowstream connection
- Implemented the ability to specify the path to the file on the current host for the proxy scraper feature
- Now for geyser players, the fall check will always be simplified due hard-emulation for packet translation
- Now The /antibot cpu command will now show the amount of RAM used, including direct memory and heap memory
- Now you can specify at what specific type of exception to block the IP address
- Now the antibot will try to send all the necessary packets to the client improving even more vanilla-check
- Now the splash is more correctly replaced when entering a captcha message
- Improved Query handler replacing redundant cache with Caffeine
- Improved fall check added even more blocks and some other checks to new vanilla-bots
- Improved the API and some abstractions have been moved to other packages. Now it is possible to create and register your own anti-bot checks
- Improved Name blacklist by adding name-regex, and now this check is considered as a template and for it to work you need to add it to modes
- Modified the system of conditions for antibot templates has been rewritten.Templates can now, depending on the failure or success of the check, kick, finish, start the next check, or start any specified check. This allows you to flexibly configure in which situation what check the antibot should perform, depending on how the player passed it.
- The proxy is now loaded asynchronously on boot, which will allow much faster opening of a listening port for bungeecord without having to wait for all the nullcordx components to load. This also fixes the situation when after executing the command to restart, it was impossible to use any commands during the boot
- Added the ability to cache all images and gifs to disk for fast loading when the proxy is enabled
- Added the ability to adjust the quality of image resizing
- Added a more correct gif decoder for correct reading of any gif files
- Added the ability to complete the puzzle only when entering any message in the chat
- Added a command to add players to the cache of successfully passed players
- Added the ability to configure in which memory to store cached packets. The default is direct memory
- Added the ability to customize the game mode, hardcore mode and nickname in the tablist
- Added the ability to apply render layers for glowing circle background
- Added the ability to disable player caching when the "connect-to-filter-only-on-attack" mode is enabled
- Added the ability to randomly shift glyph height for captcha
- Added the ability to cache all types of captcha to disk .Now, between proxy restarts the captcha will not be regenerated, instead, the captcha will be loaded from disk
- Added ability to set trigger chance for render layer rotation
- Added render layer mirror
- Added the ability to turn debug mode on and off automatically during an attack
- Added attack end events on the API and modified it
- Added new pick-captcha (Most advanced anti-bot) system the principle is similar to recaptcha or hCaptcha, you need to click on all the images where an abstract object is displayed and then enter into the chat if there are none left. We're the first one adding this system, same like Framed-captcha
![]()
Please support us giving feedback and a proper review! This really helps out and makes us grow. This updates take a lot of time!
To avoid high performance attacks you should limit your concurrent connections and tune your kernel!
https://javapipe.com/blog/iptables-ddos-protection/
Also, remember to increase socket files-limit, so you can absorb more sockets.
https://stackoverflow.com/questions/880557/socket-accept-too-many-open-files/32699260#32699260
(GEYSER "FIX" without disabling nothing)
Partially fixed the situation when the proxy kicked the player's geyser with the disable compression parameter enabled.
This still won't work for a filter because all packets for a filter are always cached and compressed.
If you store an uncompressed copy, the memory consumption will increase by at least 3 times, for this reason you still need to disable this option.
If you have any question or problem hit us on -> https://discord.gg/HhFxScZWAT
⋘────────────────────↠∗∗↞────────────────────⋙
⋘────────────────────↠∗∗↞────────────────────⋙
Due a lot of botters are in way be ensure to have root to protect you low layer with iptables!
https://javapipe.com/blog/iptables-ddos-protection/
Also, remember to increase socket files-limit, so you can absorb more sockets.
https://stackoverflow.com/questions/880557/socket-accept-too-many-open-files/32699260#32699260
A new update of NullCordX has been rolled out ->
- Implemented 1.20 support
- Implemented the ability to specify the path to the file on the current host for the proxy scraper feature
- Implemented new caching motd mode that theproxy will call ProxyPingEvent itself and store the result globally for some configurable time
- Improved messages for easier license information
- Fixed geyser support without modify configuration
- Fixed a bug due to which sometimes it was impossible to create a dump
- Fixed player kick messages if the player was kicked after checking on the filter when trying to connect to the server
- Fixed "connect-to-filter-only-on-attack" mode
- Fixed some throthle issues by increasing some settings
- Netty 4.1.93
If you have any question or problem hit us on -> https://discord.gg/HhFxScZWAT
⋘────────────────────↠∗∗↞────────────────────⋙
⋘────────────────────↠∗∗↞────────────────────⋙
Due a lot of botters are in way be ensure to have root to protect you low layer with iptables!
https://javapipe.com/blog/iptables-ddos-protection/
Also, remember to increase socket files-limit, so you can absorb more sockets.
https://stackoverflow.com/questions/880557/socket-accept-too-many-open-files/32699260#32699260
A new update of NullCordX has been rolled out ->
- Implemented configurable AntiProxy/AntiVPN system with custom proxy check service
- Added dump command. Now you can easily export all existing configs and other information and provide it to us if necessary
- Added the ability to set the maximum nickname length when decoding a packet
- Implemented all players by default on the filter have a levitation effect that will not allow them to switch flight mode during captcha
- Added transparent rendering layer for captcha. Now you can make some pictures translucent.
- Added ability to create render layer templates for captcha. Now you can create several identical layers but with different settings and draw captcha in different ways.
- Added the ability to create templates for antibot checks. For example, now you can create several fall checks but with different settings.
- Improved Ping check system + added some new ones
- Now live statistics show your current ping to the proxy
- Improved configuration system (Elytrium one) that includes configuration backups and fixeable settings
- Now country and proxy checks are templates. To use them, you need to add them to the modes in the correct order in the antibot.
- (Huge) Added check conditions for the antibot. Now you can configure whether the antibot should skip the check if the previous check failed or passed.
- Added the ability to set the chance of rotating frames for captcha puzzle
- Added the ability to block a player for a different amount of time, depending on how often he has failed the bot check lately and how exactly.
- Added the ability to disable saving data to the database
- Added the ability to configure external blacklist more flexibly. Now you can specify which specific commands and when should be executed when blocking the IP address
- Added ban command. The command does the same as the proxy when adding an IP address to the blacklist
- Added the ability to limit the number of players with the same ip addresses on the filter.
- Added ability to always apply offline uuid for all players.
- Fixed a rare situation where a proxy could connect the same players
- Fixed compatibility of built-in modules with other plugins
- Removed an invalid space if the statistics showed gigabytes
- Fixed a situation where a proxy could generate a captcha when it is clearly not used anywhere
- Fixed a situation where the player was not kicked if there was an error in the connection and the full-stracktraces mode was enabled
- Fixed situation when NullCordX-Bridge plugin could run on a proxy that is not NullCordX
- Fixed NullCordXApi.getInstance() returning null if NullCordXImpl instance was only loaded for the first time ever
- Fixed favicon not being temporarily removed from motd during a ping attack if some plugin always changed it via an event.
You will probably need to make a backup and reset your captcha.yml and antibot.yml configs to figure out how it all works again
If you have any question or problem hit us on -> https://discord.gg/HhFxScZWAT
⋘────────────────────↠∗∗↞────────────────────⋙
