#dev-general

1 messages · Page 343 of 1

errant geyser
#

Heeeey it's fiiine

forest pecan
#

where do u live brother

jovial warren
#

I will not answer that question unless you reset your nickname

forest pecan
#

SexBot wants to know your location

errant geyser
#

nein

forest pecan
onyx loom
#

👀

#

everytime 😭

forest pecan
#

SexBot has you covered

jovial warren
#

oh btw, what should I use for emitting events? tryEmit or just emit?

ocean quartz
#

Want me to join and see if i can get it to work?

forest pecan
#

wrong channel oops

#

there we go

surreal quarry
#

lol\

jovial warren
#

oh also, BM, filter { it is T } seems to say that it cannot filter by an erased type

half harness
#

lol/

forest pecan
#

tyty

#

lmao

jovial warren
#

and it can't be inlined because the super can't be inlined

prisma wave
#

Make it reified then

#

huh?

obtuse gale
#

uh.. cool fact ig

jovial warren
#

EventManager is an interface that's implemented

jovial warren
#

so listen can't be inlined

jovial warren
astral quiver
#

so, add reified typing

#

without it you can't filter by type

stuck harbor
jovial warren
#

cough is interface method cough

astral quiver
#

this how JVM works

jovial warren
#

okay so EventManager has to be implemented in the API then I guess

astral quiver
#

adds this function as a extension function

#

and use KClass

astral quiver
#

inline listen = listen(T::class)

stuck harbor
ocean quartz
#

Up to interpretation

stuck harbor
#

sudge

jovial warren
oblique heath
#

has anyone dealt with github's 'free' maven repo service

hot hull
#

wat

astral quiver
#

is not so good

#

everyone that want to you your library should add some token

#

it's kinda bullshit at the moment

ocean quartz
oblique heath
#

oh a token is required just to add the package???

#

lmao

astral quiver
#

is just maven("maven.pkg.github.com/YourUser/YourRepo")

oblique heath
#

thats stinky

astral quiver
#

the add a package of course you need it, it for your publish autentication

oblique heath
#

so to say use someone elses package you need their token too?

jovial warren
#
override suspend fun <T : Event> listen(`class`: KClass<T>): Flow<T> = events.filter { it::class == `class` } as Flow<T>
``` jesus christ that's a method and a half
astral quiver
#

without token, any one can publish

jovial warren
#

that's what you meant btw right Souza?

oblique heath
#

yeah for pushing an artifact having a token makes sense

astral quiver
#

yes

#

now, create a extension function with inline and you are good to go

jovial warren
#

already done that lol

oblique heath
#

but for pulling an artifact?... :(

astral quiver
#

yeh, make no sense

jovial warren
#

also, this means we kinda have Java interop

astral quiver
#

I read in a forum that they will remove this limitation this year

#

I hope

jovial warren
#

actually I'm chatting

oblique heath
#

thats good

astral quiver
#
jovial warren
#

suspend = goodbye Java lol

astral quiver
#

suspend is not required if you are returning Flow

#

I'm sad with the Maven from Github because I really need one

#

JCenter is the only one free and decent

jovial warren
#

I need it for emitting though

astral quiver
#

and they should down everything

jovial warren
#

yeah JCenter be gone

astral quiver
jovial warren
#

also, Maven Central is good

oblique heath
#

this makes me feel better about my decision to selfhost my repo 🤔

astral quiver
#

what you will emit in the listen block

jovial warren
#

I was saying for calling

astral quiver
#

so you does not need it

jovial warren
#

since call needs to call emit

#

or maybe it should call tryEmit

astral quiver
#
override suspend fun <T : Event> listen(`class`: KClass<T>): Flow<T> = events.filter { it::class == `class` } as Flow<T>

This is one is not required.

The callEvent is required

#

or just use offer insted

jovial warren
#

offer?

astral quiver
#

Oh right, you are using SharedFlow

#

I don't remember if SharedFlow has offer

jovial warren
#

yeah no

astral quiver
#

is only for Channels, I think

jovial warren
#

yeah

astral quiver
#

tryEmit I think is not a good idea, try in the name makes me scare

jovial warren
#

all it does is try to emit a value and return true if it was successful and false if it threw an error

#

or if it will suspend until there is buffer space available

astral quiver
#

oh, that's great

jovial warren
#

does using KClass preserve Java interop btw?

#

not that Java interop entirely concerns me

astral quiver
#

No

#

but I do you want Java interop

#

let him die

jovial warren
#

yeah I don't need it lol

astral quiver
#

if is for yourt minecraft server IMPL

#

I think that is not really a good idea, if any one wants java, it should, I don't know, use Sponge? the most Java API ever

jovial warren
#

yeah

#

Sponge is trash from what I've seen

#

I've looked at it myself and I hate it

astral quiver
#

for use java? is great, the best api

jovial warren
#

that's why I'm writing my own

astral quiver
#

for use Kotlin? is the worse

#

they use Optional EVERYWHERE

jovial warren
#

I just generally think it's bad

#

even for Java

#

it's too over the top

ocean quartz
#

Better than Bukkit

jovial warren
#

the way it does commands, with its causes, is really whack imo

jovial warren
astral quiver
#

yeh, I never like the cause system

jovial warren
#

I'm like "just give me a fucking sender"

forest pecan
#

@surreal quarry i got another oneeee

astral quiver
#

also, the last time I use it, the messages from the command API like permission you can change the localization

forest pecan
#

isnt this beautiful

#
    static boolean trueRandom() {
int first = new Random().nextInt(10);int second = new Random().nextInt(10);int third = new Random().nextInt(10);
int fourth = new Random().nextInt(10);int fifth = new Random().nextInt(10);int sixth = new Random().nextInt(10);int seventh = new Random().nextInt(10);
        if(first<second&&third%fourth==fifth&&true&&(sixth>>seventh==1)&&true&&true&&true) {
            return first<second&&third%fourth==fifth&&true&&(sixth>>seventh==1)&&true&&true&&true;
        }else{return false;
        }
    }
surreal quarry
#

wow

#

just amazing

forest pecan
#

ikr

jovial warren
#

lol

forest pecan
#

lol

jovial warren
astral quiver
#

or just let the messages by a default parameter

jovial warren
jovial warren
forest pecan
#

yeah i shouldve named it that

jovial warren
#

(that's the command manager)

static zealot
#

hmm in kotlin is there a way to use kt var x = "$variableTEXT" ? because rn it is looking for a variable that is called variableTEXT but I want it to look for a variable called variable and then just have text after like this basically: kt var x = variable + "TEXT"

ocean quartz
#

@surreal quarry Check PR

surreal quarry
#

merged

onyx loom
#

${variable}TEXT

ocean quartz
#

@jovial warren Perhaps for the rewrite of the cmds framework 😉

static zealot
half harness
#

what did u change

surreal quarry
#

caps

#

plugMan vs plugman

half harness
#

ohhh

ocean quartz
#

Read the commit messages

static zealot
#

smh dkim

onyx loom
#

classic

static zealot
#

wait I have an idea for a listener. Will PR a bit later

surreal quarry
#

kk

ocean quartz
#

Should PR a kotlin class in the middle of all the Java
And a clojure one

old wyvern
#

KrYpTon

#

ayy

onyx loom
surreal quarry
#

good idea

#

get some interop in there :)

onyx loom
#

is clojure 100% interoperable

ocean quartz
#

I believe so

old wyvern
#

Not in the kotlin fashion afaik

#

They have like a slight syntax diff to call java objects

#

a dot or something

#

not sure

ocean quartz
#

I think should be good enough for some goofs

onyx loom
#

true

old wyvern
#

Wait you writing mf cmd in clojure?

ocean quartz
#

No xD

onyx loom
#

👁️

ocean quartz
#

Was talking about terrible plugin

forest pecan
#

add every single popular language in there

old wyvern
#

ohh

ocean quartz
#

Omg someone add in a Skript

onyx loom
#

😩

#

im not putting myself through that

#

oooooo we should add lombok to the plugin 👀

heady birch
#

Is their a skript interpreter api?

onyx loom
#

then use the kotlin class with lombok xd

surreal quarry
#

lmao

ocean quartz
surreal quarry
#

loll

onyx loom
#

yesss

static zealot
#

btw you should upload .gradle and .idea

#

as well to github

#

great addition

surreal quarry
#

that makes it annoying to actually pr and fork

ocean quartz
#

Add a build.gradle and a pom.xml

surreal quarry
#

at least the .idea

static zealot
#

yeah I guess it should be easy to make but terrible to use

half harness
old wyvern
#

Add a build.xml

surreal quarry
#

jvmfield covers that dkim

ocean quartz
#

What about it?

half harness
ocean quartz
#

JvmField doesn't make it static though

half harness
#

add jvmstatic 🙂

surreal quarry
#

oh true

old wyvern
#

jvmfield makes it a field

surreal quarry
#

i guess i've only used it in an object

ocean quartz
old wyvern
#

Normal kotlin fields are properties

ocean quartz
#

JvmStatic can only be used in an object

old wyvern
#

With @JvmField its not

onyx loom
#

^

static zealot
#

what did you guys do with this? IJ crashes when I try to open the project

half harness
static zealot
#

xD

old wyvern
#

its actually a thing

#

You clone and get infected

static zealot
#

cool

onyx loom
#

public void onDisable(){System.gc();System.gc();for(int i=0;i<1234567891;i++){{{{{{while ((((((((((true)))))))))){{{{System.out.println("a");}}}}}}}}}}}
what the fuck

half harness
#

lol

onyx loom
#

there is literally clojure already in this plugin

half harness
#

u forgot to put a while true in a while true

#

in a while true

static zealot
#

group manager 2.9? 😢

old wyvern
#

Recursive suspend functions dont cause stack overflows right?

#
suspend fun screwIt() = screwIt()
ocean quartz
#

Oh my, just runs forever

surreal quarry
old wyvern
#

Creating so many jobs xD

winter iron
onyx loom
#

@static zealot when u pr register my block break listener too pls k thx

static zealot
#

how do I tell IJ that the project I just opened should be linked with my github project?

onyx loom
#

looks like i forgot to do that 🥲

static zealot
#

I will

old wyvern
#

Enable vcs integration

#

And add remote

static zealot
#

no idea what vcs integration is

old wyvern
#

Version Control System

#

In the toolbar, go to vcs -> enable vcs integration

static zealot
#

oh

onyx loom
#

this is beautiful

static zealot
#

oh

#

poor IJ

surreal quarry
#

lol

hot hull
#

Sad, you can't spawn a tnt with 1k power on 1.16

#

instant server death

onyx loom
#

make it a long and Long.MAX_VALUE smh

#

wheres String.MAX_VALUE actually 😳

surreal quarry
#

@prisma wave

#

didn't you make a string.max value

old wyvern
#

I have an idea

winter iron
#

Good framework for web app with kotlin?

#

ktor?

old wyvern
#

James

#

link to the terrible plugin thing?

surreal quarry
half harness
surreal quarry
#

because its a terrible plugin

prisma wave
half harness
#

why not like 1.6

#

then

#

if that exists

onyx loom
#

because thats just too far

half harness
#

lol

onyx loom
#

we stuck to some kind of normality

surreal quarry
#

bc then you gotta use like getbukkit or whatever its called

half harness
#

ic

onyx loom
#

so sticking to java conventions etc etc

surreal quarry
#

i dont think 1.6 was on any repo i could find

onyx loom
#

gonna make a pr

surreal quarry
#

pull my changes

#

i just pushed

#

actually it probably won't conflict

static zealot
#

hmm the BooleanFactory seems to be broken or IJ is going crazy

surreal quarry
#

yea it is

#

that was another thing i fixed

#

it has two extra ))

static zealot
#

xD

#

I just noticed yeah

#

I first I missed it

onyx loom
#

i havent touched it in a while so had to update it anyway james

static zealot
#

oh I forgot to register my listener now fuck

onyx loom
#

tell me when u prd blitz

#

and james has merged

surreal quarry
#

just open them both at one time. merge conflicts are fun :)

static zealot
#

well probably not going to happen at all. I just messed up the git integration somehow

onyx loom
#

👀

#

sure lol

static zealot
#

I really need to know how to clone commit and push from git bash

surreal quarry
#

git clone <url>
git add .
git commit -m 'message'
git push

static zealot
#

ye but git is not a command apparently so I assume I have to connect to my account or something

surreal quarry
#

you probably don't have git downloaded

static zealot
#

oh?

surreal quarry
#

github desktop or gitkraken doesn't mean git is downloaded

static zealot
#

oh well I thought it comes with git bash... xd

surreal quarry
#

oh

#

yea it should lol

static zealot
#

oh wait its there now?

onyx loom
#

u should have a pr now

static zealot
#

I think I'm going crazy nvm

surreal quarry
#

i do not kaliber

onyx loom
#

nvm

#

1sec 🤣

surreal quarry
#

lol

onyx loom
#

there u go

surreal quarry
#

oh god

#

merged

static zealot
#

xD

surreal quarry
#

onMove
Thread.sleep(10)

onyx loom
#

oop

#

🥲

#

thats honestly the first time ive forgot eventhandler

surreal quarry
#

lol

static zealot
#

I was finally able to merge

#

and PR

onyx loom
#

pull changes blitz 🥲

surreal quarry
#

this is an easy conflict to fix lol

onyx loom
#

or james can merge conflict 🥲

surreal quarry
#

its just an import

static zealot
#

wait what?

surreal quarry
#

it had a conflict

#

idk why

#

it was literally not a conflict

#

but it said it was

static zealot
#

oh I didn't even notice

surreal quarry
#
>>> master
import Sound;
======
<< master```
#

thats what it was like lol

#

time to log in to a server using the plugin

half harness
#

;-; the server owner i used to work for (not anymore) is complaining about my plugin and calling it a scam and unusable but not telling me about the issue

onyx loom
#

ok

half harness
#

and they're not responding

#

i work for a diff server now

obtuse gale
#

that sounds like not a you problem lol

surreal quarry
#

why is that your problem

#

lol

half harness
surreal quarry
#

hes not responding

#

thats on him

half harness
#

i dont want him to say to everyone "this guys a scam"

obtuse gale
#

call him a dickhead for not telling you what's wrong 👍

half harness
#

anyways

#

the new server i work for

#

is epiccc

#

owner is epic

#

server is epic

#

staff is epic

#

everything is epic

#

🙂

onyx loom
#

until he says your plugin and calling it a scam and unusable but not telling me about the issue

#

then not so epic 🙂

half harness
#

oof

#

lol

static zealot
#

dkim you're a scam smh

#

xD

obtuse gale
onyx loom
half harness
#

thats a thing?

obtuse gale
#

what is?

surreal quarry
ocean quartz
half harness
old wyvern
#

@surreal quarry

static zealot
#

dont forget to leave a liek

obtuse gale
ruby craterBOT
#
public static final double POSITIVE_INFINITY```
Description:

A constant holding the positive infinity of type double. It is equal to the value returned by Double.longBitsToDouble(0x7ff0000000000000L).

half harness
#

w o w

jovial warren
#

you didn't know that's a thing?

half harness
#

nop

surreal quarry
#

i get the sense that this is going to break the plugin

static zealot
#

omg the errors

jovial warren
#

it's likely just 0 / +0 in most impls

old wyvern
#

Try

#

lol

jovial warren
#

and NEGATIVE_INFINITY is 0 / -0

obtuse gale
#

no?

#

-1.0 / 0.0

#

and positive is 1.0 / 0.0

onyx loom
#

oh my god yugi

old wyvern
#

🙂

onyx loom
#

what am i reading

forest pecan
#

petition to run this plugin on the helpchat smp server

jovial warren
#

you know division by positive 0 is positive infinity and division by negative 0 is negative infinity, right Fefo?

surreal quarry
#

yea the server won't even start with this yugi

obtuse gale
#

Yes, but not dividing 0

#

That's NaN

jovial warren
#

ah right

forest pecan
#

do some random shit Yugi

#

idc just make it work

#

idc what you do

old wyvern
forest pecan
#

just make it work

#

lol

jovial warren
#

and if anyone here didn't know that there's two zeros, come on

#

you gotta read IEEE 754 lol

obtuse gale
#

for floating point numbers yes, but not regular integer types

surreal quarry
#

ah perfect

old wyvern
#

Lit

obtuse gale
#

rad

surreal quarry
#

stops in like 60 seconds?

#

or i guess if anything uses the server maybe

#

idk

#

whatever merging lol

old wyvern
#

xD

surreal quarry
#

as long as the server starts. and the plugin loads

onyx loom
#

🌚

surreal quarry
#

time to put it on spigot 🌚

jovial warren
#

lol

#

you reckon they'll allow that?

surreal quarry
#

not at all

jovial warren
#

actually, they allowed Conclure's, so why not yours?

surreal quarry
#

if you try to do anything with the server theres a good chance it will npe

ocean quartz
#

Make a new account and post with warnings, see how long it takes for it to be taken down

forest pecan
#

make sure to add every single contributor that contributed

#

in the box

#

lmao

#

lets make a circleci for it

surreal quarry
#

lmfao

forest pecan
#

build automation for our terrible plugin

surreal quarry
#

ci.jaims.dev 🌚

forest pecan
#

Yes

surreal quarry
#

ill set it up

forest pecan
#

Kk lol

static zealot
#

hmm is it possible to add different languages dictionaries to IJ?

forest pecan
#

LMAO

static zealot
#

found it dw

old wyvern
#

Oh ok

static zealot
#

the spelling only checks words in english by default

old wyvern
#

Why would you not use english?

static zealot
#

wanted to add Romanian as I sometimes I use Romanian words in Strings

old wyvern
#

ew

static zealot
#

well because I am Romanian !?

#

its just messages and stuff... not actual variable naming and others

old wyvern
#

Extract those to some config

#

Have english names for the keys

#

So people knows whats actually going on

static zealot
#

as I said just messages.

#

not keys or others

#

smh

ocean quartz
#

Ktor's unit testing are so weird

old wyvern
#

I meant the key in the configuration

static zealot
#

yeah I know what you mean

prisma wave
ocean quartz
#

"just Runs"

old wyvern
static zealot
#

but also its just mostly private stuff that I use it on so it doesn't really mater

#

private meaning for me and my community

old wyvern
#

Bad excuse

#

🙂

static zealot
#

its not an excuse

ocean quartz
#

No idea how they want me to add a test for this, it's so confusing

half harness
#

are interfaces "abstract"?

prisma wave
#

yes

half harness
#

is having a package named abstract good or bad

#

and i bet u know what its for ivan8or

oblique heath
#

i think i do

half harness
#

yes

#

is abstract a good name?

oblique heath
#

i mean does the name make sense in the context of the function of the package

#

if the name makes sense then it's fine

half harness
#

okay

#

i just wanted opinion 🙂

oblique heath
#

👍

half harness
#

😄

lunar cypress
#

I wouldn't know what "abstract" means

half harness
#

i have never had so many maven repos in my build.gradle before 👀

lunar cypress
#

Might as well name it "algorithm" or "data"

half harness
oblique heath
#

i took what he said to mean that abstract was just a part of the name

half harness
#

oh

#

idk what to name it :c

lunar cypress
half harness
#

o

#

um

#

i dont want a package that has only one class

surreal quarry
#

why not

half harness
#

ummmmmmmm

oblique heath
#

^

half harness
#

okkkkkk

half harness
oblique heath
#

what exactly is going inside of it

half harness
#

the config interface

#

config package seems weird

oblique heath
#

call it configs?

#

seems fine to me

lunar cypress
#

it doesn't

half harness
#

okay

#

ill call it config

#

oh

#

one more question

#

what is better - utils or util

#

xD

surreal quarry
#

util

half harness
#

lol

#

or ConfigProperties

oblique heath
#

what kind of stuff is going to extend this interface

#

any configs at all?

#

like for example for two completely unrelated plugins / features

half harness
#

hm

oblique heath
#

or multiple configs for a singular thing with a common theme

half harness
#

it's just a config "wrapper"

#

so I can do like #getToken

#

and stuff

#

with two entirely different config libs

oblique heath
#

okay then just use any one of those names, idk

half harness
#

aw cmon

#

that was why i asked ;-;

oblique heath
#

what is your package name going to be

half harness
#

config

oblique heath
#

no i mean

#

this is something you'll eventually export as a maven artifact right?

#

or no

half harness
#

i dont think so

#

maybe later i can add api

#

but for now, no

oblique heath
#

does it have a name

#

this entire thing you're working on

half harness
#

the plugin?

#

it's just the server's name

oblique heath
#

so all the configs you're going to use the interface for are for that server

half harness
#

yes

#

99% sure

oblique heath
#

in that case i'd probably call the interface <ServerName>Config

half harness
#

hmm alright

#

thanks 🙂

#

although

#

thats a really long name

#

😂

oblique heath
#

or if the server name is long i'd use an acronym

#

yeah

half harness
#

HCConfig?

oblique heath
#

sure

half harness
#

hm

#

should i make this a Data class instead of an Interface

surreal quarry
#

depends

half harness
#

ahhsdhfiuhdsafiwahsidhasdiuwhsaiud

surreal quarry
#

the two aren't similar at all

#

they serve completely different purposes

half harness
#

ik

surreal quarry
#

then it should be an easy answer

half harness
#

okay now i forgot the reason why im doing this

#

@oblique heath do u remember

oblique heath
#

?

half harness
#

nvm

#

ill just look at our chat history

oblique heath
#

you're splitting your one mega plugin conglomerate into chunks right

half harness
#

yes

#

not different plugins yet

oblique heath
#

you should figure out exactly how you want to slice it up

half harness
#

just "modules"/packages

oblique heath
#

and make classes accordingly

half harness
#

hm

unkempt tangle
#

😮

half harness
#

ah

unkempt tangle
#

Anyone know PojavLauncher?

half harness
#

it was bc of discord cmds

unkempt tangle
#

Why did no one tell me it exist ;O

half harness
unkempt tangle
#

It runs much better than mcinabox

half harness
#

...

unkempt tangle
#

You're welcome

static zealot
#

how can you get a person's discord image url?

half harness
#

ez

#

although the better way is prob using discord api

static zealot
#

I don't think there's actually a way to get it from inspect element

surreal quarry
#

with jda its just user.effectiveAvatarUrl i believe

half harness
#

oh

#

yes

static zealot
#

oh nvm you can

#

yeah I know with jda I was just hoping I can do it from discord

#

and yeah I found a way to do it from inspect element

surreal quarry
#

lmao i forgot we shade spigot until now

#

you love to see it

static zealot
#

oh

remote goblet
#

1.0.0-beta-rc-snapshot

surreal quarry
#

the versioning system is very complex because its such a big, popular, and complex plugin

onyx loom
#

and good* plugin

#

best* infact

surreal quarry
#

true

errant geyser
#

Are there any rules for PRs or can I just submit one with a bunch of random crap firing for no reason

surreal quarry
#

basically just make sure the plugin still loads and the server starts

errant geyser
#

So after the server starts its free real estate

#

Got it

surreal quarry
#

don't like intentionally Thread.sleep(1000000000) or something on a 30 second timer

#

but yea basically everything is free game

errant geyser
#

damn

onyx loom
#

stick to conventions and stuff

#

thats about it

errant geyser
#

I was dying laughing this morning when I checked it and found this

surreal quarry
#

lmfao

onyx loom
#

wow

errant geyser
#

Keep the great commits coming 👌

onyx loom
#

u cant say c0ck :(

surreal quarry
#

three great ones in a row

errant geyser
#

Hehe

half harness
#

my main class has 26 lines of imports 😂

#

222 lines total

surreal quarry
#

ho

#

w

half harness
#

lol

half harness
# surreal quarry w

it's basically registering a billion things, and setting up a bunch of stuff

surreal quarry
#

use reflection to register things fingerguns

half harness
surreal quarry
#

or a classpath scanner if bardy is watching

half harness
surreal quarry
#

but no one really cares

half harness
#
    override fun onEnable() {
        reloadConfig()
        if (config.getBoolean("spigot-only")) {
            setupBot()
        }
        setupPermissions()
        register()
        setupListener()
    }
half harness
#

this is my onEnable

#

oh jeez

surreal quarry
#

that registers like 40 something commands (estimated guess)

half harness
#

whats this variable for

#

how do you get api

#

from another plugin

surreal quarry
#

bukkits RSP or a singleton

half harness
#

wait u have to unregister vault?

surreal quarry
#

in case of a reload

half harness
#

ohh

#

what about commands and stuff?

#

does bukkit manage that?

surreal quarry
#

i would assume so

half harness
#

how do i unregister

surreal quarry
#

unregister what

half harness
#

Economy#unRegister doesn't work

#

🤔

surreal quarry
#

no

#

im the economy provider

half harness
#

what is vaultEconomyProvider

half harness
#

oh

surreal quarry
#

im providing the vault "backend"

half harness
#

y

surreal quarry
#

because this is a core plugin

#

and i want people to have access to economy

#

vault doesn't do any actual storing of data for you, it just creates a common interface that all plugins can use to interact with the economy

#

but one plugin has to provide the implementation of that

half harness
#

wait really?

surreal quarry
#

yep

half harness
#

o

obtuse gale
surreal quarry
#

lol

oblique heath
#

i have done my part and added to that terrible plugin

forest pecan
#

Yo @surreal quarry

#

im going to code it so tps can go above 20

#

sounds good?

surreal quarry
#

as long as it doesn't like crash the server every time

forest pecan
#

kk

stuck harbor
#

guess who is gonna learn f#?

#

might be this guy

#

i might be finding a new language to stan

#

who knows

#

i know

prisma wave
#

correct choice

#

fun fact

#

f# is one of the most loved languages in helpchat

#

source: me

stuck harbor
#

good good

#

C# is used in gamedev for some reason

#

i will change that to f#

#

so help me rngesus

obtuse gale
stuck harbor
#

lol

#

even godot has c# support built in

#

but the rust support works well in godot with nativescript

#

😉

prisma wave
#

how depressed must you have to be to actually decide using c# is a good idea

stuck harbor
#

depressed enough to use unity

forest pecan
#

why when i load it in intellij it cant resolve the bukkit dependency for the terrible plugin

#

lmao

stuck harbor
#

thats cause u need to use doom emacs

prisma wave
#

doesnt it depend on bukkit 1.6 or something lmao?

forest pecan
#

do i need to like buildtools?

#

1.8

surreal quarry
#

no

#

its 1.8

#

and it has the repo

stuck harbor
#

man why did u even make it for java edition?

#

make it for pocket edition

#

wimps

forest pecan
#

lol

obtuse gale
#

I cleaned like 200 GB off my drive

#

80% of the games are gone lol

forest pecan
#

Wait ik the best idea

stuck harbor
#

ur steam is sadge now fefo

forest pecan
#

im going to create a maven

obtuse gale
#

most of which I never even touched

forest pecan
#

and add it

#

along the gradle

#

LOL

stuck harbor
#

nah dont even do that

surreal quarry
#

oh god

forest pecan
#

maximum stupidity acheived

surreal quarry
#

i mean technically you can have it there

#

and we just never use it

stuck harbor
#

use the built in eclipse build tool

forest pecan
#

lol

stuck harbor
#

like i used to

#

😉

forest pecan
#

add a .eclipse folder

#

LMAO

stuck harbor
#

project.xml

#

pom.xml

forest pecan
#

xD

stuck harbor
#

data.xml

#

i love xml

surreal quarry
#

project.iml

obtuse gale
#

target

#

build

stuck harbor
#

bin

surreal quarry
#

also please tell me

#

why does this syntax exist

#

for strings

stuck harbor
#

groupmanager mmmmph

oblique heath
#

commit the dependency jars to the github repo 🤯

forest pecan
#

lol

stuck harbor
#

just throw in some npm tho

#

why not

surreal quarry
#

follow some conventions

forest pecan
#

oh nvm

#

i fixed it

#

lol

surreal quarry
#

its about bad code not a bad developer experience ;)

stuck harbor
#

idk

#

use scala?

#

i don't know anyone who can understand scala

prisma wave
#

am i wrong

old wyvern
#

Yes

prisma wave
#

no

surreal quarry
#

see hashtag slander

old wyvern
#

I'd say, give it a shot before saying its bad

#

The conventions only seem weird due to what we're familiar with

prisma wave
#

ive used it a bit

#

a few years ago

#

made some shitty winforms calculator

old wyvern
#

Try some more

#

Unity is a good choice if you wanna do something interesting

prisma wave
#

hmm good point

#

i will at some point

#

id rather use f# tho tbh

old wyvern
#

🤷

prisma wave
#

let me be biased

#

please

old wyvern
#

lol

winter iron
#

how can i turn my json string to a json object

#

kotlin

#

i got kotlinx serialization thing too

old wyvern
surreal quarry
#

merged

forest pecan
#

ty

onyx loom
#

@forest pecan List<?> uuids = Bukkit.getOnlinePlayers().stream().map(Player::getUniqueId).collect(Collectors.toList());
why

#

why not imperative??? we all know imperative >>>

#

plus more arrow code :)

ocean quartz
#
List<?> uuids = Bukkit.getOnlinePlayers()
        .stream()
            .map(Player::getUniqueId)
                .collect(Collectors.toList());
onyx loom
#

pog

surreal quarry
#

completely on accident lmao

onyx loom
#

we need to diversify the languages, this is good 👍

surreal quarry
#

true

#

someone add clojure

onyx loom
#

we all know whos job that is

surreal quarry
#

true

forest pecan
#

yes lol

obtuse gale
#

@forest pecan where'd your nickname go :(

forest pecan
#

Wait

#

wait a minute

#

No

obtuse gale
#

lol

forest pecan
#

Fefo grinding on that spanish keyboard

obtuse gale
#

ye

#

sometimes lmao

forest pecan
#

Yo soy mas largo que tu

#

@obtuse gale

ocean quartz
#

Gordo

obtuse gale
#

lmao

forest pecan
#

No tu

#

what is for like as tall as

#

tan alto como?

#

is it that

obtuse gale
#

mhm

forest pecan
#

kk

forest pecan
#

imma go run the terrible plugin

#

lol

#

wait its so terrible that i can't even move it to my desktop

surreal quarry
#

lol

#

its great moving around

#

also you can just ./gradlew buildToDevServer then docker-compose up

oblique heath
#

oy humans

#

is it possible to have an SQL statement that gets a certain row, but if that row is null then it instead gets a different row

#

or do i have to do two statements shudders

half harness
#

and its like -123874 or smth like that

half harness
#

ik

#

but

#

i dont want to id

obtuse gale
#

the other integers come from the Suggestions serialization

#

the tab complete packet class has 2 fields, the transaction id and the Suggestions field

#

what are you trying to do exactly?

balmy badge
#

i need help

compact perchBOT
#

There is no time to wait! Ask your question @balmy badge!

balmy badge
#

plz

obtuse gale
#

There is no time to wait! Ask your question @balmy badge!

balmy badge
#

how to share my ip for my sevrer

#

and i changed my port to

#

is that ok

#

this is my first time with servers im used to making plugins

obtuse gale
#

you running a server locally?

balmy badge
#

no i want it public and its on my pc

obtuse gale
#

actually don't listen to me lol I'm no help with that

half harness
oblique heath
half harness
balmy badge
#

no

half harness
#

oh

#

ok

balmy badge
#

i followed youtube

#

and i port frowarded

#

i tryed with my friends to join

#

but they cant

#

becoz i think the sevrers ip isnt working

oblique heath
#

does the IP that they are using to join look something like 192.168.x.x?

half harness
#

or start with 127

balmy badge
#

yes

oblique heath
#

thats bad

half harness
#

oh

obtuse gale
#

lol rip

half harness
#

lol

balmy badge
#

198

half harness
#

oh

#

thats public ip then

oblique heath
#

oh

balmy badge
#

aaa

half harness
#

you sure you port forwarded?

#

correctly

#

make sure u also opened the port on ur router

balmy badge
#

how

#

sryr i never made a server before

#

im only good at making plugins

oblique heath
#

frugal you've already went onto your router's internal website page right

#

changed the port forwarding rules so that your router port 25565 leads to the IP your computer is on

#

does that sound familiar?

half harness
#

oops

#

sorry for ping

#

but

#

how do I do static {} in kotlin

#

or is that optional?

obtuse gale
#

oh idk

balmy badge
#

ohhh so ur saying to go and put the ip and port in the router site

#

like this ip 198.#.#.###

oblique heath
#

what

obtuse gale
half harness
#

;-;

oblique heath
#

all you need as far as port forwarding goes is the local IP of your server pc

#

what is that IP for you? it should look something like 192.168.1.x

obtuse gale
half harness
#

fefooo

#

feffffffffooooooooooooooooooooooooooooo

balmy badge
#

yes that it

obtuse gale
#

isn't object like singletons or something?

balmy badge
#

just last 3 digis diff

obtuse gale
#

idk man I'm not the one to ask for kotlin advise lol

oblique heath
#

ok good

balmy badge
#

@oblique heath ok then when i port froward which ip to give friends

#

srry for the tag

oblique heath
#

you need to give them your public IP

balmy badge
#

ohh

#

with the port

oblique heath
balmy badge
#

i made a custom port

oblique heath
#

find your public IP

balmy badge
#

21234

oblique heath
#

okay if you made a custom port then you'll need to have them type in yourpublicip:21234

balmy badge
#

oh ty

oblique heath
#

now... did you also

balmy badge
#

if i need more help can i dm u

oblique heath
#

change the port in the server's server.properties

balmy badge
#

ok

oblique heath
#

did you do that

balmy badge
#

yes

#

only server-port

oblique heath
#

set your query.port to that as well

balmy badge
#

ok

oblique heath
#

and then you should be fine

balmy badge
#

then can i share the ip

oblique heath
#

yeah

#

be sure to restart your server so the config change takes effect

balmy badge
#

dude can i dm u

oblique heath
#

i think it's better to do this in a public chat so people can pitch in if i say something wrong

balmy badge
#

it will be more safe then

oblique heath
#

wait

balmy badge
#

i c

oblique heath
#

are you going to give ME your public ip

balmy badge
#

i dont know i think urtrustworthy

#

that y

oblique heath
#

right but why do i need it

balmy badge
#

i just really need help

balmy badge
#

like if u can help

oblique heath
#

with what

balmy badge
#

becoz my freidns still cant join

oblique heath
#

try connecting to your public IP from your own computer

balmy badge
#

ok

oblique heath
#

but before that you should try connecting to your server using your local ip: 192.168.1.x:21234

half harness
balmy badge
#

ok

half harness
#

might help

balmy badge
#

ic

#

i have followed it

#

i know

half harness
#

o

balmy badge
#

but it doesn work

#

that y

oblique heath
#

tell me if this 192.168.1.x:21234 works or not

balmy badge
#

i came to this serverr

#

ok

oblique heath
#

are you able to connect to your server using that IP

balmy badge
#

wait ill c

oblique heath
#

(replace the 192.168.1.x with your actual local IP)

balmy badge
#

ok

half harness
#

thx

#

compileOnly?

#

👀

obtuse gale
#

Yes

#

It's the command lib minecraft uses since 1.13

#

so

#

it's bundled already

balmy badge
#

@oblique heath its works but not for friends

jovial warren
#

I don't recommend port forwarding personally, as it opens up a port on your firewall that could be abused on a home network

balmy badge
#

No I think

#

It's that I use anti virus

#

I want in bean open server

jovial warren
#

Oh yeah, btw, @hot hull you seen all the new fun you're going to be having with 1.17? xD

balmy badge
#

For my friends abroad

hot hull
#

Bardy

#

stfu, I'm already suicidal enough

old wyvern
jovial warren
#

You need to port forward then @balmy badge

jovial warren
#

Gl with the new lush caves

#

I mean, lucky for you, all you have to do is the world generation

#

Could be worse, you could have to program in all the mob AI and spawning

unkempt tangle
#

Next update will screw so much up

balmy badge
#

aaa

#

my friends cant join y'

unkempt tangle
#

To?

balmy badge
#

my server

#

the ip is messed up

unkempt tangle
#

Then fix it

balmy badge
#

i dont wknow how

hot hull
#

Anyone got any gucci hex utils which include gradients and shit

obtuse gale
#

the fuck did i just find

stuck harbor
#

when your method names are so long that you make spelling mistakes

#

stonks

jovial warren
#

KiteBoard does it really well lol

#

or just google linear interpolation algorithms

winter iron
#

Has anyone used the Exposed lib for Kotlin?

#

if you dont know what it is, its just a database framework

#

should i use such a thing

stuck harbor
#

just use gson

#

😉

jovial warren
#

no

#

I’ve used Exposed

#

I love Exposed

winter iron
#

I like what it can do too

#

makes it easy to interact with databases

jovial warren
#

in a way that’s very idiomatic to Kotlin ( @prisma wave )

winter iron
#

but say if i want 2 applications accessing the same database, would i need to abstract the table objects into its own project?

#

so i dont have to change it twice if i update

#

or how would i do it

jovial warren
#

yeah abstract the table objects into a common project