#help-development

1 messages ยท Page 1065 of 1

grim hound
#

I always find this like wtf is Instrumentation

#

and how do I get it?

silk pumice
#

;

#

plz

#

any 1

grim hound
#

you know too damn well that this info is completly unnecesary to me

quiet ice
grim hound
quiet ice
#

From there you can call retransformClasses(Class<?>...) or similar

grim hound
young knoll
#

Here are your options:

  • Ignite: An external program that allows plugins to use mixins (Not plug and play)
  • Command line arg: Allows you to use a java agent and transform the bytecode (Not plug and play)
  • Runtime attach: Allows you to attach an agent at runtime (Plug and play but will be patched by the JVM eventually)
acoustic pendant
#

Hey, i can't test rn and didn't found anything on javadocs, can NapespacedKey have mayus?

young knoll
#

mayus?

acoustic pendant
acoustic pendant
grim hound
#

I use unsafe

#

I depend on it a lot

#

so

young knoll
#

iirc it has to be alphanumeric + _ and .

grim hound
#

fuck you oracle

#

I will use java agent as well

young knoll
#

Alright then look into bytebuddy or javaassist

acoustic pendant
#

thanks

grim hound
young knoll
#

It does

grim hound
#

it doesn't

young knoll
#

Use it to runtime attach an agent and then reload the class, then use asm to patch it

grim hound
#

got an error when tried

quiet ice
#

Bytebuddy does indirectly as it is a javaagent

grim hound
#

it's like 3 MB

quiet ice
#

You can also do it yourself, it's not all too complicated - it really depends on whether you want to shade it or not

grim hound
#

it's not all too complicated man, I don't know where to start

young knoll
#

I have a plugin I made with it a while back

grim hound
#

saying oh it ain't hard ain't gonna help

young knoll
#

lemme see if I can find it

grim hound
quiet ice
#

It's only complicated because you make it as such

vagrant girder
#

Im trying to create custom smithing recipes using the templates already in the game but how would I get the trim that the template provides from its ItemStack?

grim hound
young knoll
#

I mean it is ASM

grim hound
#

that is not what's happening

young knoll
#

It's probably one of the most complex tools you can use with java

#

found it

sullen belfry
#

does PlayerItemBreakEvent trigger when armor is broken while the player is wearing it?

grim hound
quiet ice
grim hound
young knoll
#

yes

#

I reload them

young knoll
#

I believe so

#

Try it

sullen belfry
#

i have but my event doesn't seem to be triggering and i can't figure out why

young knoll
#

Is it registered

#

and @EventHandler

keen charm
#

Hey

#

How do I turn a URL into texture value and signature?

sullen belfry
#

the class is registered in the main

grim hound
#

wait no, this one probably also won't work

sullen belfry
#

i can't find a clear answer online

grim hound
sullen belfry
#

its just people wanting to stop the armor from breaking instead of getting it when its broken

grim hound
chrome beacon
#

If you're on a modern version you should have to use it directly

keen charm
#

Wait, I'm using Mineskin, I'll just store the texture and signature value alongside URL xd

chrome beacon
chrome beacon
keen charm
#

But it somehow requires URL instead of value and signature

chrome beacon
#

Spigot 1.18.1 added the new PlayerProfiles class, which finally allows us to use custom heads without needing any reflection! You can obtain them as normal items, or actually place them down into the world. Iโ€™ll show you how both works: Creating a new PlayerProfile First, we gotta create a new PlayerProfile object. To do so,...

#

Yeah

#

Again the texture value is just a piece of json containing the url

#

The guide above shows you how to extract it

keen charm
#

Got it

#

And how does signatures work?

#

I can't set a signature while setting skin

quiet ice
#

?stash

undone axleBOT
sullen belfry
#

well this needs changed right now

keen charm
#

(If you wrote it to me)

grim hound
sullen belfry
chrome beacon
#

You don't need the signature for anything in this case

keen charm
chrome beacon
#

You're changing the players skin?

quiet ice
#

So the signature can probably be ignored - but look at the client's logs if you are unsure about it

keen charm
chrome beacon
#

Not sure if the signature is required then

#

It might be ๐Ÿคทโ€โ™‚๏ธ

cold pawn
#

Does anyone know why classes like EventPriority and Material static classes break when switching to versions after 1.20.2? I switched versions to 1.20.6 and its telling me those classes doesn't exist, I use intellij ao I tried Invalidating caches but nothing works, any suggestions?

chrome beacon
#

Update Intellij

grim hound
#

@young knoll

#

chatgpt doesn't know shit

#

like he just straight up says "ah yes, my bad" and continues doing what he does

young knoll
#

lol

grim hound
#

how are you reloading the classes?

#

even github is breaking

#

why is everything breaking suddenly

grim hound
#

yeah just found that

dawn flower
#

how do i modify a chunk before it's sent to a player

slender elbow
chrome beacon
#

What's the goal?

grim hound
grim hound
dawn flower
#

do i need to

chrome beacon
#

No but I recommend it

dawn flower
#

im talking about packets in general

grim hound
blazing ocean
#

you can shade it

grim hound
blazing ocean
grim hound
blazing ocean
#

if you're the only plugin

grim hound
chrome beacon
dawn flower
#

i'm just gonna add it as a provided dependency

blazing ocean
dawn flower
#

idk why, my friend asked me to do it

grim hound
quiet ice
#

flipping being?

dawn flower
#

?

chrome beacon
#

For everyone? Or just a single player

dawn flower
#

single

grim hound
#

whatever

quiet ice
# dawn flower ?

You can flip something in more than 1 axis if you have more than 1 dimension

chrome beacon
#

Yeah packets would be the way to go

blazing ocean
chrome beacon
#

Now the project you're trying to do will be quite difficult

rapid meadow
#

anyone help

dawn flower
grim hound
blazing ocean
grim hound
#

but do not add any package prefixes

#

let the original plugin load if it's present

chrome beacon
rapid meadow
#

none of them worked

quiet ice
chrome beacon
cold pawn
dawn flower
chrome beacon
#

Make sure you're using a Java 21 jdk

rapid meadow
# chrome beacon In an empty folder?

yeah First I mistakenly run it in downloads didnt work, then in the folder I sent the error, in C:/users/folder, then in some random ass empty folder on desktop

chrome beacon
#

Make sure you don't have some antivirus messing with it

rapid meadow
#

I have only kaspersky

chrome beacon
#

Yeah that does cause a number of issues if I remember correctly

#

Disable it and try again

rapid meadow
#

nah

#

its my life rescue

young knoll
#

I think it's for injecting my custom classes into the right classloader

chrome beacon
rapid meadow
#

I use arch btw

grim hound
grim hound
blazing ocean
chrome beacon
#

From starting a vm

rapid meadow
blazing ocean
#

ok

rapid meadow
#

and JetBrains doesnt really work well on linux

#

I have to sayu

blazing ocean
chrome beacon
#

Works fine

rapid meadow
#

not rly

subtle folio
#

jetbrains ides work great

blazing ocean
#

yes it does

subtle folio
#

iโ€™m using it on manjaro rn

blazing ocean
#

same on arch

chrome beacon
#

I haven't had a single issue with jetbrains on linux

quiet ice
blazing ocean
#

neither

rapid meadow
#

I am getting a lot of crashes I gotta reinstall it everytime when I want to open project in new window it crashes, everytime I restart my pc, some folder .lock creates and I have to delete cause I cant open a project at all

#

its working so bad

quiet ice
#

But given that you seem to also wish to flip the X and Z axes, I don't think that raw packet transformation works well here

blazing ocean
rapid meadow
#

it does it every time

#

I tried ubuntu same shit

blazing ocean
#

use jetbrains toolbox

subtle folio
chrome beacon
#

^

coarse linden
#

anyone interested in helping w a project

#

1.8

blazing ocean
#

no

coarse linden
#

theres literally nothing wrong

#

with .8

#

1.87

#

1.8.9

blazing ocean
#

kekw

blazing ocean
#

?1.8

undone axleBOT
blazing ocean
#

it's almost 10yrs old

coarse linden
#

yh

#

didnt even ask

#

what it's about

pseudo hazel
#

well

#

?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!

pseudo hazel
#

what is it about

chrome beacon
#

Watch it be hypixel skyblock

coarse linden
#

no

#

zombie rush in mc

#

yk

#

that

#

roblox game

#

but

#

with like

pseudo hazel
#

and what part are you having issues with

coarse linden
#

nothing

rapid meadow
coarse linden
#

im just working

#

aone

#

alone

#

its lonely

pseudo hazel
#

oh

#

?services

undone axleBOT
coarse linden
#

i literally know what im doing

#

i was just asking

pseudo hazel
#

oh

#

well you'd be hard pressed to find anyone willingly wanting to help on 1.8 project in this server but I guess you are welcome to try

coarse linden
#

sure

quaint mantle
#

Which event can cancel from taking an item from a inventory

coarse linden
#

not sure

#

what you want

coarse linden
#

there are a ton of other ones

quaint mantle
coarse linden
#

yeah

#

it prevents items being taken out

#

what do u mean

chrome beacon
#

InventoryClickEvent and InventoryDragEvent

coarse linden
#

you can also check

#

if the item is in a certain inventory

#

and slot

quaint mantle
coarse linden
#

?

quaint mantle
#

? what

quaint mantle
chrome beacon
#

Should work fine

quaint mantle
#

let me try again

#

But it will prevent also from taking a item from the invetory with the mouse?

coarse linden
#

not sure

#

what you are trying to do

quaint mantle
#

Trying to cancel to pickup x items from the inventory based on the slot

chrome beacon
#

?gui

quaint mantle
#

Thats not useful for me

quaint mantle
#

? what mate

coarse linden
#

ur not

#

making sense

quaint mantle
#

I want to cancel picking items from an inventory at x slot of the inv

coarse linden
#

like

#

picking up items

#

and you want them to not go in a specific inventory slot

quaint mantle
subtle folio
#

when this event is called, check the slot number, then cancel the event

quaint mantle
subtle folio
#

Show some code then

quaint mantle
#

Maybe its because the event is handled in other plugin?

#

I mean, I have the event listener in other plugin and both running in the same server

sand spire
#

Is there an event/packet that triggers when a player left clicks?

PlayerInteractEvent fires repeatedly when mining a block (aka holding down, not clicking) and EntityDamageEvent doesn't fire when the hit entity is invulnerable

sullen belfry
#

does anyone have any idea why PlayerItemBreakEvent won't fire?

#

?paste

undone axleBOT
sullen belfry
coarse linden
#

probably u should

#

make a debounce

#

boolean

#

and just implement that

sullen belfry
sand spire
# coarse linden and just implement that

probably, I hope I will be able to do it in a way normal clicks are still registered. I tried adding a cooldown and 55ms is the smallest for it to only call once when mining a block, but players might be able to clikc faster

coarse linden
#

well what are you trying to do

chrome beacon
sand spire
sullen belfry
humble lynx
#

And your event was registered in your onEnable?

sullen belfry
#

yeah

#

all my other events in the class get called

#

but this one doesn't

coarse linden
#

yeah

#

just use a debounce

#

there is no real way

#

to tell

#

if its a hold/click

sand spire
#

alright thanks

rapid meadow
#

nah build tools are shit

#

not working

#

is there any other way

#

to like install

#

spigot

blazing ocean
#

no

subtle folio
coarse linden
#

guys dont be mean

blazing ocean
#

how was anybody mean here

coarse linden
#

on a server

rapid meadow
#

nah but Like

#

I want to use the nms

#

but the Buildtools.exe is not letting me

blazing ocean
#

wdym

coarse linden
#

you dont need it for that

#

if its plugin

blazing ocean
#

well no, but you probably want it remapped

coarse linden
#

dont have to

blazing ocean
#

probably want it

coarse linden
#

pretty sure

#

you just need

#

to remove

#

like this

#

i think

blazing ocean
#

change spigot-api to spigot in your build config

coarse linden
#

thats all u need

#

yeah

rapid meadow
#

nah

#

it just underlines red

#

://

coarse linden
#

click

#

reload

#

maven

#

or whatever

rapid meadow
#

yeah

#

not found dependency

coarse linden
#

screenshot

#

or send

#

me ur maven

eternal oxide
#

run buildtools

rapid meadow
eternal oxide
#

then fix it

coarse linden
#

lil bro gave 0 help

subtle folio
#

how you gonna use nms if you dont run buildtools?

eternal oxide
#

do not run it in your downloads folder, nor desktop

rapid meadow
#

blud

#
org.spigotmc:spigot:jar:1.8.8-R0.1-SNAPSHOT was not found in https://hub.spigotmc.org/nexus/content/repositories/snapshots/ during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of spigotmc-repo has elapsed or updates are forced
#

after I reload

#

maven

eternal oxide
#

you can not use spigot without running buildtools

rapid meadow
#

it aint workin

eternal oxide
#

BT is just fine, you are doing it wrong

#

what command did you use to run BT?

coarse linden
#

did u

#

watch a yt tutorial

quiet ice
#

Are you sure you need to use the spigot artifact and not the spigot-api artifact?

rapid meadow
#

Uh

eternal oxide
#

I think he wants nms

rapid meadow
#

Yea?

#

ye

eternal oxide
#

what command did you use to run buildtools?

quiet ice
#

Okay in case of nms go continue

rapid meadow
#

buildtools.exe

blazing ocean
#

did it run successfully

rapid meadow
#

..

#

no?

blazing ocean
#

ok and then what's the error

#

you are giving close to zero info here

rapid meadow
#

I've sent it earlier bro

eternal oxide
#

we were not reading earlier so give the error

rapid meadow
#

wait a sec

blazing ocean
#

you said bt didn't rjn successfully

rapid meadow
blazing ocean
#

where

rapid meadow
#

can't even copy the error since buildtools just crashed

eternal oxide
#

post the error again

#

read BT log

rapid meadow
eternal oxide
#

We can if you ANSWER our questions

blazing ocean
#

except that somebody did reply

#

kek

rapid meadow
#

ye and didnt help

#

oh wow

#

bt just crashed

#

can't copy anything

#

Xd

eternal oxide
#

ok good luck with that then

rapid meadow
#

can't even close bt

blazing ocean
#

task manager

rapid meadow
#

ik but it is such a small program Idk if I can find it

eternal oxide
#

Now we know you are trolling

rapid meadow
#

wtf

blazing ocean
#

in germany we say unfรคhig

rapid meadow
#

In poland I say Nie dziala

#

Im gonna record obs

#

you'll see

eternal oxide
#

in 9 minutes you have not answered a single question I have asked

rapid meadow
rapid meadow
eternal oxide
#

I was nto here when you posted ANY log.

rapid meadow
eternal oxide
#

I asked you to post it qgain, and you just kept repeating you had posted it already

rapid meadow
#

just click it pls

chrome beacon
#

That's not the entire log

#

Just a tiny snippet of it

blazing ocean
#

?paste it

undone axleBOT
chrome beacon
#

Which itself tells you to send the entire log

rapid meadow
chrome beacon
#

Why do you have the remapped flag

#

That's for 1.17 and above

eternal oxide
#

Yeah can;t remapped on 1.8.8

#

also, does BT exe even support 1.8 java ?

chrome beacon
#

No idea

#

But they seem to have bt running ๐Ÿคทโ€โ™‚๏ธ

rapid meadow
#

lets seeeeee

#

How else do you make server 1.8-1.20 if not on version 1.8

eternal oxide
#

1.8 is so old now less and less tools are supporting it

chrome beacon
#

They were talking about the exe

blazing ocean
rapid meadow
#

THERE'S PROGRESS

blazing ocean
#

but just use 1.20+ ffs

shadow night
rapid meadow
#

NOW DIFFERENT ERROR

chrome beacon
#

Send the new log

rapid meadow
#

copy log

#

copy copy log is weird

#

it doesnt copy all the way down

#

oh wait

#

its the same error

#

with differemt

#

a lil different ending

quiet ice
#

For a moment I wanted to recommend paperweight, but that's not 1.8

blazing ocean
#

paperweight my beloved

rapid meadow
#

is it really so hard to make a working app

#

๐Ÿ’€

shadow night
#

Btw guys do you mind if I make some gradle plugin that will be basically the loom of spigot

chrome beacon
quiet ice
#

Well first and foremost it's a maven error

chrome beacon
#

Use the BuildTools jar and command line instead

quiet ice
#

Keep in mind this is trying to compile something that is almost a decade old, it's quite possible that something broke over the years

chrome beacon
quiet ice
#

Loom of spigot? Good luck.

shadow night
#

And any mappings

shadow night
river oracle
#

Kekw

slender elbow
shadow night
river oracle
slender elbow
#

in theory you could make a paper fork that reverts all of paper's patches, then publish a dev bundle of that fork that can be consumed by userdev

river oracle
shadow night
#

I sometimes regret doing that

blazing ocean
shadow night
#

Like 2 times a day

river oracle
#

Yarn is just objectively worse than mojmaps

slender elbow
#

yarn ๐Ÿ’€

shadow night
shadow night
# slender elbow yarn ๐Ÿ’€

That's the only complete user-created mapping set that is also ported down to 1.8 for whatever reason (not by the official yarn people but it does exist)

rapid meadow
slender elbow
#

"complete"

#

lmao

rapid meadow
#

now I see why everybody are hating on java

#

its trash af

shadow night
quiet ice
#

What java is the greatest thing ever

slender elbow
#

yarn is far from complete

blazing ocean
quiet ice
#

Well as long as it's JVM

#

Maven Artifact Resolver my beloved โค๏ธ

blazing ocean
#

then kotlin

rapid meadow
shadow night
#

Java is a great language

#

I only see some weird people hating on it

rapid meadow
#

Rust โค๏ธ

quiet ice
#

I might have a bit /too/ much experience with java buildsystems

shadow night
blazing ocean
rapid meadow
#

TS โค๏ธ
Dart โค๏ธ
Java ๐Ÿคฎ

shadow night
#

Wait not full ss

#

Sec

blazing ocean
river oracle
shadow night
#

Yep

tardy delta
#

ts is a linter

shadow night
#

Some people are just either weird or complete idiots

quiet ice
rapid meadow
#

nah build tools are different

#

dont work at all

blazing ocean
#

how is that related

#

kek

#

o wait this isn't general

rapid meadow
#

..

#

I am trying to install the damn nms since like half an hour

shadow night
#

Spigot buildtools are kinda crap, yes

rapid meadow
#

still same erorr

#

cant run anything

#

wdasdjsiadhjas

shadow night
shadow night
#

Or a skill issue

blazing ocean
eternal oxide
#

use teh buildtools jar. I've never had an issue with it

shadow night
rapid meadow
#

doest he paperSpigot has nms inside it

shadow night
shadow night
blazing ocean
eternal oxide
#

it could be spaghetti for all I care. It works.

rapid meadow
#

bro

river oracle
#

Stop complaining give us a stacktrace

shadow night
#

Maybe even way faster

rapid meadow
eternal oxide
river oracle
#

I don't see it

blazing ocean
rapid meadow
shadow night
blazing ocean
quiet ice
rapid meadow
eternal oxide
rapid meadow
quiet ice
#

[ERROR] The project org.spigotmc:spigot-parent:dev-SNAPSHOT (C:\Users\Codin\byldtools\Spigot\pom.xml) has 1 error
[ERROR] Child module C:\Users\Codin\byldtools\Spigot\Spigot-Server of C:\Users\Codin\byldtools\Spigot\pom.xml does not exist

It's a rather arcane issue, I don't know if anyone can really fix that. I guess one could try nuking the directory and rerunning buildtools, hoping for a fluke?

eternal oxide
#
Place in C:\BT.
in BT folder (at command line) java -jar BuildTools.jar -- rev 1.8.```
river oracle
#

1.8.8 doesn't build anymore

rapid meadow
#

errorrororor

river oracle
#

You need to run for 1.20 first.

#

Then 1.8.8 should compile

rapid meadow
#

whot

blazing ocean
#

just use 1.20.6

river oracle
blazing ocean
#

based

river oracle
#

So if their is an issue it'd ignored

blazing ocean
#

so based

river oracle
#

You might maybe get support for 1.12.2 with BT if you're lucky

eternal oxide
#

oh yeah missing dependency if you have never ran BT for any version

rapid meadow
#

I've got like 10 gb less because of the build tools now

#

I got in every single folder tbh

eternal oxide
blazing ocean
#

just type like taht atp

slender elbow
#

๐Ÿฟ

rapid meadow
#

visual studio cpp development is mroe lightweight than bt at this moment for me

chrome beacon
#

You don't need to keep all the bt folders

#

You can delete the folders of the other runs

rapid meadow
#

ikik ill delete all of them later

shadow night
#

I can make final spigot jars myself manually haha

#

I know the process quite a bit

blazing ocean
#

make it in rust then fr

#

it would prob be a lot faster

rapid meadow
#

Ill make it in asm

river oracle
rapid meadow
#

wait whats the shortcut for assembly?

#

ass?

river oracle
#

Asm

rapid meadow
#

uh oh

shadow night
sterile flicker
#

why doesn't GenericAttributes.FLYING_SPEED change the dragon's speed?

river oracle
quiet ice
#

asm in java world is short for Objectweb/OW2 ASM, so that's a gotcha you should be aware of

river oracle
#

Using rust will make little to no impact on the overall build speed

blazing ocean
#

rewrite it in rust and use vineflower kekw

shadow night
rapid meadow
#

ill make it in python

#

its gotta be faster

shadow night
#

that will make it slower than ever

rapid meadow
#

wdym

#

python is like lightning fast

shadow night
#

๐Ÿ’€๐Ÿ’€

coarse linden
shadow night
#

The only way to truly make it faster is to rewrite everything in rust which is hard

#

But theoretically possible

river oracle
#

Rust isn't the only systems language

blazing ocean
#

then it's โœจ blazingly fast โœจ

chrome beacon
blazing ocean
rapid meadow
#

Lua is the fastest

turbid flame
#

What was the name of the site where you could look up NMS method names

rapid meadow
#

finally built the 1.8.8 yooooooooooooooooooooooooooooooooooooooooooo

blazing ocean
#

?mappings

undone axleBOT
rapid meadow
#

tysm so much

#

I really love you guys

coarse linden
#

i hate you

rapid meadow
#

No problem at all

turbid flame
#

Thx

rapid meadow
shadow night
#

Okay, so, we will:

  1. Write or own java buildtool that is faster and better than maven and gradle
  2. Write our own java decompiler which will use multithreading and be faster than any alternatives
  3. Write our own patcher so we can use all the CPU cores to patch nms
  4. Write our own spigot buildtools
    And that all in rust
    Who agrees?
coarse linden
#

kinda regret joining this now

blazing ocean
#

yes yes yes and yes

coarse linden
#

cringe

river oracle
blazing ocean
#

just use javac bro

coarse linden
shadow night
river oracle
# coarse linden hopefully

It really is trust me. I mean normally the people in help dev aren't the brightest for obvious reasons

chrome beacon
rapid meadow
blazing ocean
#

miles you're not the brightest

river oracle
blazing ocean
#

orbitmc isn't even out yet smh my head

shadow night
blazing ocean
#

skull

quiet ice
# shadow night Okay, so, we will: 1. Write or own java buildtool that is faster and better than...

Write or own java buildtool that is faster and better than maven and gradle
I have my own experience with writing buildsystems in java - it's more or less something you should really keep clear of unless you want to do it 100% in order to understand how gradle works. But at that point you might as well invest your effort towards understanding gradle traditionally (i.e. writing gradle plugins)

Write our own java decompiler which will use multithreading and be faster than any alternatives
Ever heard of vineflower?

rapid meadow
#

nah after that hour session with buildtools I am too tired to even open java, am going back to my safest programming language in the world

#

C

shadow night
#

It is shit but well yeah

quiet ice
#

But have you written four gradle plugins?

blazing ocean
#

vineflower is great

shadow night
quiet ice
#

Hell, even Fabriflower or Forgeflower have multithreading enabled

shadow night
#

Btw since you are so good at gradle plugins, how can I modify the source in some way before compiling? So I can add some own syntax stuff that will be translated to traditional java before compilation

quiet ice
#

I think paper has their own FF fork? Although they might have completed the move towards vineflower since

quiet ice
shadow night
quiet ice
#

If you don't want to modify the src/main/java sourceset, you'll probably register a Copy task and alter the main sourceset to use your copied sourceset

#

However, I think that's what APs are for, no?

shadow night
#

Annotation processors?

quiet ice
#

Ye

shadow night
#

I thought plugins can do the same and even more

slender elbow
#

gradle plugins or javac plugins?

shadow night
#

gradle plugins

#

wait, javac plugins?

slender elbow
#

i mean, they are different tools

quiet ice
#

Gradle plugins can do more, yes - but they aren't always the best at what they do

slender elbow
#

gradle plugins can't "do more" than an AP, they just tackle different problems at different stages

quiet ice
#

E.g. you'll probably have lombok be an AP and not write it as a gradle plugin - even though you absolutely could.
Same goes for Mixins

slender elbow
#

you don't exactly have access to the AST from a gradle plugin

shadow night
#

interesting

#

I actually have never heard of javac plugins

quiet ice
#

I made no assertions about the efficiency of the solutions :p

shadow night
#

I should write one sometime later

quiet ice
slender elbow
#

APs are a subset of plugins kinda

quiet ice
#

But while APs are supported API, plugins aren't really due to the whole integrity-by-default charade.

slender elbow
#

?

#

APs are part of the java se, plugins aren't, they are jdk api, but not se

somber pulsar
#

can anyone recommend a good GUI api they use?

chrome beacon
#

?gui

chrome beacon
#

IF and Triumph are two options

#

There are quite a few libraries for GUIs

somber pulsar
#

alr thanks

subtle folio
blazing ocean
ivory sleet
#

Yea why not

blazing ocean
#

spigot doesn't have great support for components and adventure though

#

you might be better off using paper there (i'm getting murdered gg)

subtle folio
#

hmph, im working with spigot rn as the plugin

tardy delta
#

im like a richard stallman who favors strings over components

subtle folio
#

not sure I want to use paper yet, some things are too, iffy

keen charm
#

Hey

#

What does Bukkit#getServer()#getVersion() and Bukkit#getServer()#getBukkitVersion() return?

keen charm
#

Not really informative

tardy delta
#

mc version and bukkit version

subtle folio
#

What more do you need?

keen charm
#

I was looking for like an example return value

subtle folio
#

why not call it and see?

keen charm
#

It might return 1.21 or v_1_21

blazing ocean
#

?tas ig

undone axleBOT
olive compass
#

I am trying to change the enchantment cost of an item inside of a PrepareAnvilEvent EventHandler, but event.getInventory().setRepairCost(1) does not display the typical green โ€œEnchantment Cost:โ€ text. I checked my code and this part is reachable, so i dont understand why it is not displayedโ€ฆ

subtle folio
#

can I jsut cast or am I missing something, trying to use adventure here

#

oops nvm i need a serializier

ivory sleet
#

Isnโ€™t there like bukkit platform or something u can use

blazing ocean
#

yes

#
subtle folio
#

yippee

faint tide
#

hi, I think i am stupid. I do have some java knowledge but I think I am lacking of vector knowledge.

I want to spawn an item display in front of the player (whichever direction the player is looking). And from my research online I know to use the player.getEyeLocation().getDirection() method.
But i do have an issue with this method. this method follows the eyes, if the player looks upward, then it'll spawn in the sky, if it looks downward, then it'll spawn underneath the ground. I want the entity to spawn in front of the player at around eye height.

can anyone tell me what I am missing?

pseudo hazel
#

ignore the y

#

create a new vector with just the x and z components

#

and then normalize it

#

and put the y at eye level when you spawn it i guess

faint tide
#

right, how do you mean "ignore the y"? because you do need all the coords to initiate a location

pseudo hazel
#

set the y to your desired height

#

and normalize what you have left

#

like you have a direction

#

make a new vector that is that direction but y at 0

#

then normalize it to fix the length

#

abd then use that as your final direction

#

might break if you look straight up so I guess you have to check if the x and z arent both exactly 0

faint tide
#

right, so either this will do it, or I really don't know shit:
Vector vec = player.getEyeLocation().getDirection().setY(0);
Location loc = vec.toLocation(player.getWorld()).add(0, player.getLocation().getY() + 1.5, 0);

eternal oxide
pseudo hazel
#

you have to probably add the player position

eternal oxide
#

ah ok I read back

faint tide
#

I want to summon an item display in front of a player after a certain challenge had been hit, the challenge is fine, but i cant get the item display to spawn in front of the player without it following the eye direction (height wise

pseudo hazel
#

and normalize it like I said

faint tide
#

what do you mean with normalize?

pseudo hazel
#

.normalize

eternal oxide
#

Vector#normalize()

pseudo hazel
#

it will fix the length of the vector

olive compass
eternal oxide
#

use teh eye location not the player location and its simpler

#

entity.getEyeLocation().add(entity.getEyeLocation().getDirection().setY(0).normalize())

faint tide
#

Alright, that... worked... I don't fully understand why that works. but I will do some more research on vectors because clearly my knowledge is too short. Thanks for the help both of you! appreciate it

small valve
#

What are some things that are safe to exclude from the final jar when im using bungeecord?

eternal oxide
#

all of Bungee

small valve
eternal oxide
#

include anything YOU added as a dependency

small valve
#

i see

grim hound
#

yo

blazing ocean
tribal sky
#

hey so my freind sent me a .txt file containing the plugin

#

how do i turn it into a working .jar plugin file

tribal sky
#

?

eternal oxide
#

lol

shadow night
#

a txt file???

tribal sky
#

well listen

#

im as confused as you

eternal oxide
#

was it REALLY a txt file? or did he just rename it?

tribal sky
#

maybe renamed

#

not quite sure

hazy parrot
#

open it

shadow night
#

I sure hope he just dropped the code into chat and it sent as txt

tribal sky
#

yeah prob renames

hazy parrot
#

see if its code or just some random chars

eternal oxide
#

some places won;t let you send/host jar files

tribal sky
hazy parrot
#

so he didn't just rename it

tribal sky
#

case "giveproteinshake":
giveProteinShake(player);
break;
case "givebowofrhythm":
giveBowOfRhythm(player);
break;
case "givepresidentcrown":
givePresidentCrown(player);
break;
case "givedragonsoulsword":
giveDragonSoulSword(player);
break;
case "givewealthgem":
giveWealthGem(player);
break;

#

like this

#

but a lot more

river oracle
#

Oh no

eternal oxide
#

a single file/

hazy parrot
#

yeah u have to compile it

tribal sky
tribal sky
river oracle
#

The classic my friend coded this with the worlds most atrocious code

shadow night
#

yeah that thing is probably an absolute mess

tribal sky
#

e

tribal sky
#

no one is willing to do free plugins

eternal oxide
#

generally no

#

it takes time

shadow night
#

well, I sometimes do free plugins

#

but I would definitely prefer to get some pay

#

for doing my job

tribal sky
#

i cant pay u even if i wanted to

shadow night
#

oof

tribal sky
#

country finanical problem

#

they blocked paypal

#

cashapp

#

venmo

#

everything

shadow night
#

Send me cash per postal service

tribal sky
#

thats beside the fact that 1 usd is 50 egp

tribal sky
shadow night
tribal sky
#

oh

#

dawg

#

anyways

#

so how do i complie it

eternal oxide
#

you can do it with Java

tribal sky
#

okay

shadow night
#

I think some people here would compile it for you if you asked them

tribal sky
#

does vs code work

eternal oxide
#

but its much easier if you have a pom.xml to go with that txt

tribal sky
river oracle
#

That's hillarious

shadow night
eternal oxide
#

did they just send you ONE file? or many?

tribal sky
#

one

#

file

river oracle
#

After seeing that code you couldn't pay me to steal that plugin

tribal sky
#

singular

shadow night
tribal sky
#

bro stop hating on him plz

#

he did his best

shadow night
#

I'm not, it's just that

hazy parrot
#

I'm assuring u that code is not good enough for anyone to steal it

shadow night
#

Nobody here who can compile something would steal that, and nobody needs your plugin anyways

tribal sky
#

well is anyone gonna compile it for me?

eternal oxide
#

yeah no one is going to steal

river oracle
eternal oxide
#

?pase the file and someone might

tribal sky
#

cant send files

river oracle
#

I can't rn but I'm sure someone would if you gave them the code

eternal oxide
#

?paste

undone axleBOT
tribal sky
#

do i just send the text there

river oracle
#

?paste

undone axleBOT
shadow night
river oracle
#

Use paste

tribal sky
shadow night
#

Is that... ChatGPT code?...

delicate lynx
#

why are people using command events for commands...

tribal sky
eternal oxide
#

yeah it is

delicate lynx
#

wait no that won't do anything will it

eternal oxide
#

'll continue the Main.java` file, adding the event handling for right-click interactions and implementing some of the abilities described. Given the complexity and the need to handle multiple custom items, the code will be structured to manage cooldowns, effects, and item-specific actions.

Continuing Main.java

`

tribal sky
#

bro...

eternal oxide
#

its ChatGPT

shadow night
#

I could try compiling that,

eternal oxide
#

the code you posted will not compile as it stands

shadow night
#

but it's scary

river oracle
#

Your friend can't code

#

He can use chatgpt tho

#

Bad news is chatgpt can't code

tribal sky
#

i mean i can use it

shadow night
#

I actually wanna try compiling this now

delicate lynx
#

use variables challenge (impossible)

shadow night
#

Gimme a minute

tribal sky
#

im actually sad now

#

i waited a month for it

river oracle
#

Wtf

tribal sky
#

yeah..

river oracle
#

Dude who is your friend

tribal sky
#

my smp starts in around a week dude

#

im so screwed

river oracle
#

Do they actually care about you?

tribal sky
#

i thought they did

#

thought

river oracle
#

Clearly they do not

#

I hope that didn't cost money

tribal sky
#

yeah im so sad now

#

what am i gonna do

#

i starts in like a week

river oracle
#

Idk man find a good dev and pay them

shadow night
river oracle
#

Or learn to code yourself

tribal sky
#

i cant pay anyone man

tribal sky
shadow night
#

They already said they can't pay because everything is blocked in their country

tribal sky
#

im screwed

river oracle
eternal oxide
#

what spigot version is your server going be?

tribal sky
#

1.20

#

was gonna be though

eternal oxide
#

much of that code is rubbish but useable

river oracle
#

There are plenty of free lifesteal plugins

#

If that's what this is

tribal sky
#

no its not

river oracle
#

Holy shit chatgpt use pdc

#

No way

#

You barely ever see that

tribal sky
#

man i actually want to cry rn

river oracle
#

Pick better friends

#

We all learn lessons

tribal sky
#

lessons?

#

bro

#

this is not my first

#

they all betrayed me

#

all

river oracle
#

Every betrayal is a lesson

tribal sky
#

yeah?

#

well

#

my pain is only gonna hurt me

#

but the members of the smp

#

who put effort

#

to make an application to join

#

those who waited

shadow night
#

Yeah I don't think that is compilable from a phone

tribal sky
#

what am i gonna tell them

delicate lynx
#

maybe should not announce it opening before the core function of the server is done

river oracle
#

The continued complaining seems like it's a social engineering attack lol

shadow night
#

It does

tribal sky
#

well

#

can anyone tell me how to compile it

river oracle
#

It's invalid code

slender elbow
#

help I'm opening my server in 15 minutes and I have 200 players waiting, how do I make a server?

#

@river oracle I will give you op if you help me

#

you seem smart

tribal sky
#

i can help i guess

#

but server hosting needs money

#

or you can host it off your own pc

river oracle
#

Luckily some idiots do free labor

#

?services

undone axleBOT
slender elbow
remote swallow
tribal sky
shadow night
tribal sky
#

not in 7 days.........

shadow night
#

why not?

river oracle
#

Kekw you're on your own then

shadow night
#

You could just start and dm me every time you don't understand something

remote swallow
#

smh

#

raydan isnt an avid help dev helper

shadow night
#

I'm not a big fan of spoonfeeding or helping people who don't understand basic java but I think this is funny

shadow night
tribal sky
#

funny?

shadow night
#

I started respecting people who don't know java

tribal sky
#

bro you actually dont know how much effort i put into this

tardy delta
#

whats this conversation about?

delicate lynx
#

by promising a server launch without the actual server

#

gl

tribal sky
#

well

#

there it all goes

remote swallow
#

i love when games or servers give a date for the update but havent even got started or half way through making it

tribal sky
#

i announced it

#

now im getting hate dms

delicate lynx
#

that fast? damn people must be watching the server

tribal sky
#

mhm

#

theyv been waiting a lot

shadow night
tribal sky
#

excited

tribal sky
#

this needed textures too

#

animated texture packs

#

needed to make them

#

animate them

#

i dont wanna talk about it anymore

shadow night
#

If you did that inbefore, why did you not get the plugin then?

nova notch
#

bro just say it's delayed

tribal sky
nova notch
#

ok then ignore the haters

tribal sky
tribal sky
#

they are all tired of waiting

tardy delta
#

get faster/ stop caring about people

shadow night
#

ยฏ_(ใƒ„)_/ยฏ

tribal sky
shadow night
#

Yeah caring about people is a bad trait in this world

tribal sky
#

it doesnt cost money to join the smp

#

its free

#

to join and have fun

nova notch
#

then they have nothing to complain about

shadow night
#

that is true

tribal sky
#

i cant stand it though

nova notch
#

so stop dwelling on it and do something about it

#

it's a very simple plugin so learn a bit in the next week or hire someone

eternal oxide
tribal sky
eternal oxide
#

likely it will not as there are no commands added to the plugin.yml

river oracle
#

Elgarl being a nice guy

tribal sky
#

thanks for trying

eternal oxide
#

1.20

tribal sky
#

appreatiacte it

shadow night
eternal oxide
#

you will need to update the plugin.yml to add teh commands

nova notch
tribal sky
#

its impossible

#

too hard

#

i know coding

#

i learned coding

nova notch
#

Then you've already given up?

tardy delta
tribal sky
#

it doesnt matter

tardy delta
#

anyways, does anyone know if the file structure of a .jmod file is documented?

#

theres a tool to extract those files but i cannot find any info about the actual structure

tribal sky
#

thanks for trying

eternal oxide
#

console error?

#

ah I probbaly set the main path wrong, sec

#

yep main is wrong

shadow night
#

Lmao

tribal sky
#

still