#help-development

1 messages Β· Page 273 of 1

twin venture
#

alr

gleaming grove
#

How can I remove path from yaml with YamlConfiguration?

rotund ravine
#

it would be fine

rotund ravine
gleaming grove
#

unfortunately it does not work for whole section, only for property

eternal oxide
#

set to null

echo granite
#

why giving a player items after teleporting him to another world doesn't show the items?

#

even player.updateInventory() didn't help

fluid river
#

doesn't show or player doesn't have them?

fluid river
#

you just set the section to null

#

and saveConfig()

#

^

undone axleBOT
fluid river
#

i just found this

#

HashMap does use hashCode of objects inside it

tall dragon
#

still on the hashing issue huh nuker? hahaha

fluid river
fluid river
#

i just passed english exam

#

and now going home

#

to write my own hashmap

tall dragon
#

good luck and congrats πŸ˜„

lethal knoll
#

Quick one, does the WorldLoadEvent also trigger when the server enables ?

fluid river
#

?jd-s

undone axleBOT
tall dragon
#

sorry read that wrong

lethal knoll
#

I remember I had to implement both

tall dragon
#

yes.

fluid river
#

?tryitandsee

#

?tas

undone axleBOT
fluid river
#

got skemed

tall dragon
fluid river
#

by discord bot

tall dragon
#

using ur plugin.yml

lethal knoll
#

@tall dragon , that is most likely the issue, thanks πŸ™‚

fluid river
#

alr while i'm on a bus i'm gonna start coding map

lethal knoll
#

Wait one sec, I thought you meant there is a PreWorldLoadEvent

fluid river
#

no

lethal knoll
#

So I guess I'm missing something

fluid river
#

google plugin.yml

#

first result

#

you can make your plugin load before world loading

#

or after

lethal knoll
#

Ah interesting, never knew that

tall dragon
#

well now ya do

lethal knoll
#

Thanks again πŸ™‚

fluid river
lethal knoll
#

Yea, just saw it

fluid river
#

there are lots of interesting params to set

cedar nest
#

Hello, i have a probleme with my compass script its my first plugin i tried all what i find in internt and nothing work i have this error

lethal knoll
#

Will check that article a bit more

cedar nest
#

Hello, i have a probleme with my compass script its my first plugin i tried all what i find in internt and nothing work i have this error

[12:50:35 ERROR]: Could not pass event PlayerInteractEvent to Compass v1.0 org.bukkit.event.EventException: null at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:228) [server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:195) [server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:191) [server.jar:git-Spigot-21fe707-741a1bd] at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:717) [server.jar:git-Spigot-21fe707-741a1bd] at net.minecraft.server.v1_8_R3.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:52) [server.jar:git-Spigot-21fe707-741a1bd]

fluid river
rotund ravine
#

@cedar nest And the rest of it?

tall dragon
#

i doubt thats the whole exception indeed

lethal knoll
#

It's not xd

cedar nest
#

Could not pass event PlayerInteractEvent to Compass v1.0 org.bukkit.event.EventException: null at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:228) [server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:195) [server.jar:git-Spigot-21fe707-741a1bd] at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:191) [server.jar:git-Spigot-21fe707-741a1bd] at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:717) [server.jar:git-Spigot-21fe707-741a1bd] at net.minecraft.server.v1_8_R3.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:52) [server.jar:git-Spigot-21fe707-741a1bd] at net.minecraft.server.v1_8_R3.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:1) [server.jar:git-Spigot-21fe707-741a1bd] e

lethal knoll
#

Further down

fluid river
#

bruh

#

full error

cedar nest
#

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_333]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_333]
at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [server.jar:git-Spigot-21fe707-741a1bd]
at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:715) [server.jar:git-Spigot-21fe707-741a1bd]
at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [server.jar:git-Spigot-21fe707-741a1bd]
at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [server.jar:git-Spigot-21fe707-741a1bd]
at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [server.jar:git-Spigot-21fe707-741a1bd]
at java.lang.Thread.run(Thread.java:750) [?:1.8.0_333]
Caused by: java.lang.NoSuchMethodError: org.bukkit.inventory.PlayerInventory.getItemInMainHand()Lorg/bukkit/inventory/ItemStack;
at compass.handlers.CompassHandler.UseCompass(CompassHandler.java:83) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_333]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_333]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_333]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_333]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[server.jar:git-Spigot-21fe707-741a1bd]
... 18 more

fluid river
#

noSuchMethod

#

server and plugin target mc version mismatch

#

i guess

tall dragon
#

yea

rotund ravine
#

You're using 1.8 for atleast a 1.9 plugin

cedar nest
#

no the plugin is on 1.19.2

#

but all works

#

only the right click

#

not work

fluid river
#

server is on 1.19.2?

rotund ravine
#

Are you the dev?

fluid river
#

plugin is for 1.19.2?

rotund ravine
#

No

fluid river
#

JDK is 17?

cedar nest
lethal knoll
#

@cedar nest , the version on which you build your plugin and the version of your server are not mathing

cedar nest
#

all work

fluid river
rotund ravine
cedar nest
#

yes

rotund ravine
#

Stop being here if it all works thank you.

fluid river
#

Lez go

cedar nest
#

i said all work just right click dont work calm down @rotund ravine

fluid river
lethal knoll
#

@cedar nest , you are using a different server jar for developing, and your server running

fluid river
#

bruh

#

i just realized there is no Object in c++

#

and reflection is only in compile-time

#

time to figure out how to accept any type for key and value

rotund ravine
#

Revert to a 1.8 api.

fluid river
#

?

#

i googled some shit

#

and it worked

#

well

#

maybe hashmap doesn't permit duplicates because it has Set under the hood?

#

which doesn't allow duplicates by itself

#

@tall dragon

#

entrySet

fluid river
#

actually this thing doesn't work

#

with voids

tardy delta
#

whats wrong with that

tardy delta
#

im confused with the new keyword, that allocates your object on the heap right?

#

and whats the diff with the normal constructor then?

#

like Entry entry() vs new Entry()

#

i know the second one returns a pointer

#

:o

floral drum
#

lemme find it

tardy delta
#

looks like a mess tbh

floral drum
#

woah

tardy delta
#

atleast nested functions with multiple parameters work

floral drum
#

he so cool

ornate mantle
#

how do i stop a specific structure from generating in worlds?

#

wow i wouldve never thought about that

fluid river
#

I don't think c++ support it the way java does

#

Yeah i read about them

#

There is alo boost::any() thing available

#

But idk what boost is

#

Gonna try it later

tardy delta
#
template <typename T, U>
struct Entry {
  T key,
  U value
}```maybe?
fluid river
#

Maybe

#

Will check this out somewhen in the evening

tardy delta
#

it says U is undefined too

orchid gazelle
#

uhm so since the center of a minecraft player is between the 2 feet, which Z depth does it have?

#

in 3D space

tardy delta
#

ah <typename T, typename U> lol

undone axleBOT
burnt sand
#

I got a npe

#

thats the error ^^

eternal night
#

items must not have an item meta

#

hence the getItemMeta method is annotated with @Nullable

burnt sand
#

No thats not the npe

#

Because the itemmeta is for a gui

eternal night
#

sure πŸ˜‚

frank kettle
#

quick question about event priorities

if i want a event to happen after all the other plugins, I use HIGHEST priority correct?
(So lowest = first, highest = last)

eternal oxide
#

If you only need the event and don't intend to make any changes you use Monitor

frank kettle
#

im using the block break event to give a reward so im checking if the event was cancelled priviously by others(like world guard and such)

frank kettle
eternal oxide
#

ANY change

frank kettle
#

so if im not intending to cancel it, just monitor

eternal oxide
#

yes

frank kettle
#
@EventHandler(priority = EventPriority.MONITOR)
    public void onBlockBreak(BlockBreakEvent event) {
        if (!event.isCancelled()) {
            // 10% chance
            int rng = new Random().nextInt(0, 10);
            if (rng == 1) {
                // give reward to player.
            }
        }
    }```
#

something like this then right?

shadow tide
#

How do I make it so that my command doesn't have this:

#

the player tab thing

#

I don't want that

tardy delta
#

return Collections.emptyList() as tabcompletion for that command

shadow tide
#

how do I set up tabcompletion so that I can return anything lol

#

I forget

tardy delta
#

let your command class implement TabCompletor and override the method to return Collections.emptyList() when your args.length == 1 i believe

echo granite
#

How to get all blocks inside a WorldGuard Region through WG API?

tardy delta
#

might be 0 too

tardy delta
#

and then do getCommand("set").setTabCompletor(new MycommandExecutor())

shadow tide
#

works thanks

#

nvm

#

I meant does like args.length < 1 mean there has to be the command or there has to be an extra argument

tardy delta
#

so args.length is 0, that means you just entered /set

shadow tide
#

thanks

tardy delta
#

command name is not included in the args

shadow tide
#

thank you

echo granite
shadow tide
echo granite
shadow tide
#

Β―_(ツ)_/Β―

sterile breach
#

I use nametagedit except that in the last version, I don't know why but when the player leaves and rejoins it doesn't update these tags and he doesn't see those of others (you have to reload /nte) with the nametagedit api it would there be a way to fix this?

ancient plank
shadow tide
#

how do you send a message from the server only to the command sender (for like command syntax errors)

tardy delta
#

CommandSender#sendMessage?

shadow tide
#

oh lol

#

I guess that makes sense

#

real quick how do you grab the chatcolors

#

nvm figured it out

versed fern
#

How to change tile.item.name in a string? According to the game language.

#

message.replace("%material%", ...);

fluid river
#

set<Entry<K, V>>::iterator it;

fluid river
#

?jd-s

undone axleBOT
versed fern
#

So how can I do it? I did a lot of research and I couldn't find it.

fluid river
#

maybe with textcomponent

#

maybe with nms

#

maybe replace it individually for every player

#

according to Player#getLocale() result

#
set<Entry<K, V>>::iterator it;```
#

shit is not working

#

bruh

#
typename set<Entry<K, V>>::iterator it;```
sterile breach
#

hello, can you help me please, i have a probleme with nametagedit πŸ‘€

tardy delta
#

?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!

sterile breach
#

ok ok, I have a little problem with the last version of nametagedit, when I join the tags are not displayed I have to /nte reload which is a bit annoying

glossy venture
#

anyone know why its practically stopping execution after stream.collect(...)

raw sky
#

Do you use the mc dev plugin?

#

Wait tf

glossy venture
#

show your pom.xml
if its correct but still doesnt work File -> Invalidate Caches might do something

fluid river
#

hmm

glossy venture
floral drum
glossy venture
#

ima do it synchronously and check if it crashes the server lol

fluid river
#

Cool now i need to define a sorting algorithm for set of objects of any type

#

how the heck am i supposed to sort them idk

#

i guess java uses hashCodes here

#

gonna go with random

tardy delta
#

lol

fluid river
#

just returning false

#

not even a random

#

set doesn't allow duplicates anyways

tardy delta
#

what are you doing lol

fluid river
#

in both java and c++

fluid river
tardy delta
#

brr

fluid river
#

it's working

#

i made a map without hash-function

#

java devs suck

rotund ravine
#

@fluid river What’s the complexity

fluid river
#

idk lol

#

idk how to measure it

tardy delta
#

i once found a good site which explains the map impl but i cant find it anymore

fluid river
tardy delta
#

looks like O(n) lmao

fluid river
glossy venture
fluid river
#

well it's not a hashmap

#

it's just a map

tardy delta
#

my function searching algorithm is O(n) too \😒

glossy venture
tardy delta
#

class TrashMap

fluid river
#

SetMap

#

ig

#

log n for set in worst case

#

n for get

#

and n for remove

#

would also be n for containsKey

#

and containsValue

rotund ravine
#

Why not use hashes?

#

O(1)

tardy delta
#

cant find the original post

fluid river
#

cuz i haven't figured out how to use hash for map

#

and c++ doesn't have hashCode() method

#

which is probably used to sort entrySet of a map

#

with some native shit

tardy delta
#

hashcode determines the bucket at which the entry is stored

fluid river
#

same as in my map

#

if only i knew what the fuck is bucket

tardy delta
#

an array of linkedlists basically

river oracle
#

Does c++ not have maps?

tardy delta
#

a bucket is that linkedlist iirc

glossy venture
fluid river
glossy venture
#

std::unordered_map

#

is a hash map

tardy delta
#

smells like me who tried to implement a linkedlist

#

\πŸ’€

fluid river
#

i just can't figure out how u can have collision in a map

#

it's like

#

not possible

#

the only way is to literally try to add duplicate

tardy delta
#

wdym?

fluid river
#

but hash fucntion is not about object duplicates

#

it's about generated hash duplicates

rotund ravine
fluid river
#

Chain hashing

tardy delta
#

i forgot

#

in java if the hashcode returns twice the same thing, then equals is being used iirc

fluid river
#

you can do it as an array of linked lists

#

or

#

(proper way)

#

you have a pointer next which is null by default

#

and when you have a collision, object with the same generated hash is getting pointed at in the first object's field

tardy delta
fluid river
#

and like you have

#

first:
next = null

#

second appears

#

first:
next = second
and at the same time
second:
next = null

tardy delta
#

just a linked list?

fluid river
#

it's more like having pointer inside your object itself

#

not initialising the list

#

which does the same thing

paper falcon
#

I'm checking for player's boots but this for some reason isn't working?

fluid river
#

you are comparing item and material

#

ofc it's not gonna work

#

armor[0].getType()

tardy delta
#

[] overloading \πŸ’€

paper falcon
#

the thing is

paper falcon
tardy delta
#

that would be handy for my functioncontext class

paper falcon
fluid river
#

cuz you don't need this for loop

#

armorContents[0].getType()

paper falcon
#

oh now I feel dumb

#

lmao thanks

fluid river
#

yea

#

i was disoriented with your code

paper falcon
#

:))))

#

glad to hear that

fluid river
#

well

#

how do i add hash to the map i wrote

#

time to think

#

oh i guess i see

#

actually no

tardy delta
fluid river
#

aren't map elements sorted like

#

0, 1, 2, 3?

#

not as 22, 76, 09, 29

#

can you even get map's element by number

#

i guess not

tardy delta
#

wdym the elements? are you assuming a map<K, int>?

fluid river
#

entries*

#

in the list you have

#

List#get(0)

#

in map you only get by key

#

so the part with filled array slots is hidden from end-user

#

well now i guess i know how to make hashmap

#

i love c++

#

hiding like everything in java

#

tho hashmap still has O(n) in worst cases

#

cuz of chain hashing

#

the thing can easily turn to looping through a long linked list

#

because there were 999 collisions

#

so the linked list in slot is very long

#

while other array slots are empty

tardy delta
#

i believe the linked list turns into a tree when some threshold is exceeded

#

once read that

fluid river
#

idk

#

probably not

#

chain hashing is chain hashing

#

lists should still be lists no matter what

#

tho how resizing hashmap would help with a giant linked list on index 2

#

you should also change your hashfunction to have better results

tardy delta
#

mmh

fluid river
#

but, you can just avoid using hash functions

#

and use my map

#

πŸ˜‰

#

with O(n) everytime

tardy delta
#

SMH

fluid river
#

O(log n) on insert*

tardy delta
#

just have a map with n places that overwrites itself when reached

fluid river
#

COOL

#

Which other data structures should we create

lavish wing
#

Guys help me, what could be the problem here?

    @Override
    public void onEntityDamage(EntityDamageEvent e) {
            if (e.getEntity() instanceof Player) {

                Player player = Bukkit.getPlayer(((Player) e.getEntity()).getName());

                if (new Main().getGodList().getOrDefault(player.getName(), false)) {
                    // player.setHealth(e.getDamage());
                    e.setCancelled(true);
                    player.sendMessage("debug: damage cancelled");
                }
            }
    }
fluid river
#

@Override i guess

tardy delta
#

i once made a circular linked list and i kept getting stackoverflows \πŸ’€

fluid river
#

this code is disgusting bruh

#

new Main()

#

why

#

you can just use instance...

tardy delta
#

\🀑

fluid river
#

and well, have a godlist saved

#

not created from scratch with no entries every event

rotund ravine
#

Well somewhat wrong

fluid river
#

maybe he is trollin

tardy delta
#

what even is a playwr

lavish wing
rotund ravine
#

Eat a dogpoop @tardy delta I am on my phone. So that’s why

rotund ravine
#

The new Main seems dangerous as that os prolly your JavaPlugin

#

Setting the health to damage is wrong

lavish wing
#

Why

fluid river
#
@EventHandler
public void onEntityDamage(EntityDamageEvent e) {
    if (!(e.getEntity() instanceof Player player)) return;
        if (mainInstance.getGodList().contains(player)) e.setCancelled(true);
    }
}```
rotund ravine
#

Cause it is. Just don’t do it and cancel the event

fluid river
#

tho player.setInvulnerable() is a lot better

rotund ravine
#

No haha

river oracle
fluid river
#

yes

rotund ravine
#

This way another event can edit it obv

tardy delta
#

dont expose collections

lavish wing
fluid river
#

cuz if entity is not player you shouldn't go further?

river oracle
fluid river
#

it's fine to code on Fava

#

for Jree

tardy delta
#

no point to copy them either

lavish wing
rotund ravine
fluid river
#

it's now part of JDK

rotund ravine
#

Yah as always

fluid river
#

no

#

i mean yea but

#

you could easily download JRE 1.8

#

without jdk

rotund ravine
#

Yeah that was weird

fluid river
#

cuz i guess end users don't need to compile

#

they just need java.exe

#

and javaw.exe

charred blaze
#

I know it's not associated to this server, but I'm asking anyway. Can I install 64 bit on this?

fluid river
#

why not just google

#

i3-2100

#

and your motherboard

#

if they support 64bit

charred blaze
charred blaze
lavish wing
#

We don't know. It's not in the photo

charred blaze
lavish wing
#

Yes

#

just google it

charred blaze
#

did it

#

how can i check if it supports 64 bit?

acoustic widget
#

Material.AIR.isItem() is returning true ... Normal ? How can an air be obtained ???

charred blaze
#

last time when i tried installing 64 bit windows it told me that "app is not suitable for this pc"(something like that)

flat ferry
#

hi guys i have a question

#

I translated a plugin and I configured it but I have a problem. The message is "To accept the trade, do /trade accept" but I would like to be able to make a clickable message example: "(Player) wants to trade with you [ACCEPT] [DENY]

glossy venture
#

use bungee component builder to add click events

lethal knoll
#

For supporting hex colors, can I just pass the full string to this method? Or do I still need RegEx to filter out the actual hex value from a message?
net.md_5.bungee.api.ChatColor.of("#FFFF") + "hello";

flat ferry
glossy venture
#

if youre not planning to edit the source code get help in #help-server

#

i dont think its possible through config strings tho

#

well it is but i dont think many plugins implement that

flat ferry
#

πŸ‘ thx

lethal knoll
tardy delta
#

sec

#

second method processes a whole string and colourizes all hex and normal colors

lethal knoll
#

Is there a reason why the ChatColor class was never adjusted to support it?

tardy delta
#

idk

lethal knoll
#

Thank you for this

#

But you seem to use ChatColor.of()

#

What version are you using?

#

That method doesn't exist

tardy delta
#

its the md5 package thing or whatever its called

lethal knoll
#

Nevermind ... I see it. Different import

tardy delta
#

not org.bukkit.ChatColor

lethal knoll
#

Yes, indeed

#

Thanks πŸ™‚

flat ferry
#

I have a problem with my accents on my plugins, I put with NOTEPAD++ In UTF-8, but it still does not work

echo basalt
shadow tide
#

I have a new file in a different package and it can't seem to access my main class

#

I feel like I've tried everything

onyx fjord
#

i was replying to someone but discord decided to show old messages

wary topaz
#

i was looking at my old code and i found this lol

if (sender.hasPermission("betterbedwars.stats.others")) {
                        e = " [player]";
                    }
                    else {
                        e = "";
                    }
                    sender.sendMessage("Β§eΒ§l/bw stats" + e);
#

i was so stupid

shadow tide
#

bruh

onyx fjord
shadow tide
#

lmao

wary topaz
#

haha

onyx fjord
#

i wish i joked

#

but ive seen things id like to unsee

wary topaz
#

like what?

onyx fjord
#

classes with thousands of lines

wary topaz
#

oo

#

ive seen a plugin with over 100 classes it hurts my brain

onyx fjord
#

what was it

wary topaz
#

screaming bedwars

onyx fjord
#

lol

#

most lightweight bedwars plugin ever

wary topaz
#

its notlol

tacit drift
#

he was joking i think

#

looks like javascript lol 🀣

wary topaz
#

oh god

#

who ever made it needs to touch grass πŸ˜†

wary topaz
#

accents?

flat ferry
kind patrol
#

use \u00EA

flat ferry
#

Encoding ?

#

But how does he tell the difference between the different accents?

#

I am French so I use a lot of accent, to translate my plugins, I translate them manually but it makes me mistakes with my accents

zealous scroll
#

Unicode escape characters is what you’re looking for

chrome beacon
#

When are you loading the location

#

Make sure you aren't trying to load it before the world is loaded

#

Yeah

eternal oxide
#

which world is the location in?

#

show the error you are getting

eternal oxide
#

de.psjahn.skyweapon.mines.Mines.<init>(Mines.java:15) my guess is you are trying to access the yaml too early

#

default plugins load post world

#

you must be accessing the config before onEnable

#

how am I to know that? show your main class perhaps?

#

ifr you set a field for your config would do it

#

or a static field

#

if that is a Field, yes

#

]that would run at class initialization

#

as I said, if you set a Field to yoru config

#

is line 15 actually IN your onEnable?

#

Then stop wasting my time, its exactly as I told you

tender tendon
#

How to delay a piece of code? I have tried many ways, but they all didn't work. I use kotlin.

chrome beacon
#

?scheduling

undone axleBOT
tender tendon
#

alright I will try again

gilded knot
#

Getting this error from my plugin

#

which stores playerNames and UUIDs into a MySQL DB

#

or warning* rather

#

plugin functions as normal tho

remote swallow
#

Did you actually read the error

gilded knot
#

Duplicate Entry

#

I know

#

But is there any way to suppress it?

river oracle
#

what

#

good design

gilded knot
#

thank you

river oracle
#

lets see you provide, 0 code with an obvious bad design pattern, thats all I can really add

#

if somethings being added more than once to teh same key, you probably have faulty logic

gilded knot
#

brains not working, its 11pm for me

#

I'll probably go to sleep and it'll come quite obvious to me tomorrow

river oracle
#

then sleep

gilded knot
#

yup

river oracle
#

you might dream the solution

#

and wake up at 3am and fix it

#

not like I'm talking from experience pff

zealous scroll
#

most likely because it’s a primary or unique key

gilded knot
#

ah right

zealous scroll
#

remove the indexes and it’ll fix itself

gilded knot
#

aight

dry forum
#

nms can be run in async taks right?

vocal cloud
#

Yes, you can remove the duplicate code from the switch

humble tulip
#

Spigot just calls nms code

#

And shouldn't be run async

#

Hence nms shouldn't

#

Some things can be done async tho

river oracle
#

you can read a lot of data async

#

generally can't write it though

#

so when run things async, I just run a sync task if something needs to be written

vocal cloud
#

Some of it can be abstracted into a method. Namely the _pickaxe and _axe.

#

Or they can be combined

humble tulip
#

Genuine question

river oracle
dry forum
#

https://pastebin.com/r85M4S17 im trying to set a lot of blocks with no lag, this is all of my code for doing that and im trying to set blocks around a center location, it sort of works. when i run the command to start setting the blocks the server freezes for like 2 seconds then the blocks start to be set with no lag, how do i fix the lag at the start?

zealous scroll
dry forum
#

thats what im doing

humble tulip
#

The lag is probably loading the file

#

Idk

dry forum
#
            YamlConfiguration configuration = util.getConfiguration();``` this?
river oracle
#

fuck

subtle folio
#

lmao

river oracle
#

?workdistribution

dry forum
#

thats literally what i copied

humble tulip
#

Log System.currentTimeMillis before and after loading the file

dry forum
#

idk why that would lag ive used that thousands of times with no problems its not like im initializing it every loop

humble tulip
#

Why read the config async?

#

Loading the config caches it to a map

#

You can read the config on the main thread

river oracle
#

just read hte config on startup

dry forum
#

was seeing if that would help

river oracle
#

idk if you can even read configs async

dry forum
dry forum
#

ik idky why tf is doing that

#

never had a problem with it

#
    private YamlConfiguration configuration;

    public FileUtil(File file) {
        this.file = file;
    }

    public YamlConfiguration getConfiguration() {
        YamlConfiguration configuration = new YamlConfiguration();
        try {
            configuration.load(this.file);
        } catch (IOException | InvalidConfigurationException e) {
            e.printStackTrace();
        }
        this.configuration = configuration;
        return configuration;
    }

    public File getFile() {
        return file;
    }

    public void save() {
        try {
            this.configuration.save(this.file);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }``` this is all it is
humble tulip
#

What's the file size

dry forum
#

4.94mb

humble tulip
#

Wat tf

#

Yh

dry forum
#

*mib

humble tulip
#

That's why

dry forum
#

i cant rly make it smaller

#

its to store distances for blocks

humble tulip
#

Configs aren't for that

dry forum
#

how else would i do it

humble tulip
#

Worldedit schematics

zealous scroll
#

you can make your own file type as well

#

and only store what’s necessary

dry forum
humble tulip
#

Or serialize it your own way

dry forum
#

would reading the file line by line be faster?

zealous scroll
#

or yes we schematics

humble tulip
#

But caches it all

zealous scroll
#

if you make your own file type you can handle de/serialization and caching by yourself

humble tulip
#

I was looking into how nms sends chunks and its really efficient

#

Alternatively

#

Load the file async and when it's done loading async, start pasting sync

dry forum
#

so just load the file async and the rest sync?

humble tulip
#

Yes

dry forum
#

it worked ty

quaint mantle
#

is there any way to turn the Location hashcode back to the locations cords

humble tulip
#

It's a hash

#

Hashing is 1 way

#

2 locations can havr the same hash

echo basalt
#

You can hash the xyz but you'll lose precision

quaint mantle
#

thought so

echo basalt
#

I use it for my particle culler

#

because the precision lost is small enough

humble tulip
#

Actually it probably exists

dry forum
#

what exists

#

also this might be a dumb question but is filesize based on how many lines there are or just quantity of text

hasty prawn
#

Technically both?

#

New lines increase the size, but so does quantity of text.

#

If you're talking about uncompressed sizes anyways.

dry forum
#

so

location: 5 6 7

vs

x: 5
y: 6
z: 7

would be same in terms of file size?

humble tulip
#

And there are lots of spaces in yaml

#

What you can do is store the data like x, y, z, type in every line

#

Basically csv

#

Oh but also blockstate

#

Or instead of type use the blockstate id from the global palette

#

But that's version specific

reef acorn
#

How can I show the second skin layer (DataWatcher)? I already tried a few things (see the codes below), but I always get kicked.```java
npc.getDataWatcher().set(new DataWatcherObject<>(16, DataWatcherRegistry.a), (byte)127)
npc.getDataWatcher().set( DataWatcherRegistry.a.a(16), (byte)127);

DataWatcher watcher = entityPlayer.getDataWatcher();
watcher.watch(10, (byte) 127);
connection.sendPacket(new PacketPlayOutEntityMetadata(entityPlayer.getId(), watcher, true));

DataWatcher dataWatcher = npc.getDataWatcher();
dataWatcher.set(new DataWatcherObject<>(16, DataWatcherRegistry.a), (byte) 0x01);
dataWatcher.set(new DataWatcherObject<>(16, DataWatcherRegistry.a), (byte) 0x02);
dataWatcher.set(new DataWatcherObject<>(16, DataWatcherRegistry.a), (byte) 0x04);

npc.getDataWatcher().set(new DataWatcherObject<>(16, DataWatcherRegistry.a), (byte)127);

limpid bloom
#

to confirm, i can cast a BlockData / CraftBlockData object to a Directional object, some blocks can and some blocks can't do this but a sticky piston's BlockData should be able to get casted to a Directional object?

humble tulip
#

Just check the javadocs

#

So what extends what

dry forum
#

whats the best way to change the text above a players name where their name normally is?

rotund ravine
#

Just do instanceof

hybrid spoke
torn shuttle
#

merry xmas losers

#

hope you get swole for xmas, like me, the cool dev of this room

trim creek
#

uhh

torn shuttle
#

I am young and I am hip and I wear my hat backwards so you don't see my thinning hairline

trim creek
#

All I got actually is money

#

XD

vocal cloud
#

Money is the root of all evil

trim creek
#

ikr xD

vocal cloud
#

Be like MagmaGuy swole and broke

trim creek
#

nah I won't be a bad boi

#

sry

vocal cloud
#

That way you're not evil and swole

torn shuttle
#

money won't help you when your qt3.14 is stuck under a bus and you need to lift 500lbs to save them

trim creek
#

anyway it was some months ago last time I was on any bus

torn shuttle
#

I haven't used the bus in about 16 years but that doesn't mean I can't find myself in a situation where I might have to deadlift one

trim creek
#

I ain't even that strong to lift a bus

torn shuttle
#

wow

#

do you even exist

trim creek
#

and I guess no "average" human can

torn shuttle
#

that's a big fat L

trim creek
torn shuttle
#

reject mediocracy, lift above

trim creek
#

not planning to do lifting atm

#

mostly because of the current events of Hungary

torn shuttle
#

you'll be the first one to go in the swole revolution

#

we're going to grab all of the manlets and throw them off a cliff

trim creek
#

*suddenly searches what a swole is*

#

ummm sure

#

I won't be.

#

πŸ˜…

hybrid spoke
#

just blow into your thumb and swole up

trim creek
#

Umm.. Nein.

#

Thanks

hybrid spoke
#

ummm... doch?

trim creek
#

I still gotta focus on school

torn shuttle
#

focusing on school is for people who can't deadlift a school

trim creek
#

Uhh sure

torn shuttle
#

I always raise the bar of any education establishment I enter

trim creek
#

But somehow I gotta fix my 1's in math

#

or else I will fail my year

#

and I don't want that

torn shuttle
#

can't lift weights and can't lift grades, how am I not surprised

trim creek
#

because I've already fucking had enough of the current school

trim creek
#

we all hate school 🀣

#

mostly if teachers are trash

#

and all they do is

#

STRIKE STRIKE STRIKE

#

and like

#

make classes only have like 2 or 3 students

#

xd

torn shuttle
#

I don't know of a single country that doesn't have students that think the same thing

trim creek
#

afaik they have the best education

torn shuttle
#

get some finished people in here, ask them what they think

trim creek
#

Sure if I ever reach the age of 18 I can visit Finland .-.

torn shuttle
#

I've been to the best schools and I've been to the worst schools, across multiple countries and spoken to many others and the experience has always been the same

#

I even hosted finish people who also said pretty much the same about their own education system

trim creek
#

Sure...

river oracle
#

specifically in america though

torn shuttle
#

same was said of quebec when I was there

#

and I heard similar things from spain, france, iceland, finland, the UK, some places in south america, japan...

#

idk maybe they love it in africa

#

oh yeah china too

#

SK

#

thailand

#

I think that's it

#

wait no italy too

trim creek
#

ngl if Africa really is that poor, I would actually love to get money to just escape those countries πŸ₯΄
I mean... Living in Africa is probably not really good, and I really want anyone to live here, because it is probably hell, but sadly I can't do anything abbaout that.

trim creek
torn shuttle
#

man I've met a lot of students from different places come to think of it

#

I also heard it ain't great in india

river oracle
torn shuttle
#

yep

#

they are particularly bad

trim creek
#

SChools? The whole country seeems to be awful

river oracle
#

I had a student from china come and he talked about how nice schools in the US are compared to china

torn shuttle
#

people in the US are unaware of how exceptionally above average the shit they have is

river oracle
#

people just hate highschool

#

lol

torn shuttle
#

yep

#

the only positive thing I've ever heard from any high school from any country is just when they happen to get a teacher they like

#

otherwise either things are noticed for being negative or not noticed at all

trim creek
#

in Hungary it somehow works like... "the class works like how the teacher teaches and behaves"

#

alias

#

if the teacher is bitch

#

the class is bitch

#

(or just the subject)

torn shuttle
#

and that's the universal experience

trim creek
#

ngl

#

this is 8th grade experience

#

🀣

#

UNIVERSITY IS NOWHERE TO EXISTS HERE

#

AAAAAA

#

f.e.

#

our chemistry teacher

#

is sure a bitch

#

and I know that she hates most of us

#

and all that is ok

#

but how she teaches

#

is not surely ok

limpid bloom
trim creek
#

once she said "you're gonna get an 1 on how you behave"

#

ngl all I loved in this is the head-teacher's reaction 🀣

#

(teachers here can't grade upon behavior)

echo basalt
#

teachers here can

#

I had a bitch teacher that gave me a 4/5 because she didn't like me

#

I had an average of like 93% which is a 5/5

restive elm
#

Hello, Instead of teleporting the falling block, make it move from a to b at a certain speed?

Sorry for my lack of knowledge, I tried searching it but couldn't find a solution

echo basalt
#

Vectors

kind coral
#

how to know when a certain method/class/enum and other stuff was added?

#

from the javadoc like

#

there is @since but i don't find anything

waxen delta
#

why will this not return true, even tho i have the sword with the same name?

 public static boolean hasSwitcher(Player player) {
     ItemStack switcher = new ItemStack(Material.WOOD_SWORD, 1);
     ItemMeta im = switcher.getItemMeta();
     im.setDisplayName("Β§dΒ§lSwitcher");
     switcher.setItemMeta(im);
     System.out.println(switcher); //Prints: ItemStack{WOOD_SWORD x 1, UNSPECIFIC_META:{meta-type=UNSPECIFIC, display-name=Β§dΒ§lSwitcher}}
     System.out.println(player.getInventory().contains(switcher)); //Prints: False
     System.out.println(player.getInventory().getItem(0)); //Prints: ItemStack{WOOD_SWORD x 1, UNSPECIFIC_META:{meta-type=UNSPECIFIC, display-name=Β§dΒ§lSwitcher}}

     return player.getInventory().contains(switcher);
 }
hardy garnet
#

For some reason, this line of code is returning a list of length 0. I have no idea why.
final World world = Bukkit.getServer().getWorlds().get(0);

I have also tried this, but it does not work either
Bukkit.getWorlds().get(0);

fluid river
#

this line of code should return a world, not a list

#

?jd-s

undone axleBOT
vocal cloud
#

Do they mean it errors because the list is empty?

hardy garnet
vocal cloud
#

If you're doing it in onEnable you need to make sure your plugin loads after the world's do

fluid river
#

in your plugin.yml do load: postworld

#

hello mike

hardy garnet
fluid river
waxen delta
fluid river
#

itemstacks might still be not similar

#

try

#

player.getInventory().getItem(0).isSimilar(switcher);

#

and also don't instantiate new switcher every event

#

just create it in your class body as a field

#

and compare to it

vocal cloud
#

Why not use pdc to know if the inventory contains a specific item?

fluid river
#

whoknows

fluid river
#

PersistentDataContainer

waxen delta
#

Is that on 1.8.9?

vocal cloud
#

You've got the NBT API but I'm not going to help with 1.8 ew

waxen delta
#

Okay

tender shard
#

comparing items by their name is a funny idea

#

also you should never hardcode the Β§ char

#

you should use the ChatColor class instead

tender shard
# waxen delta Is that on 1.8.9?

lmao of course not, that's literally the oldest version anyone still uses. upgrade your server to latest and you'll be able to use actually useful API

#

1.8 is like 8 years old now

exotic garnet
#

I'm having a brain fart right now and forgot what its called when you add arguments to already registered commands. I want to "add" and argument for the /is command from an external skyblock plugin but forgot what its called. Command something

#

Found it, PlayerCommandPreprocessEvent

tender shard
#

that event is basically just like the ChatEvent, except that it only triggers for messages starting with /

subtle folio
remote swallow
#

?1.8

undone axleBOT
tender shard
subtle folio
#

tru

tender shard
#

1.8 should be dead, and I'm still upset that md fixed Log4shell for 1.8

#

he should have just let 1.8 users get rekd

#

I mean

#

people who use outdated software on purpose should expect not getting any fixes

#

imagine using windows vista and then complain when they get a rootkit

#

microsoft would just tell them "yeah well vista is end of life, why don't you go to win 11"

#

minecraft is literally the only game where people find it acceptable to use old versions

#

it makes no sense

#

1.8 should be completely dead

#

everyone who's not on 1.19 yet, should just get no support from anyone, end of the story

sterile token
#

No one asked mojang to change the pvp

tender shard
#

ARE YOU ARE BIT STUPID OR STH

#

1.8's pvp is basically just "spam clicking"

#

in 1.9 they added actual pvp

#

e.g. you have to click at the correct moment

#

in 1.8 you only had to "click click click click click click"

sterile token
#

really ugly pvp tho

tender shard
#

only fucking noobs, who are a bit stupid, prefer 1.8 pvp

#

everyone who has at least a bit of skill, thinks that 1.9+ pvp is way better

sterile token
#

And i wasnt those, who play 3-4 games and its all, i used to play around 3 hours per day

tender shard
#

see? 1.8 pvp is simply just "who can click faster per second"

#

1.9 pvp requires people to actually think about timing and stuff

#

sure, all those 12 year old people are not smart enough for this yet, so that's why they prefer "spam clicking 1.8 pvp"

sterile token
tender shard
#

hypixel uses 1.7

sterile token
#

If 1.8 was so shit, why hipixel have it?

#

I listen to you...

tender shard
#

oh what a great idea

#

"if hitler killed 6 million jews, what's so bad about killing jews"

#

great argument

#

maybeeeeee

#
  1. hypixel is shit too?
#
  1. hypixel cannot afford to pay servers using recent versions
#
  1. they built all their source for 1.7.10 and cannot / doesnt want to upgrade, because upgrading would be expensive, to fix their shitty code
#

so yeah that's only 3 reasons. I could think of many more

#

anyway, saying, "because X uses Y" doesn't mean that Y is good

#

using that logic, I could also say that coal power plants are good

#

"well if coal plants wouldn't be good, why does <insert random country> use them?"

#

sorry verano, but this is a discussion you won't win

sterile token
#

Happens the same with that shity old system which use Cobol, why dont they move it to another langs?

tender shard
#

nobody ever said that cobol is good

sterile token
tender shard
#

"we got it working and don't wanna spend money on upgrading"

tender shard
#

please answer this one question:

#

if you'd need surgery, would you rather get narcotics that are recent, or would you rather be put asleep by a bat and half liter of schnapps?

#

because that's how they did it 100 years ago

sterile token
#

So if the issues are legacy versions, why dont they block using them tho?

#

Its all commerce

tender shard
#

everyone's free to use 1.8, it's just stupid to do so

#

you can go 1.8 as much as you want, it's just stupid and ret4rded

sterile token
#

The rule of business says, it doesn't matter how old your product is, as long as it makes a profit.

tender shard
#

microsoft doesn't make any profit off 1.8 though

#

they only sell the latest version?

sterile token
tender shard
#

have you ever seen microsoft advertising "Yeah pls go download this 10 year old version of our game"?

#

I haven't

#

1.8 pvp is shit

#

1.8 is shit

#

1.8 api is shit

#

people are supposed to use the latest version

#

always

#

well unless it just recently came out and people are afraid of bugs

#

but once the version is confirmed to work nicely, you are supposed to use it

#

I mean, if you still use minecraft 1.8, you probably also use php 5.6 and run windows vista

#

and use mysql 5.1

#

and you probably use eclipse version 1.3

#

and your desktop is running KDE 2 on debian 7

#

all of this is fine, but then do not expect ANY support from anyone

#

because all those software versions are outdated, have reached their end of life, and you are expected to only use those if you know what you're doing

#

but 99% of 1.8 users do not know what they are doing

#

hypixel knows their shit, that doesn't mean that anyone else does, though

#

and as said, hypixel doesn't even use 1.8

#

they use 1.7.10 or sth

#

the only reason why some servers still use 1.8 is that

  1. their users are too stupid to understad that there's more to PVP than just spam clicking
    or
  2. their servers suck so hard that they cannot run 1.13+ with 20 TPS
#

both is a skill issue. for #1 it's the users, and for #2 it's the admins

#

and that's just my 50 cents. I bet that there's more people who could mention additional things, but yeah

#

the only reason why buildtools still allows to build 1.8 is to stop people from downloading illegal versions from <weallKnowWhatWebsiteITalkabout>.org

sterile token
#

I'm not writing because I want to see your whole argument to read it. As far as I can see your argument makes no sense, since it is your personal opinion and not so much the wholesale opinion (in general). And honestly, if something is used it has a reason and it's not because people are morons, far from it.

tender shard
tender shard
#

so Zyklon B also has a use case in your opinion lol

#

1.12 and 1.8 only have 6.7 % share in total

wet breach
#

also there is a particular thing about cobol that I had already discussed some time ago that cobol provides that no other language really does

tender shard
#

yeah all banks still use cobol. but they don't do that because they think "yeah cobol is so nice", they do that because they cannot upgrade, because it would be too expensive to rewrite their whole internal system thingy

wet breach
#

other then that cobol isn't really used outside of mainframes

tender shard
#

noone would ever say "Oh, I'm doing a new server now. Well, which version should I use? 1.19, which is supported? Oh no, I'd rather go for 1.8, which is outdated since 8 years lmao"

wet breach
tender shard
#

I still wonder why banks need accurate floats anyway πŸ˜„

#

I mean

#

why can't they just use integers or similar

#

nobody ever had 01.2815618526518625€ on their account

#

but yeah if I'd be the owner of "germany's largest bank", I also wouldn't invest 200 million into recoding the whole system if the current one still works

#

it just makes no sense that sometimes people open up a new MC server and then they still use 1.8

#

I mean, if they create a NEW ONE, then they should use the latest version, ffs

wet breach
#

this is important for something like a bank

tender shard
#

fair enough

#

but that actually supports my point

#

banks use "outedated" languages because there's actually a reason to use it

#

minecraft servers however have no reason to use 1.8 instead of 1.19

wet breach
#

exactly

tender shard
#

@wet breach 1.20 is around the corner and md5 kinda told me that I could be the admin of the new community server a year ago. would you be willing to join our team? we'll basically just spin up a survival server where everyone on this discord can play

wet breach
#

unless they can articulate a very specific reason for themselves to justify a need for the outdated system. Hypixel as is always the example, their justification is they just update the protocol and the relevant places they need. So 1.7/1.8 provided a perfect base code to start from as it didn't contain much

#

but they are also not coming here for help either

#

they already know they are on their own, hence they have their own dev team

vocal cloud
#

Hypixel has literal 6 figure engineers rewriting stuff on a large scale

tender shard
#

yeah but hypixel also has their own team of developers, they use much NMS and stuff, so that's not comparable to "<average new server owner who just downloads plugins from spigotmc.org>"

wet breach
#

exactly

#

Nice to see Mike is back

tender shard
#

hewwo mikyyboi

#

mr taco

wet breach
tender shard
#

YEEES

#

there's one downside though

wet breach
#

I knew there was a catch

remote swallow
#

spigotcraft is great as a snapshot server

tender shard
#

we have to prepare everything BEFORE 1.20 gets released

vocal cloud
#

I'm on vacay

tender shard
#

vagay

#

vagaytion

wet breach
tender shard
#

We need a server that does this:

vocal cloud
#

Obviously you need a 1.8 style bedwars plugin using NMS

tender shard
#
  1. New members can join, and they'll be shown the rules (ingame)
#
  1. Once they accept the rules, the get a random /tp to somewhere, where they can start their island
wet breach
#

oh island I see

tender shard
#
  1. We also wanna have some kinda livemap, e.g. dynmap or bluemap or anything
#

Noooo, not island

#

we'll be using a normal vanilla world

wet breach
#

oh you mean isle

remote swallow
#

fuck dynmap

#

use squaremap

tender shard
#

or that, idc

#

Anyway, it's supposed to be a server where ANYONE can join (on latest version only ofc, no viaversion shit or anything)

wet breach
#

and how much is this going to cost me o.O

tender shard
#

a bit of time

wet breach
#

oh, so free

#

got it

tender shard
#

sure

#

ofc it's supposed to be free

#

it's going to be the "new spigotcraft" but with actual players lmao

wet breach
#

was kind of expecting somewhere in there some kind of hint of needing money

tender shard
#

nooooo nooo we don't money

wet breach
#

like some people like to do πŸ˜›

tender shard
#

I will be hosting it, I already got a server for that

wet breach
#

in a way I was kind of hoping you would need me for a server or something lmao

tender shard
#

the only thing we need are people are have time to set stuff up, configure all the plugins, and take care of bans in case people violate rules and stuff

#

we actually already have rules, and they are kinda easy:

#
  1. Don't be a jerk
#

that's basically it

remote swallow
#

i have time

wet breach
#

alright I am in but I am basically only on for the weekends

tender shard
#

for example, we decided that we will not install any protection plugins (unless the community decides otherwise)

wet breach
#

other then me being on during work time for discord of course πŸ˜›

vocal cloud
#

Based

tender shard
#

we want to keep it as vanilla as possible

wet breach
#

lockette would be ideal for such things

#

think I have the source for lockette somewhere

tender shard
#

the current plan is to make it like vanilla, that means - if you have some precious loot that you wanna keep away from others, you are supposed to "hide" your chest somewhere

remote swallow
#

lockette might be worth it

#

what about xray

tender shard
#

no worldguard, no towny, no coreprorect etc

tender shard
#

we will be using paper

remote swallow
#

and md5 is in this?>

tender shard
wet breach
tender shard
#

but yeah, md told me that I could do this

wet breach
#

idk what the goals/plans are for the spawn area lmao

#

I mean I really don't care what it is used

tender shard
#

but the general idea is that the whole "rest of the world" is unprotected, and if you wanna protect your stuff, you gotta do that in "vanilla means" instead of just using a plugin

wet breach
#

I am a fan of basically pure vanilla

tender shard
#

but maybe other people want to use some protection plugin. We'd do a vote and see how the community decides

tender shard
remote swallow
#

i like playing vanilla except i require loads of qol mods

tender shard
#

we'd ofc install some plugins anyway, e.g. ChestSort. Because it only adds some nice things without changing vanilla in any way

remote swallow
#

there are somethings that are cool

wet breach
#

I once built a 1k by 1k by 300 block castle once

#

because someone decided to plant their town directly next to mine and blocked me from claiming land in a certain direction

#

so I built this massive castle to tower over them

tender shard
#

Anyway, we'll open this server to the public once 1.20 comes out. And as said, I'd need some admins. So yeah everyone who's interested, lemme know. I already asked frostalf, and Epic you are ofc also welcome

wet breach
#

it took like 3 months for me to complete XD

#

and it had a moat and a draw bridge too πŸ˜„

tender shard
#

I'll setup a github repo for the server in like 2-3 days, then I'll invite anyone who's interested to help out

remote swallow
#

ill help

#

i dont have anything better to do

tender shard
#

perfect

wet breach
#

we could have events on the server too

tender shard
#

yep