#dev-general

1 messages ยท Page 26 of 1

junior zealot
#

nani

#

let me see

#

u mean in config.yml?

#
check_updates: true
legacy_hex: false
papi_chat: false
format_chat:
  enabled: false
  format: '{deluxetags_tag} <%1$s> %2$s'
load_tag_on_join: true
... [Below is gui things]```
#

which one do u mean ya?

humble prism
#

the conditionalevents event your making

#

should only activate on first join

#

of a player

junior zealot
#

owh yaya

junior zealot
#

its fixed , now one more thing is, how to disabled showing me the identifier when i do /tags list, cuz it everytime show me example: [DeluxeTags], member: [Member] i just want it show me the [DeluxeTags] only, is that possible?

ruby dew
#

asdf

distant sun
wintry plinth
#

Most typically, anyway

agile galleon
#

they do in smaller companies with not much or non existant qa

wintry plinth
#

Tbf, then taking production down isnโ€™t as big of an issue ๐Ÿ˜‚

agile galleon
#

yup

ocean quartz
#

Bigger fear is pushing to wrong code to production, that is either not supposed to be released yet or breaks stuff

wintry plinth
#

Or not enough tests ๐Ÿ˜‚

ocean quartz
#

You can never test enough, users always find a way to break shit

wintry plinth
#

Thatโ€™s so true ๐Ÿ˜‚ Iโ€™ll admit, over a year ago I thought tests were silly and pointless. Then in Jan last year I realised how useful they were, now I canโ€™t add enough of them ๐Ÿ˜‡

But itโ€™s so true like you say, users always find edge cases

rotund egret
#

Users are the edge case

distant sun
quiet galleon
#

Can someone help me? My server lags extremely all the time, sometimes commands only react after 1-2 seconds.. The TPS are constantly at 20... I would appreciate any help!! https://spark.lucko.me/023fZi2RIh

half harness
#

hmmm

#

wait @quiet galleon so the server lags even though it's 20 tps?

#

that might be a ping issue then - either the server isn't performing well enough to handle all of the players or the network itself is too far or not good enough

#

although in spark it says the max ping is 122 so idk ๐Ÿค”

quiet galleon
#

thats weird D:

agile galleon
#

what kind of lag are you experiencing?

oblique heath
#

if it's only a particular plugin's commands then it might be the fault of the plugin and not the server at large

quiet galleon
half harness
distant sun
#

Does anyone have that image with each server implementation and its forks?

wind patio
#

no I do not

distant sun
#

Yes, thank you

brittle leaf
distant sun
#

thanks

rotund egret
#

Weird that spark is just there lol

distant sun
#

look at the line color

Mods / Plugins

#

just like Alt Current which is a fabric mod iirc

rotund egret
#

Doesn't make it less weird, you're just explaining the color code

distant sun
#

๐Ÿ™‚

crude cloud
#

spark will be moved into paper

#

soontm

ocean quartz
#

Hot

crude cloud
#

also i'm pretty sure starlight existed as its own mod before paper?

rotund egret
#

Vault moved into spigot when

distant sun
ocean quartz
frail glade
#

๐Ÿ‘€

#

The trick is you make something for them and then they host it for you.

#

At least that's how we got the API ๐Ÿ™‚

distant sun
#

๐Ÿคฃ

#

spigot is waiting for its shutdown aka paper hard fork

#

then it can rest rip

frail glade
#

I'm excited to see how Hangar goes.

ocean quartz
#

Have they changed their decision on premium plugins?

crude cloud
frail glade
#

That would probably be a Kenny question.

crude cloud
#

gotta love them kenny questions

#

but like, updated guidelines are in the guidelines page, lol

ocean quartz
#

Well I was mostly just asking if they were even going to add a premium plugins feature

#

I believe they were against it for the longest time

distant sun
#

And not being able to post paper only plugins on spigot sucks - I'm aware it makes sense why you are not, but just saying

rotund egret
#

Ore was without premium resources as well, I wonder if that same ideology stuck with the fork.

cinder flare
wind patio
rotund egret
cinder flare
#

yeah idk I haven't heard a ton about anything like that

#

this was the one I was looking into for my custom server economy

rotund egret
#

He pinged zml asking if they had input for it.
About all I got out of it

half harness
#

what gradle task does intellij run when you refresh gradle?

#

I thought it'd be a custom task but I don't understand how that'd be done without modifying the buildscript and adding a plugin

crude cloud
#

i have no idea

#

@ocean quartz do you know?

#

that's something i've wanted to know for a long time but also haven't bothered to research lol

#

it's funny when i run gradle from the terminal and it works just fine, but when i refresh from within intellij it says "Deprecated Gradle features were used in this build, making it incompatible with Gradle X.0."

#

like, wtf is intellij doing, and it always shows up regardless of version lmao

rotund egret
#

Ij has a setting to use the project version or an ide version I think?

#

Like java

crude cloud
#

yes

#

it doesn't matter, that warning always shows up when refreshing gradle from intellij lol

rotund egret
#

Oh I missed that bit

ocean quartz
#

Is it "sync"?

half harness
#

yea

#

ctrl shift o i think

#

or smth like that

crude cloud
#

is that a task?

half harness
#

oh wait

#

oh are you saying it's a task?

ocean quartz
#

Doesn't seem like it

rotund egret
#

Is it just --refresh-dependencies?

half harness
#

that refreshes all dependencies

#

whereas the intellij sync just syncs gradle and intellij

rotund egret
#

If all it does is sync the project structures then I don't imagine it's a task

half harness
#

ye but it runs something

#

but we aren't sure what happens exactly

rotund egret
#

Ij tracks it

half harness
half harness
rotund egret
#

It runs in the background you can see whats running.

#

Probably on the bottom of the ide

half harness
#

but how does it track it? as it's not a custom version of gradle

#

I thought it'd be a custom task but I don't understand how that'd be done without modifying the buildscript and adding a plugin

#

I mean the internals

crude cloud
#

it 100% does run a task

half harness
#

and not the "front-end" (idk what it's called in these terms since it's not a website)

crude cloud
#

it fires up the gradle daemon if it isn't already

#

and, well, gradle clearly does run

rotund egret
#

Welcome to the conversation again emi

#

Feel free to read

crude cloud
#

I did

rotund egret
#

Redundancy is key. My bad

half harness
#

also kinda unrelated but related but how does intellij gather all this info when running any task?
ex it shows all the tasks being run and knows when each task errors out:
https://i.imgur.com/FKYI5Kd.png

crude cloud
#

gradle has an api

half harness
#

ah

#

wait then what if intellij just uses that api to sync?

#

i didn't know it had an api

crude cloud
#

i mean it sure does

#

the question is, what does it do

half harness
crude cloud
#

anyway, dinner is more important

half harness
#

have a nice dinner emily

#

๐Ÿฅ•

rotund egret
#

Version 8 of gradle has a sync task (unrelated, but thought that was notable)

half harness
crude cloud
#

it's not a markdown file

#

just raw

half harness
#

ohhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
I've always thought that it didn't matter if it was README or README.md

pastel imp
#

wtf pterodactyl suddenly doesn't support rar files?

wind patio
#

tar.gz gang

cinder flare
#

has it ever lol? rar is the WinRar file format, i doubt it has native support on linux

naive ingot
#

Hey guys, quick question. So im creating some spawner stacks, and im storing all of them in a map with the location, and then the stack. Im saving them to mongodb with json so it basically just saves the whole class. The issue i have now, is everything loads back in fine except the map bc its never technically saved in the database. What would be the best way of readding them to the map?

im using this to get the spawner from the map or create a new one, so without them in the map i cant get any of the saved ones.

        return stacks.computeIfAbsent(location, k -> new SpawnerStack(location, type));
    }

https://i.imgur.com/fOeyGMd.png

distant sun
#

well, why is it not saved in the database?

#

And, static access is bad ๐Ÿ˜ฌ

naive ingot
#

I mean, i figured i could, but that would be alot of data.

#

Yeah i try to stay away, but how else could i do it?

distant sun
#

through an instance of that class (where the map and the method are)

distant sun
naive ingot
#

Ohh ok i guess i see what you're saying

naive ingot
distant sun
#

ah I now see you have the map in the SpawnersStack class, welp

naive ingot
#

yeah

#

Should i move it to a manager, or whats a better way to do it without static?

distant sun
#

idk how mongo works but if it saves the map for each SpawnersStack then you should move it to another class that handles them (and not only because of mongo, it is the best practice to have 1 class for 1 purpose)

naive ingot
#

For my player data, i use a manager but i wasnt sure if it was needed for this.

distant sun
#

idk what I'm looking at

#

Move away the map from the SpawnerStacks class and it should be fine I guess

naive ingot
#

ok thank you

distant sun
#

also, I see you use a string for location, why don't you make some (de)serialization logic for org.bukkit.Location or whatever class you use for location?

#

so in code you use the location object and in database it can be saved as world.name;blockX;blockY;blockZ or even an object

naive ingot
#

I do, just mongo freaks out and causes a ton of circular referencing if i were to use the org.bukkit.Location class, so instead of having to trace that down i just save it as a string when its saved, and then deserialize it when i need it

distant sun
#

Location can't be deserialized straightaway because of the World field and you have to tell Mongo how to deserialize it properly

pastel imp
#

it had*

#

Hangar finally launches
Also Hangar:

static zealot
#

Haha

#

It is open beta only tho

frail glade
#

When you ping 30K people... 30K people try to open it.

oblique heath
#

:surprised pikachu face:

chilly zenith
#

tar.gz is much better anyways

#

You can use 7zip and open them without hassle

rotund egret
#

I'm excited for hanger, I've been waiting for years ๐Ÿ˜ฉ

half harness
#

https://github.com/JorelAli/CommandAPI/
Found this randomly while scrolling through hangar - has anyone used this before?
ITS HUGE!

atm I don't use any command library, so if I switch to this, I could also get some nice tab completion/tooltips ๐Ÿ˜Œ

GitHub

A Bukkit/Spigot API for the command UI introduced in Minecraft 1.13 - GitHub - JorelAli/CommandAPI: A Bukkit/Spigot API for the command UI introduced in Minecraft 1.13

half harness
static zealot
#

It is amazing

half harness
#

๐Ÿ˜ฎ

#

:))

#

its docs is also huge

static zealot
#

It makes the ability to create complex commands very easy

#

Last time I checked tho the annotation part was pretty behind so don't use that

half harness
#

๐Ÿ’€ wdym behind?

#

its also got extra kotlin support ๐Ÿ‘€

static zealot
#

From what the non annotation library has

half harness
#

well

#

um

#

๐Ÿฅฒ

static zealot
#

Don't use it

half harness
#

alr

static zealot
#

Non annotation is better

#

So many more features as well

static zealot
#

Also it's OS if you want to see how they're made

agile galleon
#

I personally use LAMP instead of CommandAPI, firstly because Kotlin works afaik, its annotations work great and its small

static zealot
#

I mean sure if you want annotations it might not be the best. Otherwise it is amazing. Also non annotation part works with kotlin

half harness
static zealot
#

Yeah

#

I like kotlin

#

Good language

rotund egret
ocean quartz
#

I wonder what specific about it that doesn't work in Kotlin, 99% of the annotation from java works just fine in kotlin

#

Also odd choice for the command methods to be static when using annotation thonk

agile galleon
#

yeah thats what i was thinking too

hard dagger
#

cuz kotlin doesn't have static methods

#

and i reckon they dont use reflection because they think its so slow which it rly isnt on modern jvms

#

and the bottleneck of pretty much any server isnt going to be reflection so i dont see an issue with it

wintry plinth
#

Ah is reflection much faster then in newer versions? I remember back for java 8 it was a huge hit

hard dagger
#

its still not insanely fast cuz it cant be jitted but its not that slow compared to what it used to be

#

from what ive read at least

potent nest
#

depends, it was reimplemented based on MethodHandles, but only in Java 18

ocean quartz
hard dagger
#

they couldve still achieved 0 reflection with instance methods anyway

ocean quartz
hard dagger
#

hm

#

lemme test this

ocean quartz
hard dagger
#

oh

#

is it diff for companion objects or smth?

ocean quartz
#

Yes, companion works slightly different

#

Companion creates a separate class for the methods
If you add jvm static to it then it'll create a static method that calls the companion method, basically

private static Companion companion = new Companion();

public static myMethod() { companion.myMethod(); }
hard dagger
#

ah

rotund egret
#

Kotlin has a lot of quirks

worldly sparrow
#

Anyone know how the color code &#FFFFFE is somehow turns out to be rainbow but i am not sure what plugin makes it work

obtuse gale
worldly sparrow
#

Both

obtuse gale
#

As I did today... Now

#

There you can create a gradient

worldly sparrow
#

I mean I wanted the rainbow code &#FFFFFE to work in oraxen

obtuse gale
#

And animation too

worldly sparrow
#

Yes

#

So for the rainbow with the animation to work with the oraxen plug-in texture pack on

obtuse gale
#

I think this is a better question to ask yourself oraxegen
Ask them where you can get the animation

worldly sparrow
#

They wonโ€™t know they donโ€™t have it only itemsadder do

#

I only want the animated rainbow text &#FFFFFE

obtuse gale
#

Try some animation plugin

#

Allow tab animations

naive ingot
#

Question, so im doing some custom like drops/levels with mobs so im making a custom stacking system. But my question is for the hologram above them, is it like efficient to teleport the hologram to follow them everytime they move or how should i go about that?

brittle leaf
#

above the head as having it riding on the entity can cause issues and it means you can customize how high it goes

gilded granite
#

I know similar things have been done before but I'm still quite happy with how this is turning out

#

You just need to edit a simple config file and the plugin makes a GPT prompt for the NPC

humble prism
#

Casino

#

didnt that get Origin realms Eula blacklisted or close to

naive ingot
brittle leaf
#

you could

#

or you can make your own

ruby dew
#

Hey everyone,

These hackers have been infiltrating various aspects of my life, from my home to my devices. What's particularly strange is that they seem to be obsessed with making my hous smell like poop. Yes, you read that right. They've found ways to hack into my home automation system and trigger unpleasant odors to be released throughout my house. It's been a constant battle to identify and block their methods, but they keep finding new ways to sasbotage my home's olfactory environment.

But that's not the wierdest part. In their attacks, I've noticed a recurring figure that's both familiar and unsettling. It's someone who bears a striking resemblance to a notorious individual. This person is a known mass murderer, terrorist, and internet comedian. I won't mention any names, but the resemblance is uncanny.

The images and videos these hackers manipulate with their AI tools include the familiar figure, and it's sending the chills down my spine. it's like they're taunting me with the presence of this notorious individual in my own home. I can't sleep I just wonder what their genda is and why they've fixated on this me and this figure.

I've been talking all the necessary steps to secure my devices and systems. But these hackers seem to have an arsenal of tactics at their disposal. They use distrubing imagery, including cartoons and xxxxgraphic content, to add to the unsettling nature of their attacks. It's been a surreal and unsettling experience, to say the least.

I've reported these incidents to the authorotieis, but progress has been slow. I'm trying to uncover the truth behind these cyber attacks and put an end to this ordeal. If anyone has any insights, I would greatly appreciate your input.

Best,
IElytrah

distant sun
#

@ruby dew are you ok?

ruby dew
#

as you can tell, im not

#

i will wait for professional scripters in HelpChat to help me

#

I reported to your department head

distant sun
#

Uh, what?

sly sonnet
#

probably been hacked or smth

#

or just trolling

remote goblet
#

i would not put it past me that wandering has been hacked

ruby dew
#

lmao you have some serious prejudice against me

ruby dew
#

using papi 3

chilly zenith
#

just relax or im timing you out

wind patio
#

!ban @ruby dew

ruby dew
#

You werenโ€™t like this

chilly zenith
#

Youre coming in here spewing the most out of pocket nonsense.

ruby dew
#

Nice you donโ€™t understand joke,this isnโ€™t national summit not even the whitehouse is so serious

#

Now you can time me out donโ€™t even care

#

Thx

pastel imp
#

bruh ๐Ÿ’€

remote goblet
#

okay barry

#

hooray, they're gone

frail glade
remote goblet
#

i had to check whether it was a copypasta

#

but it isn't

#

they genuinely wrote that themself

#

or copied it from whoever

torn kite
#

Such genius and intellect can only come straight from the mind

crude cloud
#

finally

calm basin
#

hey anyone there to can help me with an dev problem?

compact perchBOT
#
FAQ Answer:
ยป Give the helpers some details
ยป Ask suitable questions
ยป Be polite
ยป Wait

Source

half harness
rotund egret
#

2 late

calm basin
#

solved, thank you

rotund egret
#

Np

pastel imp
#

Eyo what?

rotund egret
#

Fix it

wind patio
#

but everything was fine

distant sun
lavish notch
distant sun
#

๐Ÿคฃ

pastel imp
#

Anyone here ever used caffeine or any other cache libraries?

#

Trying to find a good and easy to implement library

static zealot
#

Caffeine is pretty easy to use. Tho I've only ever used it to cache some simple maps. I don't actually know what all the things it can do are

crude cloud
#

caffeine is good

#

that's about it lol it "just works", it's highly configurable

wind patio
#

yeah it's pretty good

#

I use it daily

#

usually one cup, sometimes two a day

pastel imp
#

๐Ÿ˜‚๐Ÿ˜‚

#

thanks

distant sun
#

I need to make a library with a name related to coffee kek

static zealot
distant sun
pastel imp
#

๐Ÿ‘€

rotund egret
#

What if we called it: Java

pastel imp
#

Eyo

#

don't you talk like that to my beloved java

rotund egret
#

Use Kotlin then talk to me about Java ๐Ÿ˜Ž

pastel imp
#

Kotlin is for noobs

#

(I wish I had the braincells to use Kotlin instead of java ๐Ÿ˜ข)

rotund egret
#

It's not that different per se

wintry plinth
# pastel imp Anyone here ever used caffeine or any other cache libraries?

Caffeine is a drop-in replacement for other caching libraries, such as Guava cache.

Youโ€™d create a cache like,


Cache<String, String> cache = Caffeine.newBuilder()
            .maximumSize(100) // Set the maximum number of items in the cache
            .expireAfterWrite(5, TimeUnit.MINUTES) // Set the expiration time for items in the cache
            .build();

Then for example usage wise,


        // Add items to the cache
        cache.put("key1", "value1");
        cache.put("key2", "value2");

        // Retrieve items from the cache
        String value1 = cache.getIfPresent("key1");
        System.out.println("Value for key1: " + value1);

        // Remove items from the cache
        cache.invalidate("key1");

You can also create a cache that uses a loader function to automatically fetch values when they are not present in the cache. By specifying closure within the build method.

pastel imp
cinder flare
#

CHATGPT vibes

crude cloud
#

thanks chatg~ ๐Ÿฅท

pastel imp
#

caught

#

Either way it's appreciated XD

inner umbra
#

How long until everything you ask it will say it was generated by it?

#

lol

wintry plinth
#

It was telling me waffle so I condensed it

#

Iโ€™m surprised it tells you it was generated by it, as I took extracts rather than the entire response

rotund egret
#

Just ask it not to say that

pallid gale
#

๐Ÿงน Removed offtopic messages, stay on topic.

remote goblet
warm echo
#

what mistake i made ?

wind patio
#

what's the issue

#

it's likely the issue with the scoreboard plugin, not /papi reload

#

and it's #placeholder-api channel for these things.
try /papi parse <your-nick> %<your-placeholder>%

warm echo
#

well, i tried papi parse and it doesnt parse my placeholder, so i guess it the plugin problem itself

#

ok thanks

golden sun
#

So, I'm a bit lost here working with Metadata. I'm trying to store a list of ItemStacks within a blocks metadata. From what I can understand, MetadataValue can be a boolean, byte, double, float, int, long, short, & string. This is where I start to have some issues. I am not sure how to store the List of ItemStacks. Do I serialize each ItemStack then store the List as a string?

wind patio
#

well the first question would be why and are there better options of doing what you're trying to do

golden sun
golden sun
#

Oh, and why. I am using the blocks as a chest essentially

wind patio
golden sun
#

Oh, dope

#

Thanks!

distant sun
#

I thought it is Matt

ocean quartz
#

Nah

distant sun
half harness
#

d;jdk File#mkdirs

ruby craterBOT
#
public boolean mkdirs()
throws SecurityException```
Description:

Creates the directory named by this abstract pathname, including any necessary but nonexistent parent directories. Note that if this operation fails it may have succeeded in creating some of the necessary parent directories.

Returns:

true if and only if the directory was created, along with all necessary parent directories; false otherwise

Throws:

SecurityException - If a security manager exists and its SecurityManager.checkRead(java.lang.String) method does not permit verification of the existence of the named directory and all necessary parent directories; or if the SecurityManager.checkWrite(java.lang.String) method does not permit the named directory and all necessary parent directories to be created

half harness
#

true if and only if the directory was created
Is there something special with this method that makes it need if and only if?

#

(would every other boolean method also be "returns true if and only if ..."?)

#

And is there a reason for it explicitly say if and only if?

#

ex in File#createNewFile, it does not have if and only if

#

so... why the inconsistency? (both docs are in the same class - File, so I feel like it should be consistent)

crude cloud
#

NIO API my beloved

crude cloud
#

creates a new, empty file [...] if and only if a file with this name does not yet exist.
true if the named file does not exist and was successfully created

half harness
#

okay I didn't know if File had something else that made it not have it

wintry plinth
#

Oh so realistically you could run #createNewFile without the need to first check if the file exists or not? Thatโ€™s pretty neat

half harness
static zealot
#

Yeah. It seems like it hasn't registered the past 9 days at all or something

agile galleon
#

What the heck is wakatine

static zealot
# agile galleon What the heck is wakatine

it is like a work tracking tool or something like that. It can integrate with many many IDEs and lets you know how much time you've spent on a specific project for example

agile galleon
#

Ha

wind patio
#

there's also a browser extension

#

but not really useful for me since I always keep it open, so always counting time using it

static zealot
#

yeah. it has integrations with a bunch of apps not just IDEs

#

they have 82 officially supported apps and also some integrations

#

with stuff like github, google calendar, etc

potent nest
#

the github stuff never worked for me

pastel imp
#

you saw nothing

steel heart
#

๐Ÿ‘€

rotund egret
#

Jwt

pastel imp
#

shut

#

I am stupid

rotund egret
#

What's funny is I didn't even see it

pastel imp
#

lol

steel heart
pastel imp
#

Uhm soooo, kinda publishing a library to github (my first) and I am pretty sure there are better ways to either structure it or overall code it, either way, if anyone could check it out and give feedback accordingly, would appreciate it! https://github.com/xMrAfonso/Hangar4J

#

(Also, don't bully me for my very bad coding xD)

half harness
#

lombok ๐Ÿ’€

wind patio
#

lombok ๐Ÿ˜Ž

distant sun
#

Wth afonso

wind patio
#

๐Ÿฅถ

pastel imp
#

I said to not bully me lol

pastel imp
pastel imp
ocean quartz
distant sun
#

Yup

#

Why dont you use records for immutable classes and POJO for the rest like a normal person

#

And if you are lazy to type the getters and setters manually, use ALT + Insert ๐Ÿ™‚

wind patio
ocean quartz
#

I'm sorry to hear that

distant sun
wind patio
#

honestly with the scale of the product we've never had any issues with it

pastel imp
#

Will change it......

#

so record for HangarClient and Pojo for the rest right?

half harness
#

aren't records supposed to be POJOs?

pastel imp
#

aren't they different?

half harness
#

I thought records are Java's implementation for POJO

#

like kotlin data classes

pastel imp
#

hmm

half harness
#

unless im misunderstanding what POJO is

pastel imp
#

let me do research rn

half harness
#

oh

#

ig i was thinking of kotlin data classes

#

immutable > mutable

prisma wave
#

Pojo usually implies mutable

prisma wave
half harness
#

too much

#

๐Ÿ˜–

#

immutable memory

#

!

distant sun
pastel imp
#

Although I still find the way I did the requesting quite sketchy

#

lol

hard dagger
#

why are all the fields package private

pastel imp
#

yeah already fixed that

#

just pushed an update

distant sun
#

Donation, HangarProject etc. can be records

pastel imp
#

Can't everything in impl be records technically?

#

nothing will be changed

distant sun
#

yeah

pastel imp
#

so technically everything can be a record

half harness
pastel imp
#

Am I right on assuming making HangarClient class a record too?

ocean quartz
hard dagger
pastel imp
#

actually, there is one thing lol which is the jwt

#

Any thoughts on the way I am doing the requests? Any better known ways?

hard dagger
ocean quartz
#

I love serializable data classes, makes this stuff so much easier

@Serializable
public data class Example(public val name: String)

// Ktor
val example = get<Example>("path")
println(example) // Example(Matt)

// Retrofit
@GET("path")
public fun getExample(): Call<Example>
println(client.getExample().body()) // Example(Matt)

Lovely

rotund egret
#

Sealed classes are a blessing as well

ocean quartz
#

Absolutely love them too

pastel imp
#

gson.fromJson(response.body(), HangarVersions.class) would this still work even if HangarVersions is a record?

hard dagger
#

Yes

ocean quartz
#

It doesn't matter what they use to serialize, as long as what you use to deserialize matches

pastel imp
#

uhm after switching to records be like, might have missed smt... hmm

prisma wave
pastel imp
#

Yeah something's def. wrong, but no idea what... api key I right, this only happened after switching to records

#

might just use POJO ngl

pastel imp
#

Hmm interesting, seems like the issue is the fact fields are static in records

crude cloud
#

uh

#

no lol

ocean quartz
#

How did you create the record?

#

That doesn't make any sense

jovial siren
#

do you mean final?

crude cloud
#

fields are not static in records lol

distant sun
#

damn you summoned a second emily

ocean quartz
#

@crude cloud Hello koriLove

crude cloud
#

@ocean quartz hello :koriLove:

#

sadge

ocean quartz
#

:c

jovial siren
pastel imp
ocean quartz
#

lol

crude cloud
#

uhhh...

jovial siren
#

it says "make"

prisma wave
#

Thatโ€™s not how you define record fields lol

crude cloud
#

do you know how records work

prisma wave
#

they go in the parens

jovial siren
#

do you know what the word "make" means

ocean quartz
distant sun
#

calm down fellas ๐Ÿคฃ

pastel imp
#

I should probably go back to java classes cause I def. don't recall how records work lol

ocean quartz
#

Or you can take the opportunity to learn them

prisma wave
#

Same syntax as kt data class

distant sun
#

the fields are defined inside Class(...), it probably tells you to make it static because it is outside the constructor

ocean quartz
pastel imp
#

OH fk....

static zealot
prisma wave
distant sun
#

tbh I wish they were optional here

#

or if IJ would let me keep them as { }

ocean quartz
#

Yeah

pastel imp
#

hell I am both stupid and embarrassed lol

ocean quartz
#

It's fine, that's part of learning, everyone makes mistakes when learning

distant sun
#

not as bad you should feel about using ๐ŸŒถ๏ธ though

prisma wave
#

using nolombok = bad
Ergo using Lombok = good

#

Fail

pastel imp
#

tbh only saw records once, in theory at school, never used it again or saw it lol

static zealot
#

using no nolombok

distant sun
#

I swear I had more lombok emojis

#

๐ŸŒถ๏ธ

jovial siren
pastel imp
#

so this, I assume after several fields/params you can just stack them on top of each other, or is there a more fancy way?

distant sun
#

oh, sorry, hi Emili ๐Ÿ˜Š

crude cloud
#

a

jovial siren
#

oh i said that already

#

oops

pastel imp
#

hmm okay, would that be all the issues in my code?

distant sun
#

for now at least blushu

ocean quartz
#

Now attach a @Getter on top of a record pepe_super_kek

distant sun
#

@NoLombok

pastel imp
#

feels bullied

#

Although will try to do some clean up in HangarClient and also in the request handling, feels clunky and lacks error handling

#

Although returning null already says pretty much everything lol

#

Now only thing missing is the exciting part, documenting ๐Ÿ’€

pastel imp
#

now that's funny lol? (jitpack build log)

#

hmm probably wrong java version

hard dagger
#

U need to specify java ver in jitpack config

distant sun
pastel imp
#

Yup already found it, thanks.

#

Assume this is because I have no release in github?

half harness
#

can u show url of build log?

pastel imp
#

rip

hard dagger
pastel imp
hard dagger
pastel imp
#

wouldn't make sense, jitpack allows you to get from commits, etc...

pastel imp
#

ยจรจ

hard dagger
#

yes

#

u can leave out the group id, artifact id and version tho cuz theyll default to whatever the gradle project has set

pastel imp
#

but that's for maven central no?

hard dagger
#

no

#

any maven repo

pastel imp
#

yeah works, ty :3

distant sun
#

is possible to move a personal project to an org on github?

wintry plinth
#

Yup, transfer

distant sun
#

There's no transfer

wintry plinth
#

weird I see it

distant sun
#

Yeah because I said project not repository.

wintry plinth
#

Oh, by project I assumed you meant like, a "project" - seems not then

wind patio
#

project as in the 'board'?

distant sun
#

yes, that M0dii

#

I've made a copy, all good

vagrant bobcat
potent nest
#

you're reading an empty file

vagrant bobcat
#

the file is not empty though

#

had others having Unexpected character (d) at position 4500. aswell

#

WARN Unexpected token VALUE(3) at position 23500.

pastel imp
#

Call me crazy but I am using a CMS for my discord bot lol

rotund egret
#

Okay, you're crazy

pastel imp
#

sus

half harness
#

what is CMS?

oblique heath
#

content management system maybe

crude cloud
#

Call Me Skevin

prisma wave
#

Hello Skevin how are you today

oblique heath
#

Caress My Supple (Nose)

wintry plinth
crude cloud
# vagrant bobcat can anyone point me in the right direction as im struggling to find how to fix t...

You aren't closing the FileReaders, this can cause issues in the long run; I'd suggest using try-with-resources when using readers/writers/streams, like

JSONArray players;
try (FileReader reader = new FileReader(storagePath)) {
    players = parser.parse(reader);
}

The same with writers, the twr will close the reader/writer for you, so you don't have to call .close() explicitly (which also means you won't forget to close them, leaking resources leading to issues like this)
See:
https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html
https://www.baeldung.com/java-try-with-resources

static zealot
#

Hmm. Is it normal to not be able to use wget to download plugins from spigot? I can definitely download it while in an incognito tab (not logged into spigot) but when I try wget, it gives me 403

crude cloud
#

yes

static zealot
#

why tho?

crude cloud
#

because md5 is anti api

agile galleon
#

exactly

#

md5 is anti usability

static zealot
#

I see ๐Ÿ˜ญ

crude cloud
#

he doesn't like people using his platform from automated tools/scripts etc

agile galleon
#

thats why there are no verify bots

crude cloud
#

because he's stupid

static zealot
#

this sucks. to download a plugin on my vps now I have to open a browser locally, download the plugin from the ui, scp it into my vps which also requires my key pasphrase

agile galleon
#

yes it sucks

static zealot
#

I mean if I ever want to have a script or something, this plugin won't solve the issue either way. for now i've done it manually as I don't expect to download any other plugins any time soon

#

and for plugins such as luckperms and essentials I download them directly from their jenkins or whatever else they use

crude cloud
#

LuckPerms/metadata-api ๐Ÿ™

median yacht
vagrant bobcat
median yacht
#

Database?

#

Only never try to store data in YAML, it's extreme ๐Ÿ’ฉ*

half harness
#

Super good

obtuse gale
vagrant bobcat
rotund egret
#

If you're wanting to use Json, Mongo would be a good choice.
Otherwise something like sql would probably work fine.

brittle leaf
#

which means if your talking about an economy plugin then more then likely yes

#

for future reference

hallow crane
#

If anybody here has some experience with R&D/finance/pricing strategies I could use your help pricing my server

wind patio
pastel imp
pastel imp
#

Will do, also doing some extra improvements like returning CompletableFutures instead of the objects and let the dev decide if he wants to block the thread or not

lavish notch
pastel imp
#

uhm any reason why intellij wouldn't let me add the nullable annotation to a method? AKA its red, unable to import anything.

#

(cant share example, on my phone rn)

ocean quartz
#

Did you add the jetbrains annotations dependency?

half harness
#

@pastel imp

feral notch
#

anyone wants to help?

remote goblet
#

what is the ItemConfig class

#

but whatever your ItemConfig class is, it isn't imported in the plugin

#

Secondly, Config#save is not a method defined on your config class

#

in your main class, you're trying to reference a method that doesn't exist

feral notch
#

Can I dm you rq

remote goblet
#

sure

distant sun
#

My understanding of js might be low, but how can you not love 20 config files? I know some of them are different kind of files, but you got the idea kek

cinder flare
#

there are 7 separate programs at least configured in those files lol

distant sun
#

Yeah that was a bad example - smh me

cinder flare
#

and to be fair, the eslint, typescript, and prettier stuff is only for dev

#

idk what cliff is, but the lintstagedrc thing also looks to be dev

#

plus the gitignore i suppose

#

yeah not a lot of actual application config happening in those files lol

pastel imp
#

(thanks)

hard dagger
#

lmao

distant sun
#

Mojo is a new LLVM programming language designed as a superset of Python with the low-level performance of C. It is optimized to run on GPUs with CUDA and other exotic hardware for deep learning and Artificial Intelligence.

#programming #tech #thecodereport

๐Ÿ’ฌ Chat with Me on Discord

https://discord.gg/fireship

๐Ÿ”— Resources

  • Mojo Language...
โ–ถ Play video
wintry plinth
obtuse gale
#

Hey, I need help! I have a Crystal PvP arena in my SMP and basically, it allows explosions and I'm wondering if there are any plugins that can reset the arena!
Please @ me if you have a response!

wind patio
obtuse gale
#

thanks

static zealot
#

How are offline player UUIDs created in spigot? I know there was a way but I can't remember

distant sun
#

"OfflinePlayer:" + name

prisma wave
#

UUID.nameUUIDFromBytes(("OfflinePlayer:" + name).getBytes(Charsets.UTF_8))

#

^

static zealot
#

ty

crude cloud
frail glade
#

Mfw people are actually selling placeholder expansions on BBB now.

median yacht
#

People are dumb enough to sell literally everything. ๐Ÿ™„

frail glade
#

If it sells at all, it'll have made more than PlaceholderAPI has ๐Ÿ™‚

static zealot
#

correction: people are dumb enough to buy everything.

rotund egret
#

I always found it funny when softwares launch with console logs reading "if you bought this, you were scammed"

distant sun
#

What the heck

#

What happened with the resource moderation lmao

frail glade
#

ยฏ_(ใƒ„)_/ยฏ

distant sun
#

Duration: 1 month ($1.00 renewal)
kekW

agile galleon
#

Why would anybody want this?

#

Just write it out????

distant sun
#

Why would anybody do this*

agile galleon
#

Why*

wind patio
#

๐Ÿ’€

frail glade
#

ChatGPT just wrote it for me in about 10 seconds.

wind patio
#

1 bobux for like 10 lines of code

#

ainnoway

rotund egret
#

a month

wind patio
#

a month ๐Ÿ’€

frail glade
#

No idea if it actually works or not, but seemed pretty easy.

#

At least ChatGPT knew what I wanted.

wind patio
#

capitalize boys

rotund egret
#

Imagine though

distant sun
#

I don't think String#title exists or #toCamelCase ๐Ÿคฃ

rotund egret
#

Eh, a tiny lib will solve that

frail glade
distant sun
#

great

#

now compile it and sell it on bbb ๐Ÿคฃ

rotund egret
#

The lib I had in mind too actually

median yacht
#

Let's make it a free part of PAPI and ruin his business ๐Ÿคฃ

wind patio
#

The code is yanky but the effort for actually doing something is still close to 0

frail glade
#

Nah, that's just an asshole move, but I'm just surprised they actually are allowing people to sell placeholders on there.

wind patio
#

the AI era ๐Ÿ’€

median yacht
#

AI language model

frail glade
#

I think I saw somewhere someone was working on a ChatGPT implementation of a quest / storyline for in-game NPCs, which I think is pretty dope.

rotund egret
#

Oh I saw that too.

wind patio
#

It's so funny to see people with little to no experience in actual development/programming saying that this will take over peoples jobs ๐Ÿ’€

rotund egret
#

The jump cuts made me weary of what they were actually doing though

frail glade
#

I was playing around with HF's embeddings and LangChain yesterday to potentially have Barry understand our wiki, and it was okay... but still has some work to go.

wind patio
median yacht
#

Right wanted to send this ๐Ÿ˜„

static zealot
#

still, it will take some jobs. And it is understandable. So many desk jobs are people just doing nothing for most of the time and every now and then handling some stuff. There's also other repetitive jobs that can be done by machine learning.

#

We've seen amazon use just robots to run an entire store for example. Also, non human controlled machines in warehouses have been a thing for a long time and are becoming more popular

wind patio
#

robots been there for a while now though

static zealot
#

it counts

#

author*

distant sun
#

yeah it says it sold 0 copies

half harness
#

ohh

#

oh im blind

static zealot
distant sun
#

wth 7800?

static zealot
#

yeah. in a few years tho

wind patio
#

yeah idk what's IBM (europe gang)

rotund egret
#

Tbf, there's a lot of menial labor jobs that could easily be replaced with AI

static zealot
#

but IBM has been working on AI for decades so I'm not surprised

distant sun
#

time to learn a new skill set ig

static zealot
half harness
# wind patio yeah idk what's IBM (europe gang)

The International Business Machines Corporation (IBM), nicknamed Big Blue,[6] is an American multinational technology corporation headquartered in Armonk, New York and present in over 175 countries.[7][8] It specializes in computer hardware, middleware, and software, and provides hosting and consulting services in areas ranging from mainframe computers to nanotechnology. IBM is the largest industrial research organization in the world, with 19 research facilities across a dozen countries, and has held the record for most annual U.S. patents generated by a business for 29 consecutive years from 1993 to 2021.[9][10][11]

distant sun
#

nah not talking about us

static zealot
#

I mean, those people probably don't have "a skillset".

wind patio
half harness
wind patio
#

with copilot (hopefully copilot X soon โ„ข๏ธ) and chatgpt

rotund egret
static zealot
#

Yeah. Definitely. And companies are starting to make their own AI models or just take existent ones and train it on private data just to help their own emply

rotund egret
#

I don't think any company is going to use AI to help their employees

static zealot
static zealot
#

well, they're working on a few things but that's one that I can't wait for

rotund egret
static zealot
#

I don't see what jobs could be lost?

wind patio
#

strange how the bubble of machine learning has bursted only when chatgpt got released and now every company/person/whatever is on the bandwagon

static zealot
#

we as developers write the documentation and we have to find it ourselves

rotund egret
#

Yes, certainly

static zealot
#

it will just save me 2 hours of reading documentation when working with an api no one worked on for 5 years

static zealot
static zealot
rotund egret
#

Ok?

wind patio
#

at least I don't have to write documentation in my company ๐Ÿ˜Ž

static zealot
#

idk. I just feel like you're being sarcastic and my brain is trying to figure out why. You probably aren't.

rotund egret
#

The code is self-documenting ๐Ÿค“

wind patio
#

well, analysts and architects

#

I'm just a programmer

distant sun
static zealot
obtuse gale
#

Hi
How do I get these emjois on my scoreboard
Ping me if you have an answer

distant sun
#

don't cross post @obtuse gale

brittle leaf
#

id assume they are talking about unicode?

#

if so just copy and paste them from the internet

#

there are plenty of lists of unicode characters

past wyvern
#

Can somebody suggest me some good gui shop plugins where I can create more than 1 shop for citizens?

#

could pay for it tho

agile galleon
#

no

#

excellent shop

lavish notch
#

Time to copy some features.

inner umbra
mental trench
#

I didn't like either, Iroman died.

inner umbra
static zealot
prisma wave
#

the office

#

(american version)

static zealot
#

That makes so much sense!

inner umbra
#

For the ones not joking read the link.

prisma wave
#

i dont open links through discord

static zealot
prisma wave
#

dang

inner umbra
distant sun
#

do you know know some FTP client (or extension for IJ/VSC) that has a file explorer similar to this? I need to navigate through files easier and faster

#

And well, WinSCP is at the opposite pole from "easier and faster" xD

cinder flare
#

you can just open a remote directory in VSC and it gives you basically that

#

very nice

distant sun
#

Sounds good

full anchor
#

Does anyone know how to open a zipped folder in a panel? lol

lunar flume
wind patio
distant sun
#

You can have one folder opened at a time and you need to go back and forth when configuring plugins

crude cloud
#

your mother

distant sun
#

That too but I didn't want to be rude

wind patio
rotund egret
#

๐Ÿค“

distant sun
#

I would still rather use smth like VSC tbh

wind patio
distant sun
#

Yeah but that still requires to navigate to each folder first. Idk, I find it annoying, especially when first setting up the server

wind patio
#

Hard times create strong men, strong men create good times, good times create weak men, and weak men create hard times

#

๐Ÿฆง

tacit smelt
#

hey there everyone I'm just letting you know that if you need advice or help with anything relating to web development, don't hesitate to contact me. I can provide you that advice or assist you.

prisma wave
#

thanks charles, i've been going through a few things at the moment and your support means a lot

#

glad to have you by my side man

#

you're a real one

humble prism
potent nest
#

I think every web developer is going through a few things

distant sun
#

Center a div

pallid gale
#

<marquee>

prisma wave
wind patio
#

are spiders web developers too

oak kindle
#

Hey, so I just noticed ChatColor is deprecated, what is a non-deprecated method for color now?

wind patio
#

org.bukkit.ChatColor

distant sun
#

You are probabily talking about paper, if so, there's some constants in NamedComponentColor (iirc thats the name) and you can create your own using hex

hard dagger
#

NamedTextColor

#

Close enough tho

remote goblet
brittle leaf
#

afaik deprecated doesnt mean you cant use something, just means theres a reason why you shouldnt

remote goblet
#

i will be accused of no such thing

brittle leaf
#

chatcolor will more then likely never be removed, its just deprecated in paper since paper uses adventure which doesnt use chatcolor afaik

#

and they deprecate all methods that used strings insyead of components for colored text

#

or atleast thats my understanding

sharp blade
#

hm any one knows how i change the level of ranks ?

#

in lucky perms

wind patio
#

how about unlucky perms

sharp blade
#

:

distant sun
brittle leaf
sharp blade
#

its on .115

#

yet below every rank

brittle leaf
#

to imgur or whatever and paste the link

sharp blade
#

sure

sharp blade
brittle leaf
#

i said upload to imgur

#

you can post imgur links afaik

sharp blade
#

o

#

oki wait

#

this ?

brittle leaf
#

looks likes its above the other ranks

sharp blade
#

yes

#

but in game

#

its like this

brittle leaf
#

you didnt say anything about the issue being on TAB

median yacht
#

Then the tablist plugin is not set up well

sharp blade
brittle leaf
#

yep pretty much that

sharp blade
#

another question about luck perm

#

like how do i allow a rank like unkown to have 15 homes

#

and like that ?

brittle leaf
#

if your using TAB by neznamy then in one of the configs theres a groups list you have to modify to sort them

median yacht
brittle leaf
sharp blade
#

hm

#

thanks : )

brittle leaf
#

you will find it

#

so for both issues it was mever a luckperms issue

#

also for future reference use #general-plugins or #minecraft when wanting support with configuating plugins cus this channel is for developement talk

sharp blade
#

oki !

#

thanks for the help

ionic gust
frail glade
#

Unrelated, but also related, I just approved the project on Hangar.

ionic gust
#

was that cause u saw this msg or just pure coincidence?

frail glade
#

Cause I saw the repo

#

And saw it was on Hangar

#

And then saw it wasn't approved yet

half harness
#

wait, what are file objects?

#

or is this just an idea before actually implementing?

#

Since note that spigot already has stuff for this, and while you don't have to use its serialization system, its serialize and deserialize methods might be useful since those are maintained

#

also unrelated but wow, that's a lot of sites to update on ๐Ÿฅฒ

ionic gust
ionic gust
half harness
ionic gust
ionic gust
#

its a bit ugly but it works lmao

half harness
#

ah

frail glade
#

Mfw

half harness
#

wowwwwww

#

90 public?

#

I have like 3 public or smth, all of which are unmaintained ๐Ÿฅฒ

pastel imp
#

I still need to redo the readme for Hangar4J ๐Ÿ’€

humble prism
#

??

crude cloud
#

xd

languid zodiac
#

i

#

crap

ionic gust
#

15 plugins, each on 6 platforms (7 if u include github)

past wyvern
#

hey, im looking for a plugin which spawns randomly ores in specific regions as a replacement for stone - does someone here knows any?

inner umbra
#

Really no txt SMH

#

Can you post single files to github?

agile galleon
#

github gist?

#

paste service?

inner umbra
#

Those would work but I'm just gonna make a repo cause it will eventually have more files.

agile galleon
#

bruh..

inner umbra
# agile galleon bruh..

Its currently a single class from my library I'm working on. Its gonna have more classes so might as well just make the repo now xD

crude cloud
#

gist can have multiple files

#

but yeah, it's not a repo and it's text only

inner umbra
peak whale
#

404 not found

inner umbra
#

Ah one sec

inner umbra
#

Also the reflection library isn't the library I'm working on I just have to make a reflection library to help with the NPC library I'm working on...

agile galleon
#

no gradle? or other files?

#

none of your popular repos have any build tool?

inner umbra
agile galleon
inner umbra
#

I do use maven and gradle from time to time but prefer to not use it.

inner umbra
agile galleon
#

but there is no pom.xml?

#

jeez you excluded it

inner umbra
agile galleon
#

why does it have file paths?

inner umbra
agile galleon
#

ah yes

#

ill just stop questioning it

inner umbra
#

But all the "code" is there. So you would just copy the repository and apply maven then add spigot to the depends.

#

Tried making it require as little as possible though cause the core handles all of spigots API calls or NMS

ebon grotto
#

Hello @quiet depot, I want to update your Hot Swapping guide and add how to do it on VSCode (yes it's possible :p). Can i copy bites of your guide? principally the Info section, i find it well redacted

ocean quartz
#

VSCode for Java ugh

ebon grotto
#

It kinda works x)

distant sun
#

Just because it works it doesn't mean it should be done ugh

ebon grotto
#

Well for making Minecraft plugin i didnt have any issue, vsc has developed their Java extensions. And itโ€™s a nice choice for people coming from vsc that donโ€™t want to learn a new IDE, a new set of shortcuts etcโ€ฆ

wind patio
#

๐Ÿฅด

ebon grotto
#

Not only shortcuts ;)

#

But thatโ€™s not the point, I just wanted to update the guide

half harness
# inner umbra So been working on a new library for a bit now. The reflection portion has taken...

how are people supposed to use it though?
It doesn't seem to be meant to be copied and pasted as you've got a whole package structure and I assume you'll be adding more classes
There's also no maven/gradle, so it doesn't have a reproducible build setup, preventing jitpack (which is what is used a lot of the time to import a project on github) from being used
So... users would have to clone the repo, manually add maven/gradle, create the jar, then import that into their project (and repeat every time you update the library)?

#

you shouldn't be excluding pom.xml, if it's got private info, move that into another file such as .env (or whatever is used, idk I just use relative paths and variables)

inner umbra
half harness
#

people can't contribute easily either

#

unless its like a really minor fix

#

a big reason to use build tools is to make reproducible builds and environments, not just handing your dependencies

inner umbra
prisma wave
#

^^ hardcoding paths is bad practice even if it's only you working on it

prisma wave
#

so might as well make it closed if you dont want people using it

inner umbra
half harness
#

if they decide to make any changes, they'd likely not contribute back due to them having to manually prevent git from adding all the gradle/maven stuff though, etc etc but Yapperyapps already noted/acknowledged/responded to this

inner umbra
#

Only reason I use github is because it's the most notable. I hate alot of the features like commits and such but ๐Ÿคท

prisma wave
#

?

#

commits are not a unique feature to github lmao

#

thats just the fundamentals of how git works

inner umbra
#

I know. I don't like it lol

prisma wave
#

you are very odd

inner umbra
#

I would like to just post the latest update and that's it.

prisma wave
#

yeah you can do that

half harness
#

the whole point of git basically is commits (VCS)
Without it, it basically serves the same purpose as a regular file hosting service

prisma wave
#

it's called a commit

#

^^

#

legit just use like google drive if that's all you want

half harness
#

but I assume yapperyapps uses github for the code highlighting? and the additional code stuff that github adds

#

and it's more familiar (as drive isn't really used for code)

inner umbra
#

I use git to display the code in a repo. So the whole project can be read together.

inner umbra
half harness
#

ye but google drive can do that too

but also, you can't keep thinking like this if you want to work in a team (like in a company)

half harness
#

uh

#

alr

inner umbra
#

I've always said I don't like working with others

prisma wave
#

there are also benefits for proper versioning even in solo projects but i dont think we're ready for that conversation

half harness
#

Even if you're going to make a project intended to make money (starting your own business), you probably won't go far without anyone's code

#

edited since I was thinking of smth else and so I'd have to fact check

inner umbra
prisma wave
#

better make your own programming language then clueless

half harness
prisma wave
#

and of course, move away from the JVM

#

or make your own JVM implementation, at least

inner umbra
prisma wave
half harness
#

and even if not, using libraries that are well documented and open source can help

inner umbra
#

"The best" is always an opinion. Who knows, my code could be better then a library used by many, it could be worse or even match it. Depends on the user.

prisma wave
#

"The best" is always an opinion
that is not necessarily true

#

there are many instances in software when, excluding something in-house, there is a best option

prisma wave
#

for a specific set of requirements*

half harness
#

it can be an opinion, if there are multiple very good and performant ones

prisma wave
inner umbra
prisma wave
#

?

#

so

inner umbra
#

So it would be your opinion that it's "the best" and maybe to others as well. But it isn't actually.

prisma wave
#

a library isn't good because the self-proclaimed library-hater hasn't heard of it

prisma wave
#

can you name a better alternative?

#

because if not, it's the best, by definition

inner umbra
#

Because it's your opinion xD

ocean quartz
prisma wave
#

no it's not lmao

half harness
prisma wave
#

what does that have to do with anything lmao

half harness
#

its the fastest out of performance

prisma wave
#

well

#

yes*

half harness
#

can't say much in other categories since i haven't used either of the other libs

prisma wave
#

i dont trust redempt's benchmarks but that's irrelevant

half harness
#

lol

prisma wave
#

but yeah i mean this is my point

#

if your requirements are "a fast math evaluating library", then sure, assuming the numbers are accurate, crunch is the objective best

#

it's not a matter of opinion

#

of course there is subjectivity in your requirements and preferences

#

but my point is that for a given set of requirements there often is an objective best

inner umbra
#

Technically speaking the only time something could be "the best" if there was only 1 of it.

prisma wave
#

are you not reading what im saying