#dev-general

1 messages · Page 563 of 1

static zealot
#

maybe bcz I'm blitz is the right answer

#

indeed

quiet depot
#

thought it was 4 prs

jovial warren
#

Jenkins on top

#

If you have the patience to set it up properly

#

Though, to be fair, the Docker setup is really easy to do, and you basically just have to copy and paste commands

winged mica
#

I actually don't have money to host it 😂

jovial warren
#

You can get a server for like 5 euros a month or something

distant sun
#

6$ 2gb ovh vps

static zealot
#

ah yes. thank you hypixel

#

what? 6$?

#

I swear the cheapest one is 3$ or 3.5$ with 2gb

jovial warren
#

Probably

half harness
#

$3/gb?

static zealot
#

no

#

1.5$/gb

#

I guess

half harness
#

i meant for gaby's

distant sun
#

oh yes, I got the one with more ssd or smth

half harness
#

oh

distant sun
jovial warren
#

I don't believe that anyone in this Discord server can't afford a tiny VPS

hot hull
#

Anyone got any project suggestions, something large (not worldgen plz, I already hate myself enough)

jovial warren
#

Lol

half harness
#

did u finish ur bw plugin yet

jovial warren
#

No way

hot hull
#

Nah, that was boring

half harness
#

😔

static zealot
#

make a minigame for a krypton server. doesn't have to be big with multiple arenas or games just 1 mingame

half harness
#

is krypton even stable yet 🤔

jovial warren
#

Yeah

jovial warren
half harness
#

i thought it was in like alpha stages

static zealot
#

well

jovial warren
#

Kinda

static zealot
#

well

#

well

jovial warren
#

It's sometimes stable

half harness
#

🥲

#

whats the repo?

jovial warren
#

I do test everything I add, just not to any large extents

half harness
#

but uh

#

ah

#

it has MC

jovial warren
#

Yeah

#

KryptonMC

#

I've actually started to work more on the API recently as well

hot hull
#

Still waiting for a good suggestion

static zealot
#

I was going to make a bad joke. but you hate me enough so not going to say it anymore

jovial warren
#

I'm moving SimpleCommand to an interface and introducing command metadata to improve the system a bit

half harness
#

does it have Bukkit label fingerguns

static zealot
#

it doesn't have Bukkit

jovial warren
#

And also introducing a registrar system so you can create your own custom command implementations and define how to register them

static zealot
#

why would it have bukkit?

half harness
#

i meant

#

does it have a way to get ```
/label blah

jovial warren
jovial warren
#

Lol

half harness
#

what about aliases

jovial warren
#

In the metadata

#

But you should know those too anyway

half harness
#

i meant

#

how would i know the label if i have multiple aliases

jovial warren
#

Metadata has a name property

#

Simple command metadata also has a nullable permission property

#

This isn't actually released yet btw, this is just what I'm working on, I'm on holiday until tomorrow so it'll likely be done then

half harness
#

alr

static zealot
distant sun
#

damn

hot hull
#

Damn

jovial warren
#

Oh no

half harness
#

bardy when 1.18 krypton fingerguns

jovial warren
#

I bet loads of people will look at that and go "wow! that's so cool!", and yet I look at that and go "oh fuck, please don't make me implement that"

half harness
#

wait how r u going to update, unlike spigot which just applies its own changes

jovial warren
half harness
#

will you have to.. code the update yourself 💀

jovial warren
#

Mostly just packets

half harness
#

compatible with what?

jovial warren
#

What do you think?

old wyvern
#

What would be the easiest way to format a bootable usb?

half harness
#

but it's not like mc is open source

old wyvern
#

will just deleting the efi partition on it be enough?

half harness
#

so wouldn't you have to implement the world generation?

#

not just change some packets

jovial warren
half harness
#

ah

#

true

jovial warren
old wyvern
#

or delete the partition and create a new partition?

jovial warren
#

Though I recommend using a tool instead to format it, like GParted

#

@half harness compatible with 1.18 != has all features of 1.18

half harness
#

oh

old wyvern
#

windows disk management would be enough as well Id assume?

jovial warren
#

Yeah

old wyvern
#

alr thanks

half harness
#

abt how long would you say to put all features of 1.18?

#

(and pretending 1.17 is finished)

jovial warren
#

Haven't got a fucking clue lol

half harness
#

oof

jovial warren
#

The entities are really easy to do, mob spawning is gonna be a bit annoying, and world gen will take a while

#

We don't even have proper block breaking yet

#

Block breaking still only works in creative

#

I still need to actually implement the breaking logic

#

And all of the item interaction handlers

#

Though there are a lot of things that are handled client-side, which is nice

#

There is a hell of a lot to do, and not many people working on it

#

Though I'd say I could get most of that done in a couple of months

#

I want to stabilise the API before then though

obtuse gale
#

How do you currently load worlds in?

#

Just taking regions?

jovial warren
#

We lookup the world name you provide in the config as a folder, run the data through the DFU, and then load it all in

obtuse gale
#

What’s dfu

jovial warren
#

Which actually means you can actually just give me a world with no region files and an empty level.dat and it'll still work

jovial warren
prisma wave
#

profunctors 😌

obtuse gale
#

Ah I see

jovial warren
#

The DFU turns the NBT data in to a load of Dynamic objects, which are just generic data holders of any type, and then you can read the data from those by converting them to native types

#

And because we read in pretty much the same way as vanilla, we use default values everywhere to fill in the missing world data

hot hull
#

I have still not been suggested anything good, bardy you're usually the one with good ideas

jovial warren
#

How about having a play around with the Krypton API? I want some feedback on it, and you might actually like it

jovial warren
#

KAC lol

#

If only that was feasible

hot hull
#

ew anticheats

obtuse gale
#

They’re honestly a fun thing to mess around with

#

If you’re into digging deep

hot hull
#

Was thinking more like feature wise, some cool dynamics, etc

obtuse gale
#

Make an “engine” for you to make spigot plugins.

jovial warren
#

Maybe you should try contributing to Krypton lol

obtuse gale
#

Something thag makes stuff easier and cleaner

jovial warren
#

It has a lot of features that need doing, it's a large project, and it might teach you something you didn't know

hot hull
#

I mean I don't know shit so kek

jovial warren
#

And you're talking to the person who wrote most of the code if you need any help lol

#

Idk, sounds like a good idea to me, but then again, it is my project, so I'm inherently biased lol

hot hull
#

I mean probably will be fun

#

still 2 weeks of no coding so not right now

jovial warren
#

Alright

half harness
hot hull
#

Die.

#

Burn in hell.

half harness
#

what

jovial warren
#

I second

half harness
#

😔

jovial warren
#

I mean, the API will be open enough to add that if you really want, but that won't be built-in

half harness
#

would it be possible to change packet outcomes with the api

#

mcmarket custom krypton jar :))

jovial warren
#

My main goals for the API are:

  • Ease of use for beginners
    -Filled with advanced features for more experienced developers
  • Very open to implementation
jovial warren
half harness
#

like

#

if i wanted to imitate the 1.8 combat

#

i'd need to change the packets, right?

jovial warren
#

Not necessarily

half harness
#

and i'd have to receive unknown packets

#

maybe

#

idk how sword blocking works

#

does it just send animation packet or smth

jovial warren
#

I mean, it's not possible to remove 1.8 combat, only possible to negate it to some degree

half harness
#

remove?

jovial warren
#

And so are cooldowns iirc

half harness
#

but it

#

what about the damage

#

is the client just like "im just gonna take 0 damage now"

jovial warren
#

That is server side

half harness
#

yea but how does the server know when the player is blocking

jovial warren
#

I think the client sends a use item basically saying "I'm using item at slot X", and then we do the calculations, so actually, it might be possible to remove it

half harness
#

remove what?

#

oh

jovial warren
#

What do you think?

#

Lol

half harness
#

uh

jovial warren
#

The cooldowns

half harness
#

oh

jovial warren
#

And the blocking

half harness
#

oh

jovial warren
#

I believe we have to send cooldown packets when items are on cooldown as well

old wyvern
#

Items have attributes for cooldown I think

jovial warren
#

Could probably add events for these things

jovial warren
old wyvern
#

Weird, I was sure i've used them earlier

half harness
#

1.8 doesn't have use item packet tho

#

uh

jovial warren
#

Well I'd be buggered, items do have attributes

#

Actually, wait a minute... the client tells us when they've hit something, but it's up to us to actually deal the damage

quiet sierra
#

and the knockback

#

and the entity damage status too

#

;)

jovial warren
#

Though my concern is the client might just do the cooldown stuff itself

quiet sierra
#

It doesn't

#

That's why stuff like OldCombatMechanics work

old wyvern
#

Cooldown is an attribute as I said

#

Client obeys the value set on the item by itself

quiet sierra
#

ehh kinda

jovial warren
#

Old combat mechanics works by setting the attack speed attribute to ludicrous enough that it counteracts the effects of the cooldown

quiet sierra
#

But the player can still hit, and it's up to the server to calculate the damage

#

IIRC it was (cooldown_elapsed%) * damage

#

NMS just has some item cooldown tracker class

old wyvern
#

Ah wait, I meant attack speed actually

#

nvm

jovial warren
quiet sierra
jovial warren
#

Yeah

old wyvern
#

Ofc

quiet sierra
#

But so does everything

old wyvern
#

Thats what everything does essentially lmao

#

yea

jovial warren
#

Yeah lol

quiet sierra
#

not sure if nms kept a static map

#

might have been a static map

jovial warren
#

Lol

#

You think Mojang is smart enough to try and reduce allocations? Lol

quiet sierra
#

nvm it's not static

jovial warren
#

Why

#

Stop using Bukkit mappings

quiet sierra
#

I just decompiled on 1.16

#

I seriously avoid NMS so it doesn't really matter

#

I can't bother updating 500 classes every time a version changes

jovial warren
#

Use Paper, it uses Mojang mappings now

#

That was my point lol

quiet sierra
#

even paper doesn't work amazingly imo

#

parameters have mojang mappings but methods do not

jovial warren
#

I mean use Paper to view the mappings

quiet sierra
#

ehh

jovial warren
#

Those aren't Mojang mapped parameter names btw, those are done manually

quiet sierra
#

specialsource or whatever

jovial warren
#

I mean just start using Paper to view NMS code

quiet sierra
#

pretty sure I have paper imported

jovial warren
#

1.17?

quiet sierra
#

ye

jovial warren
#

Does your one use Gradle?

obtuse gale
#

Class and method names are mojmapped, parameter names are yarn

quiet sierra
#

maven

#

but we use specialsource or whatever that thing is

jovial warren
#

Then you have an outdated one

jovial warren
#

Pull latest master, you should get a Gradle project

quiet sierra
#

eh ik

#

I'm personally a gradle fanboy but this server in particular uses maven and I can't bother making a gradle 1.17 project

jovial warren
#

Don't use legacy Bukkit mappings, you'll struggle to stay sane lol

obtuse gale
#

yarn mappings are solid gold IMO

#

open source 😌

jovial warren
#

They are pretty good, not as good as official mappings ofc, but they are miles above Bukkit and Forge mappings

quiet sierra
#

I'm used to have everything named a and b

#

dw I can understand nms

jovial warren
#

There's a reason why Paper switched to Mojang mappings: it makes your life a hell of a lot easier in development

obtuse gale
jovial warren
#

And they remap everything to Bukkit mappings in the final JAR as well, which maintains compatibility

jovial warren
#

At least the Mojang mappings have the official names

#

Yarn mappings are also incomplete iirc

quiet sierra
#

I don't mind unofficial names

obtuse gale
quiet sierra
#

doRayStuff instead of raycast

jovial warren
#

Lol

quiet sierra
#

👀

jovial warren
#

Bukkit mappings are hardly even mappings at all, they only map like half the codebase, if that

#

The rest of it stays untouched

quiet sierra
#

as if I used the bukkit API a lot

jovial warren
#

And they have really stupid names as well

#

Like who decided that DataWatcher was a good name for the class that holds and manages entity metadata?

obtuse gale
#

spigot mappings are rarded

jovial warren
#

I second

#

And Forge mappings aren't much better

ocean quartz
#

Forge is a joke

jovial warren
#

Forge really seems to love using the I prefix for interfaces everywhere

obtuse gale
#

what is this? c#?

quiet sierra
# jovial warren Like who decided that `DataWatcher` was a good name for the class that holds and...
GitHub

FizzBuzz Enterprise Edition is a no-nonsense implementation of FizzBuzz made by serious businessmen for serious business purposes. - FizzBuzzEnterpriseEdition/src/main/java/com/seriouscompany/busin...

jovial warren
#

If only I got that joke 🥲

quiet sierra
#

welcome to enterprise code

jovial warren
#

Lol

#

We actually follow a smurf naming convention for Krypton, but only for classes where we implement something from the API

jovial warren
#

CraftBukkit actually follows the smurf naming convention everywhere

quiet sierra
#

thanks mongodb

old wyvern
obtuse gale
#

triumph-loader

old wyvern
#

trump loader

jovial warren
#

To set a block in a world, you need to get the SmurfWorld from a SmurfPlayer, and then set the SmurfBlock at the coordinates in the SmurfWorld

obtuse gale
#

lol

jovial warren
#

Even the util classes that aren't implementations follow the smurf convention

#

I mean, Krypton isn't really much better

#

When the server starts up, the Krypton file (containing the main function) creates a KryptonCLI instance to parse the CLI args, which then creates and starts a KryptonServer, which has the KryptonWorldManager load worlds and turn them in to KryptonWorlds, then the KryptonPluginManager will load all the plugins, and the player manager loads and creates KryptonPlayers when players join

#

But the smurf naming convention is actually kinda appropriate here

ocean quartz
jovial warren
#

Clone and open Krypton and search for all files beginning with "Krypton" lol

ocean quartz
#

Effort

jovial warren
#

I'd do it myself, but I'm on my phone lol

jovial warren
#

Oh btw pig, what's the current progress on PAPI 3 looking like?

#

@quiet depot

quiet depot
#

you have access to the repo

#

i haven’t done anything for a while

jovial warren
#

What still needs doing?

quiet depot
#

can’t really remember

#

oh think i was implementing adventure

#

need to redo material api

obtuse gale
#

-|--adventure-time-->

quiet depot
#

also need to add any additional api which is required for core expansions

#

and possibly add support for sponge 7

quiet sierra
#

adventure

#

is like

#

a waste of time imo

jovial warren
#

Nah, I'd focus on Velocity and possibly BungeeCord before Sponge 7 or anything earlier

jovial warren
obtuse gale
#

I don't think so

quiet depot
#

bardy sponge 7 is kinda easy to add tho

quiet sierra
#

Most plugins aren't cross-platform

quiet depot
#

cuz we already have a sponge 7 impl

obtuse gale
jovial warren
#

One that is natively supported by many platforms, including Paper, Sponge, and even Minestom and Krypton

quiet sierra
#

forcing everyone to use a components system to make itemstacks

#

and deprecating everything else is just stupid

jovial warren
#

Like we don't even support the old text system, we only support Adventure

obtuse gale
#

sure, deprecating something that the game internally hasn't used for over 7 years is bad

quiet sierra
#

everyone been using chatcolors for forever now

half harness
#

chatcolors 😌

quiet depot
half harness
#

btw what will krypton use?

obtuse gale
jovial warren
half harness
#

oh

frail glade
#

Just cherry pick a commit that has sponge 7 to extract it and push it into the regular branch?

#

¯_(ツ)_/¯

jovial warren
#

It's had it for a while

quiet sierra
frail glade
#

But yeah Adventure is probably the main focus.

quiet sierra
#

<red> is ugly

obtuse gale
quiet depot
#

ye pretty much glare

jovial warren
#

It is awful

quiet depot
#

at the time i didn’t really understand sponge’s versioning system

jovial warren
#

The BungeeCord chat component API sucks big backwards compatibility dick

obtuse gale
quiet sierra
#

rgb

quiet depot
#

but now i understand that each major sponge ver is tied to an mc ver

half harness
#
fun String.toComponent(): TextComponent = LegacyComponentSerializer.legacySection().deserialize(this) 
``` u can use this if u use kotlin and u want to use chatcolors :))
quiet depot
#

sponge 7 1.12, sponge 8 1.16, sponge 9 1.17

#

or something like that

#

so we actually have to support multiple sponge vers

jovial warren
#

Yeah

quiet sierra
#

I'm probably gonna get kicked out of this server for saying kotlin bad

jovial warren
#

Maybe

quiet depot
#

kotlin bad

half harness
#

lol

jovial warren
#

Pig you haven't even used it yet lol

quiet depot
#

i’ve used kotlin like once

half harness
#

discord won't let me laugh out loud 😢

jovial warren
#

I mean, programming language is mostly personal preference

ocean quartz
quiet depot
jovial warren
#

You know those and codes haven't been in the game since classic right?

obtuse gale
#

classic? what?

quiet sierra
jovial warren
#

Yeah, the original colour char was ampersand, in Minecraft classic

#

Read it on the wiki

quiet sierra
#

§

obtuse gale
quiet depot
#

you don’t measure readability from the perspective of an experienced user, the only relevant experience is the experience of a newcomer, to whom <red> is way more readable than &c.

distant sun
#

What I hate about <color> is the extra length that it adds to the text

obtuse gale
frail glade
#

Okay so anyways.

jovial warren
obtuse gale
#

funny

frail glade
#

We would like to use Components in some way shape or form in P3 as we've said. We just haven't totally figured out the system around it because we don't want people to have to constantly use serializers and deserializers in their plugins to use placeholders.

half harness
#

what if there was a library that let yo udo this: ```xml
<red>
<bold>
<text>Hello World</text>
</bold>
</red>

distant sun
#

God no

quiet depot
#

stripped & component

ocean quartz
jovial warren
obtuse gale
#

dkim stop spamming for fuck's sake

half harness
#

ok

#

oh two admins 😳

ocean quartz
#

Yeah the closing tags aren't needed but they are present

quiet depot
#

maxim’s idea for papi 3 is really fucking cool

jovial warren
#

People won't even need to interface with the underlying platform's system if you build the system right

frail glade
#

Well there's a reason we have some Adventure devs that we can reach out to with questions. We just need to come up with a draft idea and see what their thoughts on.

obtuse gale
ocean quartz
#
<red>Red</red> white <blue>Blue also blue
jovial warren
#

And you can internally provide automatic conversions to and from legacy formats

distant sun
#

Holy fuck

#

Smh matt

obtuse gale
#

not to mention <bold><red>hello</red> world will have world bold

half harness
#

😮

ruby dew
#

what if there was a library that let yo udo this:

TrashPluginChatColor.useColor().registerfuture.addNewListener(new StringComponent.build().addColor(yourmum).ClosingTag().build);
obtuse gale
#

\✨ trees \✨

jovial warren
obtuse gale
#

?

ocean quartz
#

It's not that bad

distant sun
#

Isnt like there's many options

ruby dew
#

i would stick to &a&l

#

rather

ocean quartz
#

BB code kek

ruby dew
#

i hate html tags

quiet depot
distant sun
quiet depot
#

and if u don't have access to the repo

#

you'll see soon™️

frail glade
#

I didn't even see that, damn.

quiet depot
#

async is issue #29 😉

ocean quartz
#

One thing I was thinking about with PAPI using components is how you'd handle relocation, because let's say you parse a placeholder and you get a component back, if papi relocates, extensions would need too, if papi doesn't relocated, there can be version issues 😩

quiet depot
#

will just include the relocated adventure in the papi maven jar

jovial warren
#

For non-native platforms, I think that's a good idea, not sure about native platforms though, but not including the same version everywhere may produce inconsistencies

ocean quartz
#

I wonder if isolating adventure would allow it to work without needing relocating, that way on native platforms it could be used directly without some sort of conversion

jovial warren
#

I don't think you could get away with relocating it anyway, since expansions will expect it to be there

obtuse gale
#

Pig how'd other plugins go about accessing the PAPI API on platforms without a services manager such as Bungee?

#

last time I mentioned a static accessor you fainted :^)

jovial warren
#

Injection?

#

Actually, no, Bungee doesn't have Guice lol

ocean quartz
#

Bungee doesn't have many things

jovial warren
#

I think static accessor is the only option for Bungee tbh

#

Velocity should be easy to do with injection though

#

Does Fabric have anything like a services manager? Or is it a bit too bare bones for that?

obtuse gale
#

Fabric is literally a mod loader and.. that's all

jovial warren
#

Lol

obtuse gale
#

It doesn't really add or modify anything to the game, it's vanilla

jovial warren
#

So we need a solution for fabric as well

obtuse gale
jovial warren
#

Yeah that is nice

#

Though the mixin system seems like it could cause some problems with mod compatibility

obtuse gale
#

yeah but you can also define priorities and stuff

#

which.. most people don't

#

lol

jovial warren
#

Yeah

obtuse gale
jovial warren
#

But anyway, what do you think would be a good idea for Fabric?

obtuse gale
#

like for what? I don't get the question lol

jovial warren
#

You said about the issue with platforms that lack services managers

obtuse gale
#

oh yeah

#

well hmm mixins also open up for a lot of possibilities

#

like a HUGE lot

jovial warren
#

Yeah

#

Just where to put it would be my question

obtuse gale
#

could always inject it to the MinecraftServer :^)

ocean quartz
#

We start talking about PAPI3 and Piggy is like

obtuse gale
#

xD

jovial warren
#

For BungeeCord, we definitely need a static accessor, there is pretty much no other way

#

I mean, BungeeCord is entirely designed around the basis of static abuse lol

obtuse gale
#

a static accessor is easy for all platforms, just make it part of the api module

jovial warren
#

Yeah

obtuse gale
#

to expose the interface with the getter

jovial warren
#

Yeah

prisma wave
#

v

obtuse gale
#

o

hot hull
jovial warren
#

And then you could use either that or the platform's native services manager

#

And maybe I could even do something in Krypton where you can share injectable stuff between dependents or something

#

Though I do still kinda wanna make an auto service thing, like what you have in Spring, so people can create service classes and have the server auto scan and pick them up and then add bindings for them in the injector or something

#

I also kinda wanna try a Minestom implementation as well at some point, might talk to mode about it

obtuse gale
#

I wish I could use jigsaw's services thing lol

#

that'd be awesome

#

provides SomeInterface with SomeImpl, then you can just get it ServiceLoader.load(SomeInterface.class)

jovial warren
#

I was thinking more like a registerable system, like what PAPI 3 has internally, that would enable you to create very low boilerplate shared services that can be injected in to the constructor

obtuse gale
#

yeah but you still need to somehow make it accessible to external classes

jovial warren
#

External classes?

jovial warren
#

The services system would mostly be aimed at libraries and users of those libraries

obtuse gale
#

I don't think I get what you're saying

humble silo
obtuse gale
#

like for instance, on Bungee or Fabric, how would another plugin use that same system?

obtuse gale
humble silo
#

Im not gonna say its fun, but its very cool

sly sonnet
#

will the map.merge(player, 1, Integer::sum); work even if the player is not in the map?

prisma wave
#

yes

#

it'll just be 1 i think

distant sun
#

Yes

sly sonnet
#

Thanks guys! fingerguns

static zealot
#

you're welcome guy! fingerguns

eternal compass
#

Can people give me options/advice on how to improve this page?

static zealot
#

step 1

#

delete

eternal compass
#

(It's HTTP because it's still beta)

static zealot
#

why is the Chat box sticky when you select custom?

#

I don't like that. it messes with my brain

#

like the description

#

part

#

ah I guess it does make sense

#

when you scroll down

#

to the lower addons

eternal compass
#

The addon?

static zealot
#

I was hovering over the chat addon

eternal compass
#

Ooh yeah

static zealot
#

and the description box had the title Chat

eternal compass
#

Right

static zealot
#

it makes sense now

#

had to just scroll down a bit xD

eternal compass
#

Yup :p

#

I tried to make it as intuitive as possible whole still adding the features I was tasked with adding

onyx loom
#

number 1 = monad 🙂

prisma wave
#

different type of monad sadly

#

It's very misleading

#

APL has monads too but it's a different kind

lunar cypress
#

APL doesn't have monads, it has monadic functions

prisma wave
#

yeah that's what i meant

#

jelly too

onyx loom
#

interesting video anyways

eternal compass
#

I want it to be 103% stable when its pushed to production

prisma wave
#

if you toggle between the 2 tabs too much it seems to just break

eternal compass
#

yes I fixed that

#

already

#

but I don't have permission to update the page ;-;, so I'm waiting until he pulls

#

so anything besides that :p

prisma wave
#

🙃

eternal compass
#

per bug

hot hull
#

Quick question, what syntax should go classes use?

eternal compass
hot hull
#

go the language, full lowercase or?

eternal compass
#

doesn't go not have classes?

#

Go does not have classes. However, you can define methods on types. A method is a function with a special receiver argument. The receiver appears in its own argument list between the func keyword and the method name
https://www.google.com/search?q=go+classes

static zealot
#

XD

eternal compass
#

25% 😉

static zealot
#

0*2. That's a lot of money

eternal compass
#

yessir

hot hull
#

class, aka file name

#

Excuse my oop ways

eternal compass
#

oh, I got no idea. look at something like pterodactyl that uses go and probably follows standards :p

onyx loom
eternal compass
#

I'm just glancing at elara, that looks like typescript syntax lol

frail glade
#

How's your website stuff going, Fred?

onyx loom
#

@prisma wave smh with ur inconsistencies, the elara github logo uses the red logo but the discord server uses the white logo

eternal compass
frail glade
#

Only one I know of is the skyblock one?

eternal compass
#

yeah

#

its good

#

finished basically

frail glade
#

Oh yeah?

eternal compass
frail glade
#

Aight, let me play with it.

eternal compass
#

theres a few issues that I just committed and aren't there yet (including one issue fix)

prisma wave
#

file names are usually lowercase with underscores I think

prisma wave
#

😵‍💫

onyx loom
#

(that was the only file i found with that)

prisma wave
onyx loom
#

lol

frail glade
#

Well there's no SSL on it + some missing headers Fred so it could be vulnerable to XSS crap. Are you planning to make it a FQDN site with SSL?

eternal compass
#

right, Tasty (the BentoBox owner) will put it behind cloudflare when we switch it to our production site

#

and XSS? whats that

#

ooh

#

hm

frail glade
#

cross-site scripting

eternal compass
#

right

#

luckily theres nothing one could do via XSS to the site, but that is a flaw

frail glade
#

For my sites that use nginx, I have a general headers file that's included in requests to help with that stuff.

#

Yeah that's why I said idk how much you care.

eternal compass
frail glade
#

Express?

eternal compass
#

yup

#

the page is OS

frail glade
#

From what I can see it looks okay right now, I can try again when it's in prod.

eternal compass
#

I'll use the express helmet app to block XSS hopefully

frail glade
#

Wow, that's a one-liner it looks like.

eternal compass
#

yup

#

easy :p

frail glade
#

If you want to deploy a test with helmet, I can check it again.

eternal compass
#

I can't actually deploy the site myself, but shall I ping you when it is updated?

frail glade
#

Yeah that's fine.

eternal compass
#

👍

#

hm, helmet obv did something lol

#
Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self'"
frail glade
#

Well did you try running it locally before pushing it to the repo?

#

Or was that from testing locally?

eternal compass
#

and yeah I see how to disable csp

frail glade
eternal compass
#

Ig I'll just manually go around it

#

thats what the helmet dev recommends

frail glade
#

Lol nice.

#

Now make sure it runs locally before you have bento try to deploy it.

eternal compass
#

I tested it in a incognito tab this time

#

like a smart lad

frail glade
#

Nice. Now have him deploy and let's get to testing.

eternal compass
#

oh jeez I accedently committed another test piece of code

frail glade
#

Nice one.

#

Fix the readme while you're at it or I'm going to be one of those people who makes a PR to fix 1 letter and call myself a contributor.

eternal compass
#

whats messed up in the readme? 👀

frail glade
#

"East-To-Read"

#

East -> Easy

eternal compass
#

oh lol

#

yes

eternal compass
#

lol

eternal compass
#

and I added discord notifications for errors, because I accidently added test code for that into a commit :p

frail glade
#

Nice, now get the new version deployed.

eternal compass
#

I will. TastyBento lives on the west coast though, and well, works a real job (I know, right?) so he probs won't deploy it for like 5-6 more horus

frail glade
#

Speaking of that, I should probably get ready for my meeting in 20 minutes.

eternal compass
#

lmao

steel heart
#

lol

onyx loom
#

@ocean quartz i was thinking about the gui kotlin lib, do u have any thoughts for handling events?
i was thinking about it myself, but idk how good this is?

gui {
  events {
    on<InventoryClickEvent> {}
    on<InventoryOpenEvent> {}
  }
}```
idk how well that would actually work tho because iirc that was no base InventoryEvent within spigot, so might be a little annoying with the generics
#

might get messy too with a lot of arrows 🥲

ocean quartz
#

It's actually extremely easy to do

#

Though for gui it'd be even easier

eternal compass
#

it got updated ig

frail glade
#

Wonder if he has it just auto pull?

onyx loom
#

what is crossinline matt 😮

eternal compass
#

he DM'd me

frail glade
#

Ahh

#

Well it looks like it did fix a lot of the stuff, so, great job.

#

Just now deploy SSL behind cf and you should be good.

eternal compass
#

right

frail glade
#

Great work 👍

eternal compass
#

thanks :p

ocean quartz
# onyx loom what is crossinline matt 😮

Basically nested inline
A better description from the docs:

Note that some inline functions may call the lambdas passed to them as parameters not directly from the function body, but from another execution context, such as a local object or a nested function. In such cases, non-local control flow is also not allowed in the lambdas. To indicate that, the lambda parameter needs to be marked with the crossinline modifier

#

For the JDA implementation I have to use noinline which is the first time i've used xD

onyx loom
#

man the amount of kotlin keywords is insane wtf

#

ive never heard of that either

#

sounds hacky

ocean quartz
#

How about inline val in the constructor? 🥲

eternal compass
#

I know private

#

inline?

#

is val like javascripts var?

#

listener: is a name I presume

#

and E.() -> unit is a type?

frail glade
#

Coincidence? I think not.

ocean quartz
# eternal compass inline?

Lots of questions xD
Inline means the compiler will basically paste the code where it's called instead of using an object, like java's lambdas do
Val is like java's final Type
Field name yeah
That's a function declaration, E. means it'll extend E which is an event type, so when the function is used you can access the even as this instead of declaring an event variable, the Unit at the end just means it'll return nothing

eternal compass
#

oh wild

#

Unit means void?

onyx loom
#

kind of

prisma wave
#

void but an actual value

eternal compass
#

thats like saying null, but an actual string

prisma wave
#

void in java isn't a type

#

unit is

eternal compass
#

it isn't?

#

ig I'm thinking of TS

#

I've used a lot of TS over the past 2 weeks

prisma wave
#

Nope

#

Essentially every function in kotlin must return a value (since that's the definition of a function)

#

If you don't explicitly return something, it's either Unit or Nothing

ocean quartz
prisma wave
#

😵‍💫

eternal compass
#

void.class? I gotta see that

#

what does it show in jd?

#

is it like () -> {} or smth?

prisma wave
#

what?

eternal compass
#

void.class

#

oh oh its a type

prisma wave
#

No, it's a special type I think

#

All of the primitives have .class types

eternal compass
#

ahh

prisma wave
#
  • void
static zealot
#

There's 2 types of people in this world. there's the hard workers, there's the gamers and well... there's @oak coyote xD

static zealot
#

he's special. we don't count him with the other kids

eternal compass
#

hey-

#

also wait I don't have a status lol

#

why is Jerry special

steel heart
#

Eventually more special

static zealot
#

who are those?

sly sonnet
#

a round thingy

#

if you put it's bottom near a magnet it'll open up and become some dragon or some shit

onyx loom
#

til 16th august anyway

static zealot
#

did you see they rename it to pubg battle grounds or something like that? xD

onyx loom
#

oh yeah lol, the logo vs the steam name

static zealot
#

it's bcz they're launching another battle grounds game

onyx loom
#

intriguing

eternal compass
#

thats-

static zealot
#

yes

eternal compass
#

okay

static zealot
#

it's not a first

#

there's a lot of apps and companies named like that

eternal compass
#

fair

static zealot
#

it was a joke. obviously

onyx loom
#

🌞

#

yea so matt, did u like my idea btw? or have u thought about any other ideas?

ocean quartz
#

I like it yeah, though i'd need to see on a good way to implement it

oak coyote
frail glade
#

Been hearing reports of some of the Oracle machines turning off after 30 days so make sure you're aware of how many days you have left.

prisma wave
#

ah it's not just me then

static zealot
#

yeah

#

this was an experminet

#

I'm telling you

prisma wave
#

well yugi said that his was still accessible

static zealot
#

yeah idk. it's just weird

#

how they just give that good of a vps for free

prisma wave
#

it was rather sus

#

but like

static zealot
#

and some people can use it, some can't, some just lose it randomly

prisma wave
#

it's one of the biggest tech companies in the world

static zealot
#

with one of the worst customer support

#

even tho we didn't pay anything xD

prisma wave
#

yeah lmao

obtuse gale
#

I wouldn't be surprised if sooner or later Google bought it...

prisma wave
#

maybe

#

well

#

they have money

obtuse gale
#

like sure it's huge, I see it more as "adobe huge"

eternal compass
#

they lied to us?

obtuse gale
prisma wave
#

looks boring

prisma wave
#

still

#

you dont see adobe using scummy business models to gain more money, right...?

obtuse gale
#

:^)

prisma wave
#

beta oracle vs chad azure

obtuse gale
#

Desperate times call for desperate measures

prisma wave
#

quite possibly

distant sun
#

what are they doing in there lol

obtuse gale
#

blackjack and hookers

static zealot
#

understandable

sweet cipher
#

yo

winter iron
#

how can i hide a mob from a player

#

a certain player that is

#

i imagine packets but is there an api method?

#

D:

#

ty but im gonna use protocollib anyways

#

different shit same story

#

🙂

steel heart
#

Potatoes!

#

🥔

#

🥴

distant sun
#

After further investigation, the renewal invoice WE2310222 was for the duration from June 01, 2021 to June 30, 2021.
This being said, we will require you for the time used until 2021-07-29 from when you requested the termination. Please settle the 28-day invoice for the time used:
nice ovh

#

I pay in august for june, the service doesn't get cancelled, what's next? 🤣

eternal compass
eternal compass
#

its live

#

with SSL and all

#

and hopefully no bugs 😳

frail glade
#

I'll play with it after dinner

gusty glen
#

which distribution of java do you prefer (java 16), azure, openjdk, adoptopenjdk or some other?

frail glade
#

@eternal compass

#

I found bug

eternal compass
#

when too many people load it I think

#

either that or tasty's restarting

#

one of the two

frail glade
#

If you can't handle the couple people that clicked it you guys got bigger problems.

eternal compass
#

nah he's restarting

frail glade
#

Looks to be back online

eternal compass
#

oh then its about to go down again :p

half harness
#

¯_(ツ)_/¯

frail glade
#

Inconsistent wrapping

half harness
#

idk

eternal compass
#

no sane person would use mobile :p

frail glade
#

So?

eternal compass
#

to download addons

#

but ig ig

#

I'll think of a way to fix that

frail glade
#

Literally everything else I can see is fine on mobile except that

#

You could make the font like 1 - 3px smaller on mobile

eternal compass
#

thats true ig

#

good idea

frail glade
#

Do you have it wrapping?

#

Background image

eternal compass
#

apparently

#

I obv didn't test on mobile

#

only PC

#

wait no the background image is disabled on mobile?

frail glade
#

That's desktop view so it's some kind of responsive preset

eternal compass
#

oooh

#

I need a 1000 x 1800 monitor :p

#

to turn that way

#

since turned normally is fine

#

so ig make the image not wrap, and change the text size or smth to make mobile better

sweet cipher
#

When you do the custom option, and unclick the checkbox it doesn't go back to the default message

#

That was a terrible explanation

eternal compass
#

ik what you mean

#

but it shoulden't

sweet cipher
#

In the custom section where it says choose gamemodes, if you click then unclick something like Acid Island, it leaves the description

eternal compass
#

else you can't read it if you don't actively hover over it

#

its always on the last one you saw

frail glade
#

I originally thought you used a responsive framework to create it but it appears not

eternal compass
#

wdym responsive framework?

#

I used react & tailwind

frail glade
#

Hmm okay

#

I haven't looked at the source but I guess the lists aren't tabled because all the buttons are different lengths

eternal compass
#

ig using grid woulden't be a bad idea

frail glade
#

It's totally up to you I'm just pointing out what I see

eternal compass
#

right right

#

thank you for the input btw ❤️

frail glade
#

Yup!

#

Looks like it's down again.

eternal compass
#

it is

#

fixing an issue that seems to occur only on the prod version

eternal compass
frail glade
#

What changed?

eternal compass
#

I think his SQLite file was corrupt or smth

#

but I got no way to test

frail glade
#

Ahh

eternal compass
#

anyways mine worked

frail glade
#

So he has it on cloudflare but it's not actually proxied. I don't know if their protection or anything actually kicks in if it's not proxied?

oak raft
#

Damn I guess you're a latest andy now

half harness
#

well

oak raft
#

Alright thanks

half harness
#

i still like 1.16 😌

quiet depot
#

🔨

half harness
#

AH

#

PIGGY

#

NO

oak raft
#

NOO

half harness
#

WHY

#

AAAAAAA

obtuse gale
#

PLEASE

half harness
#

NO

#

I SAID 1.16

#

WAIT NO

oak raft
half harness
#

1.17*

quiet depot
#

=

oak cypressBOT
#

@quiet depot, Help menu!

half harness
#

AAAA

quiet depot
#

=b

obtuse gale
#

pepega

quiet depot
#

=ba

compact perchBOT
#
🔨 The hammer has been swung.

@half harness Banned!

oak raft
half harness
#

lol

oak raft
half harness
#

ghost ping D:

oak raft
#

lmao rolled

obtuse gale
#

F

oak raft
#

f

half harness
#

f

quiet depot
#

🇫

oak raft
#

Yo piggy

#

Don't you make discord bots for a living?

quiet depot
#

not exactly

obtuse gale
#

lol

oak raft
#

Ok well do you recommend jdk 16 too?

quiet depot
#

yes

oak raft
#

👍

half harness
#

btw

#

some cool intellij settings:

oak raft
#

Yes pls

obtuse gale
#
  • none
#

👏

oak raft
#
  • use eclipse fingerguns
#

And it's hotspot right?

#

I don't even know what OpenJ9 is

sweet cipher
quiet depot
#

openj9 is eclipse jvm

compact perchBOT
half harness
#

yes

oak raft
#

Same thing right?

half harness
#

yes

oak raft
#

ye

half harness
#

read the github org name :))

quiet depot
#

openj9 != hotspot

obtuse gale
#

the !==

#

it was ugh

#

pain

quiet depot
#

lol

quiet sierra
#

um help

quiet depot
#

it seems you may have a minor memory leak

obtuse gale
#

problem solved

quiet sierra
#

it should have like

#

idk 20! elements

obtuse gale
#

that's a big number

half harness
#

plugins:

  • .ignore
  • Atom Material Icons
  • Discord Integration (although i personally have it disabled now 🤡)
  • Material Theme UI Lite (Or you don't need Lite if you're a student, you can email the author with proof)
  • Minecraft Development (at least have it disabled, it still does things even when disabled.. lol such as plugin.yml checking)
  • Rainbow Brackets ( 🌈 )
  • Statistic
  • WakaTime (shows how much you're procastinating 😎)

settings:

  • Editor -> Color Scheme -> Color Scheme Font -> Fira Code Medium (or any font that supports ligatures) and enable ligatures, makes everything look nice
  • Appearance -> Theme: Atom One Dark (Material)
  • Appearance -> Material Theme UI -> Settings -> Advanced Settings: Features -> Striped Tool Windows

|| jeez why do I have so much ||

#

lol

quiet depot
#

indeed

#

that is quite a big number

obtuse gale
#

screaming twenty is a big number

quiet depot
#

rainbow brackets what the fuck

half harness
#

what

quiet sierra
#

o shit it is

half harness
#

why do people not like rainbow brackets ☹️

quiet sierra
quiet depot
#

it's just like

#

a half effort

#

i want rainbow font

half harness
#

;-;

quiet sierra
#

let's go

quiet depot
#

you're almost using more memory than docdex

half harness
oak raft
#

I appreciate that

#

I'll look at it in 2 seconds

#

I have no clue where my jdk went

half harness
#

xD

oak raft
#

And I'm searching

half harness
#

uh

#

C:\Program Files\AdoptOpenJDK?

#

thats where mine are :))

oak raft
#

I don't see it there

half harness
#

hmm

#

did u skip through the installer 🥲

quiet depot
#

which java

oak raft
#

No sir

oak raft
#

16?

quiet depot
#

no

#

it's a command

#

will show u path of java executable

oak raft
#

oh

half harness
oak raft
#

Thanks

half harness
#

oh

#

what

#

wait what

obtuse gale
#

🅱️im🅱️ows

quiet depot
#

try powershell if it doesn't work in cmd

#

try linux if it doesn't work in powershell

half harness
half harness
sly sonnet
#

lel

oak raft
#

lmao linux

quiet depot
#

yeah it's a linux command but microsoft seems to port those over every now and then so I had a shred of hope

half harness
oak raft
#

Looks like I'm reinstalling 🙄

half harness
#

😌

#

wait a minute

#

videos?

quiet depot
#

no

#

don't reinstall

quiet depot
#

Get-Command java

#

in powershell

oak raft
#

Lemme try

half harness
#

WOAH

quiet depot
#

I KNOW RIGHT

half harness
#

YES

oak raft
#

Thanks

quiet depot
#

but linux's is easier

oak raft
#

But wtf is Eclipse Foundation

quiet depot
#

"which"

oak raft
quiet depot
#

basically switch to linux

half harness
#

lol

quiet depot
#

eclipse foundation runs adoptopenjdk

half harness
#

Time to use Eclipse IDE too :))

oak raft
#

Ah, so how come dkim didn't have that folder?

quiet sierra
#

can we all just switch to ms-paint-ide

half harness
#

lol

#

🦗

#

🐜

oak raft
#

Ok now I'll look through your list dkim 🙂

half harness
#

xD

#

i gtg now tho

#

cyaa

oak raft
#

dkim I need help 🙂

#

Oh I didn't see that OMEGALUL