#dev-general

1 messages · Page 521 of 1

obtuse gale
#

mood

frail glade
#

I'm loving my new job but it's just a lot of work.

cinder flare
#

bois I'm gonna cry

quiet depot
#

okie

#

have fun

cinder flare
#

Taco Bell changed their hours from closing at 1 am to closing at 11 pm

#

oh

quiet depot
#

that is a big oof indeed

cinder flare
#

I rolled out of bed thinking I could still grab a nice crunchwrap supreme

#

and I drive over and see the lights turned out

#

imagine my sadness when I had to go to Del Taco instead smh

distant sun
#

Or anything made by vk :)

unreal jackal
#

Hello!

prisma wave
#

Hello there

jovial warren
#

it breaks on line 24

#

I've literally tried everything I swear

dusk holly
#

🇱🇷

jovial warren
#

if you change both the generics to ?, you get a "Required type: capture of ?, Provided: capture of ?" error, if you swap the hasType to be checked on the inputType, you get an error at line 27, and if you change both of the generics to Object, that fixes the cap code, but then you can't pass in the arguments, since findChoiceType returns TaggedChoiceType<?>

steel heart
#

BBG can you explain that declaration site variance again thing y

jovial warren
steel heart
#

Isn’t that just the kotlin extends and super

jovial warren
#

pretty much, but it gives you a good idea of how it works in general

steel heart
#

So just without wildcard?

dusk holly
#

in out

jovial warren
#

no wildcards in Kotlin

old wyvern
#

<*>

steel heart
#

But that’s what this declaration site variance is about or did I get it wrong

jovial warren
#

that's not a wildcard @old wyvern that's a type projection

#

they do similar things though

old wyvern
#

A star projection is equivalent to blank wildcard

jovial warren
#

oh also, you able to try and help me with my issue?

old wyvern
#

Sure I can try

#

Whats your issue?

jovial warren
#

scroll up, look for the mention of MC dev and a link

old wyvern
#

Alrighty, one moment

old wyvern
#

Unexpected execution? Syntax error?

jovial warren
#

read the message under that, about the generics stuff I tried

#

hasType requires a key of type K, which is the type of the input choice type

#

and that pair is a Pair<InputTypeKeyType, *>, and we need to return a Pair<OutputTypeKeyType, *>

prisma wave
#

what on earth

jovial warren
#

what

old wyvern
#

What does hasType do btw?

#

Can I see the implementation

cinder flare
#

hey bardy wanna come help real quick

old wyvern
#

@quiet depot hes back

cinder flare
#

@quiet depot ❤️

half harness
#

wat

static zealot
#

oh shit

distant sun
#

Boom

gusty glen
#

Wait, Spigot applied mojang mappings, correct? Are these mojang mappings only for classes and packages, and not fields? :/

#

When will we get rid of this shit?

merry gate
#

Hello, im currently trying to programm SmartHelp, to send the player any close commands as a help, with the Levenstein algorythm, but i dont know how to get 5 unique values with lamda? My current code:


        hashMap.entrySet().stream().filter(integerStringEntry -> integerStringEntry.getKey() > 100).sorted(Comparator.comparingInt(Map.Entry::getKey))..forEach();
steel heart
#

Doesn’t the stream api have a function to limit the amount of elements in it

#

Or if that’s what you wanted

quiet depot
#

.limit

ocean quartz
merry gate
gusty glen
ocean quartz
#

Yeah legal stuff

gusty glen
#

couldn't they ask for permission to do that directly to mojang (microsoft) though?

#

(idk if they already tried)

ocean quartz
#

Md made a meven plugin to make it so you can write plugins with the deobfuscated version, but well maven
Paper is going to have one for gradle

potent nest
#

Spigot uses mojang packages, Spigot class names for existing classes and mojang class names for new classes, Spigot method names and obfuscated field names

indigo bough
#

hey, does this plugin work on 1.17?

half harness
#

what

static zealot
lunar cypress
#

this plugin

static zealot
#

lmao

half harness
static zealot
#

oh this one. my bad

static zealot
lunar cypress
#

D:

half harness
#

lmao

lunar cypress
#

too far

static zealot
#

I am the only one allowed to evlove

#

evolve*

lunar cypress
#

the old pfp was getting stale

#

also you had to watch it to make sense

indigo bough
static zealot
#

it will probably still work. I Didn't test it tho

indigo bough
#

ah ok thanks

forest pecan
#
[12:40:36] [Server thread/INFO] [STDERR]: [crazypants.enderio.base.config.recipes.RecipeFactory:copyCore_dontMakeShittyCoreModsPlease_thisIncludesShittyMixins:239]
#

you gotta love enderio

ocean quartz
#

Lmao

obtuse gale
#

gotta love @forest pecan

forest pecan
#

I luv u

obtuse gale
#

then give me tiers so i can screen share

forest pecan
#

i cant daddy 😓

cinder flare
#

pulse why aren't you in here

ocean quartz
#

Yeah pulse

static zealot
#

where do I find the settings to export them again? (intellij)

#

also is it possible to export settings for plugins as well?

jovial warren
#

Spigot didn't apply Mojang mappings

#

Paper is using Mojang mappings

#

they repackaged everything to officially mapped packages, but they're still using legacy mappings

ocean quartz
jovial warren
#

oh Spigot actually use official mappings now?

ocean quartz
#

Yeah

jovial warren
#

fucking finally

#

yeah these aren't official mappings

#

yeah no

#

these aren't official mappings

#

Paper is using official mappings, Spigot isn't

ocean quartz
#

I am pretty sure they are
@obtuse gale back me up

jovial warren
#

that link I just sent to the Bukkit csrg is Bukkit mappings

#

I can just tell, the data fixes aren't prefixed with DataConverter, they're suffixed with Fix

obtuse gale
jovial warren
#

ah right

#

yeah that makes sense

#

afaik Paper is using official mappings for everything now, they're remapping all the patches

prisma wave
#

tuinuty is using deez nuts

jovial warren
#

lol

#

Tuinity will probably take ages to update, since leaf likes to do extensive testing before pulling Paper changes iirc

distant sun
#

Fuck lead, I need tuinity fast

rotund egret
#

I'll give you a jar named tuinity that just spams "cheeseburger" in chat if you want

jovial warren
#

can anyone gimme a hand with decompiled MC dev stuff btw?

#

I asked this earlier and got nothing lol

rotund egret
#

That seems pretty broad

jovial warren
#

lemme send the class

#

and describe the issue

prisma wave
#

stack new tunity2

jovial warren
rotund egret
#

Is param2, always going to be of type K in this instance?

jovial warren
#

param2 is of type TaggedChoiceType<?>

#

I kinda know what the issue is, just not sure how to fix it

#

looking at the bytecode for this tells me that the decompiler hasn't really made an error here either

rotund egret
#

This is an aspect of Java I've never personally understood.

#

I think it's in reference to type erasure? I might be off the mark with that though.

jovial warren
#

I can send the bytecode if that may help

rotund egret
#

it may help someone that isn't me lol

jovial warren
#

@obtuse gale aren't you generally quite good at debunking whacky generics issues?

rotund egret
#

Wanna send the bytecode for the luls? I'm curious

jovial warren
#

I'll send the output of javap

old wyvern
#

An easy solution would be to not capture the type

ocean quartz
#

Classic

old wyvern
#

raw type should allow you to handle that

#

@jovial warren

jovial warren
#

ah

#

forgot to mention something: I'm converting this to Kotlin lol

#

it's so weird though, since the bytecode says this is what it actually is

rotund egret
#

Yeah that doesn't seem right, I didn't think types were passed in bytecode.
My understanding was that they were available during compile, but not runtime? Something along those lines

jovial warren
#

they're not available to use at runtime, but they are stored in the class files

#

how do you think things like Gson's TypeToken (which preserves generic types for runtime use) work?

rotund egret
#

I don't use Gson TypeToken, so I couldn't say, but you'd know better than me

simple viper
#

@kindred hatch

#

Please dm me 🙂

jovial warren
#

lol

obtuse gale
old wyvern
obtuse gale
#

yeah it forces you to

jovial warren
#

you got any ideas here btw emily?

obtuse gale
#

no idea, i don't have time rn

jovial warren
#

oh btw, can SomeType<*> be casted to SomeType<Any>? or will that fail? because the compiler seems to think that * = Nothing rather than Any

old wyvern
#

Does the second parameter need to be a wildcard?

static zealot
#

this is what I wanted to see

#

fuck yeah

ocean quartz
#

Mood

jovial warren
old wyvern
#

Capture the type instead

#

What type did hasType need?

#

K?

jovial warren
#

yes

old wyvern
#

Yea then specify both of them to capture K ig

jovial warren
#

if I make them both TaggedChoiceType<K>, then we get errors again

old wyvern
#

oh? where

jovial warren
#

14

#

it wants two Ks and gets two capture of ?s

#

findChoiceType returns TaggedChoiceType<?>

old wyvern
#

oh nvm

#

hmm

#

What does it do?

#

findChoiceType

#

show impl

jovial warren
#

idfk

#

it's OS

old wyvern
#

link

jovial warren
#

any ideas?

#

@old wyvern

old wyvern
#

I think your earlier solution of casting to Any as the generic would be the only solution in kotlin

#

There isnt any other way to ensure two different wildcard captures are of the same type

#

And in that case you can change the K in the other methods and just replace them with Any

jovial warren
old wyvern
#

Yea it shouldnt fail

jovial warren
#

alright, thanks

old wyvern
#

Thats the only equivalent of rawtypes i can think of in kotlin

jovial warren
#

we'll see later lol

old wyvern
#

lol

#

Its not nullable right?

#

If it is, dont forgot to use Any? instead

jovial warren
#

idk whether it's nullable or not, shouldn't be

#

it's just ?

static zealot
#

wait essentials has an API?

obtuse gale
#

yes?

static zealot
#

for some reason I always thought it doesn't

#

lmao

#

tho I could have always checked the github but didn't

frail glade
#

@visual falcon You were one of the people having issues with the ping placeholder on 1.17, right?

frail glade
distant sun
#

Is possible to display more than 64 items on a GUI? I tried to set the maxStackSize of the inventory to a higher value and it still displays 64

visual falcon
frail glade
#

Beautiful.

#

Will release a development jar soon then.

distant sun
#

That will be 25€ sir

visual falcon
#

Now just waiting for ProtocolLib... Surprise they dont have a discord.

static zealot
#

they're working on it

#

the dev posted an issue on github. but said it will take a while

distant sun
old plover
#

has 1.17 fixed any of the performance issues with servers from 1.13+?

cinder flare
#

I mean every version since then has been a small improvement

old plover
#

yeah

cinder flare
#

1.17 spigot is still very early so not likely to be great

#

afaik paper 1.17 isn't even out yet

#

so give it a bit

old plover
#

but like is it as good as 1.12 and versions prior or still worse?

cinder flare
#

I mean I'm not sure, 1.16 was not too bad for an SMP I was hosting

old plover
#

yeah paper 1.17 isn't out yet I'm just wondering for the future

cinder flare
#

but wait 'till Paper comes out and then we'll see some real performance

boreal needle
#

nobody knows until it actually exists

old plover
#

yeah I ran a 1.16 smp for a bit as well and it was pretty good, just i know performance in general has gone way down since 1.12

old plover
static zealot
#

@quiet depot so I'm back at trying to install a driver for my nvidia graphics card. I've tried using sudo ubuntu-drivers autoinstall
and this is what I get: https://paste.helpch.at/usijekoqaf.coffeescript

I assume this is what's going to make it not look right. any chance u know what it means? google doesn't really help (talking about last 4 lines)

cinder flare
#

hmm

#

are you using the proprietary nvidia drivers?

#

or the open source shitty ones

static zealot
#

well I'm trying to install the propietary one

cinder flare
#

hmm

static zealot
#

but gimme couple minutes. it looks fine now. just need to check it actually installed the proprietary ojne

#

one*

cinder flare
#

have you considered Pop!_OS

static zealot
#

nope

cinder flare
#

well you should!

#

very likely to work out of the box

static zealot
#

or maybe I shouldn't

cinder flare
#

best experience I've had, though Arch is also nice

frail glade
cinder flare
#

awe yeah SuperOof

#

my favorite plugin

frail glade
#

Boutta do my 1.17 support 😛

cinder flare
#

for superoof? haha

frail glade
#

Yeah. I do it for fun each major version change.

cinder flare
#

awe I love that

old wyvern
#

What does it do?

cinder flare
#

oh man you didn't even accept it, I'm not even listed as a contributor!

#

very sad

frail glade
old wyvern
#

lmao

obtuse gale
#

man I'm starting to question mojang mappings 🥲

#

Fabric Yarn: Text message = Text.of("Simple and immutable text component");
Mojang: Component message = Component.nullToEmpty("Simple and immutable text component");

frail glade
obtuse gale
#

Lol the description for that is sad

#

“have yet to see one that will work with offline players, simply because you can't.”

old wyvern
#

Can statistics be fetched for offline players now?

frail glade
#

Some of them can, yeah.

frail glade
old wyvern
#

Ah

frail glade
#

I wrote that project before they implemented the ability to get it from offline players.

old wyvern
#

Yea, makes sense

frail glade
#

So a few years ago I wrote this https://github.com/guilds-plugin/AnnouncementUtils and it's what I use to generate my changelogs for stuff. I was planning to rewrite this in WPF and was wondering if anyone had suggestions on what would be cool to put in it.

#

I'm going to abstract it from just guilds-focused to allow more people to use it.

old wyvern
#

Whats WPF?

frail glade
#

Windows Presentation Foundation

old wyvern
#

😮

frail glade
#

It's the replacement for Windows Forms.

static zealot
#

@half harness

#

...

#

if only I could keep this

old wyvern
#

I see

static zealot
#

but this is how my screen looks...

#

ffs

old wyvern
#

Maybe custom formats and placeholders in the announcement

obtuse gale
#

As long as bungee and ip forwarding was enabled

frail glade
#

Yes but you couldn't get statistics of an offline players from the server data until like 1.15

old wyvern
#

It didnt fetch the statistics at some point back

#

Yes

frail glade
#

Maybe 1.13

obtuse gale
#

Why store in statistics?

old wyvern
#

What about actually auto sending it too

frail glade
#

I think he's missing the point there.

#

Ooo I like that Yugi

obtuse gale
#

I’m just wondering

static zealot
#

holly shit

old wyvern
#

Theres no reliable way to fetch those statistics that bukkit stores in some older versions

obtuse gale
#

Yea I’d never use that rigged shit that’s why I don’t know. I’d store my own player time in memory lol

old wyvern
#

You have to manually parse the saved statistics data if you want to do that, which is quite tedious

prisma wave
#

finally back on X

#

gave up on wayland

old wyvern
#

XMonad?

prisma wave
#

i wish 😔

#

i3 for now

old wyvern
#

😔

prisma wave
#

apparently xmonad is only worth the trouble if you have a really specific setup that you want

#

and considering how much i dislike configuration that doesnt seem right for me

old wyvern
#

ah

cinder flare
#

You're only in it for the clout

prisma wave
#

NOT TRUE

flat egret
#

Hi, I'm tryna learn Java on my own. where can I do it for the best experience? I will take my time for it, and can put 6-7 hours a day in it.

forest pecan
#

?learn-java

compact perchBOT
#
FAQ Answer:

Online Courses:
Online courses are also great for learning java. Some websites that offer them are:

  • Coursera - Free unless you want a certificate
  • PluralSight - Great courses from what I've seen. Mostly Paid
  • Udemy - Never used them myself but they seem to all or at least most be paid.
    My first ever course was one from Coursera. - I can say it was pretty good at introducing me to the programming world as a whole not just java.

Oracle Docs:
Oracle docs can help a lot at learning and understanding java:

  • Start with this,
  • Breeze through this (skipping stuff that doesn't seem relevant like bitwise operators),
  • Hit this.
    They're the first three from this larger thing which you should definitely go through overall. But those three should be enough for slightly better understanding of what is happening here without feeling like a huge time sink.
    That one is a small part of this larger site wherein "Essential Java Classes" and "Collections" also have good useful stuff

Other services:
Some other cool services that will help you learn java are:

As you can see there are plenty of good ways to learn as long as you're willing to invest the time. Have fun learning!

prisma wave
#

smh

forest pecan
#

🥲

#

but those are some good sites

flat egret
#

Ite thanks.

obtuse gale
#

.............................

eternal compass
obtuse gale
terse lark
#

can somone help me

compact perchBOT
#
📋 Your paste, mr_rednax
https://paste.helpch.at/ojoloxenob

A member of staff has requested I move your message to a paste,
Most likely beacause it contains a config/error/code snippet.

obtuse gale
#

are you gonna make me point you to the right channel again?

ocean quartz
obtuse gale
#

keksuccino did not distribute the remapped binary

#

that's a rip 🥲

#

One thing I have to credit craftbukkit for is you can tell the version simply by reading the stack trace

#

which is the same reason why we have to use reflection hhhhhhhhhhhhhhhhhhhh

obtuse gale
onyx loom
#

"worked" 🙃

obtuse gale
#

Machine Maker over at paper mega call is saying this md5 remapper does not work for anything other than 10 line example plugins hhhhhhhhhhh

ocean quartz
#

Classic

static zealot
#

I did it boys. I'm using a proprietary driver and it doesn't break anymore

#

thanks to someone in the Ubuntu Hideout

prisma wave
#

Yeah unfortunately the proprietary drivers are usually better

old wyvern
#

Did the paper team finish the gradle plugin?

obtuse gale
ocean quartz
#

👀

old wyvern
#

👀

static zealot
#

omg I can run minecraft browser and discord without the laptop crashing. this is a first

#

on linux at least

ocean quartz
distant sun
#

Gg

onyx loom
#

man dont u love when an issue u have just randomly fixes itself???

distant sun
#

¯\_(ツ)_/¯

junior aspen
#

I have a question and someone might have a answer to it.

obtuse gale
#

Okay

#

Have you considered asking the question or..? whoever might have the answer will not be able to respond without it

steel heart
#

probs a troll

static zealot
#

Man irs 3:35 and am conflicted. I want to sleep but also want to open my laptop and start working on something

frail glade
#

Sleep

static zealot
#

K. XD

#

Gn then

junior aspen
#

Hi

#

😟

steel heart
#

hi

junior aspen
steel heart
junior aspen
steel heart
junior aspen
steel heart
junior aspen
junior aspen
ocean quartz
#

Jesus what have I joined to

quiet depot
#

@ocean quartz perfectly normal civilised discussion @ocean quartz

ocean quartz
#

Ah @quiet depot that's true my bad @quiet depot

forest pecan
#

why isnt @ocean quartz trusted yet @ocean quartz

#

I think @ocean quartz should be trusted because @ocean quartz is a very good canidate

silk kite
#

Hi I’m @silk kite

@silk kite is pretty cool 😎

steel heart
obtuse gale
#

Release 17
😩

#

case null
😮

#

case null, String s
thonking

ocean quartz
#

This is hawt case Integer i -> String.format("int %d", i);

obtuse gale
#

case Triangle t && (t.calculateArea() > 100)
🥵

ocean quartz
#

Now Java only needs a website that wasn't designed in 1992

obtuse gale
#

@ocean quartz please tell me you also think she looks like one of those people in an English textbook

ocean quartz
#

Totally, probably just a random stock photo lmao

forest pecan
#

Do you think the switch statement would be faster for type checking

#

Compared to like a conditional. Like switch statements aren’t better in just readability but also I think it’s a bit faster (at least for previous ones)

#

Either way still kinda hot

obtuse gale
#

I believe that short switch statements with like 3 or 4 possibilities compile to if-else-if chains

#

but larger ones are like a mapped expressions or some shit

obtuse gale
#

lmao

gusty glen
#

java is looking each day more and more like Kotlin

#

though ky when(var) { is Long -> blah() } still better and more readable than kt switch(var) { case Long l -> blah(); }which is miles better than the old switch statement with break keyword

gusty glen
#

Someone PR a JEP for elvis operator 🥲

boreal needle
#

tier 3 pog

cinder flare
#

I'd kill for .?

old wyvern
#

Apparently there was already a JEP for that but they arent going that way

cinder flare
#

bruh

old wyvern
#

😔

cinder flare
#

we just stuck in NPE hell forever then?

old wyvern
#

Not if Elara can do anything about it!!

cinder flare
#

I'm actually learning about compiler optimization lmao

#

maybe I'll make the first elara interpreter/compiler

old wyvern
#

😌

#

We were almost ready to use Rust this time

#

But, the rust equivalent to asm seems to be just as incomplete as the go one 🥲

cinder flare
#

wait wdym

#

Rust compiles to LLVM or native don't it

old wyvern
#

Not that star

#

A proper lib for writing jvm bytecode

#

Writing that ourselfs is probably unnecessary work

cinder flare
#

ah jvm bytecode

old wyvern
#

Are you not in the elara discord?

cinder flare
#

uh, I don't think so

old wyvern
#

Ah

cinder flare
#

you gonna invite me???

old wyvern
#

Sure, one min

neat obsidian
#

anyone know wtf this error means:

> Entry plugin.yml is a duplicate but no duplicate handling strategy has been set. Please refer to https://docs.gradle.org/7.0/dsl/org.gradle.api.file.CopySpec.html#org.gradle.api.file.CopySpec:duplicatesStrategy for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

#

It's from gradle and I cant figure out whats wrong with it.

cinder flare
#

Send a screenshot of your directories

neat obsidian
#

I dont haver perms

cinder flare
#

?imgur

compact perchBOT
#
FAQ Answer:

You won't be able to upload images here directly to avoid spam, so please use https://imgur.com/ to upload images/screenshots.
You can also use a screenshot service like gyazo or jinx and post those links here.

neat obsidian
#

Just set it up, didnt add anything yet

cinder flare
#

open the resources folder

neat obsidian
#

It has a plugin.yml

cinder flare
#

and send your build.gradle

#

?paste

compact perchBOT
#
FAQ Answer:

Paste Services
When asking for help with a config/menu/code issue please use our paste bin:
(we prefer it over pastebin.com)
HelpChat Paste - How To Use

neat obsidian
cinder flare
#

hmm that is really weird

neat obsidian
#

IKR

cinder flare
#

it thinks you have two plugin.yml's for some reason, maybe try removing processResources temporarily?

neat obsidian
#

idk

#

where is that ?

cinder flare
#
processResources {
    from(sourceSets.main.resources.srcDirs) {
        filter ReplaceTokens, tokens: [version: version]
    }
}```
neat obsidian
#

oh ok

cinder flare
#

just remove that temporarily

quiet depot
#

star

cinder flare
#

ye

quiet depot
#

why yaml

cinder flare
#

felt extra colorful!

#

how did you even know

quiet depot
#

yes

#

shmezi try delete your build folder

cinder flare
#

ew groovy is so lame

neat obsidian
#

build folder gets deleted on clean so like kinda pointless

cinder flare
#

I mean just give it a try

#

can't hurt

neat obsidian
cinder flare
#

nice

neat obsidian
quiet depot
#

clean it then

#

doesn't matter how it's deleted

neat obsidian
#

Ofc I did

#

ok, so is that part important then ?

quiet depot
#

the process resources?

neat obsidian
#

ye

cinder flare
#

well it looks like it replaces any mention of version in plugin.yml with your gradle version

quiet depot
#

it'll just replace @version@ in your plugin.yml with the version set in gradle

neat obsidian
#

(trying to switch to gradle from maven )

#

kk

cinder flare
#

so uh, you might have to sync it yourself lmao

neat obsidian
#

thats fine for now ig

#

thanks for the help @cinder flare ❤️

#

gradle is so much faster lol

cinder flare
#

yeye

chilly wind
#

Anyone know how to pass a method to a set a consumer?

quiet depot
#

wot

chilly wind
#
        Consumer<PlayerInteractEvent> onRightClickConsumer;
    public void setOnRightClickConsumer() {
        
    }
#

This is what I'm trying to do

#

Not sure what datatype to pass to set the consumer, do I just send a consumer?

#

Wait that makes a lot of sense nvm

quiet depot
#

Wait that makes a lot of sense nvm
You're not making any sense

#

I think your terminology is a bit off

chilly wind
#
    public void setOnRightClickConsumer(Consumer<PlayerInteractEvent> e) {
        this.onRightClickConsumer = e;
    }
cinder flare
#

why are you using a consumer for an event handler

chilly wind
#

Custom items

#

Structuring a class around it so I can easily add items in the future.

#
    public void onRightClick(PlayerInteractEvent e) {
        if(onRightClickConsumer != null) {
            onRightClickConsumer.accept(e);
        }
    }
cinder flare
#

i still don't get why you'd use a consumer rather than a method or something, or even a new normal class

chilly wind
#

So I can attach a method to the items right click event without having to get to on hands.

#

The idea here is scalability.

neat obsidian
#

ive done the same thing 100 times

quiet depot
#

That's a warning

#

nothing is "not just working"

neat obsidian
#

it literally cant be null tho.

quiet depot
#

the code will compile and execute fine with that warning

#

yes it can be

neat obsidian
#

I hate it

quiet depot
#

if the command wasn't set in plugin.yml, then it can be null

neat obsidian
#

can I remove the warnning ?

quiet depot
#

press alt enter and select the disable warning action

#

only disable it for that line

#

or you could do the Objects#requireNonNull thing

#

also little quick pro tip

#

if this is a public plugin, you should fix up your package, you need the project name in the package otherwise it's not unique

obtuse gale
#

If you use a consumer type system right with events you can make a more efficient wrapper :/

prisma wave
#

sounds kinda functional 😌

terse temple
#

is there a particular reason nms's classes are structured differently in terms of package names and everything?

#

cuz I tried porting plugins across to 1.17

old wyvern
#

They no longer have the version strings in 1.17

terse temple
#

I see

prisma wave
#

in theory it'll be a lot better in the long term

old wyvern
#

@quiet depot are you aware of anyway to know if a dependency is a platform dependency either from the pom or gradle api?

quiet depot
#

wym a platform dependency?

vagrant bobcat
#

d;spigot Statistic%PLAY_ONE_MINUTE

ruby craterBOT
#
public static final Statistic PLAY_ONE_MINUTE```
Description:

Name is misleading, actually records ticks played.

old wyvern
#

Similar to 'adventure-bom' or 'jackson-bom' @quiet depot

#

Its a dependency with only version constraints for other modules

#

but no actual source

vagrant bobcat
#

what version was PLAY_ONE_TICK ?

old wyvern
#

1.8

vagrant bobcat
#

just 1.8?

#

or 1.8 and below

old wyvern
#

<=1.8

vagrant bobcat
#

okay thanks

#

anyone know the version number for 1.8?

#

since V1_11 = 1110; would it be V1_8 = 1080;?

obtuse gale
#

How to make a plugin using Java ofc

forest pecan
#

😫

steel heart
#

Is AMD Ryzen 7 3700X a good processor?

prisma wave
#

pretty good yeah

steel heart
#

I mean do u feel a difference from 8 cores to 16 cores and 12 threads to 24 threads

quiet depot
#

you'd only notice it if you use applications which reap the benefits of high core counts

#

so basically csgo, fancy benchmarks, docdex, and image/video editing applications/renderers

lunar cypress
#

csgo? is that a joke?

quiet depot
#

yes

#

docdex & csgo were jokes (although docdex can definitely use those cores, it's just not your average application)

half harness
#

just curious, but has anyone ever worked with android (app development) before?

onyx loom
#

yugi has afaik

prisma wave
#

i have a little bit too, but nothing serious

half harness
#

oh

half harness
prisma wave
#

the api is a bit of a mess

#

shouldnt be too hard seeing as you actually know how to use the language

half harness
#

alr

#

ty

static zealot
#

don't mind me just abusing my embed removing powers

errant geyser
#

Is some other process using the db?

steel heart
#

Ah okay thanks piggy😇

quiet depot
#

wat

boreal needle
#

arent they all the free ones

quiet depot
#

yes

#

I registered a free one so I could test something with the cf api

#

because I'm using my real domains for real stuff

vagrant bobcat
quiet depot
#

version number for what?

#

what are those version numbers for?

half harness
quiet depot
#

do you mean protocol versions?

half harness
quiet depot
#

yeah so idk

vagrant bobcat
#

im adding 1 for 1.8 as thats when PLAY_ONE_TICK changed

quiet depot
#

just eval that version method on 1.8?

#

won't that give you the version

half harness
#

then it's 189 for 1.8.9

#

i think

#

welp matt's here anyways

ocean quartz
#

That's just an easy system i came up with, you just remove the dots, but i just realized that the fix i did for 1.17 breaks 1.8 😫

half harness
#

O

ocean quartz
#

1.8 always making things harder

half harness
ocean quartz
#

Yeah

vagrant bobcat
#

so i could do this


    private static final int V1_8 = 1800;
    public static final boolean IS_LEGACY = !IS_PAPER || V1_8 < 1890;```
half harness
#

uh

ocean quartz
#

Nah I'll do a better fix when i get to the pc
I'll just try getting the actual protocol version
if Bukkit exposed that, it wouldn't be an issue

vagrant bobcat
#

alright thanks 🙂

#

if they had kept it to PLAY_ONE_TICK id of been fine xD

#
    public static int TicksPlayed(Player p) {
        if (!Compatibility.IS_LEGACY) {
            return p.getStatistic(Statistic.valueOf("PLAY_ONE_MINUTE")) / 20;
        }
        return p.getStatistic(Statistic.valueOf("PLAY_ONE_TICK")) / 20;
    }
}```
#

im having todo this for it

forest pecan
#

we arent in C#

#

TicksPlayed -> ticksPlayed

#

lol

#

also is it probable that paper will eventually remove all the methods which accepts a string (when it should be an adventure component)

vagrant bobcat
vagrant bobcat
terse temple
#

how do I get a player's ping in 1.17?

#

((CraftPlayer)player).getHandle().ping doesn't work

quiet depot
#

.e()

#

@terse temple

terse temple
#

oh thank you

static zealot
#

oh god

half harness
#

?

boreal needle
#

why is nitro so expensive in the uk ;-;

terse temple
# quiet depot .e()

The method e(EntityHuman) in the type EntityLiving is not applicable for the arguments ()

#

or am I misunderstanding

static zealot
#

(CraftPlayer)player).getHandle().e probably

terse temple
#

yes

#

thats what im doing

quiet depot
#

oh woops

#

it's a field

#

not a method

static zealot
#

ah

#

that makes sense since ping was also a field xD

terse temple
#

ah easy

half harness
#

public fields 🤢

terse temple
#

if only there was a 1.17 hacked client so I could test out if it works xd

half harness
#

why hacked client

terse temple
#

cuz im testing it locally so it will always show 0

#

and you can just pingspoof to see if it works

quiet depot
#

wurst seems to be updated

half harness
#

ohh

#

does wurst have pingspoof

#

🥲

quiet depot
#

idk

terse temple
#

hopefully xd

static zealot
#

I was going to say try FakePlayers but pretty sure those are created locally as well so nvm

#

is there an easy already existing method in java to generate a random alphanumeric string? or maybe not even numeric

#

oh I guess UUID xD

quiet depot
#

do you want random

#

or unique

static zealot
#

unique and random

#

well random doesn't really matter

#

but yeah uuid xD

#

is what I Was looking for

half harness
#

aaaaaaaaaaaaaaa help

quiet depot
#

System.currentTimeMillis()

prisma wave
#

no

quiet depot
#

always unique

half harness
quiet depot
#

@static zealot UUID.randomUUID isn't guaranteed to be unique afaik

#

System.currentTimeMillis will be unique

#

unless you call it in like every 1 ms

static zealot
#

its fine tho. uuid works in this case

#

and I Need it to start with a letter tho I Could use current time and just put a at the start

half harness
forest pecan
#

u suck

half harness
#

you love to see this

forest pecan
#

x2

half harness
quiet depot
#

hehe

#

windows problems

#

can't relate

static zealot
#

lmao

forest pecan
#

i never got that before

#

lmao

half harness
#

O

forest pecan
#

how is that even possible

#

do you use some shitty anti virus like avast

#

lmao

half harness
#

no
might be because of slow pc 😭

forest pecan
#

so you literally have no antivirus

half harness
#

anticheat

half harness
#

so bright

static zealot
#

dark theme when

#

?

forest pecan
#

"Kaspersky Lab is a Russian multinational cybersecurity and anti-virus provider headquartered in Moscow, Russia and operated by a holding company in the United Kingdom. It was founded in 1997 by Eugene Kaspersky, Natalya Kaspersky, and Alexey De-Monderik; Eugene Kaspersky is currently the CEO. Wikipedia"

#

totally not sus

#

lmao

half harness
#

¯_(ツ)_/¯

hazy widget
#

How big do the projects have to be for the developer role?

static zealot
#

a decent size xD

prisma wave
#

enough that we can actually review them

half harness
#

quality over quantity fingerguns
ok piggy

quiet depot
#

no quantity is quite important too

half harness
#

i'll apply in a few centuries 🙂

static zealot
#

time to make a project that prints out Hello World

quiet depot
#

can't review it if it's only got like 5 classes

static zealot
#

but bcz its in Haskell I'll get accepted

#

xD

quiet depot
#

even if those classes are pristine quality

half harness
#

true

prisma wave
#

go on

static zealot
#

will I get 2 developer roles? xD

prisma wave
#

yes

#

please

quiet depot
#

It would appear my orm isn't overly partial to primitives EDIT: nvm i'm just a spud and gson doesn't support records

static zealot
#

I know what you're doing BM. it won't work on me

half harness
#

i won't question why android studio generated kotlin stuff in java folder

prisma wave
#

i can give you developer role 2

#

it is very exclusive

#

only for the best of the best

half harness
prisma wave
#

death

old wyvern
half harness
#

oh hi yugi

old wyvern
#

hi

half harness
#

this reminds me of scenebuilder

#

👀

old wyvern
#

lol

half harness
#

🎉 totally just didn't take the template and change the text

old wyvern
#

btw look into MVVM and the ViewModel class for ui elements, non saved activity state is lost easily

half harness
#

alr

obtuse gale
#

Oh boy wait until you get to "how to share data between classes" v2.0: how to share data between fragments/activities

oak raft
#

You guys are pros so I wouldn't put it past you to have 2 ides open for double the work lmao

rotund egret
#

I use 2 IDEs because managing modules in IntelliJ is more work than its worth

ocean quartz
#

Yup

static zealot
distant sun
#

@ocean quartz cant check if it's < 100 / < 20 first?

ocean quartz
#

I'll do a less hacky fix, probably get the nms protocol version

ocean quartz
#

Oh? 😮

old wyvern
#

yea, so Im adding another resolution for the pom file, the bom ones seem to have everything except the jar in the repo

#

so if it doesnt find the jar

#

it looks for the pom

#

and if pom is found but not jar, ignore the download and mark as resolved

#

I also tried asking on the gradle slack, but no replies yet

distant sun
#

I like the current format tbh @ocean quartz

ocean quartz
ocean quartz
old wyvern
#

I tried searching a lot

#

Couldnt find anything about getting data from the actual pom

static zealot
old wyvern
#

😌

onyx loom
#

top 10 java variable names

prisma wave
#

😌

static zealot
#

wait u guys like it? I thought u were going to hate me for it

prisma wave
#

consider renaming it to something clearer like l

static zealot
#

ah ok

#

ty

cinder flare
#

Perhaps i, for istance from the player

prisma wave
#

perhaps $

ocean quartz
static zealot
#

I'm sorry what?

#

oh it thinks .17 is a patch?

ocean quartz
#

Yeah, which makes no sense because it's like completely ignoring a non optional group

distant sun
#

@ocean quartz dont you need the ? after patch?

ocean quartz
#

Oh, is it after? I thought it was before 🥲

static zealot
#

oh gaby the regex master

ocean quartz
#

Yeah that works lmao

distant sun
#

? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)

ocean quartz
#

Aight seems to have worked
Now to test in dinosaur version

#

Worked nice

ocean quartz
#

@vagrant bobcat Pushed a fix, feel free to copy it now

ocean quartz
#

A lot of things I didn't know was possible ;o
https://www.youtube.com/watch?v=N4CpLxGJlq0

In today’s episode of Kotlin Standard Library Safari, we’re learning all about advanced collection functionality!

We’ll see how the ‘any’, ‘none’, and ‘all’ functions can be used to check conditions for elements in our collections, and tease our brains with empty collections and the concept of the vacuous truth.

We will then learn different wa...

▶ Play video
prisma wave
#

Who's gonna say it

ocean quartz
#

You're the only one that would

prisma wave
#

🥲

old wyvern
#

Say what?

#

oh, the hand gesture?

ocean quartz
old wyvern
#

oh xD

prisma wave
#

Precisely!

#

man kotlin needs to add tuples back

#

zero cost tuples as a syntax sugar for value types

old wyvern
#

😮

ocean quartz
onyx loom
#

very hot

vagrant bobcat
#

is GuiException part of your code as ive never heard of that before

ocean quartz
#

Yeah

obtuse gale
#

@ocean quartz<3 uwu

ocean quartz
#

@obtuse gale <3 owo

distant sun
#

Weirdos

steel heart
#

Sodriew

vagrant bobcat
#

Wait so would it now be
private static final int V1_8_9 = 1089;? @ocean quartz

#

or 0189

#

1890 xD

#

or do i leave it blank at 189 and no 0

distant sun
#

1890

vagrant bobcat
#

ty

gusty glen
#

I need help with math

ocean quartz
#

It'd be 189

#

Though it's 188 btw, there is no 1.8.9 server

gusty glen
#

What is the formula to get the num of all digits of a number (fatorial)? Example, the sum of all digits of 3! is 6, 4! is 6 (24 then sums both digits), 5! is 3 (120 then sum all digits) and so on...

#

The question I have goes like, for any a0, a1, a2, an, the next term is the sum of all digits from the previous element, so if for example a0 is 5! (120), a1 is 3, a2 is 3, etc.

#

But the issue is, I don't know what is the mathematical formula that for a given fatorial, it results in the result of the sum of all digits from the previous positions

lunar cypress
#

I'm not following you

#

What do you want to calculate?

#

num of all digits of a number (fatorial)
idk what that is supposed to mean

#

can you give a definition

#

ah now I get it

#

This is just function composition?

#

first factorial, then sum digits

#

you should know how to do these individually

static zealot
#

yeah pretty sure sum of digits doesn't have a formula in math

#

but n! is n * (n-1) * ... * 1

gusty glen
#

I already have a code that does that to me, but I need a mathematical formula to do that

lunar cypress
#

what exactly now

#

factorial?

static zealot
#

he wants a formula that finds the sum of digits of a factorial

#

but I've never heard of anything that does that

gusty glen
#

not exactly that

static zealot
#

ugh nvm then xD

gusty glen
#

I gave an example

lunar cypress
#

well there is a closed formula for factorials

lunar cypress
#

just define it

gusty glen
#

There'll be a sequence of numbers in which the next element is always the sum of all individual digits from the previous

distant sun
gusty glen
#

for example, if the first element is 123,the next element is 6 (1+2+3)

static zealot
#

ohh Ic what you mean Secret. I don't know tho

lunar cypress
#

So, you have a sequence s, where for each n s_(n + 1) = sum_of_digits(s_n)?

gusty glen
#

yes

lunar cypress
#

and now what?

gusty glen
#

Then the question goes: then for a0 = 2021!, what number is at position a2021!

lunar cypress
#

okay, I see.

gusty glen
#

but what I need is not the code, but the actual math behind it, cause I need to provide the formula proving my answer

distant sun
#

what number do you expect which sum of digits will be bigger than int max value lol

static zealot
#

How did you come up with this answer? I used my fucking brain.

lunar cypress
distant sun
#

im talking about sumDigits

gusty glen
#

I was just being safe

distant sun
#

lol ok 🤣

gusty glen
#

because on the 3rd loop the sum of all digits from the previous element is already 9, I know that a2021! = 9

lunar cypress
#

What's allowed in your formula?

gusty glen
#

anything that has to do with the question, I think

#

I just cannot have programming terms on it, it has to be mathematical, like, there's no loop in math

lunar cypress
#

You can define a recursive function and you can sum over a set/up to a number

gusty glen
#

That's why I figured that I need a formula that is more or less like (factorial, position) -> sumDigits

#

(remember, not code, but math formula)

lunar cypress
#

Well maths can be pretty much code if you want it to

#

just define a recursive function /shrug

uneven vapor
#

I set up soo some slots has items you could not remove, was not easy to set up, I have to set itemmeta on the items for it to work 🙂 Now I can hope players not has items in inventory with same itemmeta (they cant move the items if they should have same meta). I mean it will be low chance both key and value match XD

Ofc it will only happen if they open a special gui I made, but it even trigger of items in player inventory too (so have to set meta on item in the gui).

I wonder how deluxe menu solve so items in inventory can´t trigger a command or similar (has not try it ether perhaps you can trigger an event in player inventory too).

old wyvern
#
f(0) = 2021!
f(n) = (s . f) (n - 1)  

s(x < 10) = x
s(x) = s(x / 10) + (x % 10)
```maybe
lunar cypress
#

yeah

#

hold on

#

no

#

ok nvm yes it's right

#

you could also build it from the other direction

#

f(2021!, 2021!)

#

Maybe you can diagonalise this and get it into a closed form but I cba to try that

prisma wave
half harness
#

also looks the exact same as a pixel 🤔

#

i guess android studio doesn't like anything other than pixels

jovial warren
prisma wave
#

android = pixel

#

As far as google are concerned

jovial warren
#

can you imagine marking your entities for removal by calling yeet() on them

#

like ```kotlin
val myEntity = // some entity
myEntity.yeet() // goodbye

prisma wave
#

Nah I can't imagine associating data and functionality 🤣

#

With side effects too 🥶 🥶 🥶

onyx loom
#

new pfp 😳

jovial warren
#

not even gonna bother to entertain your BS tonight BM

half harness
#

woah wtf

#

didn't even recognize him

jovial warren
prisma wave
#

I wear a mask with a smile on my face

forest pecan
#

So

#

basically

#

🥲

prisma wave
#

they tell me I need glasses

ocean quartz
#

@prisma wave Weeb goes away but now becomes a kpop stan smh

prisma wave
#

I can't even hate kpop

#

Some of it is genuinely decent

#

Anyway

#

This guy has such interesting videos

static zealot
#

man Krita takes a bit to get used to

lunar cypress
#

I remember seeing him on r/ProgrammingLanguages for the first time

#

He had 50 subscribers

prisma wave
#

Yeah I've been watching him since like 500 or something

#

Definitely one of the best coding channels on youtube

lunar cypress
#

oh lol that's an old video

#

look at the comments

#

you might find a familiar face (profile picture)

static zealot
#

just randomly promoting your channel I see? xD

lunar cypress
#

there is not much to promote

#

not to this server anyway

prisma wave
#

4 year old overwatch games 👀

obtuse gale
#

HELlo gamERS

static zealot
#

hello gamer

#

HELERS? wtf is a HELER?

lunar cypress
#

I do was be gaming 😎

obtuse gale
#

lmao

half harness
#

in JavaFx, there are Parents, and so each fxml file can have its own Parent, does android have something similar?

#

basically in the same app, there are two entirely different pages

#

note that im super new to android, only worked for a couple minutes with it xD

obtuse gale
#

wat

#

what would the relationship with the "parent" be?

prisma wave
#

I think that's kinda similar to what a Fragment is no?

half harness
prisma wave
#

Although it's not entirely clear what you're asking

half harness
#

game being a parent

#

or getStage().getScene().setRoot(menu)

#

maybe thats a better example

#

or getStage().getScene().setRoot(gameEnd)?

#

or like a slideshow - getStage().getScene().setRoot(slide1)

obtuse gale
#

So like the active scene or what?

half harness
#

i guess

#

im trying to find out how to do it in android

obtuse gale
#

Yeah I suppose Fragments is what you're looking for? All part of the same Activity

#

Still not entirely sure what you're wanting to do

half harness
#

uhh i don't know what activities are yet but ill take a look at fragments ty

obtuse gale
#

How the hell did you make an app without knowing what an activity is

#

it's like

#

Activities are to Android what classes are to Java

half harness
#

oh

obtuse gale
#

You can't work with it without using them

half harness
#

idk if u used tornadofx but in tornadofx it'd be called a View i think

obtuse gale
#

I haven't

half harness
prisma wave
#

Sorry dude, I only understand haskell-Qt bindings 😎

lunar cypress
#

sounds horrendous

prisma wave
#

biased

compact mesa
#

How do I download the latest version of spigot? Is buildtools spigot?

obtuse gale
#

yes, you use buildtools for that

compact mesa
#

so I set that as my server jar?

obtuse gale
#

run buildtools

#

copy the spigot jar built to the server folder

#

and replace the current server jar with it

compact mesa
#

It says I can't run it in onedrive

#

But I am just trying to run it on my desktop

#

nvm I got it to work

#

Wait wtf why did it make like 5 folders, I just want the server jar

obtuse gale
#

because it has to build it

#

and it needs extra folders

#

when it's finished you'll get your jar

#

it's not instant

compact mesa
#

It will just be where I started it, not in one of the folders?

obtuse gale
#

it will be wherever the buildtools jar is

compact mesa
#

Okay thank you

steel heart
#

If I was to buy a domain, where should I buy it from as I presume some domain sellers are better.

ocean quartz
#

I normally buy from namecheap

steel heart
#

hmm thx will check that out then

quiet depot
#

@steel heart what tld?

steel heart
#

io

quiet depot
#

@steel heart buy on namecheap then transfer to cloudflare registrar

#

i can’t remember if cf supports io but if it does, definitely transfer

steel heart
#

Oo tyty aPES3_PrayHalo

compact mesa
#

How do I make it so it gives 1.17

ocean quartz
#

Did you do java -jar BuildTools.jar --rev 1.17?

obtuse gale
#

did you specify 1.17?

compact mesa
#

Where do I type that?

obtuse gale
#

did you read any of the BT wiki?

#

like

#

any

compact mesa
#

No I was reading it now

obtuse gale
compact mesa
#

It said it was unable to access buildtools jar

#

When I typed it

forest pecan
#

you didnt cd

obtuse gale
#

did you cd to the buildtools dir..?

forest pecan
#

emilyy also

#

have you played any modpacks

#

just wondering lol

#

fabric or forge

obtuse gale
#

not really, no

forest pecan
#

Oh they're pretty fun tho

obtuse gale
#

I still have to play the modpack piggy recommended me lol

compact mesa
#

Oh I think I got it working

obtuse gale
#

uh idk

#

lemme check

#

I have it downloaded

forest pecan
#

im on forge rn lol

#

but its so bad like

obtuse gale
#

enigmatica2

forest pecan
#

the ui and everything designed bad

#

oo i heard of that

#

rn im playing MC Eternal with some friends lol

#

but im hosting the server while playing at the same time 💀

obtuse gale
#

lmao that's a rip

forest pecan
#

maybe i can get sponsored by BH and use their promotional oppurtunity to

#

"benefit my project"

#

mhm

ocean quartz
#

But are you sponsored by Raid Shadow Legends?

steel heart
#

bruh intellij created an express app instead of react wtf

gusty glen
steel heart
#

found 14526 vulnerabilities (7254 low, 251 moderate, 7019 high, 2 critical) 🥲

quiet depot
#

what’s that

onyx loom
#

fuck

#

love u too

#

give me kiss

#

🙁