#dev-general
1 messages ยท Page 327 of 1
๐ฎ
meh
not from discord
who cares
Dont tell everyone im using ElaraOS ๐ฌ
my ip address is everywhere
I'll happily tell everyone my IP
0 security flaws
Literally impenetrable
flawless
81.92.200.157

and that's because I'm using Windscribe
man
so gl DDoSing my VPN lol
Windows and linux both died after the release of ElaraOS
you wish
ElaraOS instant 100% market share
Guys guys join my server please it's at 127.0.0.1:25565
๐ฏ
programs written in good languages see a 50x speed improvement
programs written in bad ones crash your pc
its true
88 votes and 17 comments so far on Reddit
Prolog good
hahahahaha johnny
mmmm hs
yeah Prolog actually looked useful
Noooo
heskall
it's not applicable in quite a few situations, but it has its uses
Purely declarative programming ๐
e.g. I wouldn't want to try and work with networking in a logical language
#development message @prisma wave
man
man
maaan
sadge
Does clash of code allow prolog?
true true
no
Sadly not
Anyone clash?
Elaborate sink
underwater
Wait
No?
lol
๐คค
Don't think sink is the right term
EnterpriseHaskell
well its not sinking
HaskellEE
๐
the question asked about why it was dissapearing below the ocean
and i think it was due to erosion
How can I get this
wat
Please give me a link
if it's on the verge of two tectonic plates, then it's sinking
Are u there?
Otherwise erosion yea
Thx
man bm
man
๐
u gotta make an elara website
But I mean I never learned this at school
yes
Elara playground ๐
or abcl's website
whos Clashee
@hot hull
I can't join rn
is that the bot or smth
Bot
Haskell
xD
Pings me after I've already joined smh
ffs shortest
wait i can join
oh god how do i not know how to do this
this is so easy aswell
So hwo do I make this short lmao
oh this is gonna be another one of those bull shit questions where I think if statements are the only way and then I see some bull shit that uses one condition
It's really easy, just hard to make it short
yeah
Time for kotlin
wait frosty
i actually suck at maths oh my god
do hotspots and tectonic plates move
i read from a textbook
that the hotspots follow the motion of the tectonic plates
dev general
Pulse, after the clash
k
How do you do for loops in kotlin again
for (i in 1..10)
omfg no fucking way
}
``` @hot hull
tf
๐
Does (1..10).forEach work?
for i in 1..10 do
printfn "%d" i
yes
Yup
IntRanges are Iterable
๐
72 chars lol
@onyx loom read the question
you can use an if statement, probably the easiest way
๐ฅฒ
but gonna be a bit phat
you're gonna kick yourself when you see mine lol
think about it
t is the time you have
c is the tank's capacity
r is litres/second
so you have seconds, litres and litres/second
๐คฃ
also, look at mine lol
100 more sadge
that's how easy it was
t>=c/r
if the total time allowed is greater than or equal to the total fill divided by how much you can fill per second, then we know we have enough time
man
oh wait i can
@old wyvern u good?
the first thor movie was cringe
he's probably stuck trying to use Haskell or something lol
Tectonic plates do, not sure what hotspots are tho
how do i start
Yugi wow
Yea lol
nice
JOIN GUYS
Well no clue what the definition of a hotspot is so
u were abit silent thats all
o
Bad
JOIN GUYS
use haskclash plz
i did
start
who's Clashee?
yes just host another clash
haskell
There
the bot iirc
now start
oh
ur host bm
You should be the host now
ffs
uhhhhhhhhhhh
lol
I tried that lol
oh
649???
jesus
36
nice...
what the fuck is the math behind this?
because N*(N-3)/2 is clearly not it
Yea was gonna say
yeah doesn't work for last one
It is lol
....
yea
LOL
Seems to work
damn
Last one is fucked tho
totally didn't google Python integer division
overflow?
what you writing in?
kotlin
Use Haskell's Integer type
python in shortest is borderline cheating
no overflow
you cant beat it
58 ๐ฆ this a lost cause
Yea python banned from now for shortest
yes pls
56*
lol
fun main(){val n=readLine()!!.toLong();print(kotlin.math.floor(n*(n-3)/2))}
```?
ah right
Ah okay long worked
you won't beat my code lol
fun main()=print(readLine()!!.toLong().let{n->n*(n-3)/2})
``` that's how i'd do it
ew spaces
now i got 0%
lol
dogshit game
mine is so hacky
not really lol
n=int(input());print(n*(n-3)//2)
still 57. without spaces
that's how you're supposed to do it
not as good as mine
hmm true
yeah
mhm
Y'all can be gone with python
@static zealot start it
oh xD
if it was, it'd be \r\n, which would mean it's longer
no python
didn't notice
in shortest
oh god
damn
this is easy to understand
not as easy to do I guess
maybe if I put some thinking in it
I think I got it
are we just scrambling the letters after the first?
ikr
It's not tho Blitz
Ah yea, I'm dumb soz
PIZZAS take P out and put it in a new string and now first letter is I
but you take last which is S
put that then i the a
etc
yeah idfk how to do this
its not that hard I just have to figure one thing
wait until you see my whack
fucking hell why doesn't kotlin have a `for(index; condition; increase/decrease) type loop?
it does
bruh i keep getting Found: Nothing when testing
well then I clearly don't know how to use it
for (i in lower until higher step step)
yeah but with that I can't change i inside the loop
because I have to decrease the value
nvm I'll just use another variable
its pretty bad
my code
I have to shit so bad
ew looping
ok here you can say whatever
look at my whack now Blitz
but I have to shit so bad
recursion ๐
byeeee
mines not too bad tbh
it takes advantage of the fact that we can use even/odd index checking to determine whether to take from the head or the tail of the list
i tried using word.forEach and for (i in word.size) but both didnt work, had to use iterator lol
mix (x : xs) (y : ys) = x : y : mix xs ys
mix (x: xs) [] = x : mix xs []
mix [] (y: ys) = y : mix [] ys
mix [] [] = []

This is dumb
5 seconds!
look at mine now Frosty
ima have to take the L on that one
that was how easy it was
Good for you
another pls
@forest pecan ? xd
we just take the input, assign a new word to store the result, then loop over the characters in the list, and if the index - 1 is even, we get the last character and remove the last character, and if it's odd, we get the first character and remove the first character
took me like 3 rewrites, but somehow figured it out
You don't have to explain it
almost forgot how to substring in Python
Noone cares bardy smh
ok not doibng this
not reverse mode
bruh
actually this is easy
NEXT?
It's actually easy lol
i just saw some lines as the output and submitted
lmao
ching chong
that was so fucking easy
Kaliber look at my solution
you're gonna kick yourself I swear
no
that's how easy it was
just copy and paste line for line and put \n in to break up the new lines
lol
Yes
works I guess
๐
EZ
wdym?
mhm
๐ค
how's that declarative?
I swear declarative = what and imperative = how basically
Thats exactly what if does
^^
x = if condition then a else b is very declarative
imperative would be if statements modifying some variable
ah right
okay that's a start
I just can't move quite yet for whatever reason
I'm frozen in place
but I'll fucking take that
Any one know how to get Older JKD KIT from oracle without registering? https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
use OpenJDK
Thanks :} had some issues with intellij, kinda hard to use
IntelliJ is easy once you get used to it
L
like if I look at an example from the notchian client, it works fine with these sorts of integers
but when I do it, oh no, Bardy's at it again! not havin' that!
I'm done shitting boys
can I join COC?
well I guess everyone its gone
went to shit for couple hours and everyone is gone
smhg
Bruh
wait wtf
a couple of hours?
constipation
Saw a perfect device for that
Also it's probably not constipation, more so that he just sits there on his phone
Didn't expect everyone to leave as soon as I go ... ๐ฆ
He's like when a woman takes a shower and then, has a concert, political debate, nail appointment etc within that shower
anyone wanna come and do some Krypton 0.7 alpha testing?
168.119.171.28:25565
get ready to see some whack
I am comfy in my bed, no can do
on ur own? sadge
Do you know my address tho Yugi?
;)
Wait what
is the server down yet?
ddos time
ye should be down
Server go brrr
in couple seconds
you better not be DDoSing my VPS lol
it's Hetzner, as someone said, "you can poke it and it'll go off"
oh no way. me? never!
:kek:
SS
Still beats my world gen
man
Actually I want to help on that frost
Not yet, I gotta finish rebasing first
frosty can I contribute in clojure?
I was thinking of working on a general world generation library with everything someone would want to use
Nein, unless you make a renderer in clojure, I'm down for that
Not partucularly for mc, but hsould work the same
Yea that's my plan lol
oh xD
lemme upload this to YT unlisted to show you this (too big for Discord lol)
lol
Broken chunk
Have a generic generator which gives you everything you need non game specific, and then have "interpreters" which modify it for the game you want
Wouldnt have been an issue if the it was Haston
oh yeah, Frosty, got some lovely JSON for you to parse lol
mmmmm json
import minecraft
minecraft startServer 25565
man
25566
Need a companion?
A bottle of whiskey would be nice
sadge
But I've not drank alcohol for over 6 months so not about to start again
https://youtu.be/7980kMuIv8U here you go Frosty
Haven't smoked weed before so no clue
Lmao Bardy
that's what happens with 5 bits per block
with 4 bits per block, you can't move, but it loads the mountain to it's full height (in that one chunk with a sorta mound)
with 6+, the client renders fuck all
it is proper whack
Seems like you're doing something wrong
well nah no shit sherlock, wonder how you figured that one out
lol
It all came down to some very complex math, let me know if you want me to guide you through it
I wanna hear this now
package org.kryptonmc.krypton
fun main() {
Server(port = 25565).start()
}
man
nice
yeah that code hasn't changed since BM wrote it several months ago
bruh bardy this is all u had to do all this time??????
neither has the Server code really changed either
stfu just look at Server next
follow the rabbit trail
yeah that was BM's doing
#blamebm
@prisma wave lol
I mean, I don't really know what to replace it with tbh iwanio
while (!false)

yeah that won't work in Kotlin lol
So you use the formula called I'm going to bed now, add 5 to 7, subtract 13 from it, multiply that by 69, take the absolute value of the given result, and your answer will be 69 which in laimens terms corresponds to You did something wrong, this is due to the fact that you're a mineman, and will most likely never experience this.
also, the result of that is 68 not 69, since 5+7 is 12 not 13
Bardy, 12 - 13 = -1
- 69
-69
4head
so it's gonna be very far from 69 lol
Bruh math
ah actually
it is gonna be -69
then abs is 69
so you are right
jesus christ I'm not awake rn lol
๐
;)
Big brain Frosty
frosty is not that stupid as he seem
My phone is lagging
man
he's more than that ๐คฃ

it does that for me on discord too frusty
"frusty"
literally overheats my ยฃ200 arm processor
I swear ARM chips aren't that expensive
Yea discord is laggy as shit for some reason
Everything else seems to work perfectly
any thoughts on this
Sir this is #dev-general
Sir this is #dev-general
Seems to only be dev general that's slightly laggy lol
ยฏ_(ใ)_/ยฏ
I go now, good luck on your endeavours
oh btw, is running netty on a single coroutine a good idea btw?
I remember Matt saying how performance could be good if I used coroutines, teach me the ways @ocean quartz
I'm gonna have lots of fun trying to debug that
java.lang.ArrayIndexOutOfBoundsException: Index 16 out of bounds for length 16
at cgk.a(SourceFile:70) ~[minecraft-1.16.5-client.jar:?]
at cgo.a(SourceFile:157) ~[minecraft-1.16.5-client.jar:?]
at cgi.a(SourceFile:146) ~[minecraft-1.16.5-client.jar:?]
at cgh.a(SourceFile:586) ~[minecraft-1.16.5-client.jar:?]
at dwr.a(SourceFile:107) ~[minecraft-1.16.5-client.jar:?]
at dwu.a(SourceFile:772) ~[minecraft-1.16.5-client.jar:?]
at pt.a(SourceFile:123) ~[minecraft-1.16.5-client.jar:?]
at pt.a(SourceFile:23) ~[minecraft-1.16.5-client.jar:?]
at ol.a(SourceFile:21) ~[minecraft-1.16.5-client.jar:?]
at aob.c(SourceFile:144) [minecraft-1.16.5-client.jar:?]
at aof.c(SourceFile:23) [minecraft-1.16.5-client.jar:?]
at aob.y(SourceFile:118) [minecraft-1.16.5-client.jar:?]
at aob.bl(SourceFile:103) [minecraft-1.16.5-client.jar:?]
at djz.e(SourceFile:1015) [minecraft-1.16.5-client.jar:?]
at djz.e(SourceFile:681) [minecraft-1.16.5-client.jar:?]
at net.minecraft.client.main.Main.main(SourceFile:215) [minecraft-1.16.5-client.jar:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196) [NewLaunch.jar:?]
at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231) [NewLaunch.jar:?]
at org.multimc.EntryPoint.listen(EntryPoint.java:143) [NewLaunch.jar:?]
at org.multimc.EntryPoint.main(EntryPoint.java:34) [NewLaunch.jar:?]
```okay that's a bit better
sadge
cgk is linear palette
ffs
linear palette is the one used for BPB <= 8
okay ik what's happening
basically, the server's saying "right, use 4 bits per block for this one" and then sending a 16 lol
Palette size: 17, Bits per block: 4 yeah... that might explain it
fuck
countOneBits() + countTrailingZeroBits() has failed me!
Basically if you can do a good concurrent implemention of like async chunk, async entities, etc, it'd be pretty good performance
Similar to the bedrock implementation of Aether Engine
Is it really necessary that half your sentences is suggesting clojure or rust?
Yes.
no sftu iwanio
:)
async chunk loading? separate from the rest of the stuff? er... https://tenor.com/view/ok-okay-gif-5307535
Aether Engine is a lot more* complicated than that afaik
The circkjerk is fun and all but it's pretty annoying when overdone
mmm
Its supposed to distribute a "group" of players to a single thread
so nearby entities can interact with no concurrency issues
the groups merge and divide depending on player distances
or something like that
Oh yeah i am very aware of that, that's why i am scared of diving into that xD
xD
oh ๐ฆ
even better
oh ๐
they all work
and it's kinda all thanks to Fefo for helping me calculate the bits per block lol
what are bits?
oh those bits
wrong language
xd
right, kinda gotta figure out an algorithm for calculating the size I need to spiral from the radius
size you need to spiral?
e.g. given a render distance of 10, meaning a diameter of 19, I need to load 19 x 19 I think
render distance of ten would mean a diameter of 21 right?
chunks are loaded in a spiral with an algorithm I stole from Nicole, which she stole from Stack Overflow lol
isn't it 10 including the centre chunk?
I swear render distance includes the centre chunk
or does it not
I once stole a spyral algorithm that I should't had stolen
it said at the top of the github page
actually this is easy then I guess
please don't use
pow(renderDistance * 2 + 1, 2) right?
Yes
also currently only working with a single region
I would assume the radius is more like an "offset" from the center chunk you're in
Why does the wiki say lol
gotta figure out how much I'm gonna load before the client settings packet comes in telling me how much I have to load
and then also gotta figure out how to detect when players cross borders and calculate which chunks I need to load and which to unload
and then calculate which region files I need to load
what
scroll up from that
I said #blamebm lol
Or maybe render distance is one of those MC things that are like 10 with center included towards the positive coords and 10 with the center excluded towards the negative coords lmao
also probably need to speed up this accessibility of the global palette, since atm I'm doing this:```kotlin
GlobalPalette.PALETTE.getValue(entry.name).states.single { it.properties == entry.properties }.id
which may not look bad at first, but consider that this is done for as many blocks as there are in the palette, 16 times for every palette in every chunk section, and that's done for 25 chunks
so, just say for example, every palette has 10 blocks, it's doing that 4000 times everyone someone joins
which is actually noticeably slow
isn't single O(n) worst case?
I mean, https://paste.helpch.at/kidurimixu.coffeescript that looks like O(n) to me
Id assume not
That would look offcentered I think
What exactly are you trying to do with it?
What are you iterating over
what is your predicate
Possible improvements depend on that
I'm iterating over a list of block states retrieved from the block retrieved from getValue
What about the predicate? what does it test for?
it wants an element where it's properties match our entry's properties
also, won't == for lists also be O(n)?
Could you send a snippet of the use site?
https://paste.helpch.at/hawufasita.coffeescript lines 33 and 53
there's gotta be at least 10 ways I could write that code better
What is the type/definition of properties?
Map<String, String> for a single state
also, btw, ignore the properties in RegistryBlock, that just contains a list of allowed properties
fun Int.varIntSize(): Int {
for (i in 1 until 5) {
if ((this and (-1 shl i * 7)) != 0) continue
return i
}
return 5
}
yeah it is actually
Was thinking here and actually would be pretty interesting to try implementing that, sounds fun 
since it checks for duplicates
though in my case I won't ever have any duplicates
so I could modify it to be worst case single
then just use first {}
ah
Yea, could be nice. But Im not sure how accurat emy description of that was
even if it doesnt, its still O(n)
Anyway
Maybe you want to rethink how to categorize pallets
I could map them state to ID for quick access
also, won't calling sumBy also cost me a bit as well?
Don't think the server is public so can't even dissect it
linear time algorithms are not necessarily costly
Nothing you can do about sumBy I guess, youd have to sum it up anyway
Where you could improve is the searching
yeah
no but surely at scale they are
trying to think how I could map it
I could map block states to ints directly
but then won't it still have to linearly search through the elements anyway?
What does the id represent?
block ID
protocol ID that is, not to be confused with some pre-flattening bull shit
Why not make it part of the block state then?
it is part of the state
No I mean the entry
section.palette.sumBy { entry ->
GlobalPalette.PALETTE.getValue(entry.name).states.single { it.properties == entry.properties }.id.varIntSize()
}
ah that
If its part of the state of that entry, maybe its better to actually have it on there
that would require programming in all the blocks
wdym?
since those are all blocks, and their properties contain their states
actually I'm confusing myself lol
I think the way to go would just be to include it with whatever entry is
https://github.com/KryptonMC/Krypton/tree/feature/anvil you can look at the code here btw
linear algorithms scale linearly
unsurprisingly
lol
well I was expecting facebook to be there https://i.imgur.com/imT391O.png
lol
make sure your password hasn't been pwned
that's the important one
they have been
from all 3
fortunatelly I don't use those passwords anymore
xD
now I use random generate passwords
hmm I wonder how good LastPass is because keeping track of all passwords really is hard
LastPass is trash now
I remember Jim Browning recommending it a few months ago
oh nvm he recommended dashlane
xD
yeah it's now bad
they changed the free plan to only include 1 device
what about DashLane? do you think its at least semi-good?
I personally just use Lockwise
oh free plan is up to 50 pass and 1 device only
it's free for unlimited devices, no bull shit, no paid plans
oh really?
only caveat is that it's limited to your browser on desktop
it has a mobile app though
but is it maintained by a somewhat trustworthy company?
oh
yeah
unfortunately best things cost usually. and that's understandable
Lockwise is free though
Yeah
and there's no paid plans or limitations on password storage or devices
and it's maintained by Mozilla
The non profit one or?
btw some scammers bought the haveibeenpawned.com domain. it has an a between p and w xD
oh MYKI.com has a pretty high rating but idk how good it is
seems like no limits but not sure
I think I'll try it maybe
it has desktop, browser and phone apps
browser is extension
imagine people using the .cam TLD to IP log people on minecraft :/
This piece is interesting to read
Sir this is #dev-general
Sir this is #dev-general
Oh my god
๐
lol
The titles do be looking good though
@prisma wave they got ahead of you
You gotta up your game man
u been slacking
Was it really worth $10
whats the funny gif
my pfp I mean
THANK
hypixel bedwars plugin for free ๐
#805698757411995648 message
lol
Thanks for watching how to press space bar if you want to know how to press any others please tell me
Aaa
Masterful hacking demonstration! Genius hacker uses an unfathomable amount of RAM to circumvent locked Apple Newton! ZOMG!
Does anybody know what im meant to do lol i might just be dumb but idk what its asking me to do
I mean just list the numbers from 1 to the given end number, and when they click calculate sum them all together?
how can i get the players position 1 second ago?
squid ward meme love it
can we pls not
sends me too https://www.haskell.org/
๐
๐คฆ
IntelliJ good Eclipse bad
IntelliJ has like 100x more features, is easier to make plugins for, is more extensible and supports cleaner UIs imo
eclipse is buggy
well, more buggy
a little bit
and that I guess
Better error detection and auto-fixes
idk, I'm used to eclipse UI
so was i
and have everything set up
intellij can import eclipse prjects and convert them
if u want to
up to you
what theme do you use
"Atom Material Icons"?
download material theme + atom one dark + atom material icons
gruvbox tho :(
what
gtfo
material theme has an atom one dark theme, you donโt need to download a separate ploogin
yeah
Vuesion theme 
also, btw Pig, iwanio is one of those who thinks vim is somehow superior to IntelliJ
thatโs a very popular opinion
speeeeeed
probs 50/50 in the real world
speeeed
vim good
yes
yeah vim is great, but IntelliJ is better for Java development
meh
most old developers (like 30+) will always say vim
man I ain't old
ok boomer
I love vim for text editing, but IDEs are generally more purpose built and so have more features
ppl saying vim is 'so good' is literally just circle jerking
lol
man can I not have a popular opinion?
vim + haskell + blockchain ๐คค
iโve never tried vim
the only place I use vim is on the command line on Linux for editing config files lol
get ๐ a ๐ life ๐
oh you're one of those who uses nano aren't you xD
for cli text editors nano works fine and for gui, sublime is all Iโll ever need
I'm messing
man nano
Glasgow Text Editor >>>>
nah nano is alright, I've just kinda been brought into Linux using vim, so I'm more used to vim now
Glasgow anything
Glasgow is nice
is this a briโish joke?

very scottish tho
i donโt get it
what
man
The haskell compiler
it's just: vim file.txt, press I, edit your text, press escape, write :wq to write and quit, done
is ghc the chemical that makes u high when u smoke haskell
man u do :wq?
I is for insert btw
ah ok
man u don't do wq?
Its better than weed
