- Major improvements with the handling of FoxGate for 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:
Code (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:
Code (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 'bypass: {}'.
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.
- [Premium] Fixed next error:
Code (Text):
[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.
SEE RED COMMENT IN DESCRIPTION.