#dev-general
1 messages ยท Page 623 of 1
Can anyone shred light on this? 2022-05-01 09:12:54,964 TRACE New client connected (127.0.0.1:35300) 2022-05-01 09:12:54,964 TRACE Client (127.0.0.1:35300) succesfully authorized 2022-05-01 09:12:54,965 TRACE Closing client connection (127.0.0.1:35300) 2022-05-01 09:12:55,111 INFO server 1: Loading server properties 2022-05-01 09:12:55,111 INFO server 1: Starting server! 2022-05-01 09:12:55,111 DEBUG server 1: Loading server config from minecraft_server.jar.conf 2022-05-01 09:12:55,115 INFO server 1: Loaded config for "Default Minecraft Server" 2022-05-01 09:12:55,115 DEBUG server 1: Stream encoding for subprocess: UTF-8 in, UTF-8 out, latin-1 file 2022-05-01 09:12:55,128 DEBUG server 1: Server start command: "/usr/bin/java" "-Xmx10144M" "-Xms10144M" "-jar" "/home/minecraft/multicraft/servers/server1/paper-1.17.1-402.jar" "nogui" 2022-05-01 09:12:55,128 INFO server 1: Updating eula.txt file 2022-05-01 09:12:55,133 DEBUG server 1: Server started, PID: 30683 2022-05-01 09:12:55,160 INFO server 1: [Server] INFO Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000586000000, 10636754944, 0) failed; error='Not enough space' (errno=12) 2022-05-01 09:12:55,161 INFO server 1: [Server] INFO # 2022-05-01 09:12:55,161 INFO server 1: [Server] INFO # There is insufficient memory for the Java Runtime Environment to continue. 2022-05-01 09:12:55,161 INFO server 1: [Server] INFO # Native memory allocation (mmap) failed to map 10636754944 bytes for committing reserved memory. 2022-05-01 09:12:55,161 INFO server 1: [Server] INFO # An error report file with more information is saved as: 2022-05-01 09:12:55,161 INFO server 1: [Server] INFO # /home/minecraft/multicraft/servers/server1/hs_err_pid30683.log
has 10gb ram but fails to see it
well, I guess you dont have 10GB free for it to start
try setting the minimum ram to something like 512M instead.
thank you but I figured it out I think
the people in paper spigot discord helped me
it was this systemctl start multicraft along with some other lines
right before they mocked, insulted and then banned me for being an "arrogant prick"
even though they were mocking, insulting and being ironic at the end there
https://api.extendedclip.com/expansions/groopi/
Hello, Could staff please verify my expansion?
@obtuse gale Do you have your project opensource?
can i use it on 1.18.2?
use what?
it
horse racing
The request paid and the request free channels disappeared for me. The category is not collapsed, not sure what is going on.
can you see #970433902772617246 ?
can you click on it
no
same
share my server just appeared,
funnycube decided to delete them
channels are being reset for the new month, theyll be back soon!
Kaliber is lying
๐คจ
lol
lol
yes he is
sorry.
dont say sorry be sorry
Deluxe menus can I use 1.18.2 I don't have a download but I bought back in 1.16
Spigot Account Linking
To get support for a premium plugin owned by Clip or Glare you will need to verify your spigot account using =spigot in the #bot-commands channel. After you have successfully linked your spigot account you should ask your question in the coresponding channel for that plugin. If you have already linked your account and want to update your roles, run this command =spigot check.
@somber pecan 
Cheers boss
isnt deluxemenus free
yeah
yes. I just assumed he meant deluxechat
lol

Sorry, who needs help? Joe?
i purchased nitro and i cant see it on my profile
this is not a discord support server
sorry, no refunds
wdym refunds
your time spent in this server may not be refunded
Where did you purchase the Nitro from?
the app
Looking for discord support?
HelpChat is a Minecraft plugin and development support server and is not affiliated with discord in any way.
If you require support from discord, we recommend you to visit their official support website at https://support.discord.com
On this website, you can read their FAQs, or open a support ticket if necessary.
what is spigot id @quiet depot
how do i get 1.18.2 support for deluxe menus
or deluxechat i mean
is IJ supposed to always warn me about windows defender?
until you configure it I guess
yeah it did that for me, for a long period of time, but then it just stopped randomly.
What does configure automatically do ๐ฉ
it uh.. configures.. defender automatically?
Im aware, but it doesnt save
whos a good dev and willing to earn cash to be a full-time dev?
you spelt hourly wrong @bronze rune
Severely lol
jokes aside I don't think you can find anyone 'good' willing to take a position for that low, unless you're expecting them to work like two hours a month
up your budget a little bit or take the time to learn the stuff yourself 
Oh yeah, we've all been there xD
What really pushed me is when I commissioned this guy to make a pretty simple plugin, dude took $30, delivered a semi-working product, then ghosted me
yeah that's me with web design
I was like "oh shit, can't be that bad"
it's fucking awful
thank god for Alpine JS at least minimizing the javascript interaction required
i came around to SASS though, when I finally realized IJ can just run a file watcher for me to compile it
wanna see a little preview lol
i think I got something okay going
yeah I wanted a cute dark mode thing
that's a screenshot from literally in game on our server lol
yup
shaders
yeah and I'm kinda of getting a hang of the color scheme thing
HSL is my hero
especially dark mode man
I just turn up the lightness and bam, a little lighter
perfect for those cards
what, you're saying you can't count in hexadecimal triplets?
haha
I'm using Bulma right now for CSS, but man with the amount of custom stuff I'm doing I should probably just use Tailwind lmao
maybe I'll convert it someday
Is there an app (android of course) for a linux VM (preferably ubuntu desktop)?
I know you can change your phones OS to linux but I don't want that.
You can use Termux but that doesn't have the desktop environment if you want that
Hm actually it's not a vm so nvm
Yeah I want a VM with desktop environment. And I don't want a remote connection I want it on my phone.
bro good luck
Well I know its possible lol If you can run linux as an os on the phone you can deff run it as a VM on the phone. The issue is no app has been made to support it. I found a few apps for windows but they aren't exactly like windows desktop.
issue is performance
Performance isn't an issue for me.
I mean, taking 3 hours to boot would make development slightly awful
My phone has a better cpu and more ram then a chromebook. Performance isn't an issue lol
Linux for 30 minutes before your battery dies lmao
Iโve ran a Minecraft server from iSH
Itโs painfully slow and not usable, but itโs Minecraft servers on an iPhone
5k mah, and also a wall charger ๐คท
hey guys
I want to get started on learning java to make Minecraft plugins
How do i get started as i have no knowledge about programming
Thanks
?learn-java
Online Courses:
Online courses are also great for learning java. Some websites that offer them are:
- Coursera - Free unless you want a certificate
- PluralSight - Great courses from what I've seen. Mostly Paid
- Udemy - Never used them myself but they seem to all or at least most be paid.
My first ever course was one from Coursera. - I can say it was pretty good at introducing me to the programming world as a whole not just java.
Oracle Docs:
Oracle docs can help a lot at learning and understanding java:
- Start with this,
- Breeze through this (skipping stuff that doesn't seem relevant like bitwise operators),
- Hit this.
They're the first three from this larger thing which you should definitely go through overall. But those three should be enough for slightly better understanding of what is happening here without feeling like a huge time sink.
That one is a small part of this larger site wherein "Essential Java Classes" and "Collections" also have good useful stuff
Other services:
Some other cool services that will help you learn java are:
As you can see there are plenty of good ways to learn as long as you're willing to invest the time. Have fun learning!
huh... apparently with ProtocolSupport (that's what my dev server uses), Paper's Bukkit.broadcast() doesn't work if the client is using a version below latest ๐ฅฒ
not sure if its the same with Via*
Bukkit.broadcast(Component)
guess what Bukkit.broadcast does lol
well it also checks for bukkit.broadcast.user perm
oh
wait then why
was the perm
denied
by default it's true so if you're denying everything that's on you lmao
wdym
idk how to deny it
i dont think i changed anything
i didn't deny in luckperms
what about Server#sendMessage(Component)?
it's basically broadcast without permission check
using 1.16.4 api
for someone else
.4?
why lmao
like adventure was introduced in .5 I believe?
so it's not going to work at all in .4
on accident
ye but on my dev server i had that happen so i asked here anyways
ig my perms are just messed up
idk why
๐ค
skill issue
speaking of skill
my #role-request still hasn't been reviewed ๐ฅฒ
idk how long its been now lol
lol
but yeah anyway server#broadcast and server#sendmessage are no different other than the permission check so
your loss
no
ok
an extraterrestrial being wiped all my memory regarding luckperms
Hello there!
I want to ask you for help, or for advice.
I am trying to solve the problem with xaero's minimap mod.
I am using a bunch of three paper servers - bungeecord (waterfall).
And the mod does not work correctly in any mode (except manual). It just do not detect the correct "world" map.
So I have:
Server Main: overworld, nether, the End,
Server Factory: overworld, nether
Server Creative: overworld
Mod modes:
"World Spawn" is not always correct, idk how it detects the dimensions.
"Single" - obviously not suitable for a bundle of several servers.
"Server" - not suitable because there is no mod on the server.
So... the only solution that seems fine to me so far is to change the dimension ID of the worlds so they would be unique. But how? Is it possible? Is it possible to change the default dimension ID of vanilla worlds?
Dimessions ID like minecraft:overworld, minecraft:nether, minecraft:the_end, and I guess (I only guess, i do not know) it should solve the issue. So if I would have minecraft:main_overworld, it defenitely will be different from minecraft:factory_overworld, and I hope the problem would be solved. But.. not sure.
Or maybe someone also faced such a problem and already found a solution.
Here's my thread with the developer where I suggested a new way to choose a map and we're talking about dimension ID: https://www.curseforge.com/minecraft/mc-mods/xaeros-world-map/issues/408
I'll be glad to hear any tips and words.
Thanks โค๏ธ
Does anyone know if theres a way to get channrls back after deleted??
no way to recover deleted channels or messages
discord actually deletes messages forever
Nope...it doesn't iirc
they definitely do
if they don't then they're I'm huge trouble in regards to GDPR
s/I'm/in
that's a discord mobile moment
ahhh
guess what os my phone has
Windows Mobile
oo...but the attachments are still accessible once they are deleted
Symbian
looking for a way to generate a family tree, using java (or some web API). ive explored some options but couldn't really find any nice ones
anyone have any tips?
Well... it keeps the data for a few years in correspondence with federal laws. Just removes it from public view.
the DAR experiment in discord (only available to certain certified moderators, so not me ._.) Lets you delete a message, caches it on discord's servers, and reports it.
If a message is not reported before it is deleted it is incredibly hard for discord to get access to it, since even though they have the records, even internally most people can't access them
Are there any libraries like slimjar that are allowed on spigot?
Spigot doesn't allow alot of things. If its useful spigot probably doesn't allow it.
Ok, thank you for your answer, someone with a proper answer - please help ๐
Spigot requires the jar to be able to function without internet connection so given that "slimjar" downloads dependencies I would assume it's not allowed.
does it actually?
Yeah that's why there are always arguments about drms
where does it say that the plugin must not need an internet connection to work?
Also @modern coral stop self botting
SlimJar is allowed
Read the obfuscation/drm section of the resource guidelines
good, now the next question is, is it working?
That's for premium plugins only
Well, that is a very good question
Next one?
Jokes aside, it should be, the only issue is the repo
ah were we not talking about premium?
well, I should have mentioned that 
I'll take a look a bit later
dope
Let me rephrase that: Is there a library like slimjar allowed for premium plugins on spigot?
I assumed we were talking a out premium resources. But most of the rules apply to free resources as well.
kicked them
Replied to wrong user, sorry.
ugh. what? it says
Premium Resource Guidelines
It is allowed, but you have to provide an alternative manual way to add the libs
PDM
Yeah, all you need is to copy the files it downloads zip them and put on dropbox or something, a place where they can manually download it
PDM. :kek:
good
"[without] access to a specific server" doesn't mean "without an internet connection", especially since that's specifically talking about licensing systems
Without internet connection means the drm won't work and the plugin isn't allowed to disable because it has no connection.
Thus has to work with no internet connection.
yes, but downloading a file has nothing to do with licensing
that is specifically about licensing
If it can't download the dependency then the jar won't work...
Ok, thanks for help
but not due to DRM
@inner umbra
that point talks about DRM implementation
You know whats funny, matt? ๐คฃ
They need internet to download the files manually LOL
That guideline is pretty outdated and kind of not exactly "requirements"
I mean by that logic Spigot's own "library loader" which was made specifically for this, wouldn't be allowed
It's in that section of the guidelines but it's meant to be the whole resource. It was already argued about in the spigot discord.
^ lol
Yeah don't know how they would reword the guidelines.
Then they need to revisit the guidelines because that's a loophole
There is a lot lol.
It's as simple as, you're allowed to use it as long as you provide the libs separately for people to download
On another note, BossShopPro is DISGUSTING
Yeah the guidelines are hypocritical and spigot makes some users follow certains ones but not others.
Welcome to spigot
Like leaking and reselling resources xD specific rules against it but there are multiples users not banned yet.
have you reported them?
Yeap
It was years ago. But it's still bs they aren't banned.
can you link any?
Why change channel? 
bcz we can
Was gonna change during the guidelines discussion but it was part of the question asked
Is 1.8.8 compatible with java 11?
not spigot
spigot limited it to java 8 but paper made it compatible with up to 11 I believe
ah, the classic
java 17 works
yes
nevver tested. was just told
idk if this is related to higher java versions
but
ยฏ_(ใ)_/ยฏ
either that or windows terminal
nope it happens on java 8 too
I can run 1.8.8 on Java 17, some netty errors but iirc there's a workaround for it.
Wouldn't advise doing a workaround on that though.
is it this?
I'm pretty sure that error you have can be ignored. I've seen that for years.
ah alr
this seems to be the only error that I see though (the other one mentioned above occurs with java 8 too)
yeah it works fine for the most part
true
yes
just ran this for testing ๐
I usually see this when something is using reflection to change static variables.
btw while we're talking about old versions
I just dockerize crap when I'm forced to test on older versions.
wait what wdym
I spin up a docker that uses an older JDK version.
is it legally possible to get 1.7 and below? since of that DMCA thing
What about it?
u can control the java version with intellij too
Yeah, that works too.
I already use Docker for so much other stuff now that I just use that instead.
oh
what do u use docker for? since it seems like its just a container which lets you create reproducible and/or separate environments, but I'm not sure how many uses there are for that
docker is the new cd
Lots of database stuff, class-related things. Mainly things I won't keep long term and I don't want random crap on my PC. It's already slow enough.
oh
cd?
compact disc
Planning to wipe my PC sooner or later to try and get it running faster again. I'm too lazy to dissect it manually at this point. Just going to back it all up and wipe all the drives.
gotta just reinstall windows in docker for efficiency
oh hi nicole
Anyone seen this yet? I thought it was an interesting read https://gist.github.com/NEZNAMY/bebcaf3c3271d7464cf03152f50d48c5
Why I don't want to work on TAB anymore - the rise and inevitable fall (my full story) - end.md
what
because I am simply not welcome there
luckperms
I can 100% assure you that is not the case
there was this one time he just kept joining and leaving over and over for like 2 minutes lmao
discord servers are annoying as a plugin developer
paid + source to buyers is the best plugin model IMO, but it will never work because users will immediately leak source
Going back to forums for support would be good... discord is an information black hole and the search function sucks, so plugin devs are stuck repeatedly answering the same question over and over.
One thing he's right, the community sucks and is definitely toxic
it's even worse for stuff like PacketEvents, since how do you sell a dependency? (plus no one follows packetevent's license which is theft)
I'd sure love to know what IntelliJ is currently doing
I have 24 cpu threads and it's eating over half of them
probs indexing
The best is pay for support, free and open source plugin
That way you can still get some compensation for your work, and the community can contribute and help you to add things and fix things
is PacketEvents not free? and having GPL infect your other code is pretty bullshit for a library, this is why LGPL exists
Do you think people will pay for support for a free plugin?
people do for Guilds and Citizens and MMOItems and a bunch of other plugins
Well, yea, but you said "free" and I assumed you meant literally free xd
ah lol
that would be kinda weird, libraries are generally completely free so that they can gain adoption
Maybe papi wasnt a good example since it is a plugin, but also a library
Or other free plugins
But I see what you mean
I mean, yeah, pretty sure Citizens and PlotSquared both moved to pay for support models after they were initially completely free
Ye
so yeah, people do pay for support lmao
is the moral of the story
and it keeps the code free and available for people to contribute to and bugfix and test
oh man it's great
Hm?
I know, but as I said, I initially thought you were talking about a free plugin, not paid. I also have a paid plugin that is OS
And that can be worked out
Hi, I was wondering if anyone knew a way to figure out which email is associated with a Discord account? I'm trying to get into my old one but don't remember the email associated.
Discord support has been of no help to me.
Hello?
Anyone?
you at the wrong place brother
?not-discord
Looking for discord support?
HelpChat is a Minecraft plugin and development support server and is not affiliated with discord in any way.
If you require support from discord, we recommend you to visit their official support website at https://support.discord.com
On this website, you can read their FAQs, or open a support ticket if necessary.
any devs willing to be part of my team for a server
you wait for someone who wants to do it to dm you
and yeah you just take it from there :P
dw
how so?
what stops anyone from asking help for a paid support plugin here?
I am sure you won't check every single help requests if the plugin he's asking for help is paid or not
idk lol
no. but developers can request us to not help them and send them to them instead
its something we do. leaderheads is a good example
yes there's other people that might not be aware of this but for the most part when we notice someone asking for help with those plugins we try to send them and explain to the others trying to help why.
fair enough.
also another thing is, many times people just don't get support with paid plugins because few have them so our experience with them is most of the times 0. so they just end up either going to the developer to ask or figuring it out on their own.
ye makes sense
Citizens gives support to everyone
but they used to only give support to people that paid right? bcz I remember something about this
I Mean sure but the thing people keep forgetting, is that most people don't know how to even compile a jar.
and you'd answer that saying something like "but the os people will do it for them", but I can find many requests of people asking to get someone to compile a jar and not getting an answer
impossible*
you literally can't compile. not even the free resources.
because they have some libraries that are private
but you need to compile
I had to fix epic heads support for deluxemenus, just ended up removing it completely
we never got anyone asking for it back. we knew it was most likely not used.
and we just support base64 heads and texture links.
had to remove it, bcz the api was only in the jar itself, and had to compile the jar to get the latest changes
I personally say just pay me for all the support I gave
was*
only started helping last week again bcz free week
but you can probably count on a hand all the times i gave support in the past 4-5 months before that
kek
i need someone to add me to the friends in steam so ill do that Activity Feed achievement.. so.. can somebody help me?..
Seeking a dev to help setup, create, and configure a server setup for my serverโฆ. Paid
K
What's your budget?
A grand!
Touch grass
I wouldnt
how do i make an item have certain uses, so like after i right clicked it 3 times it disappears
uh so... this plugin has this in their spigot page:
Any ideas how th he achieved this?
Like, limiting the ticks the plugin will use to perform actions, etc...
it's seems quite good for performance, etc.
if (tickingTooMuch()) dont()
quite sus matt, expected more from you 
ye well can't find exactly where he limits it
maybe I am just blind, no idea
lol
My parents say the same thing
if (plugin.getServer().getLogger().warning(im.getPersistentDataContainer().get("uses", PersistentDataType.INTEGER).toString()).equals("1")){
}``` why is this wrong
can someone help
ugh. Logger#warning() returns void?
i cant compile it
well of course? because you're trying to do void#toString()? and then comparing that to "1"
one sec
if (plugin.getServer().getLogger().warning(im.getPersistentDataContainer().get(new NamespacedKey(plugin, "uses", 1), PersistentDataType.INTEGER)).equals(1)){
data.set(new NamespacedKey(getPlugin(), "uses"), PersistentDataType.INTEGER, 2);
itemInMainHand.setItemMeta(im);
}```
here i rewrote it
and still doesnt work
why are you using the logger there?
can't tell if I'm being trolled or not rn.
you realise you're comparing the output from the warning method, right? you're trying to log in the if check.
if (im.getPersistentDataContainer().get(new NamespacedKey(plugin, "uses", 1), PersistentDataType.INTEGER).equals(1)){
data.set(new NamespacedKey(getPlugin(), "uses"), PersistentDataType.INTEGER, 2);
itemInMainHand.setItemMeta(im);
}``` idk if I removed the correct () there but
you're missing a ) I believe
where you create the namespaced key
yeah idk what you've done there. its all a mess lol
nop the brackets are there
where exactly?
if (im.getPersistentDataContainer().get(new NamespacedKey(plugin, "uses", 1**)**, PersistentDataType.INTEGER).equals(1))
oh
bruh
there's 2 constructors for NamespacedKey
im dumb
feels bad, but I actually did expect more ๐ฆ
I dont get how people can request a free service and the say-** at least 2-3 years of java**
ikr
Hey, how can i check, if a directory is a world?
So: In the server folder is a empty folder and a folder with world data.
How can i check if the empty folder is not a world, and the other with the world data is a world?
well
I can think of 2 ways
1.- You can check if the folder you looking at is at the correct directory
take in mind too that in bukkit.yml you can change the directory where the default worlds can be
and 2 is that you may check if the folder has certain files that are how a world is supposed to be
EXCEPTION_ACCESS_VIOLATION 
Bukkit.getWorlds -> cache world.getWorldFolder -> check if folder is in cache
Yes Because of that i use this code File rootFolder = new File(Bukkit.getServer().getWorldContainer().getAbsolutePath());
Thanks for the help
uh
you can skip 50% of that and do File root = Bukkit.getWorldContainer();
Minecraft color codes > adventure
???
bro what
they're just arbitrary and limiting assignments
you only want 14 colors forever?
senseiju is a big troll
the only reason hex works is because of adventure
he got you guys
nah i just hate doing lore and stuff with it
That's not a "color code"
minimessage?
minimessage
oh boy
kek
it's a way to write components without wanting to die
lmao
fun fact. they do recommend using components for hardcoded stuff.
well yeah cause parsing minimessage every time kinda sucks
by they I mean kyori
It's just json right?
uh, as a storage medium yeah, but the way we interact with it as developers, definitely not lmao
that's why you do a little i18n and make a file with all your minimessages in ๐
whats i18n
no idea wha i18n is
ye ur reference got lost in translation brother
Internationalization
internationalization
there's 18 letters between the i and n
kinda like k8s for kubernetes
so can my name be S6u
sure?
its s6u from now on
Oh thx
LMAO
Literally this (https://mf.mattstudios.me/) and this:
public static String color(String message) {
Pattern pattern = Pattern.compile("#[a-fA-F0-9]{6}");
Matcher matcher = pattern.matcher(message);
while (matcher.find()) {
String color = message.substring(matcher.start(), matcher.end());
message = message.replace(color, ChatColor.of(color) + "");
matcher = pattern.matcher(message);
}
return ChatColor.translateAlternateColorCodes('&', message);
}
is all you need
rip performance
Ah yes the lovely ยงxยงfยงfยงfยงfยงfยงf
Matcher#replaceAll(Function<MatchResult, String>)๐
For java 16+ ```java
private Pattern hexPattern = Pattern.compile("#([A-Fa-f0-9]){6}");
public String hexColor(String s) {
/* Portion not needed
if (s == null)
return s;
if (s.isEmpty())
return s;
*/
Matcher matcher = hexPattern.matcher(s);
return matcher.replaceAll(color -> ChatColor.of(color.group()).toString());
}
sounds like someone needs to write a MiniMessage to Java component converter
or maybe even something that happens during compile time
to convert it in code
Try invalidating IntelliJ cache and try again...
you need to use gradle
ah yes not using gradle is why maven isn't working
thanks, i will look how gradle works
what do i need to do now? I had a normal java project and added maven to it. (intellij)
Whats the next step?
*solved, thanks for gradle
I have an issue, and i think it was expectable. When i export (build artifacts) the plugin, the plugin.yml ist not contained in the JAR (since using Gradle)
Nowhere. I put it in src, no. I put it in src/main/java, no. I put it in src/resources, still no. Can anyone help?
src/main/resources
and make sure ur running gradle build
Yes it was there too, but didn't work. I came to an alternate solution. I manually selected the plugin.yml at the artifacts
i can build with gradle, WHAT?
thanks
touch grass
I know is long error https://pastebin.com/pacgtanK (is not my plugin some do like this). But want to here what other devs thing of this behaviour of a plugin?
He self say this is normal, he say this to me "That is due to Eventiful's way of extracting all event handler methods into its own optimized version of them.".
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
I personally wonยดt use it on a real server.
hi
heya people
I made a server host and I was wondering what you guys think of it
heres the link
how i can display this as a list?
(this isnt an ad im asking for advice on how to improve it)
reports:
ce639da8-f8e0-3290-960b-1dd30b3e3dea:
2022/04/21 14;07;38:
reason: Flamming
reported-by: Xodesito
1952eb20-5d31-347a-8712-c3bf50b51ffa:
2022/05/01 13;26;06:
reason: Hacking
reported-by: Xodetest
2022/05/01 13;33;54:
reason: Hacking
reported-by: Xodetest
2022/05/01 13;39;10:
reason: Hacking
reported-by: Xodetest
2022/05/01 13;39;44:
reason: Hacking
reported-by: Xodetest
2022/05/01 13;40;32:
reason: Hacking
reported-by: Xodetest
2022/05/01 13;40;42:
reason: Hacking
reported-by: Xodetest
2022/05/01 13;51;07:
reason: Hacking
reported-by: Xodetest
I mean, what I want to do is that when you put the command /check <player> you get a list with the yml reports
you could make a custom object that stores date, reason, and who reproted and make it serializable with the annotation (forgot the name) bukkit offers. then you can just use:
@Nullable @Contract
List<?> getList(@NotNull String path, @Nullable List def)```
Gets the requested List by path, returning a default value if not found.
If the List does not exist then the specified default value will returned regardless of if a default has been identified in the root Configuration.
path - Path of the List to get.
def - The default value to return if the path is not found or is not a List.
Requested List.
how i can do that xd
why static?
where is deluxetags
why so many questions?
dead
Why question his questions?
oof
why question my question questioning his question?
I have a .py file, how do I edit the code?
right click, open with ... and chose a text editor
like sublime text, notepad++ or whatever you use
right click and choose print, then take to your nearest office supply store and ask them to scan a pdf of your paper
then find an online website that does pdf to docx conversions and convert to a docx file
after that just hop into your favorite version of word and type away :)
||please do not do this||
how to create a purchase permit For example if there is not permission to buy.grades. you can't buy something on deluxemenu
Can someone say what i'm doing wrong?:
public void check() throws SQLException {
PreparedStatement statement = instance.getMySQLModule().getConnection().prepareStatement("CREATE TABLE IF NOT EXISTS settings (uuid varchar(200))");
statement.execute();
}
public boolean getUserRegistered(UUID uuid) throws SQLException {
check();
PreparedStatement st = instance.getMySQLModule().getConnection().prepareStatement("SELECT `uuid` FROM `settings` WHERE `uuid` = ?");
st.setString(1, uuid.toString());
ResultSet rs = st.executeQuery();
while (rs.next()) {
return true;
}
setUserDefaults(uuid);
return false;
}
public void setUserDefaults(UUID uuid) throws SQLException {
PreparedStatement st1 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`, `hidemode`) VALUES(?, false)");
st1.setString(1, uuid.toString());
PreparedStatement st2 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`, `fly`) VALUES(?, false)");
st2.setString(1, uuid.toString());
PreparedStatement st3 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`, `silentlobby`) VALUES(?, false)");
st3.setString(1, uuid.toString());
PreparedStatement st4 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`, `vanish`) VALUES(?, false)");
st4.setString(1, uuid.toString());
}
In mysql there is only one column, called uuid
well, you have to call Statement#executeUpdate for setUserDefaults
yes, i did it now and i removed check
now i dont know how i should create a table
or is check not wrong?
(uuid, hidemode) in this statement, you are targeting two columns
and as you said, your database has only one column, uuid
i want to insert information in the column 'uuid'
what method do i need?
i need it like this:
UUID: hideMode (true or false)
Do i need to create another table in table called uuid?
you want multiple columns
uuid varchar(36) | hidemode boolean | fly boolean | silentlobby boolean | vanish booolean
no, each row will contain an uuid and 4 booleans
1-2-3-4 | true | true | false | true
2-3-4-5 | false | false | true | false
yeah like this
then create a table with all the columns you need
did it like that now, and now and in mysql it looks like this:
uuid | hidemode | fly | silentlobby | vanish
public void check() throws SQLException {
PreparedStatement statement = instance.getMySQLModule().getConnection().prepareStatement("CREATE TABLE IF NOT EXISTS settings (uuid varchar(200), hidemode int, fly boolean, silentlobby boolean, vanish boolean)");
statement.execute();
}
public boolean getUserRegistered(UUID uuid) throws SQLException {
check();
PreparedStatement st = instance.getMySQLModule().getConnection().prepareStatement("SELECT `uuid` FROM `settings` WHERE `uuid` = ?");
st.setString(1, uuid.toString());
ResultSet rs = st.executeQuery();
while (rs.next()) {
return true;
}
setUserDefaults(uuid);
return false;
}
public void setUserDefaults(UUID uuid) throws SQLException {
PreparedStatement st1 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`,`hidemode`) VALUES (?,false)");
st1.setString(1, uuid.toString());
PreparedStatement st2 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`,`fly`) VALUES (?,false)");
st2.setString(1, uuid.toString());
PreparedStatement st3 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`,`silentlobby`) VALUES (?,false)");
st3.setString(1, uuid.toString());
PreparedStatement st4 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`,`vanish`) VALUES (?,false)");
st4.setString(1, uuid.toString());
}
But, they dont have any value
Like this?
PreparedStatement st = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO settings (uuid,hidemode, 'etc.. etc..) VALUES (?,false, etc. etc.)");
PreparedStatement st1 = instance.getMySQLModule().getConnection().prepareStatement("INSERT INTO `settings` (`uuid`,`hidemode`,`fly`,`silentlobby`,`vanish`) VALUES (?, 0, false, false, false)");
st1.setString(1, uuid.toString());
This is the code now
ill try it
oh im dumb
the statement is not executed
Its working, but its inserting uuid 2 times.
Im trying to get my artifacts published to a local reposilite repo i setup, but when using the publish task in gradle nothing is happening... This is how i setup the my publishing repo in gradle:
publishing {
repositories {
maven {
name = ""
url = uri("http://local-repo:8080/releases")
credentials {
username = project.properties["user"]!! as String
password = project.properties["pass"]!! as String
}
authentication {
create<BasicAuthentication>("basic")
}
}
}
}
When i run ./gradlew publish nothing happens, no errors, nothing, it just completes immediately, any help?
Check if the user exists before updating
@humble silo afaik you need to specify what artifacts you want to upload
lol, yes ive done that
I just didnt want to paste that whole thing in, but i can promise ive done that
I had it working pushing to maven central just fine
But then not using sonatype and using gradlew publish instead doesnt work
Ah
Is there a different task than publish i can use??
I can literally pass in the wrong uri for the repo and it still completes, i think its litearlly just not doing anything when i run the task...
God i hate gradle sometimes, it gave me no errors but then when i set allow insecure protocols to true it works just fine.... fun
user problem
I wanted to ask about that, but I was getting ready 
lol, ya ty for the help
Next time try to use gradle task --stacktrance, maybe that will help
I did, i even went the extra mile and did --full-stacktrace and it still said nothing... really weird
Uh uh
check the reposilite docs they're amazing
Anyone familiar with OVH Networking / Networking in general?
I got this ping issue with a machine of mine; https://youtu.be/RdjPJVrgPqs
My location is the United Kingdom, and the machine's location is Poland.
interesting
are you using the domain or ip
I have an oracle cloud VM and it also has that issue, it also takez like 3-4 seconds to connect
This seems like a router issue.
oh wait no its not-
otherwise the other servers wouldnt work either.
For the multiplayer menu?
*If so, I'm using the direct ip. (not domain)
yea
^
that's why
minecraft is funky, point a domian towards them and join via domain
Just to clarify- I'm using the IP. (ie: 127.0.0.1:4824)
Yes.
I am so confused- since when was a domain faster?
its always been
Emmm.
there isnt checks on domains versus ips
You're tripping- I just spun-up another bungee server on a different machine and I pings instantly.
Top is the same as before, the other is one on another machine.
O.o
set a domain name and it'll load faster
the way minecraft works is weird with dns resolving
That doesn't explain the results of my experiment above.
theres no definite answer, thats the solution to fix it though.
Hm.
Sam likes boys tho
In the publishing section of my gradle build file i require a username and password, however the publish task will only get called through github actions where the username and password are stored as secrets and then passed in through args. Since i dont provide these on my local system, anytime i try to run another task it throws an error because the publishing thing is re-evaluated and it cant find a username/password. What is the best way to deal with this? Heres my build file: https://paste.helpch.at/epidizizih.js (ignore the nexus publish plugin, i forgot to take that out)
ah yes
uh what I do when the properties are missing is just return
throwing an exception seems a bit eh, unnecessarily tough, you're breaking the entire build process
really? Dang, alr, is there a good check for it? Or do i just have to do it manually?
as? String ?: return@credentials or smth like that
lemme check how I got it exactly
yeah just that @humble silo
Does GSON "instantiate" classes in a way that make lazy properties no longer work? (ex someLazyProperty$delegate is null)
even when marked as transient... ๐ค
The fix was to just do copy(), but I'm curious why gson broke lazy
it all depends on what lazy properties are compiled to I guess
you probably already know this but the reflective adapter basically scrapes the entire class in search for all and every field in a way to be invisible to you, it tries to work like magic, which could be a problem
the same applies when it reconstructs them back, it creates an instance (through Unsafe, without calling any constructor, so basically every reference type is null, every numeric type is 0 etc (you can disable Unsafe usage but, I don't know what it does then lol)) and then writes to every field based on their name
it's basically Java's serialization (because it does that same thing) but for JSON and it can be absolutely terrible sometimes, check the section titled "the underlying mistake" https://openjdk.java.net/projects/amber/design-notes/towards-better-serialization
without calling any constructor, so basically every reference type is
null
but if I have ```kt
class Testing {
@Transient
var test: String? = null
fun test() {
println(test)
}
init {
test = "Abc"
}
}
```and even if I replace test with a class that implements Runnable (to sorta represent a lazy), gson still deserializes the class successfully
(btw here's the decompiled version of SpigetFileJson: https://pastes.dev/5h46StR4M6 - removed some stuff)
here's Testing: https://pastes.dev/9hhyORXcWR with the runnable
and the java decompiled version of it: https://pastes.dev/wbKsgSZ3cK
and both of them initialize the realSize$delegate/test variable in the constructor, so why would only one of them have the variable initialized? ๐ค
hm
I mean when marked as transient it makes sense for it to not be reconstructed, since there is no data to create the field from
I'm trying to think why it is being written, lol
Emily you see my code from earlier?
I saw something but wasn't able to read it
Uh if I am already using an SQL database for example, is worth caching it and updating the database every x minutes or should I just send direct requests to it when needed?
how often are you sending those requests
and how accurate/reliable do you need the data to be
Well, Requests highly depend on yhe player usage but it can be quite a lot. And wdym with reliable/accurate?
Like, up to date?
yeah. since if you only update every few minutes, if the server crashes or something there might be some data loss.
Cant I just sync data on disable?
Also, would like to mention this would be for a public plugin xd
If that changes anything
even if it syncs on disable your machine can still crash hard enough to ignore it
Eh I am just scared its too many requests, since its a public plugin, I have no idea of the usage to expect
wait are all the plugins across all the servers making requests to a single database
Wdym, I assume thats up to the user to decide?
no im asking if you were going to have one database that all of your public plugins talk to
Oh no.
Lol
imo dont overcomplicate for now
just make requests as needed
use a thread pool manager like hikaricp and you should be fine
you dont know what the performance impacts will be like (if any) so there's no reason to spend effort fixing a potentially nonexistent problem
Fair enough, just want to make sure so that I dont need to change the whole system afterwards
hopefully you design it in a way where you've abstracted this (database interactions) away enough to not have to redesign everything even if you do end up needing caching
Right so I did a bit of research, by default gson will use the no-args constructor if it's present, if not then it will use Unsafe
In your examples above, your Testing class doesn't have an explicit constructor, so the compiler generates a public no-args one, and that's what gson is using, your Spigetwhatever does have a constructor that takes parameters, means gson can't call it (it doesn't know what to pass) and uses Unsafe to create an instance without calling any constructor, so anything that isn't (de)serialized by gson will stay null/0/false
You can register your own InstanceCreator in the gsonbuilder though to tell it how to.. well guess what it does
What if I do both? Aka I cache it, but use the cache whenever I need just data and use requests to whenever I want to modify something
Idk
Cache fetched results, execute updates
Just guessing rn
Ye but what about crashes like previously mentioned
Confused rn
he's saying this
cache after a read but dont wait to update the db on write
Ok
you fetch the data
cache it
whenever you modify something, update the database, like literally update https://www.w3schools.com/SQL/sql_update.asp
When you update, either invalidate related cached values or update the values in the cache directly
Okay thx
What do you guys use to query data from a minecraft server (REST API) ?
I use https://github.com/phybros/servertap
(Just wondering if they're any other options)
ohhh
ohh that makes sense
ty!!!!!!
yep tested with a constructor with a parameter and it is null!
Looking for discord support?
HelpChat is a Minecraft plugin and development support server and is not affiliated with discord in any way.
If you require support from discord, we recommend you to visit their official support website at https://support.discord.com
On this website, you can read their FAQs, or open a support ticket if necessary.
why is there a weird border around the dividers in chat? https://imgur.com/a/H8C0ZMg
the image I am using is png, and has a completely transparent background
U might wanna recheck it- make sure it works normally aswell, (without the plugin)
public void rClickEvent(PlayerInteractEvent e){
if (e.getAction() == Action.RIGHT_CLICK_AIR || e.getAction() == Action.RIGHT_CLICK_BLOCK){
if (e.getPlayer().getInventory().getItemInMainHand().equals(new ItemStack(Material.GOLD_INGOT))){
e.getPlayer().openInventory(Gui);
}
}
}
Does anybody know why it doesn't work? When I click gold ingot, nothing happens
you need to compare item types
get the type of the item and compare them with Material.GOLD_INGOT
public void rClickEvent(PlayerInteractEvent e){
if (e.getAction() == Action.RIGHT_CLICK_AIR || e.getAction() == Action.RIGHT_CLICK_BLOCK){
if (e.getPlayer().getInventory().getItemInMainHand().getType().equals(Material.GOLD_INGOT)){
e.getPlayer().openInventory(Gui);
}
}
}
still doesn't work
and with == as I remember, I tried it yesterday
post the entire class
also please do something like e.getPlayer.sendMessage("test") at the start of the onClick method
cus then we can tell if your listening to the event properly
paste your code in that pastebin
go ham
It just makes it easier for us to see how your code is formatted, and it also doesn't flood this channel
yeah every method thats supposed to listen to the event requires the @EventHandler annotation.
a method doesnt need it if your passing the event result through.
I can't put more than one event in only one method under @eventhandler?
Due to the way it works no
The class can have multiple methods with multiple annotations, but one annotation won't gather all methods in the class
you cannot, but what you want to do may be possible using just one event
and other stuff stored elsewhere, just depends what you would want to do
What could be the best way to read/save discord embeds (JDA), so users could easily customize them embeds as they want from some file?
I'd say json using something like a custom serializer with SpongePowered/Configurate
I need deluxemenus for 1.8.8 does someone know best version?
Anyone know the waving flag unicode?
@tame bane \๐ณ๏ธ?
French flag joke
1.8.8
1.12.2
1.16.5
1.17.1
1.18.1
v1.10.5
v1.13.4 - Latest
v1.13.4 - Latest
v1.13.4 - Latest
1.13.4 - Latest
He was trying to find out about a waving flag in a MC server, I was pretty sure it was one of those resourcePack things, and not at all a unicode character
https://paste.helpch.at/vayoxoximu
Anyone know why this error occurs when running gradle build?
build.gradle: https://github.com/dkim19375/DkimBukkitCore/blob/master/build.gradle
I fucking love all the warning comments, classic groovy lmao
this was before i switched to kts ยฏ_(ใ)_/ยฏ
As for your issue, could it be java version? Idk if that version requires java 17 or not
WG 7.0.7 uses Java 16/17 (can't remember exactly), as the Minecraft versions it works on run on those too
I'm looking for this flag emoji its a unicode character I know for a fact its just trouble me finding it
Found it!
โ
could anybody who's familiar with sql help me? ๐
What's up?
I got it sorted out, thanks!
Found a nice site to share your code with a beautiful design
haha. cool
nope, but this has more customizability...
noyesno
smh
Ohh this is clean
Because everyone loves when people send code in image
yeah lol
I was thinking, maybe for previews on website
but even then the use case would be so small
like you don't actually want to put images in documentation
so its like just for landing pages or whatever
I dont know about as image-form tho, idk it seems like you would want people to always be able to copy
when I talk about landing pages I Just mean those cheesy things to show they know how to code and all they do is like make a variable and set it to company name
or like spigot signatures
i love how Float.parseFloat(String) doesnt accept "4" but Double.parseDouble(String) does.
like there's loads of people that have something like ```kt
class User {
var name
}
fun main() {
val user = User()
user.name = "MyName"
}``` or some shitty thing like this
I feel like that's what this is useful for. lol. make it look nicer
yep
I like code screenshots, I think sometimes itโs easier to demonstrate an example
and hey, if you need the code, Safari on Mac letโs you copy text from an image
that's does not make the code beautiful sadly
unfortunately your opinion is incorrect
nope
changing color theme doesn't make your code less shit
I lol'ed
L'edOL?
Yes, that
Donโt mind if I just copy that code real quick
I do
I wonder if GitHub copilot could right that for me hmm
that makes me want to vomit

whatโs so bad about it
too many things
emily is actually just allergic to the color purple
bro no
and macos window decorations lmao
I love purples!
yeah me too
like they're legit my favorite colors, all kinds of shades of purples
is my code making you want to vomit
yes
:(
the C-style variable declaration certainly doesn't help
the what
I dont know a single fuck about C
the syntax ofc
ik about its existance
it makes it a lot harder to read your function, since you have to keep referencing the top of it to know what things are
as opposed to the normal way, which you see a variable get created, then used
it's very easy to logically follow what things are happening
here have more
so what if you made makeDirIfNotExists a vararg function
make it varargs
took me 20 seconds to understand that function name
call it once
guess what mkdirs does
so instead of calling it like 10 times
you call it once at the end with all the variables you created
ahh makes sense now
why the stream stuff uh
the enter key does exist
ยฏ_(ใ)_/ยฏ
why are you checking if it exists or not ๐ฅฒ
old file api
nio 
confounded
btw. if a parent directory of the folder you're creating doesn't exist it will error out if you use mkdir
now what

you should just do this instead:
private void makeDirsIfNotExist(File file1) {
file1.mkdirs();
}
private void makeDirsIfNotExist(File file1, File file2) {
file1.mkdirs();
file2.mkdirs();
}
private void makeDirsIfNotExist(File file1, File file2, File file3) {
file1.mkdirs();
file2.mkdirs();
file3.mkdirs();
}
private void makeDirsIfNotExist(File file1, File file2, File file3, File file4) {
file1.mkdirs();
file2.mkdirs();
file3.mkdirs();
file4.mkdirs();
}
// ETC...```
LMAO
and before you ask, yes I've seen code like this
lmao
I don't unfortunately (I should probably say fortunately) remember where
Create a compiler plugin to auto generate that at compile time 


why?
Why not?
true
aye tab has support for bombardy's krypton
you can't break blocks but yeah
yeah. bcz bombardy added it xD
yeah commented on the issue of right clicking on their issue tracker
You don't actually need to break blocks in minecraft
try if (this.source == null || this.source.isClosed())
instead of only checking if it's closed
you cannot pull a method from a null object.
NPE:
How to compare getEntity with an arrow properly?
"2" doesn't show up when I shoot with a bow
You are now comparing the entity and the entity type which doesn't make much sense. You should compare the entity type and the type of the entity (e.getEntity).
So using java if(e.getEntity().getType() == EntityType.ARROW){ should work
yes, thank you!
How can I remove the arrow entity as soon as it hits a block?
ProjectileHitEvent#getEntity#remove
funny ai does a funny
https://i.imgur.com/JJCDoR9.png
why does 1.16 have a java version limit ๐
-DPaper.IgnoreJavaVersion=true
๐
oh

