#help-archived

1 messages · Page 148 of 1

frigid ember
#

that's all it gives lmao

subtle blade
#

There's likely more in the actual log

frigid ember
#

Aight hold up lemme take a look

ashen dove
#

How can i use HEX colors in tablist prefixes? Can i use Base Components?

frigid ember
#

literally all it gives

#

🤷

#

No issue on 1.15, only on 1.16

subtle blade
#

You're on the most recent version? I'd fixed a NPE regarding campfires recently

#

These errors look like they're on a similar period

frigid ember
#

I updated like 6 hours ago

#

It occurs, then goes away, then comes back

subtle blade
#

Can I get the output of /version?

frigid ember
#

Last happened about an hour ago

subtle blade
#

Only thing I can think of is there being a plugin that suppresses stacktraces

hoary parcel
#

I will never get why the version command doesnt say its running spigot

subtle blade
#

because there has to be more than just that line

frigid ember
#

To my knowledge there's not, but I'll have to take a look

subtle blade
#

because as far as that log goes, that error can be caused by literally anything and I'm leaning more towards it being a plugin itself that's causing the error and it's handling the logging of said error very poorly

#

If it were the server, it would have crashed

#

or at least been more detailed

frigid ember
#

Yeah, I'm thinking outdated plugin 🤷

subtle blade
#

More than likely

frigid ember
#

It's not the end of the world, nothing stops working so

subtle blade
#

Just a nuisance is all, yeah

alpine flare
#

i'm back

coral bramble
#

Does somebody know how to set a server to a lobby so that you will be send to this server if you join? (Bungeecord)

alpine flare
#

essentials do not work ?

graceful silo
#

@alpine flare build 128 works wit spigot 1.16

#

but that was 2 days ago so check

#

129 and 130 do not tho so watch out

frigid ember
#

how to start up a server

alpine flare
#

what is 128/129 and 130 @graceful silo

graceful silo
#

essentials 1.16 builds

alpine flare
#

ok thx

graceful silo
alpine flare
#

thanks c:

#

do you have a link for luckperms on with essentials? @graceful silo

hearty grotto
#

is there somewhere to read about bugs in spigot 1.16.1 ?

odd knoll
nimble stump
hearty grotto
#

ty ❤️

frigid ember
#

If i have one server. (Without vm's) would it be more efficient to run multiple worlds with multiverse or with bunjeecord. I understand that these are completely different, but i am trying to find out what is better for me to run on my machine.

young latch
#

Bungee cord better for stability if your using lots of plugins

sleek tree
#

Hey, my server keeps dropping TPS massively. Timings looks like its worldSave, anyway to fix this issue?

frigid ember
#

Is it possible to disable the minecraft:respawn_anchor explosion?

tiny dagger
#

eventually

wet matrix
#

ItemMeta.getDisplayName seems to translate hex colors to a formatting code with the last number of the hex color, but I'm not sure what would be a better solution without just allowing us to get BaseComponent[] for itemname. (which I'd be down with)
#123456 -> &6
#12345a -> &a

unreal jackal
#

evening, i got a problem with dynmap. i can only use localhost. and i want to use my servers ip as the replacement of localhost. i changed the 0.0.0.0 in the configuration.txt but it said in console that it failed to bind to it.

odd knoll
#

Try setting it to the IP of the server instead of 0.0.0.0 and see if that works. Also make sure the port isn't being used by anything else.

unreal jackal
#

the port is not used by anyone/anything els as i can see. and 0.0.0.0 works

#

i used my ipv4 instead dof 0.0.0.0 too and that worked aswell

#

but i dont really want them to use my ipv4 ofc xD

odd knoll
#

So what do you want them to use? Coz that's your server's IP.

#

If you want them to use a domain, you can do that with DNS records with whatever provider you have for them.

unreal jackal
#

in my server.properties i have no server ip set

#

you mean like webforward?

odd knoll
#

So you want to fully hide your IP from them no matter what of both your server and dynmap?

unreal jackal
#

well i got my server ip adress which is using my public ip.
and i want them to use my server ip adress. so if they try to like trace the ip. they get to only see my public ip and not like my ipv4

odd knoll
#

Sorry, I'm really confused about you saying like server IP, your public IP, not your IPv4 and stuff and I don't get what's running where or what you want to share.

unreal jackal
#

i'll say it as detailed as i can than.

i am running a pc hosted server. which uses my wan (public ip) to allow players to join. yet i did not like the numbers so i used Freedns. to change the number ip to a acctual ip with letters and such.

so i want the dynmap to use my server ip aswell. so that if a hacker or such tries something they only see my wan. i tried to use my ipv4 with dynmap and that worked. but i dont want to use it because that ip is something i should not just let go flying around right? so thats why i wanna use my server ip.

odd knoll
#

I mean, theoretically, with your dynmap you could use NGINX or Apache to reverse proxy (so it's not on like, port 8123 or whatever) it then put it behind cloudflare as it's web based if you have a domain.

#

But otherwise if you don't have a domain, I assume you could just do the same thing with freedns?

#

Also, freedns' site still looks straight out of 2005

unreal jackal
#

i mean freedns is good

bitter tendon
#

Why is Entity.setPersistent deprecated and what is the new way?

unreal jackal
#

but freedns does change the number ip to a letter one..

unreal jackal
#

but if people like try to trace the letter ip they still eventually see the number ip

rich olive
#

nice

#

I'll give it a go

narrow vortex
#

everytime my friends go to the end city the server crashes

#

any fix for this

subtle blade
#

Uuuuuupdate your serverrrr

#

Fixed 4 hours after initial release

narrow vortex
#

ok

odd knoll
#

@unreal jackal then you'll need a service like cloudflare that puts a proxy in front of the server and delivers it through there instead (e.g if you ping my website, or spigot or many others, you'll get a Cloudflare IP).

subtle blade
#

mfw people in that ticket saying "THIS IS DEFINITELY MULTIVERSE'S FAULT!" as if they're confident and knowledgeable on the topic

#

They're going to be very upset knowing the fix is to update their servers

rich olive
#

yeah

#

kinda upset me

#

but it's ok

subtle blade
#

Active development. Shit will break unfortunately PES_SadShrug

#

We'll get to a point where it's stable! 😄

azure cargo
#

@unreal jackal What you're calling your "ipv4" (presumably something like 192.168.x.x) is the IP of your PC in your local network. Other people from outside of that network cannot connect to either your MC server or Dynmap with that IP, as it only exists in your local network. Also, what you call an "actual ip with letters and such" is a domain (or subdomain).

As to why your Dynmap is not working with your public IP: what port is Dynmap running on and have you done the necessary port forwarding for that port?

rich olive
#

lol it's all good

#

it's working so I think we're good now

unreal jackal
#

@azure cargo thank you for clarifying the ipv4 etc. i had first dynmap running on its default set port 8123. after that i tried a already portforwarded ip i have in use also by my votifier 29949 and it didnt work.

odd knoll
#

Two services can't use the same port, which is why it would've errored.

azure cargo
#

You can't have multiple services using the same port

unreal jackal
#

hmm alright, so does it mather how many digits the port of dynmap is?

azure cargo
#

not really

unreal jackal
#

so i can just use like 29959?

azure cargo
#

I'm not familiar with the conventions of network ports (if ones exist?), but yes you should

subtle blade
#

That being said, 13 hour turnaround time isn't too bad, nicegamer 🙂

unreal jackal
#

@azure cargo thats the error i see in my console

#

but that was still with 8123

#

ive got the exact same error rn but than with my rn forwarded poort 29969

#

ive forwarded aswell in my firewall/router

#

ofcourse.

torn shale
#

So I am confused

subtle blade
#

So update your server

torn shale
#

wdym update

subtle blade
#

That was fixed literally a few hours after the first release

#

?bt

worldly heathBOT
azure cargo
#

@unreal jackal Change the IP in the dynmap config to your public IP, the one with only numbers

subtle blade
#

You're 46 versions out of date, Shridings

unreal jackal
#

same error

#

for somereason it only worked when i used my ipv4.. :l

azure cargo
#

try that once more, but in your browser use your public ip or subdomain to connect (with the port ofc)

#

or you could just use 0.0.0.0

#

in the config

unreal jackal
#

uhm

#

the wan ip didnt work it just said it loaded to much

#

so i changed the ip to 0.0.0.0 in configurations and that did work?

#

i can even use my subdomain instead of the wan

azure cargo
#

So it's working now?

unreal jackal
#

is it becaus i used a diffrent port and forwarded that?

#

yeah

azure cargo
#

yes

#

It can't work if you don't port forward

unreal jackal
#

awesome! thank you! for that help! also a littlee question xD how do i set it so people straight see a specific world and see surface instead of flat xD?

azure cargo
#

And my bad for telling you to put your wan ip in your config, of course that wouldn't work :p

#

@unreal jackal Sorry but I don't know, I've never set up Dynmap myself

unreal jackal
#

ah well in that case

#

thanks alot!

#

have a good day further =D!

azure cargo
#

You too

torn shale
#

I don't understand how build tools works

subtle blade
#

That's why we have a wiki detailing step by step instructions

glacial orbit
#

you download it, and run it with java -jar

subtle blade
#

All you really have to do is install Bash and then run a command. BuildTools does the rest

peak portal
#

Hey guys I'm trying to protect my spawn with world guard, but when I deop to test it. i can still break it.

frigid ember
#

@peak portal make sure that when you do /rg flags that the build is off.

#

tell me if it works

peak portal
#

Passthrough, build, and interactions are currently deny

golden valley
#

so i have a really weird issue on bungee, or maybe the server? im not sure. i have a whitelist in place that players can join the server on and one player cannot join even though he is on the whitelist

proper wolf
#

!paste

#

?paste

worldly heathBOT
frigid ember
#

do you have any sort of perms @peak portal ?

#

luckperms pex etc

golden valley
#

im not partial to a whitelist but i wanted everyone to have access to the portals, but only some to specific worlds

proper wolf
peak portal
#

I don't have luckperms yet. I was trying to get this working before I learned about that

graceful silo
#

do you have a link for luckperms on with essentials? @graceful silo
@alpine flare sorry for late reply man but uhh im still on a super old version of luckperms, works on 1.16

#

oh LOL yall was talkin bout luckperm anyway

#

nice timing

proper wolf
#

You should update.

graceful silo
#

cant... they changed the api & i have my plugins hooked up

proper wolf
#

oof

graceful silo
#

and by my plugins i mean my spaghetti

proper wolf
#

lel

#

Could you assist with this error?

graceful silo
#

hmmmm well my first question would be is this 1.16

proper wolf
#

Yes

#

I believe it is 1.16.

#

the latest jar is causing issues

graceful silo
#

whats the plugins name? mcwastelandscore doesnt show up on duck google

proper wolf
#

its custom bro

graceful silo
#

i'd check if theres an update for 1.16 for that plugin

#

ohhhh

#

oh then i have no clue ;-;

jaunty night
#

@proper wolf are you the developer of that plugin?

proper wolf
#

Yes

#

im updating my spigot jar

jaunty night
#

It could be an issue with your code

proper wolf
#

the exact same code works fine with other classes

#

That one class it seems

#

That handles the command

jaunty night
#

Do you know how to set up a debugger for your plugin?

proper wolf
#

Not really I partially have my own debugging in place.

#

System.out.PrintIn("test")

#

Where applicable

jaunty night
#

I'm talking about break point debugging

proper wolf
#

No.

jaunty night
#

Ah

graceful silo
#

wait what

proper wolf
#

I know where it is broken.

graceful silo
#

you can use a debugger wit plugins

#

wat.jpg

proper wolf
#

Idk why tho

jaunty night
#

Yeah you can

graceful silo
#

how LOL

#

omfg

jaunty night
#

What ide do you use?

graceful silo
#

eclipse

jaunty night
#

Ah

proper wolf
#

IntelliJ for me.

jaunty night
#

I only know how to do it with Intellij

proper wolf
#

Can you guide me?

graceful silo
#

ima have 2 either google dis or switch text editors

jaunty night
#

But in IntelliJ you wanna grab a spigot jar file

proper wolf
#

I use Maven...

jaunty night
#

Doesn't matter

#

The spigot jar file is used to create a debug server of sorts

#

And then in your project your wanna make a directory, doesn't really matter what it's called, I tend to call it debug

proper wolf
#

you know im just gonna re-write the classes

#

cuz

#

it's only in that one class

spring notch
#

Hey, I'm having an issue on my Spigot 1.16.1 server relating to items with attributes from 1.15.2. Specifically, armor with a max health attribute made in 1.15.2 and transferred to 1.16.1. When a client loads the armor in Spigot 1.16.1, they're removed from the server with exception: Name cannot be empty. Running with no plugins still replicates the issue, but running the vanilla server.jar does not.

jaunty night
#

Could be an issue with data fixers but idk much about nms

#

If it's it occurred with no plugins it's probably a spigot bug

#

So report it on there JIRA

winged sparrow
#

@spring notch Iirc how attributes are named and mapped changed in 1.16

spring notch
#

yea they did, all the other items had their attributes preserved or removed but for some reason armor with max health attributes cause people to crash on spigot

fleet crane
#

Pretty sure even the Mojang change log said no custom attributes now

subtle blade
#

Aren't they part of a registry though?

#

Also, suddy, make sure you're on the latest version. There was a bug with attributes over the last few days

proper wolf
#

?paste

worldly heathBOT
proper wolf
#

This code is breaking it

severe cave
#

So, I found a bug that the overworld is in survival but the nether is in peaceful, but when I switched the server jar to vanilla, it just whipped my nether, any solutions of keeping my nether but changing its difficulty?

proper wolf
#

Use multiverse

severe cave
#

I should say, a bug in the new 1.16.1

#

wiped*

proper wolf
#

it could potentially be a bug

#

in which case you need to open a ticket i believe is the correct process.

fleet crane
proper wolf
#

there's the solution

#

what's in the latest Spigot 1.16.1 MD?

subtle blade
#

*shivers*

#

*twitches*

fleet crane
subtle blade
#

It's fine, Choco. Some people like light themed Discord. IT'S FINE

proper wolf
#

?changelog

#

can you add a command to send that link?

subtle blade
#

We usually just link to the stash

#

Though I don't see why not

proper wolf
#

tis' a suggestion fam

#

has stroke because of the light theme

subtle blade
#

?changelog

worldly heathBOT
proper wolf
#

cool

#

?eta

worldly heathBOT
#

There is no ETA. Having an ETA leads to unrealistic deadlines, false hope, and a bad product. It will be ready when it's ready.

proper wolf
#

aw the days when this was a thing

sharp hawk
#

Rather than an ETA I like to see progress bars ^__^

violet ivy
#

Hello, is anyone here running the latest Spigot 1.16.1 jar that can help me replicate something?

proper wolf
#

meh

#

Sure

violet ivy
#

I can't get any Bees to spawn

#

I've forced several beehives to spawn and they just sit vacant

#

on git-Spigot-1a27cfd-d77f4d9

subtle blade
#

Naturally you mean? Or just with a spawn egg or the summon command?

violet ivy
#

They work with spawn eggs and summon, just not spawned hives

fleet crane
#

what is a 'spawned hive'

#

bee nests arent full of bees by default

violet ivy
#

Forcing them to spawn by growing saplings next to a flower

subtle blade
#

Yeah those are empty

violet ivy
#

Is the wiki outdated then?

fleet crane
#

they shouldnt be, SPIGOT-5537 was fixed months ago

violet ivy
#

Oak and birch trees grown from saplings that are within 2 blocks of any flower have 2% chance to grow with a bee nest with 1-3 bees in it.

subtle blade
#

Bees just miraculously appear when using bonemeal on a tree? o.O

#

TIL

violet ivy
#

Also when using a Vanilla jar the beehive spawned bees just fine

#

This is on a server with no plugins as well

lime harness
#

haven't touched any of these classes but still get a build error

frigid ember
#

so i'm trying to check if this location is null to set the location but point1 keeps giving me NaN (getHeart() is just a normal Location)

if(m.getHeart() == null) {
  m.setHeart(pl1.getLocation());
}
Location point1 = m.getHeart();```
subtle blade
#

Ehm... what all did you copy over, ceezuns?

fleet crane
#

@lime harness did you use buildtools?

#

looks like you havent run ./applyPatches (buildtools does this by default)

lime harness
#

hmm

#

i was using buildtools, got the same result then i pulled a fresh copy down let me attempt it

fleet crane
#

anyway I'm going to go make lasagne

subtle blade
violet ivy
#

Is there a place I should submit this to?

subtle blade
#

After pics or it didn't happen

#

If you can consistently replicate this with no plugins, then the JIRA

frigid ember
subtle blade
#

?jira

worldly heathBOT
proper wolf
#

My items are kept in my inventory despite having keepInventory false.

#

is that a bug?

subtle blade
#

One sec. About to start up a server, will try to reproduce

#

Just building a development version

lime harness
#

lol somehow i had deleted the whole NMS folder....

#

lmao

subtle blade
#

Whoops 😛

#

My inventory is still lost despite keepInventory being false, so it's not a Spigot bug

#

A plugin is likely the culprit

proper wolf
#

Yeah that was my second option.

#

What plugin tho

#

Choco

#

My custom plugin is ruled out.

subtle blade
#

Absolutely no clue. Probably some grief preventing plugin

#

WorldGuard, GriefPrevention, etc.

proper wolf
#

WorldGuard could be the culprit

spring notch
#

Also, suddy, make sure you're on the latest version. There was a bug with attributes over the last few days @subtle blade

I can get the new version through build tools right? Where can I see version history?

subtle blade
#

?changelog

worldly heathBOT
subtle blade
#

Also, yes, BuildTools

spring notch
#

Ty

#

didn't seem to fix it

candid prawn
#

so I ran buildtools "java -Xmx1024M -jar BuildTools.jar --rev latest" and it gave me spigot 1.15.2? did I miss something?

surreal wyvern
#

use BuildTools.jar --rev 1.16.1

candid prawn
#

does that give the latest version they have for 1.16.1?

subtle blade
#

Yes

#

1.16.1 isn't considered the default "latest" version yet as it's not in a state where we can consider it "stable"

candid prawn
#

ok thanks. Guess I missed the part latest only covers till 1.15.2 (currently)

subtle blade
#

It will be in due time, but until then, --rev 1.16.1 to build it

candid prawn
#

awesome, thanks guys

cold steeple
#

uhhh - my srever randomly crashed and now it won't start up again. It keeps giving me this message - is it spigot related or no? Any idea on how I can fix it? Please help.

#

28.06 04:48:26 [Server] INFO /usr/bin/docker: Error response from daemon: Conflict. The container name "/mc4802" is already in use by container "215039f803ac5be75e48d1359ad8346e45314d5314788be0e109bba57808259a". You have to remove (or rename) that container to be able to reuse that name.
28.06 04:48:26 [Server] INFO See '/usr/bin/docker run --help'.

#

That is the only error message I seem to be getting and nothing else

subtle blade
#

The Event constructor accepts a boolean to state whether or not it's async

#

have your constructor call the super constructor with said boolean set to true

#

(or if it's variable, pass a boolean value to your constructor and delegate it upwards)

dreamy tide
subtle blade
#

That's the one

pastel arrow
#

Worked. But now I have to run other events sync.

#

Thank you.

narrow vortex
#

where can i download the lastest version of spigot

onyx yew
#

how do I make a server?

proper wolf
#

Use buildtools.

#

?bt

worldly heathBOT
lofty meadow
#

Hello! I want plugin A can access to plugin B and plugin B can access to plugin A back. How ? I've done, but it error about load before.

gilded bobcat
#

Have a look at java getServer().getPluginManager().getPlugin

lofty meadow
#

I think if

[B] loaded
[A] enabled
[B] enabled```
I can do it, because I make an accessing code in `onEnable()` function, but it is :
```[A] loaded
[A] enabled
[B] loaded
[B] enabled```
So, B can access to A, A can not
#

Have a look at java getServer().getPluginManager().getPlugin
@gilded bobcat It doesn't work fine

#

Any idea?

gilded bobcat
#

Always works fine for me when my plugin loads after its dependencies.

lofty meadow
#

Hmm... 🤔

hardy cedar
#

Guys how to delay an action in a event?

#

Is it even possible

#

?

#

Im trying to remove a player from ArrayList after the event is cancelled by 2 secs

gilded bobcat
#

getServer().getScheduler().scheduleSyncDelayedTask

#

you can specify up to 3 parameters. It requires your plugin instance, the task, and optionally, the delay amount

hardy cedar
#

Can i get an example pls :o

gilded bobcat
#
private void scheduleTask(Player play){
        mainInstance.getServer().getScheduler().scheduleSyncDelayedTask(mainInstance, new Runnable(){
        
            @Override
            public void run() {
            }
        }, 100L);
    }
#

thats how i use it, it works, maybe not entirely proper, but, like i said, it works

hardy cedar
#

Ok tysm

lofty meadow
#

Hello! How to color(text) in console ?

#

ChatColor just for in game

hardy cedar
#

Use this
“§”

lofty meadow
#

I see ChatColor.GREEN(It convert to a string) the same to "§a"

hardy cedar
#

I believe it's working for me idk about u

lofty meadow
#

Ok, I'll try

#

I believe it's working for me idk about u
@hardy cedar It doesn't work

#

Always works fine for me when my plugin loads after its dependencies.
@gilded bobcat It works, thanks! I didn't add softdepend, and I've just added it.

#

I believe it's working for me idk about u
@hardy cedar I use PuTTY

inland oxide
#

Does ItemMeta.getEnchants() return both item enchantments and stored enchantments?

onyx yew
#

how do I add plugins?

inland oxide
#

put into plugins folder

halcyon snow
#

I don't believe so @inland oxide

#

EnchantmentMeta is specific to items that can store enchantments, as opposed to being enchanted.

inland oxide
#

yes, just it's harder to check if it's an instanceof in a conditional in a lambda

onyx yew
#

I can't find the folder

#

Do i have to create one?

inland oxide
#

no, spigot should create one

#

where are you running the jar from?

subtle wedge
#

Is there a plugin that opens a GUI when you right click with a pickaxe?

lament sonnet
#

So im making a vanish plugin. I want it to be so if you leave the game in vanish, then come back it will hide the join message. When i try it out it still sends the message. the VanishPlayer ArrayList still has my name in it as i got it to print it to the console before i joined. All of this code below is in a PlayerJoinEven void. Would anyone know how to fix this?

Player player = e.getPlayer();

        if (VanishedPlayers.contains(player)) {
           e.setJoinMessage("");
           player.sendMessage(ChatColor.GREEN + "[Vanish] " + ChatColor.GOLD + "You are still in Vanish! No one knows your online.");

        }
#

It might be becuase it takes too long to check if the player is in the list and sends it before it gets the chance to change the message. idk

knotty surge
#

It might be becuase it takes too long to check if the player is in the list and sends it before it gets the chance to change the message. idk
that wouldn't be the problem

halcyon snow
#

@lament sonnet try storing the uuid of the player instead.

knotty surge
#

the player isn't finished joining until your event logic completes

tiny dagger
#

use the correct you're 👀

halcyon snow
#

I believe the player's entity ID is taken into account and that's why it's not working.

#

since it changes when they leave/join

lament sonnet
#

ok ill try with the uuid then

knotty surge
#

if you're directly storing Player objects it would be because when they log back in, its a different Player instance

lament sonnet
#

yeah

knotty surge
#

thus it thinks they aren't in the list

lament sonnet
#

ok

#

thnx

inland oxide
#

from a keyset of Enchantments whats a good way to check if any of the namespace keys for the enchantment match another string?

#

this for use in a .filter for lambda

knotty surge
#

namespacedKey.toString().equals(anotherString)?

inland oxide
#

but i have a Set<Enchantments>

#

so i need to stream or iterate over them

knotty surge
#

the filter lambda passes you each Enchantment

#

so you'd use it in the lambda

inland oxide
#

the lamda is passing me listing entries which I get the ItemStack from, then get the Enchantments from the ItemMeta

knotty surge
#

post what you have currently

inland oxide
#

so .filter(entry -> (containsIgnoreCase(entry.getValue().getItem().getItemMeta().getLore(), filter)) would include the entry if any of the String filter matches any part of the String Lore[], so how would I do in the case of getEnchantments() on the ItemMeta/

knotty surge
#

so really you're iterating over a Collection<Set<Enchantment>>?

inland oxide
#

for example, in this the getEnchantments is not working...

#
                .parallelStream()
                .filter(entry -> !per_world_listings || entry.getValue().getWorld().startsWith(prefix))
                .filter(entry -> entry.getValue().getBuyer_UUID().isEmpty())
                .filter(entry -> containsIgnoreCase(entry.getValue().getItem().getType().getKey().getKey(), filter)
                        || containsIgnoreCase(entry.getValue().getSeller().getName(), filter)
                        || containsIgnoreCase(Objects.requireNonNull(entry.getValue().getItem().getItemMeta()).getDisplayName(), filter)
                        || containsIgnoreCase(entry.getValue().getItem().getItemMeta().getLore(), filter)
                        || containsIgnoreCase(entry.getValue().getItem().getEnchantments().keySet(), filter)
                )
                .filter(entry -> entry.getKey() > now())
                .sorted(Map.Entry.comparingByKey(comparator))
                .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (oldValue, newValue) -> oldValue, LinkedHashMap::new));
#

because keySet() is a Set<Enchantment> not Set<String>

knotty surge
#

are you wanting to use the enchantment id or name?

#

id right

#

ah yea its id since getName is deprecated

inland oxide
#

name, so the "filter" is just a string that we are checking againts the enchantment name

#

well keyset returns enchantments not strings

knotty surge
#

enchantment.getKey().toString() will convert an Enchantment to a String

inland oxide
#

but yes, so need to iterate and return true if any of the enchants match

knotty surge
#

so if you use that to convert a Set<Enchantment> to a Set<String>

#

then you can use the containsIgnoreCase

inland oxide
#

implies iteration

knotty surge
#

actually you could just use || enchantments.stream().anyMatch((enchantment) -> enchantment.getKey().toString().equalsIgnoreCase(filter))

inland oxide
#

you mean || entry.getValue.getItem().getItemMeta().getEnchantments().stream().anyMatch((enchantment) -> enchantment.getKey().getKey().equalsIgnoreCase(filter)) ?

knotty surge
#

shore

inland oxide
#

anyMatch will return what?

knotty surge
#

check the source

#

if you're using intellij you can click on anyMatch and hit ctrl+b to open up its file

inland oxide
#

boolean

knotty surge
#

ye

#

if your code gets too slow for your liking you'll want to switch to loops instead of streams

#

but its fine if you're not that concerned with its performance

inland oxide
#

i am concerned with performance, but also, concerned about sorting

#

or do you mean in the lamda itself

tiny dagger
#

you can sort without lambda too

knotty surge
#

streams are slow compared to hand written loops

#

hence why a lot of devs are mad at mojang for overusing them

inland oxide
#

but can sort with comparators

tiny dagger
#

i like Arrays.sort(); myself

#

if i wanna sort something

#

it's probabily the fastest way to do it

knotty surge
#

or Collections.sort

tiny dagger
#

well

#

collection does arrays sort actually

knotty surge
#

all this would be easy with kotlin :^)

inland oxide
#

so you are saying i could get better performance converting all these lambas into specific loops

knotty surge
#

you could do it with one loop really

tiny dagger
#

lambdas usually are fine

#

stream tho not so much

knotty surge
#

your filters just become if checks

inland oxide
#

got like 20 of them

knotty surge
#

its up to you

#

if its a rare operation, streams are fine

#

if its often used, probably want a loop

inland oxide
#

these are not, these are listings, and how the information is represented to the user from the listings map

#

so they get used a lot

tiny dagger
#

well

#

improve them 😄

inland oxide
#

so like something like this is used

#
    public Listings getExpiredListingsChrono(Player player, boolean chronological) {
        Comparator<? super Long> comparator = chronological ? Comparator.naturalOrder() : Comparator.reverseOrder();
        World world = player.getWorld();
        String prefix = getWorldPrefix(world);
        LinkedHashMap<Long, Listing> l = this.listings.entrySet()
                .parallelStream()
                .filter(entry -> !per_world_listings || entry.getValue().getWorld().startsWith(prefix))
                .filter(entry -> entry.getValue().getSeller_UUID().equals(player.getUniqueId().toString()))
                .filter(entry -> entry.getValue().getBuyer_UUID().isEmpty())
                .filter(entry -> entry.getKey() < now()) // timestamp is in the past
                .filter(entry -> entry.getKey() >= now() - auction_expired_duration) // timestamp is less than expired hours in the past
                .sorted(Map.Entry.comparingByKey(comparator))
                .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (oldValue, newValue) -> oldValue, LinkedHashMap::new));
        return new Listings(l);
    }```
tiny dagger
#

oof

knotty surge
#

that's pretty easy to convert to a loop

inland oxide
#

anyway, would be interested to see how much performance gain can get

#

didn't know there was that much of a performance hit with streams

#

and doesn't .parallelStream() thread it, whereas a loop would not?

knotty surge
#

yup, they aren't zero cost as one might expect

inland oxide
#

perhaps the entire project needs a refactoring

#

started out small, but...

knotty karma
#

Im on phone rn so limited access to my code but I have a question about biomes:
In my custom chunk generator I use a BiomeGrid to set the biome at all coordinates in a chunk to the biome I desire. This is to control what decorations generate where (in this case the small end islands)
On paper 1.15, this works as expected; changing the biome in an area to one that does/doesn't have the islands controls whether or not the islands generate. However, in Spigot 1.15 and both paper and spigot 1.16, the islands generate based on the biome that was present before I changed it during chunk generation. Is this a bug? I feel like it is due to the inconsistent behaviour, and the fact that the islands are generated during population, which occurs after generation (when the biome is changed)

#

Therefore in theory, since the islands are generated after the biome is changed, they should generate based on the set biome, not the original.

#

If this is a bug I will report it on JIRA, just want to verify that I'm not being stoopid first

cold steeple
#

How do I update my spigot 1.16.1 jar file? Apparently it's out of date already

knotty karma
#

Rebuild it

#

(Run buildtools again)

frigid ember
#

is timeout a server or a client problem?

knotty karma
#

Depends

#

It's a network issue

#

Which can be the fault of either server, client, or whatevers between

candid prawn
#

god darnit, didn't bookmark address for watching latest spigot builds. link anyone?

knotty karma
#

Basically timeout means the client and server haven't communicated for (in minecraft's case) 60 seconds, so the connection is terminated

#

Can be caused by the server not responding, or the client losing internet connection, or something between, like the proxy having issues

hexed lodge
#

Hi, dont kow if correct place but spigot 1.16.1 has some issues with typing " / " on the chat for commands, for example, we have perms for /tpa, if we do /tpa it says "unknown command at position 1 " (cant recall 100% but it's something like this). I've tried paper mc 1.16.1 release and the error went away, so it seems it's a spigot issue, hopefully it gets fixed soon

rare carbon
#

Hello everyone!

I tried to update my 1.15.2 spigot server to 1.16.1, but sadly I can not use any of the datapacks now.
I get these errors with every datapack:

[08:35:06] [Worker-Main-14/ERROR]: Failed to load function "{basically any function from any datapack}"
java.util.concurrent.CompletionException: java.lang.NullPointerException
at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:273) ~[?:1.8.0_252]
at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:280) [?:1.8.0_252]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1606) [?:1.8.0_252]
at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1596) [?:1.8.0_252]
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) [?:1.8.0_252]
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) [?:1.8.0_252]
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) [?:1.8.0_252]
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157) [?:1.8.0_252]
Caused by: java.lang.NullPointerException
at org.bukkit.craftbukkit.v1_16_R1.command.VanillaCommandWrapper.getPermission(VanillaCommandWrapper.java:90) ~[spigot.jar:git-Spigot-ad703da-d77f4d9]
at net.minecraft.server.v1_16_R1.CommandListenerWrapper.hasPermission(CommandListenerWrapper.java:128) ~[spigot.jar:git-Spigot-ad703da-d77f4d9]
at net.minecraft.server.v1_16_R1.CommandFill.a(SourceFile:45) ~[spigot.jar:git-Spigot-ad703da-d77f4d9]
... 11 more

The datapacks works fine on spigot 1.15.2, also works fine with vanilla 1.16.1 server.
Anyone else having this isue? Any solution?

finite belfry
#

Hello is it possible to not let players join a world except for the admins and open back the world for players to join back a time in a day

#

like there will be a whitelist for the world when it’s not every Sunday’s 8pm-10pm

lament sonnet
#

My vanish plugin keeps track of players vanished by there UUID. is there anyway to get that UUID assigned to the class Player because i need it in a class to re-hide the player when someone else joins or do i need to keep track of two separate ArrayLists?

inland oxide
#

@knotty surge that worked!

#

thx

knotty surge
#

👍

lament sonnet
#

@finite belfry yes thats possible

finite belfry
#

is there a plugin like that

inland oxide
#

@rare carbon you using the latest build?

#

@lament sonnet you mean just getting the player's UUID? Not sure the question. Can always get the UUID from the Player object or any other Entity object with the getUniqueId() method.

halcyon snow
#

pretty sure you're looking for Bukkit.getPlayer(uuid)

#

use what kluge said to get the players uuid if that's what you want

inland oxide
#

frankly I didn't understand the question.

rare carbon
#

@inland oxide I think yes, latest, I ran buildtools 1 hour ago. Will try running it again, but last thing I see in changelog vas 6 hours ago.

lament sonnet
#

pretty sure you're looking for Bukkit.getPlayer(uuid)
@halcyon snow thanks that was what i was looking for

stray depot
#

Hi, so i got mess about update on 1.16.1, so i downloaded tools, and it downloaded 1.15.2 ugh, what to do now ? i thought it will be 1.16 https://imgur.com/a/9DcsnvF

#

or im just dumb, but i followed the post on forum

#

😄

inland oxide
#

need to download BuildTools.jar and follow the directions to make a build with java -jar BuildTools.jar --rev 1.16.1

frigid ember
#

Using bossbars or scoreboards does some funky stuff when having a bungeecord 😒 I'm starting to think that bungeecord is causing problems. Somehow it is able to to take the bossbar from my lobby into other servers.

#

Is this a known issue?

inland oxide
#

Well, the Chat stuff did change.

#

Are you running latest BungeeCord? 1.16-R0.2?

#

also, how would it take the bossbar from the lobby into another server? Strange. That seems more like a client-side issue.

#

there was a commit yesterday

#

to clear the tab list on serverchange

frigid ember
#

It might be. Everything got latest builds. Even plugins. Even scoreboards in lobby... when players enters server i is able to join the lobby but the lobby can somehow not be joined when coming from other server, sends straight to fallbackserver. Disabled the scoreboards for now

inland oxide
#

So make sure you have latest bungeecord

frigid ember
#

I'll check

inland oxide
#

If the issue still persists report the issue here

#

Yeh, last commits are:

#

Clear tab list on server change

#

BossBar stays after switching servers

#

so probably fixed.

frigid ember
#

Yea got the 1.16 r02 running

hexed lodge
#

Is thhere a plugin that checks for plugin updates?

rotund hemlock
#

hello

#

can some1 help me

#

@everyone

#

@everyone Can some one help me with an error ?

inland oxide
#

?paste

worldly heathBOT
inland oxide
#

?ask

worldly heathBOT
#

If you have a question, please just ask it. Don't look for staff or topic experts. Don't ask to ask or ask if people are awake or available. Just ask the question to the channel straight out, and wait patiently for a reply.

inland oxide
#

@hexed lodge search in the Resources section on the site under the Tools and Utilities category, there will be a couple.

rotund hemlock
#

Can someone help me with an error please ?

inland oxide
#

?ask

worldly heathBOT
#

If you have a question, please just ask it. Don't look for staff or topic experts. Don't ask to ask or ask if people are awake or available. Just ask the question to the channel straight out, and wait patiently for a reply.

inland oxide
#

@rotund hemlock, use the paste link to go to the PasteBin site and paste your error, then press save in the upper right, and copy the new URL from the browser to here

rotund hemlock
#

how do i fix this errorjava.lang.NoClassDefFoundError: net/minecraft/server/v1_8_R3/NBTBase

#

ok

tiny dagger
#

well

inland oxide
#

need to include Spigot in your dependencies.

tiny dagger
#

^

rotund hemlock
#

?

hexed lodge
#

thank you @inland oxide

inland oxide
#

ususally thats caused when you don't have the dependency included.

#

are you using maven or gradle for your build?

rotund hemlock
#

I am coping someones's plugin

inland oxide
#

well means it's probably in the dependency, but not in your local .m2 repository

rotund hemlock
#

How can i fix it

inland oxide
#

you will probably need to build it

rotund hemlock
#

How

inland oxide
#

java -jar BuildTools.jar --rev 1.8.8

#

in a new folder

#

then it should put the Spigot jars into the .m2 repo

#

then make sure the pom.xml file has the proper dependency

#

something like

#
        <dependency>
            <groupId>org.spigotmc.spigot</groupId>
            <artifactId>v1_8_R3</artifactId>
            <version>1.8.8-R0.1-SNAPSHOT</version>
        </dependency>
    </dependencies>```
rotund hemlock
#

i k

inland oxide
#

or if its gradle, it will be like

#
            compileOnly('org.spigotmc.spigot:v1_8_R3:1.8.8-R0.1-SNAPSHOT')
        }
rotund hemlock
#

But i cant copy th code

#

his code

#

or can i

#

?

inland oxide
#

?

rotund hemlock
#

how do i get the code

inland oxide
#

hmm, are you running the right version of Spigot?

rotund hemlock
#

i was running spigot 1.8.3

proper wolf
#

@rotund hemlock could decompile the plugin.

inland oxide
#

v1_8_R3 implies v 1.8.8

rotund hemlock
#

net/minecraft/server/v1_8_R3/NBTBase

inland oxide
#

that's not 1.8.3

rotund hemlock
#

what is it then

inland oxide
#

its a protocol version

rotund hemlock
#

what is the right wrsion then

inland oxide
#

they change from v1_8_R1 to v1_8_R2 to v1_8_R3

#

so up to 1.8.2 was R1, 1.8.3 to 1.8.7 was R2, and 1.8.8+ is R3 afaik (might be off a bit)

rotund hemlock
#

1.8.8

inland oxide
#

the R number is not the minor version

rotund hemlock
#

?

inland oxide
#

1.8.8 means 1.8 version with minor version 8, has nothing to do with protocol version other than both share 1.8

#

protocol versions don't always change between minor releases

#

only when something changes significantly in the protocol

rotund hemlock
#

so my server has to be on 1.8 then ?

inland oxide
#

no, since it's looking for v1_8_R3 protocol, that means you should use on spigot-1.8.8

#

so java -jar BuildTools.jar --rev 1.8.8

#

then use that spigot version

#

with their plugin

rotund hemlock
#

ok

inland oxide
#

Most 1.8.x plugins that use NMS will probably be supporting spigot-1.8.8

rotund hemlock
#

why does spigot not have 1.8.9 ?

inland oxide
#

because 1.8.9 was a client only Mojang release.

#

no change on the server side

rotund hemlock
#

😭

#

ok ty

inland oxide
#

means you use 1.8.9 client with 1.8.8 server

rotund hemlock
#

i ll try it now

#

bye and thank you !!!

urban stone
#

Hey, anyone knows why "Cannot resolve method 'toLowerCase()'" ?

public class WitherListener implements Listener {
    @EventHandler
    public void onCreateSpawn(CreatureSpawnEvent event) {
        if (event.getEntity().getType() == EntityType.WITHER) {

            Entity e = event.getEntity();
            Location l = e.getLocation();
            World w = e.getWorld();

            Collection<Entity> enearby = w.getNearbyEntities(l, 10, 10, 10);

            for (org.bukkit.entity.Entity s: enearby) {
                if (!s.toLowerCase().contains("Player")) { // <------------- Here
                    enearby.remove(s);
                }
            }
inland oxide
#

Entity is not a String

#

you want the name of the entity

#

so what you want to do is probably iterate over the Entity, then have a conditional if (s instanceof Player) { ...

pastel arrow
#

I know there is a configuration path to see an entity from a certain amount of blocks away, but is there anything in the spigot API that can allow this per entity?

Ex: Entity.setViewableFrom(disatnce);

urban stone
#

Mhm makes sense, will try thank you klugemonkey

inland oxide
#

keep at it!

#

@pastel arrow that's probably not feasible

pastel arrow
#

Damn. 👍

inland oxide
#

Unless you spawn entities in as invisible and check if they are near a player

#

But its not player specific

pastel arrow
#

Meh that would cause more strain when having to check the entity for nearby players

inland oxide
#

so if any player is in range, all can see if they are withing view distance

#

Its just not designed that way for selective viewing of entities from the server side

pastel arrow
#

I just wanted to make the entities only viewable if a players within 5 blocks.

inland oxide
#

But also look up Player#canSee

#

it's possible that other players can be hidden

#

and that selectively turned on and off by distance

#

woudl use the Player.hidePlayer()

pastel arrow
#

Not hiding players

inland oxide
#

🤷

pastel arrow
#

I wanted to make it so entities would show to players in a 5 block radius

inland oxide
#

so if a player is within 5 blocks of an entity and one is within 20, what happens to entity invisibility?

#

that would imply that invisibility on a per-entity basis would have to be on client side

#

so then entity packets would need to be intercepted

#

and removed for specific players

#

I'm wondering if it is possible to hook into the packet and selectively remove, or just to listen

pastel arrow
#

It would be like view distance

lusty vortex
#

Anyone ever have issues with Intellij and Jigsaw? It can't read the module-info file for whatever reason. Manual running, and other IDE's work fine

#

Thinking about reinstalling it

inland oxide
#

there is a field of view setting for Player Abilities, not sure how that works

#

No, never used Jigsaw

ripe ledge
#

There is an event that if player try to hit other player?

inland oxide
#

Well can get the damage with EntityDamageEvent

pastel arrow
#

Nah only wanted it to be on specific entities so It would cause less lag having entities spread per chunk

lusty vortex
#

@pastel arrow You mean tracking distance?

inland oxide
#

and EntityDamageByEntityEvent

lusty vortex
#

If you wanted to do a custom tracking distance per entity, you'd need to override the tracking system

pastel arrow
#

"tracking"

Don't think so

inland oxide
#

which has a getDamager() method

pastel arrow
#

Unless its for how far the player is from the entity and can view it.

inland oxide
#

isn't tracking when they notice you?

pastel arrow
#

yes

lusty vortex
#

Yeah. It's the tracker for sending packets

#

Once they move outside of the tracking distance, the entity is destroyed client side

#

Which Spigot version are you attempting to do this for?

pastel arrow
#

1.16.1

lusty vortex
#

And for what purpose?

pastel arrow
#

lag

lusty vortex
#

It wont help lag

inland oxide
#

lag?

pastel arrow
#

to many entities on screen in view

lusty vortex
#

Ah

pastel arrow
#

FPS lag not tps

inland oxide
#

oh

lusty vortex
#

Yeah it'd help in that case for sure

inland oxide
#

can you remove entities?

pastel arrow
#

Not trying to remove them. Only not have them visible unless the player is within a radius

lusty vortex
#

It's a bit more difficult on later builds since they merged all the tracking related systems together in one big blob

#

But you could do it through packets

#

Obviously that'd be a lot heavier on the server though

inland oxide
#

I take it you have already tweaked the entity-activation-range settings in the spigot.yml file?

pastel arrow
#

Basically I want to lower the view distance but on my custom entities

mortal jetty
#

is the bug where vanilla team prefixs dont show up fixed in the latest 1.15.2 version?

lusty vortex
#

Yeah if you want per-entity tracking distance, the only possible way to do it is through packets, or overriding the tracking system

inland oxide
#

and the entity-tracking-range values

lusty vortex
#

The entity-tracking values are only applicable for entity types

pastel arrow
#

Thats for all entities I need specific entities modified.

lusty vortex
#

Unless they've changed it since

inland oxide
#

@mortal jetty what is happening?

mortal jetty
#

you know /team in vanilla mc?

#

how you can have colors and a prefix and stuff like that?

inland oxide
#

for Spigot?

#

there are many plugins for the prefix/tablist that allow colors and formatting.

mortal jetty
#

no no no im talking about the vanilla /team command

inland oxide
#

oh, don't use it much we are all focused on Spigot and BungeeCord here, but I can try to help

lusty vortex
mortal jetty
#

all im asking if the SPIGOT bug is fixed for it where the prefixs for those teams wont show up

pastel arrow
#

Thats "tracking" not view distance

lusty vortex
#

It's the same thing

#

Tracking will hide entities outside of the view distance

rotund hemlock
#

How can i change drop chances ?

lusty vortex
#

And it will show entities inside the view distancee

inland oxide
#

@mortal jetty make sure if you are using BungeeCord, that you have the latest builds.

mortal jetty
#

so is it fixed in the latest version?

lusty vortex
#

So all the tracking mechanics are binded to class types

pastel arrow
#

Tracking will hide entities outside of the view distance
Okay is there a way to change the tracking distance on specific entities?

lusty vortex
#

Rather then the actual entity

rotund hemlock
#

@inland oxide 1.8.8 workd perfectly

inland oxide
#

They fixed two issues, one with tablist one with boss bar.

rotund hemlock
#

How can i change drop chances ?

lusty vortex
#

Nope. It would be possible to add to Spigot, but at the moment, they only support what I've showed you

inland oxide
#

Didn't see anything related in Spigot bug fix list

mortal jetty
#

then im guessing its a no?

lusty vortex
#

Althooouughh.. 1 sec

mortal jetty
#

ok thanks

inland oxide
#

@rotund hemlock drop chances for ?

rotund hemlock
#

i want to make new drop chance

lusty vortex
#

I suppose nothing is stopping you from replacing the EntityTracker object @pastel arrow

inland oxide
#

for an entity?

rotund hemlock
#

no block

lusty vortex
#

Use some reflection, copy all the variables from the previous object (Aside from the view range), then use reflection to inject it back into the map

pastel arrow
#

I suppose nothing is stopping you from replacing the EntityTracker object
On the entity?

inland oxide
#

oh, so like if you break a block, its not 100% will drop the item?

rotund hemlock
#

no it will drop sth tahts not usual

wet ferry
#

anyone able to help with this issue? https://hasteb.in/mituyogu.cs. On 1.16.1,
Players who do the essentials command /skull skythekidrs get kicked on join until the skull is removed from their inv.
Doing any other players' skull seems to work fine. I also tried to replicate this on another server with the same essentials version and couldn't replicate the issue.

lusty vortex
#

EntityTracker playerchunkmap_entitytracker = new EntityTracker(entity, i, j, entitytypes.isDeltaTracking());
entity.tracker = playerchunkmap_entitytracker;
this.trackedEntities.put(entity.getId(), playerchunkmap_entitytracker);
playerchunkmap_entitytracker.track(this.world.getPlayers());

#

Sooo

#

int i = entitytypes.getChunkRange() * 16;
i = TrackingRange.getEntityTrackingRange(entity, i);
int j = entitytypes.getUpdateInterval();

#

The i is the distance the entity will be viewable from

inland oxide
#

I think there are plugins like that Zap

rotund hemlock
#

i want it to be if you break DIAMOND_ORE it has a chance of 15% to drop player head

pastel arrow
#

👍 will play around with that thanks

lusty vortex
#

So if you replaced entity.tracker (This is NMS, not bukkit), and replace the trackedEntities value

#

You're good to goo

rotund hemlock
#

idk if with player heads

#

I am making uhc server

inland oxide
#

Thats like another plugin too, for heads

rotund hemlock
#

and there isnt much players

inland oxide
#

but you should browse the resources section of the site

rotund hemlock
#

so they have more chance to get player hedas

wet ferry
#

i think i made a plugin like that

inland oxide
#

brb, coveffe break

rotund hemlock
#

is it gonna give me player heads when broken ? @wet ferry

wet ferry
#

if u configure it to, it can

rotund hemlock
#

Spigot doesnt have material for player heads

#

there is no Material.PLAYER_HEAD

jaunty niche
#

is there a list of changes that spigot does?

wet ferry
#

Zap, use /minecraft:give

inland oxide
#

player head has additional info about SkullOwner and texture

#

so can make it drop the actual skinned head of the player, not too hard

rotund hemlock
#

Yea i could use Material.SKULL

#

I have tried it

#

but out of a block ?

inland oxide
#

drop the item?

#

Might have to write a custom plugin if you want it to drop a player head, or if the block drop plugin supports running a command, could use playerheads plugin

rotund hemlock
#

I want it to be if you break DIAMOND_ORE there is a change of dropping a PLAYER HEAD(With Out textures

#

I should look how to use BlockBreakEvent

#

I want it to be if you break DIAMOND_ORE there is a change of dropping a PLAYER HEAD(With Out textures
can some one help ?

urban stone
#

Ugh I feel like I got lost in this... Firstly it crashed my server so I had to add return in the iterator, if that's the correct way?..
I'm getting the nearbyEntities, and if it's Player I want to send him a message

...
            Collection<Entity> enearby = w.getNearbyEntities(l, 10, 10, 10);

            Iterator itr = enearby.iterator();
            while(itr.hasNext()){
                if(e instanceof Player)
                        return;
            }

            Player p = e.event.getEntity();
            Bukkit.getPlayer(p).sendMessage("Some message");
rotund hemlock
#

maybe use brodcast

#

@everyone

urban stone
#

Why do you keep trying to ping everyone, it doesn't even ping anyone here lmao

rotund hemlock
#

😦

dusty topaz
#

How could one increase the blast radius of tnt

#

can't find anything for it

rotund hemlock
#

I want it to be if you break DIAMOND_ORE there is a change of dropping a PLAYER HEAD

inland oxide
#

@urban stone you should look up some tutorials.

#
            if (e instanceof Player) {
                Player player = (Player) e;
                player.sendMessage("some message");
            }
        }
rotund hemlock
#

I want it to be if you break DIAMOND_ORE there is a change of dropping a PLAYER HEAD
can someone help ?

inland oxide
#

if you are asking someone to write a plugin for you, best to ask in the services forum.

#

if you are asking how to program a plugin, probably best to start with some tutorials

jaunty night
#

What's the text that can appear just above your hotbar called and how do you change it?

inland oxide
#

ActionBar

jaunty night
#

Thanks I'll look it up

inland oxide
#

I think if using Spigot, can send a message to it

hexed lodge
#

Is there a way to change the default (on join player) group with LuckPerms? Or is it only possible to give a parent group to the default one ?

inland oxide
#

Don't know if that got easier with newer versions of spigot or not

#

VeNom, why don't you ask in the LuckPerms forum?

jaunty night
#

I can't seem to find anything to interact with it

hexed lodge
#

Already searched on google, foruns etc, no one knows how to change, the only way i found is to add a parent group to the default one, it does the job but it's something you should be able to change tho

jaunty night
#

I look it up and I see a resource called Action Bar and an outdated thread for 1.8 🙄

inland oxide
#

@lapis plinthIsHere this is what I usually use, but might be a better way now

#
        player.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText(sectionSymbol(envars(player, message))));
    }```
jaunty night
#

Oh, I see

inland oxide
#

from the player object get spigot, then use that version of sendMessage()

#

it takes a ChatMessageType as first argument

jaunty night
#

Cool 👍

inland oxide
#

ignore the sectionSymbol and envars crap

#

takes a TextComponent as second argument, but that might have changed to allow the RGB colors

rotund hemlock
#

I want it to be if you break DIAMOND_ORE there is a change of dropping a PLAYER HEAD
Can SomeOne Help Me Pls

gilded bobcat
#

i'd suggest to be patient, or maybe if you need a answer right away, find a open source plugin that does something similar and then look at how it does it. I don't know the answer to your question though, i've never had to do that in spigot,... but you could maybe just do this in the block break event

inland oxide
#

Potato, you basically want the Custom Drops Editor plugin as well as the PlayerHeads plugin

rotund hemlock
#

yes i quess

inland oxide
#

The first will allow you to customize what is dropped, the second allows commands to be used to drop a player head

#

Try it

#

No one here is going to write you a plugin 😄

pastel condor
#

Lmao spoon feeding 🥄👶

keen compass
#

you would think luckperms would just be simple

inland oxide
#

oh good, my relief crew is in

keen compass
#

just looked at some of the command usage stuff o.O

pastel condor
#

It’s a mess

keen compass
#

I haven't actually used it. I use a good old fashion GM 😛

pastel condor
#

I just switched over form pex

#

A few months back

keen compass
#

to Luckperms or to GM?

pastel condor
#

They only reason was it had multi rank support

#

Luck perms

inland oxide
#

I used GM, then PEX, but I also have to use and test on LP

#

LP is not that different than PEX

keen compass
#

really, the only thing GM is actually missing is global DB and server support

inland oxide
#

different commands yes.

#

but also tab completion works

keen compass
#

otherwise as far as features go it has everything you need XD

inland oxide
#

I'm just too ingrained with PEX

tender crest
#

Hello, I am having a problem with 1.16.1 NBT item attributes. I am using this to change an item's attack damage or speed, it was working on 1.15.2. I updated attribute names like thisgeneric.attackDamage to generic.attack_damage. I get this error: [12:10:27] [Server thread/WARN]: Unable to create attribute: null Using lastest spigot version, any idea?

keen compass
#

weren't generic stuff like that going to be removed?

inland oxide
#

do you have code?

tender crest
#

yea, sec

jaunty night
#

There's been mutliple reported issues with attributes before, The way they work and are registered changed from 1.15 -> 1.16 I believe

tender crest
#
public static ItemStack setAttackSpeed(ItemStack item, double attackSpeed) {
        net.minecraft.server.v1_16_R1.ItemStack nmsStack = CraftItemStack.asNMSCopy(item);
        NBTTagCompound compound = (nmsStack.hasTag()) ? nmsStack.getTag() : new NBTTagCompound();
        NBTTagList modifiers = compound.hasKey("AttributeModifiers")
                ? compound.getList("AttributeModifiers", 10)
                : new NBTTagList();
        NBTTagCompound speed = new NBTTagCompound();
        speed.set("AttributeName", NBTTagString.a("minecraft:generic.attack_speed"));
        speed.set("Name", NBTTagString.a("minecraft:generic.attack_speed"));
        speed.set("Amount", NBTTagDouble.a(attackSpeed));
        speed.set("Operation", NBTTagInt.a(0));
        speed.set("UUIDLeast", NBTTagInt.a(894654));
        speed.set("UUIDMost", NBTTagInt.a(2872));
        speed.set("Slot", NBTTagString.a("mainhand"));
        modifiers.add(speed);
        compound.set("AttributeModifiers", modifiers);
        nmsStack.setTag(compound);
        item = CraftItemStack.asBukkitCopy(nmsStack);
        return item;
    }```
inland oxide
#

I think somewhere it went from name to enum perhaps

tender crest
#

btw

inland oxide
#

oh, wait

tender crest
#

minecraft:generic.attack_speed

#

I tried with generic.attack_speed too

jaunty night
#

Yeah I'd have to look at the NMS code to figure out what exactly happened

keen compass
#

um, that doesn't look like it would be right for NBT stuff

#

and strings

tender crest
#

it was working on 1.15.2 but I am not that good at NBTs

keen compass
#

just dump the nbt stuff

jaunty night
#

evrimsen I'd say wait for more info to come out about Attributes and 1.16.

keen compass
#

should really create a utility method for this lol. If you are going to be modifying NBT like that, it isn't all that much more of a hassle to create a method that dumps NBT data for you lol

tender crest
#

@jaunty night should I try to do bug report or something? Like I said I dont know much about NBTs so I cant really provide useful info tho

jaunty night
#

I don't think it's a bug with spigot, it could be. There was just a change to how attributes work

#

It's been reported and the devs are aware

tender crest
#

I see, I will just wait then thanks for the info!

#

Frostalf, idk I barely use NBT and this was working so :p

inland oxide
#

did you try without the minecraft:

tender crest
#

yes

jaunty night
#

Quick Question, how do servers do these little symbols/emojis in text and is there a list somewhere of different symbols I can use

bronze marten
#

theyre within the mc font

#

some unicode chars mc will recognize

inland oxide
#

try generic.attackSpeed

tender crest
#

tried that too

hoary parcel
#

Weren't the attributes renamed?

#

To fix resource keys?

jaunty night
#

Where do I find the mc font and how would I find the different unicode chars

hoary parcel
#

Or namespaced keys how spigot calls them

tender crest
#

yea, generic.attackSpeed to generic.attack_speed ?

hoary parcel
#

You can also expand the font with server sided reosurce packs

bronze marten
#
jaunty night
#

Thank you 🙂

tender crest
#

I tried with both old and new attribute names

inland oxide
#

is that on an item or an entity?

#

oh item

tender crest
#

item

#

tools or sword

inland oxide
#

hmm, do you have something with those settings on it?

#

or can it be given with a command?

#

vanilla?

tender crest
#

wdym? I load them from a config and do new Itemstack()

inland oxide
#

for test

#

remove minecraft:

tender crest
#

I can do tests if you want me to

#

I tried without minecraft: alraedy

inland oxide
#

can test with vanilla commands

#

hovering over it is showing +20

tender crest
#

oh okay, I will test it. Can you write an example command pls?

inland oxide
#

/give @s diamond_sword{AttributeModifiers:[{AttributeName:"generic.attack_damage", Name:"generic.attack_damage", Amount:20.0, Operation:0, UUID:[I; 42853, 1689024593, -201178, -1559272105]}]} 1

#

strange that my inspec shows 7, but hovering over it shows +20

#

means I too have to fix my code for 1.16.1

#

not sure why it's showing 7.00

peak socket
#

how do i make it a local server?

inland oxide
#

make what?

peak socket
#

a spigot server

inland oxide
#

you need to download BuildTools.jar, then install java, and in a folder run java -jar BuildTools.jar --rev 1.16.1

peak socket
#

1.15.2

inland oxide
#

then copy that spigot-1.16.1.jar file into another folder, run it with java -jar spigot-1.16.1.jar and edit the eula file, run it again...

#

just omit --rev 1.16.1 will build latest (1.15.2)

peak socket
#

how do i attach pictures?

tender crest
#

drag and drop?

lament sonnet
#

Smh

peak socket
#

it doesnt work

tender crest
#

@inland oxide do you know if there is a command to show current attributes? your command works fine btw I get 20 attack on all slots

#

oh and you have the same problem?

inland oxide
#

not sure

peak socket
#

how do i find out the ip of the server to see if its a local server?

#

in the server consolethingy

inland oxide
#

i made coffee, but it got cold waiting while I answered questions...

peak socket
#

you dont need your mouth to type?

rotund hemlock
#

@inland oxide i didn't find any custom drops plugin

frigid ember
rotund hemlock
#

How can i change drop changes

inland oxide
#

define local server

peak socket
#

so i can join with the ip 'localserver' on the same pc

#

i got it, nvm

inland oxide
#

localhost?

peak socket
#

yes

#

it works now

inland oxide
#

so if you are running a server locally, and the client is on the same box, then you can use localhost, or 127.0.0.1

#

if you are hosting on a box a server and you want to make that server available on all interfaces, put server-ip=0.0.0.0 in server.properties

#

@frigid ember not sure with specific plugin, but usually all their settings are in config.yml under the specific folder for the plugin under the plugins folder

#

@frigid ember it has no config file

frigid ember
#

Yes

inland oxide
#

its hardcoded into the plugin

frigid ember
#

That's what I was about to say

inland oxide
#

the plugin is a single file

frigid ember
#

exactly

#

I don't know how to change .jar's

inland oxide
#

you change the code starting on line 112

#

you don't, see how it has a link to the source code?

#

you would need maven and git installed, and if Windows maybe git-bash

#

from a new folder, then run mvn clean package

#

that would build the plugin

#

you will have to edit the files after getting them with git

#

that's basically how you download an open source plugin and build it

frigid ember
#

Thank you very much, I'll try to do that

inland oxide
#

might be a tutorial somewhere on building plugins on the SpigotMC wiki

frigid ember
#

I've enlisted my dad's help, he's a Java programmer

inland oxide
#

You've enlisted in a lesson on Java from your dad, awesome!

frigid ember
#

Pretty much

inland oxide
#

@evrimsen, should be a vanilla command, no?

tender crest
#

to show attributes? you can throw me some code too both is okay

#

oh

#

I used this btw

#

/attribute @p minecraft:generic.attack_damage get

#

it shows players attribute

#

so yea it only confirms that my items does not work :p

inland oxide
#

seems to work

tender crest
#

?

inland oxide
#

i get base 1 and 21 for that sword item

tender crest
#

ah

#

same here

inland oxide
#

so +20 was added using those settings

#

but my code to read is not working apparently

#

I think something is broken

#

I hover over the sword and it shows +20, right

#

but when I use my inspection tool, its coming back that its +6

tender crest
#

command works fine tho?

#

what is your inspection tool?

inland oxide
#
        double attackDamage = 1.0;
        UUID uuid = UUID.fromString("CB3F55D3-645C-4F38-A497-9C13A33DB5CF");
        net.minecraft.server.v1_16_R1.ItemStack craftItemStack = CraftItemStack.asNMSCopy(itemStack);
        net.minecraft.server.v1_16_R1.Item item = craftItemStack.getItem();
        if(item instanceof net.minecraft.server.v1_16_R1.ItemSword || item instanceof net.minecraft.server.v1_16_R1.ItemTool) {
            Multimap<AttributeBase, AttributeModifier> map = item.a(EnumItemSlot.MAINHAND);
            Collection<AttributeModifier> attributes = map.get(GenericAttributes.ATTACK_DAMAGE);
            if(!attributes.isEmpty()) {
                Bukkit.getLogger().info("Found one or more attribute modifiers:");
                for(AttributeModifier am: attributes) {
                    Bukkit.getLogger().info(String.format("  (%s, %s, %f, %s)",am.getUniqueId().toString(), am.getName(), am.getAmount(), am.getOperation().toString()));
                }
                for(AttributeModifier am: attributes) {
                    if(am.getUniqueId().toString().equalsIgnoreCase(uuid.toString()) && am.getOperation() == AttributeModifier.Operation.ADDITION) attackDamage += am.getAmount();
                }
                double y = 1;
                for(AttributeModifier am: attributes) {
                    if(am.getUniqueId().toString().equalsIgnoreCase(uuid.toString()) && am.getOperation() == AttributeModifier.Operation.MULTIPLY_BASE) y += am.getAmount();
                }
                attackDamage *= y;
                for(AttributeModifier am: attributes) {
                    if(am.getUniqueId().toString().equalsIgnoreCase(uuid.toString()) && am.getOperation() == AttributeModifier.Operation.MULTIPLY_TOTAL) attackDamage *= (1 + am.getAmount());
                }
            }
        }
        return attackDamage;
    }```
#

its finding an attribute modifier, just it's 6.0

#

and it's pretty much reading it from the game

tender crest
#

on the item you get with vanilla command?

inland oxide
#

yes

tender crest
#

o.o

inland oxide
#

the item that shows up with +20's when I hover over it

#

lemme make sure i'm passing the item and not a clone or something

clever bobcat
#

Have there been any updates/bug fixes to Spigot after the initial 1.16.1 release? I'd like to find out where I could keep track of which build I'm using, versus the latest build

#

I suppose BuildTools may output the commit hash, or am I on the wrong path here

#

Or is BuildTools updated everytime there is a new release, so I could just check the Jenkins instance?

inland oxide
#

type /version in game

crystal canopy
#

guys i need help my friend change my spigot accound how it is possible ? but how he dont known my email /(

clever bobcat
#

Thanks Klugemonkey

#

[10:57:12] [Thread-4423/INFO]: You are 46 version(s) behind

#

Big oof

inland oxide
#

best rebuild

clever bobcat
#

Right away 🙂

crystal canopy
#

please help me guys

inland oxide
#

I have no clue

crystal canopy
#

Your email at SpigotMC - High Performance Minecraft was recently changed to ....... If you made this change, you may ignore this message.

If you did not request this change, please log in and change your password and email address. If you are unable to do this, please contact an administrator.

Your email was changed by the IP ..... .

Thanks.
SpigotMC - High Performance Minecraft

inland oxide
#

Unless your "friend" has access to same PC and you didn't log out of SpiotMC site, then probably not posible

crystal canopy
#

nope bro he dont known my email

inland oxide
#

sure that mail is from spigot?

crystal canopy
#

yes 100%

inland oxide
#

no idea, I'm not responsible for any of that

crystal canopy
#

spigotmc dont have any security wtf

inland oxide
#

it does, it has 2FA

#

if you bother to setup

crystal canopy
#

so you change spigotmc accound email ? without gmail alert message ?

#

nice

#

cool

inland oxide
#

I don't change anything, I'm not employed or otherwise represent Spigot. I just help out

clever bobcat
#

Someone needs to login to your account to be able to change the email for it. So either your password wasn't secure enough, or you left a browser logged in.

inland oxide
#

You will want to ask other "staff" when they are on

crystal canopy
#

rutrov my friend change it i known

#

but how ?

inland oxide
#

and if he's your "friend" should not be hard to have him change back or show you how it was done.

clever bobcat
#

He must have had access to your browser/machine/session in his browser

inland oxide
#

I'm not going to speculate, nor care to since it's 4am

crystal canopy
#

so i need to contact staff ?

clever bobcat
#

Yep

crystal canopy
#

yes i have fist mail

clever bobcat
#

Unless you can convince your friend to give your account back...

#

Not much of a friend if he highjacks your account

crystal canopy
#

rutron no he is enemy at the moment

clever bobcat
#

Right

crystal canopy
#

i forget to change my password

clever bobcat
#

Did you find the support email?

#

It's tmp-support (at) spigotmc.org

crystal canopy
#

nope

#

i have one message from spigotmc

#

If you are unable to do this, please contact an administrator.

crimson sandal
#

How does Player.sendBlockChange() work? Do I need to send a packet every tick or just once? Because just firing it once on player join doesn't seem to working for me

chrome lark
#

too early, the player doesn't have any chunks yet to do that in

#

It just sends a block change packet

crimson sandal
#

Ah okay, is there an event that fires when the player has loaded into the world/chunks?

chrome lark
#

nope

cerulean musk
shut quest
#

Hi guys, what is best MC Version for Auth/Lobby servers? By best I mean best performance and lowest RAM/CPU usage. As I see many networks have 1.12. What are benefits against 1.15 for example?

tender crest
#

1.13+ chunk generating performance sucks

#

thats why 1.12.2 is good

#

if you dont rely much on chunk generating (if you are using pre generated maps) use lastest version

frigid ember
#

@inland oxide Updating to the latest Spigot repository (Wanted to be able to use the newer materials in the crafting recipe) seems to have broken the plugin 🤷‍♂️

shut quest
#

if you dont rely much on chunk generating (if you are using pre generated maps) use lastest version
@tender crest On Auth and Lobby servers I am just using VoidGenerator and small island so I dont really care about chunk generation...

tender crest
#

then you dont have to worry about performance

odd knoll
#

I use 1.12.2 or 1.8.8, but generally 1.12.2 as it's newer.

crude coral
#

how do i change download link spigot ?

fair abyss
#

are you talking about build tools?

crisp widget
#

@cerulean musk If the ports for your servers are exposed to the internet anybody can intercept them

shy shard
#

I need suggestion about mysql

#

Connection wait times goes off every 8h

#

Then i need to make reconnect again

#

I have economy plugin writing tokens

#

To it

#

Currently before i write tokens to data base

#

I grab description and name of it in case that is null

#

I reconnect

#

And then i write in

#

So is it ok to check for tat every time or should i make repeating task like every min

#

And check if mysql is connected

tender crest
#

I suggest hikaricp, take a look on it

shy shard
#

It it my method bad

#

?

tender crest
#

yes, it could be null in the database and you go into reconnected loop

#

you can catch the connection error and refresh the connection there

crystal wing
#

How can I make a minecraft server with spigot?

ashen stirrup
#

How do you set a custom currency as the Vault economy currency? My economy class extends the vault Economy, not sure where I go from here though.

frigid ember
#

I have a question. What are the differences between a Configuration a FileConfiguration and a YamlConfiguration?

hoary parcel
#

They inherit from each other

frigid ember
#

Ah ok. What should i use for my config?

#

I think the guide on the spigot page saves it as a FileConfiguration.

naive goblet
#

Use the yaml one if you’re after yaml configuration

#

But you can declare it as a FileConfiguration as you won’t need the YamlConfiguration implementations