#dev-general
1 messages ยท Page 551 of 1
but i imagine a lot of the graphics and sound libraries interact with lower level stuff
lwjgl for example which minecraft uses, is pretty much just a direct translation of a c(++) api (opengl)
What is lwjgl for?
games
any 3d graphics ig
but mostly games
afaik the library provides a bit more than just opengl but that's kinda the gist of it
a combination of things
i mean
the "fastest" would be assembly or machine code, but that's kinda misleading
C and C++ are usually so fast because they compile directly to a native binary without anything extra such as a garbage collector
and also i think the compilers are pretty good at optimising
C as in C# or what?
no
Or is C something different?
Oh
C is the precursor to C++
C# isn't very fast right?
C - the original shit
C# is comparable to java
Ye
so not slow, but not as fast as something properly native
Very similar syntax also
lol ye
Comparing speed like that on the surface level isn't that simple
Did it work Yugi?
Most JVMs for example have a just in time compiler and perform dynamic optimisations at runtime which are in many cases better than what can be done at compile time by C or C++
that's also true
I didnt test it yet matt, my classes just ended
Ah okok ;p
I know this other language that can do more optimizations at compile time ๐
๐ ๐ ๐ ๐
did you know that ghc has flags for how many optimisations it can do
๐ฎ
like you can make it do literally every possible optimisation
at the cost of build time ofc
yeah probably
Can someone help me in #development please
https://spark.lucko.me/03jteywM3O look, a wild spark report ๐
axolotls bad
baby blue axolotl best.
yeah. I use it as fuel. it actually lasts more than the other ones
bruh what
u can use axolotl in a bucket as fuel in a furnace
Wait wtf
Axolotls can be used a fuel in a furnace.
Merch: https://phoenixsc.merchforall.com/
Cape: https://store.badlion.net/shop/PhoenixSC
This channel is powered by Shockbyte server hosting --
Receive a 25% discount on your first month on a server with code "PHOENIXSC"! https://sho...
Thought that was a datapack

hey @ocean quartz how come triumph config doesnt have sources jar โน๏ธ
Matt monopoly epic fail
^
Probably forgot
disgusting, unacceptable behaviour
Ikr
No u
is possible to put Something<T> into a collection that accept Something<?>?
that should work fine
welp that's something different
๐ฆ
Function<? super T, ? extends R> 
@FunctionalInterface
public interface ActionFunction<T> {
Action<T> run(ActionMeta<T> meta);
}```
Easy
lol is the first time I see these tags
Oh yeah same, what are those for :0
https://docs.docdex.helpch.at/jdk11/java.base/java/lang/FunctionalInterface.html
Javaโข Language Specification
Ah
it makes sense now haha, it allows the object if the generic is assigned to it and not to a generic of it (Function<T, R>)
Is there any way to access the class of a generic (eg <T> void doStuff(ObjectHere<T> obj) without a Class<T> argument?
not really
So unfortunate. What about a method on an abstract class Class<T> getType(), that doesnt have to be overrided on each implementation? Or is this a similar scenario as above?
Well you need to have a Class<T> to return in the first place
Yes, I know, but I cant use T.getClass() =/
That's why you still need a Class<T> object to return in the first place
It needs to be provided somehow
Ah, I see what you mean. So is possible only on implementations since you have an actual object type rather a generic?
In the case its an abstract class, you kinda can
As long as the users make a strict implementation
eh....
for eg
is it the hacky thing TypeToken uses?
yea
abstract class Test<T> {
....
}
class B extends Test<Integer> {
....
}
With this you can
abstract class Test<T> {
....
}
class B<T> extends Test<T> {
....
}
With this you cant
Yeah I use the first format
d; Class#getGenericSuperType
public Type getGenericSuperclass()
throws MalformedParameterizedTypeException, TypeNotPresentException, GenericSignatureFormatError```
Returns the Type representing the direct superclass of the entity (class, interface, primitive type or void) represented by this Class.
If the superclass is a parameterized type, the Type object returned must accurately reflect the actual type parameters used in the source code. The parameterized type representing the superclass is created if it had not been created before. See the declaration of ParameterizedType for the semantics of the creation process for parameterized types. If this Class represents either the Object class, an interface, a primitive type, or void, then null is returned. If this object represents an array class then the Class object representing the Object class is returned.
1.5
MalformedParameterizedTypeException - if the generic superclass refers to a parameterized type that cannot be instantiated for any reason
TypeNotPresentException - if the generic superclass refers to a non-existent type declaration
GenericSignatureFormatError - if the generic class signature does not conform to the format specified in The Javaโข Virtual Machine Specification
the direct superclass of the class represented by this object
@@Deprecated(since="9", forRemoval=true)
public interface ParameterizedType
extends Type```
ParameterizedType has 5 methods, 1 extensions, and 1 super interfaces.
Represents an invocation of a generic class or interface. For example, given the generic interface List<E>, possible invocations include: List<String> A generic inner class Outer<T>.Inner<S> might be invoked as: Outer<Number>.Inner<String>
The declarations in this package have been superseded by those in the package jdk.javadoc.doclet. For more information, see the Migration Guide in the documentation for that package.
1.5
You could also abuse a typetoken probably
that's a javadocs thing in general too lol
o
Hey Yugi, would you say it's safe to assume that any "consumer" functions (that take something but return nothing ("void")) are expected to have side effects?
Sounds logical to me but me ainโt no lambda monad guy
yes
im fairly sure that any non-empty consumer function must have side effects
or at least i cant think of any valid consumer implementation without side effects
lol nerd
So Haskell got no consumers?
well
Welllll
you could have something like a -> () but the only valid implementation would just be \_ -> (), i.e it ignores the argument and returns ()
So basically a runnable?
runnables are implied to have side effects too
i mean what's the point of having a consumer that does nothing
for instance putStrLn is String -> IO (), so i guess you could view that as a Consumer<String>
public Thread(Runnable) ๐ฅด
a function that takes arguments, returns nothing, and has no side effects is objectively pointless right
pretty much
yeah
Haskell consumes your life
kinky
oh yes
The issues are on running the plugin, plus that'll also break compatibility with pre 7.x versions
I'll test it real quick
Yugi slimjar for maven when
ahhh
I mean, if someone wants to handle it for free ๐
That's not a valid request-paid, it must be paid
I started on it, didnt get time to sit down and properly finish it yet
Oh, fair, Edited to be min 1usd xD
Do you wanna give it a shot?
Uh what do u write it in?
I guess itโs basically loose copy paste from the gradle one?
The features yea, there might be slight difference due to the difference in API that maven provides
Just a sec I'm gonna waste some unneeded time on a funny response for this
Ah true but itโs in Java? OwO
I assume you can write kotlin as well
I dont see a reason why it wouldnt work
Aight give me a couple of days, what do you prefer?
I dont mind, use what feels right to you
Java it is 
๐ฏ ๐ฏ
clojure ๐
๐ฎ
Okay so like yes good mmm
you've got some attitude
lmao
Are you... insulting... rich hickey??!
scala gang
!!!
maybe ill change my ways once i do some elisp lol
ellipse
ive not actually had to write much
i think it's only really needed for the super personal customisations
I wanna make a lisp for the fun of it
or if you aren't using doom lmao
Nope
its the haskell lib right?
yeah
Ill check it out
i saw a cool video series on making your own doom emacs from scratch basically
like writing all the elisp, it looked very cool
parseList :: Parser Element
parseList = do
_ <- char '('
x <- ListElement <$> sepBy parseExpr spaces
_ <- char ')'
return x
i think i've seen that too lol
Fuck it, lets rewrite linux
๐ฎ
๐
and you can combine parsers with <|>
parseExpr :: Parser Element
parseExpr =
parseString
<|> parseAtom
<|> parseNumber
<|> parseList
<|> parseVec
<|> parseQuoted
it's so cool
Yea haskell actually works perfectly for this usecase tbh
definitely
parseNumber = do
nums <- many1 (digit <|> char '.')
if '.' `elem` nums
then return $ FloatElement $ read nums
else return $ IntElement $ read nums
such a cool library
i like that lol, if . then float
Too much work
xD

is this valid yaml?
aw man according to a parser it's not
the key needs to be a string I think
You can use json
TOML
Its just a few extra braces
a few lmao
and quotes everywhere
๐ญ
just write a custom lisp interepretation
i mean if it was me i'd do ```clj
{[1 2 3] {:type RED_STAINED_GLASS_PANE }}
but thats also not very user friendly
Why not have haskell configuration like xmonad? ๐
tempting
how about ```haskell
do => monad monad
1 2 3 <==> RED_STAINED_GLASS_PANE
monad monad
๐ฅด
as you can see, we've progressed as a species
we now use monad monad instead of brackets
Its in a working state right?
so wait did sx like die or something
in theory
i know he left the community
He left everything
but did he leave developing entirely?
Probably not
he got banned i think ๐ฅฒ
doubt it
I assume alt account
ahhh
last i checked he was working for some big server
maybe he renamed himself to::: Brister Mitten! ๐ฎ
Yea about the api changes sx did
yeah lmao
He instantly broke like hundreds of expansions
Well
yeah i mean clip joined back
clip rejoined after a day
but it's not like he's active
yea
did he really tho
yea
man what would a haskell syntax be for like a deluxemenus clone
isn't that what you're making?
What?
what this for
trying to think of a nice way of doing it
gui = [
[stick, glass, glass],
[stick, glass, glass],
[stick, glass, glass],
]
i pretty much have to
i have no money left and ive booked a trip to london next week
sooo
pretty much praying that this dude isnt gonna scam me
well yeah my point was more that nobody would hire me
oh lmao
not really that I don't want to lmao
thats enough for most people
i mean look at my jithub!
Theres some guy paying in #860006856864169985 to generate a obsidian cube basically
ez money
yeah I saw that lol
lol
lmao
ayyy
they already did ๐
lmao
did you see the guy whose range of payment was $0 to $25
ah he changed it to $1 lmao
but yeah most people just want something that works so don't bother in quality (:
jk
I mean
capture capture gang
yeah ik
also I have literally no clue what that function does
it is a supplier that returns a new instance of a Node<>
private final Table<String, Class<?>, Node.Supplier<?, ?>> nodes = HashBasedTable.create();
hm, I might rename them to Component
Node is kinda meh
man you are speaking another language man
so much so that I said man twice in that short sentence
sheesh
hm well
Im opened to suggestions, im not too experienced with generics
@SuppressWarning("unchecked") sounds appropriate :^)
lmao
@SuppressWarning("all")
๐
:))
basically a Map<R, Map<C, V>>
-_-
oh that actually kinda makes sense
d;guava Table
public interface Table```
Table has 21 methods, 5 implementing classes, and 1 sub interfaces.
A collection that associates an ordered pair of keys, called a row key and a column key, with a single value. A table may be sparse, with only a small fraction of row key / column key pairs possessing a corresponding value.
The mappings corresponding to a given row key may be viewed as a Map whose keys are the columns. The reverse is also available, associating a column with a row key / value map. Note that, in some implementations, data access by column key may have fewer supported operations or worse performance than data access by row key.
The methods returning collections or maps always return views of the underlying table. Updating the table can change the contents of those collections, and updating the collections will change the table.
All methods that modify the table are optional, and the views returned by the...
This description has been shortened as it was too long.
7.0
ikr
damn why don't we make GUIs using these bad boys
๐คจ
unappropriated ๐คฃ
lol star
already did
japan
Welcome to the korm fields
Also isnโt that Kotlin object relation mapping or something
And Sxtanna made it right lol
Oh lol
yes
sxtanna json
but look at this!!
i can finally have pretty r/unixporn stuff with spotify
Hot
very hot
inb4 spotify bans spicify like discord banned betterdiscord lol
then i will stop using spotify
i really wish there was a good desktop apple music player
or that they had an api third party programs could implement ๐ฅฒ
well on macos they have the Music app
๐ซ
which is actually not too shabby
Is there a SoundCloud app
uyh
probably not
who knows, maybe I just start downloading my music
probably won't take up that much space anyways
i have 4.3GB of music on my phone and that's like, every song I listen to
what is that de?
if BM is a man of integrity, that's xmonad and xmobar
and honestly a damn good use of screen space
maybe
im not a big customisability freak tbh
i prefer things that work out of the box
well
i know xmonad does too
but that's specifically designed to be 100% super customisable
i mean that's why you just steal someone's config
true
true
as a haskell enthusiast
they might revoke your haskell membership for using i3 if you're not careful 
im sure they'd understand
yknow
sure haskell is nice
but
i3 does everything i need it to and i cba to move over
ah
hmm dats true
though I hear xmonad has really good multi screen support
since you can tell stuff to move by monitor instead of by workspace and other things
and, having 3 monitors myself, that is of utmost importance to me lol
neat

i have retreated back to the safety of Arch
Gentoo requires too much forethought and planning and I change my mind like every hour, which is faster than Gentoo can recompile all my stuff
also I hate boot managers with a passion
Back to Arch ๐
Too much lighting
what, my keyboard?
it's not that annoying in person
just looks really bright in the pics cause there's not a lot of lighting in my room
string lights and all
My 4.30 am brain read "you are that annoying person"
Almost had a heart attack
nah you good
๐
yugi?
k
k sorry just thought bm would be happy for me ๐ฆ
@prisma wave
@pallid gale idk if you know this but BM still has the TRusted role xD
I just noticed
it
wat
wait @cinder flare why don't you have the developer role again?
are you sure about that
u are very helpful sir. thank you
Because he ain't a developer
if only
sad Star noises
xD
wot u on about
hey wtf
i installed doom emacs okay
i think that's enough
Where does it say trusted?
wait I said trusted?
yeah not sure what Blitz is on about
besides hurting my feelings
u can have both?
when you gave me staff u took out the helpful. xD
i literally was ๐ฆ
oh damn he's got a point
at least I'm helpful xd
can i auto-obtain the developer role due to my contributions to notable projects such as Barry and PAPI
anyways since you took it for everyone just thought its like an upgrade helpful -> support -> trusted or something like that
i dont handle the dev role
and when I say a queue I mean like a black friday type of queue
xD
like the us walmart black friday queue
nah black friday is lame now
there's too many people and the prices aren't good at all
walmart ain't what it used to be 
well idk. it was never like that here. never actually had to sit in a queue for black friday. and never had people trample eachother
well you see
the average weight of an american is probably twice what it is for romanians
you guys can't even afford minecraft
how can you afford food, free time to trample people, and walmart delicacies
yeah. the last one is even harder to afford bcz we don't have walmart
exactly
That's so sad lol
Hi
So , im developing a plugin
and i have a player that is mounted on an armour stand
however if they press shift they easily get off
how do i prevent that
isn't there an entity dismount event or something like that you can cancel?
I have looked for that but i couldnt find it anywhere
d;spigot EntityDismountEvent
public class EntityDismountEvent
extends EntityEvent
implements Cancellable```
EntityDismountEvent has 1 all implementations, 6 methods, 1 implementations, and 1 extensions.
Called when an entity stops riding another entity.
@eventhandler
public void onsomeevent (entitydismountevent evrnt) {
//you can do if something
event.setcanceled(true) }
A member of staff has requested I move your message to a paste,
Most likely because it contains a config/error/code snippet.
@timber oak it means its declared per class. not per instance. so yeah I guess what you said is kinda true
Oh, deleted the message because I thought it was wrong after I wrote it lol
I now understand the disadvantages though
Oh wow it actually makes so much sense now lol
Gian, since that spigot thread isn't updated as much anymore, have you looked at checking out https://github.com/YouHaveTrouble/minecraft-optimization and adding it to your website?
Is there a reason for Java version numbers being 44 above their name? For example, Java 6 is 50, Java 16 is 60 and so on
I believe there was a lot of versions early on like Java 1 or smtng
Or class versions
Whatever itโs called
Poor organisation ๐คก
?paste
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
hi im searching for developers for my minecraft server dm me if you're intreseted
#860006855325122591 #860006856864169985 @rich ridge
hey, I know this may seem a bit generic, but would any of you have any idea why a task would run perfectly fine sync on startup, but just hang for ages and do nothing running on a ThreadPoolExecutor with (Runtime.getRuntime().availableProcessors() - 1).clamp(1, 8) threads?
I'm just looking for some possible reasons why that could even happen in the first place
can provide much more context if necessary
Needs more context I imagine
It's probably not the thread pool's fault, meaning it's probably the task doing something wrong
a.k.a me doing a PEBKAC
https://github.com/KryptonMC/Krypton/blob/dev/server/src/main/kotlin/org/kryptonmc/krypton/Krypton.kt#L138 this is the actual thing that uses the executor, BACKGROUND_EXECUTOR is the executor here
basically, what this system does is loads a bunch of resources from files and then applies them
the BACKGROUND_EXECUTOR is meant to do the loading part of that process, and then that second Runnable::run there is the syncExecutor, which is used to do the actual application
https://github.com/KryptonMC/Krypton/blob/dev/server/src/main/kotlin/org/kryptonmc/krypton/resource/reload/ProfiledReloadInstance.kt#L31 this is the place where the tasks are actually dispatched and ran
https://github.com/KryptonMC/Krypton/blob/dev/server/src/main/kotlin/org/kryptonmc/krypton/tags/TagManager.kt#L34 this is the only reload listener currently (that call to listener.reload is only coming here)
as you can see, it has to first create the loader that will actually do the loading, and then grab the load task with a CF, which is executed on the background executor, then the reload is done on the sync executor
omfg why
ofc the one line I looked at and went "eh, probably just a decompiler error" was actually the one that fixed it all
in SimpleReloadInstance's init function, we have a mutable future reference, and the code also takes an immutable reference to that inside of the forEach that it uses for the thenCombine, well, I was using the future reference instead of making that immutable reference, and adding the immutable reference seemed to fix everything
of fucking course it did
Anyone done some rust with oxide?
or made in both
no
Can i get a developer to help me for a plugin im willing to make its really tough so please help me
They wont anwser because they wont do free work
asking in the wrong channel isn't very well seen here either
You can get help in #development but noone will make entire plugins for you there
You can use both with each other
๐ฎ that worked!!
๐

I keep forgetting, the java 16 requirement for 1.17+ is just on server side right? Or is it also client-sided?
both
But you can play 1.17 with just Java 8 installed?
So minecraft installs java 16 itself?
yes it does install java 16
Idk
Maybe look at the java folder
In the oracle thing you know in the program files
It installs an appropriate jdk if needed
OpenJDK superior
Yeah just wondering where
probably in the launcher dir or the default game dir
Thought it was in user/jdk or user/.jdk 
not the one MC uses by default
it doesn't install it
it downloads one from their servers and saves it in the launcher dir I believe
Ah okay
isnt that what ij uses if u download a jdk from there? idk
Spring framework isnt that big right?
isnt it only like a couple megs
i always hear people joking around how large it is lol
well like 30 or smth i think
thats defintely not small
and do you mean just the core part or all of spring boot/the starters?
its definitely alot bigger than 3kb spigot plugins ๐
looks like the core is around 2mb
Level up your Java code and explore what Spring can do for you.
Didnt know how many they had
spring... good...?
Yes ๐
โฆasses
๐คฃ
Lmfao
I love when people post in offer services, and not link any sort of previous work
๐
with .htaccess, how can I redirect only / to a new url? But other redirects like /discord won't be affected?
Yes
somebody please send help
generics are driving me crazy
https://paste.lucyy.me/xexibebuta why did i think this was a good idea
Lucy's Pretty Pastebin
Try pass the type ? super V to Condition maybe
๐ฅด
Assuming the test() takes U, V
don't use .htaccess
no for real don't use .htaccess, just edit your nginx config's
Ok
should java records be used everywhere possible?
intellij often suggests converting things to records but i always got the idea they were supposed to be for DTOs and things
oh I swear I keep forgetting those exist
public class YamlObjectLoader implements ObjectLoader {
private final Yaml yaml;
@Inject
public YamlObjectLoader(Yaml yaml) {
this.yaml = yaml;
}
@Override
public Map<Object, Object> load(Path source) throws IOException {
return yaml.load(Files.readString(source));
}
}
``` like this clearly isn't for data representation but it could be a record
same bm, intellij is not recommending it
Records are classes that act as transparent carriers for immutable data
Doesn't really seem appropriate
I have sdk set to 16 and language level at experimental
huh
seems like it could
weird
ij is just fuken stupid with records
anyway im more asking if there's any reason to not use records wherever possible
I dont think so
no reason yet
the only semantic difference seems to be that it makes private things public
but who cares
wdym?
as a record yaml is public
if they ever make records more efficient in the jvm then itโll probs be worth it
not private
yeah they are
currently I'm choosing not to make classes like that records
because it just doesn't make any sense
A record is basically a โdata class,โ a special kind of class that is intended to hold pure data in it
yeah it doesn't make a lot of sense
the example i sent clearly isn't just for holding data
I think it might be because im on a older version
uh
Where did they move the mark directory as menu to in the latest version?
oh nvm it fixed itself
They use faster versions of the string, hashcode, and equals methods
how is it faster
It calls different bytecode I dunno
I dont think they're neccessarily faster
Maybe not true true
It just generates an implementation at runtime with method handles
also i will be on a little later to talk about that thing u wanted to talk about in v
vc
Oh uh
๐ฎ
o
And also supposed to be asleep lol
well in that case lemmo just made an appearance and he knows more than i do about it
๐ฎ
docker?
ecloud
oh lol
ecloud spring rewrite
Is that ever going to be a thing?
will come with papi 3
If I can ever get it to boot maybe lol
u have to use docker i think
Oh well I'm blind then nvm
it's garbage though
lel
That would've been good information to put in the readme ๐
If only I were in that channel ๐
added
Updating ij fixed it!
Yay records!
that Integer tho
๐
Nullable sadly
๐ฎ
even better
yea.... now ijs having a complete stroke
Arrow code: folder edition
ok deleting .idea fixed it
๐ฎ
^
Seriously tho
ij completely broke
This is a first
let me try clearing everything again
oh wait
ik whats wrong
jetbrains tools just opening an old version inbetween for some reason
With bungeeguard, it says unable to authenticate, even though I have a token in all of my servers.
Did you restart the servers?
Yes
How would you all set up a rankup system? A Rank class that is created for each player and stored in a hashmap?
And then a rank level in the constructor maybe?
To update it, or what would be best
I'd usually just use LuckPerms and not bother at all 
Yeah, if you wanted to do like an "auto rank" system I'd use LPs API.
it's not auto, just on a command
then just use LP.
no need to make your own system unless you actually do it to learn I guess.
Would the ranks be set up as groups or what?
Yes
luckperms is cherry on the cake
Good, thought so but just had to make sure
What are the 5 general java rules called? I forgot
The ones like "only one goal for each class" or something like that
idk if that makes sense
What is SOLID?
S - Single-responsiblity principle
O - Open-closed principle
L - Liskov substitution principle
I - Interface segregation principle
D - Dependency inversion principle
If you wish to read up more on it, you can check here:
https://scotch.io/bar-talk/s-o-l-i-d-the-first-five-principles-of-object-oriented-design
Thanks
Does luckperms take performance from the unused features as well as the features currently in use on the server? Or only the features that are currently being used

except blitz plugins mbey
yeah. mine use everything at every point in time. even if it doesn't need to

But like, let's say I just want to set up one group and one permission, does it then also take performance to run all those extra features in the config and so on?
performance is not something you'll really have to worry with LP
if a feature is disabled in config then it simply wont be used
unless you do some interesting stuff xD
LP is at its finest scalable horizontally
but with that being said, even a normal minecraft server isn't made to keep up with too many concurrent players so hopefully that limits the expectations for luckperms as well as any other plugin
There aren't really any "extra features" though
Rather, the LuckPerms config is all about how things are calculated (+ storage settings)
Those calculations won't take a lot of performance I assume?
The calculations will happen you like it or not, the config only tells LP how things are calculated
Not if they will happen or not
But most of LP runs asynchronously from the server thread anyway
calculations for what though?
Not sure what would be calculated with permissions
and groups
Tree traversal
Caching evaluated contexts (per world/server perms, primary group, prefixes etc)
Precalculating meta values too. LuckPerms is a top notch permissions calculator, there is a lot more that goes on behind the scenes than just "HashMap<String, Boolean>"
Wildcards, shorthand, group weights
but it does it very well and not a lot you need to worry about. the thing you will have to worry about is your code
Hmm aight
Hell, even the commands run async
LP will be the last thing you'll have to worry about really
Alright, ty
Not to mention it is to my knowledge the only fully functional perms plugin to exist as of today lmfao
tldr; em is a lp lover
PermissionsEX is 100x better
Well and LP support lol
Ik
but yeah, still useful information
functional you say?
UltraPermissions being the "main competitor" has broken Vault integration which is vital for many other plugins
Hilarious
๐ฎ
pex and groupmanager are functional ๐
Emily is a moderator in LP discord, shilling out for them ๐
Despite that, it is the best though
permissions.yml!
iirc 2nd most contributed to LP apart from lucko himself lol
I think you're thinking of someone else
Turbo?
No wait you're right, how did I not know that wtf
@obtuse gale What is this
Hmm
Initial Commit
๐
Best fork https://github.com/zml2008/GroupManager
wait what?
group manager is based on luckperms?
or is this a "new" group manager?
yes
that's why I asked
I never knew group manager
was forked from luckperms
...
...
or is that just the same plugin with the name changed?
and not the actual group manager
I'm gonna assume that is the case
Lol
lmao
why is this a thing?
where the fuck is the applications folder located at? the one where I edit the desktop icons and stuff
I thought its in /usr/local but its not
Fan Made Updates
smh my smh
I saw that. I am just wondering why
was in share not local. fuck
i think generics might be my least favourite thing ever
omg
i have found my new favourite thing
Vavr is an object-functional library for Java 8+
public <T> Try<T> load(Class<T> type, Path source) {
return Try.of(() -> loader.load(source))
.flatMapTry(map -> mapper.map(map, type));
}
``` ๐
oh my god
this makes me so happy
heaven
๐
they even somehow added pattern matching to java
it's extremely cursed
but my god
Match(_try).of(
Case($Success($()), value -> ...),
Case($Failure($()), x -> ...)
);
honestly impressive
what java version can this be used with?
[22:29:10 WARN]: [PlaceholderAPI] Loaded class net.ess3.api.IEssentials from Essentials v2.19.0-dev+221-1556b91 which is not a depend, softdepend or loadbefore of this plugin.
[22:29:10 INFO]: [Vault] Checking for Updates ...
[22:29:10 INFO]: [Essentials] Essentials found a compatible payment resolution method: Vault Compatibility Layer (v1.7.3-b131)!
[22:29:10 INFO]: [Jobs] Successfully linked with Vault.
[22:29:10 INFO]: [Citizens] Loaded 0 NPCs.
[22:29:10 WARN]: [PlaceholderAPI] Loaded class me.ryanhamshire.GriefPrevention.GriefPrevention from GriefPrevention v16.17.1-2b69191 which is not a depend, softdepend or loadbefore of this plugin.
[22:29:10 INFO]: [PlaceholderAPI] Successfully registered expansion: griefprevention
[22:29:10 INFO]: [PlaceholderAPI] Successfully registered expansion: essentials
[22:29:10 WARN]: [PlaceholderAPI] Loaded class net.luckperms.api.LuckPerms from LuckPerms v5.3.47 which is not a depend, softdepend or loadbefore of this plugin.
[22:29:10 INFO]: [PlaceholderAPI] Successfully registered expansion: luckperms
[22:29:10 WARN]: [PlaceholderAPI] Loaded class net.milkbowl.vault.economy.Economy from Vault v1.7.3-b131 which is not a depend, softdepend or loadbefore of this plugin.
[22:29:10 INFO]: [PlaceholderAPI] Successfully registered expansion: vault
[22:29:10 WARN]: [PlaceholderAPI] Loaded class com.bencodez.votingplugin.VotingPluginMain from VotingPlugin v6.5.2 which is not a depend, softdepend or loadbefore of this plugin.
Any ways How to fix this?
- wrong channel
- What's the issue?
You can ignore those warnings
๐
probably anything above 8
I think the record builder I found earlier are also extremely useful
who needs java 11? ๐
with that and records, hundreds of lines went
this is actually amazing
!!!! I was literally reading that yesterday
And this other one too, give me a min
arrow?
bms favourite thing
๐คค
elara doc when ๐
Tomorrow night probs
holy heck
higher kinded types in java??
That one is delightful
๐
Nice
Hello im making a plugin and i dont know if i can add breeding and taming?
not gonna answer bcuz u spammed all dev channels ๐
asking everywhere = getting help faster
Right?
asking everywhere = getting help faster, right?
xD
Any reason not to use paper API on paper servers?
no? lol
thought so lol, just had to make sure
Is there a way to like avoid the try/catch statement inside a lambda?
Stream.of(libraryPath, dependencyPath, httpServerPath, vlcPath, imagePath, audioPath, videoPath)
.forEach(
p -> {
try {
Files.createDirectories(p);
} catch (IOException e) {
plugin
.getLogger()
.log(
Level.SEVERE,
"[MinecraftMediaLibrary]: A severe I/O exception occurred while trying to create library folders!");
e.printStackTrace();
}
});
like that try and catch is ugly. But yes ig it is necessary to handle it, but id rather handle it somewhere else
๐ฅฒ so many newlines
Yes, switch to clojure ๐
๐ฅถ
How could you say that about clojure
Ended up doing this
public interface ThrowingConsumer<T, E extends Throwable> {
static <T, E extends Throwable> Consumer<T> unchecked(
@NotNull final ThrowingConsumer<T, E> consumer,
@NotNull final Logger logger,
@NotNull final Level level,
@NotNull final String message) {
return (t) -> {
try {
consumer.accept(t);
} catch (final Throwable e) {
logger.log(level, message);
e.printStackTrace();
}
};
}
void accept(final T t) throws E;
}
๐คก
lmao
May I ask what the fock is going on with request paid, have people become idiots again with their budgets or what
Yeah they are offering way too much
Apache commons failable stream tho
I believe spigot uses commons Lang 2.6, does it exist there also?
Oh wtf
Did ya folks ever heard of baritone?
A pathfinder bot for Minecraft
Where is senpai:c
Aren't both of these idiots joking around kek
you can just use the ChangeOutput expansion
/papi ecloud download changeoutput /papi reload
and you can read here how it works: https://github.com/Kqliber/Expansion-ChangeOutput
ugh
%changeoutput_equals_{essentials_afk}_true_yes_no%
so this will parse essentials_afk
and if it is true
it will output yes
otherwise it will output no
yeah think that will probably work
can we move to #general-plugins please?
I've just realised we're in the wrong channel
Bruh placeholders are pretty much Turing complete at this point
Crazy
Coming soon: placeholderapi written in nothing but placeholders
Would it be difficult to host a Linux screen on google, like so you can use the console on google or whatever
Im trying to convert my block item file to a optifine entity but it messes up the rotation is there a way i can do this without messing the rotation?
I can't figure out why Bungeeguard isn't working
the tokens are the same on every server but it still says "Unable to authenticate"
