#help-development

1 messages · Page 1916 of 1

smoky oak
#

its impossible in windows command prompt btw

turbid grove
#

you can't read text written to console using System.in unless you send the whole thing using enter

smoky oak
#

yea cuz of that

turbid grove
#

im not sure about thaz

smoky oak
#

maybe it would be an idea to dissect the GUI part from the minecraft server software

spiral light
#

i stopped looking for that

turbid grove
#

mc somehow manages that

spiral light
#

ppl just can do "?" or "help" and see the cmds ^^

smoky oak
#

'can'

#

you're a politician aint you

spiral light
#

what

smoky oak
#

thats the only option we have

wet breach
#

the low level mechanisms you are looking for is the shell environment. Otherwise your most basic command line which is prompt does not facilitate this at all.

#

reason why you need to know commands off the top of your head in these basic prompts 😛

#

or query the available commands

sterile token
#

Isnt it the same using a Long or Date as timestamp?

wet breach
wary harness
#

Hi any one can tell me what packet should i use to rotate armor stand position NMS stuff ?

wet breach
#

separate system then in since that refers to input

wary harness
#

I have tried ClientboundSetEntityDataPacket

#

but nothing happens

turbid grove
wet breach
#

probably

turbid grove
#

there's a C library called GNU readline

#

it allows fancy things that is used in linux stuff like nano, htop, vim, emacs

sterile token
#

Why using C with Java?

turbid grove
#

still cant find any similar in java :/

sly trout
#

how to check if blocks is crops

sterile token
#

But you should load first the ddl and then calling the methods

turbid grove
wet breach
sterile token
#

For command line on console you can use the one that uses Spigot/Bungee

turbid grove
#

which is????? 😂

sterile token
#

I dont know the name. But search on github

#

I think its called jLine

wet breach
turbid grove
#

thank you 🙏

neon minnow
#

How do I change nametags of players? the name above their head?

Thank you (w/out using plugin) just like, java code

grim ice
#

do u want to color them

neon minnow
grim ice
#

or just change them

#

use scoreboards

#

ur rank name is 16chars+

#

what??

neon minnow
#

no

#

the whole thing

#

rank+username

#

will probs be 16 chars

grim ice
#

use scoreboards then

neon minnow
#

please elaborate

grim ice
#

scoreboard team prefix

#

make a scoreboard team add the player to it set prfix

#

prefix

#

then boom

neon minnow
#

how does nametagedit api plugin do it ?

grim ice
#

i dont know just decompile it

#

or check github if theyre open source

wary harness
#

any one know packet to rotate armor stand

sullen marlin
#

you need a packet why

chrome beacon
#

Fake armor stand on top of a player

#

Context from Paper discord

neon minnow
neon minnow
smoky oak
#

How do I get the itemStack responsible for breaking a block in BlockBreakEvent

wary harness
#

yep fake armor stand

grim ice
grim ice
#

iirc

smoky oak
#

that'd do it thanks

#

how do i do a EnumSet again?

wary harness
# sullen marlin you need a packet why

Well when u are here there I tried to do this without packet but in craft Player there is vehicle check which dosn't allow teleportation player
because check is before PlayerTeleportEvent.
So all other plugins like essentials teleport command get blocked when u have passenger and there is no way to dismount passenger because teleport method is cancelled by that vehicle check.
Would be nice to have some PrePlayerTeleportEvent where it would be possible to remove passengers and add them back after teleportation.
So I am forced to use packets and benefits are no dismounting when player goes in water and no problem with teleportation.
I know there was some glitches with player teleporting with passenger but like I said PrePlayerTeleportEvent would help a lot
So that is why I use packets and now i got all running just not sure how to rotate armor stand with player

#

custom model set up on armor stand head

spiral light
#

you can set the direction of the armor stand do the same direction your player's head is looking

wary harness
#

well that will look weird

#

I need body rotation

#

like if you move your head

#

your wings will move

#

I am not sure what packet is for that

spiral light
#

i love the idea of having those wings in my head somehow

grim ice
#

@wary harness looks awesome

#

what server is that, or is it a plugin

wary harness
#

it is plugin and custom resource pack

wary harness
#

xd

young knoll
#

Why would you....

spiral light
#

oh man xD if they would know how things work ... or at least have some experience before abusing stuff

sterile token
#

FreeSoccer

#

It was called ZonedTimeZone?

spiral light
#

i just readed 10% of your looooong debate about timezone stuff

#

idk

sterile token
#

Whst would iuse

#

I need recommendations

#

I need an time zone like UTC + 0

spiral light
#

System.currentTimeMillis goes brrr

#

for what do you need smth else ?

sterile token
#

I will display dates

#

No timestamps

spiral light
#

calculate time from timestamp brrrrr

#

i think i used Date

sterile token
#

Ah lol you can?

spiral light
#

Date.setsomethinghereornot

#

i guess

#

or was it calendar

sterile token
#

And that date its converted to what format? UTC? EST?

slim echo
#

Hi, can you help me identify an error in writing a line of code in the datapack?
How do I make "this" potion part of the code
Here is an excerpt

{
"item": "minecraft:potion{potion:"long_invisibility"}"
}

When added to the world, it cannot define this potion.What do I need to do?

sterile token
#

Json it shouldnt be used to save/keep data. Cuz json its only a data type format

slim echo
#

Is there a better and more convenient option?

sterile token
#

Yes of course

spiral light
sterile token
#

Its called Yaml

#

You should use yaml files for saving/getting data from plugins

#

And if you want something more complete a database like Mysql or MongoDB

turbid grove
#

or use plaintext

sterile token
#

And also you have online Json parsers which told you what wrong

quaint mantle
#

He is just writing the datapack, isnt he?

sterile token
#

👍

slim echo
#

I need to think about it

sterile token
#

For plugins never use Json, just use Yaml or Database

glad bridge
#

Is there a way to get build tools to output the spigot jar with the version in the title? IE how paper has Paper-1.18.1-177.jar

quaint mantle
slim echo
sterile token
#

😡

quaint mantle
#

What

sterile token
#

Json a should only be used as Data strucutre

quaint mantle
#

why

turbid grove
#

json is way reliable than the builtin yaml config stuff. not ignoring io exceptions

sterile token
#

I wont fight I only will repeat the same. Json its not designe for persisting data

turbid grove
#

json and yaml are both way to serialize structured data

#

none is better or worse

#

still need to parse/serializebon every load/save

quaint mantle
#

json has nicer syntax

#

gson is nice

turbid grove
#

yaml has more support for bukkit, like item serialization

chrome beacon
#

I mean yaml is a superset of json. So you can use json in your yaml configs if that's what you prefer

cursive scroll
#

adding spigot to the build path seems good until i try to import, it just says org.bukkit.craftbukkit and org.bukkit.craftbukkit.bootstrap as the options and when i try otherwise, i get a unresolved symbol error

sullen marlin
#

?bootstrap

undone axleBOT
#

Bootstrap Jar
The main spigot-1.18.jar is now a bootstrap jar which contains all libraries. You cannot directly depend on this jar. You should depend on Spigot/Spigot-API/target/spigot-api-1.18-R0.1-SNAPSHOT-shaded.jar, or the entire contents of the bundler directory from your server, or use a dependency manager such as Maven or Gradle to handle this automatically.

Please read the release notes for further information: https://www.spigotmc.org/threads/9-years-of-spigotmc-spigot-bungeecord-1-18-1-18-1-release.534760/#post-4305163

cursive scroll
#

thank you

turbid grove
#

yes iirc

quaint mantle
#

yes

#

not caching them, tbh, would be extremely dumb

sullen marlin
#

getConfig is cached

#

the rest is up to you

tender shard
#

I think the question was whether the file is read everytime when doing sth like getConfig().getString(...)

quaint mantle
#

spigot wold be bad if that were true

tender shard
#

speeghurt

sterile token
#

Is difficult to put the player head in tab lines?

sudden raft
#

json is better than yaml for saving data

#

it does not require indent

#

yaml is more like for humans

sterile token
#

Like I want to do this:
when you do tab, before your name appear your head

#

I have seen that its possible but coudlnt find how to do it

slim echo
#

Also hello, how to make sure that it is this effect of the potion that needs to be created by any object?
How do I point this potion in the datapack code line?

glad bridge
#

I don't really use bitbucket, is there a way to git clone without having an account?

#

(specifically the spigotmc bitbucket)

sullen marlin
#

Yes

#

Or just run buildtools

glad bridge
#

This is me wanting to actually play with the source code a bit, that's why I ask

sullen marlin
#

Buildtools downloads the source code

glad bridge
#

yeah but it deletes it when the jar is finished doesn't it?

sullen marlin
#

No, why would it do that

glad bridge
#

Maybe I'm doing something weird then

spiral light
sullen marlin
#

In any case, Bitbucket has a very prominent clone button

#

But you're gonna need buildtools to compile it anyway

glad bridge
glad bridge
#

I truly am an idiot

sullen marlin
#

You're still gonna want to use buildtools

spiral light
sullen marlin
#

Run buildtools and look in the folder, all repos and source are there

glad bridge
#

Oh I see the problem, the script I was using deletes everything when the jar was finished

sullen marlin
#

Ew

#

Scripts that do that suck

#

Costs us so much bandwidth

glad bridge
#

my Jenkins build has the source still, so I was very confused

#

I don't need the script anymore, so at least this will save me a bit of mistakes

left swift
#

How can i set armorstand marker only for client? Probably using packets, but when i trying to do it, it is changing on the server too

spiral light
#

why is it important to the server that it is marker or not ?

left swift
#

I want to put a passenger on the armorstand. When the armorstand is the marker, it loses the hitbox size, so the passenger will be at the bottom, I would like not to change the passenger position, but get rid of the armorstand hitbox

cold pawn
#

Anyone have an answer for this issue?

tender shard
#

wdym "it doesn't work"?

cold pawn
# tender shard wdym "it doesn't work"?

When the corpse is created after the player “dies”, it gets put into spectator because the player is in spectator, if I change the players game mode the npcs game mode will change as well.

I thought that it might be because I’m creating the npcs game profile using the players uuid but if I try and use a random uuid the npc doesn’t show up

tender shard
#

you also have to send a packet to let players know that a new player "joined"

glad bridge
#

again, just for tinkering purposes, if I want to build a buildtools jar, do I just run maven in the buildtools folder?

vocal cloud
#

If the entity gets put into spectator can't you just send a packet to make it not in spectator

left swift
sterile token
#

Md5 I love how you find a way to contimues working on the Project

delicate lynx
#

I am trying to keep data on a trident when a player throws and picks it up. I can set data using PDC no problem. I can set this data on the entity itself or the itemstack. The data is saved when the trident is on the ground. However, when I pick the trident up, the data is gone. how can I keep this data?

tender shard
#

e.g. I do this to show fake entities to players

    @Override
    public void showEntityToPlayer(@NotNull final Object entity, @NotNull final org.bukkit.entity.Player player) {
        PacketUtils.sendPacket(player, new ClientboundAddEntityPacket((Entity) entity));
        PacketUtils.sendPacket(player, new ClientboundSetEntityDataPacket(((Entity)entity).getId(), ((Entity)entity).getEntityData(), true));
    }
quaint mantle
#

Does anyone know how to add children to a path in .yml without using Spigot's built in methods - i.e do it just with SnakeYML?

delicate lynx
tender shard
#

according to this, it should work though :/

#

@delicate lynx

#

this should work

#

I assume you talk about "thrown" tridents that are stuck somewhere instead of normal "item" tridents, right? If so: PlayerPickupArrowEvent

delicate lynx
#

yeah I mean the thrown ones on the ground

#

I will try that instead, thanks

cold pawn
sly trout
#

is it normal that on EntityPotionEffectEvent, when the effect is added both newEffect and OldEffect are null is that normal and how do i get the effect that was added?

neon minnow
#

Hi guys I’m running spigot 1.8 trying to use dlog4j JVM arguments to secure my server how ever it just says error and class doesn’t exist when launching server please help

#

Build tools version latest

hardy swan
eternal oxide
#

build a current upto date spigot jar and it is secure

sly trout
vocal cloud
#

See this is an or. One or the other has to be true. What Action is occuring?

sly trout
#

Action is potion

#

splash

#

and cause is ADDED

vocal cloud
#

So then getNewEffect would be not null

sly trout
#

it is null

vocal cloud
#

So when you use a splash potion the getNewEffect is null?

sly trout
#

yes

#

and old too

hardy swan
#

And did the player get affected by the potion?

sly trout
#

yes

vocal cloud
#

Yeah show code cause it's literally impossible for it to not be working

sly trout
#

?paste

undone axleBOT
sly trout
#

that's my code

#

when you modify the potion effect

#

it works

#

but when you add it it doesnt

#

if you didnt already have that effect its null

vocal cloud
#

Wait so to get this right you know what the old effect is right?

#

You do a useless null check up here because one of them will always be null by nature of the event

#

You're then checking if it's changed which it's not because it's ADDED so it goes to the else to get the old effect but there is not old effect because you're adding a new effect?

#

In my opinion this code is super messy and should be heavily cleaned up before continuing as it's extremely unclear what you want to do here

tender shard
#

that's the normal class name

#

what's your MC version @cold pawn ?

#

you have to use mojang-mapped to get the proper class names. if you just use normal spigot.jar as dependency you only get the obfuscated and renamed mappings

zinc spire
#

Any one knows how to ride and control the ender dragon?

buoyant viper
#

just like ./hack it

tender shard
#

shesh

cold pawn
#

I thought it was because O couldn’t call an instance of it 😅

cold pawn
hardy swan
#

Sorry i looked at the wrong pic

cold pawn
#

lol yeah I was about to ask what you meant

hardy swan
#

And figuring out yourself

short raptor
#

Hey guys, I've created a 1.18 plugin but I want to support 1.16 and 1.17 as well. I'm not using any features not supported by those older versions but my plugin still won't load on them.. should I change the native version of the plugin to the oldest supported version or is there a better way?

sullen marlin
#

yes, you need to code against the oldest version you want to support

tender shard
#

one second

hardy swan
tender shard
#
    @Override
    public void showEntityToPlayer(@NotNull final Object entity, @NotNull final Player player) {
        final PacketPlayOutSpawnEntity packetSpawn = new PacketPlayOutSpawnEntity((Entity) entity);
        PacketUtils.sendPacket(player, packetSpawn);

        final PacketPlayOutEntityMetadata packetMeta = new PacketPlayOutEntityMetadata(((Entity)entity).getId(), ((Entity)entity).getDataWatcher(), true);
        PacketUtils.sendPacket(player, packetMeta);
    }

This is the same method that I already sent, for 1.16 @cold pawn

short raptor
tender shard
#

?notworking

undone axleBOT
#

"Does not working" is a useless statement. Please describe what exactly is not working, what you expect it to do, and what actually happens. If you get any console errors, also ?paste the entire stacktrace.

short raptor
# tender shard "still won't load"?

I know why it's not loading (API version too new) but I'm just wondering if there are steps for supporting older versions that I wasn't aware of

#

That are better than just straight up turning down the version in my plugin.yml

tender shard
#

oh yeah just set api-version to the lowest version you want to support

#

(I always use 1.13 lol)

short raptor
#

Lol I can prolly turn it all the way down to that

#

Since I'm not using netherite or new blocks or anything

hardy swan
#

I always do 1.14 lol cuz that's the village and pillage update

tender shard
#

yeah I also don't actually support 1.13

#

it's just what I ALWAYS use in my plugin.yml because that's what my pom generator always spits out for me to copy paste

zinc spire
tender shard
#

ride, yes. control, not without fake entities and a bunch of NMS

buoyant viper
#

just convert player angles to movement ezpz

#

if looking up move up

zinc spire
#

Can you explain a bit about " fake entities"

tender shard
#

you want to make the player be a passenger of a boat, or minecart, etc. Then you can check in VehicleMoveEvent when the player pressed movement keys and then apply the velocity somehow on the real enderdragon

#

of course the boat, minecart etc should be invisible

#

but tbh it's very very complicated if you want to do it properly

#

what exactly do you want to do? disguise the player as enderdragon?

#

if so there's libraries for that, e.g. LibsDisguises (no idea whether it's still maintained but it was very popular some years ago)

zinc spire
tender shard
#

you could basically just kill the original dragon, then disguise the player as dragon

quaint mantle
#

how do I edit the particle trails of an arrow?

#

Like changing the pattern to the snowflake particle

forest edge
#

You’d have to intercept the particle packet and change it to the snowflake particle

quaint mantle
#

but it probably too stable for the author to update it

#

so he only updates once in a while

cold pawn
forest edge
sterile token
#

Yeah with Ptc. Lib its everything easy

left plover
#

Are there ways to like simulate fake events?

#

Like, simulate a fake PlayerConsumeItemEvent or whatever it's called?

#

Or any event

ivory sleet
#

MockBukkit allows it

#

But in principle, you can just invoke the event with plugin manager

#

Just make sure to not do it infinitely recursively

quaint mantle
#

hello how do i setup spigot in vs cod

#

e

sterile token
#

He?

#

You refer programming plugins with Vscode?

quaint mantle
#

my pc lags with other ide

karmic grove
#

Is there a guide into turining an existing project so it works with gradle

#

In intellij

lavish hemlock
#

IDEA will be able to detect the new buildscripts and sync up with Gradle

quaint mantle
#

anyone know why this code isnt working? im not getting any errors, and i use this EXACT same code all over my plugin

public class OnRespawnEvent implements Listener {
    private Classes main;

    public OnRespawnEvent(Classes classes){
        this.main = classes;
    }

    @EventHandler
    public void onRespawn(PlayerRespawnEvent e) {
        Player ply = e.getPlayer();
        UUID plyID = ply.getUniqueId();
        String calledClass = main.getConfig().getString(String.valueOf(plyID));
        // String realClass = CustomConfig.get().getString(calledClass);

        if (calledClass != null) {
            for (String section : CustomConfig.get().getConfigurationSection(calledClass + ".effects.").getKeys(false)) {

                PotionEffectType type = PotionEffectType.getByName(CustomConfig.get().getString(calledClass + ".effects." + section + ".type"));
                int potency = CustomConfig.get().getInt(calledClass + ".effects." + section + ".potency");
                ply.addPotionEffect(new PotionEffect(type, Integer.MAX_VALUE, potency));

            }
        }
    }
}```
tribal sparrow
#

say if i've got a location and i want to select a cube using a radius, how would i go about getting the max/min of the x,z?

karmic grove
lavish hemlock
#

yes

karmic grove
#

Are all build.gradle and settings.gradle the same

#

Can i copy and paste basicly

hardy swan
#

they CAN be the same

#

but no, they are definitely not all the same

glad gust
#

Player press E to open their inventory, and then move x item to offhand slot
Is there any way to check which item is it, and then cancel it ?

buoyant viper
#

probably

glad gust
vocal cloud
glad gust
#

code here, it's actually cancel when player press F

vocal cloud
#

Yes but you're talking about an in inventory event right?

short raptor
#

This is probably really dumb but I don't know how to make this found 💀

waxen plinth
#

Shouldn't that be 1.16.5 anyways

short raptor
#

Well I want to support all versions of 1.16

#

Does setting it to 1.16.5 do that?

waxen plinth
#

I don't know of any API changes from 1.16.1 to 1.16.5

short raptor
#

I doubt any part of it that I'm using would

#

But still the plugin wouldn't load on 1.16.2 or something if I set it to 1.16.5

#

Either way

#

Idk how to make it any version because they're all not found

waxen plinth
#

The version in the pom.xml only controls what version you're linking against

#

It has no bearing on the actual functionality of the plugin

short raptor
#

When it was set to 1.18 it didn't load on 1.17

#

It just said "api version is too new"

waxen plinth
#

Yeah that's api-version not the pom.xml

#

It's defined separately

short raptor
#

Bruh

#

I'm so dumb

#

Sorry

young knoll
#

Why do you have -SNAPSHOT API

#

isn’t it just -SNAPSHOT

waxen plinth
#

Yea it is

short raptor
#

Without that it still wasn't found but that doesn't matter

#

Cause I wasn';t even looking in the right place

low temple
young knoll
#

Delay adding the effects by 1 tick

mighty pier
#

can someone link me a hikaricp tutorial?

deft crown
#

I can't cast Bukkit.getOfflinePlayer() to type OfflinePlayer (it says that the required type is player) yet the function then causes an error saying that the OfflinePlayer can't be converted to Player. How can I get around this?

mighty pier
#

ty

quaint mantle
#

However this will not work ud player is not online

agile sinew
#

how to use Consumer class?

deft crown
#

Which is why I've been using getOfflinePlayer

quaint mantle
deft crown
#

If I cast it to Player, it causes an error when I try to get the offline player

#

If I cast it to OfflinePlayer, the IDE gives me red squiggly

quaint mantle
#

Show the code

deft crown
#

Ok

deft crown
#

Annoying permissions mean I have to post a link lol

quaint mantle
#

You cant use offline player on method which takes player

deft crown
#

OH

#

I've been reading the error wrong

#

I never would have caught that, thank you

vocal cloud
#

Getting offline player by name is also bad practice

lofty fern
#

Hi! So I finished my first plugin (just repairing an open source one and updating plugins and dependencies) and when I go to put it in my server is says "[23:50:07 ERROR]: Could not load 'plugins/Core.jar' in folder 'plugins'" with no other errors. Any help?

vocal cloud
#

Send the log file

undone axleBOT
lofty fern
#

The log is the .log.gz right?

vocal cloud
#

Should be a latest.log open and dump into paste and send link

lofty fern
#

Found it nvm

#

That shows my stop log not start log

#

Found start one

vocal cloud
#

Well there you go there's your answer

lofty fern
#

I have no clue what thats saying

vocal cloud
#

Read it to me

lofty fern
#

I have never made a plugin before.

#

Just using an open sourced one

vocal cloud
#

The second line says what

lofty fern
#

Oh

#

That again.

#

This is going to make me rage

vocal cloud
#

Don't spoon feed

#

Bad

short raptor
#

O

#

My bad

lofty fern
#

LOL

#

I didn't even read it since I was looking

vocal cloud
#

Gotta let them understand how to read errors

lofty fern
#

It says that but my protocol lib doesn't error in the console while building or in the pom.xml

vocal cloud
#

Do you have the dependency jar in the plugin folder?

lofty fern
#

No. I didn't think it was a plugin.

vocal cloud
#

Try that

lofty fern
#

Yea maybe I should do things and not be an idiot

wet breach
short raptor
#

How does literally every plugin on spigot say 1.16.x 1.17.x then

wet breach
#

because the changes in a minor version does not affect the API

quasi flint
wet breach
#

otherwise that would be a major version change

short raptor
#

Yea so I should be able to support all versions and not just 1.16.5

#

I think I already did that

tidal hollow
#

How can I make right clicking an item give it a 50 second cooldown?

short raptor
#

I was looking in the wrong place when I sent that screenshot

#

I've already fixed that issue lol

wet breach
#

what I am saying is support the highest minor version of a major version and you will be fine

#

and can claim safely you support 1.16 to whatever

short raptor
#

Hmm

#

Doesn't the plugin then spit a big error because its version is 1.16.5 and the server version is 1.16.1 or whatever?

wet breach
#

who is running 1.16.1 over 1.16.5?

lofty fern
short raptor
wet breach
#

so you want to support that one single person over everyone else being sane and using the highest minor version because of security fixes by mojang/spigot?

short raptor
#

It just makes sense that nothing will have changed relevant to my plugin between 1.16 and 1.16.5 so I will support 1.16 so they can run it on all 5 versions

wet breach
#

if you like making it more difficult on yourself sure go for it I guess

#

I can't help if people don't follow the advice of more experienced people

short raptor
#

Isn't it just setting the number to 1.16 instead of 1.16.5?

#

Cuz I just did this

#

And now it supports all of them

#

Doesn't it?

#

Did I misunderstand how that works?

#

I probably did

wet breach
#

no, I am saying stop making it harder on yourself to attempt to support all the minor versions when there is no benefit in doing so

lofty fern
#

@vocal cloud it keeps crashing my server and can't download any of the dependencies.

brave sparrow
#

There’s nothing wrong with supporting more versions if it’s trivial

#

Seems like it’s trivial here

vocal cloud
short raptor
brave sparrow
#

Yeah that should be fine @short raptor

lofty fern
vocal cloud
#

You're screwed lmfao. That's disgusting

wet breach
lofty fern
wet breach
#

but hey do you though people love hard work like this it seems XD

vocal cloud
#

What you're looking at right there is actually disgusting

lofty fern
#

What is it

brave sparrow
short raptor
brave sparrow
#

That most likely means there’s a reason they aren’t upgrading

short raptor
#

In MY case at least

vocal cloud
#

That's some runtime byte code manipulation

wet breach
lofty fern
#

What does that mean

vocal cloud
#

Well for starters it's a terrible way for a plugin to exist

wet breach
#

I believe developers have an inherent responsibility to not encourage using software that contains security flaws

lofty fern
#

Huh?

#

I just am trying to get this open source plugin to work. Is there any way to fix it?

brave sparrow
#

Let people do what they want with their minecraft servers 😂

vocal cloud
wet breach
vocal cloud
wet breach
#

I don't know of experienced developers who encourage use of outdated software just because

lofty fern
brave sparrow
#

There’s a reason plenty of large networks still run 1.8

vocal cloud
vocal cloud
#

It's got to have some sort of xml file called pom.xml

wet breach
vocal cloud
#

or gradle

lofty fern
#

Yea it has pom.xml

wet breach
#

its like saying because someone is popular on youtube they should be a finance adviser

vocal cloud
#

Send that in pastebin

wet breach
#

when they are most likely terrible at finance

brave sparrow
wet breach
#

again popularity does not mean experience

brave sparrow
#

Lmao

wet breach
lofty fern
brave sparrow
wet breach
vocal cloud
brave sparrow
brave sparrow
wet breach
vocal cloud
lofty fern
brave sparrow
vocal cloud
lofty fern
#

Oh wait. You mean just the build section

brave sparrow
#

Collectively decades of experience in development being put towards servers running 1.8

#

So no, experience does not mean forcing the latest version just because

lofty fern
#

Holy my intellij does not like copy paste

wet breach
vocal cloud
lofty fern
#

I think intellij crashed

#

When I refreshed

#

Oh wait

#

Its just very slow

lofty fern
#

Wait nvm. Fixed it

#

Nvm broke again

#

@vocal cloud what did you do to maven-shade

wet breach
# brave sparrow You said _experience_

experience has nothing to do with popularity. Which means those who run outdated software tend to not be experienced to begin with. But as I said before, the large networks are not large because they have experienced developers it is because they won the popularity contest. Its like trying to saying google is the best because they are bigger. Which is not true at all.

brave sparrow
#

Experience is time in industry

vocal cloud
brave sparrow
#

The larger networks can afford to pay for the experienced developers, so that’s who works there

wet breach
#

anyways I am done with this debate if you like to encourage outdated software so be it

lofty fern
brave sparrow
#

My job is to maximize retention and profit, not to evangelize the latest software update

#

That’s where my experience goes

vocal cloud
#

Man yall need to take this argument to DM's

lofty fern
#

@vocal cloud it says this now ```Compilation failure
Bad service configuration file, or exception thrown while constructing Processor object: javax.annotation.processing.Processor: Provider network.palace.core.plugin.processor.PluginInfoProcessor not found

wet breach
lofty fern
vocal cloud
wet breach
vocal cloud
#

Like actually

wet breach
#

but you are free to mute

lofty fern
#

please do

vocal cloud
#

Good idea

lofty fern
#

we are trying to fix something

short raptor
brave sparrow
#

To recap, there’s no need to belittle developers asking for help because they’re supporting multiple versions. Be a more positive influence on the community

lofty fern
#

@vocal cloud the maven-shade-plugin still has the error and I get this ```Compilation failure
Bad service configuration file, or exception thrown while constructing Processor object: javax.annotation.processing.Processor: Provider network.palace.core.plugin.processor.PluginInfoProcessor not found

brave sparrow
wet breach
#

If you want to do the opposite I am not stopping you

brave sparrow
#

Stop gatekeeping minecraft plugins

#

Lmfao

wet breach
#

not that I could anyways 😛

brave sparrow
#

If you don’t want to help you don’t have to, but there’s no reason to belittle others asking for help

vocal cloud
#

Holy shit you guys stop feeding the clown

#

Block him both of you

lofty fern
#

🤡

vapid thorn
#

IMO I don't support outdated versions of minecraft but I don't go out of my way to bother others about it. Just leads to unnecessary arguments.

brave sparrow
vocal cloud
wet breach
brave sparrow
wet breach
#

I don't DM anyways

vocal cloud
lofty fern
#

@vocal cloud

#

You get my messages?

wet breach
#

also you guys know there is threads?

short raptor
#

Discord added like 20 things recently and I can't keep up

wet breach
vocal cloud
#

Try swapping the configuration in the plugin for build with

                <configuration>
                    <source>16</source>
                    <target>16</target>
                    <compilerArgument>-proc:none</compilerArgument>
                </configuration>
#

See if that gets rid of that error

lofty fern
spiral light
#

Guys... i need your input... Why should md5 add a BlockDamageAbortEvent ?

#

whats the use-case ?

wet breach
lofty fern
vocal cloud
#

It should. Works for me at least.

lofty fern
#

Let me try package again I guess

#

Don't think its gonna work tho

vocal cloud
#

run clean first

#

then package

wet breach
lofty fern
wet breach
#

on the site where you can download JDK

#

well oracles site

lofty fern
#

I have java 17 installed

wet breach
#

yes that means you don't have JavaX installed

#

because its not part of the JDK anymore and thus not installed by default

#

which why you are having problems most likely

#

1.11 of java and below javax is part of the JDK

#

but versions after that it is removed

lofty fern
#

I can't find it

wet breach
#

then I am not sure what happened to it either way it annoys me to that some things were removed from the JDK

lofty fern
#

So java 11 works with it?

wet breach
#

but at least now you know what is most likely your problem and thus can most likely solve it 🙂

wet breach
lofty fern
#

imma just install the java 11 then

#

Is it JavaFX you thinking about?

wet breach
#

Maybe, but I also realized in my search that Javax is part of the JCP's so also still possibly you don't have the one that is required

lofty fern
#

I just want to kill this thing

wet breach
#

Anyways they change too much in Java these days -.-

#

good news with Javax is that if you don't have it you can most likely add it as a dependency with maven

vocal cloud
#

Remove the <compilerArgument>-proc:none</compilerArgument> if that's throwing errors. Ugh is the source code public somewhere? Do you have it forked?

wet breach
#

I am interesting in looking at it too

lofty fern
wet breach
#

never had this much problem with shading except with sealed jars

lofty fern
#

all the dependencies are out of date

#

I can't even log into oracle to get java 11

vocal cloud
#

Why are you trying to use this disaster

lofty fern
#

Because the project I am making is an exact replica of the server and one of the plugins I need for the server uses that.

wet breach
#

so is there a reason you need the annotation processor?

#

I mean you are just trying to compile it right?

lofty fern
#

This is the pom.xml I have rnhttps://paste.md-5.net/lecikehaye.xml

wet breach
#

if that is the case you can just remove the annotation processing from maven

lofty fern
#

how

wet breach
#

but not telling maven to process anything, because from the looks of it the annotation for the project you linked is for displaying errors in maven

#

doesn't appear it does anything else

lofty fern
#

the main thing is getting it to work

#

since I tried using it and the plugin wouldnt work

vocal cloud
#

It'd help if they didn't do reflection bullshit for the missing dependencies

lofty fern
#

okay, finally got java 11

wet breach
#

but it appears you might need a jsr dependency not entirely sure, I generally don't mess with annotations as I don't like them XD

lofty fern
#

@vocal cloud what do I do to fix this

#

its 3 am here and my brain hurts

wet breach
#

well I would comment out the annotation processing to see what happens

vocal cloud
#

That's the hard part. You'll probably need to figure out which annotations it is first and then manually setup maven to figure them out

wet breach
#

if it compiles test it out, but like I said it doesn't appear that the annotation does anything except process code on compiling

#

to then display errors to maven log

#

or halt the compile process or fail it

lofty fern
#

Changing java sdk right now

vocal cloud
#

So are you doing this for 1.12?

lofty fern
#

Yea

vocal cloud
#

By asking the developer and not asking here cause this is for development help?

lofty fern
#

bro apparently I can't use java 11

#

I have to use something higher

vocal cloud
#

For 1.12?

lofty fern
#

It says "Module Core SDK 11 is not compatible with the source version 16

vocal cloud
#

8 even works for 1.12 but you'll need to make sure your pom is switched to whatever you're using

#

this should be 11

#

or 1.8

#

or w/e you're building it with

lofty fern
#

and my intellij crashed

#

great

#

I SWEAR

#

okay

#

it works

#

lets try this again

wet breach
#

well I don't see why you need the annotation processing

lofty fern
#

and now I get a bunch of "bannot find symbol"

vocal cloud
lofty fern
#

What do I sent

vocal cloud
#

The error

wet breach
#

the annotation processor being used in that project which is Messenger is for the compiler output

lofty fern
short raptor
#

There's no way to convert an OfflinePlayer to a Player is there.. I don't want to copypaste my whole code just so I can create a second function that accepts OfflinePlayer as input lol

wet breach
#

since intelliJ crashed

lofty fern
#

it didn't just took a while to work

lofty fern
wet breach
#

so yes you can

lofty fern
#

stupid chrome

#

isnt working

#

my temper

#

is

#

ugh

vocal cloud
wet breach
#

you can cast OfflinePlayer to Player or there should be a method in OfflinePlayer to get a Player object

lofty fern
#

thats the full error

wet breach
#

however, as Mike said

short raptor
#

Which is the whole reason I have my OfflinePlayer

wet breach
#

then I am not sure why you would need to convert it to a Player object

#

if they really are offline

vocal cloud
#

A player object only really works if the player is online

lofty fern
short raptor
wet breach
short raptor
#

E.g. both Player and OfflinePlayer have .isOp()

wet breach
#

weird then o.O

lofty fern
#

it didn't do this before when it was calling from the plugins and not the new code @vocal cloud sent me

vocal cloud
#

See you can now restore the old code

#

And see if with 11 it works

#

but I imagine it's going to do the reflection bullshit again

lofty fern
#

I have no idea where the old code is

lofty fern
#

thats what I mean

vocal cloud
#

If you pulled it from github you can rollback the file

wet breach
lofty fern
#

FOUND IT

#

went back to an old pastebin

vocal cloud
#

Rolling back the file doesn't change dependencies

lofty fern
#

okay so it still does the same thing and I have no idea what I did to make it do this

short raptor
lofty fern
vocal cloud
#

maven clean is erroring?

wet breach
lofty fern
#

package*

short raptor
#

Coming from Python to Java typing is hard lol

wet breach
#

and offlineplayer has a method for checking if they are online

lofty fern
wet breach
#

and if you need the online player object

#

you could then just cast back

short raptor
#

Thank you so much lol

lofty fern
#

imma just clear cache real quickly

#

IT STILL DOESNT WORK

#

WHAT THE HELL

wet breach
lofty fern
#

someone help me my brain is about to explode

short raptor
wet breach
short raptor
#

OMG

#

THANK YOU

vocal cloud
lofty fern
wet breach
lofty fern
#

@wet breach do you know anything else I can do?

wet breach
blazing scarab
#

you are a liar

wet breach
#

give me a sec to load up my IDE

wet breach
short raptor
#

If you're joking about that consider your life ended

#

That or trick solves my entire problem so easily

lofty fern
short raptor
#

I can't bear for it to not be real

blazing scarab
tacit drift
lofty fern
#

how do I restore using the github

wet breach
tacit drift
#

one for OfflinePlayer and one for Player

#

he can use the same same for the method tho

short raptor
#

I don't need to change the code within the method at all to make it work with either OfflinePlayer or Player

wet breach
short raptor
#

It's just the datatype the function accepts that's being annoying

blazing scarab
#

i mean, you can do something like this

lofty fern
tacit drift
#

can you cast Player to offlineplayer?

#

or reverse?

blazing scarab
#

player extends offline player

short raptor
wet breach
#

otherwise as far as your errors go though, they seem more like cache problems and really don't know what is the cause of those new errors except that

short raptor
#

🙄 my player variable gets stuck inside the if because of scoping and my issue with datatypes just comes right back

wet breach
#

the only other thing that I could see causing the problem would be that the dependency is compiled with a higher version of java then what you are trying to compile with

lofty fern
wet breach
#

You are trying to shade in core right?

lofty fern
#

yea

#

I have no clue what it means but thats what I was told to do

wet breach
#

are you modifying the project core's pom?

#

like you have a fork of it?

lofty fern
#

yea

wet breach
#

since we don't need annotation you could probably comment out lombok dependency too

vocal cloud
wet breach
#

oh

#

reflection

vocal cloud
#

The library uses reflection to download sources

#

yeah

wet breach
#

well then....

vocal cloud
#

Possibly the dumbest shit I've ever seen

wet breach
#

I mean you could just put the libraries in there

vocal cloud
#

Yeah if it was shaded this wouldn't happen

wet breach
#

since it is a fork of a project, I would go about changing that

lofty fern
#

I GOT IT TO WORK I THINK

wet breach
#

did commenting out the dependency I said work?

lofty fern
#

no but it fixed the other thing

wet breach
#

because your next problem is now going to be needing to shade in dependencies it does require

lofty fern
#

but now it wants me to have javaX again...

#

what the hell is it with this thing and javaX

wet breach
#

yeah I would just go about checking that reflection stuff

lofty fern
#

how

wet breach
#

open up the project in an IDE

#

modify it as necessary

#

XD

lofty fern
#

already is

wet breach
#

You just need to find where the reflection is being used to download the libraries which makes no sense since maven could download those things before and shade them in

lofty fern
#

its 3:30 AM and I still can't solve this

wet breach
#

with the maven shade plugin

lofty fern
#

I have available elements to put into the project when making the artifact

wet breach
#

that is already in the pom, and then adding to the dependencies the tag to compile them instead of saying they are provided

lofty fern
#

yeah but when I shade it wants javaX

#
Bad service configuration file, or exception thrown while constructing Processor object: javax.annotation.processing.Processor: Provider network.palace.core.plugin.processor.PluginInfoProcessor not found

wet breach
#

Because reflection is being used

#

you could remove that annotation class too

lofty fern
#

I fixed it.

#

I can't believe

#

it was that stupid

#

NEVERMIND

#

It shaded all the dependencies but I still get "Cannot Find Symbol"

wet breach
#

but there is some other areas in regards to reflection that would need to be removed, I can't exactly tell you. This is part of being a developer sometimes 😛

#

alright now time to load that IDE so I can check out that or thing

lofty fern
wet breach
#

you can send it if you want, but like I said the annotation is there because of reflection

#

remove the reflection and annotation isn't necessary. But the reflection is there because it downloads the libraries it needs at runtime which is dumb

#

when it could have shaded them in

lofty fern
#

but where is the reflection

vocal cloud
#

Look for something that loads dependencies

wet breach
#

well I guess it isn't dumb to load libraries at runtime, but I don't think reflection would be necessary for such things 🤔

lofty fern
#

The only thing I could think of is the maven repository

stoic atlas
#
version: '${project.version}'
main: me.fanisus.tutorial.Main
api-version: 1.18
description: This is description
website: This is website
author: Fanisus
commands:
  setspawn:
    description: My N
    usage: /<command>
    aliases: ["sethome"]
  spawn:
    description: Test
    usage: /<command
    aliases: ["home"]
  www:
    description: command
    usage: /<command>```
This is my plugin.yml
How do i set permission so that only operator can use www command
vocal cloud
wet breach
#

well yes, but spigot enforces a size limit

#

so I can see where it is necessary to download dependencies instead

lofty fern
#

Can someone just tell me the answer. My brain hurts and its going on 4 AM and I have a big day tomorrow.

wet breach
#

just I don't think it was necessary to use reflection was all

vocal cloud
lofty fern
wet breach
vocal cloud
wet breach
#

I personally use netbeans but it doesn't mean the project compiles differently because of such

wet breach
#

?services

undone axleBOT
wet breach
# stoic atlas help
BukkitWiki

When Bukkit loads a plugin, it needs to know some basic information about it. It reads this information from a YAML file, 'plugin.yml'. This file consists of a set of attributes, each defined on a new line and with no indentation.

A command block starts with the command's name, and then has a list of attributes.

A permission block starts wit...

stoic atlas
#

thanks

#

i will check it out

wet breach
#

it describes all the attributes you can use including permission ones

stoic atlas
#
  inferno.*:
    [optional permission attributes]
  inferno.flagate:
    [optional permission attributes]
  inferno.burningdeaths:
    [optional permission attributes]```
#

whats? inferno

wet breach
#

the complete permission path

#

which is whatever you decided it to be

#

but its using it as an example

stoic atlas
#

can you spoonfeed me one line of code, i really dont understand

#
    description: Just a command Testeral
    usage: /<command>
    permission:```
what permission i need to use so only op can use it
wet breach
short raptor
stoic atlas
#
    description: Just a command 
Testeral
    usage: /<command>
    permission:
        default: op```
#

?

wet breach
lofty fern
#

@vocal cloud if I just installed the .jar file into the plugins folder that it was reflecting would that work?

#

I FREAKIN DID IT

#

LETS GO

#

OML

#

OML

#

OML

wet breach
#

lol

lofty fern
#

I just need to update the source option

#

and it will work

wet breach
#

alright, sounds like you are making progress then 🙂

lofty fern
#

I don't know how to fix this though 😬 ```Source option 5 is no longer supported. Use 7 or later.

Language level is invalid or missing in pom.xml. Current project JDK is 17. Specify language level in Core

vocal cloud
#

Google it

lofty fern
#

i am right now lol

wet breach
#

if you are using java 11, highest you can set it is java 11 😉

lofty fern
#

Im using 17 rn

#

since it didn't like 11

wet breach
#

then you can set it to 17 or anything below 🙂

#

don't recommend if you are using java 12 or higher that you compile for lesser then 12 though due to some changes that make it difficult to sometimes compile that far back XD

lofty fern
#

I set it to 17 and it says this now ```Compilation failure
Bad service configuration file, or exception thrown while constructing Processor object: javax.annotation.processing.Processor: Provider network.palace.core.plugin.processor.PluginInfoProcessor not found

#

the same

#

frickin error

wet breach
#

try 16

#

I wonder if the reflection being used is making use of obsolete reflection methods 🤔

lofty fern
#

I accidentally set it to 176 real quick there

#

says the same thing

wet breach
#

if that is the case, then odds are you could only compile for java 8-10 unless you go change that reflection stuff like I recommended earlier since you have control of the source anyways

lofty fern
#

when I opened it originally everything was java 11

wet breach
#

just because you forked it or whatever doesn't mean you are not allowed to make changes to fit your needs XD

#

now I remember why I normally keep my IDE open

#

keeping it closed for too long means I have to wait for maven central unpacking >>

lofty fern
#

I can't figure this out

#

bruh

wet breach
#

time to start learning it seems

jagged thicket
#
    public void onUAR(UltimateAutoRestartRestartEvent event) {

        UltimateAutoRestartAPI.setInterval(UltimateAutoRestart.getInstance(), 60);

        Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
            @Override
            public void run() {
                Bukkit.broadcastMessage(ChatColor.GREEN + "click on vote to delay the restart");
                TextComponent message = new TextComponent(ChatColor.RED + "click this to vote");
                message.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/restartvote"));
                Bukkit.getServer().spigot().broadcast(message);
            }
        }, 20L); //20 Tick (1 Second) delay before run() is called



        for (Player player : Bukkit.getOnlinePlayers()) {
            PermissionAttachment attachment = player.addAttachment(plugin, 1200);
            attachment.setPermission("voterestart.vote", true);
        }
    }```

in this the permission gets added but the text component is not getting broadcasted
wet breach
lofty fern
#

I HATE THICK FRICKIN PLUGIN

jagged thicket
#

stilll nothing broadcasts

#

any ideas?

vocal cloud
#

Send each player the message individually?

#

Also why is it in a runnable?

lofty fern
#

Anyone help please. Bad service configuration file, or exception thrown while constructing Processor object

#

Its 4 AM and I am tired

vocal cloud
#

Hire someone to do it

chrome beacon
#

If nothing is working go to sleep. Usually helps quite a bit

#

Being tired does not help at all

hollow sand
#
for(int i = 0; i < 35; i++) {
                if(player.getInventory().getContents().equals(Material.ARROW)) {
                    if(event.getAction().equals(Action.RIGHT_CLICK_AIR) ||
                            event.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
                    if(player.getInventory().getItemInMainHand().getItemMeta().getDisplayName().equals(ChatColor.BLUE + "Artisanal ShortBow")) {
                        Arrow a = (Arrow) loc.getWorld().spawnEntity(loc, EntityType.ARROW);
                        Vector v = loc.getDirection().multiply(0.7692307692307692);
                        a.setVelocity(v);
                        player.getInventory().getItem(i).setAmount(player.getInventory().getItem(i).getAmount() - 1);
                        }
                    }
                }else {
                event.setCancelled(true);
            }
        }``` Would this work?
chrome beacon
young knoll
#

No

#

getContents will never equal a material

hollow sand
#

then how would I be able to get the material?

chrome beacon
#

Get the item in the slot and then material from that

hollow sand
#

thanks

#

how about

#

player.getInvetory.getType.equals

#

?

chrome beacon
#

No that's an inventory

#

Not an item(stack)

hollow sand
#

if I do Inventory#getItem()

#

getItem takes in an int

#

oh wait ._.

chrome beacon
#

Which is the slot

hollow sand
#

I can just

#

Inventory#getItem(i).equals()

#

yes?

#

since i

#

is looping thru the players inventory

#

and will get the item

chrome beacon
#

Use getItemInMainHand since I assume that's what you want

hollow sand
#

I want to loop thru the players inventory

#

the whole 35 slots

#

I believe

young knoll
#

36

hollow sand
#

yes

young knoll
#

Just loop over getContents

chrome beacon
#

^

hollow sand
#

and I need to get the material

young knoll
#

They are itemstacks

#

Itemstacks have a getType

hollow sand
#

so like

#

getContents().getType()

#

?

chrome beacon
#

No

#

Loop getContents

hollow sand
#

u huh

#

I'll figure it out

#

tyvm!

turbid grove
#

is there any reason to use ChatColor enums instead of §+code when sending colored messages?
it might be unnecessary optimization (since String concatenation is more expensive than hardcoding into messages like "§4hello red")

young knoll
#

Because using the color character is meaningless

#

Also the compiler probably optimizes it to a fixed string anyway

wet breach
# short raptor I can't bear for it to not be real

Ok I was wrong, not sure why I thought you could that. Maybe I was thinking of something else. Anyways the original way I said to do it, least common ancestor superclass which in your case is going to be OfflinePlayer because Player extends from that. Second, you can easily check from the OfflinePlayer object if they are online in the beginning of the method and if they are, switch the object back over to Player instead.

quaint mantle
#

But meh color codes sucks anyways

turbid grove
quaint mantle
ivory sleet
#

Yeah

young knoll
#

Aww

#

That’s lame

quaint mantle
#

(use components)

young knoll
#

Java 0/10

ivory sleet
#

I mean jit is always good but you shouldn’t rely on it rly

quaint mantle
#

Spigot 0/10

short raptor
young knoll
#

Components for a simple coloured message is a pain

wet breach
# turbid grove is there any reason to use ChatColor enums instead of §+code when sending colore...

there is Message Formatting or String Formatting where you don't need to do that as you said. Second, the API takes care of sending the message appropriately due to encoding(not usually a common problem but from time to time happens) So because the API/Code is already setup to send the codes appropriately adding that character and code yourself can screw it up as well as just make it harder for your code to be dynamic/changeable since you now hardcoded it instead.

blazing scarab
#
LinearComponents.linear(NamedTextColor.RED, text("Red text u know "), NamedTextColor.BLUE, text("sssss"));
``` 😎
wet breach
#

do you have to use the Enums? No, but might as well make use of the API if it is there instead of making it harder on yourself

turbid grove
blazing scarab
#

not too much different from

String text = ChatColor.RED + "Red text u know" + ChatColor.BLUE + "sssss";
wet breach
#

depends which string formatter you make use of

tardy delta
glossy venture
#

how do i register a listener which i can then unregister later

blazing scarab
glossy venture
#

wont that unregister all listeners of that one event

#

i want to unregister one listener for all events it captures

#

is there a way to do that?

wet breach
#

it is generally recommended to use a string builder though instead of doing string concatenation(AKA using +). How you can know when to use one or the other, is if what you concatenating are constants then using + is going to be better because the compiler will just inline it easily, but if they are not constants then you probably should use something like StringBuilder or String.format to format your strings as overall it will be more optimal at runtime as well as compiler being more easily able to optimize better.

young knoll
#

You can pass a class instances to unregisterAll

blazing scarab
glossy venture
#

yeah i know but will i have to do that for all events it captures?

blazing scarab
#

no

#

Thats literally why its called unregisterAll

glossy venture
#

wait what handler list are you talking about

#

is there a global handler list?/

blazing scarab
#

Thats a static method..

glossy venture
#

okay so i can just do like

Event.getHandlerList().unregisterAll(...);
``` and it will work for everything
blazing scarab
#

what

glossy venture
#

shit im stupid

blazing scarab
#

HandlerList.unregisterAll(listener0

ivory sleet
#

orbyfied I believe each HandlerList instance for every event is stored somewhere, whether it is in a static list or not idr but there’s a method to get those and unregister those as such

glossy venture
#
HandlerList.unregisterAll();
``` you mean this?
ivory sleet
#

Ye

glossy venture
#

oooh

wicked birch
#

Can anyone help me with this? It's spamming it into console:
[11:53:52 WARN]: [Residence] Task #61 for Residence v5.0.1.1 generated an exception java.lang.NoSuchMethodError: 'void io.github.thebusybiscuit.slimefun4.libraries.dough.protection.ProtectionManager.registerModule(org.bukkit.Server, java.lang.String, java.util.function.Function)' at com.bekvon.bukkit.residence.slimeFun.SlimefunManager.lambda$0(SlimefunManager.java:23) ~[Residence.jar:?] at org.bukkit.craftbukkit.v1_18_R1.scheduler.CraftTask.run(CraftTask.java:103) ~[paper-1.18.1.jar:git-Paper-177] at org.bukkit.craftbukkit.v1_18_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:483) ~[paper-1.18.1.jar:git-Paper-177] at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1547) ~[paper-1.18.1.jar:git-Paper-177] at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:480) ~[paper-1.18.1.jar:git-Paper-177] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1470) ~[paper-1.18.1.jar:git-Paper-177] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1264) ~[paper-1.18.1.jar:git-Paper-177] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.18.1.jar:git-Paper-177] at java.lang.Thread.run(Thread.java:833) ~[?:?]

glossy venture
#

thanks

wet breach
#

there is various methods for the listeners. Just makes sure you read the javadocs because some methods act on your listener only, your plugin only or you could just unregister all listeners regardless lol

#

?jd

ivory sleet
#

Tho it is a horrible design, having those methods static imo

#

😅

blazing scarab
#

Yep

#

counter-intuitive

young knoll
#

Everything should be static

blazing scarab
#

yeah lets go back to the C

ivory sleet
#

Lol

wet breach
ivory sleet
#

Unit testing