#development

1 messages · Page 101 of 1

robust flower
#

how do I create a await function for Coroutines? I need a way to manually trigger that continuation later, once a specific entity has been killed I'll trigger the continuation

brittle thunder
#

Coroutines already have an await function

robust flower
#

not await for a coroutine, but make the coroutine suspend until I want to resume it later, if you get what I'm saying

brittle thunder
#

You can use a completabledefer

#
val defer = CompletableDeferred<Unit>()

CoroutineScope(Dispatchers.IO).launch {
    println("a")
    defer.await(); // waits till defer#complete is called
    println("b");
}
println("c");
defer.complete(Unit)
#

@robust flower

robust flower
#

hmm, I'll try this if my experiment using suspendCancellableCoroutine doesn't work as I expect

icy shadow
#

cringe

#

Do you know why?

robust flower
icy shadow
#

Kinda makes sense

#

Zip is traditionally for lists but I suppose you could extend the definition

formal crane
#

How can i send a player to a server from the lobby? (in a plugin)

formal crane
#

do i need anything on the bungee for that?

hoary scarab
#

A player lol

#

Can't use PluginMessaging without a player

sudden sand
#

make a for loop of all the json objects and store in a list all the playerName key of the json object

sudden sand
formal crane
#

I tried this but it just doesnt work:

                out.writeUTF("Connect");
                out.writeUTF("minetopia");
                p.sendPluginMessage(MelonNetworkCore.get(), "BungeeCord", out.toByteArray());```
#

no errors etc

#

oh it does work

#

sorry about that

topaz gust
#

Get the char.length of the “Heyyy” in this case and take it away from a set value

sage thorn
#

hey, how can i effectively create mysql table(s) on first onEnable?

robust flower
#

What is the best way of tagging a mob for future identification pre-1.14 (yes I know, I also miss PDC a lot)?

#

??? nice barry

robust flower
sage thorn
#

30 is not a real number 😄

robust flower
#

there's no other way mate, accept your fate and embrace the power of IF NOT EXISTS

sage thorn
#

😄 thanks ❤️

wintry grove
#

ok so I'm going crazy, any docs, guides, links for making multiplayer using a fabric mod? like essential one, you are on a singleplayer world and u invite your friends, then badabing badabum they are in, or custom servers?

lyric gyro
#

Hit Escape -> Open to LAN

mental cypress
#

Emily, any chance you've worked on updating that old system for splitting components to use newer stuff in Adventure yet?

lyric gyro
#

Nope

#

Haha

#

sorry 😅

#

I might look into it right now tbh, I'm kinda free so

high edge
#

useless

lyric gyro
mental cypress
#

No worries, but yeah, would be nice.

wintry grove
#

forget so

#

time to google even more

lyric gyro
#

????

#

tf you mean

#

"custom server"? what does that even mean?

#

I could help tho, I know the fabric ecosystem quite well

#

Guess I won't ¯_(ツ)_/¯

topaz gust
#

How many spaces it would be if your third option was just nothing so “”

wintry grove
lyric gyro
#

waits a fricking sec

wintry grove
#

ok so what I was saying with custom server is like that the mod makes the client join a server or so, get it?

lyric gyro
#

what

wintry grove
#

just

lyric gyro
#

the mod makes the client join a server
I don't understand what you're trying to say with this lmao

wintry grove
#

I want to make player join other player world

#

dont know why I went with that explanation

#

lol

lyric gyro
#

so like... a multiplayer server?

#

I have no clue what you're trying to say ngl

icy shadow
shell moon
#

lmao

lyric gyro
#

either store the UUID yourself, or dive into nms to use NBT if you want to actually tag the entity yourself to just "look it up" on itself

proud pebble
#
UUID:
  Playerdata:
    currentInv
    Box:
      CurrentPage
      Arraylist<Itemstacks> #Stored in the yml

Im currently trying to do this and i keep confusing myself trying to do this

#

also im not sure where to put the hashmap that has this data

wintry grove
proud pebble
#

currently just storing the hashmap in my main class but not sure if i should keep it in another class

warm steppe
#

mysql 😄

#

sorry im stupid, i somehow switched servers by pressing some keys idk

graceful juniper
#

Its really funky, you basically need to know the pixels of each letter and calculate the distance from there

#

Sadly idk how to do it but thats the general idea

#

No idea if this will work but heres an idea:

Have a distance set from the far left to the word on the right. (int)
Check how many characters are on the word on the left (int)

take away the amount of characters from the distance and that maybe the amount of spaces you need.

Again in my head this will look janky but it might work?

graceful juniper
#

That is centered chat messages, but it does go into pixels

tight junco
#

that enum class is fucking awful holy shit

dusky harness
#

note that if you have a custom resource pack with a custom font it might/will mess things up

pulsar ferry
#

Or if the client adjusts their chat size lol

tight junco
#

perfectly aligning something in the centre is almost never a possibility

graceful juniper
graceful juniper
graceful juniper
#

Yeah thats what I feared, you'll just have to figure out pixels if you want it perfectly

#

np 😓

#

You can go off that enum provided in the thread (don't have to really use THAT enum but yk go off it) and do it that way

#

set an amount of pixels you want in a lore, then go off the enum and do the looping through characters again

forest jay
#

Hi! I am sending a message to my bungeecord plugin on the proxy, and it only responds the second time the message is sent. Here is my code: https://paste.helpch.at/nuverekegi.cs. The functions are split between spigot and bungeecord, and the messages are received, just on the second time being sent.

lyric gyro
tacit belfry
#

Would it be possible to add pathfinder goals to an entity after spawn?

steady ingot
#

@stoic lance , @finite terrace sent this handy .yml file for getting the number of pixels for each character. @finite terrace, if you want this removed, drop me a dm, and sorry for posting. Jush thought that this is really neat.

#

Wait, no perms to attach files :/

finite terrace
#

: )

#

y'all are welcome to use it

#

Note that a space is 4 pixels and a bold space is 5 pixels. With that knowledge, you can create pixel perfect formatting.

lyric gyro
#

watch that break with a resource pack 👀

finite terrace
#

it will 100%

steady ingot
#

True

lyric gyro
#

And it sucks

#

Minecraft pls

finite terrace
#

if someone uses a custom font, it will not function

#

well it will function, it just wont look pixel perfect.

lyric gyro
#

If only it could be requested to the client ugh

reef star
#

PS C:\Users\USER\Desktop\ced\CrashClaim-master> mvn clean build
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------------< net.crashcraft:CrashClaim >----------------------
[INFO] Building CrashClaim 1.0.18-dev
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.205 s
[INFO] Finished at: 2021-11-16T10:11:13+06:00
[INFO] ------------------------------------------------------------------------
[ERROR] Unknown lifecycle phase "build". You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy. -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/LifecyclePhaseNotFoundException
PS C:\Users\USER\Desktop\ced\CrashClaim-master>

#

anyone knows whats the issue here

lyric gyro
#

build is not a valid task

#

You probably want to use package

reef star
#

still didnt work

sudden sand
#

@reef star maven clean install

muted trench
#

Anyone know what packet I need to use to make a player invis using potions?
If you know please @ me!!!

dense drift
#

give them a potion .. ?

muted trench
#

I need it for some players only.

#

I tried giving a potion and sending a PacketPlayOutRemoveEntityEffect

#

but it does nothing

#

I have this feeling that EntityEffect doesn't actually give the effect

#

since sending that packet only gives me the stupid icon

#

not actual invis

reef star
# sudden sand <@!741487580931162124> maven clean install

PS C:\Users\USER\Desktop\ced\CrashClaim-master> mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------------< net.crashcraft:CrashClaim >----------------------
[INFO] Building CrashClaim 1.0.18-dev
[INFO] --------------------------------[ jar ]---------------------------------
[WARNING] The POM for net.crashcraft:CrashPayment:jar:1.0.1 is missing, no dependency information available
[WARNING] The POM for dev.whip:CrashUtils:jar:1.6.1 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 7.847 s
[INFO] Finished at: 2021-11-16T13:05:42+06:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project CrashClaim: Could not resolve dependencies for project net.crashcraft:CrashClaim:jar:1.0.18-dev: The following artifacts could not be resolved: net.crashcraft:CrashPayment:jar:1.0.1, dev.whip:CrashUtils:jar:1.6.1: net.crashcraft:CrashPayment:jar:1.0.1 was not found in https://repo.codemc.io/repository/maven-snapshots/ during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of codemc-snapshots has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
PS C:\Users\USER\Desktop\ced\CrashClaim-master>

sharp cove
#

Hey guys, Its possible to connect github to a project right? So when you update or save a file the repo on the github page does the same?

#

Or is that not how it works?

proud pebble
#

thats were commit and push in git comes in

muted trench
lyric gyro
#

Why are you using packets for invisibility tho?

#

When you can just do player.addEffext

sharp cove
#

now i know where i need to be

finite terrace
#

👍

muted trench
#

Any ideas on how to get the PacketPlayOutEntityMetadata packet with the sender being a Client?

#

As you can see it isn't listed under play client

#

Which makes sense.

#

Is it a bug in ProtocolLib or am I missing something?

#

Please @ me if you have a solution

heavy wadi
#

What's the most efficient way to reduce damage certain players take?
Listen to the EntityDamageEvent and then what? Check if the damaged player has certain metadata or certain data in their PDC? Or is it better to always have a cached map ready that contains player uuid + damage modifier?

high edge
#

yikes

#

yikes

brittle thunder
#

daily online time?

#

as in server uptime? or player play-time per day?

#

on logout store (date -> playtime) or (date -> login & logout timestamp) as required

#

Then when you need the playtime for a day, fetch all playtimes from that date for that player and sum it up

#

or you could store it summed up if you dont have any use for the individual time periods

#

rdb with following columns => player_uuid, date, playtime

#

You're tracking the date

#

You can simply fetch the one for the day you need

#

There is no reseting

plucky delta
#

Hello, I'm trying to make a custom work bench but like most of the events dont work, like InventoryInteractEvent or InventoryMoveItemEvent, it just does nothin, debug messages dont work, like nothing works, I went from paper 1.12.2 to spigot 1.12.2 and that did nothing aswell.

shell moon
#

I want to make something like /command subcommand args1 args2

#

How would i get the correct space between args1 and args2

#

since args in public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { is splitted using \s+ i guess

#

i know i can simply String.join(" ",args) but t hat simply adds a space between, but the real command has more than 1 space

#

Listening to player command pre process event is not an option

proud pebble
#

also inventorydragevent

hard bobcat
#

Could someone help me with this error please

#

looking at it now it seems like its cus the player isn't even loaded in yet

#

woops

lyric gyro
#

yeah you might want to use PlayerJoinEvent instead

hard bobcat
#

Oh i was using playerloginevent lol

#

that should fix everything, thanks

lyric gyro
#

yw :)

hard bobcat
#

to think i was stuck on that for a few hours lol

#

And i didn't even see that the player wasn't loaded in

sterile hinge
#

So you want someone to fix your problems rather than actually just compiling?

void orchid
sterile hinge
#

But someone else would probably get the same result

void orchid
rugged bane
wheat carbon
#

jitpack sucks

rugged bane
#

any good alternatives?

wheat carbon
#

self hosting

rugged bane
#

apart from self hosting

wheat carbon
#

maven central

rugged bane
#

Is it easy set-up?

wheat carbon
#

once you have approval I imagine the process of deploying is identical to any other repo

#

approval is gotten by applying on their jira or something

#

don't believe it's overly hard

#

pretty sure users in here have gone through the process

rugged bane
#

I just wanna be able to easily let people compile my plugins aha

wheat carbon
#

yeah central is the way to go for that

broken elbow
#

Matt has done it for example

rugged bane
#

With gradle, can i reference another lib

wheat carbon
#

wym

rugged bane
#

like with maven you can install and use the same lib in another place

wheat carbon
#

not following

#

are you talking about the local maven repo?

rugged bane
#

ye

wheat carbon
#

maven local is very anti os

#

I don't recommend using it in any public projects

#

but gradle can use maven local too

#

it doesn't save downloaded dependencies to the local maven repo like maven does though, gradle has its own caches

rugged bane
#

Oh is it, then will have to try use maven local, just want it to be easy to compile for people

wheat carbon
#

maven local makes it the opposite of easy

#

it's anti open source

rugged bane
#

i meant maven repo

#

i got a scammer on the phone, distracting me

wheat carbon
#

is this for nms?

rugged bane
#

no

wheat carbon
#

yeah deploy them to a public repo

#

don't depend on them through maven local

#

honestly recommend just self hosting

#

it's not hard

rugged bane
#

But I fear the burden of maintaining

wheat carbon
#

there's nothing to maintain

#

you don't have any obligation to maintain your project regardless of where it's uploaded

rugged bane
#

thats true

#

What do I need to google for self hosting it

wheat carbon
#

reposilite

steady ingot
#

If I self host on my machine, do I have to keep my machine on at all times?

dense drift
#

Yes?

wintry grove
#

is there any list of all 1.17 bukkit events?

cinder forum
#

spigot javadocs

marble nimbus
#

does Spigot/Paper/Bukkit have some type of Global Listener? aka an Event that gets triggered no matter what Event gets triggered?

dense drift
#

no

marble nimbus
#

hm okay, another question when having a public abstract class Trigger<T extends Event> { how would I access the value that was passed to T

graceful hedge
graceful hedge
#

Types are erased unless you make them not being erased

#

But if you want the type, maybe use a TypeToken or Class or smtng

lyric gyro
#

Easiest is to just require Class<T> in the constructor tbh

marble nimbus
#

is it possible to prevent git from trying to push gradle checksum and md5 files

dense drift
#

add **/*.md5 to .gitignore ?

lyric gyro
#

yeah that just sounds like you have a misconfigured .gitignore lol

formal crane
#

How can i check if the egg(a chicken egg) used to spawn the chicken has a customname?

dense drift
#

doesn't the entity take the item's name?

formal crane
#

it doesnt apperantly

lyric gyro
#

it.. does?

light wraith
#

anybody can help me please?

#

Im stuck on creating custom commands using playercommandpreprocessor event

#

I wanna do command can change in config.yml file

leaden sinew
lyric gyro
#

oh right

marble nimbus
#

is anybody familiar with Sponge's Configurate? I am having an issue and they are not responding for the past 2 days

lyric gyro
#

I mean they did say it's a bug

marble nimbus
#

they said likely, but I am sure that if its a real bug someone would've noticed it :/ so I am thinking there might be a different solution

lyric gyro
#

Can't you just use the boxed type? Boolean.class instead of the primitive type class

marble nimbus
#

Boolean.class does nothing, it never adds anything to the Config

lyric gyro
#

Hm

marble nimbus
#

let me try again tho

#

if it doesn't work looks like i have to use 0 and 1 xD

#

I have questions... It suddenly works :/

graceful hedge
#

🥲

lyric gyro
#

lol

wintry grove
#

soooooo

#

anyone knows how to use authlib :)

lyric gyro
#

for?

wintry grove
lyric gyro
#

let me ask again

#

for what?

#

specifics

wintry grove
# lyric gyro for what?

I'm working on some cloud system for some of my projects, and I need to authenticate the players that join and so

#

happy? suprakekw

lyric gyro
#

why are you hitting reply to my messages when there's absolutely no one else in the conversation?

wintry grove
#

now will stop

lyric gyro
#

please

wintry grove
#

so?

lyric gyro
#

what do you need to authenticate against what? I still have no clue what is it you're trying to achieve really, and how does authlib fit in this

#

because authlib is kinda very minecraft specific, not just some abstract authentication library

wintry grove
#

then what should I use for?

#

its for making sure cracked accs cant join network

#

and no minecraft cant do that work in the way I want

lyric gyro
#

how not?

#

online_mode: true too weak?

wintry grove
#

when user join network, stats will be provided

#

and I dont want to have cracked accs on

#

so using auth, I check if cracked acc or not

#

and if not, I give back stats

pulsar ferry
#

I mean online-mode: true will prevent cracked accounts already

steady ingot
#

Not always true

#

Servers with proxies will have online-mode: false

wintry grove
#

just main menu stats

#

gotcha?

pulsar ferry
wintry grove
#

also sorry for being rude, I'm tired and I want to have the base of this done asap

#

so anyone knows what I shoud use?

lyric gyro
#

Any self-respectable "auth login" plugin will make it so Player::getUniqueId() returns the ""true"" UUID; so if they're logged into an account it'll be the actual UUID, and if not it'll be the offline mode UUID
I still don't understand if you're trying to tie this to Minecraft's authentication and/or the player's auth status or is something completely irrelevant to both

wintry grove
#

but

#

I only have the username, not the Player Instance

lyric gyro
#

only the username?

#

just the username?

wintry grove
#

yes?

leaden sinew
#

just the username

lyric gyro
#

there's literally no way in hell you can do anything with just the username

wintry grove
#

the client side mod will send data to cloud for auth and get his stats

#

thats not what I really meant to say lel

lyric gyro
#

...

pure crater
#

you can disguise your username

lyric gyro
#

okay

pure crater
#

lol

lyric gyro
#

go answer someone else's questions vaguely

wintry grove
#

._.

#

ohhh now I get it

#

pretty much tired and stupid

#

stupid as fuck

#

thx for making me realize thats not I want to use

leaden sinew
#

Oh yeah? If you really get it explain it backwards and in Australian

lyric gyro
#

jesus

leaden sinew
#

H

wintry grove
#

ok so forget that

#

Imma just use players UUID for checking if offline mode and also getting data

#

but is it posible to check if a player's UUID is offline mode and if it is posible how?

pulsar ferry
#

I could be wrong but iirc online UUID are v4 while offline are v3

wheat carbon
#

that's true

#

but it's not a reliable method

#

or so I've heard

#

I don't actually know why it's not reliable, but everytime v4/v3 comes up someone says it isn't reliable

#

afaik people can't generate their own uuids

#

the server generates the uuid for them based on their username

#

so I have no clue why that's not a reliable way of determining offline/online

steady ingot
#

That being said, the easiest solution is to not support legacy versionsn.

wheat carbon
#

idc about pings

#

what versions are you talking about specifically?

steady ingot
#

1.12 and back iirc

wheat carbon
#

i see

#

I’m not 100% convinced that’s right

#

I swear this trick has been around longer than 1.12

#

not doubting that it wasn’t always the case, just not sure it was 1.12

steady ingot
#

Maybe. I don't know if v4 was implemented before 1.13 to the best of my knowledge

wheat carbon
#

thing is it’s not like our uuids have changed

lyric gyro
#

That's not true at all yeah

wheat carbon
#

uuids have been around longer than 1.12 and yet my uuid was still v4 prior to 1.12

steady ingot
#

That's true

lyric gyro
#

I mean UUIDs assigned by Mojang are guaranteed to be v4, they are random generated, also known as: v4
And "offline mode" UUIDs are guaranteed to be v3, because they are "named", they're based on the name, not random, not time-based generated

wheat carbon
#

And "offline mode" UUIDs are guaranteed to be v3, because they are "named", they're based on the name, not random, not time-based generated
no, they're not guaranteed

#

there's no guarantee when the generation is done server side

lyric gyro
#

There is no generation

wheat carbon
#

conversion

#

whatever you want to call it

steady ingot
#

..?

wheat carbon
#

there's nothing stopping the server from basing the offline user's uuid on something completely different

#

or making it completely random

#

but ultimately it's still server side, so still a viable way of checking offline/online users

#

the (lack of) guarantee would only effect the client

lyric gyro
#

What you're saying is that it's implementation detail

#

It's not some internal magic that the server decides how to do it, if at random, if timestamp based or just that

wintry grove
#

so

#

after reading all of this

#

can I? and which method should I use?

steady ingot
wintry grove
#

nvm that first one

wheat carbon
#

basically if you're running the server people are connecting to, then checking the uuid is a reliable way to see if they're premium or cracked

#

the check you need to perform is super simple

wintry grove
#

so for the UUID, how can I differentiate from v4 and v3?

wintry grove
#

is directly pure java

leaden sinew
#

Java can never be pure

wheat carbon
#

that's not got anything todo with what I said

#

is the server yours?

#

do you run it?

#

because if not, then this isn't a reliable method

#

but basically

#

you get the 15th character in a uuid (with hyphens), if it's 4, it's uuid v4, if it's 3, it's uuid v3

lyric gyro
#

UUID has a method to get the version

#

type or version, idk

wintry grove
#

ok so first I do need to transform the UUID string to a real UUID

#

then get its version right?

#

and if it is v3 is offline

#

and if it is v4 is real player?

lyric gyro
#

In 99.99%+ of the cases yes

#

Not considering Bob in his mom's basement running a server with a custom authentication server

wheat carbon
#

the only case it isn't reliable is if you don't run the server and can't guarantee that online is v4 and offline is v3

wheat carbon
#

we disproved that

lyric gyro
#

That's not true either

wintry grove
#

is not server

wheat carbon
#

??

steady ingot
#

O?

wintry grove
#

its a mod that connects to cloud, then using some UUID magic I get players data back

#

and for checking offline mode guys I do so

#

gotcha?

#

and yes the mod is 1.12+

wheat carbon
#

wait so you just need to check if the currently logged in player on the minecraft client is online or offline?

wheat carbon
#

why didn't you just say that???

steady ingot
#

bruh

wintry grove
#

I said that bruh

#

sort of

wheat carbon
#

that was literally not made clear in the slightest

wintry grove
wheat carbon
#

please, please, be clear next time

wintry grove
#

ok

#

but wait

#

the checking is done in the cloud

#

not in the mod

wheat carbon
#

where does the uuid come from

wintry grove
#

from the mod lel

#

it communicates to the cloud

wheat carbon
#

and where does the mod get the uuid from

wintry grove
#

from cloud

lyric gyro
#

wintry grove
#

mod -> cloud
cloud -> mod

wheat carbon
#

so the uuid doesn't even exist

#

in fact nothing exists in this system

#

because nothing can get in

#

apart from hard coded information

wintry grove
#

what

#

I dont really get it

wheat carbon
#

the mod only gets data from the cloud

#

and the cloud only gets data from the mod

wintry grove
#

yes

#

but the mod provides the username

#

so cloud do auth

#

and give data back

lyric gyro
#

And how do you distinguishing between the real Notch account and Bob using a cracked launcher with the username "Notch"?

#

If all you have is the username

wintry grove
#

thats what I'm asking

#

if it is posible to distinguish a offline UUID from a real one

lyric gyro
#

And I told you already you can't do shit with just the username

wintry grove
#

I'm just making a system for player data using the UUID

lyric gyro
#

Where does the UUID come from?

wintry grove
#

mod sends username to cloud, cloud gets UUID from api, then checks if offline, if offline does some other shit and if real one get data and send to mod

#

gotcha?

acoustic sand
#

Deluxechat is support for redis ?

wheat carbon
#

deluxechat doesn't use redis

lyric gyro
#

Mojang HTTP API?

#

Or what?

wintry grove
leaden sinew
#

You can't do that

lyric gyro
#

How does the cloud get the UUID

leaden sinew
#

Magic

acoustic sand
#

is there any way to help deluxechat use multiple proxies?

wintry grove
#

from the fricking packet containing the username that the mod sends aaaaaaa

wheat carbon
lyric gyro
#

Then, again, with just the username you can't do anything

leaden sinew
wintry grove
#

ok so letme explain

#

the mod will get the client username ok?

#

then using some packet shit the mod sends the username to the cloud

acoustic sand
#

Sad, i need find another plugin

lyric gyro
#

It sends the username

wintry grove
#

._.

#

a packet containing a string with the username

lyric gyro
#

What is the process the cloud program does to transform username -> UUID?

wintry grove
#

yes

lyric gyro
#

I'm asking you what is it

wintry grove
#

amongst other things

#

oh

#

welp using Mojang APi

lyric gyro
#

Okay so

#

Scenario

lyric gyro
#

Notch logs into his account as usual, mod sends "Notch", Mojang API returns the good UUID because the username exists
I use a cracked launcher and use "Notch" as username, mod sends "Notch", Mojang API returns the good UUID because the username exists

#

See the issue?

#

You can't distinguish with just that

wintry grove
#

yes

#

thats why I was asking if it was posible to distinguish a offline UUID from a real one

leaden sinew
#

You aren't sending the UUID though?

wintry grove
#

nope

lyric gyro
#

Re-read my now edited message

wintry grove
#

get it

#

so thats why I was asking that

#

now enters the question

leaden sinew
#

Now are the questions?

wintry grove
#

what can I use for auth?

#

I dont care if I need to rewrite my fucking packet system, just want to know what I need to do

steady ingot
#

Is it possible to do something with token? May be speaking nonsense rn, just throwing ideas out there

leaden sinew
#

Send the uuid

wheat carbon
#

sending the uuid isn't an option either

lyric gyro
#

Or you can, like, y'know, make the mod check if the client is logged in and send true/false "it's logged in"

leaden sinew
#

That's too simple

wheat carbon
#

it depends how much you trust the client star 2

#

if there's no trust then you need to do auth completely manually

wintry grove
#

good point tho

wheat carbon
#

like get access token and whatever and verify it yourself

wintry grove
#

yeah

#

and before u ask I already tried using mojang auth server, I need password

wheat carbon
#

well

#

figure out how a server figures out if a player is online or not

#

you just need to do the same thing

wintry grove
#

I'll try to but I'm pretty sure my brain will fail before I find out how it does that

wintry grove
#

welp, and how?

wheat carbon
lyric gyro
#

How?

wintry grove
#

I'm fine with it atm

wheat carbon
#

what's to stop a client from modifying the specific method you call to check if it's online, to simply always return true

wintry grove
#

to check if client logged lol, havent really touched that part of modding

lyric gyro
#

I mean then in that case you'll have to do some asymmetric cryptography bullcrap all over the place

#

But even then you can never be too sure

#

¯\_(ツ)_/¯

pure crater
#

i suggest for u to go to sleep

#

and wake up

#

and think better

#

lol

leaden sinew
#

Just make a custom client

#

Easy fix

steady ingot
pure crater
#

Or go to sleep

wintry grove
pure crater
#

🛏️

wintry grove
#

time to sleep

pure crater
#

😴

lyric gyro
#

Good choice

leaden sinew
wintry grove
#

I'll see you tomorrow fuckers

pure crater
wintry grove
#

time to replace da brain

pure crater
#

school isnt open yet

wintry grove
leaden sinew
#

I recognize that door

#

Do you live in Australia?

sage patio
#

Is it possible to make a array list of Shaped recipes and then Register that array in Bukkit.addRecipe()?

prisma briar
#

sure

sage patio
#

wait should I give the code of what I did

prisma briar
#

as long as you add the recipe on plugin enable it's fine

sage patio
#

Yes I am doing it

#

Let me give the code

#
core.recipe.add(recipe);

This is the code in the class where the item is and recipe variable is the ShapedRecipe

#
public List<ShapedRecipe> recipe;
    public Core() {
        this.recipe = new ArrayList<ShapedRecipe>();
    }
@Override
public void onEnable() {
    Bukkit.addRecipe((Recipe) recipe);
}
#

@prisma briar

#

I have just finished java basic course from w3schools... and I have some questions and problems

#

I started learning more about bukkit api by decompiling other plugins and reading how they work

#

same for learning java

#

In this code, this.recipe is added in the constructor for Instance constructor calling right? I just wanted to confirm...

public List<ShapedRecipe> recipe;
    public Core() {
        this.recipe = new ArrayList<ShapedRecipe>();
    }
prisma briar
#

You need to loop the array list first, and then register it using Bukkit#addRecipe

sage patio
#

Hmm Okay

#

For Loop right?

#

For"

prisma briar
#

yes

sage patio
#

soo I made this code for "for" Loop

#
for (int x = 0; x < recipe.size(); x++) {
            Bukkit.addRecipe((Recipe) recipe.get(x));
        }
prisma briar
#

no need for fori loop

sage patio
#

While My IDE Intelliji Idea suggested me to make it

for (ShapedRecipe shapedRecipe : recipe) {
            Bukkit.addRecipe((Recipe) shapedRecipe);
        }
prisma briar
#

yes like that

sage patio
#

^ I dont get how does this work? Is it like for Every recipe from array list it will add the current loop

#

's recipe?

#

Hm Okay

prisma briar
#

It will loop the recipe

sage patio
#

I should learn for loop more...

#

and array list.

prisma briar
#

it's pretty simple actually

sage patio
#
for (ShapedRecipe shapedRecipe : recipe) Bukkit.addRecipe(shapedRecipe);
#

That will make it smaller

#

also aglerr

#

In making custom items and gear

#

How much would u prefer to make seperate class for each item

#

or a categorized single class with every item falling in that category

#

Like a Armor class for all of the armor and gear

#

A weapon class for all kinds of custom weapons

#

and a Tools class for all kinds of custom tools

prisma briar
#

take a look at inheritance

#

you want to create a class for example "CustomArmor"

sage patio
#

Oh you mean like the api's?

prisma briar
#

and then you want to create 1 class for every custom armor extending the CustomArmor class

sage patio
#

No need I am using another library 😛

#

RedLib

#

It was more comfortable to use these libraries than make my own

#

I am first gonna test these after that I will Make my own class for this

prisma briar
#

you still need to learn inheritance too, so u know what to do

sage patio
#

i know little about Interfaces and Abstracts

#

I know basic but I have not done experiements and learnt them in advanced

#

@prisma briar Sry for disturbing But My friend who just came on and now is again offline told me after taking a look at the code I wrote that I should instead of Making multiple instances of main class, I should Transfer a pre existing Instance

#

I don't Get it but does that mean I make instance of a class already using instance of the mainclass to get the instance of the main class?

prisma briar
sage patio
#

Yes I have made a ArrayList called key which has to store all of the namespace keys of the Custom items and armor

#

I have use for it later

#

so I need a instance of mainclass in the otherclass to Get this key

prisma briar
#

You need to pass the reference of your main class.

sage patio
#

? which message are you referring to right now?

sage patio
#

How can I pass the reference, Isnt the only way instances? or static

prisma briar
#

pass it on the constructor

#

?di

neat pierBOT
prisma briar
#

read that

sage patio
#

So basically

#

The client

#

the Class

#

which is making the instance of mainclass

#

I need to pass the instance in it to the other class I need the instance in?

#

Is this what it means?

#

wait wait.

prisma briar
#

basically you'll pass the MainClass reference thru constructor on the OtherClass, with this you can access methods from MainClass on the OtherClass.

sage patio
#

Oh I think u misunderstood what I meant

#

I am already doing that

#

Its just that my friend said that Instead of Making more instances of main class

#

In other classes Like OtherClass

#

I should transfer the already existing Instance of mainclass

prisma briar
#

show me how you pass your MainClass.

sage patio
#

Yes as econd

#
public List<NamespacedKey> key;
    public List<ShapedRecipe> recipe;
    public Core() {
        this.key = new ArrayList<NamespacedKey>();
        this.recipe = new ArrayList<ShapedRecipe>();
    }
#

This is the constructor right now.

#

In main class [Named Core]

prisma briar
#

The MainClass shouldn't have a constructor.

sage patio
#

This is the constructor of the client / Other class

#
private final Core core;
    public Armor(Core core) {
        this.core = core;
    }
#

This is the instance of the other class

prisma briar
#

by the way you can initialize it directly on the field.

sage patio
#

In main class

#
Armor armor = new Armor(this);
sage patio
prisma briar
#
public List<NamespacedKey> key = new ArrayList<>();
public List<ShapedRecipe> recipe = new ArrayList<>();
```No need in constructor.
sage patio
#

I can do that as well? that also works?

#

Okay 😄

prisma briar
sage patio
#

Okay

#

But my friend was saying Make one of these instances and then trasnfer the instance of mainclass u made into other classes which require this instance

#

he said it half way through and then went offline so maybe I have misunderstood him

prisma briar
#

i dont understand what your friend means

sage patio
#

yep I guess I have to wait for him to come back online 🙂

#

Ahh And btw is this okay

#
public class PlayerJoin implements Listener {
    private final Core core;
    public PlayerJoin(Core core) {
        this.core = core;
    }
    @EventHandler
    public void onJoin(final PlayerJoinEvent event) {
        final Player player = event.getPlayer();
        player.discoverRecipes(core.key);
    }
}
#

Its a event Listener

#

For player join event

#

With a instance of main class as well

#

Its to discover the custom recipes

#

I was planning to improve this later By checking for achievements like getting a diamond and then on getting that achievement they will unlock the custom recipes 🙂

prisma briar
#

What is core.key

#

NamespacedKey right?

#

And yeah that's fine, nothing wrong with that

sage patio
#

Okayyy

sage patio
#

The array list from main class

#

Uhm!

#

@prisma briar

#

How can I also make this... Array list for registering listeners

#

Just asking if that is Possible 🙂

#

getServer().getPluginManager().registerEvents(new MyListener(), this);

#

Like making a for loop for this

#

And a array list to get each class name

#

Each listener

#

As whether I do this or not I still require a instance of main class in my listener class so If I add another Array list in which I give the class name in specific listener class

#

Wont that work ?

prisma briar
sage patio
#

Okay

#
@Override
    public void onEnable() {
        Armor armor = new Armor(this);
        PlayerJoin joinlistener = new PlayerJoin(this);
        for (ShapedRecipe shapedRecipe : recipe) Bukkit.addRecipe(shapedRecipe);
        getServer().getPluginManager().registerEvents(joinlistener, this);
    }
prisma briar
sage patio
#

It actually wont matter

#

Because I need that object anyway

#

Its giving the constructor in PlayerJoin listener class the "this" Instance

prisma briar
#

wdym?

sage patio
#

I mean

#

That There is no need to make it like how u saying

sage patio
#

Or whaat i DID

#

Or what I did*

#

It wont matter

#

As the object I can't remove it

#

so if I can use object at another code line then whywould I not

high edge
#

:what:

prisma briar
#

from your code, it doesn't look like that you used the object anywhere beside in registering the listener/events

sage patio
#
public List<Listener> listeners = new ArrayList<Listener>();
Bukkit.getPluginManager().registerEvents((Listener) listeners, this);
#

That should be good right?

#

wait wtf wrong line 1

#

Okay

prisma briar
#

use for loop

sage patio
sage patio
prisma briar
sage patio
#
for (Listener listener : listeners) Bukkit.getPluginManager().registerEvents((Listener) listeners, this);
sage patio
#

Okay But still Imma do what U said Next time when I have to use it, I will use the way u said

prisma briar
#

honestly, do what you prefer

#

also the casting is not necessary

sage patio
#

Error if I dont 😗

prisma briar
#

okay first of all, you don't want to cast everything if u got an error, try to fix it instead casting it.

#

you're using listeners which is a List of Listener, not the listener

#

change the listeners to listener

#

dont cast everything if u got an error, it will not solved anything

sage patio
#
for (Listener listener : listener) Bukkit.getPluginManager().registerEvents(listener, this);
#

I have changed the Array list reference name to listener" as you said

prisma briar
#

on the register part, not the for loop part

#

you are iterating over nothing

sage patio
#

Heh

#

Hmm

#

I dont get it Uhm

#

wait

#
public class Core extends JavaPlugin{
    public List<Listener> listeners = new ArrayList<Listener>();
    public List<NamespacedKey> key = new ArrayList<NamespacedKey>();
    public List<ShapedRecipe> recipe = new ArrayList<ShapedRecipe>();

    @Override
    public void onEnable() {
        Armor armor = new Armor(this);
        PlayerJoin joinlistener = new PlayerJoin(this);
        for (ShapedRecipe shapedRecipe : recipe) Bukkit.addRecipe(shapedRecipe);
        for (Listener listener : listeners) Bukkit.getPluginManager().registerEvents(listeners, this);

    }

    @Override
    public void onDisable() {

    }
}
#

This is the code

#

Its telling me to cast the listeners with (Listener) at the loop for registering the listeners Array

prisma briar
#

figure out why

sage patio
#

Ohh

#

I am such a idiot

#

nvm

prisma briar
#

also consider adding open/close bracket, it makes the code more readable.

sage patio
#
Bukkit.getPluginManager().registerEvents(listener, this);
prisma briar
#

exactly, u got it

sage patio
#

It makes code more compact 🙄

#

But kay

#

Andd...

#

In the listener class

#

How can I add this class to the array list?

#

core.listeners.add(new PlayerJoin(core)); ?

#

^ is that correct?

prisma briar
#

yes

sage patio
#

Oh and if u ask why I am adding core" In the brackets its because the constructor in this lstener class needs the mainclass "this"

#

I will now test the frame of the Plugin to see if There may be any problems

prisma briar
#

yea i know that 😅

sage patio
#

Oh ok 😗

#

and ... I am afk for about 3 days in this mc server

#

and the admin just found that out

#

Lmaooo

#

Uhm I wanted to upload a class file of the plugin that I decompiled

#

But now that I look at it... the plugin dev is highly inexperienced

#

The code is quite like

little surge
#

Using an sql database how might I do a check for matching words in a varchar? For example I search for “Hello how are you today”, I want the database to return rows where at least 3 of those words exist in the varchar otherwise don’t return them.

sage patio
# sage patio The code is quite like

CONTINUING my sentence , It was quite like as if he was barely experienced, Soo many registers and all code was in the main class instead of making seperate classes for each custom item or category of custom items

sage patio
#

Uhm

#

Not mine*

#

Its decompiled code of another plugin, I was curious so just decompiled it to check how it worked 😛

pure crater
#

-420

broken elbow
pure crater
#

very funni

broken elbow
pure crater
#

I like it

#

me gusta!

sage patio
#

I would rate it like 40/100 because He put all of stuff in just one code

#

He could have made like 20 classes out of it

#

while not changing anything in it but actually improving it :0

pulsar ferry
#

5k lines sweatwipe

broken elbow
#

xD

topaz gust
#

They seem to only understand getString

#

Caused by: java.lang.ClassNotFoundException: de.codercreep.blockcreator.data.Data

#

It can’t find you class that is referenced there

#

Recompile?

#

Wait in both?

#

I’d suggest recompiling this sometimes happens due to compile issues

#

If that doesn’t fix it we can find a solution then

#

Can you show me the path within your IDE?

#

Expand the left side menu with that reference

#

Yeah so your file structure on the left side most commonly

#

The way you navigate

#

=imgur

neat pierBOT
#
Uploading Images

Please use imgur to share screenshots and other images.
Imgur

topaz gust
#

Have you checked within the jars to ensure they are there aswell?

#

Very strange unfortunately don’t know what’s wrong there if you find out I’d like to know your solution if I get any ideas in the mean time I’ll lyk

marble nimbus
#

Sorry might be the wrong channel but what was the command for barry to show the explanation to why lombok is bad. (might be the wrong server tho)

broken elbow
marble nimbus
#

got it thanks 😄

#

also what is the difference between dropItem and dropItemNaturally in world

dense drift
#

d;spigot world#dropItem

uneven lanternBOT
#
@NotNull
Item dropItem(@NotNull Location location, @NotNull ItemStack item)```
Description:

Drops an item at the specified Location

Returns:

ItemDrop entity created as a result of this method

Parameters:

location - Location to drop the item
item - ItemStack to drop

dense drift
#

D;spigot world#dropitemnaturally

uneven lanternBOT
#
@NotNull
Item dropItemNaturally(@NotNull Location location, @NotNull ItemStack item)```
Description:

Drops an item at the specified Location with a random offset

Returns:

ItemDrop entity created as a result of this method

Parameters:

location - Location to drop the item
item - ItemStack to drop

marble nimbus
#

so basically it drops it at the location but with some offset and not exactly at that location

broken elbow
#

yeah

#

thats how it happens when you die for example. thats why not all items are in the exact location you died

#

but they're a bit scattered

marble nimbus
#

got it thanks, btw nice name 😄

broken elbow
#

thank you

marble nimbus
#

Hey so i have 6 dependencies in my Plugin, each of them have like a billion others, is it possible to relocate the dependencies and their dependencies at once? (gradle)

burnt cliff
#

Is there anyone that could help with client packets for an npc plugin pls 😄

graceful hedge
#

Allow me to introduce citizens to you

burnt cliff
#

Where making it custom for more possibilities but thx

#

But I would really appreciate help for the coding haha

lyric gyro
burnt cliff
lyric gyro
#

Code client packets?

#

So this isn’t for you?

#

Just create the entityplayer, send an addInfoPacket then a spawnNamedEntity packet

#

You need to tap into netty pipeline if you wanna read for entity to entityplayer interaction

burnt cliff
#

It’s an interaction npc plugin

burnt cliff
lyric gyro
#

I just told you exactly how to do it

burnt cliff
lyric gyro
#

If you’ve never injected into netty pipeline you might have to do a little research or even go look at spigot yourself

burnt cliff
#

What if I already did that?

#

He*

lyric gyro
#

Then just check for useEntity take the id of the entity interacted with from that packet and check if it was one of your npcs. Then perform whatever cause you now know they clicked on the npc

burnt cliff
#

Use Edity*?
Or
useEntity?

lyric gyro
#

What is use edity tf

burnt cliff
#

Oh I mean Entity

#

Sry XD

lofty sphinx
#

Guys I am getting this error

#

Craftsmoker cannot be cast to block.smoker

#

this is the code

#

what should I do ?

#

@icy shadow

icy shadow
#

?

lofty sphinx
#

can you help me🥺

#

sorry for pinging

wintry grove
#

so now I'm more awake than ever

#

so how I sould auth users on the cloud?

#

I asked LeScooter, the Lead Developer of BlockFront on how he does auth and this is how he does it

#

he uses authlib for it

#

so what shoud I do? any wiki.vg page or so?

vagrant bobcat
#

Someone experienced with compile errors / issues pls message me

sly impBOT
#

@brittle thunder, Help menu!

neat pierBOT
#
FAQ Answer:
» Give the helpers some details
» Ask suitable questions
» Be polite
» Wait

Source

dusky harness
brittle thunder
#

🥲

lyric gyro
#

@brittle thunder, Help menu!

forest horizon
#

Hey, im trying to read from my config.yml file and when I do it returns a java.lang.Object. I cant find a way to view the object except for .toString though.

    public void reloadCheckpoints() {
        List checkpoints = plugin.getConfig().getList("checkpoints");
        plugin.getLogger().info(checkpoints.get(0).toString());
        // Logs {box={x1=1, y1=2, z1=3, x2=4, y2=5, z2=6}, message=Test 1}
    }```
Config.yml:
```yml
checkpoints:
 - box:
    x1: 1
    y1: 2
    z1: 3
    x2: 4
    y2: 5
    z2: 6
   message: "Test 1"
 - box:
    x1: 1
    y1: 2
    z1: 3
    x2: 4
    y2: 5
    z2: 6
   message: "Test 2"```
leaden sinew
#

Unless you can have a value in a list have keys like you have there, I haven’t seen that before though, I’m not sure if that’s valid yml.

shell moon
#

What does ItemMeta#hasCustomModelData returns exactly?

#

If setCustomModelData was used on this item? or if customModelData returns other than 0?

#

what if I don't set a custom model data (not even 0)

#

what does getCustomModelData returns? 0?

broken elbow
#

pretty sure default value is 0

shell moon
#

So what does hasCustomModelData returns?

dense drift
#

probably if it is more than 0

karmic bluff
#

hi I'm having an issue with my code, I want to get a variable into another class. I'm making a /report gui and I want to import the target into the gui. To make it clearer:

someone types:
/report <player>
then a gui opens and the command executor can select a few reasons to report for
I want the name of the target aka <player> in this case to show up in the title of the gui, I also need the targets name in my GUI class to send staff a message that the player got reported for something.

Now the issue is, I can't get the reported player's name from my Report command class to my Report Gui class. Does anyone know how to do that or can help me? I have been struggling with this for a while now

#

can't seem to get that to work

#

tried a few things to store it but didnt go well

#

it returns null

#

public static String reportedplayer;

public static String GetReportedPlayer() {
    return reportedplayer;
}
#

else {
p.openInventory(ReportGui.GUI(p));
reportedplayer = target.getName();
p.sendMessage("target: " + reportedplayer);
}

#

aight

neat pierBOT
#
FAQ Answer:

Paste Services
When asking for help with a config/menu/code issue please use our paste bin:
(we prefer it over pastebin.com)
HelpChat Paste - How To Use

karmic bluff
#

? paste

#

?paste

neat pierBOT
#
FAQ Answer:

Paste Services
When asking for help with a config/menu/code issue please use our paste bin:
(we prefer it over pastebin.com)
HelpChat Paste - How To Use

karmic bluff
#

sec

#

this is my GUI class atm

#

tried to get it from my Command class with this ReportCommand.GetReportedPlayer() but it returns null

#

p.sendMessage("target: " + reportedplayer);

#

but here in the command itself it does actually return the reportplayer

#

in chat

astral mauve
karmic bluff
astral mauve
#

Could you send what you’ve tried

karmic bluff
karmic bluff
#

for the command

astral mauve
#

Are you sure it still return as null

karmic bluff
#

yes

#

checked 2 times

#

inventory_name = CC.chat("&8Reporting " + ReportCommand.GetReportedPlayer());

#

thats the line in my report gui

#

to get the title

#

yup thought about that too but then I failed to get it into my gui class

#

alr

#

aight ty

karmic bluff
#

getting an error now

shell moon
karmic bluff
#

now I get "null" in console 💀

#

nullpointer

#
        Inventory toReturn = Bukkit.createInventory(null, inv_rows, CC.chat("Reporting ")+  reportedPlayer.getName());

        GuiUtil.createItem(inv, 276,1,0,"&6Combat Hacks");
        GuiUtil.createItem(inv, 353,1,1,"&6Movement Hacks");
        GuiUtil.createItem(inv, 386,1,2,"&6Other Hacks");
        GuiUtil.createItem(inv, 46,1,3,"&6Kingdom Grief");
        GuiUtil.createItem(inv, 369,1,4,"&6Aanval zonder War");
        toReturn.setContents(inv.getContents());
        reporter.openInventory(inv);
    }```
#

so this is the report gui now

#

ReportGui.openGUI(p, target);

#

and added this to the command

#

removed the other thing I tried

lyric gyro
#

im a new minecraft server dev and the drill is:
I gotta use a script like that: :start
java -jar forge-1.16.5-36.1.32-f645ac2-DEV.jar nogui
timeout /t 20
goto start
To start my server but the host doesnt allow me to use it
I gotTa UsE thE Jar
Do you have any hosting you shouldnt be restricted to use a script and if not is there any way to put the script in the jar -.-?

karmic bluff
lyric gyro
#

no no i wanna do it for like public

#

i did the tests

karmic bluff
#

ah

#

what hosting u have?

lyric gyro
#

pebble for now

karmic bluff
#

aight

#

gimme a sec

proud pebble
#

the host has its own starting flags

lyric gyro
#

i can change it

proud pebble
#

then whats the problem?

lyric gyro
#

idk i tried like 5 other hosts

#

but neither let me use the script to start my server

karmic bluff
#

inv.setItem(invSlot, item);

proud pebble
#

you cant use your own script to start a server on any host

lyric gyro
#

i cant ;-;

proud pebble
#

why you want to use a script idk

karmic bluff
#

oh

lyric gyro
#

bc i cant use it other way

#

like its magma 16.5

#

the only way you can start is with start.bat or script

#

and it doesnt lemme both ways

karmic bluff
#

thats weird

#

holup

lyric gyro
#

idk am i the dumb one , are they?
proly me but thats not the point

proud pebble
#

do the install script oj your own pc and then upload the files

lyric gyro
#

the script is like not in a file but i write it in the console

proud pebble
#

rename the forge.jar to whatever the hosts startup script jar name it wants, most use like server.jar and then just run that

lyric gyro
#

you mean i should write it in some file , upload it in the server as a .jar file and put it as a start file?

karmic bluff
#

my previous code used

        inventory_name = CC.chat("&8Reporting " + ReportCommand.GetReportedPlayer());

        inv = Bukkit.createInventory(null, inv_rows);
    }```
But I removed that when implementing ur method
proud pebble
#

no

karmic bluff
#

and then I initialized it in the main class

proud pebble
#

you run the installer on your own pc

lyric gyro
#

there aint an installer

proud pebble
#

make sure it starts and you can connect

lyric gyro
#

like you gotta open powershell , type some script in it and it downloads

proud pebble
#

thats the installer...

#

im looking at the github right now

lyric gyro
proud pebble
#

then upload the server to the host

lyric gyro
#

i did it

#

i just cant possibly turn it on bc the host rules doesnt allow it

proud pebble
#

and change the name of the forge jar to something like server.jar

lyric gyro
#

im talkin ab magma 16.5 btw

proud pebble
#

i have no clue what your host calls the server jar

karmic bluff
#

alright will try

lyric gyro
#

even if i name the jar of the magma server.jar
i cant possibly turn it on

karmic bluff
#

ty for ur help already

proud pebble
#

yeah you can

#

you dont rename the magma server jar

#

you rename the fucking forge jar

#

This will generate another jar forge-[version].jar run this as normal java -jar forge-[version].jar

lyric gyro
#

you sure its gonna work?

proud pebble
#

try it and see

karmic bluff
#

I have to make this one static tho otherwise I can't initialize in the main class

lyric gyro
#

again

proud pebble
#

what does it say

karmic bluff
proud pebble
#

did you change the java version to java 8?

lyric gyro
#

yes

proud pebble
#

well what does it say then

karmic bluff
#
        inventory_name = CC.chat("&8Reporting " + ReportCommand.GetReportedPlayer());

        inv = Bukkit.createInventory(null, inv_rows);
    }```
lyric gyro
# proud pebble well what does it say then

nothin suspended
their definition of suspended bc its on my language im just gonna translate it
you cant use scripts and other than the oficial jar files
now i use other host not pebble

#

sorry for my extra dumbness

proud pebble
#

so your server got suspended

lyric gyro
#

ye imma try it on pebble host

proud pebble
#

did you even tell them you wanna run magma 1.16.5?

lyric gyro
#

yes and they coresponded w that

#

,,you cant use bats or scripts"

proud pebble
#

cause you cant

#

magma can run on any host

karmic bluff
#

I removed initilizae now

#

testing something rq

#

i'll let u know

proud pebble
#

static abuse when

lyric gyro
#

well tommorow imma try w another host idk

#

thanks for the help bud

proud pebble
#

first time running a server from a host?

lyric gyro
#

this type of it yes

#

spigot and forge many times but magma is complicated

proud pebble
#

you have to run the forge jar, not the magma one

lyric gyro
#

ye ye i understood

proud pebble
#

scripts and hats arent allowed unless you get bare metal or vps

karmic bluff
#

fixed it

#

ty

coarse gulch
#

Hello guys

#

i have a doubt

#

i hired a guy to make me a plugin that basically execute command when players wear a full set of a certain armor

#

and execute command when they remove it

#

so i can make perks for full set of armor weared

#

the thing is

#

If server crashes

#

what happens?

dense drift
#

Um... what?

coarse gulch
#

i mean

#

we're worried that if server crashes

#

and PlayerQuitEvent is not registered

#

when player join back they get again the perks

#

even if they didn't lost it since the PlayerQuitEvent is not registered

#

And the plugin remove the perks if player quit checking it trought PlayerQuitEvent

#

you got what i mean?

coarse gulch
#

@dense drift

dense drift
#

Ask them?

coarse gulch
#

to the dev?

dense drift
#

Yes

coarse gulch
#

he can't find the solution too

lyric gyro
#

¯_(ツ)_/¯

#

We aren't psychics

terse kelp
#

You*

coarse gulch
#

so do you think is there a way to fix this?

#

would making a database that save player data and checks it everytime affect server performance a lot?

graceful hedge
#

Maybe, although saving it asynchronously might help

smoky hound
#

bsynchronously better

graceful hedge
#

aye James!

smoky hound
#

aye!

broken elbow
#

hello james

smoky hound
#

helo

honest spoke
icy shadow
#

That regex thing is so cursed

honest spoke
#

Yes it is

dusky harness
#

anyone used ktor websockets before? idk how to detect (server side) when a client disconnects 😩

in the docs it says that it handles close and ping/pong stuff unless its a raw web socket session

#

but atm it just throws errors when a client disconnects and i attempt to send data to it