#help-development

1 messages · Page 258 of 1

orchid gazelle
#

I hope so lol

#

well if you draw that line you have a full line and not an actual trail

#

therefore it may look bad

smoky oak
#

theres no such method, i meant by 'Draw a line' doing the same thing as with the bullet trail just in that sphere around the player. Removes all but two raytraces and a lot of math

#
final int STEPS = 10;

        Location playerLocation = observer.getLocation();

        Location start = playerLocation.clone().add(bulletTrailStart.toVector().clone().subtract(playerLocation.toVector()).normalize().multiply(16));
        Location end = playerLocation.clone().add(bulletTrailStart.toVector().clone().subtract(playerLocation.toVector()).normalize().multiply(16));
        Vector connection = end.toVector().subtract(start.toVector());
        connection.multiply(1/STEPS);

        HashSet<Location> particleLocations = new HashSet<>(STEPS+1,1.0f);
        for(int i=0;i<STEPS+1;i++){
            particleLocations.add(start);
            start.add(connection);
        }
        
        return particleLocations;
#

here u go

orchid gazelle
#

sorry I may be dumb but I kind of do not understand that 100%

#

oh you wrote some code

#

lemme look over that

orchid gazelle
smoky oak
#

in exchange for rendering even if theres solid blocks in the way

#

choose your poison

#

this one cant be modified to check for blocks in the way easily

orchid gazelle
#

ohhh right I forgot that I need to run like 7465t764538765376 checks in addition lmao

smoky oak
#

ye

#

anyways

#

im done here for today

#

so gl

orchid gazelle
#

aight

#

thank you for your help^^

toxic haven
#

How do I update a mobs display name with there currenthealth/maxhealth. While keeping the format” [1] Wild Boar 10/10❤️”?

wary topaz
#

How can I allow it to put it so its all seen?

orchid gazelle
#

Just use the String " [1] Wild Boar " + currenthealth + "/" + maxhealth + "❤️"

toxic haven
toxic haven
remote swallow
orchid gazelle
wary topaz
#

the ... coveres the rest of the description

#

which no me gusta

orchid gazelle
#

You can do .replace(oldvalue, newvalue)

wary topaz
#

also i dont want to redo the descriptions cause i got like 50 commands

orchid gazelle
#

And to get the values, you gotta get the String and split it

toxic haven
remote swallow
toxic haven
#

And keep the rest the same?

wary topaz
#

thats actually helpful but when people do /help it still would show that mess

wary topaz
remote swallow
#

any

orchid gazelle
remote swallow
#

but that would probably be better

final moss
wary topaz
#

mycommands?

final moss
#

i use it for almost everything on my server. very helpful

fading spindle
#

if you use p.getInventory().addItem() and their inventory is full what will happen?

orchid gazelle
#

I THINK it will drop

fading spindle
#

thats what i hope lol

orchid gazelle
#

If not just make a check

fading spindle
#

yeah

orchid gazelle
#

And drop it manually when it is full

fading spindle
#

yeah lol

orchid gazelle
#

Just try it out at this point

fading spindle
#

yea

remote swallow
#

it returns the item stacks that couldnt be added

#
private void giveOrDropItem(Player player, ItemStack... items) {
        Map<Integer, ItemStack> map = player.getInventory().addItem(items);

        for (ItemStack item : map.values()) {
            player.getWorld().dropItem(block.getLocation(), item);
        }
    }
#

because that is smart

crimson jasper
#

Is there any documention on spigot yet to edit and sign player messages?

#

like with the preview and everything

#

I mean like let the player confirm the signation and stuff

#

So everything is like green and not yellow or red because of the modification

remote swallow
#

you want to use the preview chat event i think it was called in 1.19.1 and 1.19.2

kind hatch
#

Not anymore

#

It was removed in 1.19.3

crimson jasper
#

...

remote swallow
#

yeah

crimson jasper
#

mojang

remote swallow
#

mojank

crimson jasper
#

mowank

kind hatch
#

That's the problem, you really can't due to the way the system was designed. The only way to circumvent those status indicators is to send their message as a system message.

remote swallow
#

or use anti popup

crimson jasper
#

IIRC there was a way to manipulate a message, previewing the manipulation for the player and make them approve of it basically

remote swallow
#

that was the preview event

crimson jasper
#

I read it on some gist kennytv has written up but I think it was removed in a revision

crimson jasper
remote swallow
#

it was the only way to actually modify the message without it screaming

#

sunglasses_crying yes

rough drift
crimson jasper
#

there it was

#

but yeah since it was removed no more bothering I guess

rough drift
#

I hate how it was removed

crimson jasper
#

yeah because now everytime we want to add a prefix it shows this

kind hatch
kind hatch
#

Mojang said they removed it since it was confusing players, and tbh it was since they made it an opt in setting that was extremely unclear.

#

So it's on them for making a half baked implementation of something that could have been really cool and useful.

#

Even if the rest of the underlying system is hot garbage.

eternal night
#

nah you can create prefixes without breaking signatures

#

just, not in spigot KEKW

remote swallow
#

no one cares about paper api

eternal night
#

🙆‍♂️

remote swallow
#

deprecating all our string methods and then not following naming convetions

eternal night
#

fLuEnT mEtHoDs bReAk nAmInG cOnvEntIonS

remote swallow
#

yer

eternal night
#

tho you cannot even do it with paper api rn xD

#

I was more saying, the mojang system technically allows it

remote swallow
#

if it doesnt have the other method of a set or get then the name is fine but most of them do, which i hate

eternal night
#

I mean, that would mean removing spigot methods

remote swallow
#

dont you do that anyway

eternal night
#

no ?

remote swallow
#

i thought you did

#

guess its another brain flo

#

p

eternal night
#

paper aims to remain compatible with spigot plugins

remote swallow
#

i completely forgot about that part

eternal night
#

but anyway mojang has something called a ChatType internally

#

which you can abuse to send a custom prefix

#

just

#

not exposed to the API in either spigot or paper

rare gorge
#

Which ItemFlag disables the placement of a item? (tripwire_hook)

kind hatch
#

None of them. That's an item attribute.

#

That I believe only works in adventure mode to begin with.

remote swallow
kind hatch
eternal night
#

a 5head solution 😂

humble tulip
#

Make priority monitor as welo

remote swallow
humble tulip
#

Well

remote swallow
#

i just took a random guess at what the event was

crimson jasper
#

that makes chat messages unreportable which will make people upset on servers

remote swallow
#

who cares

#

i just use anti popup on server side and tough shit

kind hatch
sonic goblet
#

^

prisma schooner
#

Can a item stack store block data? Like furnace item stack storing inventory contents

remote swallow
#

?pdc

prisma schooner
#

ty

eternal night
#

ehhh

remote swallow
#

i wonder if paper implements other pdc methods

eternal night
#

PDC isn't really that

#

PDC is purely custom data

crimson jasper
eternal night
#

if you want to get the data similar to a shift click in creative that keeps in inventory you have to use the BlockStateMeta

#

or something along the lines

kind hatch
onyx fjord
#

its MCCI

kind hatch
#

Yeaaa, I noticed that when I tried to join.

worldly ingot
onyx fjord
#

self hosting yggdrasil is a good idea indeed

#

the problem is players dont know how to use it on their end

kind hatch
worldly ingot
#

Your server rules are entirely irrelevant in the grand scheme of things

#

Your rules are worthless to Mojang. They have their own overarching rules that take priority

#

You follow them or you don't play the game

onyx fjord
#

theres also that one project ely (dot) by, its an alternative for mojang services

kind hatch
worldly ingot
#

And for the millionth time, you can allow toxicity all you want

crimson jasper
worldly ingot
#

You are allowed to do that. They're after genuine death threats, personal harassment for things like ableism and racism

#

No server should be allowing that. Period.

#

"Fuck you" will not ever get you banned

kind hatch
#

Never said that I did. I don't support that kind of behavior, but shittalking should not be a permanent bannable offense.

worldly ingot
#

It's not

#

It never has been

#

omg

onyx fjord
#

i just joined some server and me chatting somehow kicked all players lol i wonder what caused that

worldly ingot
#

Probably the server owner for not updating to the minor version that fixed it

#

Or installing some horrible plugin that disregarded chat reports causing the issue

onyx fjord
#

.1?

worldly ingot
#

Or .2 or something. There were a couple versions that fixed kicks like that

crimson jasper
#

Oh yeah

kind hatch
crimson jasper
#

back to development

worldly ingot
kind hatch
#

Didn't say it was.

worldly ingot
#

Mojang isn't the federal government and your server sure as shit isn't a state KEKW

crimson jasper
#

I keep getting a weird issue where once I've removed the player from a muted list. That when the player talks next, they get instant kicked with an invalid packet signature error. Any ideas?

crimson jasper
kind hatch
#

Clearly went over his head.

worldly ingot
#

Idk. Any time I see somebody complaining about chat reporting, they're bringing out some weird claim that's been debunked and disproven time after time after time and it's exhausting. There are full blown wikis that dismantle a lot of the talking points that get brought up as "fact". Unless you are an active supporter of people praying on children, racism or any other form of discrimination, or personal harassment, you should be in support of this feature. Those that have been raising the alarm over "WE'RE ALL GONNA GET FALSE BANNED" have been really quiet over the last few months after realizing that they have not yet been banned for saying "shit" or "fuck".

kind hatch
worldly ingot
#

And anybody claiming to have been false banned on Reddit or whatever the medium may be should always be taken with a grain of salt because people really like to hide what they actually said to get them banned

crimson jasper
#

I don't know why we escaleted so much now. We should calm down accept / tolerate anyones opionion of this and get back to the actual topic of this channel.

kind hatch
crimson jasper
#

This will lead nowhere other than conflict

crimson jasper
worldly ingot
#

Proxy?

crimson jasper
#

No

kind hatch
#

How are you putting them in the list? Also what are you doing with the player from that list when they get unmuted?

worldly ingot
#

And how are you muting them?

#

Lots of variables here lol

#

Worth noting also that 1.19.3 is a lot more forgiving with chat chains

crimson jasper
faint tide
#

how to accept accents in chat?

kind hatch
# worldly ingot Idk. Any time I see somebody complaining about chat reporting, they're bringing ...

Sorry, as much as I want to drop this, I can't let this go. (This will be my last argument though.)

Unless you are an active supporter of people praying on children, racism or any other form of discrimination, or personal harassment, you should be in support of this feature.
This is an even shittier argument than what's been transpiring.

Just because people disagree with the feature does not mean that you get to automatically quantify them as a pedo, or racist, or harasser. This tactic of categorizing people as horrible human beings just because they have a different opinion or oppose something that you agree with is objectively wrong.

Person to person, we can agree on a lot of things. We can also disagree on a lot of things, as we are now, but just because I disagree with a certain thing, does not automatically make me a person who does bad things.

#

I've been very clear that I don't support those kinds of behaviors, however I disagree with the reporting system as a whole. It's that simple.

stone olive
#

Anyone able to help me make the following:
A datapack that makes a recipe that gives you a "bronze coin head",
then a recipe for 9 bronze = 1 Silver, then gold then platinum and so on..?
I am too stupid for datapack making.

kind hatch
worldly ingot
#

So what's your proposed solution? Because that's the groups of people this system is solely targeting

#

What is your solution to getting those types of people off of Minecraft? There's no reason for them to be playing it

#

Not playing it, rather using it as a medium to facilitate their actions

#

Most servers have those things in their rules but they can get banned on your server and move to the next. If they're not banned immediately on the next server they join, who knows how long it will take for the staff to recognize what is going on beneath their noses

#

As far as I'm concerned, those against the chat reporting very much have a "out of sight, out of mind" approach to dissenting against horrible, horrible people and that's just a terrible way to handle it. If your friend is casually racist, you should not be shrugging it off in the hopes that they don't do it again in the future, you should be sitting down with that person and have a talk with them (temp ban on Minecraft) or cut them out of your life entirely (permanent ban)

prisma schooner
#

there is a way to make players share inventory instances?

worldly ingot
#

Not really. The best you can do is mirror inventory contents. e.g. one slot changes, slot changes in the other

#

You'll want to listen to a few different InventoryClickEvent and other inventory change-related events like PlayerDropItemEvent

remote swallow
#

that seems like a massive dupe exploit

river oracle
#

nothings a dupe exploit if implemented correctly :P

worldly ingot
#

Sure but that may not be relevant if the goal is to link two inventories together for some other purpose lol

dry valley
#

Is anyone here experienced with the TAB plugin if so please tell me

remote swallow
#

?ask

undone axleBOT
#

If you have a question, please just ask it. Don't look for staff or topic experts. Don't ask to ask or ask if people are awake or available. Just ask the question to the channel straight out, and wait patiently for a reply. Make sure you use the right channel regarding the topic of your question. Create a thread in case the channel is already in use!

remote swallow
#

i can help depending on the question

dry valley
#

Ok

kind hatch
# worldly ingot So what's your proposed solution? Because that's the groups of people this syste...

Honestly, I don't have one because it's a complex issue that goes deeper than just Minecraft. It's not unreasonable to compare the problem with other services as well. Minecraft may be one medium, but there are plenty of others that are cheaper and have far wider reach. cough this very platform cough

I agree that those type of people shouldn't be playing the game, but with the community creation of mods that get around the system, what would prevent those people from downloading them and continuing business as usual? If they download those mods, then what's left for the report system to do? Absolutely nothing since it can't be used as it was intended. Hence opening the door to false reports for various reasons.

I'm not saying that I have the solution to the problem, but when I see a system that is clearly flawed, I'll speak my mind about it.
I don't think that the people who disagree with the reporting system are using the "out of sight, out of mind" mentality. They just have a different perspective on the matter.

worldly ingot
#

but with the community creation of mods that get around the system, what would prevent those people from downloading them and continuing business as usual?
The enforce-secure-profiles setting that Mojang added to the server.properties file

#

Whereby if you install one of those mods you can't join the server

#

That servers are intentionally turning off because they think they're going to get banned for saying "fuck"

kind hatch
#

That still doesn't solve the problem for the servers who don't condone that behavior, but that still turn it off.

#

I'll admit, the reaction may be a bit inflated, but it's not entirely unjustified.

eternal night
#

enforce-secure-profiles KEKW

#

"I don't condone this behaviour, but I will allow it without consequences"

kind hatch
#

It should have just been forced onto people.

worldly ingot
#

The reason they made it an option was because of complex issues like proxies that would have (and still sort of do) seriously struggled to implement it

#

1.19.3 made it significantly easier to implement and support now and Velocity is on its way to having it officially supported iirc, BungeeCord will likely follow suit

#

Offline mode is a setting too. Not having that be an option would squash the simplicity of cracked accounts but it's invaluable to proxies and the ability to test without being burdened by the authentication servers

#

Mojang's most recent changes in the .3 minor make it drastically easier for servers to actually support chat in a more reasonable way and I fully expect future major versions to improve upon the chat reporting feature. The chat reports give a tool to victims to take control over those that would otherwise be controlling them

#

It's a shame some servers are removing that tool from them due to misinformation

faint tide
#

Question: could this topic be discussed in the general chat? I don't see how this discussion helps someone with coding problems (And I'm kinda afraid people won't see my help requests with all the other activity c: )

kind hatch
#

Yea, I'll switch over there.

worldly ingot
#

Nobody's asked a programming question yet and we've dropped conversation when one is asked

worldly ingot
#

You're welcome to ask

faint tide
#

i asked, but made a thread for it due to your discussion :p

#

basically it's a question regarding accents in a property file

remote swallow
#

make sure its utf-8 encoding

worldly ingot
#

Was just about to suggest the same. Read in UTF-8

#

You may be reading in default platform encoding which will vary and is usually a lot more restrictive than UTF-8

faint tide
#

ah

#

alrighty, will do, thanks 🙂

worldly ingot
#

I think the default encoding on W11 is UTF-8 btw, but better to be explicit because you never know

kind hatch
#

@worldly ingot is it too late to make a thread here or should we continue in #general?

worldly ingot
#

It's fine. I've got a few things to get done anyways so I can't really continue

zealous scroll
#

Does anyone know how I can get a list of objects that implement Serializable from my FileConfiguration

#

there're base methods that allow me to get a single serializable, but im not sure if #getList would work for them

worldly ingot
#

You should be able to just call getList() which will get you a List<?>. There's no getSerializableList(), but maybe there's room for a PR if someone wants to make one

#

In the meantime, you should be able to just cast what all is in the List<?>

remote swallow
#

?cla if you havent already and want to make a pr

undone axleBOT
echo basalt
#

TIL that keys named on and off on snakeyml are converted to true and false when reading with bukkit

kind hatch
worldly ingot
#

"yes" and "no" as well iirc

echo basalt
#

am I tripping or does calling ItemStack#setType completely resets all enchants, including unsafe ones?

#

nvm I'm tripping

#

forgot enchanted_book has glow by default

river oracle
#

lol

echo basalt
#

took me like 2 hours to make those menus

#

and like 5 hours to fix stupid shit

river oracle
#

how tf did u get the bottom inventory to dissapear

#

thats kinda cool ngl

echo basalt
#

resource pack stuf

#

that example is a lot more complex than you think :p

#

it's all stored in db

#

and some other stuff

toxic haven
#

import org.bukkit.ChatColor;
import org.bukkit.entity.Pig;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageByEntityEvent;

public class damage_splash implements Listener {
    @EventHandler
    public void onDamage(EntityDamageByEntityEvent event){
        if(event.getDamager() instanceof Player){
            Player p = (Player) event.getDamager();
            p.sendMessage(event.getEntity().getName());
            if (event.getEntity().getName().contains(ChatColor.RED + "❤")){
                Pig pig = (Pig) event.getEntity();
                // round the health
                int health = (int) pig.getHealth();
                pig.setCustomName(ChatColor.DARK_GRAY + "[" + ChatColor.GRAY + "1" + ChatColor.DARK_GRAY + "]" + ChatColor.RED + " Wild Boar" + ChatColor.GREEN + pig.getHealth() + ChatColor.WHITE + "/" + ChatColor.GREEN + health + ChatColor.RED + "❤");
            }

            }
        }
    }
``` How would i make this so it'll work on every mob with a heart symbol in it's display name?
#

I can't figure a way to get the victim's hp unless I define it as a specific mob so im stuck lol

eternal oxide
#

check if they are instanceof LivingEntity and cast

#

or Mob

echo basalt
#

man wants to loop through all entities

eternal oxide
#

looks to me he's just changing their name when damaged

vapid grove
#

Anyone here have knowledge of IF Inventory Framework?

#

Im having MASSIVE issues w/ it and cant continue further til I fix this bug.

river oracle
#

didn't someone already tell you to ask in their discord

#

no one can help you here

#

no I will not phrase that as a question. Someone already told you to ask in their discord

#

and it is very unlikely anyone here can help you

vapid grove
#

I did, litterally noone there is online and I had asked 24 hours ago.

river oracle
#

guess its time to make your own :P

vapid grove
#

Yea but im lazy lol

echo basalt
#

tbh my menu engine shares a lot of similarities with IF

#

except mine works with layers and IF works with panes

vapid grove
echo basalt
#

nah

#

gotta give a grace period before I let mfs steal my work

vapid grove
#

alr

torn shuttle
#

boys it's cold outside

#

stay warm and remember, I don't charge for setting your house on fire

#

especially if you're imillusion

vocal cloud
#

Flights to Europe are cheap this year

delicate obsidian
#

is import net.minecraft.server.v<VERSION>.EntityZombie equals to import net.minecraft.world.entity.monster.WitherSkeleton but in 1.17+?

#

I want to be sure 😅 nms confuses me

signal cape
#

Hello, is there any way to change the name above the player's head?

opaque scarab
#

So I’ve been running an SMP server for a few years and am creating a new one. I’m planning to code my own plugins for the server. Should I develop different plugins for different things, such as friend requests, land claim, etc, or have all of that in one plugin jar?

#

@signal cape Yes, but it’s not particularly easy

toxic haven
opaque scarab
#

@signal cape You can do so by editing a player’s game profile in packets.

torn shuttle
opaque scarab
#

@torn shuttle What would you say is the most common way?

torn shuttle
#

it's hardly common for servers to be fully developed in-house in the first place

opaque scarab
#

The total code is going to be quite massive, so that’s why I thought I might want to divide different parts into differing plugins

kind hatch
#

That's probably going to be the smarter move in the long run.

opaque scarab
#

@kind hatch Your profile seems familiar LOL

kind hatch
#

I was thinking the same thing,

torn shuttle
#

I actually had to double check if you weren't him

#

I'd just go with very large modules that can be put on multiple servers where you would have a baseline module and then maybe another additional module for survival, one for creative and so one

#

having to simultaneously develop maintain and debug several projects isn't fun to me

opaque scarab
#

The only issue with multiple plugins is that even though there are differing parts they are very interconnected. For example the friend system works with the quest system so multiple people can do a quest together.

#

I can interconnect different plugins of course, but they share a lot of data between them

torn shuttle
#

imo as long as you don't have a reason to split them up you could just not do it

kind hatch
#

Databases will help reduce some of that interweaving, but some modules are going to be tightly coupled together.

torn shuttle
#

I mean ultimately videogames are usually just one large project and odds are the codebase of your server won't reach the levels of complexity of something at that level

toxic haven
#

Hmm, how do I preserve "[1] Wild Boar 100/100♥️" and update the part in bolded on attack?

opaque scarab
#

@torn shuttle @kind hatch Well, thanks for the help guys!

river oracle
#

Wait a second

torn shuttle
#

IGN gave a 10/10 to dwarf fortress?

#

did I enter a parallel universe?

quaint mantle
wet breach
#

It other words java conventions

#

Not required but recommended

#

?conventions

summer scroll
toxic haven
# summer scroll Set the display name on creature spawn and update it when entity got attacked.

import org.bukkit.ChatColor;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageByEntityEvent;

import java.util.Arrays;

public class update_mob_name implements Listener {
    @EventHandler
    public static void update_mob_name(EntityDamageByEntityEvent event){
        if(event.getEntity() instanceof LivingEntity){
            Player p = (Player) event.getDamager();
            String[] entity_name = event.getEntity().getName().split(" ");
            String final_name = String.join(" ", Arrays.copyOfRange(entity_name, 0, entity_name.length - 1));
            String display_to_mob = final_name + " " + ChatColor.GREEN + Math.round(((LivingEntity) event.getEntity()).getHealth() * 10.0) / 10.0 + ChatColor.WHITE + "/" + ChatColor.GREEN + ((LivingEntity) event.getEntity()).getMaxHealth() + ChatColor.RED + "❤";
            event.getEntity().setCustomName(display_to_mob);
    }
}
}
``` This is what I came up with, is it not optimal?
misty ingot
#

is there an effecient way to make a sort of map (using chat with green and white squares) which shows the claimed or unclaimed chunks in a certain radius around a player when they use a command?

#

I have all the player's claimed chunks stored in a database

#

I cant think of a way other than checking every single chunk one by one and then adding its color to the "map"

summer scroll
toxic haven
wary kettle
#

will you run into issues trying to add items to an inventory of a chest if the chest happens to be unloaded

#

or will adding the item load the chunk

rotund ravine
#

@wary kettle Are you keeping a strong reference to the chest?

harsh totem
#

If it's not a player and you try to cast it to a player you will get errors

toxic haven
wary kettle
rotund ravine
wary kettle
#

okay so i should be safe ?

#

ill test it myself but was just curious if anyone knew

rotund ravine
#

Probably, not really sure it will save the chest tho so u might just be adding to a trashcan

wary kettle
#

damn :/ ig ill have to test it for myself

fierce whale
#

Is there anyway to get maven dependency of MythicMobs?
I tried to find it during few days but failed 😦

glossy venture
raw prairie
#

I used chatGPT to help me make a queuesystem for my minigame plugin

#

I have yet to see how it works

bleak valve
#

I want to set a block to be a specific age of Frosted Ice, but I can't find anything online about how to do it.

The way to get frosted ice at a certain age with commands would be:
/setblock ~ ~ ~ minecraft:frosted_ice[age=2]

It doesn't seem to be BlockState or BlockData and it doesn't have its own class like Slab does. Does anyone know anything about this?

frigid finch
#

Hello I have to find a way to send clickable message in 1.19

iI’m currently using ClientboundSystemChatPacket

But it seems to have some issues with the plugin ventureChat

Do you already had this issues?
Is there a way to solve this or do I have to use theirs API if they have one( haven’t looked at it for the moment)

Thanks

chrome beacon
#

Not sure why you've been using packet? This has been part of the api for years

frigid finch
#

If I’m not mistaken

chrome beacon
#

No it still exists

frigid finch
#

I use the api for lower versions

bleak valve
chrome beacon
frigid finch
chrome beacon
bleak valve
chrome beacon
bleak valve
#

holy moly I never would have found that, thank you so much!

tender shard
#

uwu

main matrix
tender shard
#

yaaay we have a new TeleportCause now

tender shard
#

no idea why

rotund ravine
hybrid spoke
hybrid spoke
misty ingot
#

so there is no better way yeah?

hybrid spoke
#

what do you expect

misty ingot
#

well it was worth asking

rotund ravine
tender shard
#

yeah but there was no TeleportCause for this until yesterday

rotund ravine
#

Can even be fancy and dismount to the side facing the animal/mob or smth.

rotund ravine
hybrid spoke
tender shard
#

I love how I only have to change one line in my pom to make my plugins support 1.19.3 lol

rotund ravine
quaint mantle
#

only works in creative

tender shard
quaint mantle
#

for me no

tender shard
#

?paste your code

undone axleBOT
tender shard
#

and it's literally only 5 lines

quaint mantle
#

yes now it works with AllowFlight

quaint mantle
tender shard
#

np

quaint mantle
#

I found a really good vector

#

sweet spot for minigames server

#

pvp server

#

want it ?

#

lemme send the vid

tender shard
#

IIRC the default jump velocity is roughly 0.6

quaint mantle
#

the video is 1.6GB

#

cuz recorded in 165fps

#

bruh cant show you

#

wanna join my server to test it out ?

torn shuttle
#

woah buddy I sure love putting boxes inside of boxes

#

I just cant' seem to get enough of that

tender shard
tender shard
remote swallow
#

did you shoot the box afterwards

tender shard
#

I buried it, then I shot at the grave

quaint mantle
tender shard
#

and then I screamed "get rekd"

remote swallow
#

do you still have the gun

tender shard
remote swallow
#

ah

#

smart

#

no tracking

tender shard
#

the buyer's name was oliver193 or sth similar

remote swallow
#

huh

#

weird

quaint mantle
#

the burnt gun powder on ur hands

#

they will know

tender shard
remote swallow
#

yeah

#

i was ther

tender shard
#

I am writing this message with my left foot

remote swallow
#

i took them

quaint mantle
#

Oh but thats too sus

remote swallow
#

i have alex's hands on my desk rn

torn shuttle
tender shard
remote swallow
quaint mantle
#

how did you cut of ur hands

tender shard
quaint mantle
#

with no hand ?

torn shuttle
tender shard
#

it was a Gilette Mach 3

#

Turbo

remote swallow
#

he wedged a knife between the floorboards and slammed his wrist through it

tender shard
#

++

quaint mantle
#

bruh what about md 5 reporting you

#

with the text you wrote

tender shard
#

why would md report me, he would just ban me directly

#

if he'd bother

quaint mantle
tender shard
#

md_5 is the owner of this server lol

quaint mantle
#

ye

#

creator of spigot

remote swallow
#

so why would he report him

#

he can just ban him

tender shard
quaint mantle
#

who is him ?

tender shard
#

I am him

remote swallow
#

im saying "him" refering to alex

tender shard
#

which is me

#

#help-deeev lol

quaint mantle
#

yo I have a question guys

tender shard
#

?ask

undone axleBOT
#

If you have a question, please just ask it. Don't look for staff or topic experts. Don't ask to ask or ask if people are awake or available. Just ask the question to the channel straight out, and wait patiently for a reply. Make sure you use the right channel regarding the topic of your question. Create a thread in case the channel is already in use!

quaint mantle
#

how can I set a skin for cracked player

remote swallow
tender shard
#

what version

quaint mantle
#

no I have original

tender shard
#

what version

torn shuttle
#

"nobody wants to spend money on buying minecraft" is a bold statement to make about the most sold game of all time

quaint mantle
#

but to players

#

Like skin restorer

tender shard
#

I asked "what version" twice and I won't ask a third time

quaint mantle
#

1.19

torn shuttle
#

he'll shoot your dog, run

remote swallow
#

he hasnt shot my dog yet

quaint mantle
tender shard
#

in 1.19 you can create a new PlayerTextures object, then apply it to the player IIRC

quaint mantle
#

how

torn shuttle
tender shard
quaint mantle
tender shard
#

basically you get their textures, then you do setSkin(URL)

torn shuttle
quaint mantle
tender shard
#

mac is nice

quaint mantle
#

thats that easy ?

tender shard
#

you might also have to send a packet to update it, I am not sure. And a player will definitely NEVER see their own changed texture

#

it's only visible to others

torn shuttle
#

never let them take away your dog's right to bear arms

tender shard
#

great, it's working

remote swallow
#

thats berm peak

torn shuttle
#

if your code doesn't work at first, lower your threshold for success until it succeeds

tender shard
#

my code does indeed work

#

it's supposed to crash

torn shuttle
#

with no survivors?

tender shard
#

yes, and with no evidence

tender shard
wet breach
#

Wouldnt say no evidence

torn shuttle
#

we need to go back to the defcon talks about how to instantly destroy server racks

wet breach
#

7a1c00 of jvm.dll. Would only need to look at jvm source at that offset to know why it crashed.

remote swallow
torn shuttle
#

oh man I should've already gone to bed

#

@tender shard tell me a bedtime story so I don't have any nightmares

formal bear
#

How to store two values with same key? I want something like, i used hashmap for one value but how to do it with 2?

item:
  slot: //key
  name: //val1
  action: //val2
#

typical java question

torn shuttle
remote swallow
#

FileConfiguration#set("items.slot", value)

eternal oxide
torn shuttle
#

you can make multiple different objects that have the same inner keys or you can create maplists which have anonymous keys but you can't have two identical keys

formal bear
#

okay thanks for advice

eternal oxide
#

or you multimap

tender shard
#

but it takes about 30 minutes to tell it

torn shuttle
#

I'm surprised you haven't quit your day job yet

tender shard
#

and it's a two part joke, usually it's followed by the "couple goes on honeymoon and eats spaghetti"-joke

#

otherwise it makes no sense

tender shard
#

actually I started it again a few weeks ago

torn shuttle
#

were they still recruiting at the comedy graveyard?

tender shard
#

that summarizes it up

#

as everyone probably knows, I'm a tax lawyer - yikes

#

so "comedy graveyard" is a pretty close match

torn shuttle
#

theoretically speaking, how many tax lawyers would one have to kill before taxes stopped existing?

tender shard
#

none, we are there so you pay less taxes

torn shuttle
#

hm

tender shard
#

you'd have to kill the government to stop taxes

torn shuttle
#

interesting

#

I have to go call up my boys elon and jeff

tender shard
#

don't forget about bill and his buddy warren

misty ingot
#
java.lang.RuntimeException: java.sql.SQLFeatureNotSupportedException
        at dev.wonkypigs.cosmicvaults.Handlers.VaultHandler.lambda$createNewVault$4(VaultHandler.java:148) ~[?:?]
        at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftTask.run(CraftTask.java:82) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) [spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
        at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: java.sql.SQLFeatureNotSupportedException
        at org.sqlite.jdbc4.JDBC4PreparedStatement.setBlob(JDBC4PreparedStatement.java:125) ~[sqlite-jdbc-3.36.0.3.jar:?]
        at dev.wonkypigs.cosmicvaults.Handlers.VaultHandler.lambda$createNewVault$4(VaultHandler.java:141) ~[?:?]
        ... 5 more
>

getting this error when I try to set BLOB in a local .db file
statement.setBlob(3, serializeItemsArray(vault.getContents()));

anyone know how I can fix this?

misty ingot
#

SQL

tender shard
#

which one

#

MySql?

#

mariadb?

#

sqlite?

#

...

misty ingot
#

sqlite

#

sorry

tender shard
#

do you know which version the server runs?

misty ingot
#

1.18.2

#

wait shit sorry hol on

tender shard
#

oh sorry, I meant the mysql server

misty ingot
#

where exactly can I find the version...?

tender shard
#

do you have ssh access? if so, just do "mysql -V"

#

or you can query it

#
SELECT VERSION();
#

it should return sth like "5.7.22-standard" or sth

#

should print sth like this

#

however you must run a REALLY OLD version of mysql if it doesn't support blobs. alternatively, you could just store your data as string or sth instead?

misty ingot
#

I dont run into the issue when I am using a not-local-file db

#

like when I connect to the one on the xampp server, theres no errors

tender shard
#

wdym with "not-local-file"?

#

if you are talking about files, are you maybe using sqlite instead of mysql? o0

misty ingot
#

ye

tender shard
#

oh yeah you use sqlite and not mysql

#

hm that's weird though, because sqlite ofc also supports blob datatypes

#

which version of the sqlite driver do you use?

#

oh I see, 3.36.0.3

misty ingot
#

its pretty much my first time using sqlite

#

wanted to make the plugin compatible with local data storage

tender shard
#

are you using maven?

#

or how did you include the sqlite driver in your .jar?

misty ingot
#

yep

tender shard
#

try changing the version to 3.40.0.0

#

then see if it still happens

#

3.36.0.3 is over a year old, but it should still work, I don't really have any idea. but I only got the source for the latest version, so please try this, if it still complains then we can check the source and see where it's coming from

#

latest is as said, 3.40.0.0

misty ingot
#

kk ima compile and check

torn shuttle
#

it's beautiful, now I can go to bed

tender shard
#

I need you

#

it's only 12:34 in germany

#

you cannot go to bed now

torn shuttle
#

you all do, and that has never stopped me before

#

it's 11:34 am in portugal aka bed time because I have dnd in 7h

tender shard
#

I'll give you a one star review on spigotmc if you go to bed now

remote swallow
#

he has do not disturb in 7 hours

misty ingot
#

like 2 mins before I asked the question here

tender shard
#

better not check my todo list

#

the backlog alone is waaay too long D:

echo basalt
#

imagine having backlogs

misty ingot
#

imagine having plugin ideas

tender shard
#

I have a ton of ideas

#

for example a tax plugin

#

players have to declare their income every X ingame days

#

if they don't do it properly, they are either jailed or fined

misty ingot
#

how about we leave that to the IRS

tender shard
#

ofc the plugin checks whether the amount they declared is income matches with their vault income

misty ingot
#

taxes are annoying enough already

#

please do not add them to minecraft

tender shard
#

okay another idea

#

an insurance plugin

#

admins can build a hospital. whenever a player dies, they respawn there, then they get a huge invoice, unless they bought insurance before

misty ingot
#

I got no ideas and a lot of time

tender shard
#

if they bought insurance though, the hospital will still mock you for certain types of death. you need to get an insurance that covers your actual cause of death

#

e.g. if you buy an insurance for void death but a creeper kills you, you still get an invoice

#

and if you don't pay it in time, then some headhunters will start to haunt you

misty ingot
#

my prime strategy right now is to just build a popular plugin type and try to add a small twist to it

tender shard
#

oh that's easy

#

just make another lifesteal plugin

#

or skyblock

#

or a backpack plugin

misty ingot
#

the plugin which is throwing errors is a vault plugin

tender shard
#

or, and this is actually what I wanted to do, is this:

misty ingot
#

after that i might just go for lifesteal

tender shard
#

a plugin that lets you spawn vanilla structures like villages, desert temples, etc with a command

#

e.g. /spawnstructure desert_temple

#

but that requires deep NMS fuckery

#

oh I have another idea, and that's actually easy and useful

#

allow players to choose their own color for their chat name

#

e.g. /chatcolor ff0000

#

and then their name is black in the chat

#

(only the name, not the message)

#

could also have a fancy GUI for them to choose gradients and stuff

#

I got another idea - when a creeper explodes, it should ofc destroy stuff - but it should get automatically repaired within like 5 minutes or so, so the blocks basically get rebuilt slowly over time

misty ingot
#

if I remember correctly

tender shard
#

yes but they are all shitty, don't work for chests and stuff

#

or they are made for 1.12 and below only

misty ingot
#

dont tell me you are also going to recover all chest contents

tender shard
#

well that could be toggleable ofc

remote swallow
#

can you even do that

tender shard
#

sure

#

I wrote that myself once but never published it

remote swallow
#

are you just gonna force them to use coreprotect

#

then just grab that

tender shard
#

noooo

#

just get the blockList from the explode event, then cast the chest to Container, then store the inventory in a map or sth

#

iirc I just used a Map<Location,BlockState>

misty ingot
#

same error
heres the code
I want to commit unalive

red sedge
tender shard
#

and please paste the full exception again

#

?paste

undone axleBOT
tender shard
misty ingot
tender shard
#

btw my most popular plugin (chestsort) is also a stolen idea

#

I stole it from QuickSort which wasn't updated to 1.13 back then

misty ingot
#

how do you even "advertise" your plugin

red sedge
tender shard
misty ingot
#

like how do you get people to know about it

tender shard
red sedge
tender shard
#

same for angelchest

misty ingot
misty ingot
misty ingot
tender shard
misty ingot
#

and share it

tender shard
#

which class exactly is "statement"?

misty ingot
#

PreparedStatement

tender shard
#

send the full class name pls, including package

red sedge
#

i feel like for plugins its really a lot more "make smth good and people will use it eventually"

misty ingot
#

import java.sql.PreparedStatement;

red sedge
#

like for games you cant really say that but i feel like for plugins it is more htat

tender shard
misty ingot
#

I guess its time to start copying every single plugin I see and put whatever twist I can onto it

#

and just try to make it better in general

tender shard
#

we gotta check the implementation

wet breach
tender shard
#

it looks like your JDBC driver simply doesn't support setBlob

misty ingot
#

plugin.getLogger().info(statement.getClass().getName()); this?

misty ingot
#

aight lemme build and run

tender shard
#

PreparedStatement is just an interface

#

some drivers apparently do not support setBlob

wet breach
#

Well no. Sqlite for example doesnt

tender shard
#

but it should, blob is a supported datatype in sqlite, I checked their docs a few minutes ago

wet breach
#

Which makes sense because sqlite is just flat file binary storage

misty ingot
#

btw is there a somewhat fast way to test out my plugin with versions 1.13-1.19? currently I just have local test servers for all the versions and I test one by one which is very annoying

tender shard
#

do you use NMS?

misty ingot
#

org.sqlite.jdbc4.JDBC4PreparedStatement

misty ingot
tender shard
remote swallow
#

^^

misty ingot
#

ah, alright

tender shard
#

you could also do some unit tests e.g. with MockBukkit

misty ingot
#

neat

misty ingot
tender shard
#

long story short - I'd just use strings or byte arrays when it complains about blobs

#

stupid work around, but that would definitely always work

remote swallow
#

is byte array actually an option

tender shard
#

what data do you actually save?

remote swallow
#

i thought you had to use blob for tha

#

t

tender shard
#

just go for strings

misty ingot
#

well serializeItemsArray() basically outputs a byte array

tender shard
#

you could use Base64 e.g. but that leads to about 33% bigger data

tender shard
prisma schooner
#

Can i make a furnace block lit in my inventory?

misty ingot
#

whatever works for storing full inventories...

tender shard
tender shard
misty ingot
#

cuz players will be able to have as many vaults as the server owner allows

tender shard
covert yacht
#

Hello, Is anyone else having an error where the server cannot save chunks on latest 1.19.3 build ?

https://paste.md-5.net/qipemucedi.coffeescript

Then i just tp the player to the world

Error:

[11:27:17] [Server thread/ERROR]: Failed to save chunk 0,0
java.lang.NullPointerException: Cannot invoke "net.minecraft.resources.MinecraftKey.toString()" because "minecraftkey1" is null```
covert yacht
#

I uhhh don't know 😅

tender shard
#

hmmm you never defined that var yourself?

covert yacht
#

I can show you the full error also

tender shard
#

yes

#

?paste

undone axleBOT
covert yacht
#

Here it is

tender shard
#

that is the full stacktrace?

#

there's no "caused by" line?

wet breach
covert yacht
#

Yes, and no there isn't its teh same error for idk 50 chunks

tender shard
#

if that's indeed the full stacktrace, then it's a vanilla bug I fear

#

the whole stacktrace only shows NMS classes

#

so I guess you'll have to report it to mojang 😛

wet breach
covert yacht
#

The thing is, yesterday it was working i created y world nicely and today i rebuilt the 1.19.3.jar of spigot using Buildtools and poof not working anymore

tender shard
#

what's your /version ?

covert yacht
wet breach
covert yacht
# tender shard what's your /version ?

This server is running CraftBukkit version 3625-Spigot-d90018e-585ab5b (MC: 1.19.3) (Implementing API version 1.19.3-R0.1-SNAPSHOT)
You are running the latest version

wet breach
#

To build specific commit versions

covert yacht
tender shard
covert yacht
#

but thanks for the info

wet breach
undone axleBOT
tender shard
#

do you maybe also have a .jar you could share, so I can try out your .jar myself?

covert yacht
#

yes, here or dm ?

tender shard
#

you cannot send files here because you are not verified, so just DM it. friend request is not needed

covert yacht
#

okay

wet breach
covert yacht
#

@tender shard your dm are locked ^^

tender shard
remote swallow
#

no

tender shard
remote swallow
#

gif finder

misty ingot
#

I would like to take a moment

#

to praise base64

tender shard
#

got it working now?

#

the only downside of base64 is that everything becomes like 33% bigger in file size

#

but tbh, who tf cares lol

misty ingot
#

works on the local db

tender shard
#

nice

misty ingot
#

testing on the server one now

tender shard
#

it will work

misty ingot
#

doesnt hurt to check

tender shard
#

sure 😄

#

I just wanted to say - nothing can go wrong with base64

misty ingot
#

basically, I dont trust myself

#

even if I know that the code is right

#
[17:44:46] [Craft Scheduler Thread - 0/WARN]: [CosmicVaults] Plugin CosmicVaults vv1.0 generated an exception while executing task 8
java.lang.RuntimeException: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Data too long for column 'CONTENTS' at row 1
        at dev.wonkypigs.cosmicvaults.Handlers.VaultHandler.lambda$saveVault$2(VaultHandler.java:89) ~[?:?]
        at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftTask.run(CraftTask.java:82) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) [spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
        at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Data too long for column 'CONTENTS' at row 1
        at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:104) ~[mysql-connector-java-8.0.27.jar:8.0.27]
        at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953) ~[mysql-connector-java-8.0.27.jar:8.0.27]
        at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1098) ~[mysql-connector-java-8.0.27.jar:8.0.27]
        at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1046) ~[mysql-connector-java-8.0.27.jar:8.0.27]
        at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1371) ~[mysql-connector-java-8.0.27.jar:8.0.27]
        at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:1031) ~[mysql-connector-java-8.0.27.jar:8.0.27]
        at dev.wonkypigs.cosmicvaults.Handlers.VaultHandler.lambda$saveVault$2(VaultHandler.java:86) ~[?:?]
        ... 5 more

something went wrong
getConnection().prepareStatement("CREATE TABLE IF NOT EXISTS player_vaults (UUID varchar(50), VAULT_ID int, CONTENTS TEXT)").executeUpdate();

#

storing base64 in CONTENTS

chrome beacon
#

Read the error

#

It tells you what's wrong

misty ingot
#

I did read it

#

but the same code works for the local db

chrome beacon
#

Is the vault EXACTLY the same

misty ingot
#

nope

chrome beacon
#

Then that can explain the error

misty ingot
#

well I am adding items to the vault

#

so base64 is working out for sqlite and blob is working for mysql

tender shard
#

data is too long

#

how did you setup the column / db / table?

#

you gotta keep in mind that some itemstacks can be REAAAAALLY long, e.g. books with a thousand pages

misty ingot
#

fixed it

#

encoding error :p

tender shard
#

great

#

so I can finally get totally drunk now?

smoky oak
tender shard
smoky oak
#

dunno

#

i always forget

tender shard
#

roughly

smoky oak
#

somewhere between 19 and 23

tender shard
#

then I'm way older than you are, so shut the fuck up bruh

#

bruuuuh

#

bruuuuuuuuuuuuuuuuh

hybrid spoke
#

alex is 16

tender shard
#

I am 27

smoky oak
#

i was referring to this not the way you were talking

hybrid spoke
#

not anymore

tender shard
#

some dude from the philippines drew it for me

smoky oak
#

i cant draw for the life of me

#

especially not digitally

tender shard
#

that's why noone pays you 40$

smoky oak
#

thats more because i dont provide any services and less that i dont want to do it

tender shard
#

joke's on you though

#

I just got 6.99€ on paypal like 15 seconds ago

echo basalt
#

imagine getting money

smoky oak
#

couldnt be me

tender shard
#

how do you all even pay your rent if noone pays you

hybrid spoke
#

what rent

smoky oak
#

government does it

hybrid spoke
#

i have a bridge

echo basalt
#

live with parents

#

or under the bridge

tender shard
hybrid spoke
#

only rent i pay is fighting for my life

echo basalt
#

how can I afford food? I can't :)

tender shard
#

spigotmc pays my rent and servers, and for all the remaining things I do my shitty tax lawyer job

echo basalt
#

oli paid for my dinner like 2 nights ago

tender shard
#

oliver193

echo basalt
#

no

#

olijeferson

tender shard
#

ooh

echo basalt
#

the one with the pathethic api

tender shard
#

I remember that person

hybrid spoke
#

@opal juniper when do you pay for mine

tender shard
#

and mine?

#

fuck you

echo basalt
#

I paid him back but still

hybrid spoke
echo basalt
#

I mean

tender shard
#

no

#

fuck

echo basalt
#

right now I'm good

tender shard
#

Imajin

hybrid spoke
tender shard
#

@quaint mantle fuck you

#

❤️

echo basalt
#

because I got paid from 2 different projects

#

and that was like 30 hours of work

red sedge
#

how much

echo basalt
#

at least 2$

hybrid spoke
#

so in total he made $60

smoky oak
#

were devs cipher

#

we dont get paid by the hour

tender shard
#

to go to jail you have to tax-fraud at least 100k€ or sth

hybrid spoke
smoky oak
#

are you working for a company???

hybrid spoke
#

yeah

tender shard
#

even I work for a company, what's the big deal

smoky oak
#

i much prefer freelancing

#

for a bunch of different reasons

hybrid spoke
#

well im getting paid very well so idc

smoky oak
#

thats fair

tender shard
#

I work for 3 different companies. One is my own, the other one is a f,lying instructor company, and the third one is a lawyer company

hybrid spoke
#

only downthing to work for someone is to work for someone

tender shard
smoky oak
#

i just clicked ur profile

#

whats VAT

tender shard
#

Umsatzsteuer

#

aren't you german?

smoky oak
#

sometimes

tender shard
#

VAT is basically "sales tax"

hybrid spoke
tender shard
#

"Mehrwertsteuer"

#

19%

smoky oak
#

hm

hybrid spoke
#

also known as gov. scam

smoky oak
#

wasnt there like a 10000€/year or so minimal amount of money u have to make before paying taxes in germany

tender shard
#

yeah

#

no

#

8852€

#

but that's only for income tax

#

everything you buy in the supermarket is taxed with 19 or 7%

#

basic stuff like food is 7%

#

everysthing else is 19%

smoky oak
#

like

#

rent tax or whatever

tender shard
#

rent tax? or do you mean "income through renting sth to someone else"?

smoky oak
#

like

#

the money you pay the government so the government pays you once ur old

tender shard
#

rente

#

you don't pay taxes for that, actually those payings are even deducitble from your taxes

#

do you have a normal 9-5 job? if so, you get a huge letter at the end of every year

#

this huge table on a DIN-A4 page

#

you can deduct all those "rente" payments from your declarable taxes

#

we germans call it ALTERSVORSORGE!!!!!!!!!!!11111

#

*eleven

rotund ravine
red sedge
#

man germans a hard language

tender shard
smoky oak
#

1st

tender shard
#

ok then you cannot deduct it

#

but you can do an Einkommensteuervorauszahlung, in case you ever make money with the job you are currently studying

smoky oak
#

no like

#

university

tender shard
#

yeah

opal juniper
rotund ravine
#

Can u #general thx

tender shard
#

Imagine you now study IT stuff, and you pay 300€ per semester for this - you can then, when you finally make money ih 3 years, deduct all that stuff you paid to study

#

but only if you do an Einkommensteuervorauszahlung now

#

hmu in DMs for more details

smoky oak
#

might do later

orchid gazelle
#

TLDR: in germany, you just pay a SHIT LOAD of taxes for literally EVERYTHING

rotund ravine
hybrid spoke
orchid gazelle
hybrid spoke
#

prison is taxfree

orchid gazelle
#

well but I cannot code minecraft plugins when in prison

hybrid spoke
#

write the code on paper

#

and give it to your family members

orchid gazelle
#

ohhh ok

#

but they do not know how to use the code then

#

also I need to use google

hybrid spoke
#

then you start with dealing code snippets in prison

#

build your own computer with starlink internet access

#

and voila

orchid gazelle
#

LMAO

hybrid spoke
#

but arent german prisons like a normal appartement anyways

orchid gazelle
#

aight

hybrid spoke
#

well there are many prisons where its just like a wohngemeinschaft

#

with everything you need

#

otherwise trade informations about your inmates for a computer

orchid gazelle
#

lmao

#

sure

hybrid spoke
#

then learn youtube judo so you dont get beaten up

orchid gazelle
#

well but

#

I cannot order mcdonalds in prison

hybrid spoke
#

drones

orchid gazelle
#

aren't they gonna get shot down?

hybrid spoke
#

its germany

#

obv no

orchid gazelle
#

and aren't my windows full of iron bars?

hybrid spoke
#

just turn the drone sideways then

orchid gazelle
#

it doesn't work like that

#

my mcdonalds is too big

hybrid spoke
#

then go for subway

orchid gazelle
#

no

hybrid spoke
#

long and small

orchid gazelle
#

I do not like subway

hybrid spoke
#

thats what she said

orchid gazelle
#

I want mcdonalds

hybrid spoke
#

subway is the best

orchid gazelle
#

lmao

#

next subway is probably 50 miles away

hybrid spoke
#

not your problem if you let them deliver it

orchid gazelle
#

OH WAIT actually its just 25 miles

orchid gazelle
hybrid spoke
#

microwave it

orchid gazelle
#

and I want mcdonalds not subway

hybrid spoke
#

burgerking>

orchid gazelle
#

no

#

wg

#

wtf

#

ok we gucci my boi

hybrid spoke
#

but that wasnt a question

#

burgerking is superior

orchid gazelle
#

no

hybrid spoke
#

but subway is unbeatable

orchid gazelle
#

mcdonalds >>>

hybrid spoke
#

peter pane or pizza bulls also very good

red sedge
#

why did i think of subway surfers when i saw subway

hybrid spoke
summer scroll
#

Is there something wrong with this code? Because for some reason it's turning "$51.28M" into a Memory Path or something https://paste.md-5.net/tuwilaxubu.sql, I'm trying to replace every character with unicode.

    private String parse(String message, List<Placeholder> placeholders) {
        String result = message;
        for (Placeholder placeholder : placeholders) {
            result = result.replace(placeholder.getPlaceholder(), placeholder.getReplacement());
        }
        return result;
    }
red sedge
#

seeing $51.28M makes my eyes bleed

summer scroll
#

what's wrong with that smh

#

been trying to fix it for hours

red sedge
#

idk it just makes my eyes bleed

echo rain
#

So, this is a weird bug. I'm writing a plugin where other entities can ride on the player and the player should be able to interact with them using a lead. The problem is that, when I use a lead on a sheep that rides me, the game will unmount and leash it.
Even if I cancel the PlayerLeashEntityEvent, the sheep changes its state on interaction. While it's still mounted, it now stays in the position where I tried to leash it.
What I'd want it to do is to simply ignore being leashed when riding on me.

public void cancelLeashing(PlayerLeashEntityEvent event) {
    final Player player = event.getPlayer();
    if (getBaseVehicle(event.getEntity()) == player) {
        event.setCancelled(true);
        Bukkit.getLogger().info("Cancelled " + event.getEventName());
    }
}
rotund ravine
smoky oak
echo rain
smoky oak
#

idk then sorry

#

on a different topic who do i ping for issues with buldtools

#

If any of the staff reads this, atm --rev latest is generating 1.19.2 instead of 1.19.3

misty ingot
#

^^

smoky oak
#

and it still says remapped doesnt exists

faint sedge
#

Hey ! Do you think that this piece of code is clean ?
If not, why ? I don't get what's good code and what's not haha

public static void magicClockUse(PPlayer pPlayer, ItemStack item) {
        Player player = pPlayer.getPlayer();
        if (pPlayer.getMagicClockLocation() == null) {
            // Case of the 1st use
            
            // We enchant the clock 
            ItemMeta itemMeta = item.getItemMeta();
            itemMeta.addEnchant(Enchantment.DURABILITY, 1, true);
            item.setItemMeta(itemMeta);
            
            // We set the teleport location for the councerned player
            pPlayer.setMagicClockLocation(player.getLocation());
            player.sendMessage("§6" + Main.getPlugin().getConfig().getString("MagicClockTimeTravelBegin"));
            Bukkit.getScheduler().runTaskLater(Main.getPlugin(), new Runnable() {
                @Override
                public void run() {
                    if (pPlayer.getMagicClockLocation() != null) {
                        // What runs after the end of the effect
                        player.sendMessage("§6" + Main.getPlugin().getConfig().getString("MagicClockTimeTravelEnd"));
                        MagicClock.removeOneMagicClock(pPlayer);
                        player.teleport(pPlayer.getMagicClockLocation());
                        pPlayer.setMagicClockLocation(null);
                        //TODO Animation retour dans le temps
                        return;
                    }
                }
            }, 20*(2+3*pPlayer.getGadgetLevel("magicClock")));
        } else {
            // Case of the second use
            player.sendMessage("§6" + Main.getPlugin().getConfig().getString("MagicClockTimeTravelEnd"));
            MagicClock.removeOneMagicClock(pPlayer);
            player.teleport(pPlayer.getMagicClockLocation());
            pPlayer.setMagicClockLocation(null);
            //TODO Animation retour dans le temps
        }
    }```
rotund ravine
echo rain
#

I cancelled playerinteract, playerinteractentity and playerleashentity at the same time

kind hatch
quaint mantle
#

The method translateAlternateColorCodes(char, String) in the type ChatColor is not applicable for the arguments (String, String)

#

what the hell ?

#

I am doing: ChatColor.translateAlternateColorCodes("&", title)

kind hatch
#

Chars use single quotes and only refer to one character.

String s = "MyString";
char c = 'A';
quaint mantle
#

tf is that shit

kind hatch
#

It's how you differentiate.

molten hearth
iron palm
#

Hello, why the hell am i getting this error?

Caused by: java.lang.NoSuchMethodError: org.bukkit.entity.Player.sendTitle(Ljava/lang/String;Ljava/lang/String;III)V
        player.asPlayer().sendTitle(ChatColor.translateAlternateColorCodes('&',title),ChatColor.translateAlternateColorCodes('&',subTitle),fadeIn,stay,fadeOut);