#dev-general
1 messages · Page 34 of 1
oh
why do i have two tiers
you can give one to me
i don't think i can, unfortunately
buildtools be like "does this look correct?"
Hey! You're about to run the following command. Does it look correct?
C:\Users\mfnal\.jdks\openjdk-18.0.1.1\bin\java.exe -Xms512M -cp C:\Users\mfnal\IdeaProjects\buildtools3\target\classes;C:\Users\mfnal\.m2\repository\com\custardsource\dybdob\java-diff-utils-copy\1.0.5\java-diff-utils-copy-1.0.5.jar;C:\Users\mfnal\.m2\repository\com\google\guava\guava\31.0.1-jre\guava-31.0.1-jre.jar;C:\Users\mfnal\.m2\repository\com\google\guava\failureaccess\1.0.1\failureaccess-1.0.1.jar;C:\Users\mfnal\.m2\repository\com\google\guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar;C:\Users\mfnal\.m2\repository\com\google\code\findbugs\jsr305\3.0.2\jsr305-3.0.2.jar;C:\Users\mfnal\.m2\repository\org\checkerframework\checker-qual\3.12.0\checker-qual-3.12.0.jar;C:\Users\mfnal\.m2\repository\com\google\errorprone\error_prone_annotations\2.7.1\error_prone_annotations-2.7.1.jar;C:\Users\mfnal\.m2\repository\com\google\j2objc\j2objc-annotations\1.3\j2objc-annotations-1.3.jar;C:\Users\mfnal\.m2\repository\net\sf\jopt-simple\jopt-simple\5.0.4\jopt-simple-5.0.4.jar;C:\Users\mfnal\.m2\repository\org\eclipse\jgit\org.eclipse.jgit\5.13.0.202109080827-r\org.eclipse.jgit-5.13.0.202109080827-r.jar;C:\Users\mfnal\.m2\repository\com\googlecode\javaewah\JavaEWAH\1.1.12\JavaEWAH-1.1.12.jar;C:\Users\mfnal\.m2\repository\org\slf4j\slf4j-api\1.7.30\slf4j-api-1.7.30.jar;C:\Users\mfnal\.m2\repository\org\slf4j\slf4j-jdk14\1.7.30\slf4j-jdk14-1.7.30.jar;C:\Users\mfnal\.m2\repository\commons-io\commons-io\2.11.0\commons-io-2.11.0.jar;C:\Users\mfnal\.m2\repository\com\google\code\gson\gson\2.8.9\gson-2.8.9.jar;C:\Users\mfnal\.m2\repository\com\formdev\flatlaf\3.1.1\flatlaf-3.1.1.jar;C:\Users\mfnal\.m2\repository\com\jeff-media\javafinder\1.4\javafinder-1.4.jar org.spigotmc.builder.Bootstrap --rev latest --output-dir C:\Users\mfnal\IdeaProjects\buildtools3\. --final-name spigot-1.20.1.jar
If so, press the compile button already!
uuuh i don't know if this looks correct lmao
better start knowing
yeah they did, 1.8 is when they switched to buildtools, probably due to the dmca stuff
yeah and unfortunately the buildtools wiki article is a huge mess
90% of people have no clue how to use buildtools lol
hopefully they'll merge the gui
I am using bcrypt and Next.js for my website. When the user creates an account, their desired password is hashed client side, then sent to the server, and rehashed with a pepper (the hash, plus a secret string, hashed), which is then stored in my db. Then to check the password, I then repeat the same process, and check to see if the passwords match. But, I noticed that when I hash a password it gives a different result each time even if the input is the same. Why?
I just found bcrypt.hashpw(), is that the better method?
is there a reason why you hash it client side? I don't remember this to be normal in the first place since obviously you'd be using https anyway
In my mind sending an unencrypted password over your internet doesnt seem like the best idea, even with https.
You definitely shouldn't hash the password client side
but it's not unencrypted if sent over https
true, I forget https encrypts everything on its own
the only thing that is not encrypted is the actual domain name IIRC
speaking of https and encryption, what actually encrypts it?
Is it the browser? or the OS?
I never really thought of that
and can't find anything online, idk if I'm putting wrong search terms đ„Č
Or like in the case of programming, is it the programming language or the OS (again)? đ€
actually its prob not the OS
seems too high-level for something that the OS would do
im pretty sure it's the OS
usually by bundling OpenSSL as a library
which then the languages call when they want to establish a connection
so really the answer is a mix of both
i fucking hate certificates
in the end, it's nothing but silly encryption
not something that specifically requires special care from the kernel
btw hashing client side removes the point of hashing
but it also hashes server side
I realized how it is useless, and I removed it
I thought you were hashing only client side
nah, I aint that stupid lol
I was looking through how OAuth 2.0 works, and I noticed that Refresh and Access tokens are used. I was curious how this all works. From what I understand, when the user logs in they get an access token, which is used to get a refresh token. the access token (which requires a log in to get) expires in day/weeks/months, where as the refresh token expires in hours/days. But, if the client knows the access token, what is the point in the refresh token? I just dont understand how that all works
You usually only hash on the client
?
wdym
Idk what you were talking about
hashing on the client won't give any protection
because for ex if the database gets hacked, the attacker can just use that hashed password to log in (and skipping the hashing part)
manz really thought he cooked by hashing clientside
Can anyone tell me the basic difference between Refresh token and access token.
I understand what they are, just not how they work
The point is that the access token expires really quickly (generally 30 minutes or less), and you use a refresh token to get a new one if you ever need that info again
And that anyone can use an access token if it gets leaked or something, but to use a refresh token, you need a known secret
so if your access token leaks or something, it's not that big of a deal because it'll be gone within 30 min, and they can't get another one even if they also steal your refresh token, since they don't have the server's known secret
But how can the client know the known secret without exposing it
Then why do we need the access token if they can't steal the refresh token? And if we know the refresh, what's the point of the access?
I am new to authentication and cryptography, sorry if these are stupid questions
Google it
Access token is, well, for access, short lived
Refresh token is for refreshing the access token, not used for access, its stored on the server, so if the client access token is compromised, the, say, hacker, will have a limited use/time of the access token and wont be able to refresh it
You don't have refresh tokens in an untrusted setting generally, like in React or something. The server that is doing the logging in generally stores the refresh token securely, and only dishes out short lived access tokens for when stuff is needed. That way it limits the harm of a leaked access token.
@wintry plinth hey, is there an easy way to authenticate the user without his password?
use case I have right now is the user links his discord account with his account (the discord user id is stored along with the original login credentials), if the account is linked, he can login without passing his password, only by discord oauth
is using Auth::loginUsingId correct?
Auth::login($userModel)
is loginUsingId bad?
$userModel is basically the entry of the database, with the credentials?
"the blockchain" lol which one
bitcoin
Pretty sure my issue is the time and bits. I could be wrong though
I feel you
?
I've been modifying a miner script I found but I want to know how to properly calculate the hashes so I can edit it the way I want.
Yeah so youâd have your $user = User::firstOrCreate() logic above, which finds the user or creates a new one
đ«Ą
?
Anyone able to help me find where this horizontal scroll comes from?
https://mackenziemolloy.net/fresh/
I've checked all my elements and not of them seem to spill over it seems.
must be some devtool quirk
tried on edge with various phone dimensions, no horizontal scroll
overflow-x: hidden; my beloved

"Used by 1000 individuals" 
TIL that operagx apparently has a minecraft network

I wrote it ages ago and only got back to finishing it.
Maybe replace used
I am used! 
It's dead. 
They hired a anarchy youtuber to promote it for some reason. 
No oooo
/jobs and /jobs browse doesn't open gui but everyother jobs command works for toosie config how do I fix it ?
I am trying to understand why in my example here do user-defined values for bot-token and guild-id are not overidden with defaults, but user-defined values for chat.enabled, or chat.channel-id are always reverted back to defaults upon restarts
config.addDefault("bot-token", "your bot token");
config.addDefault("guild-id", "your discord guild id");
ConfigurationSection chat = config.createSection("chat");
chat.addDefault("enabled", true);
chat.addDefault("channel-id", "the channel id to stream messages to");
config.options().copyDefaults(true);
how can i change the slots in shopguiplus in the categories not in the main menĂŒ
My plugin jar got rejected by curseforge a month ago, because it was using HikariCP which apparently is partly obfuscated (which is against their TOS).
Now suddenly I'm getting an email that my jar was submitted again and got approved.
Didn't know they automatically re-review jars. Very epic.
since when is hikaricp obfuscated?
Tfw you obfuscate an open source library
@wintry plinth hey, sorry for ping, just a bit confused with models
the class extends Model, but there's no such method as where, etc.
am I doing something wrong or I'm really supposed to use ::all()->where(...) instead?
Always feel free to ping me, this is a normal IDE issue. You can either..
- Use
ShoutboxMessage::query()which will then auto-complete further stuff. - Either install the Laravel Idea plugin, or use
ide-helperwhich will setup the completions
so ex.
ShoutboxMessage::query()->create([
'bla' => 1,
'blah' => 'abc',
])->get();
```?
would recommend Laravel Idea / ide-helper
you can just have it autogenerate stuff and it works perfectly
lombok vibes
yeah ik ik
ide-helper just does the same thing eloquent does to analyze what your current model and fields are and adds the type completions to your ide
Does ::create not complete correctly? Iâd honestly recommend ide-helper or Laravel Idea (this is what I use) as itâll generate completions for everything
đ
though Laravel Query?
also I've just installed helper
figuring things out lol
Itâs only like ÂŁ26 a year, or free with GitHub student
Iâd recommend Laravel idea over ide helper, but ide helper is an option
I'd choose a different framework
real
laravel idea just uses ide-helper under the surface and does a bunch of IJ-specific intellisense stuff
you nowhere near need it or anything lol, it's worked on by the people who make laravel, not JetBrains themselves or anything
can someone help me with understanding the plugin superiorskyblock2 dms please
just need help with the border size upgrades
it doesn't require it to function
*it requires it so you can develop propely
Depends what you call properly
.
it doesn't lol
it just makes it more convenient
and not even really that much
does superiorskyblock2 not support hex colors?
Preference, I use it a lot for clicking between route() things in vue and react and such like that
well yeah it's pretty nice and does some nice stuff, hence the price, but it's nowhere near necessary to do Laravel, as kyngs was implying
Itâs an âenhancementâ for sure but Iâd probably say itâs a âmust haveâ and ÂŁ26 a year is nothing for the value added
amateur
this is very 
That âstructural typingâ looks very very very very very error-prone
you look very very very very very error-prone
https://paste.helpch.at/ugugakukoz.bashim about to break my head can someone help me and tell me why when i reload the config this doesnt work it just shows me the default config
plugin: superiorskyblock2
@eager fern srry for the ping but im about to break my head
i just need help
with this
(it's called swing)
but depends on you, JavaFX tends to be more modern, but it's not included in modern JDKs
I never managed to shade it properly đ
has anyone here tried compose multiplatform on desktop or flutter on desktop
no
isnt Swing is JFrame and etc?
because at the moment i stick to JFrames
and etc
but its super ugly and not very user friendly tbf
IntelliJ uses swing too
IntelliJ is also 20+ years old
@drifting aspen @prisma wave I didn't obfuscate anything but my plugin got rejected because some HikariCP class was - allegedly - obfuscated.

Aujourd'hui j'envoi ce message car je je cherche des personnes qui aurait besoin d'un Développeur Java , Discord , Web .
J'exerce le développement Java depuis 2016 , développement Discord depuis 2021 , et développement Web depuis février 2023 j'ai eu l'opportunité de beaucoup me développer et de me faire connaitre ce qu'il ma donner envie de plus apprendre dans ce Domaine et de développer pour différentes choses .
Depuis mes début j'ai eu environ 350 clients qui ont étaient trÚs satisfait de l'attendu de leur demande que j'ai exercé .
En septembre j'entre en école d'ingénieur en cyber securité et développement java ce qui va pouvoir me permettre de bosser pour de grandes entreprises international .
Pour ce qui est du tarifs dĂ©veloppement java a 60 euros / mois consiste a ce que pendant 1 mois je rĂ©aliserais toutes les demandes m'Ă©tant transmit et meme vous faire un serveur de A a Z . ( le prix peut ĂȘtre nĂ©gociable dans la limite du raisonable car je pense etre le developpeur le moins cher )
Et pour ce qui est du développement discord : Je crée un bot discord qui est directement relié au serveur minecraft ou on peut mettre un salon console pour avoir la console de l'hebergeur directement sur discord , salon chat minecraft on l'on pourra communiqué avec les joueurs ig directement sur discord , salon logs on l'on verra toutes les logs ig ext et des options a rajouté sur demandes . Pour seulement 25 euros
Merci d'avoir pris le temps d'examiné ma candidature et j'espÚre qu'elle vous satisfera et qu'elle correspond a vos attentes .
Cordialement @inland bay
Bonjour
Si tu veux des clients, parle anglais et le channel c'est #1135819515817623763 ^^
my french is a bit rusty
but well
oui oui baguette
Croissant
ok
Are there any new libraries for creating multi platform applications such as jetbrains compose, BUT for java? I have to make a desktop app as my degree project and I would like to use compose, but I can't because it has to be made in java.
You have probably missed the part where I said it has to be made in java
According to some post, it uses some stuff that doesn't allow it to be used with java
and even then, the code would probably be very ugly since it was made for kotlin
can u not use javafx?
Perhaps, I'm just looking for some suggestions currently, ideally smth more modern xD
um you could probably look into Qt
theres Qt for java QtJambi or whatever
not sure if thats what you are looking for, though Qt seems to be an alternative to JavaFX
I have been using Swing at school, with flatdark theme
https://www.qt.io/download seems like it is paid?
its dual licensed
havent used it personally but I think theres a free, lgpl or gpl version and a commerial, paid one
I would rather develop in electron than in javafx
Js đ€ą
learn kotlin đ
shut up
no
yes good
aaaaaaaaaaa
anyone wants to write a huge shell script with me lol
kotlin bad
why
why not
because it has many features java doesnt have, a nice syntax, nice libraries etc
java has nice libraries too
i feel like comparing the library ecosystem of any two programming languages is futile in [current year]
not to mention that many, many things kotlin takes for granted are from the jdk
if you ever try to do kmp you'll know hard
he was asking why not, not why so xD
i love the part where coroutines are not implemented at all in kotlin/js and it is a mere wrapper around promises
i love the part where java/js doesnt exist
I mean isn't promises basically coroutines in js?
*Disclaimer: never really used JS *
i would be ashamed if it did
no, not really how coroutines work, coroutines are more similar to virtual threads where you can perform "blocking" (suspending)* operations and the carrier thread (the one that performs the scheduling and where the code truly runs on) will switch to another coroutine
* not really blocking operations, on kt coroutines those will still stall the carrier thread, e.g. sleep vs the suspending variant delay
oh
promises are, put bluntly, a simple callback system
or at least the async part
dkim, kotlin lover, never used kotlin
you can use that without promises
!!! this is by far the greatest benefit* when comparing it to something like kt coroutines
* in my opinion 
and the fact it isn't kotlin exclusive either but all jvm language runtimes can so easily benefit from them
mmm jdk 21
gonna be huge honestly
so glad they got em in for an LTS release people will actually likely update to
i wish they couldve done a full release for unnamed patterns
oh is that the like discarding parts of pattern matching with _?
yea
oh is that not out yet, that's kinda sad
i figure that would be a pretty simple thing
maybe like one preview
its not just the pattern variables
u can basically do anything
including lambda parameters iirc
oh that's pretty cool
like you can do exceptions in catch blocks, variables in try-with-resources, huh
what a neat feature
finally intellij will stop suggesting to rename a caught exception/"unused" resource to ignored 
or you can disable the inspection
hey ey ey, don't be clever, okay?
Smh dkim
Well I guess Iâll have to master swing
Or write app via .Net or what itâs not called
Nah dkim I know how to use swing
Itâs just ugly
And not very user friendly
Buttons and windows and shit
And the way you locate them
I donât like it
I mean can't you style it tho?
never used swing so idk
U can but itâs not simple and headache not user friendly
I remember in VS there was like an editor
Also like in android apps
Ig it shows its age
U just see that in real time and u donât have to do launch to see how it will look
U locate buttons in real time
But using swing
Scene Builder probably, you can get it as an external app too
U have to read the future
Dunno how itâs called didnât use for very long time
Ah nvm it is for JavaFX I think
But yeah
Also the android app thing
Is way more user friendly
In editing
And has more options
Idk I feel like I want to move to native from Java
What next app via OpenGL lol?
btw note that android moved away from XML (fun fact: JavaFX mainly uses XML as well) and so, by default, that editor no longer exists
uses Jetpack Compose now
and you can also use Jetpack Compose on desktop by using Jetbrains Compose
When watching video content through a proxy, is there a noticeable difference in performance between http and socks proxy?
depends
Would you guys recommend using SparkProfile or timings to check what causes lag?
....on? đ
Spark
Anyone got any tips for learning more about development in java generally? Topics to learn etc.
I'm decent I'd say, but not sure where to learn more really
Probably take a look at development patterns and multithreading, concurrency, completablefutures etc
Hey everyone, how to remove specified message from chat? Like in ChatControlRed
you can't, the way that (shitty) plugin does is by logging all messages and resending them all without that one message
don't use chatcontrolred
im wanted to make a custom modded minecraft server with curse forge most likely want some furnature mods farming then maybe a simple origins mod is this possible?
i would say yes, tho thats more a question for #minecraft then here
Whats spring used for generally?
I Need help, delux menu gui not showing 1.19 spigot
What's better performance-wise for 1.12.2 compared to 1.17? Creating a minigame event kind of thing, with bosses, and mobs etc. coming in waves
Is it worth updating the version from 1.12.2?
either use latest or the version before latest, but 1.17 doesnt bring much to the thing you want to make
so imo dont
I mean newer versions do work far better than 1.13/1.14 did, those were really bad lol
there isn't really a reliable way to benchmark Minecraft unfortunately
yeah dont use those
but if youre not updating to .19 or .20 you wont gain anything probably
yeah but 1.12.2 is alright right?
pretty much yes
so is 1.20 đ€
is there a trick to completely darken a player's screen?
blindness and darkness potion effects still have visibility on the lower half of the window
With resource packs yes :)
matts cool craft island
(i never played any minigame and i just messed around lobbies for 10 minutes grand total)
it's a pretty big team, and I wasn't even the one that worked on this feature
definitely taking advantage of that early access thing 
You missed out on the summer event, it was actually quite fun :c
We had water guns
g*ns
đ«
barry you racist
It IS adorable!
Can somebody help me with, zAuctionhouse
sure, but to be able to blacken it while they're on the screen to accept/reject the resource pack would tell you that you do not require a resource pack to do it..
As good as the pixelart looks it is completely unusable to me. too much stuff in your face. can't play like that.
Uhhh yes you do. You are talking about the grayscaling that occurs when a chest opens. You can't just use it without doesn't work like that
what is it you are certain about? That you cannot effectively completely darken a player's screen without the use of a resource pack?
Yup
You could always give the player blindness and teleport them to a fully dark room but u know :>
then i present you, https://www.spigotmc.org/attachments/2022-09-01_02-32-02-png.725384/
they are not. if you completely expand your window when joinign that server super wide, eventually the solid black section drops off and you can see sky/clouds off in the distance
Then it's not a natural minecraft thing.
it has to be.
You said it yourself, if you stretch the screen it drops off
Meaning that it's not an overlay
Since those will just strech
it has to a natural minecraft thing, otherwise it wouldnt work on this screen
Try opening a chest and then streching the screen
You join a server then black screen happened?
It shouldn't fall off, it would be ridiculously stupid if minecraft did this for one overlay but not the other.
What happened? open chest then his mc broken?
it is not a check overlay. i never said it was though
no, im just trying to reverse engineer something. trying to understand how it works
nothing is broke
there are a couple hints i coudl show that might help you understand how its doing .. cant cannot send screenshot in the chat
Okay, well, we've ruled out that it's a texturepack, and it's not something normal with minecraft, that leaves blocks, and the void or similar, try joining with a texturepack that will change those things
circled shows a cloud
clear cutoff of black ... whatever it is
and there's a clear discinction between the 2 dark colors in the drawn box
not curious to know how!? cmon
if they are teleporting players, how are they handling dead players. I tried it as a test and it all worked fine. Join, die, quit. change resource pack option back to prompt so it shows the message again.. all still works like it should
so the player is definitely in the sky, clouds move both above and below (or so it looks like)
I saw people using full black maps in itemframes to make the full black effect
since coal, etc either has texture or isn't 100% black
Somebody knows how to add HEX colors into Essentials/Messages?
i found this "§c"
Idont know how to add hex colors
try asking in M.O.S.S discord server
or #general-plugins but the dedicated server is prob better
wuz the shitgot format?
&x&R&R&G&G&B&B
đ
vault api sucks so hard
constantly relying on player names instead of UUIDs and not allowing to use completablefutures etc đ„Č
use Treasury
as far as i can tell the methods that use player names are all deprecated
and what would u need completable futures for
oh the eco api
i was looking at chat
yeah sure but I still gotta implement them
I'm writing a permissions plugin and if offline player's perms would be requested, it'd be nice to be able to return a future instead
Vault API goes in the path of the Bukkit API
- write a bad API and then refuse to improve it cuz backwards compatibility for 10yo unmaintained software
Hi guys, can i use colors into spigot.yml?
Ive i tried to use colors it wont start my server.
How to use colors into spigot.yml
This is not the correct channel
#minecraft seems more fitting for that answer, maybe #general-plugins
§ Was the answer still thanks.
maybe, what's your question?
what do you exactly mean with routing? you wanna point the domain's A/AAAA records to some server's IP I guess?
you registered a domain at godaddy but you want to use cloudflare for DNS?
or do you want to keep your DNS servers at godaddy and "only" want to use cloudflare's proxy mode?
i just want to use cloudflare for routing and then once i switch to my dedi server i'll be able to have ddos protection
Then I guess you want to use cloudflare for DNS and then enable their proxy mode.
In that case, in your cloudflare dashboard go to Websites -> Add new Site -> Enter the top level domain (e.g. example.org) -> choose the "Free" tier (at the bottom) -> it'll now give you two nameserver addresses, in my case "ethan.ns.cloudflare.com" and "sydney.ns.cloudflare.com" - are you at this step already?
am I able to go into your DMs to show you what I have going on
Also, Cloudflare wont protect your server
aight
just your website
yeah the proxy mode only works for HTTP(S) unless you pay for their advanced tiers or whats it called
ye
so if you wanna use it to protect a game server or similar, you can forget this right now đ
can you add me back
i'll show you
it could if you pay them big moni
https://vm.tiktxk.com/ZGJGSkjWF/ from impostor's syndrome to god complexe in a second đ€Ł
How long does a paste in paste.helpch.at last?
until we run out of space iirc 
Alright lol, any rough estimate on how long that is? Lol
in a few hours once im done pasting my 10 gb logs
Perfect, thanks
Did you upload something with sensitive information or something like that? xD
can someone checkout this #1135819519303098429 message
i want this plugin by monday
you will have to wait for someone to respond to it, asking here wont get someone to do so faster
if you're on a time crunch then you should probably increase what you are offering to make it seem more worth it
How I feel doing anything with git at work lmao https://vm.tiktxk.com/ZGJGUmsgB/
funny thing. I wrote two parsers for my PAPI addon, one uses regex, the other parses the string manually. I've did a few benchmarks with JMH and on Windows, the regex benchmark is much faster, but on macOS, it's the other way around
okayyyy
mac đ„Ž
or write code that's always faster
đ„Č
Or just hardcode every possible combination of Strings
2gb expansion
great idea
I am known for my great ideas
sadge, my previous benchmark was garbage
Benchmark Mode Cnt Score Error Units
BenchmarkLoader.benchmarkNaiveLong avgt 25 134425,654 ± 1882,153 ns/op
BenchmarkLoader.benchmarkNaiveShort avgt 25 3968,929 ± 50,473 ns/op
BenchmarkLoader.benchmarkRegexLong avgt 25 161216,016 ± 3800,832 ns/op
BenchmarkLoader.benchmarkRegexShort avgt 25 14564,255 ± 113,956 ns/op
regex isn't faster, after all
that means I did not waste 2 hours today
Can someone please help me
Maybe you should ask a question
Otherwise, nooone can help you
hey guys
wondering any IOS users here?
so i finished my android app
and now i also need to work on iOS ver
how to install an APP to an IOS
without using any fishy 3rd party services
you need to create an apple developer profile and then you can send that up X devices and then they can download your app
if you don't own any apple device, the easiest way is probably to rent a cloud mac mini and use XCode's iPhone emulator
well what language is your app even written in?
i will use swift
on android its java
hmm i got about 3 iphones at home o hope they dont charge for an apple devoloper profile u know Apple is like EA haha
nah the dev profile doesn't cost anything, but I only know how it works from within XCode (which ofc only runs on mac)
you can create them in the developer portal here: https://developer.apple.com/account/ios/certificate/
developing ios apps is a fuckin nightmare if you don't own a mac
so fucking annoying that they need to put a paywall behind that
so i have to get a macOS
to have an interface
instead of this
C:\Users\zx>swift -help
OVERVIEW: Swift compiler
USAGE: swift
OPTIONS:
-access-notes-path <value>
Specify YAML file to override attributes on Swift declarations in this module
-allowable-client <vers>
Module names that are allowed to import this module
-assert-config <value> Specify the assert_configuration replacement. Possible values are Debug, Release, Unchecked, DisableReplacement.
-clang-target <value> Separately set the target we should use for internal Clang instance
-color-diagnostics Print diagnostics in color
-continue-building-after-errors
Continue building, even after errors are encountered
-coverage-prefix-map <prefix=replacement>
Remap source paths in coverage info
-debug-info-format=<value>...
because i was trying to find out via commands on how to even launch it
me who about to check second hand lapttops rn
hell on earth
imma check itt out
eh i hate apple so much
good that Eu law gonna force them to move to type-C
which is faster then apple charger
and transfers data faster and everything
you basically setup an expo project and have expo go installed on your ios device, you run a server which your expo go app connects to and renders the layout
probably apple face đ»ââïž
ill checkit out thanks aloot!!!!
â€ïž
yeah on iphones it's annoying. macs on the other hand are using USB-C exclusively for like 6 years and people are complaining about that too lol
"uuuh I can't use my 20 year old usb stick"
its sort of marketing thing... like german cars use unique bolts so people without the right tools wont be able to maintain their german car and ofc who is the only seller the car manufactors for those cars
it looks OP
cross platform?
did i get it right?
well it works on android devices too
Huh idk i got a mercedes and an opel/vauxhsll and they use both use normal bolts
Expo Go is a free, open-source client for testing React Native apps on Android and iOS devices without building anything locally. It allows you to open up apps served through Expo CLI and run your projects faster when developing them.
But they dont use react, do they?
it is so fucking good
unironically
React itself is very solid and a nicely transferable paradigm, and Expo is just so convenient
you just install the app, and can see any hot-reloading update of any of your apps
what
type c transfers data faster then the apple thing
that's not up to type c
usb 3 is faster than usb 2, but that's it
and apple will likely only provide usb 2 cables for free, so you have to pay if you want usb 3
not any longer soon they gonna have to stick to type-c cabels in europe ;p
you can have usb-c cables in any speed lol
you can have a usb 1 usb-c cable
that can only transfer at like 5Mbps
^
ehhh my bad idk i have read it some where like reasons why they gonna force it to happen and pros and cons
the distinction is that usb-c is only a form-factor
usb is a confusing mess
they are going to force it, but there's no guarantee it'll be faster or anything
at least we not gonna depend on the expensive cabels anymore
oh i mean you probably are
they are most likely going to make Apple-approved usb-c cables that have high speed and limit anything else to really slow speeds
didnt they even already do that lmao
they cant do that, they got warned :^)
https://www.macrumors.com/2023/05/04/eu-warns-apple-about-limiting-usb-c-iphone-cables/
anyways yeah, React Native is honestly amazing
limiting speed on non-apple cables? yes definitely, backing up my iphone takes ages with any cable I have except the original ones
mfnalex dunno my car charger charges fine not fast as the orginal one
cost of doing business
but i dont use my cellphone so often that i have to charge it haha
oh idk I was only talking about data transfer, not charging
yeah something something made for iphone chip inside their cables that makes them not crippled
i believe
I wish USB-C would finally get established in normal computers/laptops
somehow it's still kinda rare / only available on expensive ones
except for budget ones, they pretty much all come with usb c nowadays, dont they?
isn't it already pretty much the standard for thin form factor laptops
i have it never used it tho
on my laptop
is that so? I don't know, I have been using macbooks only since 10 years or sth. But my boyfriend got a normal acer without usb-c, my neighbour also got some "pretty average" laptop and that also doesn't have usb-c. and I know nobody with a tower pc that has usb-C
for tower pc (cases) yeah very few have usb c
my tower pc only has one usb-c and it's at the backside which is basically inaccessible lol
those r probably old
but for 13" laptops being charged by usb c is very common now
yeah i have one front-panel usb-c and zero mobo ones
if EU makes a law about devices requiring usb-C, i think they should at least make this apply to every device that normally uses usb
nah
nah wont happen
apple had a monopol
i think its the real reason why they did it
not because they care about the enviorment or something
a monopoly on what? lol
apple had the opposite of a monopoly
except for gaming laptops that draw lots of power, I think most consumer devices do usb c these days if you pay 500 bucks or more.
Business notebooks are pretty much 100% usb c
there's like at least three relevant Android companies
apple was splitting the phone charging cables bubble into two distinct connectors, that's the only reason they were forced to conform to one standard
doesn't do anything about a monopoly
Perhaps Apple could agree to an outside standards body that certifies cables...
that's just as bad for apple as switching to usb c
apple only cares because they could charge big money to allow companies to use lightning
i mean, the weird part is that everything else they produce is already fully usb-c lol
the lightning royalties aren't even that big tbh
đ€·ââïž
yep lol, it's only iphones and airpods that use lightning lol
no clue about their watches
my watches don't have any charging port ÂŻ_(ă)_/ÂŻ
oh the funny thing is that macbooks also have the magsafe port, but can also be charged with each of the usb-c ports
depends on the macbook
my 2020 m1 air only has two usb-c ports, no magsafe
they got rid of it for a few years
i got m2 max from 2023 and it has 4 usb-c plus magsafe, and all of them can be used to charge
p cool honestly
yeah it's quite nice because sometimes I just forget the charger but can still use any normal usb-c thingy then. and at home, magsafe is great as you can't trip over it
yeah magsafe is an amazing charging cable thing, so weird that htey got rid of it for a few years lol
i didnt know they made an air version with m1
nice! if I'd be still going to university I probably would have gotten an air too, but now I mostly use it at home so I got the 16 inch one lol
with university, or what?
yup
what did you study/are you studying?
computer science!
ah yeah nice, probably like 90% here lol. I also should have went for CS instead
oh? what did you end up doing
law, with focus on german tax law đ
information systems đ»
oh man, a certified lawyer in our presence!
yeah but only for german law đ
anyway, I should leave in a few minutes, got a doctor's appointment in 30 minutes D:
Thanks, have a nice day everyone
gradle users who write their scripts in groovy typically code in java, while gradle users who code in kotlin typically also write their build scripts in kotlin, is that right?
yeah probably. it's just, I wanna create a repo for new gradle users that has snippets / buildSrc scripts for commonly asked tasks, e.g. "how to copy a jar", "how to create a shaded jar" etc bla bla.
And ofc I wanna do that for both kotlin and groovy. And obviously I wouldn't have a java plugin in the kotlin build.gradle and vice versa
And obviously I wouldn't have a java plugin in the kotlin build.gradle and vice versa
Why not?
Although if youâre doing something like that it might be wise to only do java. Saves a lot of work & potential duplication, avoids confusion, and anyone that knows kotlin should be able to read java too
yeah that's true on the other hand
hmmm is it normal that I have to import literally anything inside kotlin buildSrc scripts while I don't need that at all in the main build.gradle.kts?
and for compileOnly, I only get this weird accessor as import, that can't possibly be correct?
buildSrc/src/main/kotlin/common.gradle.kotlin.spigot-api-dependency.gradle.kts
import gradle.kotlin.dsl.accessors._7758f57c6dd35933dbd9dc8c103ba8e9.compileOnly
import org.gradle.kotlin.dsl.maven
import org.gradle.kotlin.dsl.repositories
import org.gradle.kotlin.dsl.dependencies
plugins {
id("common.gradle.kotlin.java-conventions")
}
repositories {
maven("https://hub.spigotmc.org/nexus/content/repositories/snapshots/") {
content {
includeGroup("org.bukkit")
includeGroup("org.spigotmc")
}
}
maven("https://oss.sonatype.org/content/repositories/snapshots") {
content {
includeGroup("net.md-5")
}
}
}
dependencies {
compileOnly("org.spigotmc:spigot-api:1.20.1-R0.1-SNAPSHOT")
}
Kotlin DSL is just slowly becoming the preferred version
Even on the Gradle slack they are constantly suggesting it over Groovy
It also has way better support on Intellij than Groovy does
There was also a feature which I don't remember anymore that only worked on Kotlin DSL
I'm still wondering whether I need this weird accessor import to be able to specify a compileOnly in a buildSrc script - is that supposed to be like this?
without it, I get the following error: Unresolved reference: compileOnly
Do you have the java plugin?
I'm including it through the java-conventions thing in the plugins { }
here's my java conventions thing:
buildSrc/src/main/kotlin/common.gradle.kotlin.java-conventions.gradle.kts
import org.gradle.kotlin.dsl.java
import org.gradle.kotlin.dsl.repositories
group = "com.jeff-media"
version = "1.0-SNAPSHOT"
plugins {
java
}
repositories {
mavenCentral()
}
It's weird
I don't have the imports in my java conventions
How did you create the Gradle files?
I suggest using gradle init
I don't normally use buildSrc
But I'm assuming it works similarly to build logic, it's just Intellij adding it
What I normally do is delete the import and refresh Gradle so it uses the right one
Sometimes you need to even close and reopen it lol
It could be caused by the "import on the fly" setting IJ has
https://github.com/TriumphTeam/triumph-cmds/blob/master/build-logic/src/main/kotlin/cmds.base-conventions.gradle.kts
Yeah I don't have any of those imports
yes
if I delete the import, I get an error message
e: file:///C:/Users/mfnal/IdeaProjects/Common-Gradle-Questions/common-gradle-kotlin/buildSrc/src/main/kotlin/common.gradle.kotlin.spigot-api-dependency.gradle.kts:20:5 Unresolved reference: compileOnly
For people that want to learn Gradle more I highly recommend this playlist
It's made by one of the people from Gradle
https://www.youtube.com/playlist?list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE
I watched all the way to 14 then just a few of the other ones
They become very situational after that
Matt the gradle god
That's probably not ideal
Use the gradle init command
Or create the Gradle project using IJ
He's talking about convention plugin files, gradle init doesn't generate those, you have to manually make them
Well it did generate those when I used it to migrate from maven to Gradle
Probably doesn't create them on it's own
It generated .. convention plugins when converting from maven?
%checkitem_amt:7,mat:paper......% don't work
all materials work but not Paper why ?
Or are you talking about general build script? Aka build.gradle.kts?
I was as surprised as you
Find the allesiodp Libby repo
Clone it
And use gradle init to migrate from maven
Huh it does generate a basic one, interesting, well pretty cool they are keeping the generation tool very up to date at Gradle
But anyways, it's fine to make the files manually, IJ has some issues with them sometimes but most of the times it works fine
I was very confused when I saw it because I never knew something like convention plugins existed
I just declared everything in the subprojects {} part of the parent build.gradle
That makes no difference, it always requires this weird import
It does, if you choose application
At least on 8.2
8.3*
Right, if you keep reading you'll realize that I noticed it does now lok
weird
I'm pretty tired of kotlin dsl ugh. IntelliJ also keeps showing me an error at the top "Failed to load script definitions by org.jetbrains.kotlin.idea.gradleJava.scripting.GradleScriptDefinitionsContributor"
currently waiting for rm -rf ~/.gradle/caches to finish... it has half a million files there
it's not even working properly for a totally empty settings.gradle.kts file - something's fucked with kotlin dsl somehow? https://prnt.sc/SCjdDcKwQx5h
everything works when using groovy
Honestly I have no idea what's wrong with your setup
i blame intellij
me neither lol
I'll try again on mac later
I mean that is definitely valid even for kotlin dsl, something is very wrong with your intellij, I'm certain gradle runs fine if you try to run build or whatever
Yeah ikr? So weird
Iâll create a new project in IJ on mac now, if it works there Iâll reinstall gradle and/or IJ on windows
Did u try repair ide
It's in the file menu I think
yes
same issue on mac https://prnt.sc/wNL7mZLi5RK8
how the hell can this not work on two different computers
but gradle itself does not complain, it's only intelliJ that complains
i'm on latest IJ utlimate 2023.2.1
Have you tried just using kotlin-dsl?
kotlin đ„±
same thing, it already complains about the plugins { } section
is anyone else using this exact IJ version? 2023.2.1 ultimate?
I already did that on windows, then when that still didn't work, I tried on my macbook, also did validate caches there, and it's still happening lol
I'm on the same version
makes no sense to me because gradle build in console works fine
It's definitely an intellij problem
found the problem!
intellij's mcdev plugin đ„Č disabled that and now it works fine
yeah it always makes problems
Lol
How to check if Color is set? Because if player doesn't have color i got error```java
@EventHandler
public void onProjectileHit(ProjectileHitEvent e) {
Entity hitEntity = e.getHitEntity();
if (!(hitEntity instanceof Player)) {
return;
}
if (e.getEntity() instanceof Arrow) {
Arrow arrow = (Arrow) e.getEntity();
Color color = arrow.getColor();
int red = color.getRed();
int green = color.getGreen();
int blue = color.getBlue();
String hex = String.format("#%02x%02x%02x", red, green, blue);
switch (hex) {
case "#7ebff1":
Bukkit.broadcastMessage("Freeze Arrow");
break;
default:
Bukkit.broadcastMessage("Normal Arrow");
}
}
}
by checking if it's null
also you shouldn't identify your custom arrows by their color and it's also pretty redundant to turn the color into a string to check it
Not working, i check and got same error
show how you checked
which error?
"i got error" is not very useful
please paste the entire stacktrace
i mean
(is there a bot command for a paste link?)
I cant paste here
Paste Services
When asking for help with a config/menu/code issue please use our paste bin:
(we prefer it over pastebin.com)
âą HelpChat Paste - How To Use
yes 100% it is
so
only so much useful information to be gained from the stacktrace
it's probably more likely that they just did the check wrongly
probably yeah. @sullen coral how did you check if the color is null?
@EventHandler
public void onProjectileHit(ProjectileHitEvent e) {
Entity hitEntity = e.getHitEntity();
if (!(hitEntity instanceof Player))
return;
if (e.getEntity() instanceof Arrow) {
Arrow arrow = (Arrow) e.getEntity();
Color color = arrow.getColor();
if (color != null) {
int red = color.getRed();
int green = color.getGreen();
int blue = color.getBlue();
String hex = String.format("#%02x%02x%02x", red, green, blue);
switch (hex) {
case "#7ebff1":
Bukkit.broadcastMessage("Freeze Arrow");
break;
default:
Bukkit.broadcastMessage("Normal Arrow");
}
}
}
}
that is correct. so, please send the stacktrace that you get while using exactly this ^ code
what's line 24?
Color color = arrow.getColor();
oh
not NPE
interesting
that looks like you (or possible another plugin) has set the colour of an arrow incorrectly somehow
huh I can't even find getColor in CraftArrow
ah it's in CraftTippedArrow it seems
show the code where you set the color
I give arrow with command and attribute "{CustomPotionEffects:[{Id:2,Amplifier:1,Duration:800},{Id:7,Amplifier:1,Duration:2147483647}],CustomPotionColor:16729934}"
All my custom arrows work, only when basic arrow which doesn't have custom color it gaves error
tipped arrow
well looks ok but it isnt even the color you are comparing to
that's R 255 G 71 B 78
try to use 8306673 as color
But all my code works fine, only if i take basic arrow, not tipped arrow with custom color, it gave error
you say that now?
With all tipped arrow its work, default tipped arrow shows "Bukkit.broadcastMessage("Normal Arrow");"
hang on what
i don't get it
you said it gives the error
also the hex color you are comparing to would be this arrow: /give @p tipped_arrow{CustomPotionColor:8306673,display:{Name:'[{"text":"Tipped Arrow"}]'}} 1
Only when its default arrow, not tipped arrow
totally different CustomPotionColor
with default arrow, do you actually mean a default arrow, or an arrow you gave yourself that also has the CustomPotionColor set?
why do you even need to check the arrow's color? wouldn't it be much smarter to identify it using metadata or through the PersistentDataContainer?
you're on 1.16, you can use both PDC and metadata, no need to do any dirty hacks like using exactly one specific color to identify it
I'll try your code myself now
your code works fine using normal arrows and the colored arrow from the give command I sent (which is also correctly detected as your freeze arrow)
TL;DR I don't get any errors with your code, only issue I get is that you're using the wrong color
show the whole /give command that you used, pls
Thank you, I fixed it. I was checking the arrow's material, and the issue was also with the attribute
Use https://paste.helpch.at/ for errors, logs and configs. So we don't spam the discord.
paste your RewardsMenu - you are creating a java awt "Menu" object, that's a GUI thingy
wrong import?
that's what happens if you blindly import java.awt.*
i'm not the dev. Our dev did this but right now he's not online and we need to fix it asap
do you have the source code?
I do have it
check RewardsMenu and replace the import for java.awt.Menu with the import for your actual own Menu class
yeah that's the issue
remove the java.awt.* import. it then probably complains about e.g. missing imports for Color
gradle
if it's gradle, usually ./gradlew build or ./gradlew shadowJar
I just clicked this
Should work, shouldn't it?
nvm, just did ./gradlew build
Sorry, never coded. I really know basically nothing
We just need to fix this asap lmao
is that IntelliJ?
it is
double click that. if however there is also a "shadow" tab go there and use "shadowJar" isntead
in the old IJ gui, the "elephant" button will be labelled "Gradle"
open RewardsMenu, the "extends Menu" will be marked as red. hovering over it will offer you to import the class - it should offer you to import one class called Menu that's from your project, right?
NOT the java.awt.Menu one
check the imports at the top of the class
does it again mention java.awt.* or java.awt.Menu ?
no
ok then you can try to build/shadowJar it again
Same error
is your project on github? then I can quickly check it out
It's private
if you trust me, you can add me as outside collaborator quickly
otherwise, you gotta wait until your dev is back
dm me please
lol aternos is suddenly flagging all my plugins as "malware risk"
Always knew you was sus /s
Can I ask something here?
well you just did
I made a code I need some assistance in it may I come in dms or ping you at my forum?
this discord is missing all the spigot commands like ?ask and ?notworking
you could also just ask your question directly here
What is the best way to pathfind for an arrow to reach a player?
?help
» Give the helpers some details
» Ask suitable questions
» Be polite
» Wait
Not as in depth but
Why? Ig you could simulate it but idk
arent you supposed to have an import if you are extending something? cus i dont see any mention of Menu there
could also be in the same package
What is the best way to provide effects to the player when they are holding some item in their offhand?
probably to have an InventoryInteractEvent listener that checks for that item being put in/out of the offhand
an alternative is to use a runnable that checks the slot every N ticks but that seems less optimal\
@half harness that time you helped me it still didn't work
smh dkim caught lacking
hello guys, I'm new to minecraft and plugin development, I want to develop a plugin for a server I have in mind that manages authorization factions and so on, one thing I don't understand is how mamy types of plugin apis are there? does the server making client have something to do with it? or I can develop one plugin and make it work on any server type?
Bukkit (spigot, paper, whatever other forms) which is basically vanilla minecraft, fabric and forge for modded minecraft which can require the client to have certain mods intalled too. There's probably others but these are the ones I know of 
Client mods and server plugins are different things if we are talking about vanilla minecraft.
sponge 
The complexity of plugins made to work on muliple platforms depends on what the plugin does.
E.g. if you don't do anything with the world (place blocks, spawn entities, whatever) it might be easier to accomplish multi-platform support than otherwise
so in theory no matter whay "API" I use, it just works on any vanilla server but with some in game limitations
Uh probably (?)
when you say place blocks etc do you mean that the ID change?
so you can't use the same ID for multiple versions?
i think gaby means that it's easier to achieve multiplatform support when you limit your interactions with the minecraft api(s) you're using
you can use any API you want but each one is limited to their platform
the main ones as mentioned are the Bukkit API, which lets you run on bukkit platforms like Spigot and Papermc
and then the Forge API for running on forge servers / forge clients and the Fabric API for running on fabric servers / fabric clients
also none of these will work on an actual 'vanilla' server
as in, the server software you download straight from mojang
how many server clients are out there?
wdym by server clients
like clients that players use to connect to servers?
or server softwares
server softwares to run servers
we already listed them
bukkit, fabric, forge are the big ones
bukkit has a bunch of different implementations under it (spigot, paper, etc) but its plugins are pretty much all cross compatible with each other
although paper expands the api a bit so if you use paper api exclusives you might not be able to backtrack back to spigot
what are the differences on a technical level?
fabric and forge are meant for modding the game with new blocks, mobs, mechanics and stuff
although you're obviously not required to do any of that
and for servers that use fabric or forge mods that do this ^ players are required to have a corresponding clientside mod installed so that their client knows how to display those new blocks / mobs / etc
meanwhile Bukkit plugins limit the developer to only manipulating existing minecraft features, which means that any players that join a bukkit server will never need to modify their own client
I see, and the differences inside the bukkit ecosystem? like between spigot and paper?
yeh paper is pretty based
there are also a bunch of forks of paper
there are about as many as stars in the sky and i dont really think any of them make too much of a difference
so if I develop a paper plugin then it will correctly work on any bukkit papermc server but might have issues on spigot ones even though the player does not see the difference
but if I then want to reuse or sell the plugin it will work on paper only servers
yes
yes, assuming you are using the paper exclusive api in your plugin
hm it makes sense thanks, I'll go read the docs and see how the api works
@tawdry zinc
Also wanted to explain a little bit more on what server owners usually do in the bukkit ecosystem
- bukkit: no longer exists by itself
- spigot: basically bukkit but maintained and used by many (the majority of public plugins are built on spigot for compatibility)
- paper: spigot, but modified for better performance and has an improved Api. Paper has also bypassed spigot as majority (that server owners run), so it is not uncommon to see public plugins for paper only as well (although can't be posted to spigotmc website which is where most plugins are)
Then there's also Pufferfish (targeted for more performance) and a bunch more that base off of paper
_ _
I know you said you're a plugin developer so you don't really need that info (vs being a server owner) but imo it's nice to have more "background" knowledge about it
Kinda but if you want more features then purpur for ex is a better option
sure
Oh does spigot not work with velocity?
no
its setup in papers global configuration
we can automate sexism now 
finally i understand what SaaS means
so it's a lot of community build stuff? I just launched successfully a test plugin to see how it works with paper, I had in mind some kind of mmorpg plugin for a server where players have factions skills, mobs quests and so on, it's for one server but eventually if I want to sell it you say it's better to go for spigot right?
hell yeah
hell yeah
Wdym community build stuff?
I would try to go for paper if possible, as it's api is a lot better
I'll explain more clearly later
And classic autocorrect for the apostrophe
OK I can explain a bit more now
For plugins where you know that it'll be running on paper (or a fork of it), you should use paper api (ex if you're selling to me, I use paper, so you can make a paper plugin)
Only issue is public plugins - this has different opinions so I'll just say that spigotmc doesn't allow paper-only plugins, although there are some other websites for paper plugins etc
Welp, you have Hangar which is by the PaperMC Team but it currently doesn't support selling things there. So you would have Polymarket and BuiltByBit to sell your plugin
Also, may I advice going for Freemium instead of Premium? xD
Spigot needs to swallow their pride and allow Paper only plugins
Best you can do right now is post on Modrinth, even if it's free you can make some money out of it
You get paid from ads displayed on your page or what?
Haha like you are not talking about md_5
yes
they do allow that
(unless for paid plugins)
They don't, if a plugin is Paper only and it gets reported staff removes it
(Choco has confirmed this not too long ago on Paper discord)
And paid plugins aren't because they get reviewed and would be caught before being uploaded
huh oh well then this has changed, mb
Saying that "Ji" is a czech name is bullshit
Cool stuff ngl
Could just block features that require paper. Just allow minimal functionality.
Too much work for something that is not worth it, aka supporting spigot
Well... using paper it's already supported xD
hello guys, I would like to implement a roles system so to verify if the player has permission or not to run certain commands, what's the conventional way of creating the architecture? is there a way to list all roles in a json like file and pick from that or simila?
why not use regular bukkit permissions?
how do I access it? I find it difficult to understand the docs
assuming you're coding a plugin
you can do Player#hasPermission(String permission) (the # just means that it requires a Player)
ex ```java
if (player.hasPermission("coolplugin.admincommand")) {
player.sendMessage("You have admin :O");
}
where do I find the roles list?
what do you mean roles list?
ex LuckPerms for example, you'd do ```
/lp user maskirovka permission set coolplugin.admincommand
or assign that permission to a group
https://luckperms.net/wiki/Usage for more info
If you don't have LuckPerms already, I'd recommend it
permissions list
or there is just admin and not admin?
my idea was to have different roles like admin, mod, builder etc
and then check if the player has permission to run different commands
check these messages for that
yeah I mean I'm trying to recreate something that already exists I know but it's more of a learning thing
alr
although what's your question?
since this is the conventional way
my idea was to create a class "RolesManager" with some methods inside like addrole deleterole getrole etc, now what about the data structure to store all the roles, should I go for a database or a json file with all the roles and different authority or check just by string
if "admin" can or can't etc
also your plugin variable literally doesnt exist in that class
you wanna do this
from a quick look at how luckperms does it, they assign groups to players as a permission so group.admin for example, as for storing stuff about those groups they would store in an object, so Group, and then store that in their GroupManager class as a Map<String#to(Upper/Lower)case,Group>
ofcourse you can pick whichever case you want to store it in
upper, lower, doesnt really matter as long as its one of the two
i say to change the string to either lower or upper just so that theres very little chance for group objects to be stored multiple times with an identifier that is either case
eg admin,Admin,ADMIN,AdMiN,etc would end up with an admin group that could be set in the map multiple times and getting the right string to grab the object from the map is even more difficult
so they use classes to store data? class group with inside all permissions
pretty much afaik
tho you could go look at luckperms source since it is public on github
I'll go check it out to see if I find some more info, I was thinking about giving an authority rank like admin 2, mod 1, player 0
https://bukkit.fandom.com/wiki/Developing_a_permissions_plugin might be helpful aswell
something like that
that sounds alot like priorities that luckperms have, if your getting the group that the player already has ypu could createa list of groups, sort by the authority then when getting the players grpup just for loop over them till ypu findnthe group the player has
I had in mind to use a database, basically I want to make an all in light weight plugin where the player creates an account (goes to DB) then is able to have a role
now the role could be a json or something like that without having to query
and from there the db saves the data as a backup
Hi everybody, I'm kinda new in plugin development; in these day I'm trying to learn guis. I searched through the internet but I still have many questions. Is there anybody more expert that can help me figuring out that?
Just ask your questions and await a response.
feel free to ask in #development
also, I recommend https://mf.mattstudios.me/triumph-gui/introduction
Thanks
anyone here ever used Morphia? Is it any good?
sounds like a drug name
yep
Task :publishPlugins
Publishing plugin com.jeff-media.fix-javadoc-plugin version 1.0
Thank you. Your new plugin com.jeff-media.fix-javadoc-plugin has been submitted for approval by Gradle engineers. The request should be processed within the next few days, at which point you will be contacted via email.
yaay
can one publish gradle plugins to a normal maven repository?
I donât believe so
Pretty sure they have some custom metadata
Well
Maybe
It depends how strictly you define ânormal maven repositoryâ
File host with maven support? Yeah I guess
Full disclosure I essentially made this answer up
I donât know
Fucking love making things up and presenting the information as fact
U can publish gradle plugins to maven local
Which is a maven repo
yes
the file system is a file host
theres no "first-class" maven support
can somebody please review my gradle plugin and check whether I did any obvious mistakes or anything? Thanks! https://github.com/mfnalex/gradle-fix-javadoc-plugin



