#dev-general

1 messages ยท Page 430 of 1

old wyvern
#

Nah, I prefer them on the desktop

lunar cypress
#

the majority of people use desktop icons

#

hence my question marks

cinder flare
#

not the ones I respect

#

I tend to have windows like, on my screens at all times

old wyvern
#

Seems like a you problem

cinder flare
#

so minimizing everything every time I want a folder is a lot of work lol

#

plus, if you get PowerToys, you can just do Win + Space to open a better search than the default windows one

obtuse gale
#

doesn't win + space change the keyboard language?

old wyvern
#

Yes, by default

cinder flare
#

i mean I speak english

#

and have an american english keyboard

#

but also you can rebind it to whatever you want

obtuse gale
#

ah

cinder flare
#

anyways yugi do lsblk

old wyvern
#

Lemme get on lin

#

one sec

#

?paste

compact perchBOT
#
FAQ Answer:

Paste Services
When asking for help with a config/menu/code issue please use one of these:
(However we do prefer if you used our paste :))
โ€ข HelpChat Paste - Usage
โ€ข Hastebin

old wyvern
#

@cinder flare

#

I dont think I see anything going wrong specifically

#

Also didnt get that message on this boot

cinder flare
#

what's /dev/sda5

#

what's your sda drive? the linux one?

old wyvern
#

yes

#

sda5 is the home partition

ocean quartz
#

sda sounds like someone didn't know what to type so they just did the whole asdf in the keyboard

old wyvern
#

lol

cinder flare
#

well okay, it wasn't responding so something about your sda drive was funky

old wyvern
#

weird

half harness
#

whenever i type random keyboards sometimes it comes out as sadsadsadsadsad so it looks like im spamming sad ;-;

obtuse gale
half harness
#

lmao

old wyvern
#

Lol

boreal needle
obtuse gale
#

what are you running exactly to build it

boreal needle
#

gradle -i publish

#

did try with clean as well

obtuse gale
#

don't you uh

#

need repo credentials?

boreal needle
#

i do

cinder flare
#

hey how do you use sdkman on windows

boreal needle
#

i'm just assuming it'd tell me if that was why it wasnt pushing

lunar cypress
boreal needle
#

many times now

lunar cypress
#

try the specific task

#

publish<Artifact>To<Repo>

boreal needle
#

same thing

prisma wave
oak raft
#

I just met someone on valorant who said they only know Swift

old wyvern
#

nice

distant sun
#

Apple development ๐Ÿคข

hot hull
#

so deleting paper from .m2 worked

pale shell
#

if ya wanna pull your hair out because you forgot how to format api things in java class clap your hands Clap

obtuse gale
#

what

forest pecan
#

wdym

pale shell
#

So you know in java classes you put the comment don't you

#

in like api ones

obtuse gale
#

Javadoc?

forest pecan
#

^

#

If you do /** in intellij

#

it should help get you started on the comment

#

for the arguments and stuff

half harness
#

i just alt + enter

forest pecan
#

Smh

pale shell
#

like javadoc but people put it above methods

half harness
#

for javadocs

#

lol

forest pecan
#

dude you could literally type /** and enter

pale shell
#

alt + enter?

forest pecan
#

no no no

half harness
forest pecan
#

type /**

#

then press enter

half harness
#

so i just alt + enter

#

๐Ÿ˜†

forest pecan
#

dkim you make things harder then they should

half harness
#

lol

obtuse gale
#

I believe IJ has a whole setting to generate the template class wise or whatever

half harness
#

i barely write javadocs anyways

#

since no onw uses my stuff ๐Ÿ˜”

forest pecan
#

lol

pale shell
forest pecan
#

See?

#

magic right

half harness
#

true

pale shell
#

i didn't know that existed

half harness
#

but for example my dkim19375core lib

forest pecan
#

Mhm

#

dont follow dkim's method

#

its slow af

#

lol

half harness
#

i doubt anyone uses it

pale shell
#

tysm

forest pecan
#

np

pale shell
#

I got like 20 methods to sort out

forest pecan
#

you need to fill in information about them tho

half harness
#

i put some simple javadocs in itemmovedetectionlib

#

just in case someone decides to use it

pale shell
#

how do you do the returns thing or dont ya

steel heart
pale shell
#

Like sometimes it says "returns boolean"

forest pecan
#

lmao

half harness
#

wdym

forest pecan
#

i can simplify the name for u

#

"shittylib"

#

/s

pale shell
#

L

half harness
#

-_-

distant sun
forest pecan
#

damn it

#

lmfao

steel heart
#

dkim open for prs?

half harness
#

i dont mind PRs, but you'll have to tell me because i never check if any PRs are open ๐Ÿ˜‚

distant sun
#

He has too many

half harness
#

wat

half harness
pale shell
#

When you have @param what do you put in there? thonking

#

like double or?

ocean quartz
steel heart
half harness
# steel heart Ur lib

uhhh i mean i guess yea, i made this a long time ago so don't expect the code to be good :p

pale shell
#

Alright thanks matt! ๐Ÿ™‚

forest pecan
#

also for return types

#

you do @return

half harness
#

at least alt + enter does

forest pecan
#

you think /** doesn't?

half harness
#

๐Ÿคทโ€โ™‚๏ธ

forest pecan
#

dkim have you tried it before

half harness
#

why else would he be asking

forest pecan
#

lmfao

#

**what do you put in there? **

half harness
#

a description?

#

idk

#

ok

forest pecan
#

ok dkim just scroll up and read

#

lmfao

#

4head

pale shell
#

finally documented it all (i think) pls nobody request more api features

half harness
#

๐Ÿ˜ฎ

prisma wave
#

@lunar cypress any idea why emacs would just print "aborted" when i try and open a file with C-x C-v ?

#

i select a file, press enter and it just gives that

#

can navigate through directories fine

cinder flare
#

i think it's telling you to use vim

lunar cypress
#

I don't even know that command

#

do C-h k C-x C-v

cinder flare
#

:e /path/to/file

lunar cypress
#

that probably works in evil mode

cinder flare
#

wtf is evil mode

prisma wave
lunar cypress
#

emacs mode that gives you most vim keybinds

cinder flare
#

oh

prisma wave
#

crap image not loading

cinder flare
#

yeah no embed lol

prisma wave
cinder flare
#

maybe it's your virus url

prisma wave
#

works now

#

hey it's the default one with the screen capture tool

#

havent figured out how to change it yet

#

or if you can

cinder flare
#

just use sharex and it uploads to imgur automagically

prisma wave
#

sharex on linux ๐Ÿฅฒ

#

if only

lunar cypress
#

C-x C-f works?

cinder flare
#

why was that embed so white and blinding

prisma wave
lunar cypress
#

Ok C-x C-v works for me, which buffer are you doing this in

prisma wave
#

uh

#

the startup screen i think

lunar cypress
#

yeah you probably can't kill that

prisma wave
#

ah that makes sense

cinder flare
#

classic

#

immutable startup screen

prisma wave
#

quiet you

#

none of your vim nonsense here

lunar cypress
#

imagine having write protections

prisma wave
#

i've got double-niche here

cinder flare
#

won't know till you try!

cinder flare
#

sudoifies my vim session and lets me save anywhere >:)

old wyvern
#

Aeson hell

prisma wave
#

bruh

#

couldn't even build without erroring

prisma wave
old wyvern
old wyvern
#

I've been trying to get this to work for some time now

prisma wave
#

wtf trans maybe ๐Ÿ˜ณ

old wyvern
#

I want to smash my head open now

hot hull
#

ลžame

#

All the time

old wyvern
#

๐Ÿฅฒ

prisma wave
#

both sound fun

old wyvern
#

The parenthesis

#

tho

#

ew

prisma wave
#

rider is not working

#

wayland bad

#

why am i doing this

old wyvern
#

lol

#

What are you trying to do?

prisma wave
#

open rider

old wyvern
#

oh

#

lmao

prisma wave
#

it gets to the project screen and then dies

old wyvern
#

Does rider not work normally?

prisma wave
#

this is supposed to be rider

#

what

#

what

old wyvern
#

lmao

prisma wave
#

the rightclick menu comes up

#

so

#

it's probably just not rendering properly

#

which is nice

old wyvern
#

welp

prisma wave
#

fixed it

jade kraken
#

is 857k triangles for a car model alot

obtuse gale
#

I can make one with just 4

#

Though hovering pyramids aren't exactly appealing

old wyvern
#

The pharoah would love it

ocean quartz
#

I can hear that gif

old wyvern
#

๐Ÿ˜Œ

ocean quartz
#

IJ, you good?

lunar cypress
#

rookie numbers

frail glade
#

I had to up my allocation after this latest update.

ocean quartz
#

I had to up too, might need to do more

frail glade
#

I mainly only run into problems when I'm working on MCBanners since I have to have like 6 instances of IJ up.

oblique heath
#

it saddens me that DataOutputStreams are slower that ObjectOutputStreams

steel heart
#

How big difference?

ocean quartz
#

Gotta love it

onyx loom
#

is that because of the method in spigot

ocean quartz
#

No idea

pale shell
#

Likely gonna sound stupid asking this but on some servers I've seen prison mines get filled in a chunk format is that possible with fawe?

ocean quartz
#

What version was PDC introduced?

onyx loom
#

14 possibly?

ocean quartz
#

Yeah i think so too

hot hull
#

Stop supporting legacy ffs

ocean quartz
#

I don't want to support it but

hot hull
#

No buts

ocean quartz
#

Many butts

jovial warren
jovial warren
obtuse gale
#

your face is ew

weak magnet
#

Hey guys, i need some help with the PlayerFishEvent. DM me!

ocean quartz
sweet cipher
jovial warren
#

you couldn't resist could you

prisma wave
#

ofc not

old wyvern
#

The tuinity guy seems to have reaction spammed it xD

tranquil crane
#

ยฏ_(ใƒ„)_/ยฏ
you dropped this \

ocean quartz
#

Broken arm

half harness
#

floating hand

old wyvern
tranquil crane
#

In his github PR the backslash escaped the _ so it didn't appear, thus the arm is missing

half harness
#
    for (i in ((page - 1) * 7) until page * 7) {
        sendHelpMsgFormatted(label, commands[i])
    }
```this is what i use to make my command help page have pages, how can i get the max amount of pages? `commands.size / 7` doesn't work, `(commands.size / 7) + 1` doesn't work either
prisma wave
#

you sure?

old wyvern
#

ah ok

tranquil crane
#

make sure that isn't doing integer division and use ceil instead of +1

prisma wave
#

Yeah

tranquil crane
#

val pages = ceil(totalItems / itemsPerPage.toDouble())

half harness
#

oh

#

thanks

#

๐Ÿ™‚

forest pecan
#

everyone else has 500 stars or more for servers ๐Ÿฅถ

#

i didn't know minestorm was that high

#

lol

static zealot
#

well we need to do something about that don't we ?

forest pecan
#

lmfao

#

yes

static zealot
#

spam github accounts

#

๐Ÿ‘

obtuse gale
#

what

forest pecan
#

460 actually but thats a lot

lunar cypress
#

clearly stars are always a sign of quality

forest pecan
#

cause people in this world are dumb

lunar cypress
forest pecan
#

lmao

steel heart
#

man vue has more stars than react how

prisma wave
#

classic

old wyvern
#

seems pure

forest pecan
#

pure as nature

ocean quartz
#

@static zealot What is the serializer you use for converting Component to ugly String?

static zealot
#

LegacySerializer#legacyAmpersand

#

I think that's what its called

ocean quartz
#

Let's try

obtuse gale
#

shouldn't it be the legacySection?

#

well idk the context so

#

i'mma stfu

static zealot
#

nah its fine. talk. its probably smarter than whatever I'll say

obtuse gale
#

pee is stored in the balls

static zealot
#

oh I never knew

boreal needle
#

wow gradle is weird

obtuse gale
#

do tell

forest pecan
ocean quartz
static zealot
#

ohhh for inventory?

static zealot
#

I use a special serializer

forest pecan
#

fefo do you have ligma

onyx loom
ocean quartz
#

Imma try both

static zealot
#

the one that serializez to &x&x&x&x&x

obtuse gale
forest pecan
#

๐Ÿ˜‚

obtuse gale
#

useUnusualXRepeatedCharacterHexFormat

boreal needle
#

who even thought that &x was a good idea

static zealot
#

that's the one

#

matt

lunar cypress
ocean quartz
#

Gotcha, ty

obtuse gale
forest pecan
static zealot
boreal needle
forest pecan
#

lol

static zealot
#

also I've seen a Dragon once

#

do you know Willis @forest pecan ?

forest pecan
static zealot
#

I do

forest pecan
#

Damn

obtuse gale
#

Well I guess we are all 12 years old again

onyx loom
#

yes

forest pecan
#

ligma balls

static zealot
forest pecan
#

Yes

static zealot
#

gonna do it in #off-topic see if anyone falls for it

#

yoo what was the best hosting website called again?

#

someone removed the FAQ

#

or I'm just blind

ocean quartz
#

Huh, legacy section did the job

static zealot
#

o nice

ocean quartz
#

Actually

#

Didn't

obtuse gale
#

I mean fair enough that looks quite nice

#

A bit too pastel-ish

static zealot
#

that looks like vanilla colors tho

#

doesn't it?

#

vanilla

#

I mean legacy

obtuse gale
#

"vanilla"

static zealot
#

lmao

obtuse gale
#

yeah lol

ocean quartz
#

I think it is the non rgb ones yeah

static zealot
#

the one fefo sent tho works

arctic juniper
#

coc anyone?

static zealot
#

I've used it

obtuse gale
static zealot
#

but pls link me the hosting website

obtuse gale
#

I mean

#

what

static zealot
#

the one with "good hosting"

arctic juniper
ocean quartz
#

So how does the useUnusualXRepeatedCharacterHexFormat work?

obtuse gale
#

what

static zealot
#

that gives you like 512 Mb of storage

#

well if fefo is smart enough, he'll tell you

#

if not I'll look for it

#

in my code

ocean quartz
#

Is it in the LegacyComponentSerializer?

obtuse gale
obtuse gale
onyx loom
arctic juniper
#

that's disgusting

#

&# makes the most sense in a string

static zealot
#

no no kaliber

#

the meme onje

#

one*

onyx loom
#

mzungu?

#

lol

static zealot
#

that one

#

yeah

obtuse gale
#

the stupid md5 pattern only makes sense if you look at it from a computing perspective

static zealot
#

I forgot the name

obtuse gale
#

it's super easy to compute

#

other than that it's complete horseshit

ocean quartz
#

Still doesn't look right thonking

static zealot
#

val specialSerializer = LegacyComponentSerializer.builder().hexColors().useUnusualXRepeatedCharacterHexFormat().build()

#

this is what I use

#

and from my tests it worked

arctic juniper
ocean quartz
#

Ah yeah that did it

obtuse gale
# arctic juniper how come?

you can just keep everything nice and tidy in a loop parsing in pairs with & + the actual color code, no regex, no splitting, no nothing

onyx loom
#

good host can vouch

static zealot
#

yeah found the link. thank you very much

onyx loom
ocean quartz
#

Gotta love it

boreal needle
#

arguably simpler

obtuse gale
#

but not looping in pairs though

boreal needle
#

spigot doesnt loop in pairs iirc

arctic juniper
#

ah

static zealot
ocean quartz
#

Ah i forgot about this beauty when running on spigot ๐Ÿฅฒ

obtuse gale
#

well it looks for the color to translate + the next char so it grabs them in pairs

static zealot
ocean quartz
#

If things keep going like this I'll actually leave it there

static zealot
#

oh lmao

obtuse gale
#

hahaha

static zealot
boreal needle
#

the &s are literally ignored

oblique heath
#

๐Ÿฅฒ

static zealot
#

oh damn

obtuse gale
#

ah yes

forest pecan
#

the builder built into bungee for components is shitty anyways

#

lol

boreal needle
#

who even uses bungee chat anymore

static zealot
#

no one

#

well some do

boreal needle
#

i used to until is discovered the blessing that is adventure

static zealot
#

bcz they have not learnt the ways of adventure

ocean quartz
boreal needle
#

ig for simple stuff it makes sense

obtuse gale
#

eh..

cinder flare
#

nah it's always worth using adventure

forest pecan
#

cause an orange poor hashing algorithm doesn't want to use adventure

arctic juniper
#

why does it make a string

ocean quartz
#

I turned off the useUnusualXRepeatedCharacterHexFormat to see how it looked and oh .. my .. god

boreal needle
#

the same orange poor hashing algorithm insists on using buildtools too

forest pecan
#

lol

cinder flare
static zealot
#

not good

forest pecan
#

or whatever that was

boreal needle
#

what do you think lmao

cinder flare
#

it looks like the beta resource pack everyone used

ocean quartz
forest pecan
#

lol

arctic juniper
#

why isn't this a switch

ocean quartz
#

Looks beautiful in 1.12

static zealot
#

xD

#

well I mean if whoever makes the menu is thinking about that stuff can use some nice colors and make it look nice on 1.8-1.15 as well

ocean quartz
#

Normal colors works fine, nice

#

Now to test the worse version ๐Ÿ˜ฉ

obtuse gale
#

the unnamable

forest pecan
#

Matt are you hotswapping?

ocean quartz
#

Ah I truly love this version

ocean quartz
obtuse gale
#

lmao

obtuse gale
forest pecan
#

o

#

dont you love it when java has that extra Z

#

at the end

ocean quartz
#

Aight it works on the unnamed version as well

obtuse gale
ocean quartz
#

Prolly a typo someone made and they thought it'd be funny to leave

obtuse gale
#

lol

forest pecan
#

lol

ocean quartz
obtuse gale
#

yes

#

I approve

#

๐Ÿ‘

ocean quartz
#

Oh boy, now time to rework the item builder

#

@gusty glen Mind if I steal your idea of the pdc { } on the item builder?

static zealot
#

lmao

ocean quartz
#

Nice now to pretend I am working on it and procrastinate

ocean quartz
#

At least i'm honest xD

distant sun
#

being honest wont get the job done

gusty glen
#
player.inventory.addItem(ItemBuilder(Material.BRAIN_CORAL)
    .amount(5)
    .setLore("${ChatColor.LIGHT_PURPLE}Working great")
    .setDisplayName("JOOJ JOOJ")
    .addLore("AAAAA")
    .pdc { it.set(NamespacedKey(plugin, "abc"), PersistentDataType.STRING, "dsadasijhiujd") }
    .amount(10)
    .build())```
#

At least my ItemBuilder that I made in 15 minutes works

ocean quartz
obtuse gale
#

setLore("${ChatColor.LIGHT_PURPLE}Working great"
๐Ÿคข

#

matt please do components there

#

not like I'll ever use it but whatever

gusty glen
#

I mean, if it's on the API and it's not deprecated, there's no shame in it

#

Doing things in the adventure way means that I have to shade Adventure lib, and also means that I have to write more code to achieve the same exact thing

distant sun
#

@ocean quartz method for name and lore that accept strings, idc what you do from there

distant sun
#

d;paper player#sendMessage(String)

ruby craterBOT
#
void sendMessage(@NotNull @NotNull Stringย message)```
Description:

Sends this sender a message

Parameters:

message - Message to be displayed

distant sun
#

Ah paper 1.16 docs

gusty glen
#

I see no depreciation

gusty glen
distant sun
#

Ik

#

I havent used components for too much but they look good

distant sun
#

Cmon

#

String and component I mean

ocean quartz
#

I mean you can just do Component.text("String")

distant sun
#

Or I can use a string and you add an if there

#

if isPaper setDisplayName(component bla bla)

steel heart
#

Arguably String is already a component ๐Ÿคก

ocean quartz
#

I mean that'll be a thing, but you should use component

#

It already suppots 1.8-1.16 for the title, you pass a component but if it's old version it'll turn into string

distant sun
#

I mean, just accept string and turn it into a component xd

ocean quartz
#

And you call me lazy xD

static zealot
#

lmao

distant sun
#

I also call you stoopid but thats not my point

steel heart
#

components suck tho, so much extra work

distant sun
#

Esp for small things

steel heart
#

objectively true

distant sun
#

Let me do it Matt

static zealot
#

its OS isn't it?

steel heart
#

and even in larger things it quickly becomes hard to read the entire string

distant sun
#

This way you provide backwards compatibility

distant sun
#

He's the boss

static zealot
#

he'll just refuse your PR if he doesn't want it lmao. And you've worked for nothing

ocean quartz
#

You'll still need to shade adventure to have backwards compatibility though

distant sun
#

You as in the user or?

ocean quartz
#

Yeah

#

On latest paper it'll work fine but for older or spigot it'll have to be shaded

distant sun
#

Why would I shade adventure for a 1.12 plugin

ocean quartz
#

For compatibility

distant sun
#

Smh

#

Dont you also check if the server has support for components? Just add an extra check ๐Ÿคฃ

ocean quartz
#

I mean would you prefer to always check and create two inventories one for older version and one for new or pass one component and let it handle the rest

distant sun
#

I prefer to pass a string xd

ocean quartz
#

Like i told you before that won't work, if components are referenced even without using it'll throw an error

static zealot
#

I really wish paper added adventure support when 1.16 launched

ocean quartz
#

I mean i can add a string method but you'll still need adventure

distant sun
#

Whyyy

ocean quartz
#

Because Java

distant sun
#

That part of code wont be reached

ocean quartz
#

But will be referenced

distant sun
#
if (ispaper) meta.setDisplayName(Component.text(string));
else meta.setDisplayName(string);```
#

I swear this works

ocean quartz
#

Boom ClassDefNotFoundException

distant sun
#

ispaper + 1.16.5

ocean quartz
#

The check is there the difference is that it serializes the component to string to work on old stuff

distant sun
#

:((

#

Why are you so annoying

ocean quartz
#

It's not me lol
It's the changes from paper

distant sun
#

Finish your things and I will do some tests

static zealot
#

SMH

distant sun
#

If you dont want it I wont insist, just so I know of I was right or not

ocean quartz
#

Sure thing

distant sun
#

Also, make sure to fix setGlow to actually use the boolean ๐Ÿคฃ

ocean quartz
#

Noted
Totally remembered i had to fix that

distant sun
#

Im sure you did

static zealot
#

its all on Trello isn't it? xD

hallow crane
#

How do I make a website (vue frontend, nodejs / express backend) unhackable?

obtuse gale
sweet cipher
static zealot
#

you use the tag unhackable: true

sweet cipher
#

Really? I thought it was hackable: false

static zealot
#

oh

#

my bad

distant sun
#

@ocean quartz trello link ploz

sweet cipher
#

No wonder my credit card keeps getting stolen

static zealot
#

I have a bad memory

static zealot
sweet cipher
#

Oh ok

static zealot
#

or maybe ||c||orn subscriptions?

#

you never know

distant sun
#

why is this format familiar?

static zealot
#

ugh

hallow crane
#

I am serious about the website unhackable advice though

static zealot
#

bcz I made it

distant sun
#

for real

static zealot
#

probably wrong place yako lmao

hallow crane
#

It needs to be actually unhackable

distant sun
#

the optional and required part is

static zealot
#

PAPI? Idk

hallow crane
#

Lol

#

A lot of you are really smart developers

static zealot
distant sun
#

but not serious all the time

static zealot
#

you'll get memed here

sweet cipher
#

Have you ever heard of something being unhackable?

#

Just donโ€™t release it

surreal quarry
#
onHack(() => {
  disallow()
});```
static zealot
#

also yeah was about to say. nothing is trully unhackable is it?

hallow crane
#

It needs to be as unhackable as the US power grid

static zealot
#

well that's pretty hackable

#

did it a couple times

surreal quarry
#

my solution seems the best?

#

ill pr if you like

static zealot
#

this week*

sweet cipher
static zealot
#

yeah

hallow crane
#

Lel

sweet cipher
hallow crane
#

just jquery it

distant sun
#

I mean, even the pentagon got cracked ๐Ÿคฃ

surreal quarry
#

?.onHack(() => disallow())

hallow crane
#

$('on').hack(e=>e.preventDefault();)

#

dang

surreal quarry
#

who even knows if that is valid js

static zealot
#

man why use all that shit when you can just use a css tag ...

#

smh

#

unhackable: true

surreal quarry
#

html meta tags

#

work better in my experience

ocean quartz
hallow crane
#

Well it has to be as unhackable as the pentagon and US power grid since that's the standard I am upholding

sweet cipher
#

Control the program with your mind

distant sun
#

ah

static zealot
#

just make a div of the entire page unhackable and the rest hackable

sweet cipher
hallow crane
#

It is for the U.S. power grid @sweet cipher

surreal quarry
#
<div class="unhackable"></div>```
```css
.unhackable {
    display: none;
}```
ocean quartz
distant sun
#

๐Ÿ”—

sweet cipher
#

When the website loads, just ask if they are a hacker, if they are, steal their social security

hallow crane
#

Lol

#

Okay serious now

#

It's for the us power grid

distant sun
#

cut their power off

ocean quartz
#

I'm on my phone, you search it xD

surreal quarry
distant sun
#

fine

hallow crane
#

i idd

sweet cipher
#

Which trump do I ping?

hallow crane
#

@outer folio

half harness
#

@serene cave

hallow crane
#

@mellow valley

dawn hinge
#

@serene cave

#

I'm sure you can help

half harness
dawn hinge
#

Let's talk about taxes, that should summon him

ocean quartz
#

I don't think pulse is on right now

hallow crane
#

$10 per life

#

per year

#

is a good rate

dawn hinge
#

For taxes? ๐Ÿ‘€

hallow crane
#

yes

static zealot
#

10$ per life per year? how does that work? I pay 10$ for each life I want every year?

#

so if I want 9 lifes it'd be 90$/ year

#

?

hallow crane
#

If you are living, your rate is $10 per year

#

If you live for 18 years you pay $180

#

If you die and come back, that's another $10 /year on top of your existing rate

dawn hinge
#

A death tax should be introduced too, so if you die, you're paying 100 dollars or we brin' you alive!

hallow crane
#

yeah yeah

old wyvern
#

Wouldnt be unhackable ofc, but should be good enough

#

You could also try invite diff unrelated people to attempt

static zealot
#

and also there should be some up to date guides for what you can do to improve security

#

yoo where's Niall?

#

@heady birch

#

you alright?

#

oh he was online 2 days ago I missed him

half harness
#

pog i reached 4k lines in my bedwars plugin

pale shell
half harness
#

well .kt files

static zealot
#

4k lines? Wtf is a line

#

ohhhhhhhhh

#

lmao

half harness
#

um

#

i'll pretend I didn't see that

static zealot
#

for a sec I thought you were talking about hypixel

pale shell
#

?

half harness
#

oh

static zealot
#

didn't see the plugin part

pale shell
#

Is it bad I still use intellij 2020?

static zealot
half harness
#

?

static zealot
#

lmao

#

well I think he was joking

#

but someone send him this

#

compile it and send

#

lmao

half harness
pale shell
#

?

half harness
pale shell
#

?

half harness
#

ill answer ur question once u stop putting ?

pale shell
#

Sorry

#

:(

half harness
pale shell
#

It's a habit

half harness
#

update = good

steel heart
#

Wat

pale shell
#

It gets the job done, I'm not a pro coder or anything so

steel heart
#

Habit

#

Lel

pale shell
#

Just don't ask

steel heart
#

I ask now

half harness
steel heart
pale shell
#

I said kekw Infront of my parents.... :/

half harness
#

lol

steel heart
#

Lmao

pale shell
#

Yeah. How you think that went down

half harness
#

wait

#

like

#

verbally

#

saying

pale shell
#

I also said omegalul once

half harness
#

"kekw"?

pale shell
#

Yes

half harness
#

lmaoo

pale shell
#

Verbally

half harness
#

"kek-uw"

steel heart
#

I mean Iโ€™d be proud

pale shell
#

I have been known to shout OMEGALUL in public at meals

half harness
#

uhh

steel heart
#

What an accomplishment

pale shell
#

I feel sorry for people I eat with KEKW

steel heart
#

Lol

pale shell
#

I've got to the point where I don't care if people look at me

steel heart
#

I see

pale shell
#

I want your role

#

Now

steel heart
#

Which one

static zealot
#

man 29 days since last commit?

pale shell
#

COGGERS one

pale shell
steel heart
#

Develop plugin and show pig

static zealot
pale shell
#

Dude I have been updating pmines

static zealot
#

we need to revive it

pale shell
#

I should've pushed a update today but I cba to write the change log KEKW

half harness
#

Dude I have been updating bedwars

steel heart
#

Iโ€™ve been procrastinating

pale shell
#

Wot

steel heart
#

toW

pale shell
#

Idk if that's safe to Google

steel heart
#

Uh you donโ€™t know what it means?

pale shell
#

Dw about that

half harness
#

um

pale shell
#

I fat fingerd

half harness
#

what is that image

steel heart
#

Basically procrastinating

half harness
#

is that a snake? @pale shell

pale shell
#

Maybe

half harness
#

lol

pale shell
#

It was outside my house KEKW

#

My neighbors got scared when I screamed KEKW

half harness
#

lol

pale shell
#

Wot

half harness
#

was testing something

pale shell
#

You scream kekw at home??

half harness
#

-_-

steel heart
#

Lol

#

He does

pale shell
#

I only scream in public

#

I need to take my boat out for a ride

pale shell
#

Is that long enough?

steel heart
#

Idk itโ€™s quite long I guess

pale shell
#

It's my big playlist with all the songs I've liked over the years

#

Yes, if even has my 2014 cringe playlist lmao

steel heart
#

Public?

pale shell
#

Probably

#

Idk tbh

#

Yeah public

half harness
#

i have a command to setup a bedwars game, but it can either be edited or be setup, how should I make this while making it DRY?

#
val game = hasPermissionAndValidGame(sender, label, args, false)
val builder: GameBuilder?
if (game == null) {
    builder = plugin.gameManager.builders.getIgnoreCase(args[1])
    if (builder == null) {
        sender.showHelpMessage(label, INVALID_GAME)
        return true
    }
}
```this is what I have so far, but then I'd be nullchecking every time i want to change the data...
#

and also using !! a lot

#

if i have an entirely separate command, I'll prob be having a lot of repeating code, and having like 15 methods isn't very ideal...

pale shell
#

Why did that format in such a nice way

static zealot
#

kotlin

pale shell
#

It came up colorful

static zealot
#

u sure that's not js formatting dkim?

#

the colors

half harness
#

its kotlin

#

well

#

idk about the colors

#

but i made it kotlin

static zealot
#

bcz of \kt TEXT ```

#

wtf is this shit

half harness
#

yea i did ```kt
TEXT
```

static zealot
#

u can't escape in ``` ?

half harness
#

you can

#

i just did

#

what

#

oh

static zealot
#

not inside

half harness
#

lol

#

you can't

static zealot
#
here```
#

ah alright

#

good to know

#

?codeblocks

compact perchBOT
#
FAQ Answer:

Use codeblocks for formatting code or configuration files:
```<language name>
<your code here>
```

For example:
```yaml
test:

  • โ€œhiโ€
  • โ€œthereโ€
    ```

Produces:

test:
- โ€œhiโ€
- โ€œthereโ€```
half harness
#

theres nothing to escape though

static zealot
#

well yes there is

#

if I wanted to put ``` inside other 3 of those

#

I can't

half harness
#

yes you can

#

zero space

static zealot
#

\ ``````

half harness
# steel heart Expose the situation more

basically, my GameBuilder class: https://github.com/dkim19375/Bedwars/blob/master/plugin/src/main/kotlin/me/dkim19375/bedwars/plugin/builder/GameBuilder.kt has all nullable variables, because, obviously, the player can't setup the entire game with one command/same time.
Then it turns into https://github.com/dkim19375/Bedwars/blob/master/plugin/src/main/kotlin/me/dkim19375/bedwars/plugin/data/GameData.kt (nonnull variables), and https://github.com/dkim19375/Bedwars/blob/master/plugin/src/main/kotlin/me/dkim19375/bedwars/plugin/manager/BedwarsGame.kt for the game instances.
So I need the /bedwars setup <name> command to apply to both GameData and GameBuilder. (or alternative)

distant sun
#

Cant the map lists and sets be empty instead of null?

half harness
#

yea

steel heart
#

Whatโ€™s the issue now again?

#

DRY?

ocean quartz
#

The amount of nulls in here hurts me so much, please someone end this pain

half harness
#

lol

half harness
ocean quartz
#

Why the fuck is build nullable?

half harness
ocean quartz
#

fun build(): GameData?

half harness
#

in case any of the data is null

steel heart
#

Probably in case of failure

half harness
#

^

#

just want to be safe

ocean quartz
#

I mean if it fails throw

steel heart
#

^

half harness
#

throw exception?

lost forge
#

Someone must love npes with that many nulls

steel heart
#

Arguably use Optional

half harness
#

๐Ÿ™‚

ocean quartz
half harness
#

lol

#

what else should i do

ocean quartz
#

Late init?

steel heart
#

Dkim the dry thing?

half harness
#

without try/catch?

ocean quartz
#

Huh?

#

What

#

What would try catch have anything to do with that?

half harness
#

..

#

what if i want to get the lobby location

ocean quartz
#

That doesn't explain the issue at all, keep going lol

half harness
#

what do I do if I want to get the lobby location?

ocean quartz
#

You just get it?

half harness
#

but what if it's not initialized

ocean quartz
#

THROW

half harness
#

NO

#

i want to print to player

#

"lobby location is blah"

ocean quartz
#

Then why have a builder?

half harness
#

not throw

oak raft
dawn hinge
#

In the build method, you could just check if canBuild returns true or false, if it returns false simply return null or throw an exception like Matt said

half harness
steel heart
#

Dkim it really doesnโ€™t make sense to return null, throw or return optional is probably what I would do

ocean quartz
#

Omg are you actually creating a conversation like feature? Where they'll have to type all the data?

half harness
#

:/

steel heart
#

Anyways what was the dry thing?

ocean quartz
#

they can't send all the bw data in one command/moment

half harness
#

like this:

#

there are commands

#

in that plugin it's /bw admin <arena> spec

#

in my plugin its /bw setup <arena> spec

#

same with lobby

#

and spawner

#

etc

oak raft
#

who cares about that plugin

#

be original

half harness
#

...

oak raft
#

nah im trolling

half harness
#

?

#

..

ocean quartz
#

And why would you do that with a builder?

steel heart
#

You want to have a mutable way of constructing an arena which serves as a template for creating a game instance?

half harness
ocean quartz
#

You might wanna rethink this entire thing, there are so many things in there that make no sense to be nullable

steel heart
#

Using the builder pattern was the wrong choice then

half harness
#

the only diff between GameData and GameBuilder is that GameBuilder has nullable variables

half harness
steel heart
#

Just create a class which has its state mutable

half harness
#

wdym

steel heart
#

Then just setters with unit/void etc

half harness
#

GameBuilder isn't exactly a builder

ocean quartz
half harness
#

it's just GameData but nullable

#

thats literally the only difference

#

i just didn't know what to name it

#

so i just named it GameBuilder

steel heart
#

Like (java)

class BlueprintDraft {
Data data:

void setData(Data data) {
return data;
}

Blueprint toBluePrint() {
return new BluePrint(data);
}
}

half harness
#

that's what I have

steel heart
#

Yeah

half harness
#

so what do you want me to change?

half harness
#

and it doesn't have a canBeBlueprint

steel heart
#

Instead of returning null throw upon creation but have a method that checks whether itโ€™s buildable or not?

half harness
#

okay, ig ill do that since u guys keep telling me to, but still, that doesn't get rid of any of the nullability

steel heart
#

It does?

#

Or actually Idk isnโ€™t there like only checked exceptions in kotlin

half harness
#

the variables are still var lobby: Location? = null

#

and i already explained why I can't use lateinit

steel heart
#

Yes but when you create, if itโ€™s still null throw?

half harness
#

what error should i throw, RuntimeException?

ocean quartz
#

Dkim, assess what properties are required which are not
See which are needed upon creation see which will need to be changed later, once you organize it let me know

half harness
#

just wondering if theres a more fit exception

steel heart
#

IllegalStateException

half harness
#

ok

ocean quartz
#

Nvm

steel heart
#

May I ask about the dry then is it fixed?

half harness
#

im thinking about doing something like this:

#
val game: BedwarsGame? = hasPermissionAndValidGame(sender, label, args, false)
val builder: GameBuilder? = plugin.gameManager.builders.getIgnoreCase(args[1])
val editor = DataEditor(game, builder)

when (args[2].toLowerCase()) {
    "spec" -> {
        editor.prop.spec = Location(blah)
    }
    "spawner" -> blah
}
editor.save()
#

opinions?

#

wait

#

maybe like this

steel heart
#

Uh well hasPermissionAndValidGame

half harness
#

lol

#

u can ignore that

#

that just checks perm and gets game from args

#

i do that a lot in my command class so i just made that to reduce duplicate

steel heart
#

Okay, I mean I would go with abstraction instead but I guess fine

half harness
#

hm

#

also prop is just a variable for GameBuilder

#

for properties

steel heart
#

Yeah

half harness
#

maybe i should rename it to data instead

steel heart
#

Looks fine to me at least

#

If itโ€™s more sense making then do it

ocean quartz
#

Even the builder is nullable

half harness
#

..and I've explained why

ocean quartz
#

You might as well code in Java lmao

steel heart
#

Java + Lombok

half harness
#

lol

ocean quartz
#

Let's not go so far

static zealot
half harness
#

anyways, thanks

#

:)

steel heart
#

Yeah (:

gusty glen
#

idk, but I feel I would do things differently

ocean quartz
#

Same

half harness
#

what should i do

steel heart
#

I would start with using Haskell

half harness
#

lol

gusty glen
ocean quartz
#

I tried to help him but

wot
Was the reply

half harness
#

I'm confused what you meant by

assess what properties are required which are not
and also
See which are needed upon creation see which will need to be changed later

#

'wot' basically meant 'what do you mean'

ocean quartz
#

"Assess" means "evaluate"
Check which values you'll need on the first command
Which you'll need later
Idk how else I can write the same sentences to make more sense lol

static zealot
#

smh Matt. You a bad teacher

ocean quartz
#

I am

half harness
#

"on the first command"

#

also i have a command to make the game/builder

ocean quartz
#

You literally said that it can't all be done in the same command lol

half harness
#

theres no step by step

#

or anything

gusty glen
#

dkim, why not just rip off the command and make the creation all on the config file?

half harness
#

ahh no thanks

#

too much area of error

ocean quartz
#

Dkim, they'll need to do many commands right?

half harness
#

yes

ocean quartz
#

Then there is a first one!!

#

But there is a first

#

Oh you deleted it coward

half harness
static zealot
#

lmao

ocean quartz
#

Someone shoot me

half harness
#

there

#

happy

half harness
gusty glen
#

I'm not a fan of having complicated things set by commands

ocean quartz
gusty glen
#

it messes the code too much

ocean quartz
gusty glen
#

commands should be used for simple things only imo

half harness
#

๐Ÿ˜•

ocean quartz
#

None at all?
Are you sure about that?

half harness
#

uh

#

i think so

#

since its just collecting information

ocean quartz
#

in my plugin its /bw setup <arena> spec
What is <arena>?

half harness
#

and then /bw save <arena> builds it

half harness
#

i just do map[arena]

steel heart
#

Arena name ?

ocean quartz
#

Oh lord

half harness
#

do you want me to make a Set<GameBuilder> instead

#

i didn't know which one is better

steel heart
#

Map is fine

half harness
#

then why did matt say "Oh lord"...

ocean quartz
#

If you have an arena name, then why is the name nullable?

half harness
#

hm.

#

good point

#

i should just remove displayName