#help-development

1 messages · Page 601 of 1

ornate patio
#

Are you talking about the spigot api PotionType

#

because that doesn't contain the duration or amplifier

#

it only has isExtended or isUpgraded

orchid trout
#

they are really bad

ornate patio
#

but no way to get the actual duration of the potion

young knoll
#

But they are fancy

orchid trout
#

its slow to navigate them

#

and they arent even that fancy

young knoll
#

Origin realms has really nice GUIs

#

So we can still do pretty well on java

flint coyote
#

The more I fix my book formatter the worse the code looks. It's a mess already

torn shuttle
#

books are the spawn of satan

#

that's why I personally make sure to burn down every public library I come across

#

and leave a calling card saying "Mojang"

flint coyote
#

lmao

worldly ingot
#

I confused the two

flint roost
#

hello i have a error

young knoll
#

Experimental best branch

flint roost
flint coyote
#

is that a singleplayer error?

#

oh nvm it says failed to start server

young knoll
#

Your world is locked

torn shuttle
#

man I'm so sleepy

young knoll
#

Make sure there is no other process accessing it

torn shuttle
#

quick someone say something that will wake me up

flint coyote
torn shuttle
#

stupidity puts me to sleep

flint roost
quaint mantle
flint coyote
#

well but misplaced GUI elements should make you furious

young knoll
#

Do you have another server running

#

Or a stuck java process

flint coyote
#

sudo reboot

flint roost
#

server restart now

flint coyote
#

yes, check if it runs afterwards

#

otherwise check systemctl for autorunning server instances

orchid trout
#

when i go into the class without a source its just a blank page

torn shuttle
#

man I really need to finish this npc system but I am just so damn sleepy all of the sudden

flint coyote
#

Does anyone know how much dots the letters are widened by making them bold? Or does it differ between letters?

flint roost
quaint mantle
orchid trout
flint coyote
#

it's the default texturepack

quaint mantle
flint coyote
#

Well that is the default dot width. Question is if the increase is the same for all of them

ornate patio
flint coyote
#

and by how much? 1? 2?

quaint mantle
river oracle
flint coyote
#

you just said it's the same D:

quaint mantle
#

The default dot width is 1

cold tartan
#

For duels is it more efficient to make a new void dimension for each duel then delete after, or to create one void dimension with all the duels?

quaint mantle
torn shuttle
flint coyote
#

ye I figured

torn shuttle
#

I just washed everything down to the pillows

cold tartan
torn shuttle
# river oracle Die

got some nice reading to do too, the kind that really makes your eyelids sink on their own

river oracle
quaint mantle
#

Have 1 or 2 worlds with a bunch of arenas

river oracle
#

Ir that

#

Depends on how your doing it

torn shuttle
#

and before you know it you've been on the same page for an hour and just fell asleep, so you set it aside and actually go to sleep

quaint mantle
flint coyote
#

looks like it's the same increase. Probably 2 dots

quaint mantle
torn shuttle
flint roost
quaint mantle
#

@torn shuttle you are an npc

flint coyote
torn shuttle
quaint mantle
torn shuttle
flint coyote
#

Meh &k is not the same anymore :(

quaint mantle
flint coyote
#

how high are you, Sainte?

torn shuttle
#

minecraft satanist edition is great

#

idk why anyone would use anything else

quaint mantle
#

I don’t know I just got here

autumn cave
#

I have a question: Can I use location.getBlock() in an unloaded chunk or do I have to manually load the chunk?

flint coyote
#

it will load it afaik

quaint mantle
#

U can do it

torn shuttle
#

that will load the chunk

autumn cave
#

ok 👍

flint coyote
#

It will even load it when called async for some reason

#

And the loading will fall back to sync

torn shuttle
#

well what else would it do

#

crash the server?

flint coyote
#

exception

torn shuttle
#

there are use cases for it behaving like that

quaint mantle
#

Why the fuck is my name sainte who is sainte

flint roost
flint coyote
ornate patio
#

well i think i kinda got it

torn shuttle
ornate patio
#
for (Map.Entry<ResourceKey<Potion>, Potion> entry : BuiltInRegistries.POTION.entrySet()) {
    System.out.println(entry.getKey().toString());
    System.out.println(entry.getValue().getName(""));
    System.out.println(entry.getValue().getEffects());
    System.out.println("-----");
}
#

very scuffed, why is this not in spigot yet lmao

flint coyote
#

well if it requires a switch to sync anyway then I'd expect a developer to do that "manually"

worldly ingot
#

It is. On the experimental branch

ornate patio
#

yeah ik

worldly ingot
#

Like I said. It's coming lol

ornate patio
#

but how is it so late

worldly ingot
#

No one bothered to add it

torn shuttle
ornate patio
#

never expected to use nms to get a potions duration

flint coyote
#

To make it consistent with other functions that end up throwing exceptions when called async

torn shuttle
#

at this point such a change would probably cause a lot of issues

flint coyote
flint coyote
quaint mantle
flint coyote
#

It seems like you try to boot up a new server each time

wet breach
flint coyote
wet breach
#

no I mean, it doesn't work anymore? like what happens now when the track dead ends like that?

#

you just go off the rail and don't continue further?

flint coyote
#

don't you remember what that contraption used to do?

#

That was the old way to max-boost minecarts

wet breach
#

well it has other purposes

#

and yes I know it was the old way to max boost minecarts but I am not sure who really cares that isn't a thing no more just as long as most of its functionality is retained lol

flint coyote
#

Well I remember that change. It even had a "sorry :(" in the patch notes behind the bugfix

#

and it broke so many rollercoasters

wet breach
#

yeah but that is what change does

#

they didn't become super broken, just needed to add some boosters in there

#

and it allowed coasters to be more compact

quaint mantle
#

coasters

flint coyote
#

wait that's not wrong, is it?

flint coyote
#

And it was mentioned that it would "break so much at this point"

wet breach
#

sure, but at some point it will be needed

#

its a matter of time

flint coyote
# flint coyote exception

Yeah that's why I said "just let it throw an exception" like other functions do when accessed async

#

Abusing inconsistencies is certainly not the right way.
Just like expecting the collector to return a modifiable list. It currently does but states that you can't expect that to always be the case

#

Returns a Collector that accumulates the input elements into a new List. There are no guarantees on the type, mutability, serializability, or thread-safety of the List returned; if more control over the returned List is required, use toCollection(Supplier).

#

Would bet some things would also break once that changes

wet breach
#

lol

#

possibly but there is already a variety of other ways to ensure some of that stuff yourself as well

#

which wouldn't necessarily require the collector itself to do it

flint coyote
#

I'm aware of that. You can add an ArrayList constructor to the collector aswell.
I would just guess that a lot of people are like "ah perfect, it's mutable - I'll stick with that"

ornate patio
flint coyote
#

you mean the potion duration?

ornate patio
#

yes

flint coyote
#

get the potion meta

ornate patio
#

im talking about vanilla potion duration

#

which isn't possible to get in spigot rn

#

so i've accessed all potion durations from the registry using nms

#

now i just need a way to get the correct one

flint coyote
#

Oh. Yes probably

ornate patio
#

like

#

i need some way to use a spigot potion itemstack

#

to retrieve the duration

#

from the nms registry

young knoll
#

Hmm

remote swallow
#

last entry of effects it seems

young knoll
#

Unfortunately potion type is not keyed

remote swallow
#

oh wait

#

brain moment

ornate patio
#

well

#

i've noticed

#

all the MobEffectInstance names

#

are just the potion effect type sometimes prefixed with long_ or strong_

#

so I could just add those strings if isExtended or isUpgraded is true

young knoll
#

Worth a try

flint coyote
ivory sleet
#

Going by principles it should be all you need

opal juniper
#

i’m sorry but that gets a 🤓

flint coyote
#

I was just arguing that location.getBlock() async should not sync load the chunk and instead fail with an appropriate exception

ivory sleet
#

Wouldnt that be caught by async catcher?

chrome beacon
#

It will

#

(In modern versions)

ivory sleet
#

Then the method technically fails if invoked wrongly

#

Ah alright

flint coyote
#

or what does async catcher do? It returns to sync and loads the chunk

#

Is that what it shall do?

chrome beacon
#

It throws an error

ivory sleet
#

It catches if a method is invoked on the wrong thread thus yielding an exception

flint coyote
#

Well then it does not do that

#

I just tested that 2 days ago on 1.20

#

on both spigot and paper

ivory sleet
#

Hmm alright, then I’d consider it a bit of broken api almost

#

Because it should at least instead of loading the chunk asynchronously

chrome beacon
#

Hm I've gotten an error from that vefore though 🤔

ivory sleet
#

Tho if the chunk is alr loaded I suppose its fine

flint coyote
#

It does load it synchronously

#

even inside an async scheduler

ivory sleet
#

Ah yes my bad, but that’s what adds up to the indeterminacy right?

flint coyote
#

yes, I would have expected an error

ivory sleet
#

Yeah, either the behavior for asynchronous invocation should be documented appropriately(probably javadocs) or just yield an error, which could be documented also but yeah

dire bluff
#

first works second doesnt work why?

chrome beacon
#

It uses recipe instead of recipe2

remote swallow
#

and that there is why we use descriptive variables

dire bluff
#

oh tyyy

flint coyote
#

I never worked with custom recipes and I don't get what's wrong with that stick. Can you elaborate?

young knoll
#

Ooh, see that stick

#

Watch that scene

orchid trout
dire bluff
flint coyote
#

ohh

#

now I see it

young knoll
#

Give yourself the recipe so you can see it in the recipe book to check

flint coyote
#

I thought you meant he can't use Material.STICK twice lol

young knoll
#

Always helpful

remote swallow
orchid trout
#

ecd?

young knoll
#

Enhanced class decompiler

orchid trout
#

thats what im using

young knoll
#

Make sure to set up file associations properly in preferences

orchid trout
orchid trout
#

i clicked on default 20 times

#

just to be sure

dire bluff
#

first one works second doesnt works any idea why?

dire bluff
#

how to do that i tried

#

/recpe give ?

#

recipe give

young knoll
#

recipe give @s *

dire bluff
#

doesnt wor

#

work it sais it doesnt exists

young knoll
#

Are you on 1.stupid

orchid trout
#

bone

dire bluff
#

pls i need some help my brain hurts

#

ffs

quaint mantle
young knoll
#

I’ll take that as a yes

orchid trout
#

am i about to get banned?

quaint mantle
#

no

#

ur pfp

dire bluff
#

ty gn 😦

orchid trout
#

goldsource doctor

#

scientist

flint coyote
#

If the channel was as serious as the description states we would have a lot more bans. We often end with offtopic-discussions

remote swallow
flint coyote
#

Are you all assuming or is it save to say that he's on 1.8?

orchid trout
#

click s to save

remote swallow
#

"are you on 1.stupid", no response

orchid trout
#

what is stupid

remote swallow
#

8

orchid trout
#

wors

#

word

#

styuois

#

stups

#

stupiod

flint coyote
young knoll
#

I’m this case anything before 1.12

#

Since that’s when /recipe was added

flint coyote
#

I thought by "doesn't exist" he meant the recipe

#

not the command

young knoll
#

/shrug

flint coyote
#

1.8 (╯°□°)╯︵ ┻━┻

dire bluff
#

im at 1.20

#

...

young knoll
#

Then the command definitely exists

dire bluff
#

yea it exists

young knoll
#

Iirc it’ll even let you tab complete custom recipes

dire bluff
#

but the recipe doesn appear

#

ive given all the recipes

young knoll
#

Does the other one

dire bluff
#

and weven the working one doesnt

young knoll
#

It’s hard to say much without more info

#

Are there any errors

#

Is the code on the server up to date

dire bluff
#

i found it

#

just my bad

#

i forgot that i changed a '' in the item meta and i already had the item from previus plugin

#

and now i feel stupid

#

my brain fked up im doing it like 45 mins

#

and today is my bday lul

dusty herald
#

who pinged me lol

remote swallow
#

imojin

#

scroll up and look at crackmas pfp

dusty herald
#

lol

autumn cave
#

When I put my code inside a Bukkit.getScheduler().runTaskAsynchronously(...) it takes 300 sec vs 4 sec when running on the main thread. Is there a better solution for running code async or am I doing something wrong? I am not using the Bukkit api apart from doing stuff with ChunkSpanshots (created before the async block) within the task, my logs are re-incapsulated in a Bukkit.runTask.

flint coyote
#

Sounds odd. Do you have more than one core? Did you check which lines are the one that take up most of that time?

young dome
#

bump

autumn cave
flint coyote
#

2 cores? that ain't much. I suppose it says 4 threads?

autumn cave
#

But it shouldn't matter too much I think

flint coyote
autumn cave
#

228 x 50 x 225 block region. But it 'only' takes 4 sec on main thread

flint coyote
#

And the only difference between sync and async is that you are running sync on the world directly and async on a snapshot?

flint coyote
#

what if you run sync on the snapshot?

#

not that it makes sense but is it faster?

young knoll
#

Making a snapshot has some overhead

#

No way it’s 296 seconds of overhead tho

autumn cave
autumn cave
flint coyote
#

odd. Sounds like your async thread is paused most of the time

autumn cave
#

Are we forced to use Bukkit.getScheduler().runTaskAsynchronously(...) and is there any benefit? Or are there other ways to run async?

flint coyote
#

Can you try to create the snapshot in the async thread aswell? Or does bukkit prevent that? Maybe the shared resource is what makes it so slow

flint coyote
#

Idk if that breaks anything though

young knoll
#

You can use any of the normal java methods

#

The scheduler is just there for convenience

chrome beacon
#

Snapshots should be made sync

flint coyote
#

Hmm then this delay is pretty weird

autumn cave
flint coyote
#

maybe all your cores are busy with the ide etc.
Try closing everything except mc and the server

young dome
#

Hello, this error occurs when I try to make an ItemFrame entity spawn, is this a bukkit bug? I didn't find anything on web.
The cause comes from here: https://prnt.sc/hIQw8FHXAhkB
Error (Cannot invoke "net.minecraft.server.v1_8_R3.EnumDirection.opposite()" because the return value of "org.bukkit.craftbukkit.v1_8_R3.block.CraftBlock.blockFaceToNotch(org.bukkit.block.BlockFace)" is null) : https://code.alwyn974.re/bironujaxo.apache

autumn cave
flint coyote
autumn cave
#

I'll try

flint coyote
#

if it does not I am kinda out of ideas though

autumn cave
#

tf

flint coyote
#

what was the result?

autumn cave
#

I'm not sure if it worked in 3 sec async or if it was still the previous build running in sync. But now I'm trying again and still takes forever

flint coyote
#

well now you reopened everything, right?

#

So if it takes forever now and you did not change the build then you probably not have enough cores

#

You can give the server process a higher cpu priority. That will however slow down other things on your machine

autumn cave
#

Alright, I also get this: java.lang.IllegalStateException: zip file closed

#

But normally async tasks are stopped on plugin disable right?

#

Plugin generated an exception while executing task 405

flint coyote
#

Good question. Never tested that

autumn cave
#

I assume, because why else would we need to provide the plugin reference when scheduling tasks

flint coyote
#

would make sense if they don't or do it too late

#

Maybe synchronous operations are stopped before asnycronous ones are stopped and that's why you get that issue

#

Anyway I gotta sleep now. I guess you have something you can test. (CPU priority / close other things). Also keep an eye on RAM usage. I really think the issue is somewhat hardware-bound here

autumn cave
#

I just tested, async tasks continue after plugin disable

cold tartan
#

For duels is it more efficient to make a new void dimension for each duel then delete after, or to create one void dimension with all the duels? ||sorry for asking twice I had to go before I could understand an answer||

young knoll
#

One dimension

autumn cave
worldly ingot
#

Basically that plugin can mirror the WorldEdit dependency

#

It provides all of what WorldEdit has to offer without it needing to be installed so plugins can depend on WorldEdit without having to explicitly depend on FastAsyncWorldEdit too

#

It's rare that plugins have to provide anything

remote swallow
#

wonder how thats handled on pape

#

paper

#

been as they dont use that format anymore

#

oh it doesnt have a paper module

young knoll
#

Is there some way I can spoof ping to my localhost XD

wary oasis
#

how can i get a string from a custom yml file ? Not config.yml

remote swallow
quaint mantle
#

Is there a plugin that supports 1.20 and let's you interact with NPCs to choose which server you want to join on a proxy server type setup like bungeecord?

young knoll
#

Citizens

#

You just need to assign them commands and it should work

quaint mantle
young knoll
quaint mantle
autumn cave
dull schooner
#

hey guys, can anyone help me on this? im trying to edit the item result from the anvil on the PrepareAnvilEvent, but its not working. it works just fine if i want to edit the first or the second

remote swallow
#

event.setResult()?

cold tartan
dull schooner
#

none of those worked

#
@EventHandler
    public void onAnvil(PrepareAnvilEvent event){
        AnvilInventory inventory = event.getInventory();
        inventory.setMaximumRepairCost(999999999);
        ItemStack firstItem = inventory.getFirstItem();
        ItemStack secondItem = inventory.getSecondItem();
        ItemStack resultItem = inventory.getResult();
        if(firstItem != null && secondItem != null && resultItem != null) {
            System.out.println(inventory.getResult().getEnchantments());
            firstItem.addUnsafeEnchantment(EnchantmentWrapper.DAMAGE_ALL, 10);
            secondItem.addUnsafeEnchantment(EnchantmentWrapper.DAMAGE_ALL, 10);
            resultItem.addUnsafeEnchantment(EnchantmentWrapper.DAMAGE_ALL, 10);
            inventory.setResult(resultItem);
            System.out.println(inventory.getResult().getEnchantments());```
#

it does change on the console

#

but it doesnt on the game

remote swallow
#

you dont tell the event the result

#

use event.setResult()

dull schooner
#

hm

wise mesa
#

What version of worldedit is FAWE forked from

#

v7?

dull schooner
#

so why does setResult() exists on the AnvilInventory?

wise mesa
#

Not really the right chat but whatever

remote swallow
dull schooner
#

can i give a custom data to the result item, but it gets removed when the player clicks? without using another method

remote swallow
#

you'd probably need to change it in the click event

dull schooner
#

okay

#

thanks

candid kindle
#

is there a way i can iterate through the names of the files in my jar's resources folder?

buoyant viper
#

yes? i think? but fuk if i remember what it is off the top of my head

worldly ingot
#

I have a method

ancient plank
worldly ingot
#

This obviously saves the resources to disk but I'm sure you can adapt it to do whatever you want

young knoll
#

5 open issues

#

For shame

worldly ingot
#

It's an old plugin I don't like to maintain anymore

ancient plank
#

I sometimes use issues as a planning board

young knoll
#

Did you wontfix your own issues

ancient plank
#

yes

#

the heists one was for a valid reasoning, that it had been implemented in another plugin

#

but the omni one was bc I was too lazy to figure it out

remote swallow
buoyant viper
#

hey i mean

#

VeinMeiner

worldly ingot
#

I released an update for VeinMiner like 2 days ago

#

???

remote swallow
#

that doesnt count

worldly ingot
#

oh okay

ancient plank
#

:(

young knoll
#

He’s too busy rebasing component PRs

torn shuttle
#

sleep

#

y

#

so sleepy

#

must... code...

#

damn how is it 4am already

worldly ingot
#

Save myself some work

young knoll
#

Spigot getting PRs

#

Wild

torn shuttle
#

turns out putting out some customizable npcs and inventories is not a 20 minute adventure morty

humble lynx
#

Can I just confirm, after setting up NMS mappings, I have to revert it back to it's obfucasted form afterwards?
Just saw this in a post:

"This means that you must only use the remapped-mojang jar for development and must remap your plugin prior to distribution."

torn shuttle
#

yes

#

that's done through the maven setup

humble lynx
#

so if I'm using maven, there'll be some settings somewhere that does it automatically?

torn shuttle
#

yep

humble lynx
#

sweet thanks

remote swallow
#

special source

#

?nms

humble lynx
#

I saw special-source was for non-maven in the post

#

and I'm using maven

young knoll
#

Special source is for maven

torn shuttle
#

is there even special source not for maven?

humble lynx
#

So the post is outdated?
"For those not using Maven you can download SpecialSource to help you do this here, and we encourage the creation of instructions/tools for other build systems."

young knoll
#

I think you can run it manually

torn shuttle
#

I'm guessing some maniac maybe ported it to gradle somehow

humble lynx
#

I mean it was 2 years ago

young knoll
#

But it’s also a maven plugin

humble lynx
#

Or is special source already implemented, and I just have to use it

torn shuttle
#

no shit I can't find my npc

#

what is he doing down there

humble lynx
#

Having a laugh

remote swallow
#

explained on

#

?nms

humble lynx
#

Oh a non spigot post, interesting

#

Thanks all

remote swallow
#

we love alexs blog here

ancient plank
young knoll
#

Hmm yes the floor here is made out of villager

torn shuttle
#

I need to lobotomize my test environment

#

I don't even want to count how many worlds it currently has

#

it takes forever to boot

#

40 worlds

worldly ingot
#

Unlike SOME people

torn shuttle
#

u wun go bruv?

worldly ingot
#

bruv ill kick ur arse so hard yu'll think its chewsday of next week!

torn shuttle
#

bruv i'll kick yer arse so hard on 1v1 rocket league your computer will set itself on fire out of shame, swear on me mum

worldly ingot
#

not on ur mum, bruv

#

too far

torn shuttle
#

talk shit get hit by my rocket car

dull schooner
#

so, how do i edit nbt data?

remote swallow
#

nbt api or nms

dull schooner
#

and if i need to use NMS ItemStack, please help me introduce the dependency

remote swallow
#

?nms

remote swallow
#

if the plugin is meant to work on multiple versions use nbt api

dull schooner
#

how do i add it

torn shuttle
#

big brain, was wondering why my npc wasn't working, just forgot to add it to the list of entities

dull schooner
#

idk how to deal with dependencies

rough ibex
#

then you will need to learn

dull schooner
#

i downloaded and ran the buildtools, but how do i insert the mojang mappings into the project dependencies

torn shuttle
#

you need to run the command to download the mappings through buildtools

dull schooner
#

i ran java -jar BuildTools.jar --rev 1.21.1 --remapped, i think the maps are somewhere in this folders

#

but idk how to insert them into the project dependencies

torn shuttle
#

that is listed in the link that was given to you just a few minutes ago

remote swallow
torn shuttle
#

aw man

#

it's 5 am

remote swallow
#

LLL"LL

torn shuttle
#

time to call it a day

remote swallow
#

no

#

you have another 2 hours left

torn shuttle
#

usually I would but I have to be at the gym 12h from now

remote swallow
#

go now

torn shuttle
#

I wish

#

their work schedules suck

upper moss
#

Hello, I have an error in my hologram api, can someone help me?

ornate patio
#

Well

#

I finally figured it out

#

this is the most scuffed shit

#

but I now I can finally read a vanillas potion's duration and amplifier

#

using nms

#
String registryPrefix;
if (potionData.isUpgraded()) {
    registryPrefix = "strong_";
}
else if (potionData.isExtended()) {
    registryPrefix = "long_";
}
else {
    registryPrefix = "";
}

// Use NMS to get the potion's duration and amplifier
List<MobEffectInstance> effects = BuiltInRegistries.POTION.get(new ResourceLocation("minecraft:" + registryPrefix + potionData.getType().name().toLowerCase())).getEffects();
for (MobEffectInstance effect : effects) {
    // Get spigot potion effect type from NMS potion effect type
    // Parse the last string of text after the last period and before the last apostrophe
    String nmsName = effect.getEffect().getDisplayName().toString();
    String spigotName = nmsName.substring(nmsName.lastIndexOf(".") + 1, nmsName.lastIndexOf("'"));

    PotionEffectType potionEffectType = PotionEffectType.getByName(spigotName);

    // Multiply the potion's duration or amplifier by the duration
    int duration = effect.getDuration();
    int amplifier = effect.getAmplifier();
    if (potionData.getType().isUpgradeable()) {
        amplifier *= multiplier;
    }
    else if (potionData.getType().isExtendable()) {
        duration *= multiplier;
    }

    meta.addCustomEffect(new PotionEffect(potionEffectType, duration, amplifier), true);
}
holding.setItemMeta(meta);
compact haven
#

how really bad is it to have a lot of listeners?

#

anyone have statistics?

paper cosmos
#

Can I ask anyone to send me some specific folders that are downloaded by buildtools so that my buildtools would skip this step as I have permanent error with donwloading some libraries?

lost schooner
#

Hey, would anyone be able to do a code review of my plugin? It's not finished yet but it's been so long since I've worked with Java and I want to figure out if I'm on the right track https://github.com/lthoerner/betteranvils

#

Also, related question: are there any built-in tools for managing config files, or do I just have to use a YML parser?

eternal oxide
#

?configs

undone axleBOT
quaint mantle
ocean hollow
#

Hello everyone, can you somehow explain how to implement communication between the same plugin on different servers (Velocity). For example, I have a Board class in one plugin, how can I get it from another server?

eternal oxide
#

?fork

undone axleBOT
#

SpigotMC maintains the Spigot server. If you are using a fork of Spigot (such as Paper, Airplane, Purpur, or other derivative works), you should seek support in the appropriate Discord servers.

eternal oxide
#

applies for Velocity too

eternal oxide
#

Just why nms?

#

Spigot has Attributes

#

bruh?

#

I know you can for Entities, not sure about items

#

I believe you can as attribute modifiers apply to slots so are for items

#

whats going to return null?

#

I see

#

Yeah it seems reading the base attribute is missing from the API

upper hazel
#

hey someone give me redactor were i can took my code for you)

#

i dont remember site name

flint coyote
#

redactor?

#

?paste looking for this?

undone axleBOT
upper hazel
#

I bad in vectors in math

eternal oxide
#

you only need the horse location. getDirection and subtract it from teh location to move it back

upper hazel
eternal oxide
#

why?

#

teleport and move are the same thing over short distances

#

if you are trying to add a seat to a horse its not going to be smooth

upper hazel
#

teleport and movement through vector are not the same sense of movement

eternal oxide
#

you mean velocity

upper hazel
#

will it be smooth?

eternal oxide
#

no

upper hazel
#

yes

upper hazel
eternal oxide
#

neither is going to be smooth

upper hazel
#

demm

#

i dont know how update for my class

shadow night
#

I used the EntityDamageEvent to cancel the destroying of items, but when an item lands in the void it just disappears, how can I check that?

eternal oxide
#

damage type VOID

shadow night
#

it just doesn't trigger the event at all

onyx fjord
#

is there some kind of entity spawn event but with reason given?

#

like spawner, natural etc

shadow night
#

Probably, because yk endermites

chrome beacon
shadow night
#

Something like EntitySpawnFromSpawnerEvent?

onyx fjord
#

epic thats what i want

mellow edge
#

I do not really know to what value should I set this parameter?
player.player.playSound(player.player.getLocation(), Sound.MUSIC_DISC_11, THIS PARAMETER, 1.0F);

because if I set it to Float.MAX_VALUE is basically irapes

flint coyote
#

0 is the default

#

no wait, 1 is

onyx fjord
#

player.player 🤨

mellow edge
#

(that is a custom GamePlayer class)

flint coyote
#

0 makes it slower and deeper and 2 makes it faster and higher

mellow edge
#

not pitch, but volume

flint coyote
#

Well 0 = silent and the higher it goes the louder it gets

mellow edge
#

thank you

tardy flame
#

How to get all Materials (from Material.values()) that are not disabled and have the disable thingy as an item?

#

I still get them even with such a filters:

.filter(Material::isSolid)
.filter(Material::isItem)
.filter(Material::isBlock)
chrome beacon
#

Disabled item???

tardy flame
#

Yeah like moving piston material

chrome beacon
#

ah skip legacy materials

#

also isItem should skip that

tardy flame
#

it doesn't

#

still i get it

#

WORN_CORAL_WALL_FAN

#

such an amazing item

eternal oxide
#

!isLegacy()

tardy flame
#

doesn't work

#
        Material[] selectiveMaterials = Arrays.stream(materials)
                .filter(Material::isSolid)
                .filter(Material::isItem)
                .filter(material -> !material.isLegacy())
                .filter(Material::isBlock)
                .toArray(Material[]::new);
#

i still get these disabled items

flint coyote
#

isObtainable?

tardy flame
#

no such method

flint coyote
#

Oh I thought there was

chrome beacon
flint coyote
#

Ah je that's isItem. nvm

eternal oxide
#

ah

tardy flame
#

yeah legacy only works if the material starts with "LEGACY_"

#

which these don't

icy beacon
#

perhaps it would work best for you to create a set of materials that you want to filter out that are not filtered by default

tardy flame
#

there are a lot of these

dusty herald
#

get the client lore and check to see if it has the word disabled in it

tardy flame
#

._.

dusty herald
#

or make a list

tardy flame
#

is that just purely client side?

dusty herald
#

idk I didn't do any research maybe it's in the server side lore

icy beacon
#

ehh this is very far fetched but maybe this would work

#

because technically it's not enabled by a feature

#

lol

dusty herald
#

I thought about that but I don't know what the fuck that is lol

icy beacon
#

same tbh

#

probably gamerules?

young knoll
#

isEnabledByFeature is for the experimental datapack stuff

tardy flame
icy beacon
#

isi t?

#

i think it's in material

dusty herald
#

It's in Material.

young knoll
#

However there is currently no experimental datapack

dusty herald
#

I didn't even know you could disable items to begin with

young knoll
#

Yeah

icy beacon
#

can we find the impl of this method somewhere

young knoll
#

?stash

undone axleBOT
icy beacon
#

tbh i've visited this site like 20 times and i still don't know where stuff is lol

dusty herald
#

I tried searching it but I couldn't find anything with my 5 seconds of googling

tardy flame
#

this is in 1.20

young knoll
#

All the impl stuff is somewhere in CraftBukkit

tardy flame
#

and I'm still on 1.19.3

#

no method there

young knoll
#

It’s in 1.19.4

dusty herald
#

how do you even disable items in the first place

young knoll
#

Datapack

young knoll
# icy beacon

Material is an enum and thus has no craftbukkit impl

dusty herald
#

oh okay that explains why I'm so confused

young knoll
#

It’s likely in CraftMagicNumbers

icy beacon
#

ok actually i didn't need to search that far it was in Bukkit lol

young knoll
#

Ah never mind it’s in CraftDataPackManager then

#

Assuming that exists

dusty herald
#

that seems like it would work perfectly for this issue though

icy beacon
#

i'll try looking for it

young knoll
#

I mean a coral wall fan should never be disabled

#

Unless you have a custom datapack

icy beacon
#

yay

dusty herald
#

Its so early

icy beacon
dusty herald
#

I got woken up

tardy flame
icy beacon
dusty herald
#

ok read

#

try using this method

icy beacon
#

getHandle returns a nms version of the class right?

dusty herald
#

That's all spigot code

#

It's all deeper

icy beacon
#

i'm going to the nms mapping browser

#

ok actually though

#

craftWorld.getHandle returns what

dusty herald
#

it returns stuff

#

I avoid nms at most times

icy beacon
#

i assumed it returned net.minecraft.world.level.World

#

but there's no enabledFeatures in that

lilac rune
#

Hey guys ! I got 403 on BuildTools ! Did you know why ?

Loading BuildTools version: git-BuildTools-2836244-160 (#160)
Java Version: Java 17
Current Path: /Users/anthony/Documents/Build/.
git version 2.39.2 (Apple Git-143)
SwartZCoding
seaflyscontact@gmail.com
Picked up _JAVA_OPTIONS: -Djdk.net.URLClassPath.disableClassPathURLCheck=true
java version "17.0.3.1" 2022-04-22 LTS
Java(TM) SE Runtime Environment (build 17.0.3.1+2-LTS-6)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.3.1+2-LTS-6, mixed mode, sharing)
Attempting to build version: '1.20.1' use --rev <version> to override
Could not get version 1.20.1 does it exist? Try another version or use 'latest'
java.io.IOException: Server returned HTTP response code: 403 for URL: https://hub.spigotmc.org/versions/1.20.1.json
    at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1997)
    at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1589)
    at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:224)
    at org.spigotmc.builder.Builder.get(Builder.java:828)
    at org.spigotmc.builder.Builder.main(Builder.java:309)
    at org.spigotmc.builder.Bootstrap.main(Bootstrap.java:27)
#

I didn't understand why because if i open the link directly on chrome, i saw the json file

icy beacon
#

i've actually been getting 403 as well today when compiling my api's javadocs

#

even though the actual error is 404 lol

#

one sec

lilac rune
#

Can't get source to work on some stuff 😂

icy beacon
#

removing the <links> section helped for me

#

but idk what to do for you

#

it's very weird

lilac rune
eternal oxide
#

all you can do is wait or try clearing your dns cache

tardy flame
lilac rune
tardy flame
#

oh wow, this indeed works:
.filter(material -> material.isEnabledByFeature(Bukkit.getWorlds().get(0)))

#

so that means there were experimental things already in 1.19.3?

#

weren't they introduced in 1.19.4?

#

and also how would you do the same in 1.19.3 where there is no such method

young knoll
#

No they were added in 1.19.3

#

Also you’ll need to use NMS in .3

tardy flame
#

alrighty

young knoll
#

Or just, stop using 1.19.3

tardy flame
#

better if i move to newer version then

steep plaza
#

gguys how i can make a unmovable item from the inv

flint coyote
#

You use the inventory click event and cancel it

steep plaza
#

ah ok thx

astral horizon
#

can display effects with custom name using ENTITY_EFFECT packets?

potent ibex
#

Hey guys how do I retrieve and update config.yml value in other plugin from my plugin?

flint coyote
#

just set the path and treat it like a custom config

potent ibex
#

using Fileconfiguration?

#

I mean I can't find a way to get this part

Plugin plugin = ```
ivory sleet
#

Bukkit.getPluginManager().getPlugin("PlaceholderAPI") for instance

#

It may be null

#

So null check

paper cosmos
#

Can I find a text tutorial how to to set up local database for a plugin?

drowsy helm
#

doubt you'll find any plugi nspecific ones

gray talon
#

anyone have any idea how to stop EntityPlayer from literally dropping everything once killed

flint coyote
#

there's a gamerule keepInventory

#

Or you clear the drops in the EntityDeathEvent

gray talon
#

nope

#

Packet EntityPlayer

#

i disguise a zombie

flint coyote
#

oh

gray talon
#

using a litte trick

#

called id spoofing

flint coyote
#

so for the server it's still a zombie?

gray talon
#

yep

flint coyote
#

Does an EntityDeathEvent fire?

gray talon
#

for custom damage it wont fire

#

this is beyond bukkit+spigot

eternal oxide
#

custom damage?

gray talon
#

basically "fake damage"

#

changed by the PacketPlayOutEntityMetadata

eternal oxide
#

then you shoudl raise your own events, if you want them to fire

gray talon
#
@SuppressWarnings("deprecation")
@EventHandler
public void onPacketInSound(PacketSentEvent event) throws Exception {
    if (event.getPacket() instanceof PacketPlayOutEntityMetadata) {
        ...
    }
}

#

im trying

#

i tried completely spoofing the data

#

so the client wouldnt think that the entity had died

#

changing field "b" to 0.111111111111

cunning crater
#

I have an event handler for block break for spleef.

@EventHandler
    private void onBlockBreak(BlockBreakEvent e) {
        if (!game_running) {
            return;
        }
        if (e.getBlock().getWorld() != world) {
            return;
        }
        if (e.getBlock().getType() != Material.TNT) {
            if (SBHManager.plugin.buildModeEvent.buildmode.contains(e.getPlayer().getUniqueId())) {
                e.setCancelled(false);
                return;
            }
            e.setCancelled(true);
            return;
        }
        if (block_break || SBHManager.plugin.buildModeEvent.buildmode.contains(e.getPlayer().getUniqueId())) {
            e.getBlock().getDrops().clear();
            return;
        }
        e.setCancelled(true);
    }

This is in 1.8 papermc, however it's spigot dependency for the plugin, which is why I'm asking here.
How do i stop the items from dropping? e.getBlock().getDrops().clear() doesn't seem to be working.

If it's too old version to get help with i understand.
Does anyone know how to stop it from dropping the block?

gray talon
#

so the thing is, the client still see the drop IF and ONLY IF the zombie were killed by melee+ ranged attacks

rose trail
#

can anyone help with github packages?

gray talon
#

(which is fireable by bukkit)

flint coyote
gray talon
#

there's no fire damage

flint coyote
#

well then that's the solution for him

gray talon
#

it existed back in 2011

#

my server core is 1.7.2

flint coyote
#

how do you check that? is it part of the docs?

gray talon
#

i developed plugins back in 2012

cunning crater
#

but on what? If I do e.setDropItems(false) it shows an error.

flint coyote
#

Is your class named "BlockBreakEvent"?

#

Or what's the error that is shown?

gray talon
#

send me the stack trace

flint coyote
#

Also shouldn't there be an EntityDamageEvent and EntityDeathEvent even when it's fall damage etc?

cunning crater
#

the class this function is in is named Spleef, pretty sure that's irrevelant. You probably meant class of event, yes it's BlockBreakEvent.

Cannot resolve method 'setDropItems' in 'BlockBreakEvent'.

That's not an error yet, that's just intellij though.

gray talon
#

because

#

1.8.8

#

implementation

#

does not have the ``setDropitems` method

flint coyote
cunning crater
#

what am I supposed to do then? Is there a way to do it?

gray talon
#

the only useful method in that class back then

#

is GETblock()

gray talon
#

here's how

#

wait

#

isnt e.getBlock().getDrops().clear(); supposed to work

#

welp it wont

#

so use this

steep plaza
#
            Objective objective = scoreboardlobby.registerNewObjective("ScoreboardLobby", "ScoreboardLobby", ChatColor.DARK_PURPLE + "" + ChatColor.BOLD + "MASTER" + ChatColor.WHITE + "" + ChatColor.BOLD + "MC");
            objective.setDisplaySlot(DisplaySlot.SIDEBAR);

            Score SpazioVuoto = objective.getScore(""); //blank space
            Score ScrittaPlayer = objective.getScore(ChatColor.GOLD + "" + ChatColor.BOLD + "" +"Nome: " + "" + ChatColor.WHITE + NomeGiocatore ) ;  //NOME SERVER NELLHEDER
            Score Rank = objective.getScore(ChatColor.GOLD + "" +ChatColor.BOLD + "" + "Rank: " +ChatColor.WHITE + "" + " " );
            Score PlayerON = objective.getScore(ChatColor.GOLD + "" + ChatColor.BOLD + "" + "Online: " + "" + ChatColor.WHITE + "" + GiocatoriOnline);
            Score Social =  objective.getScore(ChatColor.GOLD + "" + ChatColor.BOLD + "" + "Social: "  + "" + ChatColor.WHITE + "" + "/Social           " );
            Score Votaci = objective.getScore(ChatColor.GOLD + "" + ChatColor.BOLD + "" + "Votaci: "  + "" + ChatColor.WHITE + "" + "/votaci" );
            Score Sito = objective.getScore(ChatColor.GOLD + "" + ChatColor.BOLD + "" + "Sito: "  + "" + ChatColor.WHITE + "" + "www.mastermc.it" );
            Score Ip = objective.getScore(ChatColor.WHITE + "" + ChatColor.BOLD + "" + "          mastermc.it" );




            SpazioVuoto.setScore(11);
            SpazioVuoto.setScore(10);
            Rank.setScore(9);
            ScrittaPlayer.setScore(8);
            SpazioVuoto.setScore(7);
            PlayerON.setScore(6);
            SpazioVuoto.setScore(5);
            Social.setScore(4);
            Votaci.setScore(3);
            Sito.setScore(2);
            SpazioVuoto.setScore(1);
            Ip.setScore(0);



why I do not pass the empty spaces in the

cunning crater
gray talon
#
if (block_break || SBHManager.plugin.buildModeEvent.buildmode.contains(e.getPlayer().getUniqueId())) {
            e.setCancelled(true);
            e.getBlock().setType(Material.AIR);
            return;
        }
cunning crater
#

doesn't that remove the animation? what else is different?

gray talon
#

the thing is

#

1.8 implementation

flint coyote
#

it breaks other plugins

gray talon
#

sucks

gray talon
#

here's how to add animation back

cunning crater
gray talon
#

block.getLocation().getWorld().playEffect(block.getLocation().add(0.5, 0, 0.5),
Effect.STEP_SOUND, block.getType(), 20);

#

thats it

#

add animation back

#

it will add sound back too

flint coyote
gray talon
#

well

#

dont use like that

#

thats bad practice

#

let me give u this

cunning crater
gray talon
#

well

#

step_sound

#

is actually the block breaking particles

cunning crater
#

oh

#

and this is the only way to do it rn?

gray talon
#

use this quick lib

#

change vn.giakhanhvn to org

#

wait nvm

#

i need to remove this

#
package vn.giakhanhvn.skysim.sidebar;

import java.util.ArrayList;
import java.util.List;

import vn.giakhanhvn.bukkit.api.Bukkit;
import vn.giakhanhvn.bukkit.api.entity.Player;
import vn.giakhanhvn.bukkit.api.scoreboard.DisplaySlot;
import vn.giakhanhvn.bukkit.api.scoreboard.Objective;
import vn.giakhanhvn.bukkit.api.scoreboard.Score;
import vn.giakhanhvn.bukkit.api.scoreboard.Scoreboard;
import vn.giakhanhvn.bukkit.api.scoreboard.ScoreboardManager;

import vn.giakhanhvn.skysim.user.User;
import vn.giakhanhvn.skysim.util.Sputnik;

public class Sidebar {
    private static ScoreboardManager manager = Bukkit.getScoreboardManager();

    private Scoreboard board;
    private Objective obj;
    private List<Score> scores;

    public Sidebar(String name, String identifier) {
        this.board = manager.getNewScoreboard();
        this.obj = board.registerNewObjective(identifier, "");
        this.scores = new ArrayList<>();
        obj.setDisplaySlot(DisplaySlot.SIDEBAR);
        obj.setDisplayName(name);
    }

    public void add(String s) {
        Score score = obj.getScore(Sputnik.trans(s));
        scores.add(0, score);
    }

    public void apply(Player player) {
        for (int i = 0; i < scores.size(); i++)
            scores.get(i).setScore(i);
        player.applyScoreboard(board);
    }
}
#

here

#

i removed the User field

gray talon
cunning crater
#

Alright, tysm

gray talon
#

my server core is 1.7.2

#

used packet tricks to let 1.8.8 -> 1.20 user joinable and 1.20 mobs accessible

#

so any mad engineers want to help me?

flint coyote
#

You'll have a hard time finding support for dead versions here

gray talon
#

my server isnt even spigot anymore

#

i have 1.20 methods in 1.7

river oracle
#

Why 1.7 lol

gray talon
#

most reliable

river oracle
#

😃

gray talon
#

and i wrote multithreaded mc for that version

#

so idont want to give it up

river oracle
#

🤣 most funny guy

#

This is why server cores are a mistake bros locked in 9 years ago and can't escape

gray talon
#

at least i can handle concurrent chunk load without any hiccups

river oracle
#

Mmmk

gray talon
#

and i hate newer versions so idc about those thing

cunning crater
gray talon
#

considering this is the project github

#

i dont think my questions are usual

wise mesa
#

Why objective c

gray talon
#

macos gui

wise mesa
#

Ah

uncut needle
#

Im trying to draw transparent images to map

#

but it makes the transparent parts see the map

#

im drawing this

#

I found a function online that takes each pixel and draws it

#

but

gray talon
#

?

#

whats wrong

#

thats seems fine

worldly ingot
#

Yeah that adds up. That's what transparency shows on maps. You would have to draw pixel by pixel and ignore alpha pixels

uncut needle
#

It draws like this

gray talon
#

oh

#

easy

#

here's the function

#
public void drawImage(MapCanvas cv, int x, int y, Image image) {
        @SuppressWarnings("deprecation")
        byte[] bytes = MapPalette.imageToBytes(image);
        for(int x2 = 0; x2 < image.getWidth((ImageObserver)null); ++x2) {
            for(int y2 = 0; y2 < image.getHeight((ImageObserver)null); ++y2) {
                byte color = bytes[y2 * image.getWidth((ImageObserver)null) + x2];
                if (color == (byte) 0x00000000) continue;
                cv.setPixel(x + x2, y + y2, bytes[y2 * image.getWidth((ImageObserver)null) + x2]);
            }
        }
    }
    // bonus
    protected BufferedImage res(BufferedImage originalImage, int targetWidth, int targetHeight) {
        BufferedImage resizedImage = new BufferedImage(targetWidth, targetHeight, BufferedImage.TYPE_INT_ARGB);
        Graphics2D graphics2D = resizedImage.createGraphics();
        graphics2D.drawImage(originalImage, 0, 0, targetWidth, targetHeight, null);
        graphics2D.dispose();
        return resizedImage;
    }
uncut needle
#

im testing it

gray talon
#

these are the places where they're used

uncut needle
#

omg it it works

#

thank you

#

the black dots are drawn by me

gray talon
uncut needle
#

I was trying to understand whats happening

uncut needle
#

this is what it looked like with rainbow

gray talon
uncut needle
#

I did

gray talon
#

it should work most of the time

uncut needle
#

it worked

uncut needle
gray talon
#

yeah

upper hazel
gray talon
#

i can help everyone except myself

upper hazel
#

armor stand*

uncut needle
#

armour stand*

upper hazel
# gray talon explain your problem

I do "2 sittings"
at the horse through the armor stand, but since the horse is moving, the armor stand should also move, but it still does not have time

gray talon
#

eh

#

like

#

the armorstand

#

lags behind right

#

like it still moves

#

but slower

#

am i correct

upper hazel
#

yes

gray talon
#

welp

#

so you need to touch NMS

#

what is your version

upper hazel
#

really MMS?

gray talon
#

nms

#

net.minecraft.server

#

what server implementation are you using

#

and mc version

upper hazel
#

my minecraft version 1.19.4

#

purpur

gray talon
#

do you have CraftBukkit in your classpath/maven/gradle

#

i cant spoonfeed u on this one but let me make it clear

#

your armorstand is lagging behind because of 1 reason

#

i call it tick chunk

#

let me draw it out

upper hazel
#

wait a moment

gray talon
#

you want an armorstand

#

that follows you right

#

your horse*

#

like a nametag

upper hazel
#

i want simulate 2 seat

#

in horse

#

how this plugin

gray talon
#

got it

upper hazel
#

i take code for move armorstand but dont know how he update

#

location

#

in this plugin

gray talon
#

here's quick explaination

#

of why it slows down

upper hazel
#

lagback?

gray talon
#

like the armorstand still follows

#

but slower right

#

thats da lagback

upper hazel
#

i see

#

minecraft code trash

#

(

gray talon
#

no

#

it make sense

#

the thing is

#

if you want the armorstand to teleports

#

at the same moment your horse moves

#

either use TickStartEvent on paper or sth

#

or

#

create your custom Horse entity

#

and teleports the armorstand at the beginning of the horse's update method

upper hazel
#

what will be if i use vectors

gray talon
#

here's how i would do it (1.8.8)

public void t_() {
  super.t_();
  teleport();
}
upper hazel
#

for move

gray talon
#

too inefficient

#

vectors are sine and cosine

#

too many of them will add up

#

to a significiant chunk

upper hazel
#

hm

#

can you say how teleport this plugin pls

gray talon
#

i said

#

you know what

#

let me read the code

upper hazel
#

Which

upper hazel
#

this exists?

gray talon
upper hazel
gray talon
#

the fuck is your english

gray talon
upper hazel
#

sorry i not engl

#

i use translate

#

)

gray talon
#

you're russian arent you

upper hazel
#

yea

gray talon
#

i recognize the moment you type ")"

upper hazel
#

hah

#

you not do this? i mean you like use this right 💀

gray talon
#

i mean

#

translate this sentence

#

"Use Paper API if you want to use the TickStartEvent event"

upper hazel
#

ok

#

i see

#

so this plugin use event too?

#

or just teleporting

gray talon
#

uh

#

Paper is a server software

#

not a plugin

eternal oxide
#

?fork

undone axleBOT
#

SpigotMC maintains the Spigot server. If you are using a fork of Spigot (such as Paper, Airplane, Purpur, or other derivative works), you should seek support in the appropriate Discord servers.

upper hazel
#

eh i not obaut this

gray talon
upper hazel
gray talon
#

as far as i can tell

upper hazel
#

oh

gray talon
#

ok first

#

try change this to 0

upper hazel
#

lol

#

ok

gray talon
#

and try

#

if not use NMS

#

or paper

#

whatever your heart desire

#

man this thing nuts

river oracle
gray talon
#

read this diagram

#

or sketch

river oracle
#

Ahh nvm misread the issue

#

Ik what you mean

upper hazel
#

I'm making a plugin to order. Do you think it's possible to ignore this problem if the order for a horse costs 16.55 with other add-ons?

gray talon
#

w h a t

upper hazel
#

a?

#

eh..?

gray talon
#

i cannot interpret that question

#

sorry

upper hazel
#

ok

rose trail
#

who could help me with github packages?

chrome beacon
#

?ask

undone axleBOT
#

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. Make sure you use the right channel regarding the topic of your question. Create a thread in case the channel is already in use!

gray talon
#

e

rose trail
#

I want to publish a library on github and I have this problem, although I have tried many tokens [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ library --- Uploading to github: https://maven.pkg.github.com/Xemii16/YeLibrary/com/yecraft/library/1.1-SHAPSHOT/library-1.1-SHAPSHOT.jar Uploading to github: https://maven.pkg.github.com/Xemii16/YeLibrary/com/yecraft/library/1.1-SHAPSHOT/library-1.1-SHAPSHOT.pom [IJ]-1-MojoFailed-[IJ]-source=LIFECYCLE-[IJ]-goal=deploy-[IJ]-id=com.yecraft:library:jar:1.1-SHAPSHOT-[IJ]-error=authentication failed for https://maven.pkg.github.com/Xemii16/YeLibrary/com/yecraft/library/1.1-SHAPSHOT/library-1.1-SHAPSHOT.jar, status: 401 Unauthorized [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 4.208 s [INFO] Finished at: 2023-07-05T15:45:10+03:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project library: Failed to deploy artifacts: Could not transfer artifact com.yecraft:library:jar:1.1-SHAPSHOT from/to github (https://maven.pkg.github.com/Xemii16/YeLibrary): authentication failed for https://maven.pkg.github.com/Xemii16/YeLibrary/com/yecraft/library/1.1-SHAPSHOT/library-1.1-SHAPSHOT.jar, status: 401 Unauthorized -> [Help 1]

eternal oxide
#

you have no credentials in your settings

rose trail
eternal oxide
#

~/.m2/settings.xml

eternal oxide
#

your url looks wrong. remove the /YeLibrary from the end

eternal oxide
#

just from your settings.xml

rose trail
eternal oxide
#

what deploy are you using?

eternal oxide
#

mvn deploy -Dregistry=https://maven.pkg.github.com/Xemii16 -Dtoken=GH_TOKEN

eternal oxide
#

its what I use

#

so long as your password is a valid token in your settings.xml

#

must be a token not your github password

rose trail
shadow night
#

when I use Player#getTargetBlock(Set<Material>, int), how do I get the blockface to place a block at that point? or does it work in a different way I don't understand?

gray talon
#

try raycasting

#

im an artist lord i know

shadow night
gray talon
#

do u want it?

shadow night
#

maybe, but I dunno how

gray talon
#

u can get the Block at the point the raycast broke

#

and do ur job

shadow night
#

you think I understand anything?

gray talon
#

yes

shadow night
#

well, you might be wrong

gray talon
#

raycast is just a fancy word

#

its roughly

shadow night
#

well, I've heard of raycasting

gray talon
#

forward until you hit a wall

eternal oxide
#

rayTrace is teh spigot method

steep plaza
gray talon
#

i write libraries for my use

#

so idk how the API has grown

eternal oxide
#

time for seppuku

gray talon
#

change vn.giakhanhvn.bukkit.api

#

to org.bukkit.