#help-development
1 messages Β· Page 1294 of 1
so I will add transparent bg to right of the image?
You know how when you hit the space bar, your cursor moves forwards? The reason your words are separated?
Imagine that, but the opposite. Instead of moving the text forward, it moves it backwards
Hence, negative whitespace
anyone have an idear plz ?
negative whitespace is such a baller concept
the only thing that comes close is messing with ascent on custom fonts
are there any humanentity that arent player?
No
-_-
at least not without plugins doing some strange "npc" nonsense
Hii
Maybe one day Mojang will get quirky
oh so this is not a spigot concept
no, it reflects there being one in nms
which is currently also only implemented/extended by nms Player
Nah there is a ServerPlayer and a LocalPlayer
LocalPlayer is only on the client though
yeah i don't think that counts
but i suppose it explains there being a common superclass in nms
Technically itβs Player -> AbstractClientPlayer -> LocalPlayer
Because idk why not
makes sense when you consider that you can have players on your network join your world
what kind of answer were you expecting when the answer is just "no", lol
idk
some kinda reason
but that came after
I guess the naming is a little weird then
the ItemCombinerScreen
If a player has an open inventory, how do I add an item to the inventory? I'm using openInventory#setItem(slot, itemStack) but it's not working.
Should work just fine
Hello, I'm trying to figure it out how to make buttons/interact on a Map Frame Image, like the following image. I've been thinking to use Ray Tracing to make it, but I don't know how to make the interaction on the specified button/pixel on the map image.
yea i solved
Math, lots of math
Or that
bro said maths π
this aint 1.8
u can use axiom and place interaction entities just at the right places
Hello im trying to create a drag gui where when i put the block in it should close the gui but idk why it dont detect the block and remain open like this
Do you make money by making plugins?
does who
now i just spend my days writing kotlin for a kmp projeect
What does it mean ?
What does that mean
it means we are bankrjpt
now you just play wow
it means im bad at making jokes
I mighbt not understand some english things
its a joke from the game Skyrim (or maybe the elder scrolls idk im not a gamer)
ive never played either
Itβs not either
Smh let me mansplain this
The elder scrolls is the series
Skyrim is the elder scrolls V
Oblivion was the elder scrolls IV
Etc
elder skyrim scrolls 9?
this gif should be an arrow to the knee
no i need them
It is from oblivion and also in skyrim
Can I start Spigot with custom start parameters and receive them via a plugin?
?xy
Maybe you want System.getProperty
Well, I mean, for example, java -jar spigot.jar --my-own-parameter /home/some-directory
And I can then read the --my-own-parameter via my plugin
But yeah, System#getProperty looks like the stuff i need, thanks!
is net/md_5/bungee/protocol/Property got removed in latest version of bungeecord?
BungeeGuard. it stopped working. just asked to know actual issue
also to where it been moved? i'll try to fix it by myself
/protocol/data
ok, thanks
try bungee 1991 (to be released in a few minutes, might fix it)
i'll try
I have been trying to listener to the ClientIntentionPacket and ServerboundSelectKnownPacks And have been trying to setup a packet listener but haven't gotten it to work.
https://paste.learnspigot.com/lodunucolu.typescript
If anyone has a idea why it wouldn't be working i would love to hear :kek:
Coded in Kotlin and transated to Java so things might look a bit weird
LearnSpigot provides a free web-based pastebin service for storing and sharing code snippets with anyone. Powered by hastebin.
?xy
I want to get the client version and client name
For client name check message channel registrations. For version check the Handshake.Client.SET_PROTOCOL
For the version inside the packet use .get integers(0)
Use protocol lib
well, is the println working?
thats the mindset that gets u nowhere goodluck π
dont worry we all learn
also when u change ur mind use packetevents its better
tbf their code right now is pretty much what PacketEvents does for Spigot
proof
its a mindset there i want to learn
i just like glazing my baby @alpine urchin
where*
u dont learn like this but keep going
im just telling u the truth
Its nreally a full copy and still doesn't work
eveeyone whos experienced here has been in the same place as u
i 100% do
ur just gonna try doing everyrhing without libraries
it is pretty much the same, and I would rather it be a full copy
and then turn up using libraries for everyrhing
thats what they r there for
to make ur life easier
and faster projects 100%
though it is GPL v3 ig, that's annoying
LMAO im still using websocket 0.8 for one of my js files
Give me like 10 min and i will test
what I would recommend is setting up a plugin, one listener that uses your version of the injector and the other uses packetevents and see where things are going wrong with a debugger
that was my plan π
382mbs π
do share the results if you end up finding the issue, I am curious as to why your current version doesn't work
im comparing the tick that my animation ran with the current to determine if it should run again, if the server lags, the ticks slow down should i use timestamps so that the animation keeps going at normal pace or just accept that it slows down?
if you don't find anything, I'll try testing it myself
dont worry will do
up to you really
sometimes it is more natural for the animation to keep going at the same rate rather than whatever the server's mstp might be, but often times it is the other way around
choose what you feel is more natural
i was using timestamps earlier but the issue is if the ticks are too early or late that sometimes the animation state waits 50ms for the next tick
idk π both have their downsides
you could probably accumulate the difference and smooth it out
what does your code look like right now?
using ticks it the best solution altough when the server lags it also lags, but im right now thinking that if the server lags everything else lags too so why bother?
i think i should rather care about the server not lagging
that's true lol
you should still probably look into a smoothing function for the case the server lags, since there's that tick compensation behavior which may make things weird, though that may only affect entity tracking
im gonna try to compensate it and do some math now π if i cant accomplish it i dont think it really matters, the server sohuldnt lag anyways, thanks for ur help :)
Hello, how can I change the night light color in 1.21.7 ?
I want the global illumination to be red
I would think you would need to use a rp for that
Do you have some guides please ?
Maybe that's using shaders ?
I think it's a shader yes
public class Alliance {
private final UUID clan1;
private final UUID clan2;
public Alliance(UUID clan1, UUID clan2) {
this.clan1 = clan1;
this.clan2 = clan2;
}
public UUID[] getClans() {
return new UUID[]{clan1,clan2};
}
public boolean matches(Clan clan1, Clan clan2) {
if (clan1 == null || clan2 == null) return false;
if (this.clan1.equals(clan1.getId()) && this.clan2.equals(clan2.getId())) return true;
return this.clan1.equals(clan2.getId()) && this.clan2.equals(clan1.getId());
}
@Override
public boolean equals(Object obj) {
if (obj == this) return true;
if (obj == null || getClass() != obj.getClass()) return false;
Alliance alliance = (Alliance) obj;
return (clan1.equals(alliance.clan1) && clan2.equals(alliance.clan2)) ||
(clan1.equals(alliance.clan2) && clan2.equals(alliance.clan1));
}
@Override
public int hashCode() {
UUID first = clan1.compareTo(clan2) <= 0 ? clan1 : clan2;
UUID second = clan1.compareTo(clan2) <= 0 ? clan2 : clan1;
return Objects.hash(first, second);
}
}
is that alright
so now if i put 2 alliances, and they have the same thing but in different order (so (clanA and clan B), and (clan B and clan A)) it should be treated as the same by .equals???
idk, doing this thing for the first time
im doing a minigame with vampires and the victim was the exclusive breakfast eater so im gonna make the vampire the inclusive breakfast eater
lol nice
nyeh
and i cant download spigot api 1.21.6
use intellij and use the mc plugin for intellij
uh
this isnt 2010
if i delete eclipse the project i was creating could be developed in intellij?
i was creating a project
to learn java
uhh ye u could probs import it
ah okey
just save the plugin in another folder first
dont delete eclispe yet
just download intellij first
and then when u transfer it then u can continue
how much gigs
1029384756 GB
L ragebait
okay then 0192837465
Eclipse is fine, it has Maven and Gradle support and thats all that matters
dont listen to nonsensical opinions like that one
dont let these IntelliJents make u think ur IDE is trash
they chose the hard ways and suffering
(i use IntelliJ)
eclipse is ass blinded by 1.7 minecraft π
pizza hut is so bad bro
who eats here
im here
bruh i only wanted to know chill
ye i told u wdym
my intellij stuff is taking like 100 gigs
Eclipse is significantly more lightweight than JetBrains products, so it's not bad. However, I still use JetBrains products for a better workflow.
but that also includes gradle and whatever else
so
i use vsc light mode for java π
its better eclipse or intellij
intellij by 200x
who uses light mode in 2025
Me
r u stupid π
i dont know if i should be worried or not
like u use its theme or u use VSC for java
if u use VSC for java i am so sorry for your loss
lol
suicide by 37 gunshots to the back of the head
Dark mode makes you tired faster, and there are a few studies that say you work better and more creatively in light mode. And after a while, you get used to it. I find Discord's dark mode really ugly at this point
light mode make your eyes tired but dark mode makes you tired what?
How does dark mode make you tired faster?
Light mode strains your eyes
it's basically flashbanging you
im like hey wassup hello
what the fuck are you on
NETYEHTYYEYEHEJHgsydgyu
Laptop
gotta stop fooling around srry
is it normal that intellij is slow
?
indexing probably
It emits less blue light
unless ur using an AMOLED display n theme i dont think thats how that works
My glasses have a built-in blue light filter in the lenses π
mine do too
so it doesn't matter
my previous glasses made a green reflection that ruined any selfies π
new ones just reflect blue
i got astigmatism π
mad astigmatism gang
my eyes are perfect so I have no excuse to get blue filtering glasses, I have to make do with software colour shifting, yuck
f.lux
ts was awesome when i had a jailbroken ipad
gtg
are you trying to use them IN their scope?
you should be able to just use them past the return
Eclipse will have issues with that
its subjective.
netbeans
theyre gray becos u arent using them π
i think
you should be able to use them just fine? why do you think you can't
perhaps it should be an || instead
I had this issue long ago with Eclipse. It thinks they are out of scope and shows an error
no clue if they would actually compile with maven, but they should
yeah that should definitely be an ||
i have code that is similar to that, it should be fine
I'm pretty sure javac will (rightfully) refuse to use the variables after the if in that case because of the &&ing
either entity could be a player so it can't guarantee the variable's existence
if it's an || then yes you can use them fine
is there an event that fires when a player "gets an item"
more specifically, through like /give or smth
itempickupevent and stuff dont fire for /give
light mode as in just as text editor
i just removed all ui elements from my os that used the blue color channel
don't need to filter it if there isn't anything to filter
i don't think it's valid to use either in either scope
or actually i'm not sure
yeah nevermind they should both be present in one scope
what?
you cant use either of them
cause
if its true or false, you are not sure which one is there
I guess my messages are invisible today
does that mean that.. hmm
Choco likes Little Caesar's
Maybe
yeah
its || but i placed && there
and
you cant access a variable
Should have kept ignoring Emily to see how deranged the messages become
thats rude
is this class ok
I do and I haven't had any since forever. But you've reminded me that I absolutely should go out and get some because I'm an adult and can make adult decisions. If I want a pizza, I can get a pizza >:(
The problem is just that I need my car, which is in the shop :)
Huskies are with parents, I don't own a bike
I wonder what car choco drives
how about a record?
public record Alliance(UUID clan1, UUID clan2) {
public UUID[] getClans() {
return new UUID[]{clan1,clan2};
}
public boolean matches(Clan clan1, Clan clan2) {
if (clan1 == null || clan2 == null) return false;
if (this.clan1.equals(clan1.getId()) && this.clan2.equals(clan2.getId())) return true;
return this.clan1.equals(clan2.getId()) && this.clan2.equals(clan1.getId());
}
}
ok does it really matter? i just wanted to know if equals and hash methods are ok
oh
:d
its just no constructor and no getters
canonical constructor is implicit, the record components (fields) have accessors (that you can override), and auto-generated equals, hashCode, and toString based on the record's components (which you can also override)
this is a perfect class to be a record
2009 BMW 328i xDrive
something something immutable transparent data carrier
records do the equals/hashCode() for you like magic
since when is a 2009 beamer only like 3k
For the record though, your hashCode() and equals() implementations were fine, aside from the fact that you could use instanceof variables
@Override
public boolean equals(Object obj) {
if (obj == this) return true;
if (!(obj instanceof Alliance alliance)) return false;
return (clan1.equals(alliance.clan1) && clan2.equals(alliance.clan2)) ||
(clan1.equals(alliance.clan2) && clan2.equals(alliance.clan1));
}
Cars depreciate fast
so.. is my equals and hash method alrigght?
oh ok
instanceof also works for classes which are childs??
Yes
String value = "";
if (value instanceof CharSequence) {
// this is true
}
This?
Yes but white
so should you actually use this in equals
I think they all depreciated really hard in the past 5 years
Use what?
instanceof
I recall trying to sell my dad's 2005 car for like 5k a few years back
and now it's worth maybe 1.5k?
it drives fine
Yeah. You have to. You're passed an Object. You have to use instanceof in some capacity (in most situations)
Worth noting that an instanceof check is sensitive to null as well, so if it's null, it's not an instanceof anything (hence why I removed the null check)
We're having the car chat in #general
Pfft im gonna use Class#isInstance
Nah isAssignableFrom
Stupid Class method names
uhmm but.. i thought that i want to make sure the classes are the same, and its not a subclass
One takes a class the other an object
The subtype can override equals() as well to make it more specific. That's up to you though how you want to handle it
If there are no child types of Alliance, then it doesn't matter
yeah
Some people want child types to be equal to parents
Equality doesn't mean the type matches, just that the data does
okay
Crazy people
mfw parents who say "You should be a doctor like us!"
I got one of these (not my img)
i don't think i have a single car newer than 00
the 80s and 90s ones last forever and you can do your own repairs
which plugin will handle event first if they have the same priority?
the one that gets loaded first by the server
and is that random?
i doubt so, you can also determine if a plugin should load only after another has been loaded
there is also loadbefore
when would you use that
most likely in the same way as depend, just the other way around
so if player has not player before - OfflinePlayer.getName will return null?
and what if i do Bukkit.getOfflinePlayer(UUID) and the UUID doesnt exist? the method is @NotNull
oooohh
i think
i get it
cause for this thing, its the same if player was never online or it doenst exist
?
Getname says "Player name or null if we have not seen a name for this player yet"
yeah
i was talking about getOfflineplayer now
is there a method like this
(T ojbect, T def) {
return object != null ? object : def;
}
No but you can make one
Optional.ofNullable(object).orElse(def) (don't actually do this)
Or do, I'm a sign not a cop
ok i wont
how does it look like
Itβs ??
xor
String name = OfflinePlayer.getName() ?? βUnknown Nameβ
Sorry what's ??
how do you call a class which mimmicks another class by providing dependency injected value which is used to implement the methods of that particular interface which it tries to mimmick
adapter?
view?
facade?
either Proxied or Delegate
usually Delegate
ill just use a delegate
here's a sample
Where the val name = OfflinePlayer.getName() ?: "egg" at
Hey π
I've started to update my plugin from 1.20 to 1.21.7 and noticed that falling block entity now displays its custom name (but only on hover).
is there a way to make it fully invisible again? tried setting NBT CustomNameVisible to false and also fallingblock.setCustomNameVisible(false); but without much look π¦
Why does it have a custom name? 
laziness on my behalf 3 years ago ;p
just remove the custom name
a good load of code re-write will be needed then :/
what exactly are oyu using a custom name for anyway?
is it some hacky way of tracking the block
yup
i have tried the NBT, but unfortunately it doesn't do anything π¦
nvm, it does, with CustomNameVisible = true the name is always visible, with it set to false it only shows up on hover
?pdc
might have to be the route forward
What you doing is like the same equivalent to checking inventory name to handle events
correct
hello is there a way to disable collision between players BUT only in a certain worldguard region for 1.21.4?
Youβd have to set up a scoreboard team and then add and remove players from it when thy enter and exit the region
I didn't try because i already have scoreboard plugin and I heard it will break my scoreboard and stuff
It might
https://paste.gravemc.net/?id=MFTvT8zWvB
I'm doing this for remapping
it's mostly working
however.. there are some methods that just don't remap correctly
Like if i invoke EntityPlayer#getUUID it should be relocated to #cG in 1.21.4
and the mappings do contain that change in Entity class where that method is
however even tho im just calling special source.. its not doing it idk why
should i question why you dont just use patrick choe's?
because im making my own system that has a different purpose
yeah... im in a loop here
idk what to look for
i just checked
it works fine with the maven plugin
but not my task..
what am i missing
i think i got it right
Hi i have been working on something and i have a question , is there a way to check for BedExplodeEvent?
The same way you would for other events
Lets say i want to get the player who trigger the explosion of bed and killed Dragon
are you talking about BlockExplodeEvent
i dont think its that complex lol
You're looking to rather detect the death of the dragon as a result of a bed explosion correct? Rather than simply a bed exploding?
Anyways I dont think its possible, you would use getLastDamageCause(), but all that would tell you is that it was a bed explosion, and i dont think there is a API method to get the player who triggered the bed explosion, because it is not an entity-triggered explosion (unlike TNT ignited by a player).
Perhaps you could have an event for a player sleeping, check dimension, log the time, then on the dragon's death compare the interval to deduce whether that bed was the bed that triggered the death.
getting damaged by the bed explosion should record a EntityDamagedByBlockEvent as the lastDamageSource on the entity, and the event should hold a snapshot of the exploded block
thats why iam doing rn .. it works
LivingEntity waypoint = (LivingEntity) player.getWorld().spawnEntity(player.getLocation(), EntityType.ARMOR_STAND);
waypoint.getAttribute(Attribute.WAYPOINT_TRANSMIT_RANGE).setBaseValue(100.0);
waypoint.setWaypointColor(Color.AQUA);
Caused by: java.lang.NoSuchMethodError: 'void org.bukkit.entity.LivingEntity.setWaypointColor(org.bukkit.Color)'
am I going crazy or does that method really not exist in 1.21.7-R0.1-SNAPSHOT
using import org.bukkit.Color;
i am going to take a while guess and say ur server is running paper?
you are correct. can I assume that paper didn't implement this yet?
it was added after they hard forked and they probably dont plan to pull it over
didn't know about the hard fork, this indeed makes things more complicated now
always thought paper builds on top of spigot as they did before
they did untill 1.21.4
they went their own route now
the route of deprecating anything vaguely resembling a string in favor of adventure components
now i just need to figure out where to point my gun at. do i switch to their plugin api or do i shoot paper and move my server back to "vanilla" spigot ...
we could've had nice things
my personal recommendation is to switch to paper
there are some irksome habits in how they maintain it but overall paper performs much better and has many quality of life and performance api's spigot doesn't
i can work around this by using NBT directly for now i guess but for the future this would get annoying, so i guess switching to paper it is .. but then, spigot has much more development resources
- if you're building public plugins, iirc 80% or 70% of the bukkit ecosystem in 1.20+ uses paper or forks of paper
ecosystem as in servers; for libraries and tutorials almost all of them are for spigot yeah
paper is turning into a monopoly
but at least for tutorials, most of them are pre hardfork so they still apply
it's just that if you want any feature pr'd into it you'll have to start a month-long review war on the pr or issue
anyone know if paper is up to date with new upstream features?
or fast, in other terms
the only upstream paper has is vanilla
lol
they should be, and at least in terms of item components, they are probably more up to date than spigot
e.g. can i assume i can just use the new waypoint stuff as soon as paper hits stable builds for that version?
not so sure about other things since i haven't built anything on .7 yet
check their javadocs i suppose
or like ask on their discord
paper is already stable
no waypoints api yet, but yes this is 1000% a question for the papermc discord
how about dialogs, do they have api for that
with 0 profit of ur 2 player server π
yeah
whats waypoints???? built in waypoints?
seems to be registerAttribute in terms of paper https://jd.papermc.io/paper/1.21.7/org/bukkit/attribute/Attributable.html#registerAttribute(org.bukkit.attribute.Attribute)
unfortunately i think like 5% of my playerbase is on .7 so i'll probably have to wait on them some more
1.21.6+ locator bar
u can add a custom waypoint to it?
its displayed on top of the XP bar when not interacting with exp
you can spawn an entity and add this attribute to it and it should pop up on the bar yeah
and maybe fuck with teams or something
actually yeah, paper just doesn't have explicit waypoint api but you can do most of it with the attributes anyway
that's been a pattern recently; same way how the item components system works
spigot adds things to itemmeta, paper adds some registry wrapper that just pulls from nms
if you have a resourcepack with the right metas, you can even have custom icons
they included a "style" attribute in addition to the normal color attribute
yeah ik that
hot
i don't like the waypoint bar
Can be disabled
death points
it's alright
ywah excatly u can even disable it
and custom icons is a W
skull icon for death location
u can even make it work with sethome plugin
it's alright, yeah
you can also disable it per user
but i can't really think of any practical use for it
its super neat for servers with 10~ isch people
death points maybe but i don't really want to have my players walk 8,000 blocks on foot to get to their death location in the first place, and if it's close by they can probably find it without a waypoint
i would turn it off for anything above 100 players
i don't know, showing players on it feels redundant
where else do you see live player locations?
oooh showing death points across dimensions, like overworld v nether
on the screen by looking at them
if you can't see the player with your eyes i don't think you should see where they are
i think in your case its fine, but there are players that enjoy finding each other easily and it has proven really usefull so far with everyone on my little private server
maybe if it's restricted to same faction members or friends or something it might be alright
i'm thinking of connecting this to BlueMap and use their Waypoint API
then have some sort of waypoints inventory for fast travel but also waypoint management
but the default icons are too similar, i would limit those to players
waypoints would absolutely need their own icons that aren't the standard ones, as they don't have any description to what they are pointing towards
thinking about this the implementation right now doesn't tell you which player you are looking at until you meet them and remember their dot-color
so really the biggest buff with this is to just find your friends
a skull icon for the death point is probably all i'll end up doing with it
you could use these in minigames for sure tho, like showing the enemies base locations, or if its a hunter/hunted game showing the hunted or players left
RPGs can mayhaps use these for quest locations
myeah, i thought about using it for quest waypoints but i'm not sure if it's clear enough
plus i already sort of did that with text displays
would need to communicate it to the player
Is this plugin doing somthing malicious here or is this just artifcating from decompiling?
Specifically the URL Class Loading?
that's 100% malware lol
yeah that looks kinda sus
@vagrant stratus Can I please request you take a look, since I usually see you posting about malware checks.., an individual is posting malware under my development team's branding?
I am not the best at reading decompiled code... i get that the decompiler tries to repiece things, and function names can be lost, and strings "lost in translation", but I dont think that URLClassLoader is a mistake... Really looks like a payload is being injected here.
yeah that's 100% not normal code
It builds and loads a hidden url class at runtime
looks like its a copy but with malware
I see no clkass in teh jar for it to load though
Yeah thats my associate whom left the review, in hopes it would ward off anyone from downloading.
URL.
obfuscated byte code?
if only I could link my modrinth on the spigot resource smh
im not runnng that code bro
lol, just the string
WHOEVER WROTE IT WAS TOO BRAINDEAD TO REMOVE METADATA
unless this is some boilerplate left over from somewhere else
lol
wow... feels good knowing our plugin is big enough that people wanna make malware in its name πͺπ»
I ran this through AI to decrypt (no idea how accurate it is) but the decryption points to an SFTP server with username and password specified
jar:ftp://6%376%3096%385264196%375%336%39:1356463542647259312@_ftp._tcp.ethanol.rocks:40000/1%32%64%332%306%37-ba%34%32-%300b%30%2d5%64%64%33%2d%639%30db%61%647%34%38%659;type=%39%66%34a%66%34!/
LOLL
this isnt some shitty skid then is it...
I saw that they took our whole branding, but the jar they uploaded is a single-class, dumbed down plugin, and figured it was the work of an amateur
where are you seeing this? Its not in the Lifesteal jar you linked
it is.
it is
Scrolll farrrr down.
synthetic method, some decompilers might hide it but javap does not
Yeah JDGUI hid it
last bit of code in the Lifesteal jar is the onPlayerUse event
Was it sm1 in ur team abb3v?
Im not allowed to connect :c
ah Yeah I'm not seeing it in jdgui
wat bro.
how
It's not a jar we produced or uploaded to our resource.
its a copycat.
No
The uploader has a other plugin too with the same backdoor
I'm studying chem rn I'm dying
yeah i saw
is it appropriate to ping a forum staff about this issue or was pinging optic enough
forgot my spigot acc details vro
BANNED
π€«
i think some of that is still encoded
Who knows if this is the dev that actually posted the plugin, or if its one of those things like the microsoft discord account linking scam, where people were self hosting the scam...
I think this is a backdoor-for-hire kind of thing. I think they are hosting like a frontend and API for backdooring servers
backdoor-as-a-service
lmfao
i mean it literally is... they have auth keys and a panel for managing backdooed servers
Link it
In dms prolly
no
you may have the wrong impression of me, being affiliated with xpdz, but i for one do not get up to illegal activities
i am purely involved in mcsc for freedom of expression, i do not agree with any actions of any individuals π
They're using synthetic. If the decompiler you use hides them and doesn't let you view them, you're SOL
use something better like luyten
yeah I opened it in a hex editor to see the extra code
This shi π₯ for passing the time
me n u
@cedar saffron
yes i am indeed a little kitty
tf does "SOL" mean
Shi outta luck
or just sore outta luck
nah she tryna cover up
Its not
Most probably not
is InventoryClickEvent#getcurrentitem the item that was in the clicked slot at the time of clicking?
or cursor is already updated to that one
Event should be called before anything is changed
so that would be the item in the clicked slot
and the cursor item is the item that the player was already holding before clicking by that logic
yeah
getCurrentItem is always the item in the clicked slot, never anything else; and at the time of the event firing, neither the inventory nor the cursor has been modified
or well i think clicking outside the inventory gui to drop the item is a special case for getCurrentItem, but i don't remember what it is in that case
Hey! can anyone help me with my resource pack I made myself? Its a pack that overrides wheat_seeds multiple times and uses CMD, then in my server plugin I set the right codes for my custom items. But nothing really happens in minecraft when the pack is loaded :/
inventoryclickevent is such a headache when using it raw
only real issue with it is that its behaviors aren't defined clearly anywhere, so to know you have to either jump into the game and try them out or read the code itself and figure it out from that
it gets easier once you already tested it out once, but if you use it one time and then forget about it for a few weeks, the issue comes up again. It isn't something that you can always remember given you need to take into account state synchronization logic which the server uses
I assume they mean without an inventory framework as far as GUIs go
samee
?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!
thiss, can anyone tell me how I can debug my resource pack if nothing happens when I try to load it in minecraft?
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!
ah
i cant send images
in words
i cant make gradle work
Your build is currently configured to use incompatible Java 23.0.1 and Gradle 8.8. Cannot sync the project.
We recommend upgrading to Gradle version 8.13.
The minimum compatible Gradle version is 8.10.
The maximum compatible Gradle JVM version is 22.
Possible solutions:
- Upgrade to Gradle 8.13 and re-sync
- Upgrade to Gradle 8.10 and re-sync
- Use Java 22 as Gradle JVM: Open Gradle settings
?verify
Even if i download gradle 8.13
well did u change the gradle property to use 8.13 and reload gradle
why
i dont know
okay, well
what is stopping you from verifying
does a man burst in from the window every time you try, shouting "NO I WILL NOT LET YOU"?
._.
i could possibly be sir
i'll take that as a no
well thats like me saying i cant walk
do i not wanna walk
is my legs broken
u wouldnt know
where the hell is that
CafeBabe
APP
β 17:49
Could not find your SpigotMC.org account!
here
it says that
you're supposed to give it your forums username
not your discord username
you are telling it @indigo thunder
π
those are all clickable links
Have you tried any of them?
setting your jdk would probably do it
gradle is ass
i wanted to use maven
cuz i donwloaded that in like 2 months ago
um
again
i dont have any setting in gradle settings
should i be worried?
its a wrapper, the versio nis in gradle/wrapper
they voted for trump
show pic
so
my guess (as I don't use IJ) is those folders have content
all folders have content
tysm
orange folders are "target" directories
orange means they're excluded from indexing, usually directories where build artifacts are placed like vcs mentions
vcs does your name mean version control system or is that just a coincidence
you can add more of those by adding them to your .gitignore or inside your IDE, though I recommend the .gitignore way since that also makes them be ignored in git
i used to have a longer username
but people only remember the first 3 characters
so i just shortened it
where can i see spigot documentation for 1.21.4
?jd
right, i want to get on .7
so that means i have to decompile and fix mythicmobs again to work on latest
mm works already no?
they don't seem particularly confident about it working
it does seem to build against 1.21.7 at least
maybe this once i don't need to go through this song and dance
I noticed the Dialog API on Bungee does only have a PlainMessageBody for the body stuff.
Does that mean there is currently no support for Message bodies with Item display? Or is that located somewhere else?
some rp stuff are broken with meg
mostly player heads
i'm guessing they don't want to include the whole itemstack registry codec nonsense into bungee, since it's a proxy and not a minecraft server with that logic included in it at base
you might have better luck with adventure
yeah probs u could maybe add it seperately but why add that to bungee anyways
Main issue I see is, well, Spigot afaik relies on that API, because Components
So unless Spigot actually implements it separately, would this strip away a whole thing.
And looking at the javadocs of Spigot, it doesn't seem like it implements any own Dialog stuff outside of what the Bungee API provides...
Kind of a reason imo why that stuff shouldn't be a part of the bungee API itself tbh
you're better of just sending the packets directly if you want to deal with dialogs right now
the registry part shouldn't be too hard, it is the same thing people have been doing for registering enchantments which is just unfreezing the register
packetevents in clutch
tbh thwse new updates for java are great dude
dialogs is a huge game changer especially with resourcepacks
I currently don't bother with Spigot/Bungee's implementation of Dialogs.
Was just curious regarding its implementation and apparent lack of features.
and waypoints i just learnt about it, its sick as well
would probs be added soonβ’
In what way with resource packs?
like u could have /sethome way points
instead of teleporting home in vanilla servers
u can just see the waypoint same with death
u can have a full screen custom menu with buttons and such
inputs
Also, agree. It's a really cool addition for making ingame file editors for your plugin. Instead of your usual ugly Inv- or chat-based stuff
just give it a bit ull see custom game menus, games and even more stuff
if ur not in the custom stuff community go see they cook up literal minecraft 2
(Discord is freaking slow with video playing I swear....)
I'm still of the firm belief that if you're incapable of editing a .yml file, you should not be running a server
true
Tho, at least with dialogs you have some small level of validation in place.
Option only allows numbers? Make a slider input
Boolean option? Boolean Input.
is that using unidialogue?
No.
Adventure.
Via a certain server's implementation
wot
adventure doesn't support dialogues does it?
or is it just an impl that happens to use adventure
They have some basic structure. But servers/proxies using it right now have to impelement the actual creation and display
adventure supports all ui/registry shit
oh cool
Any value that was previously set at this path will be overwritten. If the previous value was itself a ConfigurationSection, it will be orphaned.
what is that word π
why did they say orphaned
that's what it's called when a child loses its parent
Because the ConfigurationSection is a child of the other ConfigurationSection
parent:
child:
...
π why is it called orphaned
it's not complicated
oka
an orphan is a child without a parent
when a child node loses its parent node, it becomes an orphan
because it is a child without a parent
i.e. it becomes orphaned
in this particular case i dunno, it might be the wrong term; i'm not sure whether it's the child or parent that actually gets yeeted
uhm
but theyr dead
the parent should be dead
but the parent stays
and childrens are gone
π
yeah but it doesn't have the children
if theyre one
the children got left behind
so parents are orphaned from childern
now they go into the orphanage for old yaml nodes
going back to the original thing, i'm pretty sure what it intends to get across is that the old configurationsection is discarded in its entirety, i.e. removed from its parent; and replaced with a new configurationsection
so since the section gets tossed into the gutter and removed from its parent, it becomes an orphan
does getConfig.set(path, value) set it to value.toString if its UUID
no clue
anyway thats weird name for that
yeah well
I think itβs done implicitly.
we used to label disk drives master and slave
what does it mean implicitly
i mean, when ill pass 1 it will set it to INT
and by used to i mean i still do but it's frowned upon now
π bruh
I mean automatically handled by the api. IIRC, yaml defaults to strings anyways, so it should just convert it/treat it as a string.
or it might emit nonsense like
key:
==: java.util.UUID
least: 0
most: 0
probably not; try it and see
whatever ill just do toString
@Override
public void reload() {
super.reload();
clans = new HashMap<>();
ConfigurationSection section = getConfig().getConfigurationSection("clans");
if (section == null) return;
for (String idString : section.getKeys(false)) {
UUID id = UUID.fromString(idString);
String name = section.getString(idString + ".name");
String leaderString = section.getString(idString+".leader");
if (name==null || leaderString ==null) continue;
String viceLeaderString = section.getString(idString+".vice-leader");
Set<UUID> members = new HashSet<>();
for (String memberString : section.getStringList(idString + ".members")) {
members.add(UUID.fromString(memberString));
}
UUID leader = UUID.fromString(leaderString);
UUID viceLeader = viceLeaderString == null?null:UUID.fromString(viceLeaderString);
clans.put(id, new Clan(id, name, leader, viceLeader, members));
}
}
its so messy, should i change something?
should i add try catch for the uuid's
i dont think so, the config is not ment for user to edit
if it's not an user facing config, consider using something like gson for things like this instead
what do people use for securing public creative servers these days? to filter out like commandblocks with prefilled commands or chests that'll crash nearby players?
doest his have something to do with me or is it just your question lol
it's my question yes
I guess disable command blocks
and dont let them place chests with data in them
there is probably a plugin you can use that does it for you
but idk any
yeah and i'd have them disabled just in case
but like i've heard over the years about "creative filter" plugins that remove metadata from spawned-in items so you can't place a chest with 60 shulkers full of 2000 books with 25,000 pages and nuke the chunk
but i can't for the life of me remember what any of those plugins were called
IllegalStack or something
Does any1 know why intellij has this annoying line? And how i can remove it?
minimap somewhere
isn't that like all editors. An 80 character (page width)
in settings -> editor under appearance uncheck "Show hard wrap and visual guides ..."
Thanks, It was annoying asf.
yeah i feel ya, i even removed the spacing indicators on the left lol
everything crispy clean
How do I use spigot-api documentation on the actuall spigot.jar (not the spigot-api)
Should still be able to apply it the same
Can you tell me where to find people staying at my plugin
I was looking for someone to try the plugin.
Iβve been waiting for someone to try it, but no one has left a rating yet.
Sorry for bothering you
I was just trying to understand what you meant
Oo
this line is crucial for maintainable and readable code
who said i was gonna make maintainable and readable code
i mean you can kind of eyeball it but it helps keeping the line width consistent across the codebase
People keep this on?
It's just there in the middle of my screen like tf
well, you have an unusually wide screen
Eclipse has a nice button to toggle whitespace on and off. Anyone programming with it on permanently is probably insane
It's 24 inches i think
Who uses eclipse these days
me me me
Yeah Netbeans clearly superior
Is there a way to revert entire project from Local history in IntelliJ? Ive made some changes today and I dont rememer all of them, and everything is breaking...
but we have an alliance with the eclipse users
Hmmm, acceptable
Correct. We few must band together
how can I get the skull of an offlineplayer? I've got both uuid and name.
Both ways just give me a steve skin
Use SkinRestorer on your server, type the player's name and their skin will appear on you.
After that, use /skull on yourself to get their head.
That's the method I know
Do you mean cracked players?
dummy
Use a player profile
PlayerProfiles
Bukkit.getPlayerProfile(uuid)
Guess that works. I was gonna suggest just polling the Mojang API lol https://minecraft.wiki/w/Mojang_API#Query_player's_skin_and_cape
thank youuuu
Youβve been doing too much 1.8
Well, no, I knew about player profiles, I just didn't know what they wanted 
that method doesnt exist
in spigot 1.21.5
createPlayerProfile?
Might be createPlayerProfile yeah
i'll try
it worked, you saved my Night Bro Thanks xD