Comments (8)
u dont need to change anything else. just dont replace VarIntFrameDecoder with sonar's own decoder.
Can you send me the log? I think I can fix it.
The velocity VarIntFrameDecoder is much better than the bungeecord one and with less inconsistencies.
I would recommend you to try other alternatives, botfilter is abandoned on improvements.
from sonar-legacy.
it seems Sonar's ExceptionHandler is preventing it from printing logs. i need a little more time.
from sonar-legacy.
Can you send me the log? I think I can fix it.
18:49:23 [SEVERE] java.lang.NullPointerException: Cannot invoke "net.md_5.bungee.protocol.Varint21FrameDecoder.set119(boolean)" because the return value of "io.netty.channel.ChannelPipeline.get(java.lang.Class)" is null
18:49:23 [SEVERE] at net.md_5.bungee.connection.InitialHandler.handle(InitialHandler.java:362)
18:49:23 [SEVERE] at jones.sonar.bungee.network.handler.PlayerHandler.handle(PlayerHandler.java:173)
18:49:23 [SEVERE] at net.md_5.bungee.protocol.packet.Handshake.handle(Handshake.java:51)
18:49:23 [SEVERE] at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:121)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at org.geysermc.floodgate.addon.data.CommonDataHandler.disablePacketQueue(CommonDataHandler.java:136)
18:49:23 [SEVERE] at org.geysermc.floodgate.addon.data.CommonDataHandler.handle(CommonDataHandler.java:75)
18:49:23 [SEVERE] at org.geysermc.floodgate.addon.data.BungeeProxyDataHandler.channelRead(BungeeProxyDataHandler.java:91)
18:49:23 [SEVERE] at org.geysermc.floodgate.addon.data.CommonDataHandler.channelRead(CommonDataHandler.java:178)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at org.geysermc.floodgate.addon.data.PacketBlocker.channelRead(PacketBlocker.java:76)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346)
18:49:23 [SEVERE] at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:333)
18:49:23 [SEVERE] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:454)
18:49:23 [SEVERE] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at io.netty.handler.codec.ByteToMessageDecoder.handlerRemoved(ByteToMessageDecoder.java:266)
18:49:23 [SEVERE] at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:536)
18:49:23 [SEVERE] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:468)
18:49:23 [SEVERE] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:93)
18:49:23 [SEVERE] at org.geysermc.floodgate.inject.bungee.BungeeInjector$BungeeClientToProxyInjectInitializer.channelRead(BungeeInjector.java:160)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at jones.sonar.bungee.network.handler.BungeeHandler.channelRead(BungeeHandler.java:57)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
18:49:23 [SEVERE] at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440)
18:49:23 [SEVERE] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
18:49:23 [SEVERE] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
18:49:23 [SEVERE] at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:800)
18:49:23 [SEVERE] at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:499)
18:49:23 [SEVERE] at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:397)
18:49:23 [SEVERE] at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
18:49:23 [SEVERE] at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
18:49:23 [SEVERE] at java.base/java.lang.Thread.run(Thread.java:1589)
maybe we should provide a boolean? InitialHandler L362
edit: the medium fetched by .get() seems to point only to the bungeecord class path. im not sure if it's worth it. or make a separate InitialHandler for BotFilter?
from sonar-legacy.
Could a custom start up flag which disables the custom Varint21FrameDecoder (basically Velocity's) fix this issue?
from sonar-legacy.
Could a custom start up flag which disables the custom Varint21FrameDecoder (basically Velocity's) fix this issue?
i didnt know there was this. if u can tell me. i can go and try it. or do u mean to add this feature?
from sonar-legacy.
Could a custom start up flag which disables the custom Varint21FrameDecoder (basically Velocity's) fix this issue?
i didnt know there was this. if u can tell me. i can go and try it. or do u mean to add this feature?
I haven't added such a feature yet but I could add it if it helps.
I'm actually working on Sonar 2.0, a completely rewritten version of Sonar.
You can join my Discord server if you want to receive update notifications, etc.
I also recommend using Velocity instead of BungeeCord or Waterfall. It's a lot better and more modern and will be supported by Sonar 2.0.
from sonar-legacy.
I also recommend using Velocity instead of BungeeCord or Waterfall. It's a lot better and more modern and will be supported by Sonar 2.0.
ik but i still use bungeecord for a few reasons. im still not very familiar with velocity. and there are various reasons preventing me from migrating to it. if i plan to remake my proxy afterwards i might think about it
I haven't added such a feature yet but I could add it if it helps.
ah i can do it. but my computer is broken.
actually.. botfilter may indeed not be that worth using. but most people just need a good antibot scheme. what they see is the limbo verification code. and not the coding that looks a little bad. although ping+join can already block most bots.
although the use of velocity+limbofilter is advocated. but there are still people who r using botfilter. bungeecord is still in high demand. ik velocity is best. but migrating a platform is not a simple task.
from sonar-legacy.
set119
This can be fixed.
Always happens when channelRead starts handling
from sonar-legacy.
Related Issues (2)
- Bug report HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sonar-legacy.