#dev-general

1 messages ยท Page 230 of 1

hot hull
#

Pinned messages

obtuse gale
#

o

surreal quarry
#

what do we do

#

for advent of code

obtuse gale
#

code

hot hull
#

Challenges

obtuse gale
#

no

#

just code

hot hull
#

Puzzles

obtuse gale
#

all of it

surreal quarry
#

sounds challenging

obtuse gale
#

code everything

surreal quarry
#

and puzzling

hot hull
#

You're a comedian James

surreal quarry
#

thank you

#

i try my best

hot hull
old wyvern
hot hull
#

Wait I got more

#

Nvm I don't, Cody is a nerd

#

Wat u on about

ocean quartz
obtuse gale
#

bruh day 5 part 1 ez

hot hull
#

Fefo heck out

#

Noice Matt

obtuse gale
#

dude it's easy xD

#

day 4 was by far the hardest one for now

#

well at least how I did it lmao

hot hull
#

Day 4 felt easy to me lol, this one was hardest lol

obtuse gale
#

well it wasn't quite difficult, but very repetitive ugh

prisma wave
#

day 4 felt easy

#

๐Ÿ˜

#

๐Ÿ˜ญ

obtuse gale
#

day 4 part one first try tho

hot hull
obtuse gale
#

some of the seats at the very front and back of the plane don't exist on this aircraft

#

tsk

#

classic

obtuse gale
#

mate tf is part 2?

#

Your seat wasn't at the very front or back, though; the seats with IDs +1 and -1 from yours will be in your list.
huh

#

you type the >

#

then hit space

#

then enter the message

#

> like this

hot hull
#

Fefo, I can't for the love of me figure out part two, like either I'm just stupid and fucked checking offset indexes, or my input legit doesn't have a missing seat

obtuse gale
#

the seats with IDs +1 and -1 from yours will be in your list
what does this even mean

#

I'm perplexed

lunar cypress
hot hull
#

I guess I'm just hella dumb then

#

I know the solution is higher than 520

lunar cypress
#

yeah

#

whats ur code

obtuse gale
#

I genuinely cannot comprehend what part 2 means

lunar cypress
#

you're supposed to give the seat id that is missing from the list

#

it's between two other seat ids

hot hull
#

Looping through the ids, checking if the list of ids contains - 2 of that id, and doesn't contain the id - 1, and doing the same for +

#

If that makes sense

obtuse gale
#

the only problem here is an airplane with no seats

hot hull
#

My seat id would be -/+1

lunar cypress
#

show the actual thing

hot hull
#

Not on pc, but it's this

for (final int id : ids) {
  if (ids.contains(id - 2) && !ids.contains(id -1) {
    sout(id - 1);
    break;
  }
  if (ids.contains(id + 2) && !ids.contains(id + 1)) {
    sout(id + 1);
    break;
  }
}
obtuse gale
#

my brain shorted

#

you print every step?

#

weak

hot hull
#

I just print the correct step

#

4head

obtuse gale
#

yes I 4head

#

I still don't understand what's going on

hot hull
#

You need to find the seat id of the missing one in your list

#

The id + 1 of yours, and - 1 of yours, exists in the list which is how you find your

ocean quartz
#

Added parser extensions to my lib and it allows you to create custom parsing nodes like this one, super cool

hot hull
#

Oh damn that's sexy

#

Make it be able to fire events when those actions occur

static zealot
#

That's not the right answer; your answer is too high. Curiously, it's the right answer for someone else; you might be logged in to the wrong account or just unlucky.
:sad-blitz-noises:

obtuse gale
#

lol

hot hull
#

Lol

static zealot
#

it doesn't change imput from part 1 to part 2 right?

hot hull
#

Johnny ded?

static zealot
#

input*

hot hull
#

No

static zealot
#

k then I messed up

#

fuck

#

this is going to take a while to debug

#

jesus fucking christ

#

I think I'll just quit now

#

xD

#

hell nah. 100 lines to go thru all those checks

obtuse gale
#

fucking

#

vague

#

I think I get it?

ocean quartz
#

Hund not Hung
And why not? xD

#

Yeah i know lol

static zealot
#

xD

ocean quartz
#

That's the entire reason of the name

static zealot
#

nah

#

Matt just picked random letters

#

and it happened to mean something

#

in german

#

what are the odds am I right?

hot hull
#

Matt so you gonna add event triggers?

ocean quartz
#

Kinda hard Frosty

hot hull
#

Hmm

ocean quartz
#

How would it trigger events?

static zealot
#

jsut

#

event.trigger

#

lmao

ocean quartz
#

The big problem is that the main lib is completely platform independent, it has no concept of bukkit

hot hull
#

Talking about it calling an event when a user is tagged, just add a MentionEvent or some shit

#

Ah

ocean quartz
#

Oh

#

That will be a thing yeah

#

But on my Chat plugin

hot hull
#

It better have an api

static zealot
#

Frosty

#

why not help him?

#

if you want so many things

hot hull
#

Blitz

ocean quartz
#

The ping stuff is not on the lib, the lib only has a new feature that allows you to create any parsing you want

hot hull
#

Imma smack your 4head

static zealot
#

k

#

This rly hurts my brain.

#

it seems to work

#

but of course it doesn't

#

111 ain't right

#

oh nvm

#

byr : 2011

#

just spoted this by accident

#

but why kt if (value!= null && value in 1920..2002) valid = true

#

also this eyr : 1933

#

what in the world

#

ok I think I give up

#

hgt : 155in

#

but I have a check

#

that if it ends in in then it checks if value in 59.76

#

omfg

#

FUCK ME

#

Found the problem

#

and turns out it was just 109 instead of 111

#

lmao

#

Ugh I'll have to stop you right there

obtuse gale
static zealot
#

read rules before you do something wrong :)))

#

maybe he's talking about a discord server Fefo ...

#

and he was lmao

obtuse gale
#

and?

static zealot
#

@fallen sparrow no discord invites I'm afraid. Only in DM

obtuse gale
#

I mean the "guidelines" for #783231032282972162 don't say nothing about any specific kind of server

static zealot
#

you are right.

#

Time to ask funnycube to change the rules

obtuse gale
#

Your seat wasn't at the very front or back, though; the seats with IDs +1 and -1 from yours will be in your list
there are literally hundreds of possible options, this doesn't make any sense

static zealot
#

what's that?

#

oh day 5?

obtuse gale
#

yeah

#

p2

static zealot
#

ye

#

I just finished day 4

#

still have to finsih day 3 part 2 as well ๐Ÿ˜ฆ

obtuse gale
#

bruh

#

lol

static zealot
#

ye I just can't get the last one (2 down 1 left) to work

#

I guess

obtuse gale
#

but seriously, d5p2 doesn't make any sense

#

I don't understand ๐Ÿ˜ญ

static zealot
#

I mean I don't expect to understand it if you don't

#

but If I get there before you understand it I'll try and explain

obtuse gale
#

I just don't understand the problem

static zealot
#

if I'll understand it lmao

obtuse gale
#

It's not that I can't come up with a solution

#

I can't even get the problem right xD

obtuse gale
#

I genuinely don't understand the problem

old wyvern
#

It just means find the missing ID in the middle

obtuse gale
#

????

#

I don't get it

#

I'm stupid, I give up this one

static zealot
#

Yo that airline is stupid

#

omfg

#

why don't you just number your seats?

#

fuck you

#

xD

#

just put me to solve problems that have been solved by others long time ago

obtuse gale
#

oh my fucking god

static zealot
#

wait is this the question?

As a sanity check, look through your list of boarding passes. What is the highest seat ID on a boarding pass?

obtuse gale
#

it's literally binary

static zealot
#

binary space partitioning

#

they don't say that ๐Ÿ˜ฆ

obtuse gale
#

nono

#

I mean

#

IT LITERALLY is binary

static zealot
#

oh ok

#

guess I'll only solve part 1

#

for day 5 as well

obtuse gale
#

the actual BFB w/e are just a replacement for 1's and 0's

static zealot
#

but for part 1

#

is it literally just getting the highest row, multiplying by 8 and then add 8?

#

oh nvm

#

I need to go thru all first

#

lmao

#

thought so

obtuse gale
#

OMFG

#

part one is as easy as a single instruction for loop

static zealot
#

Ye I assume so

#

one line?

obtuse gale
#
final List<String> lines = Files.readAllLines(Path.of("..", "input.txt"), StandardCharsets.UTF_8);
final Set<Integer> ids = new HashSet<>(lines.size());

for (final String line : lines) {
  // one line magic :))
}

System.out.println("highest id = " + ids.stream().max(Integer::compare).orElse(-1));
static zealot
#

lmao xD

#

wait its just one one line

#

like I thought its a loop thru all lines

#

then loop thru each char

#

unless you made it a loop and then a line

#

of code

obtuse gale
#

it's literally just a single instruction xDD

static zealot
#

oh fuck

#

man

#

my brain is not that smart

#

IDK math

obtuse gale
#

xDD

obtuse gale
#

YES

#

YESSSSS

static zealot
#

YESSSSSSSS?

#

:))

#

you got it ๐Ÿ˜ฆ

obtuse gale
#

d5p2 done fingerguns

static zealot
#

man my brain hurts already

obtuse gale
static zealot
#

no fefo I give up ๐Ÿ˜ฆ

obtuse gale
#

so did I

obtuse gale
static zealot
#

why did you made me think I can do it in one line?

obtuse gale
#

he

static zealot
#

now my brain has melted trying to do it

obtuse gale
#

hhehehe

#

hehehehheehheehehehehehehhehhh

static zealot
#

I mean I'm trying in multiple lines but still

#

same shit

#

I'll be back in like half an hour. Maybe my brain will be better

obtuse gale
#

ez one liner

static zealot
#

omg @obtuse gale I โค๏ธ u! No Homo

obtuse gale
#

why lol

static zealot
#

nah won't tell you

#

you left me here to burn

#

so I'll let you burn as well

obtuse gale
#

you figured out the stream bit is the easiest way to get the max for part 1? xD

static zealot
#

what?

#

noi

#

no*

#

I mean I'm doing a max that starts at 0 and changes every time it finds a new value

#

no need to make it go thru the loop again

hallow willow
#

does 1.8 scoreboard has 16 maximum letters length?

static zealot
#

yes

hallow willow
#

But how does hypixel do it

static zealot
#

ask them lmao xD

#

didn't work for them

#

no idea

hallow willow
#

Damn. I wish I had a big brain xD

static zealot
#

nah

#

seems like you can do it longer

#

FeatherBoard did it

#

you can do it 26-28 and 68-70

#

depending on what anti flicker you use

hallow willow
#

18euro 0.0

static zealot
#

ok p2 is rly weird indeed

obtuse gale
#

mhm ye

hallow willow
#

Welp. No choice

forest pecan
static zealot
#

please don't ๐Ÿ˜ฆ

obtuse gale
#

actually

prisma wave
static zealot
#

not you too ๐Ÿ˜ฆ

forest pecan
#

f u

#

bot

static zealot
#

there's a catch: some of the seats at the very front and back of the plane don't exist on this aircraft, so they'll be missing from your list as well.

#

what's the catch? xD

#

I don't get it

forest pecan
#

it isnt really a catch

#

its context

#

lmfao

#

wait if Elara's solution is in a mixture of languages

#

language rainbow?

#

that makes no sense

#

lmfao

prisma wave
#

Ima try Haskell or C for the next one

lunar cypress
#

2 very similar languages

static zealot
#

ok Part2 was actually very easy

#

still have d3p2 to solve

forest pecan
#

i used a switch statements for that one

static zealot
#

for d3p2?

#

I just don't know

#

I keep assuming that its the part that goes 2 down 1 right

#

but I think it should work now

forest pecan
#

oh

static zealot
forest pecan
#

thats different

#

nvm

static zealot
#

this are the positions it goes to

#

but apparently either those are not right

#

or I messed up the other ones as well

forest pecan
#

I made a boolean 2d array

#

and then just used a bit of modulo magic

#
        int trees = 0;
        for (int r = 0, c = 0; r < grid.length; r += y, c += x) {
            trees += grid[r][c % grid[r].length] ? 1 : 0;
        }
#

r is self explanatory, it moves down the array

static zealot
#

wait I just realised. It skips a space for some reason

forest pecan
#

c is a bit harder. You need to get the modulo of the the added value with the length of the horizontal array

#

oh

#

lol

static zealot
#

it goes 1-31 not 0-31

#

now to find out why is doing that

forest pecan
static zealot
#

wait or was it actually 31 and not 32

ocean quartz
#

Does anyone know where the local file history went on IntelliJ 2020.3? It used to be on VCS, which now is Git, but it's not there

static zealot
#

it is just 31 ๐Ÿ˜ฆ

#

then I give up for today

ocean quartz
#

Oh was moved to File -> Local History

#

Makes sense

static zealot
#

I was going to ask if that Chat plugin uses Json. If only I can see ๐Ÿ˜ฆ

#

its in the video lmao I am just so blind sometimes

ocean quartz
#

Yeah xD

hot hull
#

@ocean quartz Need any contributions done to it? reversed_fingerguns

static zealot
#

don't

#

this is a great project

#

no need for you to mess it up Frosty

hot hull
#

Oh wow

static zealot
#

I was joking

#

please forgive me sir

hot hull
#

I'll remember this Blitz

static zealot
#

I will never say a bad thing about you

#

wait how will you remember?

#

you already forgot what I said yesterday...

#

and you said you'll remember that too

hot hull
#

=remindme

compact perchBOT
#
Reminders | Usage

Usage: =remindme <time> "<message>"
eg. =remindme in 5 hours "to feed the Llama"

hot hull
#

=remindme in 1 year "Blitz says I suck"

compact perchBOT
#
New Reminder Set!
In 364 days, 23 hours, 59 minutes:

Blitz says I suck

hot hull
#

Uh what did you say yesterday

static zealot
hot hull
#

Sometimes I've got the memory of a goldfish

static zealot
#

you should've set a reminder ..

#

ye same

hot hull
#

And sometimes I can legit remember detailed shit

static zealot
#

I don't remember either

#

so its probably not important what I said

#

but yeah

hot hull
#

Ok good

static zealot
#

it was probably not yesterday as well

#

but yeah

#

my memory is very very very very !good

#

btw

#

did you know I'm like 35k xp away from taking your spot?

#

@obtuse gale should I give it another try? ๐Ÿ˜ฆ

hot hull
#

It's rigged Blitz

static zealot
#

I think I'll just scratch everything

#

and just start from 0

hot hull
#

I've gained jack shit xp the past few months

static zealot
#

ugh yeah probably

#

Frosty

#

you saved your code for day 3 part 2?

hot hull
#

I have a repo with all the code

static zealot
#

oh well you too ...

#

I just wanted you to test it on my input

#

and see how many trees are for the 2 steps down 1 setp right

#

step*

#

Pulse already offered his repo

#

same as Em

hot hull
#

Uh sure, lemme get on pc

static zealot
#

but I ain't trying to cheat just want someone to help me debug

hot hull
#

Send the input

static zealot
#

yep 1 sec

#

oh day 6

#

started

#

just want to know the trees for the last type of input not the others

hot hull
#

What number have you gotten so far

static zealot
#

1 sec

#

I didn't save them actually lmao.

#

I should've

#

let me see what I get now

#

I get 34 rn

#

but I think I also got 45 or 44 before

hot hull
#

One of the other two is correct

static zealot
#

welp then I messed up the other method I guess

#

because I tried with 44 and 45 as well

#

fuck

#

wait a fucking second

#

what

#

the fuck

#

I was multiplying the stuff directly in iij and I got an answer

#

I multiplied it with my calculator and I got a completely different one

hot hull
#

kek

static zealot
#

and I'm very confused to why is that

#

welp I have to wait 5 minutes to test this

#

the result is 9.7B something right? xD

hot hull
#

bruh I'm so lost with part 2 of day 5

static zealot
#

its pretty easy actually

#

I mean fefo kinda gave me a hint

#

do you want it? Its not actually that big of a deal unless its that big of a deal

#

lmao

#

for me it still took 1hour to understand the problem

#

but I'm ... well ... me

hot hull
#

Here are my inputs, I know it's above 520, but I legit can't figure out why this fails https://paste.helpch.at/semerokiji.nginx

        int seatID = 0;
        for (final int id : ids) {
            if (ids.contains(id - 2) && !ids.contains(id - 1)) {
                seatID = id - 1;
                System.out.println("Your Seat ID is '" + seatID + "'.");
            }
            if (ids.contains(id + 2) && !ids.contains(id + 1)) {
                seatID = id + 1;
                System.out.println("Your Seat ID is '" + seatID + "'.");
            }
        }
tawdry ore
#

how do i /give multiple enchants

#

give fortheboysusa diamondhelmet 1 name:&8[&4&lEnvoy&8]_&c&lHelmet protection_environmental:6|unbreaking:5 isn't working

static zealot
tawdry ore
#

do u know tho

hot hull
#

From what I understand my seat would be the missing one between the + 1 and - 1 id

#

But there's no missing one?

static zealot
#

Frosty the F, B, L and R are actually binary.

hot hull
#

I know that

#

We're past that already

#

Part 2

static zealot
#

well

#

just have a mutableList of all the ids

#

and sort them

#

and just loop thru them

#

and check the one before

#

with the current one

#

if current != last+1

#

almost wrote the next sentence in romanian for some weird reason..

#

then there's a missing id

#

I just used list#sortedDecreasing() or something

#

then just looped thru it

#

but

#

you're in java

#

so no idea what methods you can use and what you can't xD

old wyvern
#

Frosty

#

@hot hull Show me the code snippet you use to convert the seats to IDs

static zealot
#

omfg

#

it was IIJ's fault all this time

#

I just had to do the calculation myself

old wyvern
#

wdym?

static zealot
#

well

#

The result was 9709761600

#

but for some reason

#

IIJ was giving me this 1119827008

hot hull
static zealot
#

like I have 90*278*88*98*45 but IIJ is giving me the wrong answer

hot hull
#

There's probably a better way, but idc it works

#

Then before adding them to the list I properly multiply

static zealot
#

yes

old wyvern
#

overlow

#

overflow

#

lol

hot hull
#

long

static zealot
#

omg wait

old wyvern
#

lmao

static zealot
#

wasn't it suppose to give me an error?

old wyvern
#

Nope

static zealot
#

when it overflows ?

#

omfg

#

I'm so dumb

old wyvern
#

Bit overflow doesnt result in an error

static zealot
#

my brain has been melting for the past 2 days ๐Ÿ˜ฆ

old wyvern
#

lol

hot hull
#
        final List<Integer> ids = new ArrayList<>();
        for (final InformationHolder holder : holders) {
            final int id = holder.row * 8 + holder.column;

            if (id <= 520) continue;
            ids.add(id);
        }
static zealot
#

time to go to day 6 I guess

old wyvern
#

@hot hull you are ignoring the 6th bit

hot hull
#

(I already know the id is higher than 520)

#

uh what

old wyvern
#

The higher range is not inclusive in either subList or substring

#

The 6th index character would be left out the way you did it

#

increase first subList end index to 7

hot hull
#

uh what, so in part 1 the highest id was 901, now the highest id is 1797 after I've changed

old wyvern
#

lol

#

Is the data continuous now?

hot hull
#

No

old wyvern
#

Can I see your ID outputs?

hot hull
#

sec lemme format them

old wyvern
#

No need

#

just raw data is fine

hot hull
old wyvern
#

You are defenitely doing something wrong

#

Where do you get info as a list there?

#

You max seat ID should be 901

hot hull
#

Meaning the 6 being 7 now is wrong

old wyvern
#

no

#

That is correct

hot hull
#

I'm so lost rn

old wyvern
#

second argument is exclusive, first is inclusive

hot hull
#

Wrong channel. @obtuse gale

obtuse gale
#

Okay

#

sorry

hot hull
#

Why do I get 1797 as highest ID now tho

old wyvern
#

Possibly some error from earlier moving forward

#

Also

#

why the mutiplication by 2?

hot hull
#

Oh so that fixes that then

#

The data is continuos now

old wyvern
#

There we go

hot hull
#

but there's no missing number in between?

old wyvern
#

Yes there is

#

My solution seems to give me an answer

hot hull
#

Shouldn't this give me the solution then lol?

        for (int i = 520; i < ids.size() - 1; i++) {
            if (!ids.contains(i)) {
                System.out.println(i);
            }
        }
static zealot
#
Exception in thread "main" java.util.ConcurrentModificationException
    at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909)
    at java.util.ArrayList$Itr.next(ArrayList.java:859)
    at me.blitzgamer_88.testing.MainKt.main(Main.kt:34)
    at me.blitzgamer_88.testing.MainKt.main(Main.kt)
``` What's this about?
#

please don't kill me for those names lmao

static zealot
#

ye

#

was just there rn lmao

#

I see now

#

I'm looping thru a mutableList and removing elements at the same time.

remote goblet
#

yeah dont do that

hot hull
#

@old wyvern Can I see your solution? Because I'm so fucking lost rn

static zealot
#

welp I got all 6 days

#

both parts for each

#

also its weird

#

I was looping thru the lines

#

and it just didn't read the last lines

#

like for the last group bascially

hot hull
#

sPoIlErS

static zealot
#

good thing I've noticed and I just manually added them lmao

#

well I mean ...

#

I didn't spoil the answer or anything

#

and if group tells you what the problem is

#

then you're smarter than I thought xD

hot hull
#

That already gives me the solution

static zealot
#

no it doesn't

hot hull
#

Blitz, show me your solution for day 5 part 2 pl0x

static zealot
#

day 5?

#

I deleted it ...

hot hull
#

why in the

static zealot
#

and it was in kotlin

hot hull
#

Doesn't matter if it's kotlin

old wyvern
hot hull
#

I pro at kotlin

static zealot
#

I mean I literally had the list of ids

#

and I sorted it using sortedDecreasing or something

#

then just looped thru them and checked if the id at the current index is id at current index - 1

#

if not then I've found the id after mine

hot hull
#

I'm still not getting any result Yugi,

        for (final int i : ids) {
            if (!ids.contains(i) && ids.contains(i - 1) && ids.contains(i + 1)) {
                System.out.println(i);
            }
        }
static zealot
#

oh nvm

#
    val sortedIds = ids.sortedDescending()

    for (i in 1 until ids.size) {
        if (sortedIds[i]+1 != sortedIds[i-1]) println("${sortedIds[i]} x ${sortedIds[i-1]}")
    }```
#

didn't delete it

old wyvern
#

huh

static zealot
#

and I just took the one between them

old wyvern
#

show me your new data output

static zealot
#

ok guess I'll have to go thru last years questions when I'm to bored

hot hull
old wyvern
#

You do have a missiong number

static zealot
#

xD

hot hull
#

Yea but why does my loop not print it

static zealot
#

idk if that check is the best I guess/

hot hull
#

does List#contains not work at all or what

static zealot
#

just use mine maybe

old wyvern
#

ids is a list of these values right?

hot hull
#

yes

static zealot
#

ye you do have a missing value

#

and my check works

#

for yours as well

#

if you were questioning yugi at all you know... bcz I want to feel smart

#

smh

old wyvern
#

wait

#

you are looping through ids

#

lol

static zealot
#

yes he is

old wyvern
#

!ids.contains(i)
how would this ever be true

#

xD

#

loop from min to max

hot hull
#

ffs

#

661 being the missing number right

old wyvern
#

Yes

static zealot
#

minOrNull()!! loving it

hot hull
#

Goddamn it

static zealot
#

yes

#

dw frosty. I wasted way more time by just not realising my Int was overflowing ... ๐Ÿ˜ฆ

hot hull
#

I spent around 6 hours on day 5..

static zealot
#

ye I spent 2 days

#

on day 3 part 2 ...

#

part 1 I completed in like 10 mins at most

old wyvern
#

oh day 6 is out right?

static zealot
#

yep

#

already completed it

#

pretty easy

hot hull
#

It comes out 6 am my time

static zealot
#

7 am my time I think

#

I mean I haven't slept all night

#

10:28 am

#

wait the leaderboard counts other years as well right?

#

or what's that 62 ? and why am I number 5

old wyvern
#

its out ?

static zealot
#

62 tries?

#

day 6 is out yes

old wyvern
static zealot
#

been out for like 4 hours

old wyvern
#

oh

hot hull
#

Yea I was just saying when it comes out :p

static zealot
#

3 and a half hours exactly rn

old wyvern
#

oh

static zealot
#

so its literally at 7 am for me. when the daily resets

#

where is 03:30 am rn?

#

US?

#

yep

#

it resets at 00:00 New York time

#

the daily I mean

old wyvern
#

day 6 is easy lol

static zealot
#

yep it is

#

I completed it in like 5 minutes

#

because I had to google what that error was

#

xD

hot hull
#

@old wyvern What u slacking

old wyvern
#

I aint tho

hot hull
#

Oh

prisma wave
lunar cypress
#

lol

prisma wave
#

AbstractPriceReductionStickerFactoryBean

obtuse gale
#

what is that tho

prisma wave
#

What's what

obtuse gale
prisma wave
#

Chicken Kievs

obtuse gale
#

for 88 cents or whatever the fuck ur money is called ?!?!?

prisma wave
#

pence

#

And yes

#

Morrisons is very good

#

Lots of cheap stuff

obtuse gale
#

how many did you get?

#

like how many for88 'pence'

old wyvern
#

//Superset of yaml, can be used for object definitions

prisma wave
old wyvern
#

so objects are eqivalent to their yaml definitions?

obtuse gale
#

thats like 5 bucks over here

#

i thnk

old wyvern
#

as in the type Person also represents a yaml structure by default?

prisma wave
#

Possibly

#

I've not thought it through that much

#

But they'd be like js JSON

obtuse gale
#

#showcase so its just like kotlin... but a bit more shit?

#

or am i missing the point lol

prisma wave
#

It's like Skript but good

#

Simple syntax, interpreted, no need for any complex Gradle setup

old wyvern
#

Its somewhat kotlin with in language suppourt for some spigot stuff

#

Could be llit

prisma wave
#

Potentially

#

It's more like JS and Python

#

But yeah specific to spigot

#

Command literals, potentially GUI literals

lunar cypress
#

this seems like a lot of work

#

and like a second syndrome thing ๐Ÿ˜ฌ

prisma wave
#

Second syndrome?

old wyvern
#

I think hes talking about this being after elara

prisma wave
#

Oh yeah

#

I had this idea ages ago

#

I only just remembered it

lunar cypress
#

no, what I mean by that is like this notion of "we're going to remake this thing/idea, but we're gonna get rid of all the mistakes"

#

and then it never gets anywhere

prisma wave
#

Oh I suppose

#

As I said, it was just an idea, it might not come to any fruition. But I like the idea of being able to make little scripts with an actual language

#

And since nashorn is being removed, there's a "gap in the market"

lunar cypress
#

I didn't mean to say that in order to get you to ditch the idea or sth, just to be clear

prisma wave
#

yea I know

lunar cypress
#

starting out with the aesthetics for something so complex simply never has worked out for me

prisma wave
#

It doesn't seem too complex

#

But yeah

old wyvern
#

@prisma wave send you wall please

prisma wave
#

what wall

#

wtf who deleted my showcase

#

It wasn't even a joke

#

Firstly, it's a compiler hack. The Java compiler isn't intended to be used like that and so it can cause compiliation errors, or worse:
I was working with a project using Lombok recently and method references for a lombok generated method were causing some pretty difficult to debug runtime errors.

Secondly, it requires an IDE plugin. You have to properly configure your build tools and IDE to avoid hundreds of errors, and installing an IDE plugin + setting up annotation processing takes time, especially if you're inexperienced.

Generated code also doesn't show up in Javadocs, so unless users have source code available it's going to look like nothing is accessible

If Lombok's code generation does something unintended, it can be difficult to debug, and usually requires you to remove the annotations and do a certain impl manually anyway. However, once you get used to this it's very discouraging to do, so it's easy to rewrite an entire class just to make it work with Lombok

There's also an extra degree of complexity with Lombok. Java is supposed to be explicit, and transparent. If you don't notice an annotation at the top of a class, it's easy to wonder where a method is coming from, or why a field is never initialized.

It also can be harder to work with. Again recently, IntelliJ couldn't find usages of a constructor, because as far as it was concerned, there was no constructor - Lombok generated it - meaning I had to find every usage of the class and search for a constructor which wasted a lot of time.

A final, slightly petty point: Lombok'ed bytecode doesn't match the source code (obviously), but it means a pretty annoying IJ warning (look at BungeeCord source for example)

Lombok may seem good in the short term, but it comes with a heavy price. Favour IDE generated boilerplate, or consider using a language like Groovy or Kotlin if you really dislike boilerplate.

steel heart
#

nah lombok is mad

hot hull
#

This man

steel heart
#

You man

prisma wave
#

Joe mama

steel heart
#

Actually I'd use it for the NotNull and Nullable stuff

#

It can autogenerate assertations iirc

prisma wave
#

So can intellij

steel heart
#

No?

#

I mean you can for instance put

void x(@NotNull X x) {

}
//Will become
void x(@NotNull X x) {
  Objects.requireNonNull(x, "x is null");
}
#

iirc

#

can intellij do this?

prisma wave
#

I believe so

steel heart
#

bruh

prisma wave
#

It does codegen for Jetbrains @NotNull

steel heart
#

you sure?

#

so I can just put the jetbrains one and then when building it will be like that?

lunar cypress
#

yes, but it's bad either way

#

lombok hacks the compiler and intellij couples you to its build system

steel heart
#

I can think of certain instances where a compiler hack wouldn't be preferred. But I think it doesn't matter that much for just @NotNull in parameters

prisma wave
#

they both suck

steel heart
#

nah

prisma wave
#

Yes

steel heart
#

Why would just the @NotNull paremeter thing suck

#

Persuade me

prisma wave
#

Firstly, it's a compiler hack. The Java compiler isn't intended to be used like that and so it can cause compiliation errors, or worse:
I was working with a project using Lombok recently and method references for a lombok generated method were causing some pretty difficult to debug runtime errors.

Secondly, it requires an IDE plugin. You have to properly configure your build tools and IDE to avoid hundreds of errors, and installing an IDE plugin + setting up annotation processing takes time, especially if you're inexperienced.

Generated code also doesn't show up in Javadocs, so unless users have source code available it's going to look like nothing is accessible

If Lombok's code generation does something unintended, it can be difficult to debug, and usually requires you to remove the annotations and do a certain impl manually anyway. However, once you get used to this it's very discouraging to do, so it's easy to rewrite an entire class just to make it work with Lombok

There's also an extra degree of complexity with Lombok. Java is supposed to be explicit, and transparent. If you don't notice an annotation at the top of a class, it's easy to wonder where a method is coming from, or why a field is never initialized.

It also can be harder to work with. Again recently, IntelliJ couldn't find usages of a constructor, because as far as it was concerned, there was no constructor - Lombok generated it - meaning I had to find every usage of the class and search for a constructor which wasted a lot of time.

A final, slightly petty point: Lombok'ed bytecode doesn't match the source code (obviously), but it means a pretty annoying IJ warning (look at BungeeCord source for example)

Lombok may seem good in the short term, but it comes with a heavy price. Favour IDE generated boilerplate, or consider using a language like Groovy or Kotlin if you really dislike boilerplate.

light venture
#

why the repost

prisma wave
#

Because he asked for a reason that Lombok sucks

light venture
#

ah idk it sucks does it or does it not. You decide!

#

epic rap battles of history

steel heart
#

elera mitten thats specifically why lombok suck

prisma wave
#

Also, it's totally unnecessary for parameters. If you have @NotNull, it implies shit will break if it is null, so all Lombok does is move the exception to the first line

lunar cypress
#

also to add to that, if you want those language features you're better off using a different JVM lang

steel heart
#

It might be better to make it throw an exception early sometimes em

#

Well I prefer to

prisma wave
#

literally makes no difference

old wyvern
# prisma wave Firstly, it's a compiler hack. The Java compiler isn't intended to be used like ...

Firstly, it's a compiler hack. The Java compiler isn't intended to be used like that and so it can cause compiliation errors, or worse:
I was working with a project using Lombok recently and method references for a lombok generated method were causing some pretty difficult to debug runtime errors.

Secondly, it requires an IDE plugin. You have to properly configure your build tools and IDE to avoid hundreds of errors, and installing an IDE plugin + setting up annotation processing takes time, especially if you're inexperienced.

Generated code also doesn't show up in Javadocs, so unless users have source code available it's going to look like nothing is accessible

If Lombok's code generation does something unintended, it can be difficult to debug, and usually requires you to remove the annotations and do a certain impl manually anyway. However, once you get used to this it's very discouraging to do, so it's easy to rewrite an entire class just to make it work with Lombok

There's also an extra degree of complexity with Lombok. Java is supposed to be explicit, and transparent. If you don't notice an annotation at the top of a class, it's easy to wonder where a method is coming from, or why a field is never initialized.

It also can be harder to work with. Again recently, IntelliJ couldn't find usages of a constructor, because as far as it was concerned, there was no constructor - Lombok generated it - meaning I had to find every usage of the class and search for a constructor which wasted a lot of time.

A final, slightly petty point: Lombok'ed bytecode doesn't match the source code (obviously), but it means a pretty annoying IJ warning (look at BungeeCord source for example)

Lombok may seem good in the short term, but it comes with a heavy price. Favour IDE generated boilerplate, or consider using a language like Groovy or Kotlin if you really dislike boilerplate.
Ikr

steel heart
#

Since I do most stuff in java 8 since its lts the npes aren't helpful so doing early checks is easing it up

#

but ye im generally against lombok

prisma wave
#

then don't use it

#

Smh

steel heart
#

why?

#

NotNull has a good functionality :]

#

undeniably good lol

prisma wave
#

it's still a compiler hack

steel heart
#

bruh

#

then I will use the jetbrains annotations instead

lunar cypress
#

the end is one thing, the means is another

steel heart
#

presumably

prisma wave
#

Lombok is work of LUCIFER... Both start with letter L!!! want more proof??... Lombok has 2 syllables, Luci*er has 3... 2 + 3 = 5. 5 in binary is 1001... Times by 2 is 2002... Year 2002 was release of Star Wars Attack of the Clones... Which is the worst star Wars movie

steel heart
#

lol

#

okay I'm convinced now

light venture
#

star wars

#

iโ€™m convinced

prisma wave
#

Obviously

light venture
#

obviously wrong

prisma wave
#

whAT

light venture
#

mandolorian is good

lunar cypress
#

mangolorian

light venture
#

he do he looking like a snack must admit

#

be

lunar cypress
#

๐Ÿ˜ณ

remote goblet
light venture
#

no

lavish notch
#

What's the best way to detect if two or more zombies are within like 5 blocks of each other?

#

@ me

remote goblet
#

getEntitiesNearby @lavish notch

lavish notch
#

Well... I'm wondering where do I start

#

like what event

regal gale
steel heart
#

nice

blazing walrus
lavish notch
#

Stack 'em

blazing walrus
#

Entity Spawn Event probably ?

#

so when the yspawn stack them?

lavish notch
#

well... I want it that if they're moved close to each other - they stack

blazing walrus
#

Well I don't know if there's an event for this purpose but you can keep detecting them on their spawn

prisma wave
#

Couldn't match type โ€˜Intโ€™ with โ€˜t0 [Int]โ€™ โ“

steel heart
#

weak

prisma wave
#

nvm

#

i accidentally wrote an impure function ๐Ÿ™‚

#

what

#

what

steel heart
#

this reminds me of java generics

blazing walrus
#

lmao

steel heart
#

Provided <I,O>
Required <I,O>

heady birch
#

expected Option<T> got T ๐Ÿ˜ฆ

prisma wave
#

t.unwrap()

steel heart
#

fucking ? capture of ? extends T

heady birch
#

t.is_ok() {
let mut the_t = t.unwrap();
}

prisma wave
#

ez day 5 done

#

in HASKELL

#

the rainbow grows

reef kernel
#

Hi just a quick question. For deluxeTags do you guys support HEX codes?

prisma wave
#

yes, simply do a multiplicative inverse of the code with (filter #(invert % 2) (square x)) and you should have an answer

hot hull
#

@prisma wave No Elara, weak.

prisma wave
#

Working on it

hot hull
#

Just fork fork bomb and you should have a nice rainbow

#

Unless forks don't count

#

Which I'm pretty sure they do

prisma wave
#

idk

#

probably

hot hull
#

I got 21% kotlin

#

Cute

prisma wave
#

nice

signal tinsel
#

I deadass wanna learn rust

lunar cypress
#

then do it

signal tinsel
#

But fuck idk what to make

prisma wave
#

advent of code

#

although rust is best for low level stuff

lunar cypress
#

hmm, not necessarily

prisma wave
#

I mean isn't it designed for systems programming?

lunar cypress
#

yes
didn't express myself correctly, it's still a high level language is what I mean

signal tinsel
#

That's what I wanna do tbh

#

That's the most fun

lunar cypress
#

do you have any prior experience in that field

signal tinsel
#

Not much, no

prisma wave
#

you could make your own version of redis

signal tinsel
#

Hm

#

Like with an actual server

#

That would be kinda interesting, but I don't think I have enough understanding of how redis works for that

prisma wave
#

it's pretty much a glorified hashmap

#

key -> value storage in memory

signal tinsel
#

Yeah I know

#

But its got more than that

lunar cypress
#

you should start with something simple

#

pick up the rust book

signal tinsel
#

Link?

signal tinsel
#

Oh wait here

#

Yeah found it

lunar cypress
#

Be aware that Rust is a hard language to learn

signal tinsel
#

Tbh I also wanna start working more, but I really don't have any programming work rn lol

#

I mean nothing's hard to learn if you try

#

Maybe a good project would be a web server framework

prisma wave
#

Rust is harder than most languages though

#

because of lifetimes and borrowing

signal tinsel
#

First start off with some small projects, then eventually web server

prisma wave
#

potentially

#

I find Project Euler is good for learning the absolute basics of a new language

lunar cypress
#

Rust is hard because of a lot of reasons

#

and yes I do think you can call it hard

signal tinsel
#

Maybe I should focus on getting some more programming work and learn rust on the side

prisma wave
#

yeah I would say Rust and Haskell are probably the 2 hardest languages to learn

#

modern languages

signal tinsel
#

Haskell, never really looked at that lol

prisma wave
#

Another safety obsessed lang

heady birch
#

RUST is the best language.

lunar cypress
#

they both take a lot of work to become productive

prisma wave
#

although a different type of safety

#

indeed

lunar cypress
#

although I can only speak for rust here, not even much

#

I personally do not like rust at all

prisma wave
#

uh oh

#

Niall is not going to be happy

heady birch
charred violet
#

can you help me change the crafttweaker script from 1.16 to 1.12.2?

lunar cypress
#

perhaps that is because of my wacky introduction to the language

#

I honour the novelty of the concepts etc

#

But I don't really like its static-ness (idk the word for that lol)

heady birch
#

I mean. I've only made super basic stuff. Not really touched upon lifetimes very much

signal tinsel
#

I mean the main thing for me when learning a new language is if I'm gonna use it

#

I know several languages I'm not using

#

Rust is probably gonna be the same case lol

lunar cypress
#

I mean cool I guess that you've made a compiler that can guarantee the safety of my program but if it takes me until tomorrow to even figure out which types, lifetimes, patterns and borrows I need to use until I can even compile anything it's not fun for me

regal gale
signal tinsel
#

I mean I have an item builder class I think somewhere on my github

heady birch
#

Yes. Perhaps make option() -> meta() and setTitle and setLore to title(), lore()

meta()
  .title("The title")
  .lore("The lore")
prisma wave
#

If it ain't broke don't fix it

#

No need to make enhancements for the sake of it imo

heady birch
#

FactoryResolver.resolve(IItemMetaFactory.class)

signal tinsel
#

Why niall

signal tinsel
prisma wave
#

I don't like fn

#

It's ugly

#

And doesn't line up with let

ocean quartz
#

Also, @prisma wave up for small class review?

prisma wave
#

Absolutely

ocean quartz
steel heart
#

Srp lol

prisma wave
#

AUDIENCE.audience(it)
I feel like this would be better as an extension function

#

the mix of imperative and declarative is a little bit odd, but it's probably not a problem

steel heart
#

Whatโ€™s declarative now again?

prisma wave
#

functional style

steel heart
#

Ah

prisma wave
#

list.filter {}.map {}

#

forEach

#

etc

steel heart
#

Whatโ€™s the difference between functional and declarative then?

ocean quartz
#

Yeah, kinda want to make it more declarative

hot hull
#

That arrow code could be cleaned up Matt

prisma wave
#

the difference is subtle, but as far as I know: functional programming is always declarative, but declarative isn't necessarily functional

ocean quartz
#

That one is kinda rough to clear though Frosty

lunar cypress
#

yes

hot hull
#

Atleast 1 if can be cleaned

lunar cypress
#

functional is a style of declarative programming

hot hull
#

The instance check

lunar cypress
#

where your program is represented as a flow of data through a composition of functions

prisma wave
#

hot

ocean quartz
#

Not really, because inverting the instance check doesn't smart cast, which is what I need on that specific case

lunar cypress
#

but logic programming is also declarative

#

or, hell, even SQL

prisma wave
#

val pingEvent = PlayerPingEvent() - there's either some nasty side effects going on here or this isn't necessary

ocean quartz
#
if (something is Something) {
  // this is something
}

// this isn't

Isn't the same as

if (something !is Something) {
  // this is something
}

// this might not be Something still
prisma wave
#

and I think handlePing should be in another class if we're going pure SRP

#

or another file rather*

prisma wave
ocean quartz
#

Yeah thought about that too, but unsure if i should

prisma wave
#

there's no downside

#

the coupling with AsyncPlayerChatEvent is also a little strange, imo it would be better to just take a player, message and receipients and then have a factory function for AsyncPlayerChatEvent

ocean quartz
#

Yeah i'll have to change that one in the future

prisma wave
#

yeah this is probably fine

#

apart from a few small things

ocean quartz
#

Need to change the handle ping as well, currently it's sending the ping when the message is created, instead of when the message is sent, in reality it shouldn't make any difference, but the event is cancellable so it would later on

hot hull
#

Fellas I am forfeiting my num. 1 position on the leaderboard as I will not be around my pc for a few days

steel heart
#

F

hallow willow
#

Is there any good 1.8 rendering apps/files. So players would not get lag if then explore the worlds

hot hull
#

I highly doubt that would ever be an issue on 1.8

hallow willow
#

I am using 1.15.2 as my version

#

Using via plugins

hot hull
#

Ew legacy

hallow willow
#

๐Ÿ˜ฆ

#

Umm

#

xD

#

Why is legacy being hated?

obtuse gale
#

because it's old

#

it has bugs

#

very lacking api

hallow willow
#

I just want som mop

#

T_T

obtuse gale
#

and it's been superseded by newer versions

#

more robust

prisma wave
#

Why shouldn't it be hated?

obtuse gale
#

more stable

#

with better api

ocean quartz
#

I don't have nitro anymore so someone please post the emojis from paper saying outdated

obtuse gale
hallow willow
#

:l

ocean quartz
#

Also why are you on 1.15 instead of 1.16?

hallow willow
#

Stoph xD

ocean quartz
#

1.12, 1.8 are understandable ish, but 1.15 .-.

#

Was a genuine question though not trying to bully, we only bully 1.8

hallow willow
#

I just need 1.8 map

#

why bully me

#

I got target audience >.>

steel heart
#

@obtuse gale

obtuse gale
#

saddasdas

ocean quartz
#

tedtdatou

hallow willow
#

:<

obtuse gale
#

I also have this

hallow willow
#

Yamete

obtuse gale
#

oh do i

half harness
#

Anyone have any good wiki recommendations? (You have to pay for wikis on private github repositories)

eager fern
#

gitbook

half harness
#

thx

half harness
#

Anyone know an alternative to jitpack but for private github repositories?

#

not mavenLocal

steel heart
#

what

#

I mean what u tryna achieve here

half harness
#

hmmm

ocean quartz
half harness
#

because I share code with others

light venture
#

oof

half harness
#

but I don't want everyone having access

#

im in a team :>

light venture
steel heart
#

then just have a readme in the repo?

half harness
#

wdym

steel heart
#

so just add a new .md file

#

and write ur wiki there

half harness
#

o

ocean quartz
#

Or go open source fingerguns

half harness
#

nooo

#

hmm

#

github wiki or gitbook

#

which one is better

steel heart
#

if u have github pro

#

then u can make private wikis iirc

half harness
#

I do not

steel heart
#

although pretty useless

#

unless you wanna prepare a wiki

#

or smtng

half harness
#

The wiki is mostly just to remember things (like commands, perms, api, etc)

steel heart
#

just document in the code?

half harness
#

wdym

#

like an md file?

steel heart
#

ye

#

why not

half harness
#

because

#

I didn't think of it

#

๐Ÿ˜›

ocean quartz
#

Gitbook is great, if you go open source you get premium Gitbook for free fingerguns

half harness
#

wait

#

but what if you make a fake repo and get premium from that-

ocean quartz
#

Well you need an actually active open source repo

half harness
#

o

#

do you have to apply?

ocean quartz
#

Free gitbook, free intellij ultimate, and many more

half harness
#

wOAH

#

how do you get that?!

ocean quartz
#

Open source fingerguns

half harness
#

but

#

how do you get IJ ultimate

ocean quartz
static zealot
#

so how you guys doing?

half harness
#

๐Ÿ˜ฎ

ocean quartz
#

Doing fine, wbu Blitz?

static zealot
#

ok

half harness
#

okay, so
back to my original question:

static zealot
#

I'm doing ok

half harness
#

nevermind

steel heart
#

epic code

static zealot
#

yes

#

beautiful

#

that's like a 8 spaces TAB?

#

beautiful

#

could have been 12 tho

#

just in case

ocean quartz
#

SQLClass.getPlayerDataSingleContent beautiful

static zealot
#

s.contains("$PlayerDataFor")

#

why not just use PlayerDataFor