#general
3141 messages · Page 649 of 4
thats not md5's fault unless you blame him for not changing the class name lol
Well mojang then
I’ll send them an angry letter
Though our postal service doesn’t work right now so they won’t get it
what the fuck
this code looks like its literally designed to do this
or wait hmm
or blah i dont understand this
cb has a "cap" on BB size, its set to 64 blocks...
older bug?
]
is the line wrapping in the chat box something done by craftbukkit or is that a client-side thing?
curious why the world name is chopped in half https://user-images.githubusercontent.com/32785664/82606778-a33f1f00-9b85-11ea-935c-441bf2f3ac1c.png
i swear every time i check here i see aikar saying something like "oh fuck i found the issue" and a new version of paper is born
well mc does have a lot of issues
same
Robo, chat box size is client configurable, so has to be client
anyone seen 🦆?
u want some quack?
Robo, I think that if you don't use any color codes in chat, it won't cut it off, but when you use color codes, it might
ooooooooooooooooooooo very good point
XD no worries
Why
I bought the files from a guy and am setting it up
that's a funny way to spell group manager
Turbo I've been shilling LP lately where's my commission
Lol
Who summoned me
go away duck
hi
Hi
Yes what a simp simp is

@potent fossil https://www.youtube.com/watch?v=u_Hp7bdcp4I
excuse me
good
I can in #paper-dev tho
Turbo I over-shill luck and forced pex users to migrate it to it when I knew where's my commision too
you're not even able to send messages in #paper-github what are you talking about
guess ur just a fukn noob then
The setting effects messages and reacts 
there you go
kinda
i love kash lotta

would you like to re-phrase that?
dad
kick
I would if it was not so much effort to unban you after
CentOs or Ubuntu?
Loaded or non-loaded question?
Important
They both work equally well, it depends what you're comfortable with.
Security
They both work equally well, it depends what you're comfortable with.
ok
fgrep state test/debug/chunks-2020-05-21_22.49.02.txt | sort | uniq -c
2184 "state": "BORDER",
756 "state": "ENTITY_TICKING",
6688 "state": "INACCESSIBLE",
232 "state": "TICKING",
ill just repaste
"no force loaded chunks were found in overworld" when i did /forceload query
and some of the coords were really far from me or spawn too
so im suspecting fucking villages
as i am in the middle of a village
dunno how villages would do it
yeah doesnt make sense to me either and for it to also be persistent
ive let it sit for a while, never unloads
I've a tool that figure out what tickets keep the region loaded
yeah i used it for that paste above
oh
and regionify it
but the region logic is uh broken and only works by coincidence
and the tool is outdated
and it has no ui
if you can pass me the log I can look at it with the updated tool locally
gotta love it how leaf and aikar are simultaneously using 3 channels for development talk
LMAO
i clicked my history to jump to message
then just pasted in here forgetting it switched channels
but this is better than help anyways lol
also the part in paper is kinda
in its own ways
really need to look at cleaning it up
i was thinking, the entity ticking ticket really should be moved into mojangs ticket sorter where THEY add player, add player ticket, and if the entity ticking distance map contains a player, also add entity ticking ticket
probably don't need that, as the entity ticking only gets added after 2 chunk radius are loaded
so it's already held back by their sorter
well the sorters kinda helps, but could be better. it lets it delay adding more when the chunk threads are already overloaded, as well as aborts adding tickets once player leaves view distance of it
well the entity ticking wont load chunks
it doesnt?
as it only adds after they're loaded
oh i know
i meant just move its placement so the logic for player tickets could just live in 1 location
tbh idk how to use their throttler
where that 33 ticket is at, just also do 31 there
I tried copying and pasting the exact logic used for adding 33 level tickets
IF its in the map
but like
it didn't work
it all went through unthrottled
that's why tuinity had such bad sync loads
all of the tickets for loading were added at once
oh wait, nvm, we cant do that
because it wont handle removals
what you have is prob best
its only going to handle No tick range
mojangs i mean
if we wanna avoid the ticket manager stuff could maybe look at using the distanceareamap...
probably way faster than whatever mojang has
i think its prob better as it is now, as it slow rolls the chunks in
helps from flooding queues worse than it already is
although I do see bad percentages on expired ticket handling
I was really happy to find this:
the last task to actually process the load also has a priority
that's technically a part of the gen status stuff
yeah that shit should probably be 1
so soon as a chunk hits full status its urgently getting into world
public static final ChunkStatus FULL = a("full", ChunkStatus.HEIGHTMAPS, 0, ChunkStatus.o, ChunkStatus.Type.LEVELCHUNK, (chunkstatus, worldserver, chunkgenerator, definedstructuremanager, lightenginethreaded, function, list, ichunkaccess) -> {
return (CompletableFuture) function.apply(ichunkaccess);
}, (chunkstatus, worldserver, definedstructuremanager, lightenginethreaded, function, ichunkaccess) -> {
return (CompletableFuture) function.apply(ichunkaccess);
});
kek this is how they pass that btw
a dedicated fucking parameter
what the jesus fucking christ is that
parameter?
function
it's in all of the status things
it's literally the "bring to full logic"
every status work function has that parameter
yeah but thats basically saying do nothing isnt it
well no other status uses it, it's just a hack so that FULL hooks into the system
if (ichunkaccess instanceof ProtoChunk && !ichunkaccess.getChunkStatus().b(chunkstatus)) {
((ProtoChunk) ichunkaccess).a(chunkstatus);
}
return CompletableFuture.completedFuture(Either.left(ichunkaccess));
};```
This is why
it defaults to that if you DONT specify it
an immovable object vs an unstoppable force
which sets status and marks saving
no no no no I get that there's an override for it
but I find it funny that FULL needs its own special snowflake parameter
I think its liekely "Before work" and "after work" callbacks
and for everything before full they want to save
no these callbacks aren't that
they're work functions
one is the async work function
the other is the sync work function
but for FULL they needed to add a paramter to these functions just to pass the actual function required to bring the chunk up to full
no other work function has its own special snowflake thing like that
if (chunkstatus == ChunkStatus.LIGHT) {
completablefuture1 = this.b(playerchunk, chunkstatus);
} else {
completablefuture1 = chunkstatus.a(this.world, this.definedStructureManager, this.lightEngine, (ichunkaccess1) -> {
return this.c(playerchunk);
}, ichunkaccess);
}
return this.c(playerchunk);
ya
then fuck yeah we can jump all those stages pretty easy now I see, if result from .f() is full, and desired ticket level is full,
do
this.chunkDistanceManager.a(TicketType.LIGHT, chunkcoordintpair, 33 + ChunkStatus.a(ChunkStatus.FEATURES), chunkcoordintpair);
Then call this.c(chunk)
oh and would need to set every statusFuture too
the result
if we really wanna go go go fast we just need to eliminate the sync callbacks for most of the chunk statuses
you know most of them don't do anything but set status
although it really does mess with the big fucking future chain
ugh so dumb this system
we really do just need to rewrite this scheduling
that shit's for 1.16 though I ain't touching this on the last days of 1.15
also you got any better ideas for prioritising regionfile io on multiple threads that avoid contention?
so far my solution is just this
+ /* needs to be consistent given a set of parameters */
+ static RegionFileIOThread selectThread(final int chunkX, final int chunkZ, final RegionFileType type) {
+ final int regionX = chunkX >> 5;
+ final int regionZ = chunkZ >> 5;
+ final int typeOffset = type.ordinal();
+
+ final long value = (regionX & 0xFFFFFFFFL) + (regionZ & 0xFFFFFFFFL) + typeOffset;
+
+ return threads[(int)(threads.length % value) - 1];
+ }
and @celest coyote egarding my chunk counts:
yeah and it didnt, restart, log in center of village, immed 2.5k chunks
i was just thinking like 4 queues leaf and do x + z % 4 to pick a queue
but, im wondering if IO not being the best to parallelize in first place makes sense to have multiple IO queues, and instead try to get NBT deserialization off of IO and on chunk threads instead
touching regionfile
compression+nbt i mean
for nvme drives I think they can be used in parallel
and some ssds
although too many threads probably gonna kill latency
it'd be nice to move the deserial async but it has some issues with changes I have
async to the io thread that is
lol...
as I have changes to force recalculate regionfiles when stuff like coordinates mismatch / invalid data
After optimizing on the application design and making it SSD-friendly, the throughput is increased to 100,000 qps, a 4x further improvement when compared with the naive SSD adoption. The secret for this particular example is using multiple concurrent threads to perform I/O. This takes advantage of the SSD’s internal parallelism (described later), as shown in the figure below. Note that multiple I/O threads do not work well with HDDs.
so we need a config for it
ya
HDD's will die with it
ye they'll get fucking nuked
i wasnt aware SSD's even had parallel, good to know. i thought it was faster purely due to seekless
I think we can assume most people run ssds nowadays though
so keep the config at like 2 or 3 by dfl
that graph shows more threads didnt hit dimiishing returns fast at all
so maybe cpu count
but max 6
I'm a bit worried about the high thread counts in general
we got a lot of gen threads, a lot of deserial/conversion threads, adding more io might be a bit of an oofers
yeah but IO isnt cpu intensive
although I really wanna just merge deserial/conversion into gen
diff scope
oh right
yeah i was thinking we could do that, but then 1 conversions gonna stall fuck out of server badly in worse ways than now
but for nvme ssds my profiler told me half of the time was on decompression
thats why i also wanted to move that off of IO
moangs using 4k buffers now, ssd's have 4k pages
so it can read it in like a single request
since many chunks are 4k
hm alright well I am rewriting the regionfile io thread
so I'll try and figure out a way to get compression off of it
I only work on windows
vm environment is really really bad compared to windows
can't bench
so checkout paper on windows too?
paper on windows is too slow
whats diff on your fork?
you know i pulled that patch right and cut like 70% of the time
might be better
but I need a fast patch
tuinity being emc based has a dirty patch
but I moved it to being patch fast
? whats different
not patching all spigot/cb
huh?
oh yeah. i really wanna move papers for that 😦
basially the dirty patch we where talking about a goood while ago, only apply the paper patches vs the whole stack
but would have to get others being ok wit hit
hmm that could work, and PAPER_DEFAULT_FAST=1 😛
but yeah paper scripts too slow for me on windows
also I can't dev branch properly on paper
literally i dont know if any reason to not use fast outside of newbies checking out and not running up first
as you guys don't have GH actions
or not rebuilding up on pulls
so I'd need to manually build the jar and upload
tuinity has GH actions so it autobuilds on dev branches
well, i more meant do it in tuinity if you want, just dont go "lets put this dependent commit iinto utils patch" you sometimes do lol
which then cant just simply pull patch file
like your move stuff you put those new movement methods in there so cant easily port those
i wanted to get them from ya tomorrow though
need to
and yeah big scope items should be their own ticket
because merging from master -> dev gets difficult
my working dirs just been locked for past 5 days lol
I threw the move stuff into master to make the merging easier
I also use those methods outside of the dev branch
some of them
btw, that sync load when async chunks is off, it didnt even occur to me what you meant was wrong with that until i relooked at it. i fixed it in this latest commit
about passing gen to "flag"
probably gonna keep it :>
sync loading for async is not my kind of liking
in general
I plan on nuking getAsync methods too
though ugh now we just talked about diff of loadChunk that wasnt best for using it for that now i see
I have other getAsync methods
they need to be merged into one
you can see one of them was one that had a gen flag
but I can't replace the one we have due to something
was it abi or what I don't remember
oh right
I also need to add a mojang "loaded" flag
i did help plugins using paperlib for now though, by making .getChunkAtAsync API have a slight priority boost, so it wont be behind all chunks loading for player
currently it has gen flag, and "bring up to ticket level" flag
yeah that api should do that
well we def need to use futures over callbacks
callbacks are fine in my mind :>
it doesnt handle exceptions, and harder to chain
the current path i can at least say doesnt 'leak' exceptions
the real reason I use callbacks is because the executing thread is always defined
and it's easier to deal with callbacks as it prevents you from being a lazy fuck and chain chain chain
if you fire a callback in a futrues response, its still undefined
then javas gonna get async await in 15 years and we will still probably be here and your callbacks will suffer like eveyone on nodejs did
although futures are nice in that they're easier to actually tell what executro to use
but for callbacks I always add some completablefuture method...
just gotta use biconsumer to pass the exception
just use futures, the main issue with them is mojang fucking up dropping exceptions, just dont fuck up and they work great
too easy to forget they drop exceptions
and easy to do .join() too
and by using a callback
we don't need to deal with it catching thread death
well that's why I provide future API
except for getchunkatasync, cuz the api was the future endpoint
in general completablefutures are a lot more complex than those callbacks
and have gotchas
I like to keep my threading simple
actually thats a good idea, we can intercept final response and catch thread death there
though the future fires on main, and main is dead
so no worries there lol
i meant in that its an ok thing
keep them at the api level
the goal is to ensure no code can continue running
should just spam stop until it dies tbh
the double tap never fails
um, i tried /giphy big fucking guns. very sexual results ....
good thing my email groups
oh man i havent even looked at my email
lmao
14
serves you right
16 here
also do you have any grudges against using an enum priority instead of int
least gmail stacks
yeah I'm going that far into rewriting this
well I added more
URGENT, NORMAL, LOW
but the question is about enums vs raw int
i would prefer enum, you can use .id() to get numerical value
SUPER_IMPORTANT, NORMAL, LOW_LIKE_LEAF
kek yeah should do that
i tell you my brain is warped with the priority inversion
fuck I fucked up so many impls thanks to that
mojang uses lower = higher too
I remember when I initially wrote the damn thing
but in my code I least did higher = higher, 30 - priority
setting to a higher priority broke the queue
because it had the wrong check and it refused to poll
in general moving a lot of stuff into the actual queue object now
i.e flush
and executeNext
what do yyou think about a chunk GC to go collect unloaded chunks that have no loaded neighbors
definitely a scheduling rewrite thing
well that's probably an error somewhere
the caches
agreed but i have no idea how
those partially genned chunks have high memory use
yeah those too
but it's definitely a scheduling issue
as we need to ensure it's not in use
and mojang doesn't even do that shit when unloading
but im also suspecting when we load full chunks, do we have proto chunks on all the previous futures?
no, we don't load neighbours for full
except for the 1 radius for light
but yeah those proto take up memory
no i meant one that is actually at full
in memory dumps it seem,s like a lot of futures with ProtoChunks still
oh
no there's no protochunk for the one on disk
unless you count protochunkextension
which is a read-only wrapper of Chunk
wht about frresh gen, id imagine on full, it should go overwrite all statusfutures to the latest state
people gave me some dumps a while ago
i dont think it does that
protochunkextension is the memory issue
yeah thats what ive seen
we needa conditionally unload those fuckers
but can't due to scheduling issues
we dunno if a gen is in progress
well, we now have record of what neighbors are dependent on us now 😛
we do now
from my work
not strictly
unless you fixed that
when a status is cancelled via ticket changes it just completes the future
so we can't use that to determine if it's not genning right now
if its cancelled its not needed?
could be running
because mojang is real intelligent and doesn't actually prevent that
well if we do it as a main thread "task"
it guarantees the thread pool isnt operating on that chunk.
hmm, i guess my records are cleared when it finishes loading, not finish 'using'
yeah this is a scheduler rewrite issue
also adding
public PrioritisedTask poll(final Priority minPriority, final Priority maxPriority) {
``` to the rewrite
should make adding an urgent thread ez pz
you know something my version had would prob be good for you to do is .cancel() on tht returned object
in general I'd prefer your entire old system compared to mojang's new
in my 1.13 system i held something like ka chunk holder of pending loads, and could abort them when you leave view distance
we could add on entity ticking etc easy
without the 10000 issues of this new dumb system
im worried the mailbox system makes my old one not possible
if we touch the scheduler
too much back to main to mutate state
SO found out i can make a GTA server as well after looking at the FiveM site fuck me im getting too deep into the hosting server life 
I really don't want to figure that system out tbh
too damn complex
see that empty method on 454
u cut the lines
ffs
ChunkMapDistance.this.k.a(ChunkTaskQueueSorter.a(() -> { // CraftBukkit - decompile error
}, i, false));
but yeah I see the empty callback
idk wtf that shit does
I think it kills the task
that like "clears the queue"
yeah
although when I copied the code
literal copy paste job on that method
it didn't throttle
its actually not a throttle
its a priority, it uses the priority flag based on distance to nearest player
j = dist to player
but doesn't that schedule set priority?
so 0 distance = urgent
ya so idk how it failed to throttle...
that thing there handles throttling from my testing
well it throtttles in sense of ensuring closer chunks are higher priority than farther chunks
when you have tons of players on
well throttle as in rate
the farther are behind the queue from each players nearest
it added in the order just fine
but it just did all of them at once...
so idk man I don't wanna touch a system like that
especially if we can write something simple using the tools we already have
yeah i think best to make entire own class
send order was great in tuinity
client bugs out so fucking bad
except for the fact it sent all at once
what did you do for send?
another thing i want to try to do is if any chunk is at urgent level, "re-enqueue" any non urgent dependent chunk task when it tries to run
to keep the threads free
we can probably deal with that by design if we use our own queue
as it'll just hook raisePriority or whatever I called it
switch to internal for sec
aww
aikar leaked channel names again 

Discord shows everyone all channels through API - just hides in the client ones you don't have access to.
do you guys create your own gitignore or use a more exhaustive gitignore from https://github.com/github/gitignore or somewhere else
I have simple git alias that downloads gitignore from gitignore.io
git aliases | grep ^ignore
ignore !gi() { curl -sL "https://www.gitignore.io/api/${*}" >> .gitignore ;}; gi
.idea/
.gradle/
build/
``` the only one youll ever need for gradle shit 
What about !gradle-wrapper.jar - since you usually have *.jar ignored too.
no
only those 3
if you use intellijs build or eclipse or smth, i do not care about your contributions to my repos if you somehow manage to commit their shit
There a reason why MineOS is a thing? Wouldnt it be better to just run Ubuntu?
it would indeed be better to just use your preferred distro
I really wonder how light is ubuntu is compared to windows.
Let's put these new chunk changes up against PlotSquared in a bit 👀
Appreciate the work either way aikar
maven is hard :(. I don't understand the build section at all
you will get there
Alright so I managed to compile my project. Anyone know how I would include a dependency in my jar?
do you just want to depend on something (eg. paper api) or actually include it in the jar (eg. PaperLib, which should be shaded)?
if you actually want to include it, then look for these keywords: shade plugin, shading, uber jar
actually include
relocation
oh okay that's what shading does
you might want to ask any further questions in #paper-dev in case someone gets triggered by this misuse of #general
well it's just a general question. I'm not working on minecraft stuff
It's actually called shadowing. It puts a copy in your jar. Maven's plugin for shadowing is called shade. You'll want to relocate anything you shadow in case something else has shadowed a different version.
Oh okay. I'm a bit confused about the relocating part though
Relocation just puts your copy in a different package, so differing versions don't collide
Let's say another plugin shadows an older (or newer) lib that you shadow, and it loaded first. When your plugin tries to use that lib it will error because of the version mismatch (methods change between versions, etc). The jvm won't load both versions, only the first one it needed
just relocate in native source and compile & package that :p
is there a naming scheme for the destination package? or can it just be a random package name
or lol.x.d
👍
what if someone has 2 plugins of yours that both shade the same lib but with different versions? :p
oh Im guilty of that too, I shade it before the plugin name package as well
😠
if you had 2 plugins on Github/spigot/whatever that both used the same libs, they would still clash
ah okay
blame the cutoff
sounds reasonable
well, it's the obfuscators that do that cancer
the snowmen are still the best tho
So I'm using travis ci for the first time. Is there any specific I have to do in the .travis.yml for my project to build?
depends with what jdk and whatever you want to build
else language and jdk fields are enough
and 'dist' I think? not sure if that defaults
Pretty sure dist defaults. I think even just a language is good enough in some cases.
got a project with 420, never to be updated again
or rather a fork updated somewhere else now
Very nice
get it to 6969 kenny
alright see you when I'm 69
ah the 420 commit was also removing lombok from the project, so that was a doubled yeet
Ughhh I hate making Spigot bug reports
It's always a bad time
Anyone got the output of latest Spigot version's /version by chance lol?
Last I checked they close issues with Paper listed, and BuildTools doesn't work for me
nobody here uses spigot 
mnyeah but if you work on a plugin where you kinda want to have spigot support
WorldEdit/Guard in his case
essentials actually i believe
just write "aight listen up here yer kangaroo fecker, if ye don't fix this ASAP I'll make me plugin Paper only"
oh wait I forgot you're also a kangaroo fucker
damnit
why is everyone Australian D:
ahh i forgot making my jenkins archive the artifacts for spigot
city you'd fuck your monitor if it had a hole in the middle of it
Does Paper also have that stupid-as-shit "max max health" thing Spigot does?
probably yes
Does Spigot actually have unit tests or something
I never thought about that
But with the amount they break, I'd be shocked if they did
dunno if i understand exactly what u want tho
they've got tests for like the most useless of things
Ah, yes. The "Yeah we have tests" kind of tests. The ones that just check the metric of having tests
Ahahah
umbrella academy very interesting...
there are some unit tests
like to check that bukkit and server interfaces are mirrors
or like my amazing unit test for the mob goal api 😄
that checks that all vanilla goals are in the api
See now that sounds like a useful unit test
https://hub.spigotmc.org/jira/browse/SPIGOT-5751 But like this issue is 100% one that's not dependent on MC behaviour, just Spigot stuff. So unit tests would've picked it up
We have tests. They just are not implemented.
in other words
You've heard of TDD? Now get ready for P2GDD. Pray 2 God Driven Development.
What
What
What
well I'm extremely upset. I lost one of my airpods
On the bright side you can now experience mono-channel music in the way it was intended to be heard
i think the best kind of wireless is the one where theres still a wire between the 2 earbuds
if you move the one back in forth into each ear 24 times a second you cant perceive any difference
just link the pods with a cable so you won't lose them again!
just by cheap stuff so that it won't matter!
kennytv more like stinkytb
children
Who do you guys use for graphical work like banners icon and such?
Kenny more like upside down guy
ourselves, a friend or i dunno, fiver maybe
I don't trust fiver that much
What a solution
still upsidedownist I see >:(
Nirvana more like closetbully >:c
that's the wrong upsidedown
Oh

updating
can any one help
did you try googling?
that wouldn't be upgrading, it would be just converting the map.
this is paper help, not general mc support
yes
even nvidia has a conversion guide, just know how to use google lol
.g minecraft java world to bedrock
(DiscordBot) https://www.nvidia.com/en-us/geforce/guides/minecraft-rtx-world-conversion-guide/ -- Minecraft World Conversion Guide, For Bedrock and Minecraft...: "Apr 16, 2020 ... Follow our unofficial Minecraft with RTX guide to convert your Minecraft Java worlds to Minecraft Windows 10 Bedrock edition,..."

wasn't that hard was it haha
i got banned from there when i asked that
you were banned from google?

no minecraft discord
i highly doubt the official MC discord banned you for asking
theres more context you're conveniently leaving out
legitimately can't tell if too young, foreign, or retarded
retarded
Does anyone actually watch The Great British Baking show or do you turn it on in the background to fall asleep to
I used to, cos there was nothing else on
@fallen oracle that is my life right now
Britain's Smallest Pies?
if i give you the map will you convert it from java to windows 10
no
(DiscordBot) https://www.nvidia.com/en-us/geforce/guides/minecraft-rtx-world-conversion-guide/ -- Minecraft World Conversion Guide, For Bedrock and Minecraft...: "Apr 16, 2020 ... Follow our unofficial Minecraft with RTX guide to convert your Minecraft Java worlds to Minecraft Windows 10 Bedrock edition,..."
its to hard\
not really
just follow the tutorial
it's fairly clear
there's probably a youtube video
i need a video expaining how to do it
I'll convert your java world to bedrock for 1 0 bucks
mini 
For you it's 15 Michael!
ill do it for 9.99
.-.
Man's gotta refill his crates
4.99
4.98
smh my head
4.98 = low quality
I would just use chunker because am lazy like that
ok
those are the perks mini
that is living the dream
i should probably sign up for it too
Exactly 😂
i'll pay $5
waddafuq
i'll take 5 bitcoin
just go and read the article, or any other thing you find on google
^
^^
--->
just go and read the article, or any other thing you find on google
W
now you still pointed to the message, mini, hah!
No I didn't
Okay, now to convert this in-memory world crud to direct buffers

kicked?
k banned i guess
wait so can we ping wiz in case of moderation needed and everyone else is dead?
do it then finger cross and prey 
good stef 👍
Why don't they give him a role and disable ping for that role?
you can't
you can
no
you can't
you can't turn off pings for yourself
you can't
only for roles
you can turn off pings for yourself
no
is plugin.yml re-read on reload?
in notification settings
tell us how
That doesn't stop the ping
we've been over this shit a million times
notifications is something different
please stop being retarded thanks
if a little red button annoys you then it's a separate issue
^^
The noise is only part of it
also yes, he's banned because he decided that https://i.imgur.com/hlaqWFv.png would be hilarious
wrong channel whoops
The annoying unread thing and the fact that it still highlights text is annoying af
that seems to be a you problem
agreed
it's pretty annoying actually
noise and some highlight are very difference
isn't turbotailz the luckperms web developer?
yes
its very annoying
that's not a "you" problem
it does get pretty annoying
that's a problem, period
same with how discord blocking is shit
at least for me, the coloring of the highlights makes it harder to read
I mean if wiz didn't get so annoyed by people doing it... people wouldn't do it
dor, it's about to be a you problem if you want to argue about it
devil's advocate
Which, you know...
you seem to be the only one not thinking that dordsor
no, being an asshole for the sake of being an asshole isn't welcome behavior
there's various opinions on how wizjany handles annoying fuckers that ping him
but in the end
pinging him knowingly for no reason just to bother him is just retarded
I mean is it childish? Sure. Does it mean you need to get that annoyed be it? Absolutely not.
don't think dord knows who wiz is
you clearly aren't getting pinged enough =^]
I know exactly who wiz is
alright seriously this isn't up for debate
dunno why we're arguing about this
its just a meme
unless moderation is needed
dont ping the wiz!
😂
It's poking the bear isn't it. People poke him cos it annoys him and they find it funny.
thats why they get banned


I don't like you then
and non idiots alike
lmao he kicked me from IS
Did dordsor21 just get yeeted as well? :cold_swet
lol
That fawe thing
international space obv
that fawe p2 thing
wiz confirmed terrorist
Wb
I banned you from IS cos I'm tired of you wiz
boo hoo
You've never offered anything useful there anyway

oh he was only kicked 😢
Michael r u ok
amazing actually @viral hornet thank you
i am watching cowchop
you weren't
eating peanuts
wat no you don't, viper
watching paper drama
1.8-1.12 support completions too
Paper drama is always exciting
just don't use brigadier?
1.12 has tab completition does it not
it's just an ugly list in chat
instead of the nice new ui
yea i mean, don't activate features on unsupported platforms
ezpz
imagine removing features because of outdated versions :aaa:
just give commands their proper perms
Please tie completions to the permission for the love of god
vanilla isn't really designed around sub permissions
step 1, use acf
step 2, it handles it for you so profit
if you're going to be doing anything other than a couple non-nested commands, or maybe one or two one-level nested commands, go ahead and use Bukkit's system or whatever
but I'm telling you now, you will go insane if you try to deal with Bukkit's outdated insanity
that seems nice too
no idea how to use it
wanna know a secret?
they don't
what's actually happening behind the scenes, is every time the plugin checks permissions, it zooms it over to Lucko's computer and he checks your permission settings and the permission needed
I can confirm this is true

Going to be reading this alternate history, hope it's interesting. https://www.amazon.com/dp/B0861Y8ZCF/ref=pe_385040_118058080_TE_M1DP
any body here using fabric?
how can I run a fabric client from IJ with debugging that actually hot swapps?
if I launch via gradle it doesnt seems to hotswap
now it did
strange
they come with a run config
i forget the task name but it gens a client and server config
runClient
yea i guess
I've never seen the map from that side, the number of villages on the map is impressive
cool, I didn't know that
i'm not used to playing with a worldmap or having a dynmap
try AMIDST ;)
I used mineAtlas but it didn't appear that much 😂
huh, i've never played with a world map or dynmap
then again i can count servers i play on one 1 finger
in general the amount of villages in a snowy biome like that
is insane
i've come across so many of them when i was playing on an smp a few months ago
dungeons are way too common tbh
i've come across 3 dungeons in the last 6 years maybe
always at least 1 or 2 in your area
ok but that's literally cheating
it's allowed where i play on, anarchy
true
i find alot of dungeons in spectator 
i find a lot of dungeons with xray
uses xray
yeah why wouldn't i
307 is good barty
poor dynmap
le'ts move ehre
?
from #paper-help
Big Linux conversation in #paper-help moving here as it's the offtopic channel
using dynmap lmao
rest bad
But yeah, I'm 90% Linux-only now. Not in school now, so make that 100% Linux usage.
i have an issue with arch right now actually
keyboard doesn't respond after x minutes
Overviewer
I specifically asked you not to.
dynmap doesn't hurt performance that much
you can have dynmap without the dynamic map aspect
that much
ok so how do I render dynmap on a different machine than my Minecraft server is on? 
you don't
see
well actually
Only thing I really care about is
- Map that's kinda recent (a week old is completely fine)
- Player position
- Warps / homes
you can
I could do that in overviewer but no htanks
then just render overviewer once a week ¯_(ツ)_/¯
ok so how do I render dynmap on a different machine than my Minecraft server is on?
@mystic peak616#0000
Easy...
I do it once at night because more is just not worth it
also can you render multiple different server to the same website with dynmap?
no iframes are scuffed
hell no

wat
wait, it uses a database for file storage? Oo
it can yeah
I hope it's mongo or redis, lol
wtf
also why the fuck would it use redis
this is why you setup your own server






