#dev-general
1 messages ยท Page 582 of 1
434 contributions in the last year
welp
I link I'm at like 30-40 ๐
538 contributions in the last year
๐ฉ
What config indent is needed in deluxemenus to apply an enchantment or multiple?
#general-plugins, this isn't a support channel
ah my bad
https://github.com/Mojang/brigadier/issues/99 emojis on GH, ugh
lol ๐ ๐คฃ ๐ค ๐ ๐
@half harness Too many emojis.
-_- ๐
โน๏ธ ๐ฅฒ ๐
\๐
man the StackWalker is pretty cool stuff
Does anyone have a java decompiler for jars that works on mac? Ive been using JD-GUI but I wanna switch to something else
IJ ;p
does it have something that can do jars? Obviously it has it for .class files but thats not really what i want
Just import the project?
Add the jar to a folder in a random project, import it in gradle and boom it's decompiled
ya thats not really what i wanted
@eternal compass You use React right? You use Material UI?
and is kinda annoying
yes, no.
I use tailwind and style everything myself
but shoot, I may be able to answer
Ah it's not a question, just MUI did a really cool update https://mui.com/blog/mui-core-v5/#change-of-the-package-names
Hey all o/ Does anyone know of any alternatives to WorldGuardExtraFlags? It's been discontinued and doesn't work in 1.17.1 . Any ideas please ping me ๐ Thanks!
ooh, cool
but yeah I don't use it
it doesn't support Styled components/Twin I don't think
what?
Yes
๐
guys who developed minecraft things and not only plugins (sponge plugins/fabric/forge mods, ...)
what do you like the most?
death
I like sponge
Fabric is fine but itโs not too different from forge imo
I hate developing spigot plugins but using paper api makes it doable
"Not only plugins" ... "sponge plugins"
๐คฆ
๐ฅด ๐ฅด
I don't like anything anymore
nothing makes me happy after I started coding
๐ฉ
any idea if IIJ IDEA has a way to highlight xpath in code?
Any thoughts on this gist that I've made about MethodHandle & CallSite: https://gist.github.com/SecretX33/2d0b46d0f43af82af977088e81d1e8e0
Short and concise, nice

lol
Sponge plugins are technically mods 
Not really. Sponge is the server api. Forge and Fabric are the mods.
Sponge can also be ran on the client, and all plugins are registered as mods through forge
While they are at a base level, just plugins, they are also in some scenarios, mods
Thats news to me.
Grats
I only ever used sponge like 5 years ago I think lol
So things might have changed xD
Plugins are just server sided mods 
Server mods are client mods then?
no. server mods are just plugins but without being plugins.
Mods are just plugin sided servers
or servers are just not client sided sides. that are technically mods but plugins equals servers so then fuck
Minecraft is a video game in which players create and break apart various kinds of blocks in three-dimensional worlds. The gameโs two main modes are Survival and Creative. In Survival, players must find their own building supplies and food. They also interact with blocklike mobs, or moving creatures. (Creepers and zombies are some of the dangerous ones.) In Creative, players are given supplies and do not have to eat to survive. They also can break all kinds of blocks immediately.
Are there points or levels? No. The purpose of the game is simply to build and explore (and survive).
How many players can play it? You can play by yourself or you can play online with others. The smartphone and tablet versions offer multi-player options through WiFi networks. Players can connect to thousands of Minecraft online games (servers), some of which involve battling other players
How many players can play it? You can play by yourself or you can play online with others.
How many? Yes
calc flashbacks
Two main gamemodes? What about spectator mode? Thatโs my favorite game mode to play in.
It's not a main mode, it's a secondary one
It should be a main mode
I found this very interesting, benchmarking Reflection vs MethodHandle: https://gist.github.com/raphw/881e1745996f9d314ab0
@old wyvern lol
anyone wants 1 month of jetbrains all products pack?
gives you ij ultimate and some of their other shit. webstorm and whatever. it is just 1 month tho. so better claim it quick lol.
Is the CallSite invoke any faster than normal Method#invoke?
github student pack :stonks:
there might be people don't have it
not having github student pack ๐ฅด
its gone
turns out someone needs one
๐
took 1 year of from school.
well I'm starting uni now xD
big boi blitz
for some reason that sounds like old now ๐ฆ
how old are you ๐ฎ
hes 146873
^
yes u 4hed ๐ฆ
oh. you might've required nitro before.
๐
been since sep 26 2020
well I just cba to unsub it
butttt. you could subscribe to me.
ugh. you got a death wish or something?
unfortunately I can only offer wall pics
I can offer bird pics ๐
no ty
:(
If you know, you know ๐

sorry to hear that!
Hello
Hi mate
disgraceful
I kinda need help with Toothpick, anyone here has already used it before?
You normally just pass the tip of it between the teeth
i'm sorry i had do!
Matt, Guice and Toothpick hates me
Guice throws "IllegalStateException: zip closed something" in runtime, and Toothpick throws "IndexOutOfBounds" when parsing annotations at compile time
lmfao
why??
Why is that happening, wtf?
Let me pull up the generic fuckery voodoo piggy asked me to do for papi
Nothing!
out Any means ? extends Object, why is Any value not an instance of Class<? extends Object>, like wtf
;-;
haha
lol
I don't need LinkedHashMap here, no reason to use that
hashMapOf
bruh
how so
it exists in the stdlib ๐
val test = HashMap<String, String>()
val test = hashMapOf<String, String>()``` it's just longer
oh no
but ๐ฅบ
two characters
I can't be assed
plus you'll drive off people like me who think u dont know what mapOf is
its a win win
yet it compiles ๐
That is so weird, I just read here https://github.com/google/guice/wiki/JustInTimeBindings#inject-constructors that you don't have to have your classes's constructor annotated with @Inject if they got only one constructor, so why am I getting "missing no args or annotated constructor" error in Guice?
Maybe something to do with Kotlin? :/
@quiet depot if you have some time and can explain to me why this happen in Kotlin (and if there is a workaround), I would really appreciate it
kotlin bad
is it bad if my shop.yml for bedwars is 516 lines ๐
and the wiki i use for it is 430 lines ๐
The class got a public constructor generated, as seem on this decompiled code
Ah yes, how could i have forgotten
also thats react not html smh
TSX is html template
also I'm officially a minehut partner now lmao
well, yesn't
ig thats technically the right term
do you not ignore dms
lol
or set the option enabled
@gusty glen show me kotlin class
It's a normal class with a bunch of val ass = NamespacedKey(anotherAss), without any annotations. The issue is not with that class cause as soon as I added the ugly @Inject constructor after the class name, the error migrated from that class to another one that also didn't have the @Inject at the constructor
Question for you guys if anyone can help me out
I have two domains for example lets say
mc.skycraft.com
How can I send the players from play.minecraftmc.com to mc.skycraft.com?
I don't want to send them right to the skycraft server, because it would mess up my player tracking.
fucking MAC???
Lol
what the fuck
Decompiled code can lie
it should have, I mean, it's kotlin that we are talking about
single constructor all args, etc
Ye
Donโt you have like an ip for each one of the servers?
lol
@old wyvern your Oracle machine still going strong?
yup
Don't jinx it
Hey @distant sun what's up with the discord moodle bot, did you ever finish it or
Nah, I don't like their api nor understand shit
will probably use selenium if we go back online
currently using it for work so it will be fun
Ah yea, wasn't able to figure out the shit show that was their API, was hoping you had some more luck
I don't understand its structure very well and the documentation is eh
Hello. I am currently setting up a new server, where I will include rank vouchers in my crates. However, my question is let's say a user has a legend rank and he in the crate gets a VIP rank voucher, where the legend rank is obviously higher and the user then accidentally redeems a VIP rank he would then lose the voucher. How do I make it like on most servers so that the user can redeem the voucher lower than their current rank?
Hope this makes sense, thank you.
I have a vouchers plugin that lets you add 'blacklist' permissions and you could basically check if the user has group.vip (assuming you use luckperms and that groups inherit each other)
good one
for what I know it is not posible in java, yet, It cant be done without the player logging off and then loggin on the other ip
bedrock has a thing called transfer packets
that transfers the players data to other ip
but java doesnt have it
so
Fuck You Mojang
I mean wouldn't a normal bungee/velocity setup work for that?
hey
might also start paying.
basically:
Hello, Don't we live in a beautiful society? As beautiful as it is, I do believe even better would be if everyone started from the position of slave and worked their way up. Being a paid worker is not that fun unless you did some slave work before.
Yes โบ๏ธ
its not me ;-;
๐ฒ
oops
13th place in India and still canโt pay
the amount of times i ran into issues relating to inventory having null items is so annoying ๐
the thing is, I rarely check console due to my debug messages in Bukkit.broadcastMessage, and so I get an NPE and I don't know about it ๐
Any reason you don't do actual logging?
i don't find a reason to - and bukkit.broadcastmessage is quicker, since I can just do /stop right after i get the debug and alt tab
Oh, most of my tests are visible through console, but I can see the benefit of in-game testing.
I'm hoping they make the GameTest tool available for Java
Oh looks like it might be in 1.17 ๐ฎ
lol
Might be overridden by a deriving class
Or gets patched
whats the main reason rhat MC server is mainly single threaded?
Doesnโt need to implement thread safety
Multithreading is a deep complex hole
A multi threaded server software would need to implement locking mechanisms to synchronize stuff and ensure some variable values arenโt cached with the usage of volatile which has its cost. Also I believe a lot of spigot developers donโt know a jack shit about multi threading else than the BukkitScheduler.
Also wouldn't using multithreading cause "lag" anyways because of data needing to be synced across threads? Unless it was very well done?
Precisely yeah
I guess certain parts like chunk loading could be beneficial if it was done concurrently altho it is already to a certain extent if Iโm not outdated but good point.
Donโt get your hopes up for spigot lol
lol
not in a functional language ๐
๐
What makes multithreading better in a functional language?
Is it because there is no changing of states?
@covert aspen Can you elaborate on this?
#882530561141375026 message
Unless i'm missing something, that sounds like a terrible idea
it's entity tracking range
controlled with a command
starting from spawnpoint of world
https://media.discordapp.net/attachments/888830345963798559/890034194309341234/unknown.png
its to decrease lag on server releases @urban sleet ^^
I'm not sure you fully understnad what entity tracking range is
Also, read the bottom of the image you sent
๐ฅฒ
"tracked" to the client
Entities are still managed by the server, the only performance increase I can think of is not sending the packet
read my last msg
200 players around spawn
Still wonโt do much if anything
Ignore the haters, follow your dreams
Yeah Iโm sorry
Lol
๐ฅฒ
Yes, exactly
which makes it very easy to do things like parallel processing
like streams do
Mutable streams imagine lol
Oh cool
So all we have to do to make Minecraft multithreaded is make it in Haskell
I donโt get how you store data with functional programming, like how do you know how much health a player has, their inventory, etc?
Hrypton (:
Though "storing data" is different from "mutable data in memory"
It's really up to the particular language how they implement both
AAAAAAAA
It's here
It arrived
How would it work then?
It was a joke lol
Oh
Maybe I just have to learn Haskell to understand
But I donโt have time for that
need help
how i connect a server
to my npc
bungeecord
i put the server in bungeecord
but cant connect to npc
and also need to add it in gui
It isn't literally just functions, you still have things like structs and lists, they're just immutable
If you want to modify it, you make a copy
which is less inefficient than you might think
And yeah as Emily said it depends on the language
Most of them have at least 1 abstraction for state and things
what is adoptium
new adoptopenjdk
yes
yeah came out a few days ago
sad
:(
quit school ez
tm
last year?
erm
i've got 12 months left but it's not my last year
so yeah interpret that however you can
๐
yea soonโข๏ธ
it been 13 months

are you free this weekend pig? ๐
yes
nice nice
o
cube my holidays start this weekend
noice
Too busy my ass, you're just lazy
yes
Itโs just hard to think of programming without classes
how do i look for coders
you use #882530561141375026
or I guess #882530562278064160 but yeah... free xd
Lol
cant find the channel
ugh.
Itโs in services
you can literally click on those
Lol
lol
do i request it
๐
damn that's cool
can't really find an exact reason but I assume it was a lot of bumping.
oh nvm.
found the reason. apparently you sent nsfw content in response to a service.
wtf

definitely not apparently, I'm looking at the evidence right now
then there's no point
oh. there's evidence. lol. I don't have access to that. just what I was told.
okay no problem then, thank you for your time
discord mods amirite
imagine having the rules
Try it and see ๐
It's actually somewhat similar to procedural languages like C
In that you're clearly separating data and functionality
int main() {
//do stuff here
return 1;
}
yes exactly like that
Oop best
Error: Could not find or load main class org.kryptonmc.krypton.KryptonKt
Caused by: java.lang.ClassNotFoundException: org.kryptonmc.krypton.KryptonKt
```well, looks like IJ's decided to start being a bitch for no reason
not even clean building or invalidating caches & restarting seems to save this one
nvm, invalidating caches with invalidating the file system cache seemed to work
what are some really hard programming langs (but hard for reason, not because its shit)
๐ค
first google result
in the second is html too
Whatโs the issue?
easiest
programming language
Brainfuck
Malbolge
If you mean real languages then I would say Rust and Haskell are pretty difficult
And?
HTML is a markup language, not a programming language
is this new? https://discord.com/acknowledgements
not that I know of
html is programming language?
No it's not
then why he said and ๐
looking for a challenge? learn APL


๐ณ
no
HEREBY
AAAAAAA
do you like TS guys ๐
NO
You ussually have some way to represent state as well. In Haskell you have 3 choices, recursion, IOref, State Monad
State monad transformer!
you are too smart guys
Sounds complicated
1 test completed, 1 failed
is there an api for EzRanksPro ? and can i use it through maven or gradle ?
hello guys, what do you think is the best programming language documentation?
There are so many, doubt there is a best one, kotlin is pretty good, rust is pretty good, not familiar with many others
Kotlin and rust are known for having good documentation, Scala's also seems really good
and "best" in design way? ๐
Like?
That sounds subjective
Like the pages design?
Elara is known for having good documentation
So true
mkdocs uses rust I think
it's known for having a completed specification and active maintainers
Ah it's mdbook not mkdocs
okay guys thanks
๐
better than rust in that regard
HTML
Haskell!
The Haskell purely functional programming language home page.
๐
Anyone here use this bot? https://github.com/DeJayDev/speedboat do you like it?
I've been trying to set it up locally all day
Try putting into into the sea
Probably wont run on land
Make sure you fuel up as well
Boat motors can run on land ๐
Does anyone know if there is a way to tell kotlin not to use getters and setters on properties and to just access it directly?
Try switching to Java
@JvmField
oh great thanks, it would suck if i have to annotate all my mixin stuff with this, but idk
Classic kotlin
great it works perfectly
Idk how that works, but a way i did around for ConfigMe to prevent having to annotate everything with that was to use reflection to make fields accessible
I could probably do a thing that looks at the bytecode im gonna inject, and if its kotlin and referencing a property just change it to a field reference, but that seems like alot of work
Lmao yeah
Direct links to yt videos be like
https://r3---sn-p5qs7nee.googlevideo.com/videoplayback?expire=1632374178&ei=QrlLYd6WNtLV8wSG1KCADA&ip=3.88.26.186&id=o-ABrUv1NCVDbAKEmNiFees-oKeSvtROccsy4H8M55A0og&itag=278&aitags=133%2C134%2C135%2C136%2C137%2C160%2C242%2C243%2C244%2C247%2C248%2C278&source=youtube&requiressl=yes&mh=Rf&mm=31%2C29&mn=sn-p5qs7nee%2Csn-p5qlsndd&ms=au%2Crdu&mv=m&mvi=3&pl=12&initcwndbps=1210000&vprv=1&mime=video%2Fwebm&ns=TKpvU1kYS6lbDnLGBtAH29gG&gir=yes&clen=53473&dur=9.833&lmt=1544742069769006&mt=1632352371&fvip=3&keepalive=yes&fexp=24001373%2C24007246&c=WEB&txp=5432432&n=5NTdegLh-k39R0n9&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&sig=AOq0QJ8wRQIhAKntYvjELWY9CBwdXwAeBKzx3dTqTtGrp8RVBvaAFl_9AiBaFIZGVCQqmi_EKoAnZSbSjMWuOtWYrdbFSooh4syrfw%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRgIhANV-Rh2W0zAe5i4M3bynfm_rpSHPbmc8cHAtKK-klmygAiEAyrhCcHd12VFsOGtarM-HEAM54EoNepov3VvoC6h5AVA%3D
the question is, should i click it
Google links
its just a direct video lol
BM I think you'll be happy to know that I requested my university add a course on Haskell and basic type theory, so hopefully that happens
@prisma wave ^
yeah the head of the CS department looked at me and went "I do not know those things, therefore I will not be teaching that class!" lol
the CS teacher at my school is weird. He wants a hybrid of allman and K&R
public class MyClass
{
public static void main(String[] args) {
}
}
๐
Lol
ew what the fuck
allman for classes and OTBS for functions?
yep
Damnnn, thats a lot of choices
lmao
submit to the script
๐ซ
LET'S GO
hell yeah
i really think type theory is super interesting and vital to a good programming language
so i'd love to learn more about it lol
um hello
i have 2 methods to implement a listener class
which one is more effective?
1:
public class SoundEffectListener implements Listener {
private final ConfigHandler config;
private final HashMap<String, Integer> map = new HashMap<>();
public SoundEffectListener(SFX main) {
Bukkit.getPluginManager().registerEvents(this, main);
this.config = main.configHandler;
}
@EventHandler
public void onItemSwitch(PlayerItemHeldEvent event) {
new soundEffectClass(event);
}
2:
public class SoundEffectListener implements Listener {
private final ConfigHandler config;
private final SFX plugin;
private final HashMap<String, Integer> map = new HashMap<>();
public SoundEffectListener(SFX main) {
Bukkit.getPluginManager().registerEvents(this, main);
this.config = main.configHandler;
this.plugin = main;
}
@EventHandler
public void onItemSwitch(PlayerItemHeldEvent event) {
this.plugin.soundEffectClass(event);
}
well that mainly depends on what's happening in the code you're calling there
well, i guess the second method is better
because in the first method we define a new class every fired event
am i right?
is this new? ๐ฎ
because folders and files are alphabetically sorted, the server folder is above src, is there any way to move it below? It has too many files and it is hard to see the src if it is opened.
Can't you adjust how things are sorted?
idk
"new" with IJ 2021, yeah
no. the class is only defined once. You're creating a new object each time but without seeing the other method there's nothing to say about "what's better" besides the fact that creating an instance without using it for anything is pretty suspicious
Can you guys help me understand something in Kotlin?
When calling init in an abstract class, it's bad practise to call abstract methods. How do I circumvent this?
Why would it be a bad practice to call abstract methods
because they are non-final and could be implemented by a class that has not yet been initialized. So if the overriding method relies on resources that are not yet initialized, it can result in NPEs
What would be the best way to make console commands in an application?
Currently I have a while true loop in which I just read the next line until I have a line and I Just compare it to the commands I have for example help or stop and do the stuff they are supposed to do.
Kek
By not doing it maybe?

Anyone got a gradle task to copy the jar in another directory on build? I want to delete the old one if there is one and put the new one in.
even better question. how to switch a project from gradle groovy to kts
would it be just as easy to just make a file called build.gradle.kts and use that instead?
you can also use gradle to convert iirc
I got this going for me:
task("deployToServers") {
val serversDir = project.findProperty("serversDir")?.toString()
if(serversDir == null) {
println("Unable to deploy. Missing property 'serversDir'.")
}
val bukkitServers = project.findProperty("bukkitServers")?.toString()?.split(",")?.toTypedArray() ?: emptyArray()
val bungeeProxies = project.findProperty("bungeeProxies")?.toString()?.split(",")?.toTypedArray() ?: emptyArray()
listOf(*bukkitServers, *bungeeProxies).forEach{ server ->
copy {
from( shadowJar.get().archiveFile.get() )
into("$serversDir\\$server\\plugins")
rename { "${shadowJar.get().archiveBaseName.get()}.jar" }
doFirst { println("Deploying to '$serversDir\\$server\\plugins'.") }
}
}
}
It's a bit complex because I'm passing my spigot server folders as command line arguments when doing the build. But you can make this sort of task depend on the gradle build task or the shadow jar task or whatever
what you'd probably be interested in is
copy {
from( shadowJar.get().archiveFile.get() )
into("$serversDir\\$server\\plugins")
rename { "${shadowJar.get().archiveBaseName.get()}.jar" }
doFirst { println("Deploying to '$serversDir\\$server\\plugins'.") }
}
how tho? can't seem to find anything. googled a bit
i just added .kts to the file name and converted it all manually
oh. so it is that easy to do it manually?
thought I have to change some other shit as well
I just use shadow's build jar stuff :kek:
task copyTask(type: Copy) {
from shadowJar
into 'path/here'
}```
withType<ShadowJar> {
destinationDirectory.set(File("Path to server plugins folder"))
}
:kek:
is there any difference between find() and firstOrNull in kotlin? ๐ฅด
yeah but I need a copy of it.
still want the one in the build/libs.
Ah, sad
firstOrNull makes you look like you know what you're doing with kotlin more
@kotlin.internal.InlineOnly
public inline fun <T> Array<out T>.find(predicate: (T) -> Boolean): T? {
return firstOrNull(predicate)
}```
๐คฃ
yeah its just an alias
find = firstOrNull ๐
Ayy my IJ bug report was fixed
"A new Minecraft snapshot is out: 21w38a"
Sprinting is no longer reduced to walking when gently brushing your sleeve against a wall
what was the bug lol
QoL changes ๐
Multiline FIXME didn't behave like TODO
For example:
/**
* TODO: Hello
* there
*/
// The there is includeded in the todo, when i format the code, it'll stay the same
/**
* FIXME: Hello
* there
*/
// The there is includeded in the fix me, however if i format the code it'll break and turn into:
/**
* FIXME: Hello
* there
*/
// Which no longer is part of the FIXME
A new setting has been added: โSimulation distanceโ
what
That looks a bit confusing
Maximum amount of background threads increased
doing.. doing what?
Things
ooooh I just had to read further down below lol
mojang on the bitcoin mining trend ๐ฅฒ
Introducing BitCoin block, when you go mining you can find veins of the block which when you break you get a percentage of the transaction!
Oh interesting
now that sounds pog
lets add it in 1.18
Intellij I like your type inference display, but please
lmao matt
:)))
isn't FIXME the same thing as TODO?
I have that shit disabled
It's too invasive and. like. BITCH, I KNOW WHAT TYPE I'M DEALING WITH
They are supposed to but i guess not
I have it enabled for a few things, TS for example almost everything, Java and KT for lambdas and a few other things
Oops ping
Even for lambdas I can just guess tbh from the method name (forEach, map/apply, accept, applyIf etc) and what the actual lambda does
Yeah i can guess too but i like how it looks xD
I guess I want to see actual code rather than something cluttering my screen
inb4 I'm that weirdo using compact mode because of that
okay
weirdo emily
Ikr :ugh:
inheritance was a mistake!!
meanwhile fmap :: (a -> b) -> f a -> f b
Simple and elegant
no
everything
Literally speaking too
๐
functionally speaking*
Would you like to live?
No
understandable
Pls place holderAPI for money?
Great!
Conclure is working on a maven plugin if they want to try that
You already dont "need" to use the gradle plugin, that just makes it easier
Alessio uses it without the gradle plugin
@half harness
๐คฎ
How does IntelliJ know to add
name:
main:
version:
to plugin.yml?
Minecraft Development extension?
I don't have that
Oh, weird
It says add schema validation or something
nvm
that's not it
schema validation: Missing required properties (lists properties)
What gradle plugins do you have?
plugins {
id 'java'
id 'com.github.johnrengelman.shadow' version '6.1.0'
}
It's always done this
You dont have a plugin.yml file in your resources folder right?
Is your project on github?
weird
Maybe I have some plugin without knowing it
Yea probably
Cannot change dependencies of dependency configuration ':common:implementation' after it has been included in dependency resolution
what does this even mean
figured it out
turns out the "include in jar" part of shadowjar is fucking easy
now relocation tho
i'll leave that for future emmy
what are u shading
idk
I dont even know how to do it
you probably did
yea send ur pom.xml/build.gradle
grsfle
shut
Lol
typing on mobile is hard
Iโm on mobile too
๐
๐ง
here is it https://paste.helpch.at/azelogitic.xml
what is the default scope in maven
maybe it's shading protocol lib? cus I think that's pretty big
set that to provided too
done
The user is supposed to install protocollib separately
You shouldnโt ever shade it
so is that
it is shading it
Make sure to specify it as a dependency too in plugin.yml
No
They are two entirely different things
One is dragging the extra jar into the plugins folder
sorry dont know a lot abt shading
The other is like copying the classes over into your jar
But protocolib is a case where you shouldnโt shade
But instead install it manually (and drop the JAR)
so what's the size difference now

thx a lot guys
np
in short: shade a dependency if its not provided at runtime
if it is provided, mark it as provided
This emoji is from a server that is either private or unavailable.
Thief
๐ฅด
Alright. How would I display a EntityEffect to a single player? Using player.playEffect(EntityEffect.SOME_EFFECT) displays it to all players so I'm guessing I need to use packets.
I stole it from u lol
I stole it from Frank lmao
more specifically how would I display the totem effect to a single player
here is were I come, who tf is frank?
#development and yes probably packets
should I move me question to that channel?
probably yea
@wheat cedar
very cool guy
Hi Frank
his name is so cool
I'd argue mine is cooler
What's your name?
I'm Lucian
Frank van der Heijden, that's so fucking cool
That is pretty cool, nevermind
xd
I think mine is the coolest
Doubt
I didn't know it was a competition
mine is coolest
I just found out gradle kotlin dependencyhandler does this
operator fun String.invoke(dependencyNotation: Any): Dependency? =
dependencies.add(this, dependencyNotation)
so you can do e.g. "implementation"(project(":core"))
comes in really handy for custom configurations tho
Kinda cursed though
lol yeah
wait, is applyIf a thing?
oops ping
Heheheheheehe
lol
lol
lol
spigot is
Can you recommend a plugin for user login? I would like one similar to jpremium.
I'm guessing he is either
- Using offline mode
- Wanting an extra layer of security
Regardless this response doesn't help anybody.
Really good indeed
Just google
There's AuthMe, not sure if that's what you're looking for
The point of the reply seems to have been to not be of any help
Absolute bs!
you stuped
smali?
ChunkGenerator
ah
I think I didn't setup the updater for 1.17.1 because I assumed it wouldn't change
Mm
Understandable assumption
my parents are divorced 
Hey that's cool. Thanks for sharing!

tf
Does a version or MockBukkit but with paper instead exist?
Oh, are links not allowed?
Also why do you have 2 spigots and 1 paper api in your dependencies? xD
I suppose that may count as advertisement, my apologies
Was changing some things with dependencies and prob missed some things
Always in a rush due to constant lack of time due to studies lol
I just deleted it
oh my god, Paper added API for TriState permission checks ๐ ๐ ๐
ok.
ok.
not ok anymore.
TriState what?
like dual state but with tri state. ya know
exactly. you know what I'm talking about.
that sucks.
๐คจ
True/false/maybe
Ah
Maybe ๐
Maybe Boolean
They were advertising a crypto discord server with the chance to win 25k!
They did not want people to miss out on the opportunity!
<groupId>net.citizensnpcs</groupId>
<artifactId>citizens-main</artifactId>
```would become
```groovy
compileOnly 'net.citizensnpcs:citizens-main:VERSION'
```right?
yessir
Thanks
That means I'm doing something else wrong lol
Welp invalidating caches worked lol
or ./gradlew build --refresh-dependencies if you're one of the cool kids
I guess I am not one of the cool kids then
2 stars ๐ฅฒ
hm?
๐ฎ
lessgo
yeaaaa.. sure
bugged
๐คจ
can't send links in discord
๐ค
new update
[redacted]
here you go, if you insist
yt integration?
yea
whats that ๐
haven't seen it?
nope
๐
I'd drop the link, but it doesn't work
literally fucking stupid
o
You may also see ads during Youtube videos
$$
yeah, the reason they killed the bots is that they don't get any revenue from it
time to get that cash from ads
You also can't watch age-restricted videos iirc inside the integration










