⭐ FoxGate [Free] ➡️ The #1 AntiVPN Plugin [JE plugin for BE]

⭐ FoxGate [Free] ➡️ The #1 AntiVPN Plugin [JE plugin for BE] 1.2.0-pre2

1.2.0-PRE1
  • Added support to VK [Forwarding] (Plus Feature).
  • IPRange now works using CIDR. Your old Regex format it's parsed automatically to the new format. Note: This last thing, was done for give time to the users in migrate to CIDR.
  • Added a lot of new languages by default.

YAML:
    #  Plugin language setting.
    # - Available options below. You can help in contribute to maintain
    #   one translation up-to-date or publish one through our GitHub Issues
    #   page!
    #
    #   • ar_sa - العربية (السعودية)
    #   • cz_cz - čeština (Česká republika)
    #   • da_dk - Dansk (Danmark)
    #   • de_de - Deutsch (Deutschland) [❤ Thanks to ich_lou]
    #   • en_us - English (United States) [❤ Thanks to Goinging]
    #   • es_ar - Español (Argentina)
    #   • es_es - Español (España) [❤ Thanks to VonVisha]
    #   • fr_fr - Français (France)
    #   • he_il - עברית (ישראל)
    #   • hu_hu - Magyar (Magyarország)
    #   • id_id - Bahasa Indonesia (Indonesia)
    #   • it_it - Italiano (Italy) [❤ Thanks to MircoAPPP]
    #   • ja_jp - 日本語 (Japan) [❤ Thanks to YOMA8338]
    #   • ko_kr - 한국 (Korean) [❤ Thanks to metaph0]
    #   • lt_lt - Lietuvių (Lietuva)
    #   • nl_nl - Nederlands (Nederland)
    #   • pl_pl - Polski (Poland)
    #   • pt_br - Português (Brasil)
    #   • ro_ro - Română (România)
    #   • ru_ru - Русский (Russia) [❤ Thanks to mikheilkozlovi & AMGewka]
    #   • sk_sk - Slovenčina (Slovensko)
    #   • sv_se - Svenska (Sverige)
    #   • th_th - ภาษาไทย (ประเทศไทย)
    #   • tr_tr - Türkçe (Turkey)
    #   • uk_ua - Українська (Україна)
    #   • vi_vn - Tiếng Việt (Vietnam) [❤ Thanks to hieudieu393]
    #   • zh_cn - 中文 (中国)
    #
    #  Note: Language files are automatically downloaded from the official
    # GitHub repository into the 'languages' folder. This value can't be empty.
    #  How to edit the messages? Go into the folder 'languages', and edit the
    # currently file in selected language: If this option it's 'en_us', edit
    # the file with the name 'messages_en_us.yml'.
    language: en_us
  • Added back SQLite support. H2 still it's the default for being better.
  • Fixed a minor issue in tab-complete.
  • Drop ViaProxy
  • Removed by default Cloudflare Warp in bypassing and improved the list for ISPFilter, too in GeoLocation module.
  • [Experimental] Migrated from Java 17 to Java 21. The scanner for Services has been refactored with a model and little improvements (the FoxPlayer class refactored a bit to reduce boilerplate). This change introduces changes to thread usage, making a less usage of this, because we are using now Virtual Threads (Java 21), this it's an experimental change. Also, the feature "continue" now works correctly.
  • Added "ZombieBot" service like a enabled-by-default.
  • Updated a bit the main configuration and added some changes, like:
    • Added a new "updater" structure, the plugin will migrate automatically.

YAML:
#  Enable automatic update checking?
# - Checks for new updates on our Backend during server startup.
#   Requires an active internet connection to verify updates.
#
#  Note: Since versions 1.0.0 (plus) and 1.0.6 (free), FoxGate uses
# its own update checking system. This implementation uses asynchronous
# methods to scan for updates, save performance. You can safely enable
# this to check for updates without affecting performance.
updates:

    #  Enable checking of updates?
    # - The plugin will check for updates when the
    #   server starts only, this will send a message
    #   in the console and the link to download by
    #   default.
    #
    # ⭐ Recommended: true
    #  Note: Your hosting needs to whitelist or allow
    # connections to 'central.zowi.gay', our backend.
    enable: true

    # ⌛ Automatic actions for updates.
    automatic:

        #  Enable automatic updating for the .jar?
        # - Toggle this feature for always mantain the latest
        #   version. This updates through our backend and
        #   works for both editions: Free and Plus.
        #
        # ⭐ Recommended: true
        # ⚠ Warning! Always keep this feature enabled, so if an
        # important fix occurs, you will always keep the plugin
        # up-to-date.
        updater: false

        # ⏳ Enable periodically checking?
        # - Enabling this will make the plugin check in silent
        #   for a new update. This makes the plugin check every
        #   1 hour.
        #
        # ⭐ Recommended: true
        #  Note: This feature requires to keep enabled the
        # option 'auto_update'.
        periodically: true
  • Relocated the value print_console to consolefilter section and with the new name show_threats.
  • Relocated the value passive_mode to scanner section.
  • Added option for disable all services through the main configuration.

YAML:
#  Scanner settings.
# - Actions when a player get detected or verified:
#   Bypass and block time.
scanner:

    #  Toggle scanning through services?
    # - Make the plugin to toggle the checking through
    #   services. Useful if you want avoid using external APIs
    #   and use local checking (means, through modules).
    toggle_services: true

    #  Enable the Passive mode?
    # - FoxGate will stop checking when a player join to the server.
    #   Useful in case you want to use FoxGate with other AntiVPN or
    #   for only checking with our command.
    passive_mode: false
  • Added new feature: Geyser bypass, check the configuration for more details:

YAML:
#  Ignore detection for bedrock players?
# - Toggle to ignore any connections from a bedrock player,
#   making great the usage of the plugin in case *YOUR* (yes,
#   isn't our fault) server doesn't do correctly the IPForwarding.
#
#  Note: Use this feature only when it's necessary and your
# server does wrongly the IP-Forwarding. The plugin checks for
# GeyserAPI, Floodgate or external methods for detect bedrock
# connections. Enabling this without a reason, will allow bedrock
# users bypass always the AntiVPN for non-sense.
# ⚠ Warning! This feature was made for Minecraft: Java Edition
# softwares.
geyser:

    #  Enable the bypass/ignore to bedrock users?
    enable: false

    #  Custom prefixes.
    # - Put a value in case you use a prefix for identify
    #   a bedrock user if you doesn't has Geyser or Floodgate
    #   in the server/proxy.
    #
    #  Note: Disable prefix value with leaving empty.
    prefix: ''

    #  Standalone IP's for Geyser.
    # - Custom IP's in case you requires to detect
    #   a bedrock user when you can't put Floodgate
    #   in the server/proxy and you're running a
    #   Geyser Standalone proxy.
    #
    #  Note: Leave empty for disable with '[]'.
    standalone_ips: [
        ]
1.2.0-PRE2
  • Done internal changes for improve and stability changes to all file configuration classes.
  • Now in modules, you can put for blocking permanent or X certain of hours.
  • Now {KEY} and {IP} works in headers when you scan through services.
  • Stability and performance improvements.
  • Fixed database issues. Use purge command: /fg db purge.
  • Improved SQL usage and fixed duplicate entries issue.
  • Optimized a big part of the code and fixed redundant things.
  • Better CPU usage with Virtual Threads.
  • Fixed update system. Now works auto-update and update checking.
  • Now uses ETag for downloads.
  • (not too important) New module order: Bogon → Country → ASN → ISPFilter → IPRange → Services.
  • Fixed Velocity command compatibility.
  • Removed startup flood in Velocity.
  • Fixed compatibility with newer Hytale versions.
  • Improved stability and fixed minor issues.
  • [PLUS] Fixed HWID warnings.
  • Improved IPRange module: Added Tor, Proxies and Ranges lists.
  • Updated zowicentral.yml.
  • Disabled by default BlockListDE, CINSScore, GreenSnow and TCPShield.
  • Removed FastAsF-ck by default.
  • Added new command /fg setconfig(experimental).
    • Services: Enable/disable, URL, VLs, Output, Key, Model.
    • Modules: Whitelist, blacklist, exclude.

YAML:
[12:53:00 INFO]: [FGP] [IPR] Loading IPRange Module...
[12:53:00 INFO]: [FGP] [IPR/Ranges] Downloading from Zowi's Central...
[12:53:02 INFO]: [FGP] [IPR/Ranges] Got 1219 entries from Zowi's Central.
[12:53:02 INFO]: [FGP] [IPR/Ranges] Loaded 1218 entries (last update: 01/05/2026 12:53:02).
[12:53:02 INFO]: [FGP] [IPR/Tors] Downloading from Zowi's Central...
[12:53:02 INFO]: [FGP] [IPR/Tors] Downloading from check.torproject.org...
[12:53:02 INFO]: [FGP] [IPR/Tors] Got 14105 entries from Zowi's Central.
[12:53:02 INFO]: [FGP] [IPR/Tors] Got 1238 entries from check.torproject.org.
[12:53:02 INFO]: [FGP] [IPR/Tors] Loaded 14139 entries (last update: 01/05/2026 12:53:02).
[12:53:03 INFO]: [FGP] [IPR/Proxies] Loaded 297195 residential proxy entries from cache (last update: 01/05/2026 11:41:04).
[12:53:03 INFO]: [FGP] [IPR/Proxies] Downloading proxies from multiple sources...
[12:53:05 INFO]: [FGP] [IPR] Loaded 342635 blocked ranges in total.
[12:53:05 INFO]: [FGP] [IPR] Working with IPRange now.
NEW ADDON: Residential Proxies detector: $1.99 USD

FoxGate Plus was released! :D
See the description section to view where you can purchase it, you can join to the discord server for any question about it.
  • Fixed the placeholder {player} in notification.
  • Fixed somethings about "updater" and others stuff, now needs to works correctly.
  • Added a general notification when a player it's blocked and this tries to join. Can be disabled in language file with leaving empty.
FoxGate Plus was released! :D
See the description section to view where you can purchase it, you can join to the discord server for any question about it.
This update enable IPRange module by default. The version 1.1.6 and their variants (dev-builds) was having this feature disabled by default, this update just makes this having enabled by default; if you was using 1.1.6 or their variants, you need to enable it manually in /plugins/FoxGate/modules/iprange.yml and option enable.

What it's IPRanges and what does module? It's a free module made by me for help to prevent residential proxies and others undetectable stuff (in base of my known ranges list), commonly for block LiquidProxy, which sometimes uses datacenters. The main reason of why was disabled by default was for their first builds, where this was having performance issues; with the time, this was improved and, made more lite and stable. When I finished this module, I forget to enable this by default, because this module can PREVENT A LOT OF RESIDENTIAL PROXIES AND IMPROVE YOUR DETECTION FOR FREE (remember, Plus Edition can prevent more and combination with this module will be a extremely great protection).

FoxGate Plus was released! :D
See the description section to view where you can purchase it, you can join to the discord server for any question about it.
  • Like
Reactions: indra87g
  • Major improvements with the handling of FoxGatefor Velocity:
    • Switched from LoginEvent to PreLoginEvent: Players are now blocked before reaching any backend server.
    • Implemented Intent (Continuation) conditions, means, player connections are held until they are fully scanned.
    • Instead of directly disconnecting, the login event is now cancelled, and the reason is properly attached.
  • Added more cache to reduce database calls, new option added:
YAML:
# Enable save in cache the results of block?
# Useful for save performance and avoid database calls
# while a player tries to join repeated or in a bot
# attack.
#
# ⭐ Recommended: true
#  Note: Disable this feature If you need to edit
# your kick messages, because plugin cache the block
# message in an attempt to save performance.
cache: true
  • Fixed and caching services result for 10 minutes (fixing probably a lot of problems related to Discord Webhook and Telegram Forward), also, using cache when it's possible.
  • Fixed duplicate checks when player join again in scanning, this prevent player from joining until the scan finish (if they try to rejoin).
  • Fixed an error in update checker for Velocity. (sorry)
  • Added logs when reloading the plugin of enabled services.
  • Fixed cache issues when saving. (this only affects to people who use the new Velocity Handler)
  • Added 'conditions' system for Bypass/Flag an IP in an AntiVPN service.
  • Added 'AbuseIPDB' service. Provided an example of this service using 'Conditions' system:
YAML:
    #  Custom conditions to determine bypass or detection logic.
    # - These conditions allow advanced control based on fields from the
    #   API response.
    #
    #  Structure:
    # - Each key (e.g. '1', '2', etc.) holds a list of conditions.
    # - Each list works with AND logic (all conditions must match).
    # - Multiple keys result in OR logic (at least one group must match).
    #
    #  Syntax:
    # - Use {field} to refer to response fields (e.g. {score}).
    # - Supported operators: '=', '!=', '>', '>=', '<', '<='.
    # - Values can be strings (true/false) or numbers.
    #
    #  Note: This feature only works in 'JSON' and 'HTML' type,
    # and for make this works in HTML, always use '{foxgate_check}' for
    # use field (only exists this in HTML).
    conditions:

        #  Conditions for Bypass
        # - If any group of conditions here matches, the player will be
        #   ignored (not flagged). Use this for trusted connections like mobile
        #   users or low score in risk/fraud.
        #
        #  Note: Disable this condition with 'bypass: {}'.
        bypass:
            '1':
            - '{data.isWhitelisted}=true'
            - '{data.isTor}=false'

        #  Conditions for Flag.
        # - If any group of conditions here matches, the player will
        #   be flagged (detected). Useful for detecting based on high
        #   risk/fraud score, known abuse, etc.
        #
        #  Note: Disable this condition with 'flag: {}'.
        flag:
            '1':
            - '{data.abuseConfidenceScore}>=75'
  • [Premium users with Extended ASN] Now exists an option for auto-updating your list, you need a token, for this, DM to me for creating one if you purchase this extension.
  • Fixed database using equal value of bypass in blocker in time. Also, now using 'add' command, will save with blocker time for avoid issues.
  • [Premium] Added option to detected users allows from joining to the server but get block connections to certains subservers. (Proxy only)
  • Big improvement with the handling of FoxGate for Backend (Spigot/Paper/etc):
    • Implemented Intent (Continuation) conditions, means, player connections are held until they are fully scanned.
    • Now ConsoleFilter will hide UUID message when get blocked.
  • [Premium] Fixed next error:
Code:
[22:44:20 WARN] [foxgate]: [GEO] Exception with provider MAXMIND for country: java.lang.NoClassDefFoundError: zoruafan/foxgate/shared/org/apache/commons/lang3/SystemProperties
[22:44:20 WARN] [foxgate]: [GEO] Provider MAXMIND failed. Trying next...
[22:44:20 INFO] [foxgate]: [GEO] Downloading from provider: MAXMIND - for: asn
[22:44:21 WARN] [foxgate]: [GEO] Exception with provider MAXMIND for asn: java.lang.NoClassDefFoundError: zoruafan/foxgate/shared/org/apache/commons/lang3/SystemProperties
[22:44:21 WARN] [foxgate]: [GEO] Provider MAXMIND failed. Trying next...
  • Added the service 'MerakiStudios' in enabled-by-default.
  • Added option for 'Passive Mode', where you can use FoxGate with another AntiVPN. Option:
YAML:
#  Enable the Passive mode?
# - FoxGate will stop checking when a player join to the server.
#   Useful in case you want to use FoxGate with other AntiVPN or
#   for only checking with our command.
passive_mode: false
  • [Premium] Fixed some IPs doesn't includes the country on checking. (Ex. '1.1.1.1')
  • Added auto-updating for Premium and Free editions (also implemented '/fg update' command).
  • Added Italian language. (Thanks to MircoAPPP)
  • Added Spanish (Spain) language. (Thanks to VonVisha)
  • Fixed an issue about Whitelist returning "java.lang.NullPointerException: Cannot invoke "java.util.List.iterator()" because "l" is null"
  • Dropped Java 11 to use Java 17. This doesn't will break support from 1.3.x-1.16.x versions (servers can still running Java 17 and Java 21 without issues).
  • [Java 17] Optimized ISPFilter module and FoxPlayer checks with using Java 17 features.
  • [Java 17] [Premium] Optimized DiscordWebhook, using Java 17 features.
  • [Java 17] [Premium] Optimized TelegramWH with using Java 17 features and improved character escaping for avoid issues in don't sending.
  • [Java 17] [Premium] Optimized GeoLocation module, using Java 17 features and fixed little issues.
  • Fixed more issues related config (in case a list doesn't load for any reason).
  • [Premium] Fixed RestrictionServers doesn't working on WaterdogPE. (For users with previous update)
  • Added the service 'IPLocate' in enabled-by-default.
  • Removed AntiVPN.net from default services because it's down.
  • Removed VPN-API.xyz from default services because it's down.
  • Removed NegativityAPI from default services because it's down.
  • Added hostname block/bypass in ISPFilter module.
  • Added 'isProxyIP' service.
  • Fixed ViaProxy doesn't catch '{ISP}' placeholder in kick message.
  • Added Vietnam language. (Thanks to hieudieu393)
  • Improved module enabled/disabling. ISPFilter and GeoLocation (Premium) now closes databases and remove threads when reloading the plugin with '/fg reload'. (If previously was running)
  • Added new database for ISPFilter and GeoLocation module: IPLocate.
  • [Premium] GeoLocation now handles better IPInfo database and IPLocate database.
  • Updated all libraries to up-to-date (24/12/2025)
  • [!] Updated MiniMessage to 4.25.0 (supports latest Velocity and 1.21.9-11)
  • [Premium] GeoLocation ASN works now with a custom provider for known list (optional).
  • Added Korean language. (Thanks to metaph0)
  • Improved handling of commands and tab-complete. Now using a better and improved list of permissions to separate all commands.
  • Improved database reconnecting while using '/fg db reconnect', when the database in startup fails to connect, now you can create new instance without need of restart.
  • Added new IPRange feature: This works like another module, the configuration files (like DiscordWebhook and others) was updated for adding this new feature.
  • Added new option in services for custom flags per-service. It's useful in case you trust more in the results from a service than others, perfect for implement more Flags to reach maxFlags.
  • Reduced amount of threads created by the plugin, tried to maintain the same performance.
  • Added fully support for IPv6 (not only in our services).
  • Added new option in IPLimiter: Based in time.
  • [Premium] Added to the config a option for downloading ASN list with suspecious ISPs.
  • Added option for download known hostnames in ISPFilter, preventing more Tor, VPN's and some Residential Proxies.
  • Added Firewall based in software (beta). Supports VeloFlame and FlameCord at the moment. (Idea will be extended to other softwares and support root commands)
  • Changed by default maxFlags from 3 to 4 to prevent false flags. Recommended if you has more than 11 services, use 5 or 7.
  • Added option for show or hide all module logs to avoid flood in the console (can be enabled/disabled in 'config.yml').
  • [Premium] Added little aliases for "{ASN}" and "{COUNTRY}" in message of kick and actions: {GEO_ASN} and {GEO_COUNTRY}.
  • Added Deutsch language. (Thanks to ich_lou)
  • Fixed cache method returning error when disabling it and Metrics now shutdown threads when returning method of unload (partially when plugin fails or server shutdown).
  • [Premium] Strictly license checking added.
  • Added the service 'TCPShield', 'BlockListDE', 'CINSscore' and 'GreenSnow' in enabled-by-default.
  • Libraries now download from our fallback CDN instead of use GitHub.
  • Added checking alts from an IP and their last time connection via command.
  • [IMPORTANT] Removed support in any type of SQLite, our community decided to remove it. The plugin DOESN'T WILL DELETE YOUR SQLITE FILE, you can has it like a backup, while the plugin will default start using H2 if SQLite it's the type you're using. Why H2? H2 it's more stable and with great performance than SQLite, SQLite since months was giving a lot of problems, where I fix an issue in it but other appears. From limit support, to a ending support of it. We strongly recommend to you try remote database for great experience, any Minecraft host will give it for free.
  • Added option in configuration for block bogon IP's. Also, '/fg check' will be affected for bogon IP's while it's enabled in configuration.
YAML:
    # ️ Block any type of bogon connection?
    #
    # When enabled, we will block any connection considered a bogon.
    # This protects you from players which tries to do any 'bypass' method.
    #
    # The plugin will block IP's considered:
    # - Local Address
    # - Loopback
    # - Link Local
    # - Site Local
    # - Multicast
    #
    #  Note: This feature it's always recommended having enabled. If
    # you get disconnected for this configuration, please, consider to
    # re-check your forwarding method, because can allow people from doing
    # malicious stuff.
    bogon:

        #  Enable the blocking of bogon IP's?
        enable: true

        #  Add the connections to the database for prevent joining
        # in X amount of time? This is useful if you want deny
        # connections of bogon in case a bot-attack of users using
        # those IP's.
        #
        # "The player is blocked from joining but the IP doesn't get checked!"
        # In this case, FoxGate add's the player to the database like it's
        # "Blocked", but doesn't save services detected, because the player
        # isn't scanned for VPN/Proxy.
        database:
            # Enable this feature?
            enable: true
            # Time (in hours) to store user in database.
            time: 12
  • Added Turkish and Czech language.
  • The plugin it's now obfuscated and known ASN List stop working in 1.0.5 and lower in this plugin.

FoxGate Premium was released! :D
See the description section to view where you can purchase it, you can join to the discord server for any question about it.
Remember to leave your review if you like this plugin. Also, join to our discord server for receive support or ask questions.
  • Added WaterdogPE support.
  • Changed messages for beginners.
  • Fixed some little errors in ISPFilter and fixed fallback.
  • Improved logic in some classes.
  • Added two services to default list, thanks to _bad_:
FocSec
YAML:
# https://focsec.com/
#
# Details:
# https://focsec.com/login
#
# This is a PAID SERVICE, require starting from
# $29 monthly subscription for using IP-security
# feature. First plan it's $29 (Lite).
#
# - 3k daily requests, Lite ($29)
# - 10k daily requests, Basic ($49)
# - 25k daily requests, Plus ($89)
# - 1M+ daily requests, Enterprise.

# Enable this service?
enabled: false
# Model request to use.
model: "JSON"
# Insert your key here.
# Don't delete this field!
key: ""
# URL.
url: "https://api.focsec.com/v1/ip/{IP}"
# Headers in case is necessary.
#
# Set to: 'headers: []' to disable.
headers:
   'Authorization': '{KEY}'
# Values to check.
values:
   # Fields to check.
   fields:
   - "is_vpn"
   - "is_proxy"
   - "is_tor"
   - "is_datacenter"
   # Type to determine.
   type: boolean
IP-Check
YAML:
# ⛽ IP-Check
# https://ip-check.net/how-to-use-apis.php
#
# Details:
# - Unlimited requests, no key.

# Enable this service?
enabled: true
# Model request to use.
model: "HTML"
# URL.
url: "https://ip-check.net/api/proxy-detect.php?ip={IP}"
# Values to check.
values:
   # Fields to check.
   fields: []
   # Type to determine.
   type: boolean
Top