#help-development

1 messages · Page 682 of 1

young knoll
#

Idk how you’d find the versions for stuff pre 1.8

#

Buy anything after that should be easy

remote swallow
#

just say 1.8

#

or say pre 1.8

sullen marlin
remote swallow
#

isnt dinner bone in git still

slender elbow
#

git never forgets

#

unless you squash your entire history and force push, but we don't talk about that :^)

sullen marlin
#

We don't talk about Bruno either

remote swallow
#

what was that bug a mojang dev found that had something random in their git history

young knoll
#

Toes

sullen marlin
#

All of them

echo basalt
#

gime

remote swallow
#

why do you need toes

young knoll
#

There was that story about how toes kept appearing in the git commits

sullen marlin
#

Cause he's lack toes in toddler ants

remote swallow
#

imagine hacking github to obsfucate ur name just to add toes to minecraft

rough ibex
#

yeah its a nice joke

#

and that is all it is - a fake joke

sullen marlin
#

ye

remote swallow
sullen marlin
#

just sounds like a bs story

#

but also, bedrock

young knoll
#

Nah it’s real

remote swallow
young knoll
#

It was me

#

I hacked the mainframe

remote swallow
#

how did you hack github

rough ibex
#

and obfuscate your name

young knoll
#

Through the mainframe

#

Duh

rough ibex
#

i think xilefian is telling us they like toes

echo basalt
#

who doesn't

kind hatch
#

That ss was larger than I thought it would be

remote swallow
#

its ultra hd 4k

sullen marlin
#

^

remote swallow
#

where else is it gonna put all those pixels

limpid junco
#

Hello Im trying to create 2 swords 1 of which increase in sharpness every time it gets a kill while the other one smites the enemy every hit. here is my code: https://pastebin.com/NnftKqGj and the other file: https://pastebin.com/4RtN1J8t. It is not outputting an error, but it is not doing anything at all when the proper events are called

#

nvm

#

I realized the problem

tall dragon
#

ur creating 2 instances of the exact same class

quaint mantle
#

How do I temporarily allow player clip through blocks?

worldly ingot
#

Spectator mode :p

quaint mantle
#

I was making barricade mechanic that players can pass through.

#

When the player wants to pass through barricades, the server will send a block change packet.

young knoll
#

Block change is only client side

#

The server will still stop them from going through

quaint mantle
young knoll
#

Convert the blocks to display entities I guess

#

Or falling sand

plain plaza
#

They still would look weird

#

Im spitballing, but on the player move event, predict the player’s next position based on their current velocity

#

then check if that next location is your barricade of some sort

#

and if so, teleport them inside the block?

robust helm
#

Any good way to create centered text in chat?? like ======={ Party }======= and so that the “=“ fill everything else

kindred pasture
#

Hey there im trying to prevent breaking certain crops with BlockBreakEvent but when i break crops on farmland it turns the blocks below to dirt thus breaking the crop anyway. How do I stop that?

#

I've tried canceling BlockPhysicsEvent and EntityChangeBlockEvent

abstract sorrel
#

are you talking about the farmland turning to dirt when you step on it or something else?

livid dove
abstract sorrel
#

actually i think i know what ur talking about

kindred pasture
abstract sorrel
#

can i see ur code for the cancelling of the blockbreakevent

kindred pasture
kindred pasture
#

but i can sure

abstract sorrel
#

just the blockbreakevent part

kindred pasture
#

Its very complicated unfortunately

#

basically i have reinforced blocks that take several hits to break

#

but when I break a crop once it turns the block below to dirt

#

thus breaking the crop anyway

naive loom
#

is there an event for when a item is just added to the player's inventory?

echo basalt
#

No

naive loom
#

not even pickup, since you can just add it using the playerinventory

kindred pasture
#

there is an event for pickup yes

abstract sorrel
#

Might need to call in the more experienced individuals, @remote swallow

remote swallow
naive loom
#

😄

naive loom
#

The crate system just gives you the item.

kindred pasture
#

Ive asked ChatGPT and even it doesnt know hahah so im stuck

abstract sorrel
#

yo @remote swallow can u help technovision with his plugin

kindred pasture
#

about the farmland thing

naive loom
#

whats your issue? maybe i can help 😄

remote swallow
echo basalt
#

epic will just ping me dw

naive loom
kindred pasture
#

I need to cancel the farmland below a crop turning into dirt when the crop is broken

naive loom
#

well its already made

#

its just for any case, i don't want to have to use a task ideally.

remote swallow
remote swallow
echo basalt
#

my family somehow managed to break the fibre cable so I don't have internet thumbsup

#

store opens in like 6 hours

abstract sorrel
echo basalt
#

why's everything a static method

kindred pasture
#

yea yea i know

#

its a huge ass plugin and i got lazy

echo basalt
#

you know what happens when you get lazy and drop the standards

kindred pasture
#

i knowww but im literally almost done its just this farmland issue

#

and then its done

naive loom
#

ideally could make that an event but its being used once

kindred pasture
#

I just cant cancel this darn thing nomatter what event I use

echo basalt
#

server version?

kindred pasture
#

1.20.1

abstract sorrel
#

?help

undone axleBOT
#
CafeBabe Help Menu
*Red V3*
__**Admin:**__

selfrole Add or remove a selfrole from yourself.

__**Cleanup:**__

cleanup Base command for deleting messages.

__**Core:**__

embedset Commands for toggling embeds on or off.
info Shows info about CafeBabe.
licenseinfo Get info about Red's licenses.
mydata Commands which interact with the data CafeBabe has about...
set Commands for changing CafeBabe's settings.
uptime Shows CafeBabe's uptime.

__**Downloader:**__

findcog Find which cog a command comes from.

__**Mod:**__

names Show previous usernames, global display names, and server...
userinfo Show information about a member.

__**ModLog:**__

listcases List cases for the specified member.
reason Specify a reason for a modlog case.

__**Permissions:**__

permissions Command permission management tools.

echo basalt
#

time to check nms

#

unless paperweight for 1.20.1 isn't out

#

because idk how to setup specialsource

remote swallow
#

It should be

abstract sorrel
#

@echo basalt ?nms

#

?nms

kindred pasture
#

Interestingly BlockPhysicsEvent fires when the block turns to dirt but canceling the event does nothing

#

it also fires when placing a seed

abstract sorrel
#

or u talking about decompiling?

echo basalt
#

I'm dying of heat stroke but if I close my window my data goes down

#

grr

abstract sorrel
#

drill holes in ur window to let the wifi in

echo basalt
#

this is going to take a while

kindred pasture
#

oof sorry

echo basalt
#

can't wait to walk to the hardware store at 9am to get a fiber cable ffs

#

anyways

abstract sorrel
#

wait @kindred pasture does your code cancel the block break every time the player attempts to break it

kindred pasture
#

Yes untill the reinfrocement value reaches 0

#

and then the block breaks

abstract sorrel
#

are u sure the error u were getting was not you just accidentally breaking the farmland

kindred pasture
#

Well im testing it out rn and in 1.20.1 everytime u remove a seed or fully ready crop from farmland it always turns to dirt

#

it must be a newer feature cuz I dont remember that ever happening in the past

#

I also just tested it with EntityChangeBlockEvent and can confirm the event does NOT fire when breaking the crop above

#

it only fires when trampling a crop

#

like u are mentioning

echo basalt
#

wasn't there a blockchangeevent

#

or something stupid

kindred pasture
#

oh hmm lemme try

abstract sorrel
#

what does FarmingHandler#removeCrop() do

kindred pasture
#

removes the crop location from my database. The crops grow in real time thats why

#

like real life days

#

There does not seem to be a blockchangeevent

#

Just EntityChangeBlockEvent

#

but my prints arent firing so i assume it isnt related to the farmland thing

#

OH WAIT

#

IT DOES FIRE?

abstract sorrel
#

yeah i have no idea what's causing the issue tbh

kindred pasture
#

oh wait nvm LOL

#

that was jsut from my hoe

#

bruh

echo basalt
#

man just made me download paperweight for nothing

kindred pasture
#

no i still dont know the issue

echo basalt
#

ok ok

kindred pasture
#

oh it wasnt evne the hoe it was just some random enderman in my world LOL

abstract sorrel
#

anyway i gtg sleep hope you find the bug

kindred pasture
#

thnx man

echo basalt
#

It's uhh

#

BlockFadeEvent

kindred pasture
#

but isnt that for just decay from lack of water? does that fire from breaking the crop?

#

ill try rn

echo basalt
kindred pasture
#

Sadly it does not seem to fire when breaking the crop, only when decaying from lack of water source

#

WAIT

#

UHHHHH

#

is it not normal 1.20.1 behavior for the farmland to turn to dirt when harvesting?

#

I just jumped into a singleplayer world and its not happening....

echo basalt
#

lmfao one of your plugins is fucking with you

kindred pasture
#

omgggg

#

it must be

echo basalt
#

I was like "yeah it seems strange no one is talking about this"

kindred pasture
#

right i couldnt find ANY google links on the forums about this

#

ok sorry ill go look at my code some more

#

thank u for the help

#

oh my god ur never gonna guess what it was...

#

im literally an actual idiot

#

all this time I had a leftover plugin from a trillion years ago called CropsRealism in my test server folder

#

BRUHHHHHH

echo basalt
#

idiot

kindred pasture
#

truly

#

i rlly thought it was a 1.20 feature 💀

topaz panther
#

is it possible to replace EssentialsX messages using listeners?

naive loom
#

does anyone know if Player#showPlayer sends an equipment packet?

#

want to know if i need to manually send one

sullen marlin
#

It should

stuck flax
#

Can you format a string but only allow specific color codes? For example making it so "&bExample &clol" only has &b formatted

rigid otter
#

Hello, since my server is running, I don't want to test. Instead I want to ask here for making sure. In BungeeCord, if I listen to the PostLoginEvent, what way is to get the player's IP? Can you straightly give me the method?

#

I ask this because I experienced something strange from getting player's ip while login in Bukkit.

echo basalt
#

There's a ServerPingEvent

#

that provides the real IP

#

If you're behind bungee, Player#getInetAddress will not return the player's actual address iirc

cursive kite
#

How can I get the max durability in 1.8 for materials, getMaxDurabiltiy doesnt work on non tools

#

Material.STONE.getMaxDurability() returns 0

quaint mantle
#

changing player's skins would just involve intercepting the Player info packet right

#

outbound

echo basalt
cursive kite
#

So how can I let players input 0-6 for stone to get the different stones

#

But block 7+ to get the missing texture items

echo basalt
#

eh

#

ideally you just update instead of continuing to work on an 8 year old version

#

but you might be able to find out something within nms

cursive kite
#

Ive tried searching all the forums but cannot find anything

#

No one has ran into this throughout the 1.8 history?

echo basalt
#

The ones who have know how to solve it

#

mhm fun

cursive kite
#

But then that doesnt account for all other blocks

#

I am basically making a custom /give

echo basalt
#

yeah so you might need to manually map out these values

#

or just update to a version that's modern ffs

quaint mantle
echo basalt
#

You can set a new skin by just sending new packets on top

#

No need for interception

quaint mantle
#

doesnt the player info packet get sent quite a lot?

#

or only once for skin?

echo basalt
#

uhh it's usually only for tab

#

so yeah not that often

topaz panther
echo basalt
#

that's 1.8 nms, not fun

topaz panther
#

lol

near mason
echo basalt
#

uhh no

#

You'll need to map the colors yourself

tacit drift
grizzled oasis
#

Hi, im in on some older version (1.12) and using PacketPlayOutGameStateChange to change sky color, they only real problem is the rain that can cause lag, i found a little fix to that using barriers in the top to obstruct the rain, there's a way to make the barrier ONLY visibile to a player and for the other not? (i suppose nms have some method) but i couldn't find something

(what im doing is an enchant for acid rain and setting the thing only to the player and just for him none else)
(a fix is using some effects to try getting the color with the smallest possibile value)

chrome beacon
#

You could just set the biome

grizzled oasis
#

like that but i didn't found something

robust helm
#

why not cancel the weather change event?

near mason
#

is there a way to add PersistentDataContainer to all blocks?

grizzled oasis
robust helm
#

kinda makes sense

chrome beacon
#

?blockpdc

undone axleBOT
near mason
frosty sail
#

Hi ! is there a way to code the plugin without keep restarting the server to test ?

chrome beacon
#

You can hotswap or use the reload command

warm mica
#

Some poorly written plugins may not work with it properly though

robust helm
#

Why does my plugin not generate the .jar file using gradle, theres just a <pluginName>-dev.jar file in build.lib

#

so build/libs/ChiccenAPI-0.1-SNAPSHOT-dev.jar exists

#

but no build/libs/ChiccenAPI-0.1-SNAPSHOT.jar

fickle rivet
#

Hey guys, does anyone know if it's possible to bring rgb color support to 1.8.8? (Even if it's hard)

sullen marlin
#

No

echo basalt
#

wait my internet's back

#

YES

echo basalt
#

Closest you can do is add server support for it and send rgb data to 1.14+ clients

upper hazel
#

help where to find a tool in intelji that will show in the code the method that consumes the most resources and time

echo basalt
#

premature optimization moment

#

Just focus on code quality and you'll go far, no need to crave that 0.001% performance boost

#

Now, if you care about code quality, go with SonarLint

#

it's a plugin

#

performance will come from profiling and finding points of failure in your code

ivory sleet
#

But like, that additional slowness is negligible and something no1 cares about

robust helm
#

Is it a thing that shulker boxes can still be broken, when the blockbreakevent is cancelled?

charred blaze
#

how do i?

#

is there any way

#

i dont want to write it for every color

shadow night
#

Your font

charred blaze
#

yes

tall dragon
#

thats got to be a crime

tulip falcon
#

Hello guys, does anyone know something about Elemental Damage in Mmo Ites? Can Elemental Flat damage be upgrade in Item Upgrading settings?

placid moss
charred blaze
#

minecraft font is cool

charred blaze
placid moss
#

add a enum constructor

#

and then pass in the string name

echo basalt
#

waiting for the day someone makes an IDE plugin that autofills material names on yml files

#

because I don't know how to do it myself

placid moss
#

but like you can just use the valueof if the names are consistent

echo basalt
placid moss
#

tbh how do you even code intellij plugins

echo basalt
#

it's a weird java thing

placid moss
#

oh wait sory

#

then you can use reflection 💀

echo basalt
#

or just

#

make a map

#

no clue where I last used colors like this

#

probably something related to scoreboards

tall dragon
#

theres not rlly a good way to convert those from string to that

#

u would be better off just using rgb tbh

echo basalt
#

yeah

#

annoying ass thing is that if you don't pass an alpha value it defaults to like 255

#

and some parts of bukkit trip if they see an alpha value

#

or whatever idfk I just know that this saved me some exceptions before

lilac dagger
#

no way this is better as a string

#

just look at the amount of new objects it has to create

remote swallow
#

why are you using a string builder for it

lilac dagger
#

because i think it'll run faster than concatenating strings

#

where's md5 when you need him

#

pretty sure this is faster than the string counterpart

remote swallow
#

that is string

lilac dagger
#

commandSender.sendMessage("§3Page " + page + " out of " + totalPages +
". Use §7/§c" + label + " help §8<§bpage§8>§3 to change pages!");

remote swallow
#

String.format("Page %s out of %s . Use / %s help <page> to change pages!", page, totalPages, label)

lilac dagger
#

this would be string

#

but format is slower

#

as far as i know

remote swallow
#

performance wouldnt be noticed here most likely

lilac dagger
#

it looks cleaner

#

but it does the same

#

i don't like to create waste

echo basalt
#

StringBuilder is O(1) with bigger overhead

#

String concat is O(n) iirc

#

and String.format is O(bsolete)

#

and takes forever to run

#

it was like

#

4ms vs 12ms vs 75 seconds

north nova
#

75 seconds sounds reasonable

echo basalt
#

go for it

north nova
#

i will use it fs

topaz panther
#

is it possible to send a Custom Hex Color Code or do i need a specific API?

worldly ingot
#

Spigot's ChatColor has a ChatColor.of() method in which you can pass an integer

#

That being under the net.md-5 package. Not org.bukkit.ChatColor

full rock
#

Are auth systems allowed on spigotmc?

distant wave
#

if i add a maven dependency to my plugin, how will i load it in server?

onyx fjord
full rock
onyx fjord
#

no

#

if its a paid plugin you cant

worldly ingot
#

Yeah we don't allow licensing or DRM really

#

The only exception to that is that we do allow you to disable plugins remotely (usually with the NONCE id, or user id, whatever really). Though your plugin also has to work without a connection to the internet, so there's that

upper hazel
#

@echo basalt

smoky oak
#

Why is this unsafe?
(List<Player>) Bukkit.getServer().getOnlinePlayers().stream().toList();
getOnlinePlayers returns a list of ? extends org.bukkit.entity.player

distant wave
#

or any

tall dragon
#

He means authentication licensing i think

worldly ingot
#

What? Sure you can

#

Oh, yeah

#

If you just want to sublicense your project that's totally fine lol

#

My mind jumped to DRM licensing

smoky oak
#

I'm gonna need more than that

worldly ingot
#

It might not be a List

smoky oak
#

i wanted an explanatino not a 'how do i make this go away'

worldly ingot
#

It returns a Collection. It could be any type of Collection

#

There are dozens

smoky oak
#

doesnt the stream.tolist deal with that?

worldly ingot
#

Oh my mistake, didn't see the stream

#

It's still a capture of Player instances though. The placeholder generic still exists unfortunately

#

tbqh, the cast would probably work, IJ is just being anal

smoky oak
#

like tooltips say something along 'make this more generic'. Do captures not actually extend what they're extending?

#

also its maven thats complaining about this being unsafe, not IJ far as i can tell

worldly ingot
#

Oh really? It rarely complains about source-level issues

smoky oak
#

still what's up with the captures?

worldly ingot
#

Weird Bukkit design from back in the day

#

Was a discussion about it somewhat recently in here

#

Oh, actually, it was with you lol

smoky oak
#

i have no recollection of that

glad prawn
# smoky oak

You can List<Player> players = new ArrayList<>(Bukkit.getOnlinePlayers())

worldly ingot
#

Does that work?

glad prawn
#

Hm

worldly ingot
smoky oak
#

its one of the things IJ throws at me too

#

it might

#

ah yea this is the same exact piece of code this is about aswell

smoky oak
glad prawn
#

Ye just create a new list from the returned collection.

eternal oxide
#

Is there a reason you need a List over a Collection?

smoky oak
#

depends

#

can u for Object o : collectoin

eternal oxide
#

yes

smoky oak
#

then no

eternal oxide
#

you can also Collection#forEach

topaz panther
#

by any chance can sending a message to a player be messed up if its line by line ?

smoky oak
#

though wouldnt this be the same issue? casting
Collection<snapshot<? extends org.bukkit.player>> -> Collection<Player>

#

i need to iterate over all players

eternal oxide
#

just iterate, no need to cast anything

smoky oak
#

would duplicate parts of the code

#

I'm iterating over one or all players

eternal oxide
#

that makes no sense

smoky oak
#

so i have a List<player> to store one or all players

eternal oxide
#

first comment, do not reference Players by their object.

worldly ingot
#

*unless there's a reason to

eternal oxide
#

like it's purely in teh scope of a method

smoky oak
#

right now yes

worldly ingot
#

No. Holding reference to a Player object is totally fine if you need to invoke methods on a Player object. There's absolutely nothing wrong with that at all. So long as you're removing those references when the player leaves the server

#

If you're not operating on the Player object and you just need to check if a player is in some state, then hold its UUID

smoky oak
#

I'm def operating on the player

worldly ingot
#

Then you're okay to hold reference to it. Just be sure to remove them on leave

smoky oak
#

Im keeping a reference by uuid->handler which holds the player object

#

that reference gets removed on leave

eternal oxide
#

ok

worldly ingot
#

You're all set then ThumbsApproved

charred blaze
#

hey, so im creating chatcolor plugin that uses mysql. will it be okay if i check database on every player message send to check for data?

#

it will be laggy & not really good right?

eternal oxide
#

it will be terrible

#

pretty much unusable.

tall dragon
#

😄

#

just a poc of course. but i could turn this into a pretty helpful tool if you want to

quaint mantle
#

Why do player instance becomes null when player leaves?

tall dragon
#

because the server creates a new instance

worldly ingot
#

They don't become null, they just don't refer to that player anymore

#

Any operations you perform on it just kinda don't work

tranquil dome
#

How can I spawn an NMS arrow?

#

I cannot use player#launchProjectile() because of this:

#

SSArrow extends EntityArrow

eternal oxide
#

isn't Arrow an abstract

tranquil dome
#

what do you mean?

worldly ingot
#

EntityArrow is an NMS type but Player#launchProjectile() expects a Bukkit type

lilac dagger
#

you're trying to make custom arrows from bukkit

worldly ingot
#

Also, that

tranquil dome
#

I know, so I was wondering how to spawn the arrow entity into the world

#

This did not work either, tho it does work for living entities

        ((CraftWorld) location.getWorld()).getHandle().addEntity(this);
#

this being the custom arrow

lilac dagger
#

well, if you wanna make your own arrows from nms you can't just use bukkit for it

#

bukkit has been built to process the vanilla types

lilac dagger
#

and direction?

tranquil dome
#

Yeah, this is the full method

    public void launch(Player player, double power) {
        Location location = player.getEyeLocation();
        Arrow arrow = (Arrow) this.getBukkitEntity();

        ((CraftWorld) location.getWorld()).getHandle().addEntity(this);

        setPosition(location.getX(), location.getY(), location.getZ());
        arrow.setVelocity(location.getDirection().multiply(power));
    }
lilac dagger
#

change the order

#

you can't add an entity on null position

tranquil dome
#

so set position before adding entity to world?

lilac dagger
#

also are you extending a world?

#

or is just the entity

#

nvm

#

it's just a method

tranquil dome
#

its a method I created inside the custom arrow class

lilac dagger
#

and do it with custom spawn reason

#

it is not a vanilla arrow

#

and should be treated as a custom one

tranquil dome
#

I'll add that

#

it spawns now

#

ty

lilac dagger
#

👍

charred blaze
eternal oxide
#

you cache any lookups you need when the player joins

tender shard
#

Is it possible to tell github dependabot to ignore certain dependencies? I need this declared only in my upload-to-central profiles and hence dont care about it

#

Its only declared as dependency inside a build plugin sooo doesnt matter at all

eternal oxide
#

you can reply to the bot and it will not give any future nags

#

reply ignore or something

tender shard
#

Ok thanks, But i gotta do that for all repos right?

eternal oxide
#

yep

tender shard
#

Aight thx

#

Would be nice if the official staging plugin would get fixed instead lol

#

Well its from sonatype not apache soo not really „official“

vital sandal
#

could someone explain me what the first boolean of this packet do? PacketPlayOutAdvancements

#

an example will be nice

remote swallow
#

probably clears current progress

vital sandal
#

may be could you explain what does each fields do?

remote swallow
vital sandal
#

so like ? if I set toEarn and toRemove to null

#

it will equal to reset?

#

this is my attempt to remove all the advancements that player has earned

remote swallow
#

why do you need nms for that

vital sandal
#

ermm for not showing the toast?

#

as I'm saving advancements for each world

#

so I need to add and remove everything without showing 100+ toast

remote swallow
#

the packet might still show toasts

vital sandal
#

nope it doesn't

remote swallow
#

also are you on 1.17.1 or higher

vital sandal
remote swallow
#

how

#

mappings mean you dont have to come here to find out what something does

vital sandal
#

most of stuffs that I use have specific args that I remember

#

like this

shadow night
#

Doesn't the client request the achievements each time they open the menu? Or is that only with statistics?

quaint mantle
#

How I can disable server's no clip prevention to specific player?

remote swallow
#

the server has no clip protection?

quaint mantle
#

Nope vanilla's

shadow night
vital sandal
#

this is my problem in case you have any better idea

remote swallow
#

is there any reason you are saving per world

shadow night
#

Maybe that's the idea of his plugin?

smoky oak
#

if only few interface implementations need a certain method, is it better to use abstract or an empty method body?

remote swallow
smoky oak
#

it's there to reduce complexety in other methods, and to not have to change things in other classes (for example event hooks) if i make a new interface implementaiton

shadow night
remote swallow
#

that would be very painful

tender shard
remote swallow
#

and you should use bungee instead

shadow night
smoky oak
#

like

#

event handler hooks

#

so i dont have to add every implementation to the events

tender shard
#

just add a default empty method

smoky oak
#

yea sounds about right

tender shard
#

that's e.g. how JDA does it

smoky oak
#

👍 ‎

tender shard
shadow night
#

Is PlayerListener a thing in modern bukkit api?

shadow night
#

In b1.7.3 it's used to do events

#

I has a lot of empty methods that are events that you can override

remote swallow
#

no

#

why would that need to exist

#

we have the EventHandler stuff

shadow night
#

Just curious if that got removed

#

Because there still is an egg throw event from back when shooting projectiles had hardcoded functions and events for each

remote swallow
#

@young knoll egg

tender shard
#

EggThrowEvent makes sense because you can set the number of animals hatched etc bla bla

shadow night
#

Well yeah

#

But the fact that it's a thing is amazing me

tender shard
#

bukkit 1.0.0 had Event.Categories and Event.Types, I wonder what that was used for

vital sandal
remote swallow
#

feature of what

vital sandal
#

They save everything for each world instead of using bungeecord

remote swallow
#

sounds painful

#

good luck

vital sandal
#

I got everything done :l

#

But the problem is

#

The cache of advancements is still there

#

Mean if you earn the adavancement in a world

#

You cannot earn it in another

#

Unless you relog

remote swallow
#

time to go browse source and see if theres a specific reason for that

vital sandal
#

I believe I undercharge this 🥲

sonic sonnet
#

Hello, I dont get remap working, can someone help me? This is my project setup (modules):

  • v1_19_R3 (Java 20 & 1.19.4-R0.1-SNAPSHOT remapped-mojang)
  • v1_20_R1 (Java 20 & 1.20.1-R0.1-SNAPSHOT remapped-mojang)
  • core (Java 20 & spigot-api)
  • plugin (Java 20 (just to combine all above)

In the 2 nms modules I have copied the remap plugin and changed the version to the correct NMS version. But on compiling I get the following error: Unsupported class file major version 64.

How can I fix this?

tender shard
tender shard
#

btw if core uses java 20, then all servers require java 20 too

#

if you wanna support 1.19 and 1.20 you should stick to java 17

sonic sonnet
#

They all have java 20

vital sandal
#

Oh yeh the reason I don’t use mapping because it is slow :d

tender shard
sonic sonnet
#

Now I have this in plugin module:

<build>
        <finalName>CosmeticTest-${pretty.version}</finalName>
        <defaultGoal>clean install</defaultGoal>

        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>

        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
                <version>3.3.0</version>
                <configuration>
                    <rules><dependencyConvergence/></rules>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.11.0</version>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.5.0</version>

                <configuration>
                    <createDependencyReducedPom>false</createDependencyReducedPom>
                    <shadedArtifactAttached>false</shadedArtifactAttached>
                </configuration>

                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
#

And still not working 😦

tender shard
#

do you have the maven-shade-plugin declared in other pom as well?

#

run mvn clean install -X on the parent pom and upload the full log

#

maybe that error is also coming from an outdated specialsource plugin - hard to say without seeing the full maven log

tender shard
#

it's remapped at compile time, you'll end up with a .jar that uses spigot mappings

smoky oak
#

anyone know what this is?

tall dragon
#

yea that will update the method signature everywhere

#

so in your superclass as well

tender shard
#

you refactored the method to take in an event and now IJ tells you all the places where you use the old method so you can update them

smoky oak
#

no i didnt

#

i just did this

orchid trout
#

🐈

smoky oak
#
//Interface
public void damageEvent(EntityDamageEvent event){}

//Implementer
@Override
public void damageEvent(EntityDamageEvent event){
  event.setCancelled(true);
}
sonic sonnet
smoky oak
tender shard
#

then idk what IJ is trying to tell you

smoky oak
#

ah ok

orchid trout
smoky oak
#

cuz thats how im used to doing it

#

compiler removes all line breaks anyways

#

java is just one giant line of text

orchid trout
#

oh nvm thats just because it doesnt fit on my screen

vital sandal
tender shard
#

obviously it takes a tiny bit longer to compile as it remaps the .jar

#

on the other hand you can use proper method, field and class names and when a new version comes out, all you gotta is change the version in pom.xml instead of manually changing all the obfuscated names

#

well at least in 99% of cases you won't have to change anything besides the version

remote swallow
#

isnt it normal in testing you run a mojmap server, when you finish you run obsfucated

slender elbow
#

running mojmap during dev is nice for properly debugging stuff when shit goes south

#

and 🤓 technically it is faster to compile

tender shard
#

technicallllly compiling should be equally fast, remap is done after compiling on the .jar directly runs away

slender elbow
#

i don't see how maven changes anything

tender shard
#

yeah that makes little sense

slender elbow
#

the build process will take longer if you're remapping

#

regardless of build tool

tender shard
#

yes sure, however writing code is like 20 times faster

vital sandal
#

Before using modules :l I was using reflections

slender elbow
#

@eternal night uwu?

eternal night
#

Also, bazel

slender elbow
#

I should try #bot-commands one day

#

or not

tender shard
#

yeah let's play trivia

#

see you in #bot-commands emily

sage patio
#

event.getView().getPlayer() returns the inventory owner on InventoryClickEvent?

topaz panther
#

instead of using Bukkit.getOfflinePlayer(); since its deprecated what do i use?

topaz panther
vital sandal
#

it show the inventory which that player is viewing

topaz panther
#

help

#

ill just store the data i guess...

north nova
#

use their uuid???

#

what do you need the player object for in that case anyways

upper hazel
#

I add a plugin to spigotMC but for some reason the photo is not loaded there

#

i try add

#

but not work

#

spigotMC not load my image

tender shard
#

why dont you upload the pic directly to spigotmc

pseudo hazel
#

then how will his embedded virus ever work

upper hazel
#

lol

tender shard
#

hmm

upper hazel
#

my resurce publick

topaz panther
north nova
#

ok?

#

so u do Bukkit.getOfflinePlayer(uuid).getName()

#

or getdisplayname or whatever the method is called

grizzled oasis
tender shard
grizzled oasis
#

and so one

#

so until it hits a block

tender shard
#

what is that whole code supposed to do in the first place? I don't really understand what your goal is

grizzled oasis
brazen badge
#

Hi, a question. How can I detect if the player use the portal in the end or in the overworld? using PlayerPortalEvent

hollow lodge
#

Is there any form of IntelliJ plugin / tool or whatsoever that integrates a run configuration which builds your plugin to a server and runs that server?

tender shard
#

which has a getFrom() and getTo() location

lavish vortex
upper hazel
#

how can I edit the description of my resource in spigotMC (description, etc.)

tender shard
# tender shard https://www.mojohaus.org/exec-maven-plugin/examples/example-exec-for-java-progra...

example

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>3.1.0</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <executable>java</executable>
                    <workingDirectory>/path/to/my/server</workingDirectory>
                    <arguments>
                        <argument>-jar</argument>
                        <argument>spigot-1.20.1.jar</argument>
                    </arguments>
                </configuration>
            </plugin>
sage patio
#

any idea why?

tender shard
#

if it's not there, you don't have 2FA enabled

sage patio
#

do you have any idea why?

tender shard
#

i have no clue what you're asking

sage patio
#

the item in the yellow circle slot number is 40

#

and the next item to that, its slot 9

#

wanna a screen share to explain?

brazen badge
tender shard
# sage patio

you're confusing slow numbers with raw slot numbers and or the inventory's slot numbers with the inventory view's slot numbers

tender shard
brazen badge
tender shard
upper hazel
tender shard
#

I have shown you

icy beacon
#

ngl im getting extremely fucking tired of trying to make gradle work for the first time. why the fuck would it NOT work if all i did is created a raw project in intellij?
psa i don't know why i'm running gradlew.bat instead of gradle build, but it should work either way because i applied zero modification to the out-of-the-box gradle files

#

?paste

undone axleBOT
icy beacon
tender shard
#

run gradle wrapper in your project

icy beacon
icy beacon
#

and running gradle wrapper throws the same error

#

that i attached

#

i even installed gradle system-wide in hopes it'd work

#

build systems lately been fucking me up, first maven on my pc, now gradle on my laptop

#

almost if there's some unified hatred

keen basin
#

its not working with END_GATEWAY can someone help me ?

    @EventHandler
    public void enterPortal(PlayerPortalEvent e){
        System.out.println("Enter Portal");
        if(!e.getCause().equals(PlayerTeleportEvent.TeleportCause.END_GATEWAY)) return;

        e.setCancelled(true);
        e.getPlayer().sendMessage(hex("&cYou cannot enter through this gate"));

    }

upper hazel
tender shard
keen basin
upper hazel
#

oh i see

icy beacon
brazen badge
# tender shard if sth is overworld / end etc, check the world's Environment https://hub.spigotm...
 @EventHandler
    public void onPlayerPortal(EntityPortalEvent e) {
       if (e.getEntity() instanceof Player) {
           Player player = (Player) e.getEntity();

           Location enter = e.getFrom();
           Location exit = e.getTo();
           
           World.Environment enterEnvironment = enter.getWorld().getEnvironment();
           World.Environment exitEnvironment = exit.getWorld().getEnvironment();
           
           System.out.println(enterEnvironment);
           System.out.println(exitEnvironment);
       }


    }

Why it does not work??

tender shard
#

?notworking

undone axleBOT
#

"Does not working" is a useless statement. Please describe what exactly is not working, what you expect it to do, and what actually happens. If you get any console errors, also ?paste the entire stacktrace.

tender shard
#

does it not print anything? if so did you register the listener?

brazen badge
brazen badge
icy beacon
#

heads up you should give more descriptive names to your classes and variables (e.g. EndSomethingListener instead of End & event instead of e) so that your future self can spend less time trying to figure out what the fuck this means and also to avoid ambigious naming (like is e an event or an entity)

smoky oak
#

How is strength handled in the game? There's neither PotionEffectType.POWER nor PotionEffectType.STRENGTH

remote swallow
#

evt ety epl

icy beacon
#

increase_damage i think

icy beacon
smoky oak
#

yea thats probs it

icy beacon
#

and similar stuff for enchantments (damage_all iirc)

shadow night
#

Yeah

#

And for some reason protection is PROTECTION_ENVIROMENTAL

icy beacon
#

makes perfect sense, seeing as there are multiple types of protection

#

i mean protection_all would be better of course

#

but protection_environmental sounds cooler

shadow night
#

Sounds like more to type, thank god I have the key known as "TAB" to autocomplete my stuff

icy beacon
#

i mean yeah most people code with intellisense

#

so it does not really matter

#

as long as it fits in the screen's width

brazen badge
icy beacon
#

i have no clue

#

i am trying to resolve a problem as well

#

not yours though

shell robin
#
@EventHandler
    public void onArmorEquipEvent(ArmorEquipEvent e){
        if(e.getNewArmorPiece() != null && e.getNewArmorPiece().equals(HealthAbilityItem.createHealthChestplate())){
            Player player = e.getPlayer();
            giveExtraHearts(player, 4);
        }
        if(e.getOldArmorPiece() != null && e.getOldArmorPiece().equals(HealthAbilityItem.createHealthChestplate())){
            Player player = e.getPlayer();
            takeBackExtraHearts(player, 4);
        }
    }
    private void giveExtraHearts(Player player, double amount) {
        AttributeInstance maxHealthAttribute = player.getAttribute(Attribute.GENERIC_MAX_HEALTH);
        double currentMaxHealth = maxHealthAttribute.getValue();
        double newMaxHealth = currentMaxHealth + amount;

        maxHealthAttribute.setBaseValue(newMaxHealth);


        player.setHealth(newMaxHealth);
    }

    private void takeBackExtraHearts(Player player, double amount) {
        AttributeInstance maxHealthAttribute = player.getAttribute(Attribute.GENERIC_MAX_HEALTH);
        double currentMaxHealth = maxHealthAttribute.getBaseValue();

        if (currentMaxHealth > player.getAttribute(Attribute.GENERIC_MAX_HEALTH).getBaseValue()) {
            double newMaxHealth = currentMaxHealth - amount;

            maxHealthAttribute.setBaseValue(newMaxHealth);


            if (player.getHealth() > newMaxHealth) {
                player.setHealth(newMaxHealth);
            }
        }
    }``` giveExtraHearts method is working but takeBackExtraHearts is not
Also there is no error in console
icy beacon
#

are YOU ACTUALLY FUCKING KIDDING

  • maven will not find the proper entry point for some reason
  • gradle does not work and the error is barely googlable
  • intellij build system does not work with cyrillic characters??????????
#

im fucking done with this shit im never coding on this laptopt again

#

7 days before i am back to my pc

tender shard
#

instead you randomly create a new item everytime and check if the meta equals

keen basin
# tender shard

I want to ask is there such a PlayerTeleportEndGatewayEvent because I'm trying this event PlayerPortalEvent but it's not working properly

tender shard
#

which they will rarely do, e.g. it won't if they item ever got damaged

#

I have explained this to you 3 days ago already

hasty prawn
#

Isn't it because they're checking if getBaseValue() > getBaseValue()?

#

Which would never be true

#

Should be currentMaxHealth = getValue()

tender shard
#

the ONLY proper way to identify your custom item is a PDC tag, period

shadow night
tender shard
#

if your item gets damaged only once, the Item you recreate everytime during that event will never be equal to the actual equipped armor's meta anymore

#

i doubt that my ArmorEquipEvent runs on such ancient versions in the first place

hasty prawn
icy beacon
#

yeah it works perfectly at my home pc

hasty prawn
#

As for Maven and Gradle you'd have to provide the actual errors

shell robin
#

If the problem is indeed PDC, is it possible to have giveTakeBackHearts() not running while giveExtraHearts() is running?

shadow night
icy beacon
#

for gradle you can scroll a bit above

#

and maven is just fucking around for some reason with no errors, i'm yet to figure it out

tender shard
#

maybe just use a normal username

icy beacon
#

i'm contemplating being born in a country where they use cyrillic

icy beacon
#

i reinstalled in may and i still used the name

#

instead of something like a nickname

shadow night
#

Having different alphabets is a pain, but I like cyrillic more, because more letters

icy beacon
#

i know two more alphabets which are hiragana and katakana

#

can't miss the opportunity to flex

shadow night
icy beacon
#

well they aren't exactly alphabets but who gives a shit

icy beacon
brazen badge
#
@EventHandler
    public void onEndTeleport(EntityPortalEvent event) {
        if (event.getEntity() instanceof Player) {
            Player player = (Player) event.getEntity();

            System.out.println(event.getFrom());
        }
    }

I really need help. It does not print in the console

icy beacon
#

why are you not debugging the outer scope

#

why are you doing it in the innermost scope

tender shard
#

What if you use regular PlayerTeleportEvent

icy beacon
#

it kinda defeats the point

shadow night
#

Wait, what if I made a minecraft horror map using a plugin

remote swallow
#

what about it

shadow night
#

I've never seen a map being made like that

tender shard
#

I once made an adventure map with a custom plugin. People were too stupid to run it as they didnt understand it required craftbukkit (was a looong time ago)

shadow night
#

Oh lol

#

I was making a b1.7.3 gamemode creative plugin recently

#

I like the events there

remote swallow
#

someone made a backrooms plugin here before

shadow night
#

And people were too stupid to host a server?

remote swallow
#

huh?

tender shard
#

huh

shadow night
#

Or was it like for a public server

brazen badge
remote swallow
shadow night
#

Makes sense

tender shard
shadow night
#

Can anybody educate me on how psychodelic horror maps work?

tender shard
shadow night
#

Lol

keen basin
#

Hi I want to ask is there such a PlayerTeleportEndGatewayEvent because I'm trying PlayerPortalEvent event but it's not working properly md_5

tender shard
#

just try the regular PlayerTeleportEvent then check the cause and the environment of the getFrom() or getTo() world

#

not sure what an end gateway is

#

is it the thing found in strongholds?

carmine mica
#

no

remote swallow
#

no the thing after u kill the dragon

#

bedroc things

carmine mica
#

well they are all bedrock things

tender shard
#

then check if getFrom() environment is END

remote swallow
#

it will be end on both

tender shard
#

oh those nasty fuckers

#

i hate them

remote swallow
#

why

tender shard
#

i don't know, they suck

keen basin
#

just nether portal and end portal work fine 😦

brazen badge
#

because if I enter the portal from the end I don't read anything in the console

chrome beacon
#

Yeah you need the PlayerRespawnEvent

fossil lily
#

Is World#getFullTime() measured in days?

tender shard
#

ticks

fossil lily
#

Oh so thats going to be a huge number

tender shard
#

yes

chrome beacon
fossil lily
#

getFullTime() / 24000 should get me days (talking to myself, thanks!)

tender shard
brazen badge
chrome beacon
carmine mica
#

people are talking about two different things

brazen badge
chrome beacon
tender shard
tender shard
keen basin
#

cause: ENDER_PEARL not END_GATEWAY can you try plesae

chrome beacon
#

Yeah the ender pearl is teleported through the gateway

tender shard
chrome beacon
#

oh

#

I assumed you'd need to crawl through it or smth

tender shard
#

the tiny 1x1 portals are PlayerTeleportEvent with END_GATEWAY and the normal "back to overworld" portal is PlayerRespawnEvent

chrome beacon
tender shard
#

I'll make another video to get rid of all the confusion lol

#

TL;DR:
The tiny portals that TP you within the end are PlayerTeleportEvent with cause END_GATEWAY
The bigger portal in the middle of the end that brings you back to surface is PlayerRespawnEvent with respawnReason END_PORTAL

ruby mesa
#

so many tabs lmao

brazen badge
#

Thank you all

glad prawn
#

How does he know which tab to use?

tender shard
#

I'm used to macOS where I can easily search through tabs with cmd-space

#

that's why I never close them

#

in chrome it also works somehow

#

I think ctrl+shift+a

charred pendant
#

Hello guys! I am trying to make a plugin about storing UUIDs on config file when a player joins the server. I implemented the code but the config.yml file is blank/empty. Can I post my code here and assist me ?

kind hatch
#

?paste

undone axleBOT
charred pendant
mellow edge
#

why doesn't spigot allow you to control (for example) cow's AI

tender shard
#

that's not a valid path

#

remove the "." at the end of config.set(...)

flint coyote
tender shard
charred pendant
mellow edge
tender shard
#

JeffLib allows you to write custom AI without NMS

flint coyote
#

why is all your stuff named "Jeff" Alex?

flint coyote
#

Is it your boyfriends name?

flint coyote
#

I see. Why did you pick it?

mellow edge
#

thank you

mellow edge
#

I'll look into it

tender shard
#

basically you can just extend CustomGoal, and then you can use EntityUtils#getGoalSelector(someEntity) and add your own goal

#

CustomGoal has access to all movement things I considered useful, which is the JumpController, MoveCOntroller, and LookController

#

(certain basic goals are included in PathfinderGoals, e.g. TempGoals, AvoidEntityGoals and MovetoBlockGoal)

charred pendant
tall dragon
ivory sleet
#

verii cool

kind hatch
tall dragon
#

haha

glad prawn
#

DIAMOND_sword 🤓

remote swallow
tall dragon
#

yea

#

it is xD

#

thought it would be a fun lil project

carmine mica
#

uppercase = yuck. using resource location = good

tall dragon
glad prawn
tender shard
glad prawn
#

idk

lilac dagger
charred pendant
kind hatch
tender shard
charred pendant
#

So, what should I do now ?

tender shard
#

You often need a reference to your main instance (the instance of your class that extends JavaPlugin) in some of your other classes. There’s two basic concepts for this. Choose whichever you like more. Method #1: Static Getter First way is to create a static method called getInstance() or similar in your main class. You...

charred pendant
#

Let me read the article and apply changes then

charred pendant
tender shard
#

great! :3

charred pendant
#

Saved the article to my bookmark for future projects.

glad prawn
#

🤑

tall dragon
remote swallow
#

@echo basalt

keen basin
#

is there i way to check if end crystal is active like that

tender shard
#

idk what the "bar" is but if it's the "beam target" then just check if EnderCrystal#getBeamTarget() != null

kind hatch
#

I was gonna suggest checking the DragonBattle.RespawnPhase since that process is specific to respawing.

keen basin
smoky oak
#

why does Player.setAllowFlight(true) cancel fall damage

tender shard
#

probably because they could start to fly anytime any way

smoky oak
#

...

#

im using it to detect double jumps

#

any workaround you might know?

kind hatch
#

All javadoc comments are in Bukkit and not CraftBukkit right?
Meaning I would only need to edit Bukkit directly?

tender shard
#

yes

kind hatch
#

I don't need to do anything like running applyPatches for bukkit do I?

tender shard
#

correct

kind hatch
#

Cool

#

Sheeesh. Might have to fix these first. lol

tall dragon
#

2k typos lmfao

tender shard
#

yeah well IJ recognizes many "valid" words as typo, e.g. "to despawn"

kind hatch
#

I think most of those are jsut minecraft words that I haven't added to the dictionary, but the gramatical errors are something else. Just reading some of them are something else.

tender shard
#

^

young knoll
#

There are some errors I’ve seen

tender shard
#

yeah e.g. the claim that md5's mixtape is fire while it's actually lame asf

young knoll
#

Some people that have made PRs are ESL and MD doesn’t go super hard on grammar checking the javadocs

kind hatch
#

ESL?

young knoll
#

English as a second language

kind hatch
#

Ah

tender shard
#

usually people who got english as second language are better at spelling though lol

#

"should have/should of", their/they're/there, etc

young knoll
#

I’ve noticed a lot of the people in my college course that are ESL would leave out small words

#

Like of/do/etc

kind hatch
#

Can't blame non native speakers for not getting all the nuance. English is hard.
https://www.youtube.com/watch?v=SfhKldRKmo8

tender shard
kind hatch
young knoll
#

I use a lead to lead my pet chunk of lead

remote swallow
#

there they're their, where were, read read

pulsar parcel
#

Hi, I have for loop and taskTimer in it.I will make the same action in the taskTImer with different args in this for loop. And my question is how can I make the for loop wait until the taskTImer is done.

tender shard
#

why don't you just run the loop in the task

pulsar parcel
cursive kite
#

If I pass an event to a function using private void handle(Cancellable event, Player player, Entity entity) { event.setCancelled(true);

#

will it cancel the event

tall dragon
#

if done synchronous, yes

onyx fjord
#

is there some java utility that lets me provide an object as argument but that object gets initialized lazily?

#

for example only after an if check

#

or i just gotta use a supplier?

worldly ingot
#

A Supplier?

onyx fjord
#

yeah thats what i was thinking

cursive kite
#

Is there an event called when a player places an armor stand

river oracle
#

BlockPlaceEvent

tender shard
#

are you sure? armor stands are not blocks

river oracle
#

I'd assume placing them would trigger block place event though

#

if they don't we'd need an event for that

#

otherwise EntitySpawnEvent

cursive kite
#

Yea didnt trigger from BlockPlace

tender shard
#

check PlayerInteractEvent / RIGHT_CLICK_BLOCK / itemInUse.getType() == Material.ARMOR_STAND

#

if you need the player

abstract sorrel
quiet ice
#

Does anyone know how one can simplify Math.sqrt(2) * Math.sqrt(x / 100)

#

I'm lazy, thanks

tame coral
tame coral
#

for something that easy even chatgpt would work

quiet ice
#

The thing about learning maths: I should know that

#

It's probably the same as sqrt(x / 50)

#

Yep

tame coral
#

see, knew you could do it

abstract sorrel
tame coral
#

oh i thought you meant replicate the exact thing

#

mb

abstract sorrel
#

nah i already have my own texture pack for what im doing im just trying to figure out how i would make a crosshair like that

tender shard
#

well unless you care for the negative value too ofc

quiet ice
#

Its pretty horrifing that I'm doing the Abitur in the Mathe LK next year and I barely know these kind of things

#

What's even worse is that I'm the best of my class 💀

tender shard
#

at least wolfram alpha thinks so too so I guess you're fine using x/50 lol

abstract sorrel
quiet ice
#

I just use the old trick in the book and substracted these two values and get a pretty good line of y=0

ruby mesa
#

is it possible to make text at a specific location on ur screen?

quiet ice
#

not truely

ruby mesa
#

I saw someone do it but im not sure how they did it

tame coral
quiet ice
#

Probably with whitespace

tender shard
#

wdym with "specific location"? you got a screenshot?

ruby mesa
#

one sec

tender shard
#

you can never be sure about GUI scale, FOV etc of a player so text entities or armor stands will never truly work, nor will action bar or bossbars unless you use a custom resource pack and even that would be affected by gui scale

ruby mesa
#

I sent it in dms

#

since i cant send screenshots here

tender shard
#

where even is that supposed to be?

quiet ice
ruby mesa
#

it's at the bottom of the screen

#

with other text as well

tender shard
#

would be helpful if you'd have sent the whole screenshot

ruby mesa
#

alr 1s

tender shard
#

?img

undone axleBOT
#

Can't send images? That's because you're not verified! Use !verify to complete verification.
Alternatively, you can upload screenshots to any image hosting site and share the link.

Here's some screenshot utilities that can use to upload images.
Lightshot: https://prnt.sc
Imgur: https://imgur.com/upload
Flameshot: https://flameshot.org

quiet ice
#

!verify

undone axleBOT
#

Usage: !verify <forums username>

quiet ice
#

Smh

tame coral
#

that's a texture pack innit

quiet ice
#

or a mod even

onyx fjord
#

Guns based

ruby mesa
#

it's not a mod, its vanilla

tame coral
onyx fjord
#

You can achieve that with resource packs

ruby mesa
#

must be a texture pack

ruby mesa
tame coral
onyx fjord
#

No you don't need optifine

remote swallow
#

you sure that isnt a stream overlay

ruby mesa
#

no it isnt

#

the far right is though

onyx fjord
#

It's 100% doable

ruby mesa
#

mhm

onyx fjord
#

How idk

#

But I've seen this

abstract sorrel
#

!verify RunTellObama

undone axleBOT
#

A private message has been sent to your SpigotMC.org account for verification!

abstract sorrel
#

yess i got the blue name basic human rights unlocked

#

does anyone know how i would create a particle effect similar to this: https://www.youtube.com/watch?v=NRleb71KvF4&t=13s

Today I will tell you everything about the ARCHER ABILITY TREE on WYNNCRAFT

Subscribe for more content ▶ https://www.youtube.com/@celestialsorcery

Join Wynncraft now, a vanilla mmorpg server I'm playing on:
Website ▶ https://wynncraft.com
IP ▶ play.wynncraft.com

Background Music used 🎵:
Anthem of Rot (Decrepit Sewers) Wynncraft OST by @Mindl...

▶ Play video
echo basalt
#

It's a circle with a bunch of lines

abstract sorrel
torn shuttle
#

I really want a 3d printer to print minis for my dnd games and for my own entertainment but I'm a shit modeller, and even worse painter and most of all absolutely do not have the time to do anyt step of this

#

but man do I want it

abstract sorrel
#

i swear every time i ask for some help i feel like im getting somewhere but then they just stop replying

torn shuttle
#

first you make a circle then you raycast from the player's sight, it's basic stuff

echo basalt
#

you make a bunch of vectors and rotate them around the player's yaw

short shale
#

would anyone know how to tell me in which version Minecraft started to support BaseComponent in messages?

#

it was 1.13?

echo basalt
#

prob 1.14

tender shard
#

it was already possible in ancient 1.8.8

#

1.8 added it

short shale
#

yes, sorry for the mistake. I would like to know about gradient messages

tender shard
#

hex colors were added in 1.16

short shale
#

thxx

quaint mantle
#

common 1.8 W

tender shard
#

1.8 W?