#help-development
1 messages Β· Page 1082 of 1
Though I'm not entirely sure if one should trust my advice here considering that I never worked with a DB outside of school lol
because spigot doesn't support components for shit
you're gonna have to use nms i think
or paper
oh boy
It's for work and they run spigot so may be cooked here
nms is the only option then
you can use bungee components
or you can convert some parts of a mm component to spigot
with legacy serializer
wait your text display ISN'T supposed to show TextComponentImpl{color=null,...}
last time i checked text displays still don't support em
well yea
so legacy serializer
So if their using spigot this is done through nms... dear lord sounds lovely
toolbox not free?
i doubt they're using spigot
bruuhh
i getting 451 error
π
maybe bc i live in russian
Yeah that is cuz u are from russia
use a vpn
hmm
Is it possible to transmit the lincision inteliji over the internet?
this ligal?
the what
just use some shitty free vpn π
*licensed inteliji
.
"not free inteliji"
From where to where do you transmit what exactly?
borrow from friend
Just use community edition
i want try full inteliji
i live in russian bro
Use a VPN or smth
i gess this not will be so easly
Arent VPNs illegal in russia?
They've done a lot to stop them from being available
Not sure about the laws themselves
How to get this axis of rotation of minecart by location?
you know its funny because before war, like half of the jetbrains team was located in moscow or saint peterburg
well then
18 hours crunch session today
just finished
I'd keep going but then how am I going to go to the gym
A Chad like you always finds a way to hit the gym
wee
@floral drum rad said since components arenβt handled for shit in spigot, Iβd have to use nms to replicate this sort of color parsing, my goal is to support hex / gradient / and just # color code formatted texts. End goal: display these parsed texts in a text display
as ebic said: legacy serialiser
Yeah yeah rad I saw
Yes
adventure bukkit yea
I gotta get a reup on my nms knowledge though
you can check the rail its on
First on the list is to remember to run remapped when building my jar D:
wat the fuq
LMFAO
why is spawn underlined like its erroring out?
skill issue
I'm literally doing this too and its fine
yeah just ignore my spawn method thing
but yeah just use LegacyComponentSerializer with a custom builder
and it works for hex colors
Is it only hex? or can i support gradients this way too?
just shade/shadow the minimessage and platforms in and it should work
gradients is just each letter has a different hex color
ah
works for all tags
TextDisplays is what in past used to be represented / created by armor stands display name?
oh nice, thats better to see how the api is improving version by version
yw ig π€£
do you know any decent tutorial for .1.8 armor stands?
1.8 π
I was trying to use the chatBaseComponent kek
i known, all tells the same haha
honestly took me like 1-2 minutes searching through the dependencies, and I just looked at the builder and typed "hex" to see if it would pop up, used the "hexColors()", didn't work until I used "useUnusualXRepeatedCharacterHexFormat()"
tips to build a gradle project more fast?
have a good pc
Yeah I saw that and wondered how they came of the name kek
bro leave the chat pls
you dont help nothing
just say shit
Hello, I don't understand why, when I decide to spawn a block at the location where it was broken, it doesn't work, whereas it works above and below."
If you need any further adjustments or have more text to translate, feel free to let me know!
@EventHandler
public void onBlockBreak(BlockBreakEvent event) {
Location locBloc = event.getBlock().getLocation();
World w = event.getBlock().getWorld();
w.getBlockAt(locBloc).setType(Material.STONE);
}
2min and is compilling yet
What all do I need?
<dependency>
<groupId>net.kyori</groupId>
<artifactId>adventure-api</artifactId>
<version>4.17.0</version>
</dependency>
<dependency>
<groupId>net.kyori</groupId>
<artifactId>adventure-text-minimessage</artifactId>
<version>4.17.0</version>
</dependency>```
Is this it?
Is there a website where I can listen to any minecraft sound by clicking on it. To find what I need. Or any other convenient way to go through many sounds?
sounds like a you issze
you just did
?ask
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!
?ask
idk what is
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!
how to fix the file in the editor is not runnable intellij
wha
what? can you explain whats happening. thanks
when i try to click the "run button" it says the file in the editor is not runnable
you need to start a server
Hm... is there any get to check is minecart on rails?
do you have the Minecart object
whats the better performanc? win 10 ou 11
for what
for what
for why
programming only
linux
linux
question doesnt make sense
pc not is mine
install arch!!1!111!!eleven
if not, i installed the 11 arleady xd
this is vague and unactionable
why even ask then
windows FS is just terrible for programming related task (which mostly involves moving/writing a lot of files)
you mean compiling or wut
just use arch (btw)
then at the end of the year, start writing your own kernel
Download high-quality audio here: https://fasterthanli.me/blog/2019/program-in-c/
Lyrics by @Cinememer: https://twitter.com/Cinememer/status/937826627815333888
indeed
just use rust bro :copium:
listen to the 1h version and put it on repeat
Is there a spigot equivalent of LegacyComponentSerializer?
archlinux is good?
i can change to 11 or 10
yes
linux no
for you? no
but i ll change to windows after
Hey guys, which version of the java JDK should I install to develop spigot plugins?
??
no
i use linux brother
what
a modern LTS version
you just said you don't π
just install 21 and youre good
Hell no
use 21
discard any trace of java 8
java 8 is old
get out
21 is lts
π
I am trying to revive my plugin but I've forgotten how all of this works
use lts
gtfo gongas
So JD 21 it is?
yes
yup
lts my ass
and isnt 22 still in preview?
22 more recent
nop
22 has windows issues
do you know what lts means
rad do you know by chance?
I hope much hasn't changed in spigot the last year
there's not i think
I'm afraid of having to rewrite too much code x.x
but even if it is in preview, do a benchmark and see the performance improvement. Java, as a very large company, would not leave such a big flaw
just use adventures
it works on spigot you have to shade it
ah yes, java, the company
java is not a company.
arch linux have better performance that w 10?
i love java the company
java is a programming language
yes π
i bet you think Sun is a star
just install arch bro
oracle same thing brother
easy as shit
that should be it
no it is not
arch linux have better performance that w 10?
can libraries it
performance of what
ye
programming, work
brother
thats vague as hell
you have been answered three times
linux
shut up
since you have already made like 10k from mc
ARCH LINUX HAVE BETTER PERFORMANCE OR NO
the distros in general don't give each other much
ARCH LINUX HAVE BETTER PERFORMANCE OR NO THAT WIN 10
stop yelling
SHUT THE FUCK UP π£οΈ
:(
WOW MAYBE I'LL START YELLING NOW
yeah lynx stop yelling
mb brother
#help-server FOR YOU
rad youre not a dev
didn't know
dev privileges revoked
Lol I just joined here and this chat is going crazy.. in a bad way.
@blazing ocean UR NOT DEV?!?!
:(
ARCH LINUX HAVE BETTER PERFORMANCE THAT W10?
please return your jetbrains commercial key
MB BRO
MB FOR RELEASING PACKED
this chat is wild
Yeah this happens sometimes when certain people start talking. Open a thread if you need help
especially with this gongas kid
certain people π
Is Intellij no longer free? π
kek is this gongas that was here ages ago
community edition always is
yes
lmfao
Lmao I am sleepy, I downloaded the wrong thing x.x
i don't π
its okay
i'm rich like dat (i use the student license)
Yeah you need to scroll down. Dw you're not the first to miss it
I hope you're not selling anything you made with that
I am connected to my server/dev PC so my window is not full size haha
no(t yet)
Made it too easy to miss
What are the reasons of a Map being null? I already checked that the map is initialized and gives npe when calling Map#set()
Sounds like it isn't initialized
mb brother
Or you set it to null
seems extrange, would you want to check it?
sorry i did that
?paste
I sent a cosmic ray to your PC and made it null
the problem is that i have many files, they all linked
Ugh you eating ram again
just send your entire project zip (this is a joke please don't)
(i have seen somebody do that)
oh dont joke i was doing that hahaha
Put it on github or smth
right np, i will just do it
im uploading it to git, internet is bad today
Take your time
there you go
im thinking that whats causing the issue may be 3 posibiltiies, inheratation between the classes, the DataMap class or even the Yaml#loadAs
okay, definitly find the cause, it was the Yaml#loadAs, now need to get in deep why is making the DataMap being null
Anyone knows what Particle.EXPLOSION_HUGE/Particle.REDSTONE got renamed to (last spiggot version I ran was 1.19)? Same for Enchantment.ARROW_FIRE, ARROW_DAMAGE, ARROW_KNOCKBACK? And PotioneffectType.SLOW?
you got it working now? @worthy yarrow
if you wanna look through the diff
Tyvm
About the enchantments and potion effect, anything majorly redesigned API wise here? @eternal night
For some unholy reason theres a mismatch of java versions when compiling, though it's saying j21 and I am literally using j21 I cannot figure this out
Could you show the error?
Hate to ask so much for help but this would be a time saver if I can just fix those broken enum "links" π
not really
I mean, they were renamed too, if that is what you mean
Yeah
It happens when shading adventure components @floral drum
See the commit I linked
it has all the renames
on the left just find enchantment
Thanks! One step closer
Update the Shade plugin
The version you're using probably doesn't support Java 21
I thought I was using the most recent of adventure, 4.17.0
@eternal night thanks lynx! All issues hopefully resolved now! Makes me so happy that I don't have to rewrite 5k lines of code but rather just edit 6 enum types ;D
There's no other documentation that differs from 4.17.0 being the latest so maybe I'm out of luck?
ah
lol
my event have issues (no console errors)
when i shoot a player with an arrow it apply an effect to the victim, but when i start to shooting more fastest it isnt working, it just apply in some arrows:
https://paste.md-5.net/qiyilimubu.cs
@eternal night Thanks to you my project and plugin is now revived! Thanks again!
Oh I was gonna send a screenshot but not allowed x.x
my event have issues (no console errors)
when i shoot a player with an arrow it apply an effect to the victim, but when i start to shooting more fastest it isnt working, it just apply in some arrows:
https://paste.md-5.net/qiyilimubu.cs
?img
Can't send images? That's because you're not verified! Use !verify to complete verification.
Alternatively, you can upload screenshots to any image hosting site and share the link.
Here's some screenshot utilities that you can use to upload images.
Lightshot: https://prnt.sc
Imgur: https://imgur.com/upload
Flameshot: https://flameshot.org
Am I shading this wrong or something...?
pom: https://paste.md-5.net/uvavovazex.xml
verified that it shaded correctly: https://paste.md-5.net/gololusecu.nginx
the error: https://paste.md-5.net/pajebuwade.cs
Yeah I guess I just have to shade all of adventure
libraries feature
Should help remove unused classes
This is also an option
Yeah I don't like the 600kb jar it compiled kek
Use the libraries feature
thats nothing most of the time
Unless you want to support versions older than 1.17
have to be careful with this, as sometimes it will break some libs
IE, if reflection is used for example it can't really detect that the class is in fact being used
^^
Thankfully this project doesn't require reflection
so...you should test to ensure your jar works after compiling if you are removing "unused" classes lol
I believe Adventure is fine in this case
that isn't what I meant, if the library uses reflection and that is just one example how classes needed end up getting removed
Oh right gotcha
just saying, make sure to test your jar works afterwards is all just in case lol
Well I'm not sure if I wanna configure the shading anymore then, if it works it works at this point been taking too long
How do you get the string part of a Component?
@runic pine
Cam u help me
e.g. how do i get "fart" from Component fartText = Component.text("fart").color(NamedTextColor.RED);
On dm
no
Why
TextComponent#content
ty
salutations
you should never need the contents of a component you make
π
an error
why are you even on arch dude
Yes
if you don't know your way around a PC you shouldn't be on arch
some people said "arch is good for performance" and bro just deleted windows
Unnable to satisfy all contraints on the partitiob
Don't use arch my guy... it's very rare that you actually need what it provides compared to other OS
I need performance bro
if you need cutting edge use fedora
its just as good as arch
@runic pine As an exp. dev - I am yet to see it used professionally even once.
i have a method to create a class which takes a Component and a Material. i need each of the classes created to have a unique text identifier, which I would like to be the text part of the component
i use it and love it (i actually somewhat know what i'm doing)
you shouldn't have a text identifier
rather some other key
you can use NamespacedKey or make your own keyed system but Components are for displaying text
i used arch and had no idea
but it worked
wha-
manjaro com carried
this method doesn't exist for Component, should I cast it to TextComponent, or can you elaborate?
you can cast it if you're sure it's only text
is an edge case trying to measure width of a component?? i certainly don't think so
kekw
Status "create" on partition format the partition on ext4 for example right?
whatttt
this ain't arch linux support blud\
@river oracle what i would like is to allow ppl to make the name of this item be whatever they want, usually it will just be a string, but I have an overloaded creation method with Component so that they can also use the component system to do it and therefore make it bold italicized etc. however they want
yeah so like why not use pdc to identify the item π
Thank for incredible help
hes right
we're not arch support
no its not
they could be but in the case of item names they are not
what if the user defined to items named "Ball" and each of them has different data associated with it
you now have clashing ids, but I as a user really want both display names to be Ball
the first ball would be replaced by the next when they add them to the hashmap...
like
it's not a big problem to me
you can do that by forcing them to define a id key
the proper way to do things is force use of an identifier and stop pretending that Components are a good ID system
Hello, for those who want to solve my problem:
check if Component is instanceof Textcomponent, then cast to TextComponent and get text for your unique identifier, otherwise print error message that no text given and just assign it a junk identifier
TODO CHECK π¨
how many TODO comments do you have on your current project
gay flag gay flag
how do i make a text display follow the player and face the player (ping-unaffected)
title?
i assume you want something more haha
Hard to do that without latency based.
riding + translation transforms
set as a passenger with a translation
- more math
update its transformation
mhm mhm very gay arch
also i got this, but it's facting the opposite direction
i want it to look at my face
rotate it 180 around Y
i'm working with yaw and pitch
hey! my plugin is throwing a classnotfound error: https://paste.md-5.net/egufagocuc.rb
main class: https://paste.md-5.net/wesubocilu.java
Decompile your plugin and see if licensegate is in there
Jenkins
And yes1.21 isnt stable
it isn't, but why?
Add it to your artifact set in shade
Are the other 2 being shaded?
like so?
<configuration>
<artifactSet>
<includes>
<include>dev.dejvokep:boosted-yaml</include>
<include>dev.respark.licensegate</include>
</includes>
</artifactSet>
</configuration>
wow that formatting is screwed
Yeah like that
alr
Artifact set is an optional config btw
If you leave it empty it will include all non provided
alright, so i can just remove it?
Yup
I'm not sure, but I think that I did something wrong
[23:10:17 ERROR]: [DMinecraftCollector] Your license for DMinecraftCollector is NOT valid.
D:
If youβre using newer versions just use lib loading
lgtm pushed to prod
the plugin is shouting at me D:
what's the point in doing that when only 2 of the libs i'm using are on maven central :D
Yeah, my bad. It's ready
Small jar footpront
it's now throwing this error
i have 50mb jars : D
Ppl think ur goid coder lel
wtf
Config is null
Why use boosted yaml instead of snakeyaml?
looked easier
but it's changed
Inbuilt YamlConfiguration is super easy
kaml my beloved
this is my main class https://paste.md-5.net/tosogitihu.java
wait 'til you find out kaml still uses snakeyaml
i know it does
what's wrong with it :(
Just use YamlConfiguration
i'd rather not
How to get rails on which a minecart is?
Where is getResource coming from
javaplugin
JavaPlugin
Just making sure lel
soo
public void displayTitle(Player player, Title title) {
World world = player.getWorld();
Location location = player.getEyeLocation().add(0, 0.5, 0);
String titleContents = title.getTagContents();
TextDisplay textDisplay = world.spawn(location.clone(), TextDisplay.class);
textDisplay.setText(SERIALIZER.serialize(MiniMessage.miniMessage().deserialize(titleContents)));
textDisplay.setBillboard(Display.Billboard.CENTER);
textDisplay.setBackgroundColor(Color.fromARGB(0x80333333));
textDisplay.setCustomNameVisible(false);
textDisplay.setPersistent(false);
textDisplay.setSeeThrough(false);
textDisplay.setInvulnerable(true);
player.sendMessage(ChatColor.GREEN + "You have just equipped the " + title.getDisplayName() + " title!");
player.addPassenger(textDisplay);
}```
So is there a way to manipulate the position after you add it as a passenger? offsetting the initial location doesnt work (obviously)
i mean, you are never loading the config if the plugin data folder exists
idk why you're skipping that step lol
oh shit
yeah
translation
alrighty
what about me, i'm having a similar problem
You set a Transofrmation with the Translation of the offset
me?
looks fine to me
seems like vanilla minecart functionality to me tbh
Are there any standard error messages that plugins expect from a Vault economy?
Or do most people just use null and it's whatever
when people integrate with economy provider itβs just a null check
Null when it's successful, I assume?
if you look at the vaultapi read me on gh it will show you how they recommend checking it
No API ever returns null on success.
I don't see why it wouldn't for the errorMessage if there's no error lol
Now the issue is that it's no longer attached to the player, I run a task tick later and teleport the text display to it's initial position with the offset
itβs either working as a provider or it isnβt all the api cares about when hooking into api is if it works or if it doesnβt
no
y'all talking about different things
Teleporting is the wrong thing I assume
Spawn it, set Transformations, set as passenger. never teleport it
yeah gotcha
?paste
Is there a way to slow an individual player down similar to how the /tick command works?
iirc theres a movement speed attribute for the player
declaration: package: org.bukkit.attribute, enum: Attribute
I want to slow down also velocity applied to the player
I have multiples items that apply velocity to a player. With the /tick command that velocity is slowed, whereas if I adjust their movement speed it wont be affected
I wanna simulate time-slow if you know what I mean
we actually already do that
it's not impactful at all
but unfortunately it doesnt give the desired results
Anyone know what setLastDamageCause(EntityDamageEvent event) got changed to as this is depricated in the api but it doesn't say what to use on the javadocs
I need a dev for my server to assist me with some things. You'll be part of the staff team. Dm me for more info and to check out the server
Wrong place for that bud
Im not your bud
If you wish to request or offer development/art/building/administration services, please do so at https://www.spigotmc.org/forums/services-recruitment-v2.54/
Im not requestion services lol
"I need a dev for my server"
But you are though...
You literally are π€£
Services = Paid
mhm
No, not always.
Buddy is broke, he can go find a gpt dev on the forums
Lmao
I was going to say, are we just going to overlook the fact that they expect someone to do development for free for them π
Work is work
The people who do will write backdoors
I value my time
Not in the world of development and as a developer what your expected to do is usually more than anyone else
And then devs are like Yea I'll help you for 30$/hour
The people who work for free have some ulterior incentive. Either, they are inexperienced, or have something mallicious.
That's cause they know what they are worth. lmao
Do you want quality? Or do you just want it to barley work?
Exactly, Time = money and not everyone knows minecraft / spigot and the api's
Not always.
Sometimes sure, but there are people who will give geniune help.
Its simple stuff bro
I bet this persons definiton of a "developer" and ours is different, they probably want someone just to configure plugins for them and not actually develop anything
Should programmin be paid per hour anyways? I don't get what stops someone for exaggerating the time. Then again, if you pay per LOC you'll have redundant lines
Im not paying that much for someone to write a few lines of code
Explain what you want done
"A few lines of code"
I wanna hear what "a few lines" are
It can go either way. There's pros and cons to hourly rate vs commission rates.
BRO SAME
I need a simple booster plugin that multiplies fortune by 3 when activated
doesnt even have to be a plugin
π€£
See this is why I just charge by the line
Lmao, that's more than a "few" lines
Ill take a skript if possible
How much per line?
Thats not going to be "a few lines of code my guy"
0.85$ a line
Lmao
Tree fiddy per line
includes comments and docs
Best idea ever. Normally I do $100 for the plugin source and $25 an hour
You better be writing in raw ASM if you are charging me by the cycle
Oh jesus
And it better be as optimal as possible
How much to config a plugin?
Some people would do that for free
Lol
And the config
I will just be straight up honest with you on that one if you need someone to configure your plugins for you then you probably shouldn't be in the server business
I config my plugins
@past kiln I'll take you up on the offer legitimately if you pay me 10euro. I'll let you make suggestions through development
Im just stuck on this one
I'm gonna have to repost my question now cuase it got burined and I legit need to know what that event was changed to in the api π
When you press tab once
Okay
Anyone know what setLastDamageCause(EntityDamageEvent event) got changed to as this is depricated in the api but it doesn't say what to use on the javadocs
I don't think there is a replacement.
May i dm you?
There isnβt
Can you not set the damage casue for an Entity anymore?
Yes.
Well, you technically still can, but if no alternative is submitted, then no, you won't be able to.
Crap okay
I'm updating a plugin for someone as their old dev got busy irl and he had a lib he wrote and had made a Hologram item class that implemented Item
The problem is that I need to implement the methods for Entity and one of them is setLastDamageCause()
I know it's bad practice, I'm just trying to band aid this without having to rewrite it
And the annoying part is that they are already using protocol lib so I'm not sure why they didn't just use nms to get the Entity itself or use craft item like you said
I wanna make a custom potion effect and rename potion is it possible?
GUYS ive spent 4 hours of my life and still can't fix this problem
I wanna change the directory location of maven's outputs. Basically, I only want the final and the real .jar plugin file to go straight into my server's plugins folder. and everything else can stay in the target file
PLEASE HELP
something like this? https://stackoverflow.com/questions/3908013/maven-how-to-change-path-to-target-directory-from-command-line
you should have maven-jar-plugin
lemme read em
guys
ive tried many ways
asked help in many servers
configured the pom.xml in a lot of ways
but still it wont work perfectly the way i want it to
then i saw a tutorial, and that guy just used artifacts and used build artifacts
instead of running the "build maven"
i want a system, when i code and run/compile/whatever, the .jar file should go straight to my folder of choice. Only the .jar file
yes it was clean, package
what method does this use
i tried that, everything broke
this one
hmm
in one instance
i did that but put it right under <build>
and that just made a .com file and a plugin.yml file
and inside the .com file there was the .jar
and when i put it in the <configurations>
it made nothing
that was few hours ago, i made a new project with completely new stuff but still here
oh
YES
i can send messages now
hmm so I cannot register a new potion? (with new name)
ok
no no like, inside build but the next line after build
oh my god i cant even send an image here
<defaultGoal>clean package</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.5.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<outputDirectory>C:\MyTestServer\plugins\</outputDirectory>
</configuration>
</plugin>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>```
look
i put you <plugin>
<defaultGoal>clean package</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<outputDirectory>C:\MyTestServer\plugins\</outputDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.5.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>```
now look
C:\Users\fahia\Desktop\LocalMC\plugins
im using this directory
@quaint mantle
which one should i run
- clean
- validate
- compile
- test
- package
ok package
woah
what the
IT WORKED??????????
AHHHHHHHHHHH
you are a legend
I had NO idea
you have to add your own <plugins>
ok i got it
if you dont use a plugin
maven really dosen't understand what to do
so it makes random files
or random stuff
i didnt use that maven-jar-plugin, instead i tried putting the <outputDirectory> in the maven-compile-plugin XD
thats why it didnt work
damn now i kinda understand how maven works, it needs plugins to work or add features
are you an expert in maven?
you still fixed that problem
Yeah I feel like a lot of tutorials just say "put this in your POM file" but dont explain it
what resource filtering it
yes
Classic work day, work 23 hours, go to the gym for 1 hour, sleep 15 hours, these 9 to 5s are crazy
when tutorials dont explain, we cant recreate it
there is
having a blueprint is better than having a product ahh
I've been out of the loop with the enum changes for 1.21, how do I access Materials now? how would I compare if an item's material is a certain one?
Hasn't changed
You're right, it was saying Material wasn't there, but turns out my Intellij was 2 years outdated (thank you for not telling me) and updating it fixes it
God I know this feeling too well.
you assume something is deprecated, and then you find out that IntellIJ was bugged
lol
is it possible to disguise the entity of a pig into an armorstand at 1.20 in general?
or is it impossible to turn an entity into another entity?
my favourite was this
I keep going over code and thinking 'wait this could be better but I don't want to refactor this NOW'
and now I have 70 new TODOs
:)
Job security for you
Lol i do that sometimes and then sometime later when i have forgotten its like i am not sure what needs fixing
Does anyone know which version of BuildData last contained field mappings?
I maintain a fork of Spigot's mappings for classes and methods but was too late back then to save the field mappings
I'm looking now to add those missing field mappings to my mappings
that's what FIXME is for
is there a way to show different color on nametags per player
lets say a player sees his enemy as red
and his allies as green
Packets galore
Not fun
what
You have to dig into the Server's source code and send Packets to the Players to achieve that
It's not a fun thing to do, it's very tedious
which packet specifically
Not sure, that's where https://wiki.vg/Protocol can probably help you more than I can
no you dont
@astral pilot use teams and set their colour
and per-player scoreboards exist
Field mappings stopped shipping when spigot started mojmapping, so, 1.17
This means anything below that had field mappings
Ah, alright thanks
teams?
scoreboard teams
or, you can summon an armorstand and move it x ticks so that it syncs up with the player update speed making it seem as if they have a different nametag, because the armorstand and player move at the exact same speed
/hj
lel
atp just use custom nametags with text displays
haha that's where you're wrong!
...what
text displays have fucked up maths and their rotation doesn't work 100% of the time
and you can't use the pos attribute with billboard center otherwise it goes WEEEEEEEEEEEEEEEEEEEE
well no need to rotate it here
works fine for me
yeah, but that doesn't work like a normal nametag
okay and it still looks fine
meh
lmfao
if you really need custom nametags (like i do) you'll need display entities, and several per player :p
or you can just use one armor stand
text displays still allow you to do more cool stuff
like transparency, glow, background color, etc
fair
which packet is used to set color on nametags
iirc scoreboard team allows you to set color on nametag
maybe something changed by then
but what if there are multiple teams
doesn't that mean there would be multiple colors as well
not sure, i think game doesnt care about color matching between teams, its just a decoration thing, i might be wrong about this since i havent touched scoreboards for like 2-3 years
The only one I can think of is: https://wiki.vg/Protocol#Update_Score
They are the only ones dealing with possible text and color changes on Entities / Players as far as I can see
Hello! Newbie here with a newbie question, sorry. I'm following a 1 year old tutorial on yt about how to make a spigot plugin and im stuck on the downloading the spigotapi part because the link he provided does not work anymore. Can someone enlighten me? Thank you!
welp i can't find a way to do it
it seems like it willl just make a color for the separate teams
i wanted to make it so that the player sees his allies as green and enemies as red, same with the player in other team
why not use the api
How correct override forEach method?
@Override
public void forEach(Consumer<? super ItemStack> action) {
}
What i should write here
why are you overriding some foreach
i am implementing inventory and idk how to apply methods on my itemstacks in array
do not implement bukkit classes
why not
i implemented itemstack and it working nice
or implemented yaml configuration and working too nice
item stack is not an interface
you know there's implementations for all of that
you are likely doing something completely wrong
i want try to implement something bukkit
i mean maybe his solution isnt right
but for plugins that would hook into bukkit api
and having itemstacks registered as proper ones in bukkit api really opens up possibilities
even though i wouldnt recommend it
wdym by that
if i wanted custom items, i would instead register them using NMS registries instead
to better integrate with minecraft server's commands
for example ./give
well yea but the client still doesn't have them
i do not creating custom items
Item registry isnβt synced yet
ok then wtf are you doing that requires you to impl inventory
So registering them wonβt make them show in tab complete
new possibilities
??
i hope 1.22 would sync it once and for all
we would have custom item datapacks finally
they already did it with enchantments in 1.21
so its matter of time when they implement it for items too
i wonder how bukkit api would evolve when all items, enchantments, biomes will be all data driven
it would need to change drastically and deprecate Material types
Well material is on its way out anyways
inb4 now you have silly devs asking how can you do custom items without resource packs rofl
Just make a new API layer with underlying backwards compatibility to older plugins?
Like the clever way? π
Arrays.asList(this.getContents()).forEach(action); easy as that
performance-wise there are better options out there, yes - but you wouldn't be asking your question the way you did it if it were for performance
I'm already waiting for the next question: "Why do I get concurrent modification exception?"
just implement iterable
cuz you are modifying a collection while iterating over it
ah cant read
thx
xD
thought that was a question
It will be, wait for it xP
class kz.hxncus.mc.minesonapi.inventory.SimpleInventory cannot be cast to class org.bukkit.craftbukkit.v1_16_R3.inventory.CraftInventory
it can't happen, getContents() returns an array
xd
see, told ya
Oh you are right actually
most api interfaces arent supposed to be extended
What if i extend 1.16.5 inventory class
but well I suppose we shall let them figure that out for themselves
Just use runtime code generation - would grant the biggest flexibility and unlock the greatest amounts of possibilities
π€
Metric metric = Metric.create("players_online").addField("count", Bukkit.getOnlinePlayers().size());
please just say wtf you are doing
how
you really don't need to do all that
objectweb ASM
Use proxy
this.sessionTracker.startSession("player_join_ImIllusion", "player_join");
// run blocking
Metric metric = this.sessionTracker.finalize("player_join_ImIllusion");
π€
grafana go brr
why tf would you want to do asm when just making custom inventories. please, for the love of god, don't try to impl api interfaces
woooosh
what
I'm being serious there
that was my biggest fear
exactly
I know it works, but I thought you were being overkill with it to be a little bit sarcastic? xP
Metric metric = this.sessionTracker.profile("player_join", () -> this.handlePlayerJoin(event));
π€
I'm the ASM person, I'm going overkill because we have absolutely no information
I'm a bytebuddy person
Ew :(
just patch the spigot jar bro
i'm a classfile api person π
im the "i might write a classfile generator" person
The classfile API didn't really catch my eye personally
Plus I want to highlight that perhaps - just perhaps - there are faster ways of accomplishing the task with fewer hurdles
there 100% are
inb4 meta-programming in Java
but impl'ing api interfaces is just not it
Hotswapping is a thing actually
jetbrains runtime π
No no
I want to edit minecraft classes with plugin
Without deprecated runtime attaching :c
Just register a javaagent and you are good to go.
It's limited but extremely powerful
what are plugins smh
It might be disabled by default in the future, but the feature itself will stay
just load them from the player cache ig
I would first cache them all
another crosspost from paper, nice
And second consider limiting how many you return (limit the size of the list)
@strange tangle you posted this in paper earlier and you actually got responses so i don't see why you would even crosspost lmao
Although the client probably handles that fine, /playsound doesn't nuke the game for example
im making a mod guys
- Cache player names, so you don't have to load them from disk all the time.
- Filter said cache by entered string (maybe even do sub-caching for starting letters)
- Return a limited set of names (max. 100 for example)
you reacted with a questionmark so that was my explanation to that
char trie π€
when i click on my custom inventory with item in cursor, items dissappear
ok
stop implementing the already implemented api
I'm following this story line with some popcorn, if you don't mind πΏ
i want add own methods
what are you even doing
kotlin πΏ
asked that several times too, no response so gl
cough cough im making a mod
rattle em boys
that was enough for today
i dont think Teams from scoreboard would achieve that
why would they not
it will just make it so that the other guy from other team will see his own teammates as red
you can set scoreboards per player
Not if you have two different scoreboards
o
uh oh
SQLDialect dialect = new MySQLDialect();
String expression = dialect.upsert().into("joe").columns("playername", "moneys").values("mama", 123).render()
kinda ass but will do
i thought with dsl and infix functions π’
Just use hibernate 4head
Yeah thing is I'm also using uh
mongo on my database shit
and I want to make it all kinda easy to hook into
And I cba introducing more dependencies
jooq :prayga:
Whole objective is to just
public class MyPlayerServiceSQL {
public DatabaseOperation<String> getPlayerName(UUID playerId) {
return this.sqlDatabase.select("playername").from("players").where("playerId").eq(playerId).first().map(results -> {
return results.getString("playername");
});
}
}
or sum shit
Anyone use HikariCP for databases?
Yes, many people
how would i make a text display look towards a specific yaw / pitch?
Still trying to figure out the best syntax
Modify its RightRotation
transformation.getRightRotation()
it has helper methods
.rotateY(rotation)
etc
dont forget to put the Transformation back on the Entity
i know all of that, but when am i supposed to rotateY? it's in a loop that runs every tick setting the rotation (yaw and pitch) to the player's yaw and player's pitch and if i rotateY there it just got helicopter mode
ah
if you are using a players pitch/yaw to set it
