Compatibility
Minecraft: Java Edition
Platforms
75% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
Changelog
-
Improved the performance with remaking the handling of detection in all supported loaders/softwares.
-
Added ViaProxy loader/software support.
-
Updated all libraries:
MariaDB from
3.5.1
->3.5.3
SQLite from
3.49.0.0
->3.49.1.0
MiniMessage from
4.18.0
->4.20.0
MiniMessage Option from
1.0.0
->1.1.0
HikariCP from
6.2.1
->6.3.0
SLF4JAPI from
2.0.16
->2.1.0-alpha1
SL4FJJDK new in
2.1.0-alpha1
.GSON from
2.12.2
->2.13.1
ASM from
9.7.1
->9.8
Jar-Relocator now is using my fork.
-
Added new command
/fg debug
for debugging all actions of FoxGate:(config.yml)
# Do you want debug enable debug messages of FoxGate?
# - Set what messages you want to debug when the debugging mode
# is enabled with the command '/fg debug'. This only shows in
# the console.
debug:
# Messages about Events of the player?
events: true
# Messages returning service's responses for better
# creation or control of this. Enable only for testing,
# don't recommend enable this in production, otherwise,
# your console can be flooded a lot.
services: true
# Messages about actions making by FoxGate.
# Like, sending discord webhooks (responses), downloading
# GeoLocation databases and seding Telegram (requests).
actions: true
message:
help:
debug: 'Debug actions made by FoxGate in the console.'
debug:
enable: '{prefix} <green>You enabled the debug mode. Check the console.'
disable: '{prefix} <red>You disabled the debug mode.'
- Added new command to whitelist add/remove to the configuration. Also, moved all whitelist to new file created by default called
whitelist.yml
.(whitelist.yml)
# Whitelist the detection to this name's.
# - Allow players in the list to bypass the detection of
# the antivpn. To disable this feature, use the value:
#
# names: []
#
# (!) It's case sensetive!
names:
- ImZowi
# Whitelist the detection to this IP's.
# - Allow ip's in the list to bypass the detection of
# the antivpn. To disable this feature, use the value:
#
# ips: []
#
# (!) The value under is the default in localhost.
ips:
- "127.0.0.1"
(config.yml)
message:
help:
whitelist: 'Edit configuration via command whitelist user/IP.'
whitelist:
invalid_usage: '{prefix} Use the command <aqua>/foxgate whitelist <add/remove> <name/ip><reset>.'
already: '{prefix} {IP}<red> is already whitelisted/unwhitelisted in the configuration!'
whitelisted: '{prefix} {IP}<green> was whitelisted in the configuration with type <white>{type}</white>. You can <white><underlined><click:run_command:"/foxgate whitelist remove {IP}">click here for remove again</click></underlined></white>.'
unwhitelisted: '{prefix} {IP}<green> was unwhitelisted in the configuration with type <white>{type}</white>. You can <white><underlined><click:run_command:"/foxgate whitelist add {IP}">click here for add again</click></underlined></white>.'
type_ip: 'IP'
type_name: 'Name'
problem: '{prefix} <red>Error while trying to add/remove to the whitelist. Check the console.'
- Added new option for using name in proxies and new command
/fg clearcache
. This works with using a cache file or using database in case it's multi-proxy.(config.yml)
database:
# You want to save the cache in the database in new table
# instead of use a file? Use this only if you want to use
# multi-proxy or you're sure you don't has problems with your
# database.
#
# Name of this table it's '"table"_cache', so, if the "table"
# it's "foxgate", the name will be: "foxgate_cache", or if
# the "table" it's "vpn_cache", will be "vpn_cache_cache". Always
# finish with "_cache".
cache_database: false
message:
help:
clearcache: 'Clear the cache file with username saves.'
clearcache:
purging: '{prefix} <white>We are <yellow>purging</yellow> the cache file...'
purging_correctly: '{prefix} <green>The cache file has been purged/reseted.'
purging_problem: '{prefix} <red>Error while trying to purge the cache file. Check the console.'
- Added option to Limit connections per IP. Default it's
3
.(config.yml)
antivpn:
# Limit maximum connections per IP.
# - When a player join to the server, this is saved
# in a list for count the numbers of players in
# a connection. If the limit is reached, the
# player isn't allowed from joining.
limiter:
# Enable this feature?
enable: true
# Determine the maximum limit of connections per
# IP. '3' is the best value by default, increase in
# case is required. This can help in prevent bots with
# same IP.
maxium: 3
# Message to return when a player is kicked with this option.
# placeholders: %PLAYER%, %IP%, %UUID%, %COUNTRY% (Premium and
# only if function is enabled) and %ASN% (Premium and only if
# function is enabled).
kick: "<red>You have been disconnected by FoxGate:\n<white>Maximum accounts per IP in your connection.\n\n<gray>This is an error? <white>Join to our discord server.\n<aqua><underlined>discord.idcteam.xyz"
- Using our custom base for bStats (Metrics) to avoid taking performance. For the Creator for the site, please, read our uncompiled comment inside the classes.
(config.yml)
configuration:
# Allow the usage of Metrics (bStats) in your server?
# - This is only for stadistics usage.
#
# ❝ What data is collected?
# We are using bStats (https://bstats.org/), this does not collect
# any personal data. Most of the collected data is information about
# the plugin's server like player count, online mode, Minecraft version,
# Java version, and more. All data gets sent and stored completely
# anonymously. See more in information about this in "bStats: Getting Started"
# https://bstats.org/getting-started
#
# (!) Since 1.0.2 (premium) and 1.1.0 (free), FoxGate uses
# their own code base for Metrics, but following their
# rules. This use asynchronous methods to send data and
# changes to Gson for better stability; improving the
# performance of this. You can safety has enable this to
# help to the creator without affecting the performance.
metrics: true
- Added new database type: JayBird.
(config.yml)
# This database is experimental.
jaybird:
hostname: "localhost"
port: 3050
database: "FoxGate.fdb"
username: "foxgate"
password: ""
# These settings apply to this Firebird database, as it uses Hikari for connection pooling.
# - Default values are suitable for most users. Modify only if necessary.
pool-settings:
# The maximum number of connections in the connection pool.
# - Determines the upper limit of active database connections that can be managed simultaneously.
# - Setting this too high can overload your database server, while setting it too low can cause delays.
# Recommended: 10
maximum-pool-size: 10
# Minimum number of idle connections to maintain in the pool.
# - The pool will try to maintain this number of idle (inactive) connections ready for use.
# Recommended: 1
minimum-idle: 1
# Maximum lifetime of a connection in the pool, in milliseconds.
# - Connections older than this value will be closed and replaced.
# Recommended: 1800000 (30 minutes)
maximum-lifetime: 1800000
# The maximum time in milliseconds to wait for a connection from the pool.
# - If no connection is available within this time, an exception will be thrown.
# Recommended: 30000 (30 seconds)
connection-timeout: 30000
- Added new 5 services in the default configuration. (Thanks for our buyer, @_bad_, for making these configurations for FoxGate in the default section)
IPAPI IS
# ⛽ IPAPI IS
# 🔗 https://ipaphttps://ipapi.is/i.is/
#
# 🛒 Details:
# 💼 https://ipapi.is/app/signup
#
# - 1k daily requests, free account or without key (IP-based for limit).
# - 10k daily requests, pay $10 monthly.
# - 20k daily requests, pay $20 monthly.
# - 50k daily requests, pay $50 monthly.
# - 100k daily requests, pay $100 monthly.
# - 2M daily requests, pay $200 monthly.
ipapiis:
# Enable this service?
enabled: true
# Model request to use.
model: "JSON"
# You can use this field in case you
# has an account in this page.
key: ""
# URL.
url: "https://api.ipapi.is/?q=%IP%&key=%KEY%"
# Values to check.
values:
# Fields to check.
fields:
- "is_datacenter"
- "is_tor"
- "is_proxy"
- "is_vpn"
- "is_abuser"
- "is_bogon" # Read more about this in https://ipgeolocation.io/blog/bogon-ip-addresses
# Type to determine.
type: boolean
IPStack
# ⛽ IPStack
# 🔗 https://ipstack.com/
#
# 🛒 Details:
# 💼 https://ipstack.com/signup/free
#
# - 100 monthly requests, free account.
# - 50k monthly requests, basic account.
# - 500k monthly requests, professional account.
# - 2M monthly requests, professional plus account.
ipstack:
# 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.ipstack.com/%IP%?access_key=%KEY%&security=1"
# Values to check.
values:
# Fields to check.
fields:
- "security.is_proxy"
- "security.is_crawler"
- "security.is_tor"
- "security.hosting_facility"
# Type to determine.
type: boolean
2IP
# ⛽ 2IP
# 🔗 https://2ip.io/
#
# 🛒 Details:
# 💼 https://2ip.io/registration/api/
#
# - 10k requests free per month.
# (Based in Billing)
2ip:
# 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.2ip.io/%IP%?token=%KEY%"
# Values to check.
values:
# Fields to check.
fields:
- "asn.hosting"
# Type to determine.
type: boolean
GreIP
# ⛽ GreIP
# 🔗 https://greip.io/
#
# 🛒 Details:
# 💼 https://dashboard.greip.io/login
#
# - 15k monthly requests, free account.
# - 170k monthly requests, Standard account.
# - 400k monthly requests, Premium account.
# - Unlimited requests, "Pay-as-you-go".
greip:
# Enable this service?
enabled: false
# Model request to use.
model: "JSON"
# Headers in case is necessary.
#
# Set to: 'headers: []' to disable.
headers:
'Authorization': 'Bearer KEY'
# URL.
url: "https://greipapi.com/lookup/ip/threats?ip=%IP%"
# Values to check.
values:
# Fields to check.
fields:
- "data.threats.isProxy"
- "data.threats.isRelay"
- "data.threats.isTor"
- "data.threats.isHosting"
# Type to determine.
type: boolean
IPGeolocation
(PAID)
# ⛽ IPGeolocation (PAID SERVICE)
# 🔗 https://ipgeolocation.io/
#
# 🛒 Details:
# 💼 https://app.ipgeolocation.io/login
#
# This is a PAID SERVICE, require starting from
# $15 monthly subscription for using IP-security
# feature. First plan it's $15 (Bronze).
#
# - 150k monthly requests, Bronze ($15)
# - 1M monthly requests, Solver ($65)
# - 6M monthly requests, Gold ($200)
# - 120M+ monthly requests, Enterprise.
ipgeolocation:
# 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.ipgeolocation.io/ipgeo?apiKey=%KEY%&ip=%IP%"
# Values to check.
values:
# Fields to check.
fields:
- "security.is_tor"
- "security.is_proxy"
- "security.is_cloud_provider"
- "security.is_known_attacker"
- "security.is_anonymous"
# Type to determine.
type: boolean
- Fixed permissions with LuckPerms providing support multi-platform.
- Fixed PostgreSQL support.
➡️ Reset your configuration in case you want to apply already all the changes instead of copy manually.
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.
Dependencies
Files
Metadata
Release channel
ReleaseVersion number
1.1.0Loaders
Game versions
1.3.1–1.21.5Downloads
19Publication date
April 26, 2025 at 3:01 AMPublisher

Zowi
Member