#dev-general

1 messages · Page 51 of 1

oblique heath
#

a user could feasibly put /reload afonsoplugin as a command

pastel imp
#

But for that to work, they would have to reload it once at least

#

For it to update

#

Or have access to the files of the server

oblique heath
#

no they would willingly set that up themselves

#

because it saved them effort

pastel imp
#

That is why I am not letting them set commands like I said before

oblique heath
#

what?

#

your entire service is letting server owners set commands to be run

#

??

pastel imp
#

No

oblique heath
#

did i misunderstand this entire time

pastel imp
#

Maybe? Idk

#

I am bad at expressing myself

#

Lol

oblique heath
#

🤔

pastel imp
#

Agyer

#

After*

oblique heath
#

like from our long talk, i understood that a server owner would be able to automate command runs using your service

pastel imp
#

.

oblique heath
#

uesh

#

yeah

#

that doesnt make a difference here because this isnt "any" command

#

this is a command server owners would add intentionally, by themselves

#

is my point

#

maybe thats not a huge issue because only skill issue server owners would be vulnerable

#

but its still definitely something that could be used to nitpick your service

pastel imp
#

Well, let me restate the idea with the new changes.

MC plugin will be constantly sending data to the webserver, it will be analysed and if needed, it will react by sending an action to be executed by the mc plugin. This action, is not a command, it will be predefined actions. For example, ban X player, which will be sent to the mc plugin and it will ban that player. But in the settings, they can also configure if they want to use a builtin ban system or if they prefer litebans or whatever else. (This was why I initially wanted to let them set commands, to allow them to use whatever plugin they wanted but most plugins have an api for it, and I could also just make a way to hook into the mc plugin api for custom plugins to also work)

half harness
#

You could just have like a long string as an auth key

#

Simple ez auth

#

Maybe not the safest tho

#

Lol

#

Wait ivan

oblique heath
#

ok

half harness
#

Radioscanner had auth right

#

Or like security

oblique heath
#

yeah

#

it uses rsa keys as its auth

#

without knowing the correct key you would not be able to send data that can be interpreted

#

man i havent touched that project in forever

pastel imp
#

Tbf I think the issue is solved, right? Since they won't be able to set commands nor can I personally execute comma ds, it's a W?

oblique heath
#

yeah i think you're good

#

get crackin

pastel imp
#

Not yet

#

Was just planning some stuff

#

But before I start the project, I need to focus on studying for my exam next month

#

Lol

#

That'a priority now

#

(Fking hate maths)

oblique heath
#

psh

cinder flare
#

Redis

#

polling

cinder flare
#

sorry i read that kinda piecemeal, but those are the things you should look into as a best bet

#

Redis if you control both sides, Polling if it has to happen at random times, and HTTP response if it can only happen after data has been sent

gusty glen
cinder flare
#

oh yeah websocket can be good, just has a lot more serverside resources to manage in terms of keeping connections alive and stuff

#

polling is probably easier for most usecases and scales better

pastel imp
pastel imp
#

Also, yes, http requests are on the table, my concern is the amount of requests I could potentially get.

cinder flare
# pastel imp what's polling?

Just continually sending http requests asking if you should do something, every minute or so should be plenty and scale very well

#

If you have less than like a few thousand customers, you could probably bump the frequency up if that matters

pastel imp
#

Hmm I see, thanks a lot!

wind patio
#

ah yes, polling

oblique heath
#

polling want a cracker

wind patio
#

"you done yet?"
"no"
"how about now"
"no"
"maybe now?"
"yes"

dim trout
#

Why is Barry broke

sweet cipher
#

Probably because he doesn’t get paid

cold prawn
#

I have a world that i wanna restrict access to only a couple hours a day, anyone got any ideas to do it without mega fuss?

cinder flare
#

is this like, a multiverse setup? or like a proxy setup?

cinder flare
#

do you control how people swap between them? or do they just have permissions to do the commands anywhere

cold prawn
#

gonna be a dm menu

cinder flare
#

oh then what's the problem

cold prawn
#

well im not really sure how to do the multiple states well in dm, but thats a diff issue

cinder flare
#

just do a condition if the time is between x and y

cold prawn
#

more so is there a permissions context for example for time?

#

cause that mostly

cinder flare
#

i wouldn't do a permission context for time

cold prawn
#

also when it runs out of time ppl should be sent back

cinder flare
#

oh do you have a scheduler of some kind?

cold prawn
cinder flare
#

yea

cold prawn
cinder flare
#

yes that would work

cold prawn
#

unless u mean some plugin

cinder flare
#

just do a command that moves everybody in that world

#

and set it to pterodactyl schedule whenever you want

cold prawn
#

is there a command like that?

cinder flare
#

not sure for multiverse honestly

cold prawn
#

ah, well either way i feel like for that its worth to create a plugin tbh

#

to handle like countdowns and warnings etc

cinder flare
#

oh nah

cold prawn
#

ofc could do with schegules but plugin seems easier no?

cinder flare
#

just broadcast a message like 15/10/5 minutes before in ptero

#

that's literally what my server network does for scheduled restarts

cold prawn
#

Probably is the better option, just me wanting to run away from cronjobs :)

#

but yea ill give that a go

cinder flare
#

looks likle you can mvtp <player> <world>

cinder flare
cold prawn
#

well id need every player that is in that world

cinder flare
#

it's built into your operating system

#

yeah not sure about like wildcards

#

but i mean it'd be trivial to make a command that just does that if you want to go down the plugin route

cold prawn
cinder flare
#

i mean i feel like everyone might want to know

#

if they want to go there last second or whatever

cold prawn
#

but yea will probs just add console only cmd for broadcasting per world and tp

cinder flare
#

yea

cold prawn
#

well the idea is that we have 2 resource worlds and one has mega resource buffs but has pvp on and is only on for a couple of hours

#

but writing that to explain why the broadcast should be only in the world kind made me realize it shouldnt :)

pastel imp
#

I am still confused if this is a custom plugin or not

cold prawn
#

which part

pastel imp
#

I guess not?

cold prawn
#

ah

pastel imp
#

hence my confusion

cold prawn
#

it could be, thats why asked here

pastel imp
#

thought it was a plugin

#

well yeah, you can do a plugin that handles all that

cold prawn
#

#minecraft seems bloated, and not really looking for a use plugin X

pastel imp
#

sure

pastel imp
#

but it's fine I guess

cold prawn
#

ill try cronjob, for timings and then a couple custom commands

pastel imp
#

should work

cold prawn
#

@cinder flare big thanks

pastel imp
#

MyCommands is also quite extensive and custom

#

if I recall correctly

#

can give it a try too if ya want

cold prawn
#

Ill see, looks very extensive, probably at that point would just do my custom plugin implementation

dim trout
#

guys

brazen ether
#

guys

oblique heath
#

"Hello" in Chat.

brazen ether
#

varying resolutions for shulkers

#

0.1 block resolution on the left and 0.25 on the right

brazen ether
#

@timid gate Are you using Stable Player Display for those animations?

brazen ether
timid gate
static zealot
#

Does anyone know if NetCup has a service that allows upgrading from one generation of RS to another? Or do I have to email them for that?

static zealot
#

Found their FAQ page. It is impossible to upgrade from older generations (9) to newer ones (11). Fortunately I don't have that much on it so it shouldn't be that hard to migrate it manually.

Source: https://helpcenter.netcup.com/en/faq

bronze olive
#

How can i create custom enchants in 1.21?

tacit briar
#

Which skyblock plugin do you recommend i use for now?

brazen ether
foggy pond
#

Is having all my plugins for my network be in the same gradle project, each being a separate module make sense?

#

Since right now they are all separate projects

#

I was thinking of having libs.version.toml for the whole project, that way all my plugins can easily be on the same Minecraft/Paper version with less effort

#

Plus if I am working on separate plugins at the same time I can just do that in the same project window yk

#

Not sure if anyone's tried that yet, it sounds neat on paper tho

distant sun
#

Why not

half harness
#

I feel like at that point you could just have 1 big plugin

#

and separate features by packages

#

or I guess it might be harder to migrate rather than just new modules

foggy pond
#

I think this way I'd have the positives of multiple plugins and the positives of having one big project

half harness
#

note that you'd still have one plugin.yml and one main class

foggy pond
#

Wdym

half harness
#

oh wait

foggy pond
#

Nah

half harness
#

ohhh I see what you mean

#

yeah

foggy pond
#

The main issue would be having one massive repository with everything

#

But at the same time that's not necessarily that bad

#

I kinda hated having 10 repositories on GitHub all for these plugins

wind patio
#

personally I have a single intellij project with multiple plugins myself, each one is considered a module, though they are built individually.
one is a "core" plugin, other plugins handle stuff like discord integration, worldguard additions, rest api
the modules depend on the core plugin which handles most of the dependency (like vault api) stuff

#

and yeah, its a single repo

#

it was really annoying having to open a new intellij window each time I needed to modify other plugins

foggy pond
#

Yeah alright cool glad to see it's a common approach

foggy pond
#

having a brain fart: where is the name of the built jar defined in a paper gradle project?

cobalt elbow
#

Hi everyone. i need one litle help. I need get player biome using placeholder API, but return this result

- "Biome: %player biome%"
result: Biome: FROZEN_RIVER```

Just need change format of result to

```text
Biome: Frozen River```
cold prawn
#

Could use js :)

#

but also there are probably expansions for that already out there

distant sun
#

%player_biome_capitalized%

cold prawn
#

or that :D

cobalt elbow
distant sun
#

Are you coding a plugin @cobalt elbow?

cobalt elbow
distant sun
#

A plugin or config? If it is a plugin and it uses adventure components, I think you can get the translation key of a biome and do this quicker.

cobalt elbow
#

use placeholder

pastel imp
cold prawn
#

Kind of reminded me of a question ive had, this topic.

How performant is mysql for example or any db really, whenever I make plugins i usually try to keep everything in ram mostly cause its easier and ive never really had the need to be able to be server agnostic with the data, but does it matter? Ive always thought that "iN rAM betTeR caUsE no delay", is it though?

#

all im really asking is if for a average ish plugin with some state manegment should you keep things locally or just use the db as the source of truth for every request

forest pecan
#

depends on a lot of things tbh

#

like the type of data you are storing, how much of it, how you are going to acess it,.. etc

oblique heath
#

if you're storing a relatively small amount (few Mb to few dozen Mb?) of data, and you dont have to join it or anything, then there isnt much point in using a relational db over a flat file

oblique heath
#

oop wrong reply wtf discord

#

i'd say only reach for mysql if you are sharing data across multiple applications or if you have an absolutely enormous amount of data / insanely normalized relations that deserve to be offloaded to a different application

cold prawn
#

Yea thats what ive usually done, i have two examlples from recent work.

  • A "towny fly" plugin, i ended up using h2 but i did the approach of where the server is the source of truth, so everything is in ram, and once state changes it just serializes to db, and ofc loads from db on startup and serializes on die
  • A "stock" like market so i have to keep track of every purchase and sale to calculate price, what i ended up doing was just keeping it in memory and pushing to db every X seconds(was kind of needed so i dont have to nonstop update menus etc)
#

So for the towny fly i feel like i could had just fetched from db instead of saving in memory, just to be less complex right?

#

The market thing not really sure though, i used mysql btw, but idk how i would do the batching

#

@oblique heath What do you think ;)

oblique heath
#

for the towny fly yeah you could probably use just h2, but i personally always make my own layer of in memory caching for sanity's sake so i could go either way on it

#

market is kinda the same story as towny, not sure why you would need mysql for that? was it only a single mc server running that?

cold prawn
#

Well the reason we did is cause we have the market prices on our website too

oblique heath
#

ic

cold prawn
#

But yea h2 probably would be fine too

#

But if id do the market only with db, idk how id do the batching

oblique heath
#

well if the website is pulling from the database separately from the mc server then that's a valid reason for mysql

#

you cant access h2 or sqlite with multiple applications at once because they're just files

cold prawn
#

Yup

#

Are there any good abstractions to make the caching logic easier?

oblique heath
#

not that i know of, but its also not too difficult

#

just throw hashmaps at it until it works

cold prawn
#

yea but gets repetitive rewriting same logic for 5th time :D

oblique heath
#

byeah

#

idk maybe there is something out there for that

#

i've never looked into it much

pastel imp
#

Just adding to the convo, imo, you should only cache if you expect to use that data a lot of times or give the player that control (commands for ex. Which they can spam) you can always take the approach of timed caching with something like hibernate, when not present, get from db, otherwise get from cache, cache expires then every 5mins or so.

#

The difference between this and pushing every 5mins is that you don't cache all the data every 5mins, only after it is required for the first time. This prevents useless caching of unneeded data.

#

Sorry if I didn't explain correctly btw, kinda late

#

But yeah, in general, rule is to cache data you expect to use constantly, and fetch directly data that may be needed once in a while.

eager lodge
brazen ether
#

@timid gate you mentioned you're using ModelEngine for the player animations, does it take the player skin automatically or do you have to hardcode the texture?

#

that kind of thing is impossible without shaders so im a little curious

timid gate
cold prawn
cold prawn
#

Cause I don't think a proper system with demand would work well in mc

#

As most items are just consumables or just junk so they would be worthless bcs of endless supply

eager lodge
cold prawn
#

Yea that would be tough

#

Also had issues with the expression

#

But I figured something out 2 years ago and idk how it works but it works

#

¯_(ツ)_/¯

#

But yeah my plugin wouldn't fit ur needs

eager lodge
cold prawn
#

Well I just have a formula that essentially gets the ratio of bought and sold and alters the price with that

#

I made it for myself so its mega wonky

#

The only interface it has is placeholders

#

So u use the placeholders for each item u create in deluxe menus and then just use a CMD to log how many are bought and sold

#

Just not user friendly at all

pastel imp
eager lodge
eager lodge
pastel imp
oblique heath
#

he said he does use mysql for this plugin

#

since the data is also used by a website

pastel imp
#

Oh nice

cold prawn
#

Yup

eternal hound
#

@pastel imp hey are u good?

#

I have a doubt that maybe u can help.
Do you know a way to display a specific information of placeholderapi in a DiscordBot? (Made with JDA)

foggy pond
cobalt elbow
#

Or just add png inside folder font, and reload resource pacj ?

eternal hound
cold prawn
#

ah assumed u have the bot running inside a plugin

#

what placeholders do you want to pull?

eternal hound
#

first experience with bots

#

The plugin can control the bot and initialize in the "OnEnable" using JDA?

#

If its that, that's cool and easy to do

eternal hound
cold prawn
#

but i assume so

#

im pretty sure most plugins that have discord integration do that

cold prawn
cold prawn
#

cause if it does u could just pull from that

#

and done and dusted

buoyant basin
#

Hi

eternal hound
eternal hound
#

So I gonna do it

#

haha

half harness
compact perchBOT
#

v1.0.4 by Fredthedoggy
A Rest API to Interface with PlaceholderAPI

Downloads:

366

Rating:

5.0★

Reviews:

8

eternal hound
#

Oooh that cool man

pastel imp
foggy pond
#

is there a flag or something upon starting a paper server, which changes where the plugin data folders are stored? so that I can have a separate folder for the jars (./plugins) and one for the data folders (./plugin-data)

#

It's not really a dev question so i put it here haha 🥲

pastel imp
#

doubt

foggy pond
#

i mean there is a way to change the directory the worlds are stored in

pastel imp
#

You can always create those folders outside by yourself

foggy pond
#

So maybe I assumed there would be a way for that to happen for data folders too

pastel imp
#

hmm better ask in paper's discord

foggy pond
#

I have, nobody's answered yet for now

pastel imp
#

where did u ask that?

foggy pond
#

paper-help

#

Just in a bit of a mess rn, since I have to bind the plugins folder to a volume in order to store the config.yml files between sessions

#

But if I bind the plugins folder, the jars are also stored which makes updating plugins more complicated than it should be

half harness
pastel imp
#

pretty sure plugins are the ones who decide where to create those folders

#

but most use the datafolder

#

so, yeah, if you are able to change that, W.

#

But might not work for some specific plugins that use a different way

crude cloud
#

uh you should be able to just pass --plugins ./foo/bar in the cmd line

cinder flare
#

does that leave the data dir as /plugins/<name>/?

crude cloud
#

like if you do java -jar paper.jar --nogui --plugins ./real-plugins-folder it will just be there instead, that's where you put the jars and e.g. luckperms' data dir will be ./real-plugins-folder/LuckPerms etc

cinder flare
#

yeah but the point of what they were asking is if you could have the data dir not be a child of the plugins folder

#

so you could have /plugins/LuckPerms.jar and then /plugin-data/LuckPerms/...

crude cloud
#

oh, uh, in theory it is possible yes

#

you'd set --plugins to plugin-data and also use --add-plugin for every jar in another folder (so --plugins plugin-data --add-plugin plugins/LuckPerms.jar --add-plugin plugins/WorldEdit.jar etc)

#

very epic pepelaugh

cinder flare
#

hmm lol

#

cause yeah, it would actually be really nice for like, immutable Docker images and stuff, if you could have a folder with just the jars that's read-only, and then a separate folder with all the configs and stuff

pastel imp
#

someone gotta PR this to paper ngl

crude cloud
#

open an issue :)

cinder flare
#

while we're talking Paper, I read that with Mojang Mapped servers, this would allow us to hotswap plugins? is that actually a thing you can do now?

crude cloud
#

like, entire plugin jars a la /reload? no

#

nothing really to do with mojang mappings, hotswapping classes in a dev environment has always been possible with dcevm (currently in the jetbrains-runtime); the fact that the runtime uses mojang mappings makes it much more useful for plugins using internals, but plugins using just the api don't really need that so it is (was) easier

cinder flare
#

i mostly mean this

#

in the Paper docs

crude cloud
#

yeah in dev environments hotswapping classes

#

because hotswapping isn't really possible when post-compile relocation/remapping has to take place

#

so, if you were developing with mojang mappings but the server ran reobf, no hotswapping bleh

cinder flare
#

hmm i see

#

is dcevm supported on newer versions of java? from what i see here, it's 7-11

crude cloud
crude cloud
#

which is updated

cinder flare
#

ooh!

pastel imp
#

wait you can test changes without restarting server?

#

how did I only hear about this now

limpid ingot
#

Looking for MC Network devs for our upcoming Network.

#

Devs and Marketing Team.

crude cloud
pastel imp
rotund egret
#

I don't think looking for staff has ever been restricted.
Operating as a "service team" iirc had some restrictions though

#

Oh no I saw it, not for a 'team' but for a predefined project.

So marketing recruitment for the project of marketing your server for X period vs just seeking a marketing team.

Subtle difference

crude cloud
#

xd

limpid ingot
#

My bad guys

pastel imp
#

Any suggestions on how I could do a simple rest api with java? I only need to handle requests, preferably be easy to do api keys, rate limiting and limits of usage. Any suggestions?

oblique heath
#

you can use spark or spring boot

#

for nice features like those spring boot may be the better choice

pastel imp
#

Yeah thought about those too but thought maybe someone would suggest something else

#

You never know

wind patio
#

spring prob overkill for "simple"

wind patio
#

very simple

import io.javalin.Javalin;

public class HelloWorld {
    public static void main(String[] args) {
        var app = Javalin.create(/*config*/)
            .get("/", ctx -> ctx.result("Hello World"))
            .start(7070);
    }
}
ocean quartz
#

Yeah I think javalin makes a lot more sense here than spring

pastel imp
#

Does it allow all the stuff I said?

#

I assume also SSL, etc

wind patio
#

uh, probably

#

if it doesnt have it out of the box you can just write your own impl

ocean quartz
#

Or you can use Kotlin and use Ktor, very simple by default but comes with dozens of extensions to add all sorts of features :)

wind patio
ocean quartz
#

Ktor example would be:

embeddedServer(Netty, port = 7070) {
    install(RateLimit) {
        global {rateLimiter(limit = 5, refillPeriod = 60.seconds) }
    }

    routing {
      get("/") {
          call.respondText("Hi")
      }
    }
}.start(wait = true)
pastel imp
ocean quartz
#

Can't you do limiting like that through cloudflare instead?

pastel imp
#

It's for a SaaS

#

Sooo, unsure if using cf is an option

cinder flare
#

oh looks like everyone already said that lol

#

well, I concur!

crude cloud
cinder flare
#

all the homies in agreement, it seems

prisma wave
#

personally i would suggest ktor if you're using java and javalin if you're using kotlin

wind patio
#

totally aggree with mitter bristen

prisma wave
#

thank you

cinder flare
prisma wave
#

i am based and red pilled

pastel imp
#

I shall use Scala with javalin

ocean quartz
#

Well in that case I recommend using express.js if you're using Kotlin, just toggle js module :))

prisma wave
#

trueeee

pastel imp
#

On a side note, if requests expect data back but also require input data, that is dynamic, is that a get or post request?

prisma wave
#

what do you mean by dynamic input data?

ocean quartz
#

Post if you're sending data, get if you're receiving data

crude cloud
#

gest

cinder flare
#

yeah, POST for like JSON-encoded bodies and stuff

#

GET for like, listing objects and filtering with URL params or something

#

or I guess more specifically, POST for editing/creating resources, GET for fetching resources

ocean quartz
#

Unless you wanna go crazy on get and have like a giant list of request params lol

wintry plinth
#

GET - Fetching data
POST - Inserting data
PUT/PATCH - Updating data
DELETE - Deleting data

rotund egret
#

Using GET to delete is prime

cinder flare
#

we have DELETE at home, DELETE at home:

POST 1.1 /object
{
  type: "DELETE"
}
#

the GraphQL methodology 😌

distant sun
#

the equivalent of using <div> for everything but for back-end muttley

oblique heath
pastel imp
prisma wave
#

oh I mean that doesn’t matter

#

it’s still a string

cinder flare
#

i mean, it sounds like you're not doing REST at this point

prisma wave
#

Yeah true

cinder flare
#

so it doesn't super matter, i'd just use POST for the JSON body

pastel imp
cinder flare
#

is it pure?

#

or does it change the state of the app

prisma wave
#

yeah if it changes the state it should be POST

#

Or any others

#

Not GET at least

pastel imp
cinder flare
#

as in a pure function

#

does it affect the state of the application or no

pastel imp
#

Well it receives input, that gets analysed, and depending on the cases it may be stored in a db internally or just be ignored.

wintry plinth
prisma wave
cinder flare
#

i mean, it should be trivially idempotent

#

which is basically pure

wintry plinth
#

Imagine you've got an app for storing orders.

You'd GET the list of orders (e.g. /orders), you'd POST to insert an order (e.g. /orders).

You'd PUT/PATCH to update an order (e.g. /orders/1).

You'd DELETE to delete an order (e.g. /orders/1)

cinder flare
#

yeah sadly i don't really think homedog is doing normal REST at this point

wintry plinth
#

Yeah I sense that 😂

cinder flare
#

just seems like they want a POST /metrics/submit endpoint lol

wintry plinth
#

Gonna end up with GET for every endpoint,

GET /orders/1

{
  "type": "delete"
}```

GET /orders/1
```json
{
  "type": "update",
  "data": {
      "xx": "xx"
  }
}```
#

Afonso what are you even building

cinder flare
#

isn't he making an Analyse clone

#

i swear we talked about this like weeks ago

wintry plinth
#

haha really

#

Afonso, if that's true, genuine best wishes for it. But to be transparent, I have already been planning a completely rebuilt Analyse.

Much better than the current version, but wouldn't be out for months probably as I CBA building side projects atm.

pastel imp
cinder flare
#

oh wasn't it like player analytics

cinder flare
#

or am i thinking of someone else

pastel imp
#

We spoke about a similar topic a while ago yes, but it was not for analytics

cinder flare
#

ah yes

#

i remember now

pastel imp
wintry plinth
#

Ohh that one

pastel imp
#

Yeah, finally after my exams I am gonna make it

#

Already started testing stuff for it and building the backend

wintry plinth
#

To explain though, like I'd have no issue if you wanted to build your own version of Analyse. I've always said that competition breeds innovation, but I have already been planning a huge overhaul.

I even just bought a beefy dedi 😂 for when I come back from my vacation

#

On vacation from Monday onwards :D much needed

#

Beast :D

pastel imp
wintry plinth
#

Oh trust me, theres a lot to change in Analyse 😂 but appreciate the kind words

pastel imp
pastel imp
cinder flare
wintry plinth
#

From Vue boi to React

cinder flare
#

another soul lost to the ways of React 😭

wintry plinth
#

I do prefer the dev experience of Vue though

#

But react charting libraries are so damn sexy

pastel imp
#

Svelte better

cinder flare
wintry plinth
#

I'm going with a charting library my friends built, https://tremor.so

Tremor

The open-source library for dashboards built on top of Tailwind CSS.

#

It's so dang sexy

cinder flare
#

ooh, looks very similar to shadcn

#

but with much, much more light mode lmao

wintry plinth
#

Funny they launched before shadcn, then shadcn launched their own lately 😂

wintry plinth
cinder flare
#

wtf bro lol

wintry plinth
#

I code in light mode during the day

#

So much easier to read

cinder flare
#

yeah and what about night

#

you like getting flashbanged at 4am?

wintry plinth
#

then it auto goes dark

rotund egret
#

piss mode

cinder flare
#

hmm i don't see no dark mode on this website

wintry plinth
#

they do for some components

cinder flare
#

well, it's always good to have room to grow!

#

seems like they really want to be more than just a charting library lol

wintry plinth
#

i toggle it manually tho

#

not automatic

#

(sometimes if ive got a headache I toggle it manually)

cinder flare
#

why is it so small 😭

#

and no file explorer/tabs? you're a mad man

#

i'm surprised you don't use like raw neovim with no plugins

wintry plinth
wintry plinth
#

I'm so used to my keybinds, tried to switch to https://cursor.com but the keybinds are so different

pastel imp
#

Tbh svelte has some coolio chart libs

wintry plinth
#

Mainly wanted to try Cursor for its AI stuff as its apparently really good, but PHPStorm is where I am so productive day to day. Got my custom keybinds setup the way I like

wintry plinth
wind patio
pastel imp
wintry plinth
#

PUT is like "override this value" where patch is like "tweak this value"

wind patio
#

yall would be rolling in yer boots if you saw the routes at my current job

#

99% of them are post and get

wintry plinth
#

Really 😂😂

wind patio
#

its crazy

#

stuff like POST /delete-by-id/
{ "id": ... }

pastel imp
wintry plinth
#

Star, with the font size, I’ll show you a better example when I’m at PC. It looks much nicer when you’ve got lots of database queries, as you can actually see them all.

The huge font makes me scroll lots

wind patio
#

zen mode

wintry plinth
#

I need to consider that

wind patio
#

i tried using that but my abdc usb type c adhd, wont let me (self diagnozed)

ocean quartz
cinder flare
ocean quartz
#

Yeah!

cinder flare
#

gotta have that shit fullscreen, though i think you might use an ultrawide?

#

so it would probably be pretty wide

rotund egret
cinder flare
distant sun
#

What's the experience with an ultrawide (49'') in games? I'm tempted to get one because I HATE using the laptop's screen, although my main monitor is fine (27'' I think) but could be slightly bigger.

rotund egret
cinder flare
#

i greatly dislike ultrawides, just for the window management aspects of them

#

i have really loved just having three 27" monitors side by side

ocean quartz
#

I love my 27" ultra wide

#

Would never get 2 monitors over an ultrawide again

wintry plinth
cinder flare
#

i don't think that's what you mean?

#

or are you joking lol

cinder flare
wintry plinth
#

That’s a 40” UW

#

5k display

#

I use it for windows and Mac

cinder flare
#

what's the aspect ratio?

wintry plinth
#

5k2k

#

So crisp 🤤

rotund egret
#

That's kinda smol

wintry plinth
#

I swapped my studio displays for it

rotund egret
#

How big is mine 😮

cinder flare
wintry plinth
#

Hang on😂

rotund egret
#

Mines 35" and it looks much wider wowie

distant sun
rotund egret
#

I think you got height

cinder flare
wintry plinth
#

Mine looks exactly like the retina displays on MacBooks

#

So crisp

cinder flare
#

then it's wider than most ultrawides, probably cheaper, and you can have a center one that you can run at higher refresh rate, for instance

ocean quartz
cinder flare
#

and all your windowing problems are solved, by Windows™️

distant sun
#

I guess window management can be solved easy with fancy zones from power toys, but for games.. I don't want to play shooters on the entire screen =)) I would be impossible to see the corners kek

ocean quartz
#

Mine is 34" 21:9 3440x1440p 144hz

cinder flare
#

yeah my biggest thing with ultrawides is that I don't really ever find myself wanting a window to be larger than one screen, or like placed in between two screens

wintry plinth
cinder flare
#

so it's just easier and more economical to have three screens, and have most things maximized to one of them at any given time

wintry plinth
#

Its better than the 2x 27" Studio Displays I had

cinder flare
#

i feel like that's not a super high bar to be fair lol

distant sun
#

3 monitors is probably too much 😬

cinder flare
#

nah bro it's perfect

#

one for discord, one for ide/games, and one for web browser/music/secondary stuff

wintry plinth
#

I found many 5k panels but only 60hz

ocean quartz
#

One thing I'll say about having an ultrawide, without windows powertoys' zones it'd be a nightmare

cinder flare
wintry plinth
#

Eh I think the studio displays are hard to beat

#

which is why it took me so long to move away

cinder flare
#

for the price, definitely not

wintry plinth
#

Since going to 120hz, I could never go back to 60

#

The worst refresh I ever used

pastel imp
#

I prefer having 2 27" monitors

distant sun
#

ah.. I was looking on the right side after freq rate shrug

wintry plinth
#

Even just for coding, 60hz was so bad

ocean quartz
#

Going back to 60hz is grim despair

wintry plinth
#

yeee

#

especially as the macbook screen is 120hz, when id use my studio display i hated it

cinder flare
wintry plinth
#

felt so laggy

cinder flare
#

good thing the emulator progress is going extremely strong right now

#

won't have to wait too long for it on PC 😤

distant sun
#

what monitors do you have @cinder flare ?

ocean quartz
#

Will get it emulated before fromsoftware decides to port it omega_lul

cinder flare
#

oh it ain't fromsoft

#

it's Sony

#

they're afraid of the money, and likely trying to save something for the PS6

cinder flare
#

very economical and very nice

wintry plinth
#

All setup with a KVM under the desk too :D

remote goblet
cinder flare
#

yeah i gotta admit, the one time I wished I had an ultrawide was when I was using my shitty work assigned laptop that could only do like one external monitor

#

was very difficult to actually get work done either on the laptop screen or on just a single one of my monitors

cinder flare
pastel imp
wintry plinth
#

Just realised how old the first pic i sent was

#

So much was changed

wintry plinth
cinder flare
wintry plinth
distant sun
cinder flare
distant sun
#

my work laptop has an hdmi and an usb c port, so I guess it could handle 2 monitors

cinder flare
#

I did learn at a later date that you could use a software renderer to have it support three monitors, but by then I had already moved on 😔

pastel imp
#

Currently not at home but will send a pic once I get home

cinder flare
#

guess i should've looked at the picture lol

distant sun
#

so it can work with 3 monitors but in duplicate mode not extend (or w/e mac calls them)?

cinder flare
#

yea cause macos doesn't do the displayport daisy chaining thing

distant sun
#

rip

#

Yeah so it looks like 3 x 27" monitors are cheaper than 1 x 49" kek I'll think about it

crude cloud
#

speaking of multiple monitors

#

GTA San Andreas crashes when a vehicle explodes and you have multiple monitors

#

I don't understand how that's even possible

#

the game is running on its own monitor minding its own thing, then a car explodes and the game just crashes because you have a second monitor like yeah that makes sense

wintry plinth
#

hahah thats mental

#

I'm iffy with gaming on my UW, dont get me wrong its cool and immersive, but sometimes feels like too much to look at

distant sun
#

@cinder flare what size is your desk btw? In rest-of-the-world unit if you don't mind kek jk
My monitor is like 62cm wide. Multiplied by 3 that's 186cm, 26cm longer than my desk

ocean quartz
#

My desk is 160x80 which seems to be pretty standard

wintry plinth
#

Same ^ only because i got the same desk as matt 😂

ocean quartz
#

It's a very nice desk ;p

wintry plinth
#

honestly you made such a good recommendation, i love it 😂 i have the height locked though, i dont use it to stand

#

I moreso use it for having a custom height

ocean quartz
#

I should use it standing more often but yeah being able to find that perfect height is great

distant sun
#

Idk I built mine, I hope it can hold the pressure applied by the monitor arm with 3x6kg monitors on kek

ocean quartz
#

Do you really want 3 monitors?

#

What's gonna be on the 3rd one?

wintry plinth
#

yeah I never stand\

wind patio
crude cloud
distant sun
ocean quartz
crude cloud
#

Family Guy Best Clips

pastel imp
#

Fr 2x27" monitors is enough for everything, 3x may be too many

distant sun
wind patio
#

I feel like this is like a 5th time I see people talking about their setups

distant sun
#

I'll start with 2 anyways, my stand has 2 arms

ocean quartz
#

I divide my monitor into 30-70 ratio, left side is basically just discord, sometimes videos when I'm coding, can't think of what I'd do if I had another monitor/division

distant sun
#

isn't the 30 part too small?

ocean quartz
#

It's fine for discord and some videos

distant sun
#

what's the size in px btw

#

hmm looks fine, yeah

ocean quartz
#

But sometimes 40-60 or 50-50 if I really need to pay attention to both

#

Here are my zones

wintry plinth
#

that last one

ocean quartz
#

Never really use it, just left it there because it's funny

distant sun
#

on my current monitor discord doesn't even fit the screen at 40-60 kek

wintry plinth
#

if i just want to focus i do this, if i need other bits then usually the code stays in the middle, and i put web on the right. Then use my ipad to put youtube (so i dont take up needed space)

cinder flare
cinder flare
cinder flare
#

my current monitor setup

distant sun
#

random video, but this man is fun to watch https://www.youtube.com/watch?v=hW-7lkuD-Cc

sturdy zinc
pastel imp
#

@cinder flare @wintry plinth this the rgb I was speaking about

#

PS: GPU missing, still not yet here

cinder flare
#

phew yeah, way too much for me lol

#

i want a dark room so as to not be distracted from my monitors

rotund egret
#

Light controller.

wintry plinth
#

Looks cool tho

pastel imp
#

Yeah looks cool but think its too much for me too

#

gonna test lowering brightness

pastel imp
#

idk if its noticeable in the pic

#

but lower brightness

#

I can imagine it being even better if I put a static color

#

yup, def. looks way better

#

well picture looks like hella bright but irl its a really dark and low bright tone

#

think I am gonna leave it at this

#

okay me stop now cause me spaming this channel

wintry plinth
#

Light bar is so useful for night time

#

As I don’t like putting on the big light

pastel imp
#

yeah

distant sun
pastel imp
#

yeah

#

looks hella nice now with dark red and low brightness

#

like its hardly noticeable since the red isn't really eye catching

gusty glen
#

Dear diary, I've lived long enough to find Emilly's comment on YouTube xd

crude cloud
#

that was today lol

#

me being a 🤓 online

lavish notch
# wintry plinth My setup rn

A little late to the game - where'd you get your table top from? I'm looking at replacing mine which I got from Ikea.

potent nest
distant sun
#

@modern yoke this is not the place for ads

wintry plinth
lavish notch
ocean quartz
#

Black walnut top from Flexispot is beautiful, it's the one I got

wintry plinth
#

I bought it all upfront

lavish notch
#

(Desktop is warping under my Monitor arm mount)

ocean quartz
#

I've had mine for a year or more now don't remember exactly and so far no noticeable warping anywhere, I also have a monitor arm mount and so far so good

lavish notch
#

Is it a single Monitor arm you have?

ocean quartz
#

Yeah just one for my ultrawide, which is a bit heavy

tiny gulch
#

Hello,
Does anyone know of a way to find out the quality of a code by providing a github link, for example?

pastel imp
#

Good for spread out weight

#

But arms put too much pressure in a single spot

lavish notch
wintry plinth
lavish notch
pastel imp
lavish notch
#

Hey @ocean quartz, I don't suppose you could send a picture of what your Blackwalnut looks like with your desk legs?

#

I'm on a back and fourth about which top to get - Flexispot's website is a bit so-so with how it looks.

pastel imp
#

my grandma has the exact same floor style

#

and my aunt

lavish notch
ocean quartz
cinder flare
# ocean quartz

damn bro i think you dropped half the keys on your keyboard!

#

no F-keys, no PrintScreen, no Home/End, goddamn

ocean quartz
#

A bit less than half 35% to be exact :)

#

fn + numbers for f keys, fn + del for print, home is there fn + home for end

cinder flare
#

man and i thought TKL was a little weird

#

i could never not have some of those keys, mostly the F-keys for gaming

crude cloud
#

my gf has an even smaller keyboard lol

#

it's absurd

#

I have a picture somewhere but uhhh I'd need to find it, give it 3 to 5 business days

ocean quartz
#

My current keyboard is even weirder, it's a long boy

#

But it sounds really good

cinder flare
#

haha wtf lol, is that a 65% plus numpad?

ocean quartz
#

65% + numpad yeah

cinder flare
#

and with like, chinese keycaps?

ocean quartz
#

Japanese

cinder flare
#

do you... know Japanese?

#

or is it just for the cool factor lol

ocean quartz
#

It just happens to have the symbols, there wasn't a version of this set without it

cinder flare
#

ah okay

pastel imp
ocean quartz
#

I got some really cute keycaps that I haven't used yet, it's called cookies and cream

ocean quartz
#

I'll probably replace the floor at some point, kinda expensive 😔

cinder flare
#

just put a rug over it, bam

pastel imp
#

xd

pastel imp
#

only good thing about them is that they cold af which is a W in portugal

#

countless times I have slept literally on the floor cause it was soo good with the 37 degrees outside at 11pm

ocean quartz
#

Thankfully my apartment is pretty nice in the summer, can go for quite a while without ac on even at like 40C outside,

inner umbra
ocean quartz
#

160x80

rotund egret
hoary heron
#

I wonder one thing if im allowed to ask this

#

I know that helpchat is the HQ of all development, paid and free services but im wondering if there are more servers or places like this? I woule be very thankful if someone knew

lavish notch
hoary heron
#

But more of to get work

lavish notch
#

Also BuiltByBit/McMarket is a site to look at if you're not already familiar with it.

hoary heron
#

I'm more of trying to get some paid or free tasks to expand my portfolio, been making stuff for almost a year but not very long as a service

lavish notch
ocean quartz
rotund egret
#

Oh nice
We recently got some similarly styled keyboards. These ones have gateron blues too I think, I forget which exactly

#

Little more led

ocean quartz
#

Nice one, though I don't like leds that much
Also gateron blues are very different from blue bubblegums

#

Gateron blues are clicky mine are linear

hoary heron
rotund egret
#

Leds are configurable too fwiw

ocean quartz
#

Oh god clickies drive me crazy, my wife had some, it was fun for the first month or so then they become so annoying

rotund egret
#

I used to sleep to blues before I even owned a mechanical.
I love it

slate elk
#

If Its wooden

#

And nót any stone materiał

#

Its so good

#

Będs r scam

#

Our body prefers to sleep on hard surface

pastel imp
#

well ofc not solid hard, but it is hard

#

for the price it costed I better hope it is good for my health

pastel imp
#

[ERROR] Failed to execute goal org.bytedeco:javacpp:1.5.8:build (run-javacpp-compiler) on project jfasttext: Execution run-javacpp-compiler of goal org.bytedeco:javacpp:1.5.8:build failed: Process exited with an error: 2 -> [Help 1] any ideas why this happening?... I literally have cl.exe installed and working lol

#

I am trying to compile an old maven project that uses javacpp, and it requires cl.exe installed, which I do, but it does not want to compile

#

lol

pastel imp
#

I am almost giving up on this

crude cloud
#

it probably isn't on your PATH?

#

iirc on windows you have to use this weird ass "Visual Studio Developer Command Prompt"

#

which is just cmd but with crap added to env and path

#

then cd to the project and build with maven

pastel imp
pastel imp
# crude cloud iirc on windows you have to use this weird ass "Visual Studio Developer Command ...
C:\Central\IdeaProjects\Forks\JFastText\target\classes\com\github\jfasttext\jniFastTextWrapper.cpp(60): fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
jnijavacpp.cpp
C:\Central\IdeaProjects\Forks\JFastText\target\classes\jnijavacpp.cpp(60): fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  3.297 s
[INFO] Finished at: 2024-08-26T14:49:55+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.bytedeco:javacpp:1.5.8:build (run-javacpp-compiler) on project jfasttext: Execution run-javacpp-compiler of goal org.bytedeco:javacpp:1.5.8:build failed: Process exited with an error: 2 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
crude cloud
#

through a VS Developer terminal?

pastel imp
crude cloud
#

no clue then, i don't use vs toolset lol

pastel imp
#

me neither, I just need to god damn compile this lol

#

GH action on the project have jars

#

but according to the author those were compiled only for linux

#

and I am on windows, and I need the windows version since I want to test the library for a school project

#

but oh welp

cinder flare
#

WSL?

pastel imp
# cinder flare WSL?

thing is, then I would have to compile all projects done with that library in linux lol

#

which is not ideal

cinder flare
#

doesn't sound too bad

pastel imp
#

well it sounds a bit worse than it should since I will be compiling the project several times, changing code, testing and running it.

#

All that in linux, something I am not used to, does not sound that nice

cinder flare
#

what is there even to do lol

#

as soon as you get it setup, everything should work the same as Windows

#

You can open files in IntelliJ or whatever that are on the WSL drive no problem

pastel imp
#

I think I got it working

tropic whale
#

Any mc server dev here? who can help me

glad fiber
#

what specifically do you need

tropic whale
#

um basically i can't break any blocks in my mc server i have operator

vague jasper
#

I keep turning on normal mode in server.propeties and even via command but it just doesn’t work. Makes it peaceful again. That happens to anyone else?

sly sonnet
#

do you save the server.properties file?

#

do you have any plugins that could change it ?

dull sigil
#

Anyone know any good Minecraft server [paper] fork developers who might have commissions open?

dull sigil
#

to compete with like universespigot

pastel imp
pastel imp
dull sigil
dull sigil
pastel imp
#

doubt anyone is willing to reinvent the wheel, paper is already performant, and pufferfish is even more.

dull sigil
pastel imp
#

Eh, I think forks shouldn't be a thing

#

at that point, simply PR to paper

#

lol

#

or pufferfish

#

why add an extra unneeded fork when you can just PR to one already existing

ocean quartz
#

Imagine not just making your own custom server implementation 😔

pastel imp
#

feels like a whole JS Frameworks dilema again

#

hundreds of js frameworks are born every week

#

xD

pastel imp
dull sigil
#

lol

ocean quartz
dull sigil
#

Oh thanks

pastel imp
#

Anyone knows an NPC library that is packet based and has a way to do pathfinding?

forest pecan
#

doesnt citizens do this

pastel imp
brazen ether
forest pecan
#

yeah u need packets to spawn em

brazen ether
#

ya

pastel imp
#

Hmm okay

#

Either way server could not handle too many npcs

#

Will check this later on

#

I am really interested in minestom

nocturne apex
#

@pastel imp do ya have knowledge w Gradle?

rotund egret
#

I love gradle

wintry plinth
#

Gradle >

pastel imp
#

Gonna expand my gradle knowledge while learning minestom and kotlin

nocturne apex
#

u back?

nocturne apex
#

I basically always have to add those exclusions

#

when am importing my lib

#

and I cannot find a way to filter those out

wintry plinth
# nocturne apex OMG

Still away on vacation, but after taking a break for a couple weeks, I am gonna start working on something big

#

As soon as I’m back

nocturne apex
#

👀

pastel imp
#

Groovy or kotlin?

rotund egret
#

That's maven

nocturne apex
#

kotlin

nocturne apex
#

however the project that is being deployed is gradle

#
plugins {
    `maven-publish`
}

val maven_username: String by rootProject.extra
val maven_password: String by rootProject.extra

val nmsVersion = "1.0.25"

group = "gg.aquatic.aquaticseries"

repositories {
    mavenCentral()
    maven {
        url = uri("https://repo.nekroplex.com/releases")
    }
}

dependencies {
    implementation(project(":aquatic-lib"))
    implementation(project(":core"))
    compileOnly("org.spigotmc:spigot-api:1.16.5-R0.1-SNAPSHOT")
    implementation("gg.aquatic.aquaticseries.nms:NMS_v1_17_1:$nmsVersion") {
        exclude("gg.aquatic.aquaticseries.nms", "AquaticNMS")
    }
    implementation("gg.aquatic.aquaticseries.nms:NMS_v1_18_2:$nmsVersion") {
        exclude("gg.aquatic.aquaticseries.nms", "AquaticNMS")
    }
    implementation("gg.aquatic.aquaticseries.nms:NMS_v1_19_4:$nmsVersion") {
        exclude("gg.aquatic.aquaticseries.nms", "AquaticNMS")
    }
    implementation("gg.aquatic.aquaticseries.nms:NMS_v1_20_1:$nmsVersion") {
        exclude("gg.aquatic.aquaticseries.nms", "AquaticNMS")
    }
    implementation("gg.aquatic.aquaticseries.nms:NMS_v1_20_4:$nmsVersion") {
        exclude("gg.aquatic.aquaticseries.nms", "AquaticNMS")
    }
    implementation("gg.aquatic.aquaticseries.nms:NMS_v1_20_6:$nmsVersion") {
        exclude("gg.aquatic.aquaticseries.nms", "AquaticNMS")
    }
    implementation("gg.aquatic.aquaticseries.nms:NMS_v1_21:$nmsVersion") {
        exclude("gg.aquatic.aquaticseries.nms", "AquaticNMS")
    }
    implementation("gg.aquatic.aquaticseries.nms:NMS_v1_21_1:$nmsVersion") {
        exclude("gg.aquatic.aquaticseries.nms", "AquaticNMS")
    }
}

kotlin {
    jvmToolchain(17)
}

tasks {
    build {
        dependsOn(shadowJar)
    }

    compileJava {
        options.encoding = Charsets.UTF_8.name()
        options.release.set(17)
    }

    javadoc {
        options.encoding = Charsets.UTF_8.name()
    }

    processResources {
        filteringCharset = Charsets.UTF_8.name()
    }
}

tasks.withType<com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar> {
    archiveFileName.set("AquaticLib-${project.version}.jar")
    archiveClassifier.set("all")
    dependencies {
        include(project(":spigot"))
        include(project(":paper"))
        include(project(":core"))
        include(project(":aquatic-lib"))
        include(dependency("com.jeff-media:custom-block-data:2.2.2"))
        include(dependency("gg.aquatic.aquaticseries.nms:NMS_v1_17_1"))
        include(dependency("gg.aquatic.aquaticseries.nms:NMS_v1_18_2"))
        include(dependency("gg.aquatic.aquaticseries.nms:NMS_v1_19_4"))
        include(dependency("gg.aquatic.aquaticseries.nms:NMS_v1_20_1"))
        include(dependency("gg.aquatic.aquaticseries.nms:NMS_v1_20_4"))
        include(dependency("gg.aquatic.aquaticseries.nms:NMS_v1_20_6"))
        include(dependency("gg.aquatic.aquaticseries.nms:NMS_v1_21"))
        include(dependency("gg.aquatic.aquaticseries.nms:NMS_v1_21_1"))
    }
}

publishing {
    repositories {
        maven {
            name = "aquaticRepository"
            url = uri("https://repo.nekroplex.com/releases")
            credentials {
                username = maven_username
                password = maven_password
            }
            authentication {
                create<BasicAuthentication>("basic")
            }
        }
    }
    publications {
        create<MavenPublication>("maven") {
            groupId = "gg.aquatic.aquaticseries"
            artifactId = "aquaticlib-17"
            version = "${project.version}"
            from(components["java"])
        }
    }
}
#

Ive tried to search it on the internet, but could not find the solution tbh

pastel imp
#

Mobile view scuffed though

ocean quartz
#

If you are setting it as implementation that means you want it to be added to whoever uses your lib

nocturne apex
#

ye but like uhm

#

oh I may got what I got wrong

#

bcs what is currently happening is that

#

it gets dependencies from the children

#

I need to have it shaded, it needs to be compiled in the plugins that are using the lib

ocean quartz
#

This might help a bit more:

Lib:
  implementation(dep-a)
  compileOnly(dep-b)

A project using "Lib":
  implementation(Lib):
    dep-a // this came from Lib automatically but dep-b doesn't come

So anything you are needing to exclude you should set as compileOnly
If it's coming from other dependencies make sure to exclude from those if they are implementation

nocturne apex
#

well but thats the thing

#

I actually need to have all included

#

I have it shaded, etc.

#

but it keeps trying to find the dependencies in repos

#

even tho the deps are being shaded

#

thats the thing

ocean quartz
#

When you publish it doesn't shade anything

#

you can publish fat jar but it's not normal

nocturne apex
#

wait so you basically have to import all sub modules?

#

when you wanna use the lib

ocean quartz
#

Yes

nocturne apex
#

freak

#

Ive got like 15 modules

ocean quartz
#

For example, I added the lib ktor-client-cio, all the others are transitive dependencies

#

That is the normal way to go about it, let's say your user doesn't want to have for example from that list ktor-network, they can exclude it themselves

nocturne apex
#

ye but uh

#

the lib requires the modules to actually work

#

for example there are NMS implementations

#

then Lib core, etc.

#

which basically needs to be compiled then

ocean quartz
#

Yeah, you'd still let it publish it separately

nocturne apex
#

ffs

ocean quartz
#

But like I said, you can shade it to publish, it's just odd to do it

nocturne apex
#

ye thats what am doing now

#

thats why am actually excluding it

#

xD

#

bcs its a fat jar

#

and it is trying to find the deps on repo

pastel imp
#

if your concern is jar size, why not use something like the paper loader's thing

distant sun
#

Here's a suggestion: don't

nocturne apex
rotund egret
#

Real actually

pastel imp
#

no one even uses spigot nowadays

nocturne apex
#

on spigotmc

pastel imp
ocean quartz
#

If some non hostile platforms supported premium resources I'm sure a lot would move but hey Shruge

wind patio
#

hol up ima open up a platform

#

so yall can sell whatever you want

forest pecan
#

Not a big fan of runtime dependency in general

#

But if you are going to sell plugins in general do so on polymart and builtbybit

half harness
#

for a reduction in the jar size

nocturne apex
#

we have been solving some issues with deployment

half harness
#

or I guess probably not if you said that

nocturne apex
foggy pond
#

I've just discovered reflection and annotations, oh my god they are SO good

#

I can see how they can break things and how they are defo not for beginners

#

But gawd damn does it make making dynamic APIs a breeze

distant sun
slate elk
#

Drives for Mac?

#

Drivers

manic girder
#

can anyone help me make a few textures into a texture pack

pastel imp
#

I only help people that don't spam ✨

brazen ether
#

what the fuck is this?

#

what does this do

crude cloud
#

it checks if the chunkMap contains the key key2
if it does, it gets the chunk for the key key2 and puts a "toAdd" and "shulker" in it
then it will put a new chunk for the key key2, overriding the previous one, but also with the variables "toAdd" and "shulker"

brazen ether
#

i have never seen this used anywhere

crude cloud
#

assuming that's java, yeah, you can have standalone code blocks

#

it's nice sometimes but very rarely justified to use

pastel imp
#

Th never seen that

potent nest
#

You never noticed

#

But {} is just a statement

#

That’s why if (…) {} and if (…); both work

ancient junco
slate elk
#

How much people here charge for 2 page website ?

wintry plinth
wind patio
#

I can do for 50€

distant sun
#

I don't do web stuff, but 2500??

wintry plinth
# distant sun I don't do web stuff, but 2500??

Welcome to the real world, I know in the Minecraft scene $2,500 is deemed “a lot”. But when dealing with real life businesses it’s usually $10-50k for a website

Because again, it comes down to what value you can bring to the table. It isn’t just “code a website” and call it a day.

Design, SEO experience, responsiveness etc all come into it. Plus portfolio of previous things too

wind patio
#

nah bro i just chatgpt it and call it a day

#

AI replacing devs

#

we are useless

summer linden
#

I hope that does not happen

wind patio
#

people publishing their websites on localhost

wintry plinth
wind patio
#

but I get your point

wintry plinth
#

Yeah, I will say there’s more than just a price like you’ve just mentioned. More context is often needed

wind patio
#

if its a company offering such services (website creation), then yeah, a lot of people work on it, designers, UI/UX specialists, front end (and maybe back) devs, then yeah, the price makes sense, everyone is technically selling their experience and everyone needs to get paid

#

but yeah, really depends on the actual scope and what is needed for the client

wintry plinth
#

Personally from my own experience companies don’t really care how many people are involved, a solo dev or multiple members, at the end of the day that company wants a result at the end.

They’d happily spend $5-10k even on a 1-2 pager, if it means there gonna make a ROI on their return.

#

But this could be just from my own experience doing web dev, I charge a lot because I also give a lot. I’ll toot my own horn but I put a lot into the design, I’m quite good with SEO, etc

wind patio
#

yup, everyone has the right to value their own work and experience just the way they want, that being said it might not bring too many clients if its very expensive, but to each their own

wintry plinth
#

Lotta context to each thing

wind patio
#

two pages could also be a personalized grafana like dashboard pulling data from various sources and an ability to add new ones and what not 😄

wintry plinth
#

😂 that’s true actually

#

It’s like recently I hired a professional logo guy + designer for a full Figma design, both ended up at a good few thousand each, but I’m paying them for their experience and craftsmanship.

I could prob get it cheaper elsewhere but they wouldn’t have the same talent

ocean quartz
#

For most people in the mc community they'd be a lot better off just getting a template and modifying to their liking

slate elk
#

U nuts Dudę ?

slate elk
#

Its nót more then 50€

#

I can get YouTube replica

#

Or facebook less

#

2 static Pages dont take more then a hour to mąkę

prisma wave
slate elk
#

Dudę he thinks he can mąkę elon musk gains

slate elk
#

200€ usually

#

I already checked

#

He just drops number from his imagination

#

Shop websites r 200€ which r way more complex then 2 page websites

#

And with admin sperate website

#

To change items in store

crude cloud
#

chatgpt

slate elk
#

It’s Russian company

agile galleon
#

💀

slate elk
#

There also Indians and Philippines

#

Who offer cheap service it’s pretty simple to make a website let’s be honest

agile galleon
#

Lower cost employees = lower cost stuff

slate elk
#

So wrong

#

Tesla proved it

#

Lower cost better performance and quality

#

Some people just charge unreal price

#

Those are the idiots who went to uni just for money and not because it’s their hobby or talent

#

Expensive doesn’t mean good

prisma wave
slate elk
#

So if guy thinks he can charge 2500$ as minimum for 2 page website he is insane it’s something chatGPT can do in 3min and many other companies offer u premade temple for 15$

nocturne apex
#

I wouldnt say TEsla is great quality o-o

ocean quartz
#

Nor low cost

slate elk
nocturne apex
#

I dont really think so tbh

prisma wave
slate elk
#

What do u drive ?

prisma wave
#

if someone wanted a template website they would use a template

nocturne apex
#

Porsche

prisma wave
#

people pay because they want something custom

slate elk
nocturne apex
#

depends tbh

slate elk
#

I have BMW

nocturne apex
#

well am nearby Germany

slate elk
#

And my Beamer service is way cheaper then the cheapest porcshe

#

Service