#general

3141 messages · Page 586 of 4

pulsar wigeon
#

the original "farlands" shit was about the random number generating only having so many bits of randomness

blazing nebula
#

that’s when doubles be like

pulsar wigeon
#

i think they fixed that but since entities aren't blocks...

#

everything from positions to motion vectors uses floating points

slim nymph
#

i think float is/was used in a lot of places still

pulsar wigeon
#

and as the numbers get larger the precision gets smaller. so entities start being...fuzzy

slim nymph
#

would have to fully get rid of all float's

blazing nebula
#

Floats are faster though so probably for best

slim nymph
#

though pos is all double now, as well as vectors

ancient bolt
#

that's not true lol

#

double is often faster

slim nymph
#

its not?

#

oh to him

blazing nebula
#

Really?

pulsar wigeon
#

i mean, doubles have the same issue

#

they just retain enough precision for a lot longer

ancient bolt
#

that kind of stuff can substantially increase memory footprint though

blazing nebula
#

I was under impression floats were less accurate but faster

slim nymph
#

havent you seen the 1gb/s demon lol

#

actually its bytes/strings that take up most of it

ancient bolt
#

most machines these days are 64 bit, so they handle 64 bit math in hardware natively

slim nymph
#

id love if we could figure out an easy reduction on string usage

ancient bolt
#

and often can do bigger stuff like 128 and 256 bit calculations natively as well with special instructions

#

but that's more complicated

blazing nebula
#

Strings are 82% of my data as of now lmao

ancient bolt
#

@slim nymph yeah in minecraft's case floats & doubles aren't the biggest issue, but in other applications it can be

#

I wasn't specifically talking about minecraft there

#

there are other applications I've seen where switching from int to long increased heap usage by 5+ GB

blazing nebula
#

That’s crazy, must be using a lot of ints

ancient bolt
#

mostly very large arrays of ints

#

but yes

cedar herald
ancient bolt
#

@slim nymph just call .intern() on every string, that'll reduce usage thonk

blazing nebula
#

How much memory does each java object actually consume

ancient bolt
#

I wish Java had native string slice support

pulsar wigeon
#

depends on the object...

ancient bolt
#

an empty java object consumes 24 bytes at minimum I think

#

not counting any pointers

static badge
#

ya 24

blazing nebula
#

Because like a Boolean doesn’t just take a bit and a byte doesn’t actually take a byte. How much wrapping does java use around that data

ancient bolt
#

once you start putting shit into it it takes up a lot more

static badge
#

lol don't worry about Boolean

pulsar wigeon
#

but also compressed oops is a thing

static badge
#

unless you're retarded you will always be using the cached instances

ancient bolt
#

Java has ways of optimizing pointers if you have under....i forget how big the heap can get

#

but they are called OOPS which is fun

static badge
#

32gb

blazing nebula
#

I may be retarded

static badge
#

4 gb max int * 8

pulsar wigeon
#

most likely

#

if you're in this discord, there's a good chance you're retarded

static badge
#

you're here

blazing nebula
#

What do you mean by cached instances tho

static badge
#

The wrapped types tend to have a cache for values

pulsar wigeon
#

boolean true == Boolean.TRUE

ancient bolt
#

cached instances still need pointers to them

#

but primitive values live on the stack

#

so it's not free

#

just allocation-less

#

the pointer lives on the stack unless it's contained by a heap object

static badge
#

well yeah ur right in that sense, a Boolean ref is 4 bytes

#

or 8 if you're over 32gb heap

pulsar wigeon
#

wait holup

blazing nebula
#

So the Boolean object is better to use than a primitive Boolean?

pulsar wigeon
#

i just read that zgc doesn't support compressed oops

static badge
#

no

ancient bolt
#

wat

#

how the

blazing nebula
#

I have very low IQ sorry

pulsar wigeon
#

just keep using true/false and stop worrying about optimizing

ancient bolt
#

zgc uses colored pointers, it doesn't have room for compressed oops

#

but those colored pointers let it scale to like 2+ TB of heap

#

so it's really meant for heaps well past 32GB anyways

blazing nebula
#

I wonder how much worse my code is in my attempts to optimize crap

pulsar wigeon
#

i mean

#

we're not using 32gb+ heaps tbh

#

compressed oops would be nice still :^)

ancient bolt
#

minecraft isn't, other people are

pulsar wigeon
#

yes i'm aware

#

"we" meant MC

ancient bolt
#

G1GC will probably be the best GC for MC thanks to aikar's optimized flags

tranquil solstice
#

Still debating over GC's?

ancient bolt
#

he's basically configured it to exactly handle minecraft's stupid allocation rate

pulsar wigeon
#

bunch of people running zgc on j14 are getting less pauses

blazing nebula
#

In the end does it really matter

pulsar wigeon
#

that said they're probably also using more cpu

jagged egret
#

yes

tranquil solstice
#

(yes)

pulsar wigeon
#

zgc aint free

ancient bolt
#

it needs more testing

pulsar wigeon
#

also read barriers :^)

ancient bolt
#

I don't really trust most people's claims

pulsar wigeon
#

oh and then someone reported that once your heap is full you get lots of allocation pauses

ancient bolt
#

yeah that's common with any allocator?

pulsar wigeon
#

well, it's all hearsay aint it

tranquil solstice
#

My servers are using 1% cpu when idle with Shenandoah.

pulsar wigeon
#

when idle

#

no one fucking cares

#

what did i tell you about shoving shen on us without data

#

are we gonna do this for a third day in a row

tranquil solstice
#

Idk, but it's different then G1GC which was using a bit more than that with idle.

ancient bolt
#

that's irrelevant

#

snoop

#

but also I don't really care about your server unless you have profiling info to share with us

#

again, I trust very few people on this matter

tranquil solstice
#

Specifically profiling data from what software?

static badge
#

if u knew what u were doing u'd know what data you need

ancient bolt
#

I don't operate a server with any kind of traffic so I can't do tests myself

#

I also cba

#

someone will do it I'm sure

blazing nebula
#

Does anyone know how to motivate oneself to get off their ass and get to work on code

#

I do

#

But I’m lazy

pulsar wigeon
#

get the fuck off discord

ancient bolt
#

that's such a stupid response barty

pulsar wigeon
#

do you need help with that one? :^)

blazing nebula
#

True, cya

tranquil solstice
#

(Wiz looking for a reason to use the hammer)

ancient bolt
#

as someone who loves writing code and has to deal with massive burnout, I can tell you that's literally the stupidest fucking thing to say

tall smelt
#

Everyone here is so aggressive

blazing nebula
#

Okay I said I’d get off and I will I just wanna ask one more thing as I relate to Demon really hard on this, what’s the best way to deal with burnout or at least mitigate it?

ancient bolt
#

do something else

#

don't force yourself to do something when you don't feel it, you'll just teach yourself to dislike what you used to like doing

#

I took a year and a half long break (at least) and only recently started working on stuff again and even now I'm working at 1/2 capacity compared to what I used to

pulsar wigeon
blazing nebula
#

Thank you, that’s very true recently I feel like I’m forcing myself to do something I used to be so inspired and passionate about. Maybe it’s time for a break and to switch projects for a while

static badge
#

I agree with demon

#

you're a stupid response demon

ancient bolt
#

Oh wow you've never agreed with me before @static badge

static badge
#

I think I have

ancient bolt
#

prove it

static badge
#

I agree that taylor swift isn't good music

ancient bolt
#

bye

pulsar wigeon
#

mod abuse

limber knotBOT
#

gg

void void
queen rapids
#

he did

#

oh

limber knotBOT
#

it was a ban

pulsar wigeon
#

he did yea

#

unbanned now but like...

limber knotBOT
pulsar wigeon
#

i mean, if aikar keeps fucking up his patches he'll stop contributing anyway

limber knotBOT
#

tbh you can strip my contributor rank

#

he did mess it up

#

...again

golden gust
#

Somebody was actually showing something earlier, apparently ZGC has this cool feature where it will pause a thread if its allocation rate is too high or something like that

limber knotBOT
#

so I am done

pulsar wigeon
#

yikes

#

way to go aikar

ancient bolt
#

#drama bois

limber knotBOT
#

pfft don't blame him

pulsar wigeon
#

and yes, we covered that cat

golden gust
#

ZGC is such ❤️

limber knotBOT
#

out of everything this shit is only 10% of the reason I'm done

pulsar wigeon
#

am i the other 90%

limber knotBOT
#

no

pulsar wigeon
#

:(

queen rapids
#

whats the other 90

limber knotBOT
#

but seriously everyone here is probably sick of me complaining so I'm not gonna go over this again

queen rapids
#

😦

ancient bolt
#

ooh mcdev has over 200k non-unique downloads now

limber knotBOT
#

furry

ancient bolt
#

leaf is a dank furry, get it right

limber knotBOT
#

:monkaS:

static badge
shell vine
#

dont give up

pulsar wigeon
#

smh he just comes back and yall harassing him already

#

zbk had no idea how his IDE worked

void void
worn ember
#

i broke my minecraft

#

i instantly die when i respawn lul

#

i set the world border to the max range

#

but its still outside it somehow

wind lantern
stiff yarrow
#

I feel like I've gotten used to the whole world being in hermit mode without realizing it

worn ember
#

Hermit mode? The borders?

#

Oh NVM you mean the real world staying inside

#

Thinking is hard

stiff yarrow
#

I just drove back from the grocery store and on the way back it occured to me that I've gotten used to the coronavirus world

ancient bolt
#

I need to go to the grocery store ugh

#

Thursday is the best day of the week to go

#

so I'll either need to do it tuesday or something idk

indigo fiber
#

//sidenote:
so what exactly are the zgc flags for Java 14

slim nymph
#

unlock experiemental and -XX:+UseZGC and -XX:+AlwaysPreTouch

pulsar wigeon
#

honestly that one has always just been anti dumb plugin

#

sure but wont actually make a difference unless you have said dumb plugins running said explicit gc

cosmic raft
#

don't install plugins called RandomGC then

#

:-)

slim nymph
#

i know worldborder calls GC while filling...

#

so thats one common case there

indigo fiber
#

so if I was to use Java 14 on my client, it would look like this?

-Xms2G -Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:-UseParallelGC -XX:-UseParallelOldGC -XX:-UseG1GC -XX:+UseZGC -XX:+AlwaysPreTouch ?

cosmic raft
#

aha! is alive!

left swift
#

r they far away from u

glad jasper
vestal jasper
#

What a join message

past shale
orchid pelican
#

I need spellcheck for Minecraft chat

#

irc you didn't see that

fierce temple
#
java.nio.channels.ClosedChannelException: null
        at io.netty.channel.AbstractChannel$AbstractUnsafe.write(...)(Unknown Source)```
anyone know how to fix this error?, player cant join server
orchid pelican
#

get in the help channel you scoundril

limber knotBOT
#

good morning ladies

vestal cargo
pearl glacier
tough tinsel
rancid cobalt
void void
gritty raptor
hollow cloak
frigid ferry
#

Is it possible to DM people on the Paper forums?

#

I can't seem to find a message button.

woven otter
#

what happened to leaf boi

vestal jasper
#

he's still here

woven otter
#

yes but that drama tho

inland fiber
merry schooner
woven otter
olive garden
#

long ago

woven otter
#

I have never seen that used anywhere until now

olive garden
#

shame on you

woven otter
#

no u

olive garden
#

👻

#

The conversations API is really powerful, but yeah, it's not used as much

#

probably because it's not that user friendly

#

it's great though

delicate ivy
sour walrus
olive garden
#

Java 1.8 😐

limber knotBOT
#

the error is pretty clear in itself, just report it to optifine

#

alright, this was probably the best support case of this year yet: running ProtocolSupport AND ViaBackwards.. on a 1.8 server, and ignoring both of these giant banner warnings https://i.imgur.com/AjB94RV.png

#

and sending me a private message instead of waiting 3 seconds in the support channel

ashen cliff
#

👏

oak quiver
#

👏

wide chasm
#

Waiting 3 entire seconds? That's way too long.

heady spear
#

what draaaama

#

did I miss drama

wide chasm
#

No, not here

#

I think

ashen cliff
#

Drama.
Just Leaf getting buzzed by someone changing his patches.

heady spear
#

.-.

limber knotBOT
#

alright, now they messages me again in private

#

even though they already got the response in the support channel

wide chasm
#

Lol opening plugins

#

Ah yes, let me wrap my plugin in a .msi to install itself

heady spear
#

Why would anyone willingly message Kenny

limber knotBOT
#

I don't know, they're an absolute lunatic!

heady spear
#

Y'all look I just made ugly:

public <T, V extends PlotFlag<T, ?>> T getFlag(final V flag) {
        final Class<?> flagClass = flag.getClass();
        final PlotFlag<?, ?> flagInstance = this.flagContainer.getFlagErased(flagClass);
        return FlagContainer.<T, V>castUnsafe(flagInstance).getValue();
    }

Sometimes I'm impressed with my ability to write dumb code

limber knotBOT
#

ah an ugly, I love it.

heady spear
#

generics r the worst, I love them

wide chasm
#

Generics are great as long as you don't try too hard. When you do, it becomes hell.

daring granite
worn ember
#

@heady spear i'm watching this swedish streamer and hes like "sweeds dont give a fuck about quarantine" xD

heady spear
#

very true

rain sun
#

Guys, tell me please, decided to make a classic server on 1.8, which core is better to choose? paper?

latent valve
#

What is QuaRAmTinE?

short yarrow
#

so anyone good with tensorflow and machine learning?

shy rivet
undone niche
slender vault
noble orchid
void void
#

Whats a good plugin for NPC SHOP 1.15.2?

unreal quarry
#

.g plugin npc shop 1.15.2

limber knotBOT
fleet umbra
rancid kernel
abstract shuttle
ashen cliff
#

Instead of central AC, we need central compressed air.

void void
#

@unreal quarry thats for trading

grand void
oak coral
wispy shadow
light python
soft coral
#

Can anyone help me with InfoBoardReborn?

split pasture
#

Hello, I'm searching a normal survival server that uses CubicChunk, does anyone know such Minecraft server ?

latent valve
#

.g CubicChunk

limber knotBOT
royal depot
trail tide
deep onyx
ruby edge
idle agate
void void
#

what project

limber knotBOT
#

prolly his system info plugin thingy

smoky rune
heady spear
#

"an amazing plugin"

#

bruh

quiet isle
void void
#

epic

#

also found the culprit

#

emacs pepegahammer

#

truly worth its name, "eight megabytes and constantly swapping"

pulsar wigeon
#

that's what you get

olive garden
#

lmao

mental crystal
faint maple
elder juniper
#

Anybody know any good free anticheats

tacit crown
foggy elbow
#

Look at the review etc ^^

elder juniper
#

What one is the easiest to setup

#

Alot of them need configuring

foggy elbow
#

I tried horizon, worked well

limber knotBOT
#

do you also want a cookie with your anticheat?

foggy elbow
#

but I do not use anticheat anymore, cheaters are funny 🙂

#

.

Hello,

Do you know any good plugin just to give spawner (any type, like blaze) to a player?

golden gust
#

I generally just give the player a spawner and an egg

#

I did finally get spawners working iirc, but they're a PITA

foggy elbow
#

can create problem with player that change other players spawners etc.. :c

grim topaz
foggy elbow
ocean marlin
foggy elbow
#

:maybe try using epicspawners thinking_gun :

tropic flame
unreal quarry
#

my son said something similar to that 😛 my response was simply that schools are probably trying to separate work from play (and discord is aimed at gamers for gaming)

unreal sparrow
limber knotBOT
#

using discord for classes sounds like the worst idea possible

#

beginning with occasional outage 👀

lament bane
limber knotBOT
#

school of a friend of mine uses teamspeak for online classes

#

our uni partially uses mumble, both are pretty fine, cuz dat self hosted-ness and security

left swift
#

is discord also trying to do that game launcher thing lol

void void
tropic flame
#

Billy, well 🤷 that sounds reasonable

limber knotBOT
#

didn't discord stop trying to be a game store?

heady spear
tropic flame
#

yeah they closed the store and I think you only have access to what you had downloaded already

unreal quarry
#

advertising to gamers was a smart move on discord's part, and personally i believe its why its been so successful. but to try and change that image now, its a bit late for that ^_^ plus they still have remnants of it all over the place that would make it non-appealing to anything not gamer related (especially like a school, or business, or medical group trying to save the world from covid-19)

jagged egret
#

also Zoom is designed for conferencing and large calls so there's that

tropic flame
#

i've heard that Zoom has a few security flaws tho

fallen oracle
#

I think that's a fair point, Billy.

tropic flame
#

but yeah

limber knotBOT
#

just use an open source one ¯_(ツ)_/¯

jagged egret
#

it does but supposedly they've been working to fix them

limber knotBOT
void venture
#

@heady spear that's actually a pretty nice project

#

where did you find it?

heady spear
#

I went on the github marketplace lol

void venture
#

oh lol

#

Didn't think people actually use it

#

phoenix: that's just another app no one has ever heard of

#

Nevermind, that's actually a list of apps

limber knotBOT
#

these three are literally the ones almost everybody who cares about open source and privacy has heard of ¯_(ツ)_/¯

left swift
#

if u cover ur eyes when you talk to people u cant see the covid so it ignores u

limber knotBOT
#

jitsi is also pretty cool for video conferences

left swift
#

we could also change classes to night time when covid is sleeping

heady spear
#

the github marketplace is pretty neat tbh

#

there are some cool stuff on there

#

is* >.<

jagged egret
#

so the book Java Concurrency in Practice, is it outaded? it's from 2006 and uses Java 5 o.o

pulsar wigeon
#

probably missing some of the new fancy toys available but i think a lot of principles hold true

#

been a long time since i looked at it tho

jagged egret
#

chunk generation is asynchronous, right?

slim nymph
#

yes

#

as long as you dont trigger it as a sync chunk load

small ice
brave summit
golden gust
#

you have a data file for structures or something which is "large" enough that it's apparently taking too long to save

#

not really, there is no debug for it afaik

#

best you've got is to look in the data folder of the world(s)

void void
pulsar wigeon
slim nymph
#

oh yay a 117mb scorebvoard file

golden gust
#

yea, could be that too

#

Pretty sure that's saved in the same place

#

(large scoreboard files can also cause a whoooole massive set of other issues)

jagged egret
#

o while you're here do you know where the structure & ore generation occurs? like which classes?

slim nymph
jagged egret
#

wooo

void void
#

that made me hungry af aikar...

#

hi

alpine totem
cloud imp
#

Does anyone know if there will be an Enable Zero Tick Farms feature for Paper 1.16?

pulsar wigeon
#

no

limber knotBOT
#

lol no

pulsar wigeon
#

we don't add bugs back to the game that mojang has fixed

limber knotBOT
#

will you bring back a fixed bug

void void
#

fucking rolling my eyes so far back into my head that i feel pain

olive garden
#

I'm sure there will be a plugin for it though

#

it will probably suck, but whatever

limber knotBOT
#

or another 200€ mcmarket scam

olive garden
#

😍

void void
#

this is gonna be the next reason people dont ever update from whateverthefuckversion

#

just so they can have zero tick

limber knotBOT
#

never got that to work properly, lol

void void
#

just dont reach out to their support because they're retards

#

just, dont ever do it

limber knotBOT
#

or it may just be larger thonk

honest pulsar
limber knotBOT
#

using the default font

#

it's too large

#

then it's too small lmao

#

13 is larger than before, 12 is smaller

#

so ehhhhh

#

what do you use, phoenix :p

#

just use Liberation Mono

#

runs

#

?

#

looks just like consolas

#

no idea, I don't know any fonts. lol

#

ah, yeah

ashen cliff
limber knotBOT
#

it's pretty awesome

#

:aaa:

ancient bolt
#

it's called rainbow brackets or w/e and it's dumb fite me

void void
#

it is dumb but i like it anyway, it brings color to this dull world

#

the real problem there

limber knotBOT
#

gonna install it right now.

void void
#

is why do you have 4 nested for loops

ancient bolt
#

semantic highlighting brings all the color I need

jagged egret
#

x y z section y

#

used 4 nested for loops the other day

limber knotBOT
#

I also have rainbow indention markers ;D

jagged egret
#

granted that code never worked and I revised it to use one for loop instead but that's beside the point

void void
#

not happy about it though

#

maybe your pc is just a piece of shit

ancient bolt
#

use matrices

void void
#

yes

ashen cliff
#

Yes.

void void
#

idk, i dont use amd

ancient bolt
ashen cliff
#

Everything is bad compared to something.

peak dirge
#

o.O

void void
#

uh

peak dirge
#

I think I'll keep my Fira Code though

void void
#

demon that triggers me

#

plz delete or be sued

ancient bolt
void void
limber knotBOT
#

oO

#

get the blowtorch

ancient bolt
pearl ibex
#

Dear fucking god.

#

My eyes.

limber knotBOT
#

KennyTV: I like my font/colours

#

looks too purple :D

#

what's the font and size?

peak dirge
#

speaking of mcmarket memes

limber knotBOT
#

or wait, sorry

peak dirge
#

I could take Velocity, slap on the BungeeCord API, and then sell it as "optimized BungeeCord"

barren island
limber knotBOT
#

for 300€, of course.

ancient bolt
#

I mean velocity should implement the bungeecord API

peak dirge
#

I could call it FuryCord, and yes, sell it for $300

limber knotBOT
#

and don't link the source

#

that's the proper look, sorry

ancient bolt
#

being compatible with bungeecord plugins would boost velocity's appeal quite a lot

limber knotBOT
#

I'm just scared of the indention

peak dirge
#

font reminds me of Menlo, the default Monospace font on macOS

limber knotBOT
#

2-space indentation is something I wish I started doing a long time ago

#

4-space indents just waste space

#

it all looks so squashed :x

#

just keeping font size normal/not high is enough for me

peak dirge
#

Yeah, I think supporting the Waterfall API in Velocity might be a better idea than making my own Sponge-inspired API.

limber knotBOT
#

ah

peak dirge
#

In retrospect, I think I should've just done a separate implementation of BungeeCord without all the barf

pearl ibex
#

Lmao. IntelliJ now is asking me to replace some ternary operators with Math.max(int a, int b). Same thing, but wrapped in that method.

peak dirge
#

Because the actual universe of Velocity plugins is really small, and that's excluding the fact the biggest publically known user is... my server

pearl ibex
#

Well, more like "suggesting".

ancient bolt
#

Math.max(a, b) is better than a > b ? a : b

#

it's much more clear

torn cradle
ancient bolt
#

IntelliJ is right

peak dirge
#

much more readable

#

IntelliJ gave you the right suggestion, you should take it

pearl ibex
#

I did.

ashen cliff
#

I almost got someone to switch to Velocity, but :"Muh Plugins".

pulsar wigeon
#

but the method call overhead of math.max... /s

limber knotBOT
#

you only need Via, that's it

ashen cliff
#

LiteBans

limber knotBOT
#

some people actually believe that wiz

pearl ibex
#

I actually was gonna say that, wiz. :P

limber knotBOT
#

it's nuts

pulsar wigeon
#

it has to call an invoke!!!

#

and return a value through the stack frame!!!

ancient bolt
#

were you going to say that non-ironically?

peak dirge
#

method call overhead
jvm has jit
jit can inline

pulsar wigeon
#

what's a jit?

#

runs

#

is landis a jit

pearl ibex
cosmic raft
#
  @HotSpotIntrinsicCandidate
  public static int max(int a, int b) {
    return a >= b ? a : b;
  }
pulsar wigeon
#

wait that's a git

ancient bolt
#

jit is fake news

pulsar wigeon
#

runs

pearl ibex
#

Please be patient, I have autism. pepega

torn cradle
#

wtf intellij does that

#

insane

cosmic raft
#

what is insane about it

ashen cliff
#

Paper AOT lib when?

torn cradle
#

im an eclipse user

#

that's what makes it insane

peak dirge
#

run openj9 lol

torn cradle
#

not used to that fancy cool suggestions

ashen cliff
#

Someone actually made a native image and AOT for Paper.

jagged egret
#

if you havent tried intellij it'll blow your mind

ancient bolt
#

omg the stdlib uses >=? hat's inefficient, since it has to run 2 instructions instead of 1. You should definitely not call that method

jagged egret
#

i used to use eclipse, switched to IJ and have never looked back

limber knotBOT
#

smh

torn cradle
#

i used it a while ago but i didnt know how to do things so i gave up

#

and went back to eclipse

ancient bolt
#

There was a time long ago when that was actually true in C land, but yeah

jagged egret
#

It's a bit different setup but so worth it

wide chasm
#

Aren't both > and >= separate assembly instructions? Maybe the cpu does two things, though.

ancient bolt
#

yes they are both individual instructions in practice

jagged egret
#

this would be optimized by the compiler, no

ancient bolt
#

even on platforms where they're not the compiler will just transform that into a < check

wide chasm
#

So does the CPU have to perform two operations? Since they're both two different instructions in Assembly and not a combination of multiple instructions.

ancient bolt
#

no it's probably a jge instruction

wide chasm
#

Okay, I see what you mean now, only on platforms where they're not equal the transformation to < happens. I was confused as to why it would optimize if they were just separate instructions.

ancient bolt
#

yeah on x86 the concept of not having enough instructions isn't really a thing

limber knotBOT
#

finally

wide chasm
#

inb4 switching all >= to < /s

jagged egret
#

inb4 using >> 2 instead of / 4

ashen cliff
#

It's the same.

limber knotBOT
#

:oo

ashen cliff
#

(or me being stupid)

wide chasm
#

inb4 multithreaded bitshifts

limber knotBOT
wide chasm
#

Then we can finally sell this on mc market for 800 dollars 🙂

jagged egret
#

I can send packets to clients not on the server thread right

ancient bolt
#

inb5

a = a^b
b = a^b
a = a^b

instead of

c = a
a = b
b = c
pulsar wigeon
#

but allocating another variable

limber knotBOT
#

yes iso

pearl ibex
#

What?

limber knotBOT
#

KennyTV: guess what

wide chasm
#

What if my server runs out of memory because of that variable, hmm?

pearl ibex
#

Lmao.

wide chasm
#

This is clearly an important optimization.

limber knotBOT
#

well, just download more ram

pearl ibex
#

XD

ancient bolt
#

all real programming languages should support a, b = b, a syntax

wide chasm
#

Java left the chat

limber knotBOT
#

wtf would that even do

#

guess what what, kashike :p

ancient bolt
#

then you can use the single swap instruction

wide chasm
#

Swap the variables.

limber knotBOT
#

KennyTV: I dunno :P

pearl ibex
#

Python left the chat.

jagged egret
#

...python has that

pearl ibex
#

But Python is not a "real" programming language. :>

#

That shit is like better Bash, no more. :>

wide chasm
#

This is why we should switch the entire project to Assembly - finally we can use the swap instruction.

limber knotBOT
#

python is just a snake, smh

ancient bolt
#

Kotlin's way of doing it is, uh...

pearl ibex
#

Ew.

ancient bolt
#

a = b.also { b = a }

pearl ibex
#

Kotlin.

#

My eyes!

wide chasm
#

Wtf is that

pearl ibex
#

^

cosmic raft
#

and then there's Java

ancient bolt
#

it's language abuse is what it is

cosmic raft
#
int x = 10; 
int y = 5; 
x = x + y; 
y = x - y; 
x = x - y; 
#

:-)

pearl ibex
#

XD

ancient bolt
#

@cosmic raft I already did that but with xor above

limber knotBOT
ancient bolt
#

for clarity the also extension function is not intended to be used like that

wide chasm
#

Yes Kenny

#

Configurable though

limber knotBOT
#

oh interesting

#

then it's on by default now I suppose

#

or I was just blind and deaf

wide chasm
#

Afaik there's a delay before it shows.

#

I think it was 1000 ms by default, but may have changed

limber knotBOT
#

now it's -30ms, it shows before you even think about hovering for it

ancient bolt
#

kotlin can do val (a1, b1) = b to a

#

but meh

limber knotBOT
#

quite a nice feature, glad I see it now lol

ancient bolt
#

not exactly a thing you need to do very often

cosmic raft
#

the closest thing I do to swapping is

#
final A a = this.a
this.a = null;
// do something with a now
ancient bolt
#

what should I have for lunch

cosmic raft
#

i basically never actually swap variables

#

@ancient bolt tacos

#

why do you even ask!

ancient bolt
#

cause i like to have variety

#

idk if I'm feeling tacos right this second

cosmic raft
#

hmm

#

chinese?

#

pizza?

wide chasm
#

kashike I get panic attacks from having to declare variables as final because "Local variable used in lambda expression must be final or effectively final"

limber knotBOT
#

I just slap a final in front of everything :p

wide chasm
#

The amount of times that it happens and is also super inconvenient is just argh

#

I usually either remove the stream (if it is a stream) and just write it out normally, or for anonymous classes throw another final variable at it.

ancient bolt
#

@cosmic raft okay order placed for tacos

limber knotBOT
#

we wouldn't have expected any less

cosmic raft
#

woohoo

onyx steeple
#

Woo woo!

limber knotBOT
#

once more: imagine living in the us

ancient bolt
#

@onyx steeple seems overly optimistic

#

Shaded areas indicate uncertainty

#

that's a lot of uncertainty lol

onyx steeple
#

Link?

ancient bolt
#

what are you talking about, yes there are shaded areas?

peak dirge
#

If Hack had ligature support, I'd switch. But it doesn't, so I'm keeping Fira Code

ancient bolt
#

they have less uncertainty

#

they have a lot more data because their leadership isn't so horrifically incompetent

cosmic raft
#

@peak dirge I don't like the ligatures anyways

#

all they do is make it harder to read

peak dirge
#

I like the ligatures myself, to the point where it is almost no-go if there are no ligatures.

onyx steeple
#

@still smelt check per-region

cosmic raft
#

fair.

pearl ibex
#

Try Cascadia Code. :>

onyx steeple
#

What country?

#

MineCountry?

#

Which Region?

pearl ibex
onyx steeple
#

😄

#

Mexico isn't on there

peak dirge
#

Cascadia Code looks too bold for me

pearl ibex
#

if (a != a) { return a; } pepega

#

Is there something I'm missing?

ancient bolt
#

NaN != itself

pearl ibex
#

Oh.

#

That makes sense.

ancient bolt
#

per IEEE-754 floating point number standard

jagged egret
#

cool now I've killed two laptop batteries

pearl ibex
#

Generics, boiii.```Java
public interface Manager<R, C> {
void add(R r, C c);

void remove(R r, C c);

}```

pulsar wigeon
#

only if they are keys and values

#

which, doesn't really look cuz why would you need the value to remove

pearl ibex
#

I wrote that like two years ago. :P

#

And this is some retard thing I made too. :P ```Java
public class MultiInstanceManager<R, C> implements Manager<R, C> {
@Getter
protected final Multimap<R, C> data = Multimaps.newMultimap(new ConcurrentHashMap<>(),
() -> Collections.synchronizedList(new ArrayList<>()));

public void add(R r, C c) {
    data.put(r, c);
}

public void remove(R r, C c) {
    if (data.get(r).equals(c)) remove(r);
}

public void remove(R r) {
    data.keys().remove(r);
}

public Collection<C> get(R r) {
    return data.get(r);
}

}```

green turret
#

It's weird. I don't like it.

pearl ibex
#

I don't like it a lot either.

#

That's for sure.

heady spear
#

My sister works at a nursery home and one of the nurses + one of the elders have confirmed covid-19 :\

#

Tbf half of Swedish nursery homes have confirmed cases by now buuuuut

green turret
#

The only solution is to burn the nursery home.

pearl ibex
#

There's something even weirder.

#

Gimme a sec.

green turret
#

Especially the elders!

limber knotBOT
#

we should burn all those zarbage people!

golden gust
#

ez, just purge sweden

limber knotBOT
#

and that.

pearl ibex
#

There you go: ```Java
public class SingleInstanceManager<R, C> implements Manager<R, C> {
@Getter
protected final Table<R, Class<?>, C> data = HashBasedTable.create();

@Override
public void add(R r, C c) {
    data.put(r, c.getClass(), c);
}

@Override
public void remove(R r, @NotNull C c) {
    data.remove(r, c.getClass());
}

public void remove(C c) {
    data.values().remove(c);
}

public C get(R r, @NotNull C c) {
    return data.get(r, c.getClass());
}

}```

#

Yeah, I use Lombok. pepega

limber knotBOT
#

and let's burn landis next

green turret
#

Man you really just wanted to use generics and lombok everywhere

golden gust
#

.lombok

limber knotBOT
#

[03:01:27] <gabizou> fuck you and the lombok horse you rode in on

pearl ibex
#

Well, that made some things easier...

green turret
#

Wtf

pearl ibex
#

Like this: ```Java
public class CooldownManager extends SingleInstanceManager<UUID, Cooldown> {
public boolean isCooldownOver(UUID uuid, Cooldown cooldown) {
return !data.values().contains(cooldown) || get(uuid, cooldown).getDuration() < System.nanoTime();
}

public double getRemainingTime(UUID uuid, Cooldown cooldown) {
    double seconds = TimeUnit.NANOSECONDS.toSeconds(get(uuid, cooldown).getDuration() - System.nanoTime());
    return Math.max(seconds, 0D);
}

}```

#

Hmmm...

#

Just realized something.

golden gust
#

you can always add more generics

jagged egret
#

^

golden gust
#

Just ask kash for inspiration

green turret
#

It doesn't look like the generics and inheritance are doing much good here :P

pearl ibex
#

data.get(uuid, cooldown.getClass()) != null

#

That's better.

#

Line 3.

golden gust
#

who said it needs to look good?

#

Just gotta lotsa generics

pearl ibex
#

XD

green turret
#

Viper one does not simply access non-static fields in static context.

pearl ibex
#

For cycle vs forEach method. :>

green turret
#

Yeah that's weird.

#

Did you just call a for loop a "for cycle"?

pearl ibex
#

I kinda said "tHE oVErHeADzzZzz".

#

Sorry, just messed up with languages.

#

XD

green turret
#

I'm gonna call them cycles now

#

Or "agains". A for again.

#

You mean in other programming languages?

jagged egret
#

while agains

limber knotBOT
#

indexed agains

green turret
#

I don't know about keywords, but I like calling Exceptions "up" in Java.

#

Instead of "e".

upper flicker
#

I prefer to name them ignored

limber knotBOT
#

yeah I too just wrap all my methods in try catches with ignored exceptions

#

and my plugins have been error free ever since!

pulsar wigeon
#

try { ... } catch (Throwable ignored) {}

#

imagine only catching exceptions

cosmic raft
#

catches wiz

pulsar wigeon
upper flicker
#

the worst part of that is that its a photo

limber knotBOT
#

Oh man, gotta love macros

#

I wish it would be accepted to use a preprocessor for java

#

Would do so much fun shit

peak dirge
#

Oh, good, then we can just do #define barf(msg) throw new RuntimeException(msg) in our codebase

#

At Mineteria we practice barf-driven development

jagged egret
#

is PlayerConnection.lastKeepAlive the player's ping

limber knotBOT
#

that's their... last keepalive

#

(a timestamp)

#

get disconnected

latent valve
#

nah u die u not alive = ded

jagged egret
#

so how would I find their ping

limber knotBOT
#

Player.Spigot#getPing

jagged egret
#

o

limber knotBOT
#

for some ungodly reason it's only exposed with paper

#

and for another ungodly reason it's in the spigot class

#

yes

jagged egret
#

but where is it located

limber knotBOT
#

or depend on nms

#

EntityPlayer

jagged egret
#

oh lol

limber knotBOT
#

cet

#

nice

jagged egret
#

how hard would it be to change the keep alive ID

#

mmmm nvm

limber knotBOT
#

oO

jagged egret
#

shhh

limber knotBOT
#
  1. easy
#

but more importantly 2. W a i

jagged egret
#

how easy are we talking

limber knotBOT
#

calling a setter

proven stag
#

Can someone explain why I cant find my pc in port forwarding for verizon router?

jagged egret
#

no because we cannot see your network

worn ember
#

vroom vroom

proven stag
#

owo

jagged egret
#

you'll have to be more detailed

#

you can't find your PC how? on the web UI to configure a port forward?

worn ember
#

get a portscanner to check if its open

proven stag
#

I'm good.

jagged egret
#

wat

worn ember
#

you dont "find it"

#

you use the pc's adres

jagged egret
#

on some you can select from a list of devices on the network @worn ember

#

the formula for the chunk thing isn't very specific

worn ember
#

wtf imagine not runing hardware from 1990

proven stag
#

@worn ember Ik I'm somewhat dumb. for not using my ipv4 ip

#

sorry m8

burnt sandal
jagged egret
#

wait like the area of chunks loaded?

near slate
jagged egret
#

apparently on the vanilla server (no se sobre paper) server operators will not be kicked if their client fails to send a keep alive

void void
#

wut

jagged egret
#

@still smelt isn't that just (2*view-distance + 1)^2 more or less or do I understand wrong

#

a ver

proven stag
#

alright so i'm done port forwarding. Would I use my computer's ipv4 address or my public ip?

jagged egret
#

@proven stag you can join using your computer's IPv4 address only on your local netework. On any other network, use your public IP

#

also if you are playing on the same machine as the server you can use 127.0.0.1

proven stag
#

or localhost correct?

austere ivy
#

Anyone using 2020 IntelliJ, does your font look weird?

#

And on Mac.

jagged egret
#

Or localhost

proven stag
#

Will I have to set this to my public IP? server-ip=

jagged egret
#

No

#

@austere ivy there was a discussion earlier abt this, it's a new font IIRC

proven stag
#

okay.

frail prawn
austere ivy
#

How do I make it go back

proven stag
#

Will I have to do anything like Static NAT?

austere ivy
#

This is unacceptable, the parantheses are weighted or something

jagged egret
#

The server-ip settings is primarily intended for deployng multiple minecraft servers on a single computer through dedicated interfaces.

proven stag
#

ah okay.

burnt sandal
#

ah yes

#

im back boys

proven stag
#

ah

limber knotBOT
#

max player count isn't 420, missed potential.

burnt sandal
#

missed potential is TPS not shitting the bed

proven stag
#

If I was to use 2 routers to get to my pc

limber knotBOT
#

aren't you still on 1.12? pfff

proven stag
#

would I have to turn on bridge mode?

jagged egret
#

no

#

wait wdym use two routers

austere ivy
#

achoo

proven stag
#

uh

#

uh

#

big house you know

#

yeah

#

Would I have to do anything in Port Forwarding Rules making 25565 a protocols?

#

bruh

jagged egret
#

but how are your routers set up?

proven stag
#

DHCP

#

mostly

#

I'm connect via Cable. Through the last router.

stiff yarrow
#

not a network guy but a wild guess I'm probably wrong - on the first router forward the port and on the second router also forward the port, or just have the first router in DMZ

jagged egret
#

that sounds right ^

#

not a network guy either tbf

#

i'd just put the server on the outermost router ¯_(ツ)_/¯

stiff yarrow
#

I was once behind 2 routers and I think that's all I had to do

#

but it was a few years ago

proven stag
#

Sorry DMZ?

stiff yarrow
#

DMZ opens all the ports

proven stag
#

I don't know much

austere ivy
#

alright

stiff yarrow
#

it basically turns the router firewall off

jagged egret
#

(for devices in the DMZ only)

stiff yarrow
#

DMZ is named after the irl term

austere ivy
#

What do you guys use for your IntelliJ font? On my tiny screen JetBrains Mono doesn't look very good. What should I be using instead?

stiff yarrow
#

yeah you have to specify which device is DMZ'd

proven stag
#

Would I be able to do that for only one pc?

#

uhhh

jagged egret
#

yes

stiff yarrow
#

if you need multiple pcs just use port forwarding

proven stag
#

this is confusingpeepoJuice

jagged egret
#

i'll dm you

stiff yarrow
#

DMZ is the lazy way to go if you're the only one on the network and you are confident leaving all your ports open is a good idea, but behind 2 routers it would just eliminate the first firewall for you as the second router would still be port forwarding

#

router 1 has firewall, router 2 has firewall, port forwarding pokes holes in the firewall but router 2 needs the same hole open in router 1 to work, dmz on router 1 to open all the ports for router 2 on the first routers network and then you only have to deal with port forwarding on router 2

#

this is how I think it would be tbh haven't done 2 routers in a while and I'm a network novice

#

the proper way to go is to setup port forwarding on router 1 and match that on router 2

#

iirc

#

router 2 is basically sublicensing its internet to you and it needs permission from router 1 to do anything

#

you could also just use a switch instead of router 1 and have router 2 be the only router, depends why you need router 1 in the first place

#

once again, network noob, take everything I say with a grain of salt 🏃‍♂️

#

if you are heavily taxing the network or have a lot of people eating internet make sure router 1 isn't a 15 year old POS

rain sun
#

Guys, tell me please, decided to make a classic server on 1.8, which core is better to choose? paper?

granite salmon
#

Begone

#

Back into the abyss

stiff yarrow
#

what does core refer to thonking

granite salmon
#

Paper Cores

#

Very powerful

left swift
#

I use some apple cores to power my minecaft

lime eagle
keen delta
ashen cliff
#

Still interested about MC performance on a IBM main frame...

austere ivy
#

oh wow that's cool.

gleaming rivet
#

omfg nload is literally garbage >.>
ESXI showing different usages than nload, so i don't know what to believe

velvet garden
#

Hm. Is it too risky to run Paper on a 1TB NVMe disk without RAID and rsync all changes every 15 mins to a RAID1 8TB HDD pack?

jagged egret
#

depends on how you quantify risk

velvet garden
#

Well, we have a small production server with 20-40 players online on average

ashen cliff
#

Use iftop instead of nload.

velvet garden
#

if I purchased another drive and RAID1'd them, downtime would be minimal since I could just use the other drive

jagged egret
#

true

stiff yarrow
#

@velvet garden data redundancy if you are doing any kind of business is always a must

gleaming rivet
velvet garden
#

Mmh, I know. I'm just trying to decide between going over budget and more redundancy

ashen cliff
#

You do.

gleaming rivet
#

what is upload and download here? xd

ashen cliff
#

TX RX.

ancient bolt
#

jenkins is so bad compared to teamcity ugh

gleaming rivet
#

so TX is upload?

ancient bolt
#

teamcity is so powerful it's so simple to do basically anything

gleaming rivet
#

and RX is download?

ashen cliff
#

TX is Transmit.

#

At least Jenkins allows for normal wget.

gleaming rivet
#

and cum being total since i went into iftop?

limber knotBOT
#

just tried to test ping related code.. on localhost with a ping of 0 pepega

ashen cliff
#

That's one good name.

gleaming rivet
#

i still don't under stand it xd

#

like what is what

ashen cliff
#

cum/m > cumulative bandwidth usage

gleaming rivet
#

but where do i see current upload and download?

#

these?

ashen cliff
#

Yes.

gleaming rivet
#

thank you ❤️

#

this is much better than nload holy shit 😄

verbal portal
wary vortex
tepid grotto
ashen cliff
#

That would be something like tcpdump.

#

Look at all the shitty armorstand names in real time.

heady spear
#

the spigot discord has already gotten worse than the forums smh 😦

#

it had potential

pulsar wigeon
#

already

#

as of day 1

olive garden
#

can you please send some highlights?

left swift
#

They made a discord? pepeLaugh

olive garden
#

yeah, on April First or something like that

#

and then they kept it by mistake

left swift
void venture
#

I am still unable to comprehend why Maven doesn't ship itself with a wrapper like Gradle does

#

having to install it locally is eh

upper flicker
#

Maven is a lot more stable, things rarely break because it doesn’t ever Chang

#

no need to ship a wrapper

#

Gradle is the odd build system for shipping a wrapper, most of them don’t

#

Gradle also moves a lot faster and breaks things sometimes

#

Makes sense they do

void venture
#

Gradle is stable, whether you choose to update to unstable releases is your choice

upper flicker
#

No it isn’t

#

It moves quickly, updating versions regularly breaks things

#

That’s the context of stable in build systems

#

That’s fine, it’s not a problem

#

And using a wrapper is one of the reasons it’s fine

void venture
#

I am more about the comfort of the end-user

upper flicker
#

None of my end users ever build my software

#

Most don’t

void venture
#

You could argue that everyone should have Maven installed, but should they really?

upper flicker
#

Which is why build tools don’t traditionally include wrappers

#

You could easily do with maven what gradle does if you’re concerned about that

#

The wrapper is literally a script and a jar

#

It’s just not a concern for most

stiff yarrow
#

@heady spear tbh spigot discord seems to mirror the forums to me

#

spigot forums are a cringe fest

twin lagoon
#

kinda to be expected tbh

heady spear
#

The Spigot forums used to be really nice

#

before all the bukkit kiddos moved over there

void venture
#

I know I could, it's just something that is nice to have by default

upper flicker
#

Actually the annoying part is that the wrapper isn’t required in gradle

stiff yarrow
#

I didn't know Spigot existed until December 2018

upper flicker
#

So every now and again I come across a project without one, and I go install a gradle copy locally, but their build file is out of date so my (usually newer) local copy bitches

stiff yarrow
#

what does the wrapper do

heady spear
#

also the maven wrapper project is quite good 😄

void venture
#

I see that being an issue, yeah

upper flicker
#

Lets the project specify which version they use so it can be downloaded and used automatically

heady spear
void venture
#

Had it happen once to a friend of mine

upper flicker
#

Which is good because gradle moves quicker than tradition build tools

stiff yarrow
#

that seems pretty useful, what causes a wrapper to be missing?

upper flicker
#

And that results in breakage if you can’t “bind” to your specific version

#

It’s optional

heady spear
#

Well also, it's useful for people that don't have gradle installed at all. Not just for version parity and whatnot

upper flicker
#

If the project doesn’t include it, it’s not there

#

Most do

#

But not all :^)

void venture
#

The ones that don't are probably users that don't really know how Gradle works though

#

Not that I can blame them on it

upper flicker
#

You’d think, sadly doesn’t seem to always be the case

#

Definitely part of it though

heady spear
#

but yeee maven wrapper is a part of 3.7 now you can live out all your maven dreams :]]

void venture
#

That's nice

upper flicker
#

One I remember was an android lib whose maintainers were strictly against binaries in the repo

#

So lolno wrapper for me

void venture
#

If they were to remove the binary

#

Then at least leave the wrapper config

upper flicker
#

no wrapper no need for the config

#

:^)

#

it was fun figuring out which version of gradle they used

#

because it was like a year behind >.>

void venture
#

Yeah but if you don't think about contributions at all it's just straight out stupid lol

#

At least point it out somewhere

upper flicker
#

tbh I think it was a mostly internal lib

#

but the gradle version wasnt doc'd anywhere

void void
#

so can we see mvnw bundled with paper soon? lol

stiff yarrow
#

I don't know how gradle works it scares me and yells at me and stares menacingly at me in kotlin

upper flicker
#

uh

#

not unless the other core devs really want it

#

I have no interest

olive garden
#

that's groovy, not kotlin

stiff yarrow
#

you can use kotlin in gradle

olive garden
#

nvm then

void void
#

honestly adding it won't hurt, because then one dependency less for end users to set up; but then again paper has CI

upper flicker
#

if maven moved fast enough it was an issue I might be interested

#

but atm its just being added because "muh gradle"

#

maven is in all the usual repositories already

stiff yarrow
#

how many PRs need to be accepted before one can earn the contributor role

void void
#

ur mod already

upper flicker
#

yeah but he's down a channel

void venture
#

Just move to gradle then and problem solved think_smart

void void
#

i c

upper flicker
#

we were going to actually

void void
#

yeah right, forgot about that

heady spear
upper flicker
#

it was part of a larger restructuring

stiff yarrow
#

mcMMO 2.2 is gradle and it scares me

upper flicker
#

it got put on hold because that larger restructuring got put on hold

olive garden
#

lmao

upper flicker
#

no real reason to move to gradle just to move to gradle

#

if the restructure thing goes back on, that'll be when

void void
#

gradle would make build time a lot faster tbh /shrug

upper flicker
#

not inherently

#

that was part of the restructuring

#

a lot of how things are done in paper dont run through maven at all, they're just shell scripts

#

simply moving to gradle without updating that would be very minor gains

#

so thats part of it

cosmic raft
#

you're not wrong, but you also have to realise we'd have to spend lots of time converting everything to gradle, and then keeping it up to date with upstream

upper flicker
#

yell at demonwav if you want it to move faster

#

:^)

cosmic raft
#

bribe him with taylor swift concert tickets

#

he'll have it ready in 1 minute

upper flicker
#

then I'd have to buy taylor swift concert tickets

void void
#

honestly you can minimize the "keeping up to date with upstream" task by parsing maven pom

#

that's how i did it with my waterfall fork

#

it works quite well

#

if i can assume that by "keeping up to date" you mean tracking deps etc

cosmic raft
#

and maven plugins, configuration, etc

void void
#

what maven plugins does paper use... git describe thingy & log4j plugins thingy? iirc

upper flicker
#

relocate and a few others

cosmic raft
#

I'm talking about ones that upstream does as well

heady spear
#

or just never update

#

then it won't be a problem

upper flicker
#

it can be done, its just a lot more work than "just switch"

ancient bolt
#

what

upper flicker
#

some of it already done, some of it not

void void
#

ah wait upstream has some remapping bs as well

#

right?

cosmic raft
#

yes

void void
#

_INVALID_something -> something

upper flicker
#

they asked about gradle, I told them its all your fault and they should yell at you @ancient bolt

#

because thats what we do here

ancient bolt
#

that's fair

#

it should have been done in 2018