These are chat archives for MylesIsCool/ViaVersion

25th
May 2016
Faizaan
@SirFaizdat
May 25 2016 02:25
That Slack Spaceship commercial has the song stuck in my head (https://www.youtube.com/watch?v=5iJmFcMEuMg)
Mats
@Matsv
May 25 2016 09:31
Never seen that ad :P
Faizaan
@SirFaizdat
May 25 2016 10:33
It's been plastered all over YouTube for me, Google's getting too smart
Mats
@Matsv
May 25 2016 10:34
Haha, they are probably not targeting Dutch users then ;)
Faizaan
@SirFaizdat
May 25 2016 10:36
Lately google's been showing me ads that I actually click on, such as that one and Atlassian commercials (makers of BitBucket)
It's as if they've been spying on my internet activity ... Oh, they do
Mats
@Matsv
May 25 2016 10:36
They are ;)
Faizaan
@SirFaizdat
May 25 2016 10:36
DuckDuckGo time
Mats
@Matsv
May 25 2016 10:36
hahaha
Webstorm for Javascript doesn't save my ass
I wrongly typed module.export instead of module.exports
Didn't say anything
:(
Faizaan
@SirFaizdat
May 25 2016 10:53
:(
Usually JetBrains' IDEs are amazing, sometimes I press Ctrl Enter more than I type out code
Mats
@Matsv
May 25 2016 10:55
haha, true
But the javascript method suggestions are not that good :(
Faizaan
@SirFaizdat
May 25 2016 10:56
I know, they should really work on that
It doesn't feel as
sllid
solid* as other languages
Like even PHO
Sorry I'm on my phone, it's glitchy
The completion and warnings for JavaScript are awful compared to Java, PHP, Ruby, and Python
Mats
@Matsv
May 25 2016 10:59
Yeah true, I'd like to use Node.JS a lot more if that was better
I like that it's fully a-sync
Faizaan
@SirFaizdat
May 25 2016 11:01
I've heard a lot about Node but I haven't tried it
Mats
@Matsv
May 25 2016 11:03
I use it for making bot or an easy api
Faizaan
@SirFaizdat
May 25 2016 11:04
I wonder if it will be relevant in 10 years
Because it seems very popular right now, considering JavaScript just used to be a way to make webpages more fancy
Mats
@Matsv
May 25 2016 11:05
Probably not
If it doesn't get updated that are changing things like making it oop
I don't thin so
But yeah there will always be people that use it
Faizaan
@SirFaizdat
May 25 2016 11:06
I think the first platform that best serves AI and big data will prevail in 10 years time
Python will probably be the language of choice for backends, because that's a language which Google TensorFlow API can be used
Mats
@Matsv
May 25 2016 11:10
I don't like python
Faizaan
@SirFaizdat
May 25 2016 11:10
Me neither
I'd use Spring (Java) over Django (Python) any day
For a web backend *
Mats
@Matsv
May 25 2016 11:11
Hm yeah, I don't really know if I like all those Spring annotations though
Feels too complicated that you have to look all the annotations up, instead of looking inside a class
Faizaan
@SirFaizdat
May 25 2016 11:13
I think annotations are kind of cool xD
They take the work out of everything, just flagging methods and variables and letting one handler loop through and find the ones it wants
Oh speaking of changing technology, some countries have started to plan to build Hyperloops
Mats
@Matsv
May 25 2016 11:18
Yeah I saw it, the Netherlands was second place in the competition right? ;)
But tbh, I feel like the first 10 years they'll have more delay than the Dutch trains
There are so many things that could be happening if only one small hole is in the thingy
Faizaan
@SirFaizdat
May 25 2016 11:19
I don't know considering the pods are designed to be bullet shaped
Mats
@Matsv
May 25 2016 11:20
Yeah but still, what if the train just stopped, you are stuck inside a pipe
With no oxygen
Faizaan
@SirFaizdat
May 25 2016 11:20
They created a material called Vibranium, it's 10 times stronger than steel and contains sensors that monitor the pod and report to a central system
If something goes wrong, the pod is removed from the loop for service
Mats
@Matsv
May 25 2016 11:21
Woah you really looked into it? :)
I probably should some day
Faizaan
@SirFaizdat
May 25 2016 11:21
I jumped on it when I heard about it, I've watched a lot of science fiction movies in the past, and now these things are no longer fiction
Mats
@Matsv
May 25 2016 11:22
Nah the concept is pretty awesome
Faizaan
@SirFaizdat
May 25 2016 11:23
I'm more concerned about motion sickness
Mats
@Matsv
May 25 2016 11:23
Yeah, but tbh, this will probably be expensive as fuck the first 10/20 years
Faizaan
@SirFaizdat
May 25 2016 11:23
I get sick when I'm in underground trains, let alone Hyperloops
Mats
@Matsv
May 25 2016 11:24
How many people can get inside one thingy like that?
Faizaan
@SirFaizdat
May 25 2016 11:24
30 to 50
Mats
@Matsv
May 25 2016 11:24
Oh that's more than I expected
Oh are you? I use the underground trains every day
It's pretty fast in Amsterdam
Faizaan
@SirFaizdat
May 25 2016 11:25
I don't have them here, I use them when I travel to other cities
So I'm not very used to them
Mats
@Matsv
May 25 2016 11:25
Ah okay
Where are they building the hyperloops btw?
In america or also europe?
Faizaan
@SirFaizdat
May 25 2016 11:27
Both
Everywhere actually, I heard they're starting to build them in Dubai
Although the first test was in the United States, they basically shot a pod into a pile of sand because they don't have breaking systems yet
Mats
@Matsv
May 25 2016 11:30
yeah saw that on a Dutch media website
Faizaan
@SirFaizdat
May 25 2016 11:31
Self-driving cars, Hyperloops, machine learning
It's quite a nice time to be living in, we get to witness society change entirely
Mats
@Matsv
May 25 2016 11:36
In 10/20 years, something else will happen and the people that are your age then will say the same
:P
Mats
@Matsv
May 25 2016 11:41
I created MongoDB support for haste-server :)
Faizaan
@SirFaizdat
May 25 2016 11:45
Nice :)
Mats
@Matsv
May 25 2016 11:46
I feel like the hastebin background is too dark though
Faizaan
@SirFaizdat
May 25 2016 11:46
I like dark themes, they tend to boost my productivity
If I'm tired of working on something, I switch the Look and Feel from Default to Darcula (in IntelliJ), and switch from Pastebin to Hastebin
Mats
@Matsv
May 25 2016 11:47
Yeah I have also Darcula for Jetbrains products, https://paste.matsv.nl/about but idk the text feels too dark for the background
I mean
The text is harder to read because of the background
Faizaan
@SirFaizdat
May 25 2016 11:48
Hmmm
Mats
@Matsv
May 25 2016 11:48
Might be my screen :P
Faizaan
@SirFaizdat
May 25 2016 11:49
I can read it fine, maybe your contrast or brightness is too low?
Mats
@Matsv
May 25 2016 11:49
Possibly
I have flux installed
Might be because of that
Faizaan
@SirFaizdat
May 25 2016 11:49
That may be it
Florian
@sinnlosername
May 25 2016 18:04
Still can't fetch the packet id from bytebuf with the util class of myles :-/
Myles
@MylesIsCool
May 25 2016 18:04
unfortunate
Maybe you're trying to do something out of your depth
Mats
@Matsv
May 25 2016 18:05
Can you share your code? :)
Myles
@MylesIsCool
May 25 2016 18:05
if you give me example code I can tell you if you're doing something stupidly wrong ^^
Florian
@sinnlosername
May 25 2016 18:05
hm. is there pm chat? lel
gitter has a code highlight, hasn't it?
Mats
@Matsv
May 25 2016 18:07
Yeah, put it inside ```
One at the beginning
and one at the end
test
Florian
@sinnlosername
May 25 2016 18:08
Setting up server bootstrap:
bootstrap.group(bossGroup, workerGroup)
 .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, config.getBacklog())
 .option(ChannelOption.TCP_NODELAY, true)
 .option(ChannelOption.SO_REUSEADDR, true) .childOption(ChannelOption.AUTO_READ, false)
 .childOption(ChannelOption.SO_TIMEOUT, 4000)
 .childOption(ChannelOption.TCP_NODELAY, true)
 .childHandler(new ChannelInitializer());
ChannelInitializer extends ChannelInitializer<SocketChannel>

initChannel()
´
ChannelPipeline p = ch.pipeline();
HandshakeHandler handshakeHandler = new HandshakeHandler();
p.addFirst(handshakeHandler);

´

HandshakeHandler is a MessageToMessageDecoder<ByteBuf>
Myles
@MylesIsCool
May 25 2016 18:11
You understand that the packet id also has a length of the packet too?
Florian
@sinnlosername
May 25 2016 18:12
And there is the problem:
ByteBuf copy = byteBuf.copy();
int length = ProtocolUtil.readVarInt(byteBuf);

int packetId = ProtocolUtil.readVarInt(byteBuf); <--
Hm. Wat do you mean?
What*
Myles
@MylesIsCool
May 25 2016 18:12
just ensuring you covered reading the length
so what doesn't work after that code
Florian
@sinnlosername
May 25 2016 18:13
packetId is 0 everytime
Myles
@MylesIsCool
May 25 2016 18:13
and it's supposed to be that?
Florian
@sinnlosername
May 25 2016 18:13
If I ping the server I get two packages, packet id 0
Myles
@MylesIsCool
May 25 2016 18:13
packet id 0 is a status request
in the login phase
Florian
@sinnlosername
May 25 2016 18:13
ik
and 0x1 is the ping request packet?
Which requests a packet for the shown ping in serverlist.
0
Florian
@sinnlosername
May 25 2016 18:14
and 1 is the ping request
I got 2 times packet 0x00, but never 0x01
Myles
@MylesIsCool
May 25 2016 18:15
ping request gets sent after you respond to the first
I believe
Florian
@sinnlosername
May 25 2016 18:16
I get the respond
I see the players, motd, etc.
hm :/
I think there is a bug on reading packet id.
Mats
@Matsv
May 25 2016 18:21
How does your readVarInt look like?
Florian
@sinnlosername
May 25 2016 18:21
I get the second packet 500ms after getting the first, so I think it is the ping request, but the packet id ._.
Same as Myles Pingloo use
Myles
@MylesIsCool
May 25 2016 18:22
So what exactly are you building
Florian
@sinnlosername
May 25 2016 18:22
A load balancer ^.^
Myles
@MylesIsCool
May 25 2016 18:22
so you're building a proxy o.0?
Florian
@sinnlosername
May 25 2016 18:23
yep
Myles
@MylesIsCool
May 25 2016 18:23
why not just use bungee?
Florian
@sinnlosername
May 25 2016 18:23
It's a proxy for bungeecords.
But more simple, so it can handle more players ^^
Myles
@MylesIsCool
May 25 2016 18:23
good luck with encryption
Florian
@sinnlosername
May 25 2016 18:24
? ._.
Myles
@MylesIsCool
May 25 2016 18:24
you're building this for an online mode server?
Florian
@sinnlosername
May 25 2016 18:25
Every play packet is encrypted, but status packet's arent, are they?
Myles
@MylesIsCool
May 25 2016 18:25
nope
Florian
@sinnlosername
May 25 2016 18:25
._.
Myles
@MylesIsCool
May 25 2016 18:26
actually
maybe you won't need encryption
if you proxy the requests just before login
you can get away with it
Florian
@sinnlosername
May 25 2016 18:27
yep
Mats
@Matsv
May 25 2016 18:28
But how do you want to handle more players if it only handles the status packet?
Florian
@sinnlosername
May 25 2016 18:34
after that it handles the other packets ^^
Why the hell I cant output bytebuf.array() -_-
Mats
@Matsv
May 25 2016 18:36
But than you need to do the encryption :L
Florian
@sinnlosername
May 25 2016 18:47
Hm, is there any different between addfirst and addlast? ._.

20:50:01 [INFO]: id:0, length:116
20:50:01 [INFO]: id:127, length:39
20:50:01 [INFO]: id:16, length:0
20:50:01 [INFO]: id:100, length:0
20:50:01 [INFO]: id:101, length:0
20:50:01 [INFO]: id:118, length:0
20:50:01 [INFO]: id:48, length:0
20:50:01 [INFO]: id:50, length:0
20:50:01 [INFO]: id:46, length:0
20:50:01 [INFO]: id:109, length:0

NICE.

Mats
@Matsv
May 25 2016 18:52
You got it working? :)
Florian
@sinnlosername
May 25 2016 18:52
nop
but i got packets with ids which doesn't exist
(y)
Mats
@Matsv
May 25 2016 18:52
Always fun
Florian
@sinnlosername
May 25 2016 18:57
Nice
got the next problem
Now I get a packet with length 1, but, if I answer with a "pingBuffer" client ignore it D:
Faizaan
@SirFaizdat
May 25 2016 19:01
My goodness, it is 31° here :(
Too hot
Florian
@sinnlosername
May 25 2016 19:02
xD
Mats
@Matsv
May 25 2016 19:02
@sinnlosername Did you checkout http://wiki.vg/Protocol#Pong :)
@SirFaizdat It's like ones every year 31 degrees in the Netherlands, wanna trade?
Faizaan
@SirFaizdat
May 25 2016 19:04
I'm
melting
Mats
@Matsv
May 25 2016 19:04
Rip, don't you have an AC?
Faizaan
@SirFaizdat
May 25 2016 19:04
I'm on a bus with large windows and no way to open them
Mats
@Matsv
May 25 2016 19:05
Oh that's the worst
Faizaan
@SirFaizdat
May 25 2016 19:05
Not to mention my pollen allergies
Mats
@Matsv
May 25 2016 19:06
Rip :( What's the time now for you?
Faizaan
@SirFaizdat
May 25 2016 19:06
3:06 PM (15:06)
Mats
@Matsv
May 25 2016 19:06
Ah, so we have a 6 hours difference
Faizaan
@SirFaizdat
May 25 2016 19:08
I just realized that there's no more snow on the ground
Even though it all melted a month ago... I should go outside more
Mats
@Matsv
May 25 2016 19:09
Lol
Florian
@sinnlosername
May 25 2016 19:10
nic
nice*
The code after byteBuf.readLong(); doesn't get executed. -_-
Mats
@Matsv
May 25 2016 19:10
Rip
Florian
@sinnlosername
May 25 2016 19:11
rip
Faizaan
@SirFaizdat
May 25 2016 19:12
I just passed a business called "Paychex"
Florian
@sinnlosername
May 25 2016 19:12
Lets take some tnt and lava and let us grief the minecraft protocol lel
Faizaan
@SirFaizdat
May 25 2016 19:12
I find that company name amusing
I wonder if it would hurt Mojang to at least open source the server
That would make everyone's lives a whole lot easier
Florian
@sinnlosername
May 25 2016 19:14
It isn't hard to access them xD
Myles
@MylesIsCool
May 25 2016 19:14
It'd increase piracy if they did
I assume that's the fear
and wreck licensing
Florian
@sinnlosername
May 25 2016 19:14
It isn't obfuscated because they want to hide code, it is simple optimizing ^^
Mats
@Matsv
May 25 2016 19:15
Hm idk
Mojang people are allowed to share parts of the code with the community, Grum posts some stuff in #mcdevs sometimes
Myles
@MylesIsCool
May 25 2016 19:17
holy crap
someone just went and liked every update
k then
Mats
@Matsv
May 25 2016 19:17
Hahaha
fanboys
Is it justin? :)
Myles
@MylesIsCool
May 25 2016 19:18
nah
HydroTek
*z
Faizaan
@SirFaizdat
May 25 2016 19:20
They're already giving away the server jar for free, and we're already able to decompile and deobfuscate it, so what's the point in keeping it closed source?
Mats
@Matsv
May 25 2016 19:21
They might not want an open source project
Myles
@MylesIsCool
May 25 2016 19:21
no fun for the community?
obfuscation does prevent stupid mc rip offs etc
Faizaan
@SirFaizdat
May 25 2016 19:21
That's true
The only thing it's really doing is slowing us down a couple weeks/months while we refactor and reverse engineer it
Which is inconvenient but also fun xD
Faizaan
@SirFaizdat
May 25 2016 19:27
Now I must walk the rest of the way home, in 32° weather :(
Mats
@Matsv
May 25 2016 19:31
Aw
Faizaan
@SirFaizdat
May 25 2016 19:34
Developers aren't built for this weather, I'm only outfitted to convert pizza and caffeine into code D:
Mats
@Matsv
May 25 2016 19:34
I am :P
Florian
@sinnlosername
May 25 2016 19:37
I'm sending the same pong as myles pingloo does, but the client ignores. nice.
Or it can't read byteBuf.readLong();
Florian
@sinnlosername
May 25 2016 19:43
I don't unterstand. If the packet(byteBuf) contains 2 varInts and a ByteBuf(insideBuf), how can I read a long from byteBuf which is in "insideBuf"? O.o
confusing
Florian
@sinnlosername
May 25 2016 19:54

If I put

ByteBuf pongBuffer = Unpooled.buffer();
            Protocol.writeVarInt(9, pongBuffer);
            Protocol.writeVarInt(1, pongBuffer);
            pongBuffer.writeLong(0);
            channelHandlerContext.writeAndFlush(pongBuffer);

after the line which is sending the motd, I get a ping of 0. If I put the same code in the if statement which check's if the length is 1, I get nothing. ._:

Myles
@MylesIsCool
May 25 2016 19:56
you understand you need to send the packet length?
Florian
@sinnlosername
May 25 2016 19:57
ik, but why does the same code work on one position, but not at the other?
I know the code get executed both times.
Mats
@Matsv
May 25 2016 19:58
Do you send the long the ping sends to you?
According to wiki.vg: the pong should be the same as the sent ping
Florian
@sinnlosername
May 25 2016 19:59
I can't read the long.
Mats
@Matsv
May 25 2016 20:00
Why not?
Florian
@sinnlosername
May 25 2016 20:00
byteBuf.readLong() stucks and every code after this method won't get executed.
Mats
@Matsv
May 25 2016 20:01
How do you try to read it?
(The whole packet)
Florian
@sinnlosername
May 25 2016 20:04
protected void decode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, List<Object> outList) {

//ProtocolUtil -> Same Util as Pingloo contains
 int length = ProtocolUtil.readVarInt(byteBuf);
 int packetId = ProtocolUtil.readVarInt(byteBuf);

if (length == 1) {
long time = byteBuf.readLong();

}
Google says, if byteBuf stucks, it stucks, because it read bytes which aren't there. D:
Myles
@MylesIsCool
May 25 2016 20:06
why are you doing if length == 1
a long is not length of 1
Florian
@sinnlosername
May 25 2016 20:06
._.
Because I got two packet's
One packet with length of 22, it's the request for the motd.
And the second packet, with a length of 1.
Mats
@Matsv
May 25 2016 20:07
Isn't the packet size data+Id size?
Florian
@sinnlosername
May 25 2016 20:08
I never get a packet with packetId 1, so I thought the packet with length 1 is it. D:
Mats
@Matsv
May 25 2016 20:08
Nah length is something different
Florian
@sinnlosername
May 25 2016 20:09
So why I get no packet with packetId 1? --
Even if the client receive the motd.
I can't post the whole code because there are to many classes ^^
Faizaan
@SirFaizdat
May 25 2016 20:13
Zip it up and put it in Google Drive?
im assuming you don't want to put the code on GitHub
Florian
@sinnlosername
May 25 2016 20:13
I don't want to share the whole code xD. ^.^
But I can show it via skype or something else.
Faizaan
@SirFaizdat
May 25 2016 20:14
Ah
Florian
@sinnlosername
May 25 2016 20:17
So if someone want try to help me -> skype: m8.flo ^^
Florian
@sinnlosername
May 25 2016 20:22
I think this means nobody lel
Mats
@Matsv
May 25 2016 20:24
Yeah sorry I don't like to add everybody on skype :(
Florian
@sinnlosername
May 25 2016 20:25
You can remove me later xD
Faizaan
@SirFaizdat
May 25 2016 20:25
And I'm not as qualified to help you with packets xD
Florian
@sinnlosername
May 25 2016 20:28
:(
Florian
@sinnlosername
May 25 2016 20:34
fixed.
<3
Faizaan
@SirFaizdat
May 25 2016 20:39
cat saying yay
Florian
@sinnlosername
May 25 2016 20:39
yep
Faizaan
@SirFaizdat
May 25 2016 20:40
Wish I could say the same
Mats
@Matsv
May 25 2016 20:40
What was the issue @sinnlosername
Florian
@sinnlosername
May 25 2016 20:41
The request packet for the motd is id 0, length 1.
But before this packet get sent, it sent a packet id:0, length:22
I answered the motd to the packet with length 22.
So the client got the motd, but they never answered with a "ping-request"
._.
Faizaan
@SirFaizdat
May 25 2016 20:43
That client, so naughty
They should answer when you speak to them, hasn't Mojang taught them manners?
Mats
@Matsv
May 25 2016 20:43
Hahaha
Faizaan
@SirFaizdat
May 25 2016 20:44
Just as your issue is fixed, my issue starts :(
Florian
@sinnlosername
May 25 2016 20:44
So, anyone will go with me to mojang with some tnt, lava and diamond pickaxes? ^^

Grief

lel
Faizaan
@SirFaizdat
May 25 2016 20:44
Hmmm I don't know if that's legal in Sweden
There was a country who rebuilt the entire country in Minecraft
Florian
@sinnlosername
May 25 2016 20:45
xD
Faizaan
@SirFaizdat
May 25 2016 20:45
Unfortunately, American griefers came on and destroyed it, leaving American flags in their wake
Mats
@Matsv
May 25 2016 20:47
That's so rude
Florian
@sinnlosername
May 25 2016 20:47
Why they gonna be so ruuuude?
Faizaan
@SirFaizdat
May 25 2016 20:47
I hope they had backups
Myles
@MylesIsCool
May 25 2016 20:47
lmao
typical minecraft
Faizaan
@SirFaizdat
May 25 2016 20:51
I wonder how long it would take to rebuild the United States in Minecraft, and then let people from Denmark come on to have revenge
Florian
@sinnlosername
May 25 2016 20:57
nice.
client ignores motd. h8 my life.
Faizaan
@SirFaizdat
May 25 2016 20:57
Imagine what md_5 must've been saying while writing Bungee xD
Florian
@sinnlosername
May 25 2016 20:58
yep
no wait
md_5 isn't as stupid as I am.
Faizaan
@SirFaizdat
May 25 2016 20:59
He's a smart one but he's a meanie
Florian
@sinnlosername
May 25 2016 20:59
WTF.
Code works. 10 lines later. Code doesn't work.
Mats
@Matsv
May 25 2016 21:03
That's why we need version control
Faizaan
@SirFaizdat
May 25 2016 21:03
Hmm
I wonder if annotation-based commands was a good time investment considering how much hair I've pulled out getting it to work
Mats
@Matsv
May 25 2016 21:10
Haha
I'm going to sleep now. See you guys later
Faizaan
@SirFaizdat
May 25 2016 21:11
Good night :)
Myles
@MylesIsCool
May 25 2016 21:26
Build server is very much WIP but here's a link: http://ci.viaversion.com/
Faizaan
@SirFaizdat
May 25 2016 21:27
Oh cool
Myles
@MylesIsCool
May 25 2016 21:27
I think I did well getting it setup and only failing 1 build ;)
my previous record using jenkins was like 7
Faizaan
@SirFaizdat
May 25 2016 21:30
My record was 0 because I couldn't get it to work
So I had to switch to TeamCity (which is actually very nice)
Myles
@MylesIsCool
May 25 2016 21:31
The process for jenkins is: Setup Security, Install Git Plugin, Use options install maven, then just make your project and setup the maven goal
;)
Faizaan
@SirFaizdat
May 25 2016 21:31
It probably would have helped if I had read the installation instructions, but I'm biased towards JetBrains stuff anyway
Myles
@MylesIsCool
May 25 2016 21:32
wow
Faizaan
@SirFaizdat
May 25 2016 21:33
I wish there was a way to hotswap annotation values
Florian
@sinnlosername
May 25 2016 21:41
Hm, Myles, you develope ViaVersion, have you got any packet id list? ^^
I forget which ones you want because that has 1.9 and 1.8
but hey
Faizaan
@SirFaizdat
May 25 2016 21:42
There's this too http://wiki.vg/Protocol
Florian
@sinnlosername
May 25 2016 21:42
I only need something like a maximum id to validate packet id's ^^
Is 0x49 the max?
Myles
@MylesIsCool
May 25 2016 21:43
well there's like 130 in total
60
so it's like
Florian
@sinnlosername
May 25 2016 21:43
Something to check if (packetId > max) wrong packet
Faizaan
@SirFaizdat
May 25 2016 22:11
I've been trying to find a problem for a half hour, and the problem was using >= instead of >
Grrrr.
Florian
@sinnlosername
May 25 2016 22:13
:3
Bootstrap is a netty client, isn't it?