#help-development

1 messages · Page 1861 of 1

quiet ice
#

it can save a lot of time

hardy swan
#

Yea i see what he meant now

quaint mantle
#

it does matter, that was his whole point

quiet ice
#

plus that is more or less the standard

hardy swan
#

As in, it works for pre-1.17 to not have remapped classifiers, so I was thinking he meant the program is gonna get fucked or wat for not using it

delicate cargo
#

how can i show a block fracture at a certain location?

vapid needle
#

Now I get this

tender shard
#

yep

hardy swan
tender shard
delicate cargo
quaint mantle
#

would you want to work with a project that is a, ab,ab..., zb,zc? i doubt someone would want to work with it

tender shard
#

ah. I think you can only get it using NMS

hardy swan
delicate cargo
quaint mantle
#

then thats the point of remapping :p

tender shard
hardy swan
delicate cargo
#

so, who knows how to display a block crack using nms or protolib (if possible with protolib)?

vapid needle
hardy swan
#

<classifier>remapped-mojang</classifier>

tender shard
hardy swan
#

^ insert this line to your spigot dependency in pom.xml

tender shard
#

well there's more needed than just that

hardy swan
#

He said he built it

hardy swan
#

With buildtools

tender shard
tender shard
vapid needle
quaint mantle
# tender shard yep

bruh I just realized that launchProjectile() doesn't require a Vector I am dumb it would have worked better without it lol

hardy swan
quaint mantle
hardy swan
#

But yea

#

Need it eventually

tender shard
tender shard
hardy swan
#

Package phase or around that time

tender shard
#

it's on compile stage IIRC

#

oh yeah, it's package

#

but package is the step that gives you a .jar anyway

#

noone will ever only compile but not package a plugin

hardy swan
#

Yea

#

I mean

#

His problem isnt due to that yet

#

xd

vapid needle
hardy swan
vapid needle
#

So how to fix the enderman

hardy swan
#

Wdym

#

import net.minecraft.world.entity.monster.Enderman;?

vapid needle
lean gull
#

anyone know what protocollib packet is used for when a blockstate updates?

hardy swan
delicate cargo
#

does anyone know how i can show a block fracture to a player?

hardy swan
# vapid needle

You still dont have the remapped classifier installed im afraid

#

Did you use the --remapped flag

hardy swan
#

Maybe reloading the ide can solve the problem

vapid needle
#

ok

#

not working

hardy swan
#

Check your .m2 directory if the remapped mojang jar is there

#

.m2/repository/org/spigotmc/spigot/1.18-R0.1-SNAPSHOT/

vapid needle
#

You mean the directory where I used the command?

hardy swan
#

Not that

quiet ice
#

(the .m2 directory should be located in your user home)

vapid needle
#

oh ok

kind hatch
# vapid needle

The remapped jar changes most of the names that you are likely accustomed to with normal NMS.

vapid needle
#

yeah that imports it

spiral light
#

did you reload the pom changes ?

vapid needle
vapid needle
hardy swan
#

Great

#

Weird that it could not import...

patent horizon
kind hatch
#

Also, is there anywhere else you are calling your chatResponse method?

patent horizon
#

nope

vapid needle
patent horizon
#

just main

#

and when i active it

delicate cargo
#

how can i create a bossbar?

spiral light
#

Bukkit.createBossBar ?

delicate cargo
#

i know about the Bossbar interface

#

ill give it a try

hardy swan
kind hatch
spiral light
#

creating an nms custom entity without understand the api/nms *uff

patent horizon
tender shard
tardy delta
#

is there a better way for running db queries async every time than just calling the bukkitscheduler?

spiral light
vapid needle
kind hatch
#

Do you know java? That's a class, not an instance of a class. Capitalization matters!

quiet ice
#

depends

tardy delta
#

i saw people telling to use a callback but im not sure if that would work

quiet ice
#

You could use a Dedicated worker thread (or worker thread group), just beware that this might have unforseen consequences

hardy swan
vapid needle
hardy swan
tardy delta
hardy swan
#

What comes after kind of matters

delicate cargo
#

what is wrong here? java manager = ProtocolLibrary.getProtocolManager(); manager.addPacketListener(new PacketAdapter(this, ListenerPriority.NORMAL, PacketType.Play.Client.BLOCK_DIG) { @Override public void onPacketReceiving(PacketEvent event) { Player player = event.getPlayer(); PlayerStats stat = playersStats.get(player); event.setCancelled(true); stat.mineBlockEvent(event); } });

#

org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: com/comphenix/protocol/events/PacketListener

#

Caused by: java.lang.NoClassDefFoundError: com/comphenix/protocol/events/PacketListener

tardy delta
#

?paste

undone axleBOT
delicate cargo
#

alr

#

ill put the entire error there

tardy delta
#

smh paste thing says something wrong

tender shard
#

Unforeseen consequences

tardy delta
vapid needle
delicate cargo
quiet ice
delicate cargo
#

thats the entire error

tender shard
#

obviously

#

NMS will not use bukkit worlds^^

hardy swan
#

Just missing one more parameter

delicate cargo
vapid needle
hardy swan
hardy swan
kind hatch
# patent horizon

I'm having a hard time following your code. I see what you are going for, but I don't see your re-entry points for these checks.
Walking through the logic, if they are in the map and type the string "null", they will be sent an error message. Like, are they supposed to keep typing things until they pass the check? Where's the reprompt saying you messed up, try again?

tardy delta
#

is there something wrong with returning something from a method async?

vapid needle
hardy swan
paper viper
#

Yeah its pretty common for example to return CompletableFuture

#

from a method

hardy swan
#

it takes in two parameters

wide coyote
#

add protocollib as a depend or softdepend

kind hatch
# vapid needle

Not taking but 5 seconds to look into the suggested completions, is a #getWorld method.
super(((CraftWorld) world).getHandle().getWorld())

delicate cargo
tardy delta
wide coyote
hardy swan
tardy delta
#

yes

delicate cargo
#

k

hardy swan
#

yep so for example, if you are not going to perform anything in sync with the server tick (like placing a block etc.), then CompletableFuture is a good candidate.

#

I feel like you can use cf anyways, even if you intend to have those operations lol

delicate cargo
wide coyote
#

done

tardy delta
#

and what about the bukkit scheduler?

wide coyote
#

install the new jar and try

delicate cargo
#

wdym install the new jar?

hardy swan
#

I may be wrong, don't quote

misty current
#

anyone here has some experience with armorstand animating with packets?

hardy swan
#

so, most of the time I prefer cf

wide coyote
#

thats it

delicate cargo
#

so i install the latest version?

wide coyote
#

Yes exactly

delicate cargo
#

alr

#

and then i add it as a referenced lib?

wide coyote
#

what

patent horizon
tardy delta
#

where the suplier will handle the db stuff

ivory sleet
#

if the bukkit scheduler would return values, then it'd be blocking in principle

#

so passing callbacks here and there is quite necessary

misty current
tardy delta
#

i dont know how to use them : (

misty current
#

and messy

hardy swan
#

if you goal is just to use them in chat

#

chances are you don't need bukkit scheduler

#

just completablefuture till the end

misty current
#

completable future is as confusing as useful for network/db stuff

tardy delta
#

i'm getting them for different uses
like when you need a user object for like chat channel things, it checks the cache and the db and immediately return the user and does stuff with it

ivory sleet
delicate cargo
hardy swan
#

lol..

kind hatch
patent horizon
ivory sleet
patent horizon
hardy swan
#

it is...

#

sadly

#

totally understand why most people still use AsyncPlayerChatEvent

#

conversation is probably useful for rpg where you chat with npc or the server or anything other than player i guess

misty current
#

hey, i'm having few issues animating with stands, as you can see the more i shrink down the circle the shakier the animation gets. How should I handle animations so this stuff doesn't happen? https://imgur.com/a/MYhgLRC

vestal moat
#

the wiki doesn't tell me how to use plugin messaging on bungee

misty current
#

my objective is creating an item that rotates on itself

delicate cargo
misty current
#

code?

vestal moat
#

there is no integer

quaint mantle
#

use container.getBlockPositions or something

delicate cargo
#

but

misty current
#

the nms constructor doesn't work like protocollib's

#

for some weird reason

quaint mantle
#

wat

delicate cargo
#

playerdigging has an in

misty current
#

instead of the pos it takes 3 doublesiirc

delicate cargo
#

wait a minute

misty current
#

or maybe it was another packet

#

hmmm

#

i yeeted out protocol a while ago

#

what ver r u on blinky?

#

ok so it takes a block position

delicate cargo
#

latest

misty current
#

and 2 bytes

#

not integers

delicate cargo
#

but

#

bbut thats not what it said

misty current
#

or is it the wrong packet

delicate cargo
#

no, no

#

same

quiet ice
#

that should be the right packet

delicate cargo
#

send me the url kill

delicate cargo
misty current
#

send yours

delicate cargo
#

odd

#

anyway

#

can i do (byte == 0)?

misty current
#

yea you can treat it as an int

#

btw what do you need this packet for? I can't think of any use

#

maybe custom mining?

delicate cargo
#

yup

#

net.minecraft.server.v1_16_R3.PacketPlayInBlockDig@45d86a2b[
a=BlockPosition{x=-167, y=63, z=-234}
b=up
c=START_DESTROY_BLOCK
]

#

doesnt match it

#

whats c?

#

an enum of some kind?

upper niche
#

so im trying to use nms for nbt data but it seems like ItemStack.hasTag() and ItemStack.getTag() dont exist anymore?
or am i stupid

delicate cargo
#

@quaint mantle what the heck is 'c' here? an enum?

net.minecraft.server.v1_16_R3.PacketPlayInBlockDig@45d86a2b[
    a=BlockPosition{x=-167, y=63, z=-234}
    b=up
    c=START_DESTROY_BLOCK
]```
quaint mantle
#

You shall look at mc sources or wiki,vg

delicate cargo
#

tried that

acoustic pendant
#

for creating a bank with vault, what's the difference between #createBank and #createPlayerAccount ?

delicate cargo
#

2 different pages with 2 different fields which didnt match with that

delicate cargo
#

and also whats the enum type? byte?

worldly steppe
#

Hello, what versionbof java i use for Minecraft server 1.8.8?

acoustic pendant
delicate cargo
#

and (again) how do i compare it?

#

@quaint mantle tried lookin on the wiki and the fields dont match, so:

  1. how do i get c (as in .get||[insert type here]||())
  2. how do i compare it with something else?
brave sparrow
#

The packet methods are generally pretty nasty, they aren’t APIs for developers to work with

#

You’ll have to figure out what the appropriate method name is

worldly steppe
brave sparrow
#

If there isn’t one you’ll have to use reflection

brave sparrow
worldly steppe
#

Im installing fawe and dont work

brave sparrow
#

What does your error say

acoustic pendant
#

for spigot 1.8.8 you can't use java 17

chrome beacon
#

You can

#

Many plugins will break though

brave sparrow
#

Higher Java versions can be used to run applications compiled for an older version of Java

#

The reverse is not true

chrome beacon
#

Newer versions of spigot has java checks preventing usage of newer java

worldly steppe
#

help me for can use fawe please

#

i were 4 hours trying it works

paper viper
#

again

#

please

#

why did you just join my dev discord

#

bruh lol

worldly steppe
#

for know the function of your plugin and if i like it i will download

vapid needle
paper viper
brave sparrow
#

@worldly steppe in this case it appears that the plug-ins themselves are requiring Java 8, so you’ll need to use Java 8

worldly steppe
#

for when it will be released i will download

brave sparrow
#

You have to get an installer for Java 8 and run it

worldly steppe
brave sparrow
#

Just Google it

#

It’s the first option

worldly steppe
#

Thdre are many

delicate cargo
#

@quaint mantle how do i get c and how do i compare it?

paper viper
lavish hemlock
#

grandson

#

what is a windows

#

I am 72 not 64

brave sparrow
lavish hemlock
#

it is strange that the Windows distributions use .tar.gz though

vapid needle
#

PathfinderGoalSelector doesn't work for me

dusk flicker
#

import them

#

other than that you are giving no info

delicate cargo
#

well its an enum

vestal moat
#

can plugin messages be faked by client?

lavish hemlock
vapid needle
#

I can't import it

vestal moat
lavish hemlock
#

yes

#

the player is the client

vestal moat
#

ye it can send plugin messages

#

server will have no idea

#

right?

lavish hemlock
#

in which case it might not matter

#

since the server verifies a lot of what is sent by the client

vestal moat
#

so i don't have to worry about players faking plugin messages?

lavish hemlock
#

idfk

#

what is a "plugin message" first of all

vestal moat
#

if u dont know then don't reply

lavish hemlock
#

I'll reply if I feel like it

#

thanks

#

I still have a bit of knowledge to give regardless of whether or not I know the full answer

#

like how server security works in the first place

lavish hemlock
#

ah

#

this appears to be just between the server and itself/proxies

#

not client and server

brave sparrow
#

Wrong

#

It uses the client as the pipeline

vestal moat
brave sparrow
#

Here’s the way it works:

#

Client can send plugin channel messages to server, server can send plugin channel messages to client

#

Bungeecord piggy backs on top of that protocol for messages the server sends to the client that are tagged for bungeecord

delicate cargo
#

alex c is some sort of enum

brave sparrow
#

The client can send plugin messages but it can’t pretend those messages came from the server

delicate cargo
#

but i dont know what type

brave sparrow
#

Look at the class

vestal moat
#

i am trying to make proxy enable proxy mode on spigot servers

#

its bad if someone fakes that

lavish hemlock
#

eh you go ahead and explain that shit to Tree then @brave sparrow
I have too many questions

brave sparrow
#

The client can’t fake it @vestal moat

vestal moat
#

even when there is no proxy at all?

delicate cargo
#

there are 2 wiki pages with 2 different inputs and both are different

brave sparrow
#

Brb actually

vestal moat
tardy delta
#

whats the difference between PreparedStatement::executeUpdate and ::execute? i'm updating stuff in the db

kind hatch
#

I'm at a loss. Everything in this method is returning something valid. Even the #grant() method is returning that it's been granted. This has led me to believe one of many things.

  1. Maybe my namespaces are improperly setup.
  2. There is another packet I should be using. (Which I'm currently unaware of)
  3. There is another packet I should be sending alongside the current one. (Kinda how you have to send the TIMES packet alongside the PacketPlayOutTitle if you still send titles that way)
  4. I'm missing a crucial part of the advancement packet. Maybe I've just created it improperly and it's not functioning to its fullest.
  5. The functionality of advancements have changed somewhat between 1.16 and 1.18
  6. Advancements in 1.18 are just broken.
    https://paste.md-5.net/gixepogaqo.java
acoustic pendant
#

hey! for some reason, my vault dependency is not loading

hybrid spoke
acoustic pendant
#

this is my setupeconomy method:

        if (!setupEconomy()) {
            this.getLogger().severe("Disabled due to no Vault dependency found!");
            Bukkit.getPluginManager().disablePlugin(this);
            return;
        }

    private boolean setupEconomy() {
        if (Bukkit.getPluginManager().getPlugin("Vault") == null) {
            return false;
        }

        RegisteredServiceProvider<Economy> rsp = getServer().getServicesManager().getRegistration(Economy.class);
        if (rsp == null) {
            return false;
        }
        econ = rsp.getProvider();
        return econ != null;
    }```
#

and for some reason, it says that is not loading

vestal moat
hybrid spoke
kind hatch
vestal moat
#

maybe its just a server not a network

acoustic pendant
kind hatch
#

/about vault?

chrome beacon
#

Is Vault a dependency in your plugin.yml

kind hatch
acoustic pendant
#

i have it as depend

chrome beacon
#

What is your economy plugin

acoustic pendant
acoustic pendant
chrome beacon
#

I mean what economy plugin is installed on the server

kind hatch
acoustic pendant
#

mine, minespaceskills

chrome beacon
#

You're not registered as an economy plugin

acoustic pendant
#

oh

trim surge
#

You wanting to see code for it? Or a plugin for it?

chrome beacon
#

So there is no economy plugin that vault knows, which means setupEconomy fails

acoustic pendant
umbral spindle
#

Issue with this wont load as a plugin.

chrome beacon
chrome beacon
acoustic pendant
#

oh, thanks !

trim surge
#

Well you’d use the Chat listener, Then you’d check the string of the message for [item], then do your null checks.. and if the player has an item in hand use the #replace() method to change the prefix to the item name?

#

Of use that ^ 😂

kind hatch
pallid forge
#
    @EventHandler
    public void onChunkLoad(ChunkLoadEvent chunk) {
        if (framePlaced && (chunk.getChunk() == blockChunk)) {
            frameLocation = location.clone().add(0.5, 1.03125, 0.5);
            frameLocation.setPitch(-90);
            if (spawnFrame()) {
                itemFrame.setItem(frameItem);
            } else {
                framePlaced = false;
            }
        }
    }

If statement still not evaluates to true when chunks values are the same. But i have the exact same statement for a ChunkUnloadEvent and it evaluates to true

worldly steppe
lavish hemlock
#

just messages or do item names also work?

chrome beacon
#

Internally everything is chat components

#

This is why string based methods are deprecated in Paper

lavish hemlock
#

well

#

Paper uses Adventure components

#

as opposed to Bungee ones

chrome beacon
#

Yeah both are just api versions of mojangs chat components

#

Anyway in spigot the chat components are pretty limited to chat

lavish hemlock
#

Maow's list of reasons why Bukkit is bad: <pending but you best believe that's gonna be one>

chrome beacon
#

Spigot could use more man power

lavish hemlock
#

you mean contributors?

chrome beacon
#

Yeah

lavish hemlock
#

I'd love to do that

#

but I'm like

#

ill

#

rn

#

and I have a project that I'm actually supposed to be working on

#

that other people are depending on me for

#

that is also Spigot related

delicate cargo
#

anyone know what c is here?

  net.minecraft.server.v1_16_R3.PacketPlayInBlockDig@45d86a2b[
    a=BlockPosition{x=-167, y=63, z=-234}
    b=up
    c=START_DESTROY_BLOCK
  ]
lavish hemlock
#

well probably an enum

#

have you tried seeing what the PacketPlayInBlockDig::toString method does?

mental moon
#

How would one change the light level of a block without changing it to the LIGHT material?

delicate cargo
#

well no bu

#

*but

delicate cargo
lavish hemlock
#

you should probably look at the toString to see what field it's printing after c=

#

you can then track that field back to its type

#

to see which enum it is

mental moon
#

I know in intellij you can hold Ctrl and click on the enum to see what class it's in and what datatype it is

tulip crypt
buoyant viper
#

c is an Action

tulip crypt
#

Oh, I am dyslexic I thought he said b

#

Heh.

#

Good catch

buoyant viper
#

sadly i only know the client-sided names for this stuff tho so

acoustic pendant
sacred mountain
#

hey can someone gimme a bit of help with worldguard?

#

blocked-cmds flag just does not work.
it sends the 'this command is not alolwed in this region' and still runs the command anyway.
I'm using worldguard 6.2 for 1.8.1
no errors in the console btw

#

this is what happens on using /spawn

brave sparrow
brave sparrow
weak wasp
#

de-op yourself?

brave sparrow
# weak wasp de-op yourself?

It seems unlikely that if it was permissions allowing them to bypass the restriction that it would still tell them the command is blocked

tardy delta
#

/rg bypass

acoustic pendant
#

that is a economy plugin right?

brave sparrow
#

I don’t know

#

Apparently not if that’s still null

acoustic pendant
#

so, what plugin could i use?

chrome beacon
#

EssentialsX should work

acoustic pendant
#

it says setPermission

#

not economy

#

should i delete setPermission as i'm not using it?

chrome beacon
#

Yeah

patent horizon
#

is there a way to remove the anti knockback netherite armor gives people?

acoustic pendant
#

you can use Attribute and generic_knockback_resistance i guess

delicate cargo
#

how do i get an enum from a field

#

the type is EnumPlayerDigType

#

how do i get c from here?

  net.minecraft.server.v1_16_R3.PacketPlayInBlockDig@45d86a2b[
    a=BlockPosition{x=-167, y=63, z=-234}
    b=up
    c=START_DESTROY_BLOCK
  ]
dusk flicker
#

is that even java

delicate cargo
#

it was an error

#

i found out the type of c

#

but i dont know how to get it

brave sparrow
#

That’s not the class

#

Those are the fields of the class

#

What are you using for an IDE

delicate cargo
#

eclipse

#

so the code would be EnumPlayerDigType digType = PacketEvent.getPacket().get???????();

#

what replaces ????????

#

is it Byte?

torn vale
#

Im trying to setup spigot 1.18.1 for 1 hour now, can some1 explain it to me?

#

I used Java 17, did not work

#

I used Java 16, did not work

torn vale
#

No, the spigot api

delicate cargo
#

oh

#

what are you using?

#

eclipse?

torn vale
#

intellij idea

delicate cargo
#

ah, sorry

#

cant help you there

torn vale
#

kk

patent horizon
#

is there any way i could run a method in game?

torn vale
#

I think all I need is the correct java version + the build.gradle

patent horizon
torn vale
#

well

#

clamp error in my build lol

unkempt peak
#

What are you trying to do

torn vale
#

Okay, I want to setup Buildtools, if I type java -jar BuildTools.jar --rev 1.18.1 the following error appears:

#
Found version
{
        "name": "3388",
        "description": "Jenkins build 3388",
        "refs": {
                "BuildData": "f31eb04b918592f66c6edd17c9b5998383581ae5",
                "Bukkit": "129c3c540c6394cf80ed066e45ef09abd21cd448",
                "CraftBukkit": "fb92f345d941cbee4aaa9ca6c0178ad02b16f2e8",
                "Spigot": "9fd34ab9cabf8e5c4881a718dabe836cbb5ffb27"
        },
        "toolsVersion": 138,
        "javaVersions": [61, 61]
}

*** The version you have requested to build requires Java versions between [Java 17, Java 17], but you are using Ja
*** Please rerun BuildTools using an appropriate Java version. For obvious reasons outdated MC versions do not supp
patent horizon
unkempt peak
#

Well unless you want to mess with reflection I would just directly call the methods in the command executor

sterile token
#

Hi anyone know how to execute a Spigot server with a specific Java version??

#

Because my networks has an 1.17.1 survival server and i cannot execute without Java 17

#

And i cannot execute 1.8x server without java 1.8

#

BTW

delicate cargo
digital rain
#

anyone knows how to get the 1.18.1 jar with the actual good stuff in it, since like the thing i get from build is useless, i saw people saying i need to extract stuff

manic furnace
#

What is the best way to get donations. I mean a link. And not paypal

manic furnace
#

Ok sorry

sterile token
digital drift
#

i was wondering if anybody knew how some servers get that black fade in fade out affect when teleporting?

#

it can be seen on like, mineclub

#

i can try get a gif, hang on

worldly steppe
#

hello, what code i use for my start.bat for spigot? i want to specify an location where java is, because i have java 8 and 17, can someone send me the command for write on the start.bat? i were searching me and someone else 1 hour 30 min and nothing

digital drift
#

%PATH_TO_JAVA% -Xmx4G -Xms4G -jar server.jar

worldly steppe
#

"C:\Program Files (x86)\Java\jre1.8.0_311"

digital drift
#

"C:\Program Files (x86)\Java\jre1.8.0_311" -jar server.jar

#

try that first

#

assuming your jar name is server.jar

worldly steppe
#

and the xmx?

digital drift
torn vale
#

help, how can I setup BuildTools for the 1.18.1

#

java -jar BuildTools.jar --rev 1.18.1 does not work for me

worldly steppe
digital drift
digital drift
#

what's the error message?

torn vale
#

I have

torn vale
digital drift
# torn vale I have

ok make sure you use that one instead, instead of writing java -jar you gotta use %PATH_TO_JAVA_17% -jar

#

so find where java17 is installed

worldly steppe
#

any error, it closes the cmd without saying click for close

#

i cant see

torn vale
#

okay

digital drift
worldly steppe
#

C:\Users\Miguel\Desktop\LorigaCraft Network\Lobby>"C:\Program Files (x86)\Java\jre1.8.0_311" -jar spigot.jar
""C:\Program Files (x86)\Java\jre1.8.0_311"" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.

C:\Users\Miguel\Desktop\LorigaCraft Network\Lobby>PAUSE
Presione una tecla para continuar . . .

digital drift
#

er

#

ok one sec

#

let me google translate that

glossy scroll
#

anyone have a list of MC permissions?

digital drift
#

in your start.bat

digital drift
#

so it should be like C:\Program Files (x86)\Java\jre1.8.0_311\bin\java

digital drift
worldly steppe
#

now works

#

but for set the xmx?

digital drift
#

before -jar add -Xmx6G -Xms2G

worldly steppe
#

nono

digital drift
#

but feel free to change the numbers appropriately

worldly steppe
#

it seems to work

#

but no

#

see, i delete the message now

digital drift
#

you already have something listening on that port

digital drift
# torn vale

that's not the full path to your java, you gotta add bin\java

torn vale
#

ohh

digital drift
#

it has to be the path to the executable

#

"C:\Program Files\Java\jdk-17.0.1\bin\java" -jar BuildTools.jar --rev 1.18.1

worldly steppe
digital drift
#

task manager

worldly steppe
#

i dont know what is occuping the port

digital drift
#

just close all running java apps in task manager

#

or restart your computer

torn vale
#

with \java.exe it does not work too

digital drift
#

are you sure that's the right install path?

torn vale
#

I just did rightclick + shift and copy path

digital drift
#

oh

#

one sec

#

ok

worldly steppe
#

you literally save my life i were im really not exagerating 7 hours with that and dont works im very grateful.

digital drift
#

C:\"Program Files"\Java\jdk-17.0.1\bin\java.exe -jar BuildTools.jar --rev 1.18.1

worldly steppe
#

now i try the xmx

digital drift
#

that should work

torn vale
#

like nohomo but yk what i mean lol

digital drift
#

yeye

worldly steppe
#

me also ☻

digital drift
#

npnp

worldly steppe
#

what ram you recomend me to put?

delicate cargo
#

how can i hide a potion effect?

#

like disable particles

worldly steppe
#

imagine, the maxium blocks i will do by one time will be like 100000 but small posibility

delicate cargo
#

and the badje

worldly steppe
#

but fawe renderize chunks and dont do lag

delicate cargo
#

*badge

worldly steppe
#

how many ram can i put? @digital drift

digital drift
#

idk, any

#

4gb

worldly steppe
#

ok tsmmm

torn vale
#

Hox can I get these imports?

chrome beacon
torn vale
#

Gradle

chrome beacon
#

?bt First run BuildTools and build 1.12.2

undone axleBOT
torn vale
#

I just installed buildtools for my 1.18.1 spigot project

chrome beacon
#

Those imports are for 1.12.2

torn vale
#

Yes, but I think it should be possible with the 1.18.1 buildtools too, right?

#

And also idk why but I cant use BuildTools

#

Look, it got installed

chrome beacon
#

That's 1.18.1

torn vale
#

yes

#

I need it for the 1.18.1

chrome beacon
#

It won't work for those imports

torn vale
#

Im just watching a tutorial

chrome beacon
#

...

torn vale
#

I think the 1.18.1 should have similar imports

chrome beacon
#

NMS changes a lot

vale ember
#

how do i calculate the relative ^ coordinate if i have player object>

torn vale
chrome beacon
torn vale
#

what?

chrome beacon
#

The import is for the PlayerListHeaderFooter

torn vale
#

But my problem is, I cant even use BuildTools in my 1.18.1 spigot project

chrome beacon
#

You don't have to do that anymore

brave sparrow
torn vale
#
  1. How can I do that
chrome beacon
#

Use player#setPlayerListHeaderFooter

torn vale
#
  1. I still cant use BuildTools even after installing lol
chrome beacon
#

You already used BuildTools

torn vale
#

dafq

#

I think I dont understand BuildTools

chrome beacon
torn vale
#

I just installed it

#

But I cant use any methods of it

brave sparrow
#

BuildTools isn’t an API

chrome beacon
#

^

brave sparrow
#

It’s a program that generates a spigot.jar

torn vale
#

ohhhhhh

#

okay, I am totaly misunderstanding buildtools

chrome beacon
#

Also those imports won't work unless you're on 1.12.2

torn vale
#

yea, thank you

chrome beacon
#

BuildTools is just as the name suggests a Build Tool for creating the spigot jar

torn vale
#

okay

glossy scroll
vale ember
glossy scroll
#

look at the LocalCoordinates NMS class

brave sparrow
#

Relative coordinates to what

torn vale
brave sparrow
#

You don’t need NMS

glossy scroll
#
        Vec2 var1 = var0.getRotation();
        Vec3 var2 = var0.getAnchor().apply(var0);
        float var3 = Mth.cos((var1.y + 90.0F) * 0.017453292F);
        float var4 = Mth.sin((var1.y + 90.0F) * 0.017453292F);
        float var5 = Mth.cos(-var1.x * 0.017453292F);
        float var6 = Mth.sin(-var1.x * 0.017453292F);
        float var7 = Mth.cos((-var1.x + 90.0F) * 0.017453292F);
        float var8 = Mth.sin((-var1.x + 90.0F) * 0.017453292F);
        Vec3 var9 = new Vec3((double)(var3 * var5), (double)var6, (double)(var4 * var5));
        Vec3 var10 = new Vec3((double)(var3 * var7), (double)var8, (double)(var4 * var7));
        Vec3 var11 = var9.cross(var10).scale(-1.0D);
        double var12 = var9.x * this.forwards + var10.x * this.up + var11.x * this.left;
        double var14 = var9.y * this.forwards + var10.y * this.up + var11.y * this.left;
        double var16 = var9.z * this.forwards + var10.z * this.up + var11.z * this.left;
        return new Vec3(var2.x + var12, var2.y + var14, var2.z + var16);
    }```
#

@vale ember

vale ember
#

i see

#

it's scary tho

glossy scroll
#

not really

#

i believe var1 is a 2d vec of (yaw, pitch) or the reverse... not too sure which

#

var2 is just the location of the player

#

the rest is just vector math

trim harbor
glossy scroll
glossy scroll
#

i believe var1.x is yaw and var1.y is pitch

#

and if it doesnt work

#

then just reverse em

#

(corresponds to xRot and yRot in the entity class)

#

And then bukkit has its own Vector class you can use for the cross product

#

0.017453292 is Pi/180 as well

#

its the same as Math.toRadians

vale ember
#

actually i want to calculate it only for specific axis (x, y or z) depending on passed argument, so i don't think vector will help me

glossy scroll
#

huh?

vale ember
#

double toValid(@NonNull final Player player, @NonNull final String string, @NonNull final Axis axis)

glossy scroll
#

you can still use this

patent horizon
#

how would i get a player from their string name?

#

or their uuid

hasty prawn
#

Bukkit.getPlayer

buoyant viper
#

is there a site that compares mappings of all the diff services like mcp yarn mojmap etc

dusk flicker
#

if I recall MiniDigger has a much better website for it

buoyant viper
#

gah

#

both arent of help bc i need mcp->yarn

#

but ty @dusk flicker @spiral light

quaint mantle
#

MiniMappingViewer is abandoned

spiral light
spiral light
buoyant viper
#

yarn is fabric mappings and mcp is... mcp mappings

#

i thought maybe someone here had an all-around mappings viewer

spiral light
#

Well if there is an mapping-file for translation I can add this too

vale ember
manic furnace
#

When i create a Plugin with maven, is craftbukkit automaticly included? Because of the license

spiral light
acoustic pendant
#

hey, i need some help. for some reason i can't start MySQL server in XAMPP and in the logs it doesn't send any error, could someone help me?

spiral light
#

There are 20 errors listed in the screen

vale ember
acoustic pendant
dusk flicker
spiral light
#

Depends on the size of arguments but I do t think so

vale ember
acoustic pendant
dusk flicker
#

it literally tells you the error

#

right there

#

and possible solutions

spiral light
#

Port, dependencies ...

acoustic pendant
#

uhm i didn't delete nothing and before were working

dusk flicker
#

Try google, either way this isn't the purpose of this channel.

hasty prawn
#

Sure it is, "Ask other questions"

#

Still should Google it though

hasty prawn
#

Wdym included

#

It would be compiled with your plugin if you told maven to do that... Which you shouldn't.

#

If you set it to provided, then it won't be.

manic furnace
#

I didn't Set anything

dusk flicker
#

show us your pom in a paste

#

?paste

undone axleBOT
vale ember
#

should abbreviation names be all uppercase? like class GUI or Gui

dusk flicker
#

personally id use all uppercase, not sure if they have something for that in conventions

dusk flicker
vale ember
#

the problem is that java mix them, and i am really confused, like XMLFormtter and HttpClient

dusk flicker
#

Weird

dusk flicker
manic furnace
#

I Just build IT with build artifatcs

hasty prawn
next stratus
#

has anyone here worked with tokenenchant and made a custom enchant? If so how the fuck do you get stuff from the config? It's such a bad system and I just wanna get 1 value...

dusk flicker
#

dont use the build artifacts

manic furnace
#

Why?

dusk flicker
#

because its bad

#

and wont follow your pom, as you can see

manic furnace
#

I know but i do not know how to so that

quaint mantle
#

the maven tool bar on the right corner

dusk flicker
#

would be here, but say maven

#

Might be a bit different, not sure of IDE changes ive done

manic furnace
#

Is there a good Tutorial fro maven?

dusk flicker
#

youtube is prob a good place to start

manic furnace
#

OK thanks

dusk flicker
#

send us the npe and the code in a paste

#

?paste

undone axleBOT
dusk flicker
#

Full class, so we have the correct line numbers

hasty prawn
steady herald
#

I keep getting a null pointer exception from this line, I think I've covered everything but I cant find the null pointer

        if (event.getAction() == Action.RIGHT_CLICK_AIR & player.getItemInHand() != null & player.getItemInHand().getType() == Material.EYE_OF_ENDER & event.getPlayer().getItemInHand().getItemMeta().hasLore()) {

This is inside a playerInteractEvent

next stratus
hasty prawn
#

What's wrong with that

next stratus
#

hm?

dusk flicker
#

well thats why

dusk flicker
#

LMAO

#

you're using 1 &

next stratus
#

I worked out how to do it another way after trying a few different ways and it was annoying

hasty prawn
steady herald
dusk flicker
#

should be using two &&

steady herald
#

oh duh lolol

vale ember
unkempt peak
dusk flicker
#

eh its fine to do it in one

#

example ^

unkempt peak
#

Harder to read and debug

brave sparrow
#

That’s a style thing

#

Not him doing it wrong

hasty prawn
#

No it's not

#

& always checks both cases

#

&& will stop if the first case is false

brave sparrow
#

I didn’t mean & vs &&

#

I meant one statement vs multiple

hasty prawn
#

Oh ok

unkempt peak
#

It's not wrong but it is better to atleast separate the statements by line so you can know exactly which statement is wrong if something goes wrong

#

Also yes ik it's personal preference

#

Just my opinion

dusk flicker
#

Fair enough

brave sparrow
#

Also for a while loop you would want to have them both in one statement

#

It makes the loop logic easier to visualize

dusk flicker
#

yeah that loop needs work, no method even under that lol

brave sparrow
#

I meant && is definitely what you want for a while loop, you don’t want to have a bunch of breaks inside to replicate that logic if you don’t have to

dusk flicker
#

Just knew I had an operation with && in a specific project for an example

odd quarry
#

spigot or paper or purpur ?

unkempt peak
#

Purpur?

#

What is that

odd quarry
#

purpurmc

#

.org

#

server jar

unkempt peak
#

Never heard of it

odd quarry
#

yes

quaint mantle
#

Paper. But thats not a developer question

vale ember
unkempt peak
odd quarry
#

oke thnks

topaz cape
#

Hello, this is another thread (yay?) :3
Anyways i have done a whole core system based on stuff being stored in bungeecord(SQLite) and servers are synced through redis messages
well away from that i need your help in the friends command
even though it's easy to create especially that my core has ranks, bans, mutes, etc.. the issue is caching player prefixes, names and colors
I can't cache all of them for just the friends command, a player could have alot of friends i don't want to cache a whole network players for the friendlist and im pretty sure if i query them all the times it will take alot of calculation and time and i need suggestion

proud basin
#

How much should I obfuscate my jar?

opal juniper
#

completely

#

even the name

proud basin
#

...

#

You trolling aint ya

opal juniper
#

yes

alpine urchin
#

obfuscate the file name

hybrid spoke
hasty prawn
#

Just write your plugin in another language and then when they try to decompile it with a Java decompiler it won't work 5Head

proud basin
#

funni

alpine urchin
#

obfuscate the obfuscator

#

🤔

#

ever tried that

quaint mantle
#

Being serious dont obfuscate your plugin at all

proud basin
#

why?

alpine urchin
#

open source your plugin

hybrid spoke
quaint mantle
#

That is pointless and will make debug harder

proud basin
#

That's too much work retrooper

alpine urchin
#

then dont obfuscate

proud basin
#

Why

alpine urchin
#

let users learn from your project code

wooden palm
#

Hey, does anyone have any idea How I can read out the real time with java and play it back via my plugin?

sullen marlin
#

new Date().toString()

proud basin
#

It's a prem plugin though...

quaint mantle
#

ok

hybrid spoke
#

ok

alpine urchin
proud basin
#

I put months into this

hybrid spoke
#

ok

quaint mantle
#

ok

hasty prawn
#

ok

alpine urchin
#

i put a year into my open source project

#

md5 put years into spigot

#

thats not a great argument

wooden palm
proud basin
#

uh

#

I put cash under the table

hybrid spoke
alpine urchin
#

md5 too

quaint mantle
#

Cool kids use the new java 8 time api

alpine urchin
#

how do you think he kept the forum up

quiet ice
#

Just beware that you do not use the Instant class

left swift
#

Hi, i'm making the nms entity and i want to override movement method from nms. Which method is it in 1.17.1 api?

quiet ice
#

It is usable for everything, but not timekeeping

proud basin
#

I don't think you understand what i meant when I said put money under the table

alpine urchin
#

ok

proud basin
#

But anyways

alpine urchin
#

put it back on the table then

#

give me that money actually

proud basin
#

ok

wooden palm
alpine urchin
#

im serious

quiet ice
#

Really cool kids use LocalDateTime

proud basin
#

send your paypal then

alpine urchin
hybrid spoke
quiet ice
#

Yes, but you cannot display that timestamp because it misses the timezone field

hybrid spoke
#

hm, well. therefor ZonedDataTime seems to be right

quiet ice
#

I've been doing some stuff via DataInputStream/DataOutputStream lately, and I wanted to ask how high the failure chance is when I use it to read my data with FileInputStream at onLoad and write my data onDisable via FileOutputStream? Like, is it realiable enough that I can put all my eggs in a basket or should I add a few redundancy layers to it?

sullen marlin
#

Id avoid saving/loading data like that

#

use something like sqlite instead

quiet ice
#

I've been thinking of putting the output of the DataOutputStream into a CheckedOutputStream and then multiplexing it to 4 or so FileOutputStreams which in turn have their own CheckedOutputStream attached to it, but this surely is overkill

proud basin
#

How would a loader work?

wet breach
quiet ice
#

Yeah, I could use real DBs, but I love doing flatfile since I have more or less full control over all the mistakes I do

wet breach
#

you don't need a real DB for ECC, you can do it with flat file too.

wet breach
quiet ice
#

probably I guess

wet breach
#

either way, a lot of people don't think about data being missing regardless of the format they decide to save data in

wooden palm
quiet ice
#

just use the local time/default system wall clock, it's the least likely to be the wrong one

wooden palm
#

and how i can do that?

quiet ice
#
        DateTimeFormatter formatter = null; // Build your own one via DateTimeFormatterBuilder
        formatter.format(LocalDateTime.now(Clock.systemDefaultZone()));
wet breach
#
SimpleDateFormat isoFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
isoFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
Date date = isoFormat.parse("2010-05-23T09:01:02");
#

Well you got both time and date

graceful turret
#

how to add/revoke/check if some advancement is done?

worldly ingot
#

Well, that'll call when it's completed, but if you want to check if some advancement is done at any time, you'll have to Player#getAdvancement() and invoke the criteria methods there

#

Beat me to it, ye

#

#getAdvancementProgress(). I was close

wet breach
#

@graceful turret when going to those links, make sure to bookmark that Javadoc link. In the upper right it has a search bar you can use 🙂

left swift
#

Hey, I'm creating my own entity nms and I need to check if it's in motion. Therefore, I would like to override the entity movement method and call an event. Anyone know which method can be responsible for the movement in api 1.17.1?

wet breach
#

its going to be in the pathfinding/AI stuff

#

which there is quite a bit for

quaint mantle
#

How do I get the number of blocks passed through PlayerMoveEvent?

left swift
wet breach
#

well your other problem is there is no event for entities moving

#

except for the player of course

sacred mountain
sacred mountain
#

sorry for the late replies i was out

#

and im also in the wrong channel my bad

dense heath
granite burrow
#

How can I create a registered command from a string in config

dense heath
#

Usually having dynamic commands is a bad thing though. What exactly are you trying to do?

dense heath
dense heath
granite burrow
#

where the user can change the name of the command and the contents that the command sends

dense heath
thick gust
dense heath
granite burrow
quaint mantle
wide coyote
dense heath
# granite burrow Essentials tends to break alot of datapacks so I try not to use anything from th...

Alright. I'd first make a command which takes some key to send a message with. A configuration file might look like:

mykeyhere:
- "Line 1"
- "Line 2"
- "Line 3"

After loading the configuration up, one could take the first argument of the command and look up the list in the appropriate configuration section:

public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  YamlConfigration myConfig = /* load your config here */;
  
  if(args.length < 0)
    // error out

  if(!myConfig.contains(args[0])
    // error out

  List<String> messages = myConfig.getStringList(args[0]);
  sender.sendMessage(messages.toArray(String[]::new));
}

This is only an example to get you started with. There are some more things you'd want to implement before putting this out in production.

For your users, they could configure a dynamic alias in the commands.yml

dense heath
granite burrow
wet breach
granite burrow
#

I know about the commands.yml but id rather the user not have to go and find it in another file. I wanna have it all set in one file for them

dense heath
dense heath
wet breach
dense heath
dense heath
wet breach
#

doesn't make it less valid of code to use in the meantime

quaint mantle
#

I doubt they will remove it anytine soon

dense heath
wet breach
dense heath
quaint mantle
#

Like, perhaps it will get removed, but If so that will be by next decade

wet breach
#

pretty sure its GPL compatible

dense heath
wet breach
#

It is, go look it up again 🙂

#

MIT requires virtually nothing which means GPL is the more strict license

#

But it GPL doesn't hinder what MIT requires either

#

and that is just credits

quaint mantle
#

GPL is only really compatible with itself

dense heath
quaint mantle
#

Which is why it sucks

dense heath
wet breach
#

until it touches non compatible code for GPL 😛

dense heath
quaint mantle
#

So I ignore it

wet breach
quaint mantle
#

This is the issue in your reasoning: you can ignore the law

dense heath
wet breach
wet breach
#

no they don't

dense heath
patent horizon
#

is there a way to remove all instances of something from a list instead of just the first found

quaint mantle
#

If anyone defending the GPL would sue Software which uses a permissive license they would be in ??? Territory

wet breach
# dense heath Factually incorrect.

alright well you can believe what you want. I don't let randoms tell me otherwise that don't show their proof and just say its fact 🙂

quaint mantle
#

Collection#removeIf

wet breach
dense heath
dense heath
wet breach
#

says offers assitance and advice which literally almost all lawyers do if you don't intend to pay them

#

they will guide you in the right direction but nothing more

dense heath
wet breach
#

You literally have not dealt with law firms have you?

quaint mantle
#

Everything has a cost

wet breach
#

unless they are going to do the work pro bono then its not free

dense heath
wet breach
wet breach
#

Oh, so they don't work for free either then 🙂

dense heath
#

Simply because you are representing someone does not mean that they are the one paying you.

#

FSF has shit loads of money. They have their own legal team because they can afford it.

quaint mantle
#

Where would they get the Money from?

dense heath
quaint mantle
#

No Institution that has Money would Like to Spend it for No good cause

dense heath
#

The FSF created the GPL license to promote FOSS.

quaint mantle
#

Going after Bukkits MIT Community would severely destroy their image

wet breach
dense heath
wet breach
#

oh I wasn't alive then

#

Seems you know me right?

quaint mantle
#

It would just lead to a Frature betweeen Hardcore GPL-ists and Hardcore MIT-ists

young knoll
#

I hate infectious licenses

wet breach
#

not that I believe everything should be MIT

dense heath
quaint mantle
#

So yes, it would destroy their image

dense heath
#

Just because it is the only thing that you could find on Google, doesn't mean it was the last thing that they ever did.

quaint mantle
#

Why would it not

#

because they have No Image to begin with?

#

God I hate using discord with a 32 kbits connections

dense heath
wet breach
#

I see this BK person is another one of them people

quaint mantle
#

It suffices for IRC, Not my fault you are Not using it

dense heath
dense heath
wet breach
#

it is the username you chose

#

do you not like to be called BK?

dense heath
#

Nothing wrong with it. Your phrasing is unusual.

wet breach
#

BK is your name, and you are a person. I am quite positive you are not a bot

quaint mantle
#

If they are a bot, we have issues

wet breach
#

Nah I deal with bots the same way certain others act 😛

#

I just ignore them until they leave 😄

quaint mantle
#

That works I guess

wet breach
#

well I don't have powers here so the best I can do 😛

dense heath
#

It is unusual to redundantly say things.

wet breach
wet breach
dense heath
wet breach
#

we already have more devices then humans 🙂