Giter Club home page Giter Club logo

epicguard's People

Contributors

awumii avatar carldea avatar dependabot-preview[bot] avatar dependabot[bot] avatar freedyfazbear avatar jlleitschuh avatar renovate-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

epicguard's Issues

Console Error

Spigot 1.12.2
EpicGuard version 5.1.2

[EpicGuard] Task #28 for EpicGuard v5.1.2 generated an exception
java.lang.NullPointerException: null
at me.ishift.epicguard.bukkit.module.ModuleManager.check(ModuleManager.java:107) ~[?:?]
at me.ishift.epicguard.bukkit.module.ModuleTask.run(ModuleTask.java:33) ~[?:?]
at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:76) ~[server.jar:git-Spigot-dcd1643-e60fc34]
at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:361) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:739) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:406) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [server.jar:git-Spigot-dcd1643-e60fc34]
at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [server.jar:git-Spigot-dcd1643-e60fc34]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]

Warning when starting the server.

Plugin it works but warning when starting the server.
No such file or directory?

Plugin Version : 3.8.3
Spigot 1.12.2

-Console log-
[WARNING] java.io.FileNotFoundException: plugins/EpicGuard/logs/EpicGuardLogs-24-2-2020.txt (No such file or directory)
[WARNING] at java.io.FileOutputStream.open0(Native Method)
[WARNING] at java.io.FileOutputStream.open(FileOutputStream.java:270)
[WARNING] at java.io.FileOutputStream.(FileOutputStream.java:213)
[WARNING] at java.io.FileWriter.(FileWriter.java:107)
[WARNING] at me.ishift.epicguard.universal.util.Logger.writeToFile(Logger.java:49)
[WARNING] at me.ishift.epicguard.universal.util.Logger.log(Logger.java:28)
[WARNING] at me.ishift.epicguard.universal.util.Logger.debug(Logger.java:13)
[WARNING] at me.ishift.epicguard.universal.cloud.CloudManager.connect(CloudManager.java:30)
[WARNING] at me.ishift.epicguard.bukkit.task.CloudTask.run(CloudTask.java:12)
[WARNING] at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:76)
[WARNING] at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52)
[WARNING] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[WARNING] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[WARNING] at java.lang.Thread.run(Thread.java:748)
[WARNING] java.io.FileNotFoundException: plugins/EpicGuard/logs/EpicGuardLogs-24-2-2020.txt (No such file or directory)
[WARNING] at java.io.FileOutputStream.open0(Native Method)
[WARNING] at java.io.FileOutputStream.open(FileOutputStream.java:270)
[WARNING] at java.io.FileOutputStream.(FileOutputStream.java:213)
[WARNING] at java.io.FileWriter.(FileWriter.java:107)
[WARNING] at me.ishift.epicguard.universal.util.Logger.writeToFile(Logger.java:49)
[WARNING] at me.ishift.epicguard.universal.util.Logger.log(Logger.java:28)
[WARNING] at me.ishift.epicguard.universal.util.Logger.debug(Logger.java:13)
[WARNING] at me.ishift.epicguard.universal.cloud.CloudManager.connect(CloudManager.java:34)
[WARNING] at me.ishift.epicguard.bukkit.task.CloudTask.run(CloudTask.java:12)
[WARNING] at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:76)
[WARNING] at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52)
[WARNING] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[WARNING] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[WARNING] at java.lang.Thread.run(Thread.java:748)
[WARNING] java.io.IOException: No such file or directory
[WARNING] at java.io.UnixFileSystem.createFileExclusively(Native Method)
[WARNING] at java.io.File.createNewFile(File.java:1012)
[WARNING] at me.ishift.epicguard.universal.util.Logger.create(Logger.java:38)
[WARNING] at me.ishift.epicguard.bukkit.task.CloudTask.run(CloudTask.java:15)
[WARNING] at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:76)
[WARNING] at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52)
[WARNING] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[WARNING] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[WARNING] at java.lang.Thread.run(Thread.java:748)

Error

[13:39:28 ERROR]: Could not pass event AsyncPlayerPreLoginEvent to EpicGuard v4.2.0
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[server.jar:git-PaperSpigot-"8b18730"]
at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:74) ~[server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:483) [server.jar:git-PaperSpigot-"8b18730"]
at net.minecraft.server.v1_8_R3.LoginListener$LoginHandler.fireEvents(LoginListener.java:248) [server.jar:git-PaperSpigot-"8b18730"]
at net.minecraft.server.v1_8_R3.LoginListener$2.run(LoginListener.java:172) [server.jar:git-PaperSpigot-"8b18730"]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_141]
Caused by: java.lang.NullPointerException
at me.ishift.epicguard.bukkit.user.User.isNotifications(User.java:96) ~[?:?]
at me.ishift.epicguard.bukkit.listener.PlayerPreLoginListener.onPreLogin(PlayerPreLoginListener.java:48) ~[?:?]
at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_141]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_141]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:300) ~[server.jar:git-PaperSpigot-"8b18730"]
... 7 more
[13:39:23 ERROR]: Could not pass event AsyncPlayerPreLoginEvent to EpicGuard v4.2.0
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[server.jar:git-PaperSpigot-"8b18730"]
at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:74) ~[server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:483) [server.jar:git-PaperSpigot-"8b18730"]
at net.minecraft.server.v1_8_R3.LoginListener$LoginHandler.fireEvents(LoginListener.java:248) [server.jar:git-PaperSpigot-"8b18730"]
at net.minecraft.server.v1_8_R3.LoginListener$2.run(LoginListener.java:172) [server.jar:git-PaperSpigot-"8b18730"]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_141]
Caused by: java.lang.NullPointerException
at me.ishift.epicguard.bukkit.user.User.isNotifications(User.java:96) ~[?:?]
at me.ishift.epicguard.bukkit.listener.PlayerPreLoginListener.onPreLogin(PlayerPreLoginListener.java:48) ~[?:?]
at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_141]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_141]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:300) ~[server.jar:git-PaperSpigot-"8b18730"]
... 7 more
[13:39:23 ERROR]: Could not pass event AsyncPlayerPreLoginEvent to EpicGuard v4.2.0
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[server.jar:git-PaperSpigot-"8b18730"]
at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:74) ~[server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [server.jar:git-PaperSpigot-"8b18730"]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:483) [server.jar:git-PaperSpigot-"8b18730"]
at net.minecraft.server.v1_8_R3.LoginListener$LoginHandler.fireEvents(LoginListener.java:248) [server.jar:git-PaperSpigot-"8b18730"]
at net.minecraft.server.v1_8_R3.LoginListener$2.run(LoginListener.java:172) [server.jar:git-PaperSpigot-"8b18730"]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_141]
Caused by: java.lang.NullPointerException
at me.ishift.epicguard.bukkit.user.User.isNotifications(User.java:96) ~[?:?]
at me.ishift.epicguard.bukkit.listener.PlayerPreLoginListener.onPreLogin(PlayerPreLoginListener.java:48) ~[?:?]
at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_141]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_141]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:300) ~[server.jar:git-PaperSpigot-"8b18730"]
... 7 more

PaperSpigot: 1.8.8
EpicGuard 4.2.0-fix

Too many files open.

Too many files are open, and the server crashes. It only affects on spigot servers.

[11:01:09] [Craft Scheduler Thread - 407/WARN]: [EpicGuard] Plugin EpicGuard v4.2.1 generated an exception while executing task 31 de.leonhard.storage.internal.exceptions.LightningValidationException: Error while creating InputStream from 'nick.json'. In: '/home/tspcraft/771085.wom/plugins/EpicGuard/data/users' at de.leonhard.storage.util.FileUtils.createInputStream(FileUtils.java:154) ~[?:?] at de.leonhard.storage.Json.readToMap(Json.java:102) ~[?:?] at de.leonhard.storage.internal.FlatFile.forceReload(FlatFile.java:259) ~[?:?] at de.leonhard.storage.Json.<init>(Json.java:55) ~[?:?] at de.leonhard.storage.Json.<init>(Json.java:36) ~[?:?] at de.leonhard.storage.Json.<init>(Json.java:32) ~[?:?] at me.ishift.epicguard.bukkit.user.User.<init>(User.java:43) ~[?:?] at me.ishift.epicguard.bukkit.util.BukkitNotify.notify(BukkitNotify.java:11) ~[?:?] at me.ishift.epicguard.common.task.MonitorTask.run(MonitorTask.java:22) ~[?:?] at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftTask.run(CraftTask.java:84) ~[patched_1.15.2.jar:git-Paper-283] at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) ~[patched_1.15.2.jar:git-Paper-283] at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[patched_1.15.2.jar:git-Paper-283] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_252] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_252] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252] Caused by: java.nio.file.FileSystemException: plugins/EpicGuard/data/users/nick.json: Too many open files at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91) ~[?:1.8.0_252] at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102) ~[?:1.8.0_252] at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107) ~[?:1.8.0_252] at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214) ~[?:1.8.0_252] at java.nio.file.Files.newByteChannel(Files.java:361) ~[?:1.8.0_252] at java.nio.file.Files.newByteChannel(Files.java:407) ~[?:1.8.0_252] at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384) ~[?:1.8.0_252] at java.nio.file.Files.newInputStream(Files.java:152) ~[?:1.8.0_252] at de.leonhard.storage.util.FileUtils.createInputStream(FileUtils.java:150) ~[?:?] ... 14 more

Allow DDOS attack mode frequency slower than 1 second

Currently the DDOS attack mode only detects multiple connections per second. With the rash of reports on Reddit of hackers connecting once every 5-10 minutes for hours on end (and filling up ops' consoles), it would be nice to run this check on a slower timer (or the inverse: 'seconds per connection').

Cannot turn whitelist into blacklist

the config for is-blacklist=true does not appear to be working. It will block the countries not in the list and only allow those inside the list

http 401 error

[21:56:25 ERROR] [epicguard]: An error occurred in EpicGuard v7.1.2
[21:56:25 ERROR] [epicguard]: > Details: Couldn't download the GeoIP databases, please check your internet connection.
[21:56:25 ERROR] [epicguard]: > Platform: ProxyVersion{name='Velocity', vendor='Velocity Contributors', version='3.2.0-SNAPSHOT (git-07a525be-b296)'}
[21:56:25 ERROR] [epicguard]: > Stacktrace:
[21:56:25 ERROR] [epicguard]:
java.io.IOException: Server returned HTTP response code: 401 for URL: https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-Country&license_key=LARAgQo3Fw7W9ZMS&suffix=tar.gz
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:2000) ~[?:?]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1589) ~[?:?]
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:224) ~[?:?]
at me.xneox.epicguard.core.util.FileUtils.downloadFile(FileUtils.java:42) ~[?:?]
at me.xneox.epicguard.core.manager.GeoManager.downloadDatabase(GeoManager.java:81) ~[?:?]
at me.xneox.epicguard.core.manager.GeoManager.(GeoManager.java:60) ~[?:?]
at me.xneox.epicguard.core.EpicGuard.startup(EpicGuard.java:73) ~[?:?]
at me.xneox.epicguard.core.EpicGuard.(EpicGuard.java:62) ~[?:?]
at me.xneox.epicguard.velocity.EpicGuardVelocity.onEnable(EpicGuardVelocity.java:60) ~[?:?]
at me.xneox.epicguard.velocity.Lmbda$3.execute(Unknown Source) ~[?:?]
at com.velocitypowered.proxy.event.UntargetedEventHandler$VoidHandler.lambda$buildHandler$0(UntargetedEventHandler.java:56) ~[velocity.jar:3.2.0-SNAPSHOT (git-07a525be-b296)]
at com.velocitypowered.proxy.event.VelocityEventManager.fire(VelocityEventManager.java:597) ~[velocity.jar:3.2.0-SNAPSHOT (git-07a525be-b296)]
at com.velocitypowered.proxy.event.VelocityEventManager.lambda$fire$5(VelocityEventManager.java:478) ~[velocity.jar:3.2.0-SNAPSHOT (git-07a525be-b296)]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) [?:?]


System Info: Java 17 (OpenJDK 64-Bit Server VM 17.0.9+9) Host: Linux 4.18.0-513.9.1.el8_9.x86_64 (amd64)
Velocity 3.2.0-SNAPSHOT (git-07a525be-b296)

ArrayIndexOutOfBoundsException in command autocompletion

Velocity 3.0.1
Backend server: Paper 1.16.5#768

The following errors appear when entering commands in the console. They are generated every time it tries to execute autocompletion in the game.

[15:35:56 ERROR]: Arguments node cannot provide suggestions
java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
        at me.xneox.epicguard.core.command.CommandHandler.handleSuggestions(CommandHandler.java:82) ~[?:?]
        at me.xneox.epicguard.velocity.VelocityCommandHandler.suggest(VelocityCommandHandler.java:35) ~[?:?]
        at me.xneox.epicguard.velocity.VelocityCommandHandler.suggest(VelocityCommandHandler.java:23) ~[?:?]
        at com.velocitypowered.api.command.InvocableCommand.suggestAsync(InvocableCommand.java:51) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.command.registrar.InvocableCommandRegistrar.lambda$createLiteral$5(InvocableCommandRegistrar.java:106) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.command.brigadier.VelocityArgumentCommandNode.listSuggestions(VelocityArgumentCommandNode.java:88) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.command.SuggestionsProvider.getArgumentsNodeSuggestions(SuggestionsProvider.java:261) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.command.SuggestionsProvider.provideArgumentsSuggestions(SuggestionsProvider.java:230) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.command.SuggestionsProvider.provideSuggestions(SuggestionsProvider.java:111) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.command.SuggestionsProvider.provideSuggestions(SuggestionsProvider.java:84) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.command.VelocityCommandManager.offerSuggestions(VelocityCommandManager.java:229) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.connection.client.ClientPlaySessionHandler.handleCommandTabComplete(ClientPlaySessionHandler.java:490) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.connection.client.ClientPlaySessionHandler.handle(ClientPlaySessionHandler.java:200) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.protocol.packet.TabCompleteRequest.handle(TabCompleteRequest.java:140) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.connection.MinecraftConnection.channelRead(MinecraftConnection.java:142) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.protocol.netty.MinecraftDecoder.tryDecode(MinecraftDecoder.java:89) ~[server.jar:3.0.1]
        at com.velocitypowered.proxy.protocol.netty.MinecraftDecoder.channelRead(MinecraftDecoder.java:58) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[server.jar:3.0.1]
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[server.jar:3.0.1]
        at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[server.jar:3.0.1]
        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) ~[server.jar:3.0.1]
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[server.jar:3.0.1]
        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[server.jar:3.0.1]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[server.jar:3.0.1]
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[server.jar:3.0.1]
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) ~[server.jar:3.0.1]
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719) ~[server.jar:3.0.1]
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655) ~[server.jar:3.0.1]
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581) ~[server.jar:3.0.1]
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493) ~[server.jar:3.0.1]
        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[server.jar:3.0.1]
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[server.jar:3.0.1]
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[server.jar:3.0.1]
        at java.lang.Thread.run(Thread.java:831) [?:?]```

get this in console when starting server

<> Information: Channel must contain : separator (attempted to use MC|Brand)
[15:41:21] [Server thread/INFO]: [EpicGuard] <> Stack Trace:
[15:41:21] [Server thread/INFO]: [EpicGuard]
[15:41:21] [Server thread/INFO]: [EpicGuard] org.bukkit.plugin.messaging.StandardMessenger.validateAndCorrectChannel(StandardMessenger.java:503)
[15:41:21] [Server thread/INFO]: [EpicGuard] org.bukkit.plugin.messaging.StandardMessenger.registerIncomingPluginChannel(StandardMessenger.java:216)
[15:41:21] [Server thread/INFO]: [EpicGuard] io.github.polskistevek.epicguard.bukkit.GuardBukkit.registerBrand(GuardBukkit.java:167)
[15:41:21] [Server thread/INFO]: [EpicGuard] io.github.polskistevek.epicguard.bukkit.GuardBukkit.onEnable(GuardBukkit.java:91)
[15:41:21] [Server thread/INFO]: [EpicGuard] org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263)
[15:41:21] [Server thread/INFO]: [EpicGuard] org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:352)
[15:41:21] [Server thread/INFO]: [EpicGuard] org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:417)
[15:41:21] [Server thread/INFO]: [EpicGuard] org.bukkit.craftbukkit.v1_14_R1.CraftServer.enablePlugin(CraftServer.java:461)
[15:41:21] [Server thread/INFO]: [EpicGuard] org.bukkit.craftbukkit.v1_14_R1.CraftServer.enablePlugins(CraftServer.java:375)
[15:41:21] [Server thread/INFO]: [EpicGuard] net.minecraft.server.v1_14_R1.MinecraftServer.a(MinecraftServer.java:449)
[15:41:21] [Server thread/INFO]: [EpicGuard] net.minecraft.server.v1_14_R1.DedicatedServer.init(DedicatedServer.java:266)
[15:41:21] [Server thread/INFO]: [EpicGuard] net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:775)
[15:41:21] [Server thread/INFO]: [EpicGuard] java.lang.Thread.run(Unknown Source)

dont know what it means

Ty no kurwa

Zajebisty plagin hahagra nie potrafi zbotowac mojego serwizu!#!@321
oraz bardzo dobry defelopel tego plaginu zawsze som updajtetty po,lecam

error with server start

[11:48:15 ERROR]: [EpicGuard] An error occurred in EpicGuard!
[11:48:15 ERROR]: [EpicGuard] > Details: Could not save data to the SQL database (save-task)
[11:48:15 ERROR]: [EpicGuard] > Platform: git-Purpur-1427 (MC: 1.17.1)
[11:48:15 ERROR]: [EpicGuard] > Stacktrace:
[11:48:15 ERROR]: [EpicGuard]
java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30000ms.
at me.xneox.epicguard.libs.hikari.pool.HikariPool.createTimeoutException(HikariPool.java:696) ~[EpicGuardPaper-7.1.1.jar:?]
at me.xneox.epicguard.libs.hikari.pool.HikariPool.getConnection(HikariPool.java:181) ~[EpicGuardPaper-7.1.1.jar:?]
at me.xneox.epicguard.libs.hikari.pool.HikariPool.getConnection(HikariPool.java:146) ~[EpicGuardPaper-7.1.1.jar:?]
at me.xneox.epicguard.libs.hikari.HikariDataSource.getConnection(HikariDataSource.java:100) ~[EpicGuardPaper-7.1.1.jar:?]
at me.xneox.epicguard.core.storage.Database.save(Database.java:75) ~[EpicGuardPaper-7.1.1.jar:?]
at me.xneox.epicguard.core.task.DataSaveTask.run(DataSaveTask.java:30) ~[EpicGuardPaper-7.1.1.jar:?]
at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftTask.run(CraftTask.java:101) ~[patched_1.17.1.jar:git-Purpur-1427]
at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[patched_1.17.1.jar:git-Purpur-1427]
at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[patched_1.17.1.jar:git-Purpur-1427]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]

PPS - Duration - Ping method

Greetings !

I noticed that in the latest update, The ping method has a few issues.
So for example the CPS check works perfectly, once a player joins after 1s it goes back to 0.
However the PPS will always update and never refresh.

Same goes for when an attack is happening. When the attack happens the server stays permanently whitelisted

Error : Could not pass event ServerListPingEvent

Spigot version 1.12.2
EpicGuard version 3.12.1

[ERROR] Could not pass event ServerListPingEvent to EpicGuard v3.12.1
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:500) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:485) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at net.minecraft.server.v1_12_R1.PacketStatusListener.a(PacketStatusListener.java:101) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at net.minecraft.server.v1_12_R1.PacketStatusInStart.a(SourceFile:23) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at net.minecraft.server.v1_12_R1.PacketStatusInStart.a(SourceFile:8) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at net.minecraft.server.v1_12_R1.NetworkManager.a(NetworkManager.java:126) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at net.minecraft.server.v1_12_R1.NetworkManager.channelRead0(NetworkManager.java:330) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at net.minecraft.server.v1_12_R1.NetworkManager.channelRead0(NetworkManager.java:1) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.th0rgal.hackedserver.utils.tinyprotocol.TinyProtocol$PacketInterceptor.channelRead(TinyProtocol.java:496) [HackedServer.jar:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:288) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at com.comphenix.protocol.injector.netty.ChannelInjector$2.channelRead(ChannelInjector.java:259) [ProtocolLib.jar:4.5.0]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at net.minecraft.server.v1_12_R1.LegacyPingHandler.channelRead(SourceFile:94) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:808) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:404) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:304) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]

at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) [spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at java.lang.Thread.run(Unknown Source) [?:?]
Caused by: java.lang.IllegalArgumentException: null was not created by class org.bukkit.craftbukkit.v1_12_R1.CraftServer
at net.minecraft.server.v1_12_R1.PacketStatusListener$1ServerListPingEvent.setServerIcon(PacketStatusListener.java:47) ~[spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]
at me.ishift.epicguard.bukkit.listener.ServerListPingListener.onPing(ServerListPingListener.java:33) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[spigot-1.12.2.jar:git-Spigot-eb3d921-2b93d83]

NoSuchFileException: plugins/EpicGuard/config_bungee.yml

Sentry Issue: EPICGUARD-D
Affected platforms: BungeeCord

java.nio.file.NoSuchFileException: plugins/EpicGuard/config_bungee.yml
    at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
    at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
    at java.nio.file.spi.FileSystemProvider.newOutputStream(FileSystemProvider.java:434)
    at java.nio.file.Files.newOutputStream(Files.java:216)
    at java.nio.file.Files.copy(Files.java:3016)
    at me.ishift.epicguard.bungee.GuardBungee.onEnable(GuardBungee.java:61)
    at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(PluginManager.java:285)
    at net.md_5.bungee.BungeeCord.start(BungeeCord.java:288)
    at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:62)
    at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15)
...
plugins/EpicGuard/config_bungee.yml

[MySQL] java.lang.NullPointerException

[02:53:06 INFO]: This server is running Waterfall version git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449 by md_5

Startup Error:
[03:00:32 WARN]: Exception encountered when loading plugin: EpicGuard
java.lang.NullPointerException: Cannot invoke "me.xneox.epicguard.core.EpicGuard.logger()" because the return value of "me.xneox.epicguard.core.EpicGuardAPI.instance()" is null
at me.xneox.epicguard.core.util.ExceptionUtils.report(ExceptionUtils.java:9) ~[?:?]
at me.xneox.epicguard.core.storage.StorageManager.(StorageManager.java:47) ~[?:?]
at me.xneox.epicguard.core.EpicGuard.startup(EpicGuard.java:65) ~[?:?]
at me.xneox.epicguard.core.EpicGuard.(EpicGuard.java:55) ~[?:?]
at me.xneox.epicguard.waterfall.EpicGuardWaterfall.onEnable(EpicGuardWaterfall.java:48) ~[?:?]
at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(PluginManager.java:315) ~[server.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
at net.md_5.bungee.BungeeCord.start(BungeeCord.java:290) ~[server.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:67) ~[server.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15) ~[server.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]

Shutdown Error:
[02:52:28 ERROR]: Exception disabling plugin EpicGuard
java.lang.NullPointerException: Cannot invoke "me.xneox.epicguard.core.EpicGuard.shutdown()" because "this.epicGuard" is null
at me.xneox.epicguard.waterfall.EpicGuardWaterfall.onDisable(EpicGuardWaterfall.java:65) ~[?:?]
at net.md_5.bungee.BungeeCord.independentThreadStop(BungeeCord.java:474) ~[server.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
at net.md_5.bungee.BungeeCord.access$000(BungeeCord.java:100) ~[server.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
at net.md_5.bungee.BungeeCord$5.run(BungeeCord.java:414) ~[server.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]

CONSOLE FILTER NOT WORK

console-filter {
    # If log message contains one of these words, it will
    # be hidden. This can save a lot of CPU on big attacks.
    filter-messages=[
        GameProfile,
        Disconnected,
        "UUID of player",
        "logged in",
        "lost connection",
        "[FastLogin] Join limit hit - Ignoring player",
        "[LuckPerms] Another plugin has cancelled",
        InitialHandler
    ]
    # Change when the console-filter should be active.
    # NEVER - feature is disabled.
    # ATTACK - feature will work only during bot-attack.
    # ALWAYS - feature will always work.
    filter-mode=ALWAYS

image
image

Error report

22:22:37] [User Authenticator #97/ERROR]: 
[22:22:37] [User Authenticator #97/ERROR]:  An issue ocurred in EpicGuard!
[22:22:37] [User Authenticator #97/ERROR]:   > Details: Could not read content of http://proxycheck.io/v2/211.177.113.185?key=by362r-1q8678-6890hu-7c06uv&vpn=1
[22:22:37] [User Authenticator #97/ERROR]:   > Stacktrace: 
[22:22:37] [User Authenticator #97/ERROR]:    java.net.PlainSocketImpl.socketConnect(Native Method)
[22:22:37] [User Authenticator #97/ERROR]:    java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
[22:22:37] [User Authenticator #97/ERROR]:    java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
[22:22:37] [User Authenticator #97/ERROR]:    java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
[22:22:37] [User Authenticator #97/ERROR]:    java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
[22:22:37] [User Authenticator #97/ERROR]:    java.net.Socket.connect(Socket.java:607)
[22:22:37] [User Authenticator #97/ERROR]:    java.net.Socket.connect(Socket.java:556)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.NetworkClient.doConnect(NetworkClient.java:180)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.http.HttpClient.New(HttpClient.java:339)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.http.HttpClient.New(HttpClient.java:357)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1226)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1162)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1570)
[22:22:37] [User Authenticator #97/ERROR]:    sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1498)
[22:22:37] [User Authenticator #97/ERROR]:    me.xneox.epicguard.core.util.URLUtils.readString(URLUtils.java:40)
[22:22:37] [User Authenticator #97/ERROR]:    me.xneox.epicguard.core.check.impl.ProxyCheck.proxyCheck(ProxyCheck.java:67)
[22:22:37] [User Authenticator #97/ERROR]:    me.xneox.epicguard.core.check.impl.ProxyCheck.access$000(ProxyCheck.java:31)
[22:22:37] [User Authenticator #97/ERROR]:    me.xneox.epicguard.core.check.impl.ProxyCheck$1.load(ProxyCheck.java:37)
[22:22:37] [User Authenticator #97/ERROR]:    me.xneox.epicguard.core.check.impl.ProxyCheck$1.load(ProxyCheck.java:34)
[22:22:37] [User Authenticator #97/ERROR]:    com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716)
[22:22:37] [User Authenticator #97/ERROR]:    com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424)
[22:22:37] [User Authenticator #97/ERROR]:    com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298)
[22:22:37] [User Authenticator #97/ERROR]:    com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211)
[22:22:37] [User Authenticator #97/ERROR]:    com.google.common.cache.LocalCache.get(LocalCache.java:4154)
[22:22:37] [User Authenticator #97/ERROR]:    com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
[22:22:37] [User Authenticator #97/ERROR]:    com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
[22:22:37] [User Authenticator #97/ERROR]:    com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
[22:22:37] [User Authenticator #97/ERROR]:    me.xneox.epicguard.core.check.impl.ProxyCheck.handle(ProxyCheck.java:52)
[22:22:37] [User Authenticator #97/ERROR]:    me.xneox.epicguard.core.handler.DetectionHandler.handle(DetectionHandler.java:63)
[22:22:37] [User Authenticator #97/ERROR]:    me.xneox.epicguard.bukkit.listener.PlayerPreLoginListener.onPreLogin(PlayerPreLoginListener.java:35)
[22:22:37] [User Authenticator #97/ERROR]:    sun.reflect.GeneratedMethodAccessor985.invoke(Unknown Source)
[22:22:37] [User Authenticator #97/ERROR]:    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[22:22:37] [User Authenticator #97/ERROR]:    java.lang.reflect.Method.invoke(Method.java:498)
[22:22:37] [User Authenticator #97/ERROR]:    org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:315)
[22:22:37] [User Authenticator #97/ERROR]:    org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70)
[22:22:37] [User Authenticator #97/ERROR]:    org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:589)
[22:22:37] [User Authenticator #97/ERROR]:    org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:576)
[22:22:37] [User Authenticator #97/ERROR]:    net.minecraft.server.v1_16_R2.LoginListener$LoginHandler.fireEvents(LoginListener.java:270)
[22:22:37] [User Authenticator #97/ERROR]:    net.minecraft.server.v1_16_R2.LoginListener$2.run(LoginListener.java:220)
[22:22:37] [User Authenticator #97/ERROR]:  Please report this issue on Discord or GitHub.
[22:22:37] [User Authenticator #97/ERROR]:   > https://github.com/xxneox/EpicGuard/issues
[22:22:37] [User Authenticator #97/ERROR]: 

it says report this issue on github ๐Ÿ‘

Allow subnets in whitelist/blacklist commands

I have the plugin setup to try geolocating every address. However, for obvious reasons, LAN subnets are unfindable by geoip,

Additionally, I have turned down the DDOS detection to 1 connection per second (highlighting a different issue: a frequency of 1 always triggers even on the first connection, and has no basis for calculating the frequency because there is no second connection attempt).

Thus, I was blocked until I whitelisted my local IP.

Allowing CIDR blocks (e.g. whitelist add 192.168.10.0/24) would be particularly useful so I don't have to manually whitelist all 254+ IP addresses that would be allowed on a LAN or other IP blocks.

Command /epicguard reload does not work to reload the message configuration file.

When changes are applied to the messages.conf file and the "/epicguard reload" command is executed, the changes made are not applied.

For example, I have changed the line update-available= in messages.conf (Version 6.0.0)
update-available="A new update is available: {NEWVER} (You are still on version {OLDVER})"
But in console, it still shows

-------- ran command: epicguard reload
EpicGuard โ–ธ Succesfully reloaded config and messages!

[x] Velocity 1.1.6
[x] EpicGuard 6.0.0

EpicGuard doesn't work on Velocity 1.0.8

Error itself:
[21:16:11] [main/ERROR]: Unable to load plugin plugins\EpicGuard.jar
com.velocitypowered.api.plugin.InvalidPluginException: The plugin file EpicGuard.jar appears to be a Bukkit or BungeeCord plugin. Velocity does not support Bukkit or BungeeCord plugins.
at com.velocitypowered.proxy.plugin.loader.java.JavaPluginLoader.getSerializedPluginInfo(JavaPluginLoader.java:108) ~[velocity.jar:1.0.8]
at com.velocitypowered.proxy.plugin.loader.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:43) ~[velocity.jar:1.0.8]
at com.velocitypowered.proxy.plugin.VelocityPluginManager.loadPlugins(VelocityPluginManager.java:63) ~[velocity.jar:1.0.8]
at com.velocitypowered.proxy.VelocityServer.loadPlugins(VelocityServer.java:245) ~[velocity.jar:1.0.8]
at com.velocitypowered.proxy.VelocityServer.start(VelocityServer.java:205) ~[velocity.jar:1.0.8]
at com.velocitypowered.proxy.Velocity.main(Velocity.java:47) ~[velocity.jar:1.0.8]

Rozjebany epicguard

Gdy mui przyjaciel botiing mai selwel wtedy epicguard laguje baldzio mujk se3rwer wiuerc jewtem zmuszony wyjebaci ten lplugin. Napraw to jhebaniy debiluj fejk devew.

I got an error in the console.

[18:00:27] [Thread-1455/ERROR]: Could not pass event AsyncPlayerPreLoginEvent to EpicGuard v4.1.2
org.bukkit.event.EventException
	at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[server.jar:git-PaperSpigot-"8b18730"]
	at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:74) ~[server.jar:git-PaperSpigot-"8b18730"]
	at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-PaperSpigot-"8b18730"]
	at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [server.jar:git-PaperSpigot-"8b18730"]
	at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:483) [server.jar:git-PaperSpigot-"8b18730"]
	at net.minecraft.server.v1_8_R3.LoginListener$LoginHandler.fireEvents(LoginListener.java:248) [server.jar:git-PaperSpigot-"8b18730"]
	at net.minecraft.server.v1_8_R3.LoginListener$2.run(LoginListener.java:172) [server.jar:git-PaperSpigot-"8b18730"]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_141]
Caused by: java.lang.NullPointerException
	at me.ishift.epicguard.bukkit.listener.PlayerPreLoginListener.lambda$onPreLogin$0(PlayerPreLoginListener.java:46) ~[?:?]
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174) ~[?:1.8.0_141]
	at java.util.Iterator.forEachRemaining(Iterator.java:116) ~[?:1.8.0_141]
	at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) ~[?:1.8.0_141]
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[?:1.8.0_141]
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[?:1.8.0_141]
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) ~[?:1.8.0_141]
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) ~[?:1.8.0_141]
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_141]
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418) ~[?:1.8.0_141]
	at me.ishift.epicguard.bukkit.listener.PlayerPreLoginListener.onPreLogin(PlayerPreLoginListener.java:47) ~[?:?]
	at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_141]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_141]
	at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:300) ~[server.jar:git-PaperSpigot-"8b18730"]
	... 7 more

EpicGuard v4.1.2
PaperSpigot: 1.8.8
ProtocolLib version 4.5.1-SNAPSHOT-b451

[Feature Request] Add a debug mode

Hello,
I'm currently experiencing some problems with the check that is supposed to verify if the IP comes from a VPN or a Proxy. Indeed, even with the default configuration, all players are kicked for using a VPN or a Proxy, which is obviously wrong.
In order to troubleshoot this problem, I would like to be able to activate a debug mode that would send back the debug logs of the plugin and the response received by the API, in order to identify the source of the problem.

Missing database driver error in v7.1.2

While everything worked fine in version 7.1.0, this error replaces the database error in 7.1.1.
Running on Debian Bullseye amd64 with openjdk 17-ea 2021-09-14.

[01:43:08] [main/INFO] [EpicGuard]: Running on: Waterfall-git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:aba3aff:454
[01:43:08] [main/INFO] [EpicGuard]: Loading configuration...
[01:43:09] [main/INFO] [EpicGuard]: Initializing managers...
[01:43:09] [main/INFO] [EpicGuard]: This product includes GeoLite2 data created by MaxMind, available from https://www.maxmind.com
[01:43:09] [main/INFO] [me.xneox.epicguard.libs.hikari.HikariDataSource]: HikariPool-1 - Starting...
[01:43:09] [main/ERROR] [EpicGuard]: An error occurred in EpicGuard v7.1.2
[01:43:09] [main/ERROR] [EpicGuard]:  > Details: Could not connect to the database. Check if your connection is configured correctly.
[01:43:09] [main/ERROR] [EpicGuard]:  > Platform: Waterfall-git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:aba3aff:454
[01:43:09] [main/ERROR] [EpicGuard]:  > Stacktrace: 
[01:43:09] [main/ERROR] [EpicGuard]: 
java.lang.RuntimeException: Failed to get driver instance for jdbcUrl=jdbc:sqlite:plugins/EpicGuard/database.db
	at me.xneox.epicguard.libs.hikari.util.DriverDataSource.<init>(DriverDataSource.java:114) ~[?:?]
	at me.xneox.epicguard.libs.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:326) ~[?:?]
	at me.xneox.epicguard.libs.hikari.pool.PoolBase.<init>(PoolBase.java:112) ~[?:?]
	at me.xneox.epicguard.libs.hikari.pool.HikariPool.<init>(HikariPool.java:93) ~[?:?]
	at me.xneox.epicguard.libs.hikari.HikariDataSource.<init>(HikariDataSource.java:81) ~[?:?]
	at me.xneox.epicguard.core.storage.Database.connect(Database.java:46) ~[?:?]
	at me.xneox.epicguard.core.storage.StorageManager.setupDatabase(StorageManager.java:46) ~[?:?]
	at me.xneox.epicguard.core.EpicGuard.startup(EpicGuard.java:79) ~[?:?]
	at me.xneox.epicguard.core.EpicGuard.<init>(EpicGuard.java:62) ~[?:?]
	at me.xneox.epicguard.waterfall.EpicGuardWaterfall.onEnable(EpicGuardWaterfall.java:41) ~[?:?]
	at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(PluginManager.java:315) ~[Waterfall1.17.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:aba3aff:454]
	at net.md_5.bungee.BungeeCord.start(BungeeCord.java:290) ~[Waterfall1.17.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:aba3aff:454]
	at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:67) ~[Waterfall1.17.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:aba3aff:454]
	at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15) ~[Waterfall1.17.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:aba3aff:454]
Caused by: java.sql.SQLException: No suitable driver
	at java.sql.DriverManager.getDriver(DriverManager.java:298) ~[java.sql:?]
	at me.xneox.epicguard.libs.hikari.util.DriverDataSource.<init>(DriverDataSource.java:106) ~[?:?]
	... 13 more
[01:43:09] [main/INFO] [EpicGuard]: Initializing LogFilter...
[01:43:09] [main/INFO] [EpicGuard]: Scheduling tasks...
[01:43:09] [main/INFO] [EpicGuard]: Startup completed successfully. Welcome to EpicGuard v7.1.2
[01:43:09] [main/INFO] [EpicGuard]: Order of the detection pipeline: LockdownCheck, BlacklistCheck, NicknameCheck, GeographicalCheck, ServerListCheck, ReconnectCheck, AccountLimitCheck, NameSimilarityCheck, ProxyCheck
[01:43:09] [main/INFO]: Enabled plugin EpicGuard version 7.1.2 by neox

Configurate Hocon loader not included in Velocity jar

java.lang.NoClassDefFoundError: org/spongepowered/configurate/hocon/HoconConfigurationLoader

java.lang.NoClassDefFoundError: org/spongepowered/configurate/hocon/HoconConfigurationLoader
        at me.xneox.epicguard.core.EpicGuard.loadConfigurations(EpicGuard.java:96) ~[?:?]
        at me.xneox.epicguard.core.EpicGuard.startup(EpicGuard.java:72) ~[?:?]
        at me.xneox.epicguard.core.EpicGuard.<init>(EpicGuard.java:64) ~[?:?]
        at me.xneox.epicguard.velocity.EpicGuardVelocity.onEnable(EpicGuardVelocity.java:72) ~[?:?]
        at me.xneox.epicguard.velocity.Lmbda$21.execute(Unknown Source) ~[?:?]
        at com.velocitypowered.proxy.event.UntargetedEventHandler$VoidHandler.lambda$buildHandler$0(UntargetedEventHandler.java:56) ~[velocity.jar:3.2.0-SNAPSHOT (git-8dcc7ee3-b294)]
        at com.velocitypowered.proxy.event.VelocityEventManager.fire(VelocityEventManager.java:597) ~[velocity.jar:3.2.0-SNAPSHOT (git-8dcc7ee3-b294)]
        at com.velocitypowered.proxy.event.VelocityEventManager.lambda$fire$5(VelocityEventManager.java:478) ~[velocity.jar:3.2.0-SNAPSHOT (git-8dcc7ee3-b294)]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
        at java.lang.Thread.run(Thread.java:840) [?:?]
Caused by: java.lang.ClassNotFoundException: org.spongepowered.configurate.hocon.HoconConfigurationLoader
        at com.velocitypowered.proxy.plugin.PluginClassLoader.loadClass0(PluginClassLoader.java:87) ~[velocity.jar:3.2.0-SNAPSHOT (git-8dcc7ee3-b294)]
        at com.velocitypowered.proxy.plugin.PluginClassLoader.loadClass(PluginClassLoader.java:64) ~[velocity.jar:3.2.0-SNAPSHOT (git-8dcc7ee3-b294)]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[?:?]
        ... 11 more

Geyser support

Hi, when using Geyser I'm still getting this error, can't I somehow whitelist this IP?

[03:18:33 ERROR] [EpicGuard]:   > Details: Can't find country for 172.18.0.5
[03:18:33 ERROR] [EpicGuard]:   > Stacktrace: 
[03:18:33 ERROR] [EpicGuard]:    com.maxmind.geoip2.DatabaseReader.country(DatabaseReader.java:295)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.core.manager.GeoManager.getCountryCode(GeoManager.java:100)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.core.check.impl.GeographicalCheck.isUnallowed(GeographicalCheck.java:38)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.core.check.impl.GeographicalCheck.handle(GeographicalCheck.java:34)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.core.handler.DetectionHandler.handle(DetectionHandler.java:63)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.bungee.listener.PreLoginListener.onPreLogin(PreLoginListener.java:38)
[03:18:33 ERROR] [EpicGuard]:    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[03:18:33 ERROR] [EpicGuard]:    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[03:18:33 ERROR] [EpicGuard]:    java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[03:18:33 ERROR] [EpicGuard]:    java.base/java.lang.reflect.Method.invoke(Method.java:564)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.event.EventHandlerMethod.invoke(EventHandlerMethod.java:19)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.event.EventBus.post(EventBus.java:47)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.api.plugin.PluginManager.callEvent(PluginManager.java:453)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.protocol.packet.LoginRequest.handle(LoginRequest.java:39)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:105)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
[03:18:33 ERROR] [EpicGuard]:    io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
[03:18:33 ERROR] [EpicGuard]:    io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
[03:18:33 ERROR] [EpicGuard]:    io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
[03:18:33 ERROR] [EpicGuard]:    io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
[03:18:33 ERROR] [EpicGuard]:    io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
[03:18:33 ERROR] [EpicGuard]:    io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[03:18:33 ERROR] [EpicGuard]:    java.base/java.lang.Thread.run(Thread.java:832)
[03:18:33 ERROR] [EpicGuard]:  Please report this issue on Discord or GitHub.
[03:18:33 ERROR] [EpicGuard]:   > https://github.com/xxneox/EpicGuard/issues
[03:18:33 ERROR] [EpicGuard]: 
[03:18:33 ERROR] [EpicGuard]: 
[03:18:33 ERROR] [EpicGuard]:  An issue ocurred in EpicGuard!
[03:18:33 ERROR] [EpicGuard]:   > Details: Can't find city for 172.18.0.5
[03:18:33 ERROR] [EpicGuard]:   > Stacktrace: 
[03:18:33 ERROR] [EpicGuard]:    com.maxmind.geoip2.DatabaseReader.city(DatabaseReader.java:334)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.core.manager.GeoManager.getCity(GeoManager.java:114)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.core.check.impl.GeographicalCheck.isUnallowed(GeographicalCheck.java:39)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.core.check.impl.GeographicalCheck.handle(GeographicalCheck.java:34)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.core.handler.DetectionHandler.handle(DetectionHandler.java:63)
[03:18:33 ERROR] [EpicGuard]:    me.xneox.epicguard.bungee.listener.PreLoginListener.onPreLogin(PreLoginListener.java:38)
[03:18:33 ERROR] [EpicGuard]:    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[03:18:33 ERROR] [EpicGuard]:    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[03:18:33 ERROR] [EpicGuard]:    java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[03:18:33 ERROR] [EpicGuard]:    java.base/java.lang.reflect.Method.invoke(Method.java:564)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.event.EventHandlerMethod.invoke(EventHandlerMethod.java:19)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.event.EventBus.post(EventBus.java:47)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.api.plugin.PluginManager.callEvent(PluginManager.java:453)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.protocol.packet.LoginRequest.handle(LoginRequest.java:39)
[03:18:33 ERROR] [EpicGuard]:    net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:105)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
[03:18:33 ERROR] [EpicGuard]:    io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
[03:18:33 ERROR] [EpicGuard]:    io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
[03:18:33 ERROR] [EpicGuard]:    io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
[03:18:33 ERROR] [EpicGuard]:    io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475)
[03:18:33 ERROR] [EpicGuard]:    io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
[03:18:33 ERROR] [EpicGuard]:    io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
[03:18:33 ERROR] [EpicGuard]:    io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[03:18:33 ERROR] [EpicGuard]:    java.base/java.lang.Thread.run(Thread.java:832)
[03:18:33 ERROR] [EpicGuard]:  Please report this issue on Discord or GitHub.
[03:18:33 ERROR] [EpicGuard]:   > https://github.com/xxneox/EpicGuard/issues
[03:18:33 ERROR] [EpicGuard]: 

proxy-check not working on Velocity

Velocity 3.0.1, Epicguard 7.0.1
I have provided valid API key for proxycheck.io and changed check-mode to ALWAYS. But the EpicGuard doesn't send requests to proxycheck.io. Any new user can join on VPN, and the "queries today" on proxycheck.io is always 0. My config:

proxy-check {
    # How long in SECONDS responses from proxy check should be cached?
    # Higher value increases performance, but keep in mind that if user
    # disables their VPN but the cache hasn't expired yet, he will still be detected.
    cache-duration=300
    # NEVER - check is disabled.
    # ATTACK - check will be performed only during bot-attack.
    # ALWAYS - check will be always performed.
    check-mode=ALWAYS
    # You can set as many proxy checking services as you want here.
    # If you're not familiar with regex, see https://regexr.com/
    # For example, (yes|proxy) will check if the response contains either 'yes' or 'proxy'
    services=[
        {
            responseRegex="(yes)"
            url="https://proxycheck.io/v2/{IP}?key=I_HAVE_VALID_KEY_HERE&risk=1&vpn=1"
        }
    ]
}

When I manuallly go to site https://proxycheck.io/v2/MY_IP_FROM_PROXY?key=I_HAVE_VALID_KEY_HERE&risk=1&vpn=1, the proxy is detected. So proxycheck is working, epicguard is not.

[Feature Request] Add permission nodes for custom account limits pr ip

Hey,

The feature could work like this:
epicguard.accountlimit.x (x = nr of accounts that ip can use)
if the player doesnst have the permission it would use the default permission node.

Would also be nice with a bypass permission node (any player with this permission node would not be counted towards the account limit).
Could look something like this:
epicguard.accountlimit.bypass

  • Tobi

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.