#development

1 messages · Page 96 of 1

torn heart
#

^

#

memory leaks are when some piece of code holds on to memory that it shouldn't. if memory is rising but then falling down again, that means they are being properly disposed of

#

if your memory usage continuously rises even after these garbage collection events, such that you eventually reach an Out Of Memory error, then that is indicative of a memory leak

minor summit
#

what if I have an infinite amount of memory

next notch
minor summit
#

it's mine get your own

nocturne dust
hushed veldt
#

Skript would still take it

nocturne dust
empty frost
#

i was wondering how you get an ecloud account, i want to start uploading some of my projects but i don't know how

robust crow
neon pewter
#

does anyone know why there is no missing comment complain for constants in my Vault record but for other records there are? (also apply to other records too but i already add document to those) ?

sterile hinge
#

I assume this is produced by javadoc?

#

it looks like the warning isn't related to records but comes from the inner classes, and the difference there is the visibility

neon pewter
#

i just double checked, yeah those are from the inner class, trying to get away with not commenting those composite constants as much as possible

sterile hinge
#

well you can either make them private as well or disable the warning

twin trench
#

need help

#

whats the actual respiratory link

worn jasper
twin trench
#

nw got it working

river solstice
#

respiratory

scenic vapor
#

reminded me of covid

river solstice
limpid hinge
minor summit
#

true

#

i have all the memory

lucid pier
#

hello we are looking for partners any interested ?

minor summit
#

i already have a girlfriend

scenic vapor
lean jungle
#

Happy New Year! 🎉✨🥳🎆🎊
As we step into a fresh new year, many founders and teams are full of new energy and new goals—but one of the biggest challenges in building a project still isn’t the idea.
It’s finding the right engineers to bring it to life.
Great execution takes engineers who are technically strong, communicate clearly, deliver on time, collaborate smoothly across global time zones, and understand the importance of SEO and influence.
I won’t claim perfection, but I’m always working to improve.
I’d be excited to work with you and help push it forward.

spiral prairie
# lean jungle Happy New Year! 🎉✨🥳🎆🎊 As we step into a fresh new year, many founders and te...

Happy New Year to you as well — 🎉✨🥳 — and thank you for this thoughtfully energetic reflection on momentum, execution, alignment, delivery, communication, time zones, SEO, influence, improvement, and the forward motion of vision itself.

As we collectively step into this fresh new year — full of possibility, intention, and well-formatted enthusiasm — it’s always encouraging to encounter messages that remind us that while ideas may spark — it is execution that truly executes.

At the same time — and I say this with the utmost respect for ambition and outreach — I must acknowledge that this message has arrived here with a confidence that suggests it knows exactly where it meant to go — even if reality may have had other routing plans.

That said — I appreciate the initiative, the optimism, the self-awareness, and the commitment to continuous improvement — all foundational pillars of modern collaboration — especially when delivered with such seasonal conviction.

Wishing you clarity, traction, and highly relevant inbox placement in the year ahead — and should our paths ever intentionally cross, I trust the context will be unmistakable.

lean jungle
#

What do you mean?

icy shadow
icy shadow
scenic vapor
icy shadow
teal temple
#

I have my homework project built with laravel+react
And the goal is to upgrade this project.
If anyone can help me, please DM me and discuss budget of this project

river solstice
#

no homework help

halcyon wadi
#

how do i make a discord channel have the locked symbol so they cant oppen the channel but they can see what its called for my servers ip

icy shadow
#

Make a voice channel that people don’t have permission to join

#

This is the wrong channel also

edgy torrent
#

i am facing data sync problem in lobby and its survival

minor summit
#

dang

#

stay strong brother

oblique thicket
dense drift
#

Is this from your own plugin? If so, you are including PAPI in your jar, don't do that.

oblique thicket
#

I dont include that in my jar

normal quarry
spiral prairie
#

I have to be employed to pay for ChatGPT lol

#

shit's expensive

scenic vapor
#

it also is cheap

#

am using Gemini flash

dense drift
scenic vapor
#

this sht is cheap af

#

am using it in Intellij

dark garnet
#

can https://helpch.at/docs/ be updated to include 1.21.9 and 1.21.10 pls 🥺

minor summit
dark garnet
minor summit
torn heart
#

please stop the spigot nonsense

#

as, stop using it

oblique thicket
minor summit
#

you are aware that the way you specify plugin dependencies is different when using paper-plugin.yml than if you're using plugin.yml

#

yes?

scenic vapor
minor summit
#

huh

oblique thicket
minor summit
#

read up on what the dependency declaration format is on paper-plugin.yml and add the PlaceholderAPI dependency accordingly

oblique thicket
#

Ok thanks

#

I see, I did that with Papi but then CommandAPI wouldnt work

scenic vapor
halcyon wadi
#

is there a backport for 1.21.11

minor summit
#

of what? also "backport" to the latest available version doesn't make much sense so I guess the answer is no

pulsar ferry
#

I guess we shall also never know backport of what lol

halcyon wadi
#

Help

#

how do I update my servers world to 1.21.11 from 1.21.10

#

I don’t want it to reset

halcyon wadi
#

We have 1.21.10 features

#

They want the spear and cute mobs

pulsar ferry
#

You want 1.21.11 features but allowing 1.19 to join?

plain lagoon
halcyon wadi
#

but the world is already loaded

#

i need to update the world for new features

plain lagoon
#

yeah, delete your old server jar, and swap it with a new server jar, dont delete or move world or plugin folders

#

make a backup of /world, /world_nether, /world_the_end if you are not sure or scared that it will get deleted

#

but if you just swap out the server jars, it shouldnt delete or wipe anything

proud pebble
# halcyon wadi i need to update the world for new features

swapping the server jar from 1.21.10 to 1.21.11 should automatically update the world, ofcourse make a backup of the world before you do this just to be on the safe side, then you will have to update your plugins ofcourse more specifically viaversion since that doesnt tend to just work on newer versions without an update

shell moon
#

When using WrapperPlayServerDestroyEntities (PacketEvents) how to "restore" the entity? (its a player, or maybe another entity)

#

any easy way to do it? (Maybe adding luck potion to force the server to send the player packet) or better yet, using PacketEvents?

#

...

dense nova
#

what?

#

oh i cant send that here?

#

mb ill delete

shell moon
#

idk if telling people to check requests is allowed, i guess it is but hasnt seen people doing it

#

however, making it free and paid

#

lol

dense nova
#

yea idk where to put it

shell moon
#

if you pay, paid

dense nova
#

bc its a longterm project

shell moon
#

if yoou dont plan to pay free

dense nova
#

i can in future

shell moon
#

then remove it from paid channel

dense nova
#

share shares

shell moon
#

if you dont plan to pay

#

otherwise is lying

dense nova
#

tysm

#

removed

#

:)))

shell moon
torn heart
shell moon
#

Have no idea about PacketEvents

#

in PRotocolLib i usually send update packet

#

but i dont think there is one in PAcketEvents

torn heart
#

all the packets are the same

#

they're a light API on top of Minecraft's network code

#

just look at what protocollib does

shell moon
# torn heart just look at what protocollib does
    public void updateEntity(Entity entity, List<Player> observers) {
        if (entity != null && entity.isValid()) {
            Collection<?> trackedPlayers = this.getTrackedPlayers(entity);
            List<Object> nmsPlayers = this.unwrapBukkit(observers);
            List<Object> removingEntries = MinecraftVersion.CAVES_CLIFFS_1.atOrAbove() ? this.getPlayerConnections(nmsPlayers) : nmsPlayers;
            trackedPlayers.removeAll(removingEntries);
            Object trackerEntry = this.getEntityTrackerEntry(entity.getWorld(), entity.getEntityId());
            ((MethodAccessor)this.scanPlayersMethods.computeIfAbsent(trackerEntry.getClass(), this::findScanPlayers)).invoke(trackerEntry, new Object[]{nmsPlayers});
        }
    }
minor summit
#

why don't you just use the entity visibility API?

#

Player#hideEntity/showEntity

#

and Entity#setInvisibleByDefault or whatever that's called

mighty badge
#

hey is it possible to save keybinds using packetevents in a plugin?

#

or do I need a custom mod for it that works along with plugin

sterile hinge
#

What are you trying to do

mighty badge
#

I managed to code the first 2 abilities

#

now, I am trying to archieve packet based gui

#
 public void openCellSelectionGUI(@NotNull Player player) {
        // Check if player already has a locked cell
        plugin.getDatabaseManager().loadPlayerData(player.getUniqueId())
                .thenAccept(data -> {
                    if (data != null && data.cellLocked()) {
                        player.sendMessage(Component.text("You have already selected a cell!", NamedTextColor.RED));
                        return;
                    }

                    Bukkit.getScheduler().runTask(plugin, () -> {
                        // Create cell selection GUI
                        openGUIs.put(player.getUniqueId(), GUIType.CELL_SELECTION);

                        // Send open window packet
                        WrapperPlayServerOpenWindow openPacket = new WrapperPlayServerOpenWindow(
                                CELL_SELECTION_WINDOW_ID,
                                WrapperPlayServerOpenWindow.BuiltInInventoryType.GENERIC_9X3,
                                Component.text("Select Your Cell", NamedTextColor.GOLD, TextDecoration.BOLD)
                        );
                        PacketEvents.getAPI().getPlayerManager().sendPacket(player, openPacket);

                        // Populate GUI with cells
                        populateCellSelectionGUI(player);
                    });
                });
    }

FIXED!!

grave sky
#

why not use the bukkit inventory api?

mighty badge
#

Cannot resolve symbol 'BuiltInInventoryType' >.<

mighty badge
#

plus secure

#

no abuse using gui and etc

#

i could use larkyy 's menu api

#

but it is written in Kt coroutines

#

it might break stuff

grave sky
#

tbh packet based inventories wont give you any real benefit here its mostly just extra work and you end up handling a lot more stuff for no real gain if you stick to the bukkit api and follow proper measures like validating clicks and cancelling unsafe actions you can prevent dupes and stuff

mighty badge
#

using bukkit api wont help

dense drift
#

You can not listen to keyboard events with vanilla MC, only the clicks, movement.

sterile hinge
#

The question still is what you want to achieve with it

#

Some kind of inputs can be detected

mighty badge
#

cel = 2 ablities = 2 keybinds

mighty badge
#

anyone knows how to make mod

#

.<

torn heart
torn heart
#

you can ensure correctness of state with Bukkit API just fine

#

issues come from plugin developers not understanding how to do that, not from Bukkit

minor summit
#

plus packets aren't "more secure", whatever that means, or "abuse using gui" uh..

scenic vapor
worn jasper
#

The one thing I hate about some of ur stuff is it all being packet based

scenic vapor
#

which eliminates the data loss or potential dupe glitches

worn jasper
worn jasper
scenic vapor
#

well I've just explained why it's useful

#

what other stuff you consider not useful to be done thru packets?

#

my blocks? Entities? They do need to be packet based

#

Holograms too

#

because of view requirements and per player contexts

minor summit
#

Player#show/hideEntity and Entity#setVisibleByDefault in shambles

minor summit
#

display entities don't really tick lol

scenic vapor
#

even tho it's non tickable entity, it still iterates

minor summit
#

and it skips right through

#

how many entities are we talking about here?

#

and how many are being shown to any one player?

scenic vapor
#

can be thousands, but ye I get ur point

#

tho my system ain't just Abt displays

minor summit
#

the client will shit the bed before it's a problem for the server

scenic vapor
#

and my systems are in Coroutine contexts, i would need to switch to bukkit ctx just to spawn an entity

minor summit
#

and what's the problem with that

scenic vapor
#

performance

minor summit
#

lol

scenic vapor
#

spawning and destroying entities does take performance

minor summit
#

a player merely existing is far faaaaar more intensive than spawning and destroying entities

river solstice
#

true that, player moving their mouse probably is N times performance heavier than iterating and skipping over 100s, if not more, entities

worn jasper
#

yeah

#

I mean, KMenu is a good place to use packets

#

specially maybe in Runway....

#

👀

wanton venture
#

Hi, I'm making a plugin where users can earn achievements, but I'm wondering if I should set all the achievements in the code.

#

Or they could create a configuration so they can create their own achievements. I thought maybe achievements based on placeholders, for example, using a placeholder to get kills and the value it should have.

#

But the only way I can think of to know when the achievement is reached is by validating the placeholder = value, but I don't think that's the best idea.

#

Does anyone have a suggestion?

sterile hinge
#

Why not use the advancement system?

wanton venture
#

Can you explain a little bit about what it's like?

sterile hinge
#

well that already provides ways to detect specific kinds of changes

#

I don't even know if I ever used it directly, but it sounds like it already covers much of what you're trying to do

wanton venture
#
Bukkit.getScheduler().runTaskAsynchronously(plugin, () -> {
                        String sql = "MERGE INTO users (uuid, username, status) KEY(uuid) VALUES (?, ?, ?)";

                        try (PreparedStatement pstmt = plugin.getDatabase().prepareStatement(sql)) {
                            pstmt.setString(1, player.getUniqueId().toString());
                            pstmt.setString(2, player.getName());
                            pstmt.setString(3, finalStatus);
                            pstmt.executeUpdate();

                            player.sendMessage(MessagesUtils.getColoredMessage(LumiProfile.prefix + "&a¡Estado actualizado!"));
                        } catch (SQLException e) {
                            e.printStackTrace();
                        }
                    });```
#
        try (PreparedStatement pstmt = plugin.getDatabase().prepareStatement(sql)) {
            pstmt.setString(1, player.getUniqueId().toString());
            ResultSet rs = pstmt.executeQuery();
            if (rs.next()) {
                playerStatus = rs.getString("status");
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }```
#

This is how I save and retrieve a value from the h2 database. My question is whether it's optimal to read the database every time I need to retrieve something.

#

They told me to save it in a HashMap at startup and get the information from it, but would that be more efficient?

lyric sun
lyric sun
wanton venture
scenic vapor
#

^ it also really depends on how you would be handling the cache, how heavy ur queries are, etc. In many cases cache is not really needed and writing stuff directly to DB is just enough.
Essentially this is also what backends usually do. When a data is changed, server sends a req to backend and backend forwards this data to both DB and Redis, so the state is up to date in both sqls.

#

it may be useful to cache stuff for like placeholders and some visual stuff, tho for actual changes, its absolutely alright to send the update queries directly to the DB without having a save pool that saves data from ur cache

river solstice
#

there is no one key fits all, as larky said, it really depends on the situation
it depends how often you read and write (does it scale with player count, etc), how beefy is your system, do you care how much network bandwidth you use

most of the time it is completely fine to have no cache layer mainly because the databases can easily handle 100s if not 1000s of queries (varies between the driver, h2/sqlite/mysql/etc) per second

obviously you could just load in the data into some sort of data structure when the server starts which would probably save you some queries, but also be vary about memory usage, you wouldnt want to load millions of rows into memory

#

as for saving, just run an async save query, I wouldn't bother saving them into a data structure and then offloading it into the database on server stop or periodically

scenic vapor
#

so doing writes everytime anything changes is absolutely fine

#

but its def great to cache some stuff - for purposes like placeholders -> as they need to be sync - retrieved instantly basically

#

and also leaderboards

#

leaderboards are quite heavy operation, not THAT heavy, but it is not worth it having the leaderboard always updated

#

so you can do like 5 minute pool

river solstice
#

yep

scenic vapor
#

Also a pretty great suggestion was given. Use the virtual threads, they are super useful for IO

#

Caffeine is also cool, tho I usually just use a HashMap and clear the player's data on PlayerQuit

#

^ Caffeine is cool in cases you would be retrieving offline player's data - using Caffeine u apply TTL to it, so it clear itself after some time, so you dont have to handle this urself.

#

again, great just for visual purposes

#

not actual logics like comparing currency balance, etc.

wanton venture
#

Okay, I understand, thank you very much for the help/suggestions.

river solstice
scenic vapor
#

ye tho its not worth it writing your own solution for something that already exists and works pretty well without any issues or needs for more features

river solstice
#

why import such a big library when you most likely need a single class, maybe two

#

I literally have something similar to this and it does the job quite well

#

the entire caffeine library is like a 1mb

#

im not saying its a lot, but it becomes a dependency that you have to update in case of vulnerabilities and what not

scenic vapor
#

yeh thats tru

minor summit
minor summit
#

like, what do you think mysql does behind the scenes?

#

it has an accountant in there writing everything in a text file

river solstice
#

yes but that accountant is very smart

coral pecan
#

Hello guys! I have a question — or more like a problem.
I’m building a Minecraft Bedrock server with a Middle Ages theme. I need to build a lot of things like farms, houses, paths, and other structures.

Right now I’m building alone. I do all the commands and everything by myself, but I need the server to be ready by the next vacation so people can join and enjoy it.

Is there anyone here who can help me build things for my Minecraft server?
If you can help, or if you know someone who can, please add me and message me or reply to this comment. Thanks!

coral pecan
#

🙏

wanton venture
#

I'm making a custom profile plugin; for now, it only puts the name in the inventory and centers it depending on the characters in the name, and displays Stats, Money, Armor, and the custom status.

#

You can also define the profile theme.

#

I want to create an achievement system where, as an admin, you can set achievements. Does anyone have any ideas on the best way to do this, and a couple of other suggestions?

scenic vapor
#

Oh niiice, I used to work on something like this

#

its quite fun

worn jasper
#

looks hella cool

worn jasper
scenic vapor
#

glad to see someone else using glyphs in the Menus like this

wanton venture
wanton venture
#

To enable them to create achievements in a file and have the plugin do the rest

worn jasper
#

I mean yeah

#

that works

#

so what's the issue

wanton venture
#

And some ideas, things to add, etc.

wanton venture
worn jasper
#

reading an yaml file?

wanton venture
#

The whole achievement system is an idea I have, but I don't know how to implement it.

worn jasper
#

I'd just create different achievement types, then read an yaml, convert the sections to those classes, and then just keep track of things

#

it also highly depends on what exactly the achievements are, if they are fully reliant on MC statistics themselves, might be pretty easy to implement, if it's more complex stuff, then you'd have to track each thing yourself.

scenic vapor
wanton venture
#

Let's say I have the plugin read the settings, how would I be checking that these are being met?

scenic vapor
#

customers usually got issues with understanding how this sht works

wanton venture
#

And I'm still stuck

scenic vapor
#

whats the issue?

wanton venture
#

Basically, the range prefix should go below the name.

scenic vapor
#

ah that it is 1 pixel off?

wanton venture
#

My current configuration is as follows: in the config.yml file, you assign the ranges with a numerical value that is the prefix dimension. When you open the menu, it retrieves the player's range by searching in the configuration.

#

You center the prefix depending on the image size

scenic vapor
#

you have got this automatic, right?

#

and ur using glyph widths to calculate the placements

wanton venture
#

And you must have the Unicode of the font image as the prefix of the range in lp

#

The problem is that I couldn't find a way to move the prefix image down.

#

I tried using a font with a different ascent, but it doesn't download the bitmaps, only the letters.

#

The only way I saw was to change the bitmap ascender of the prefix, but that's not a good idea since you'd need two images of the same thing: one normal for general use and another for the menu.

wanton venture
scenic vapor
#

Have in mind that while having the widths, you need to add +1

wanton venture
scenic vapor
#

bcs minecraft adds +1 pixel space automatically

#

after each glyph

wanton venture
#

But my main problem is being able to move the glyph down without modifying the ascent or creating another glyph

#

I saw that you can achieve something like NegativeSpaceFont, which is for moving text backward, but I don't know how to make it go down.

scenic vapor
#

you cannot move a glyph up and down

#

you need to make another glyph for this

wanton venture
#

But it only worked in the chat

scenic vapor
#

You can only achieve that using shaders

wanton venture
#

/tellraw @a ["Texto Normal ", {"text": "\uF82F[prefix]", "color": "gold"}]

#

If I used it in chat, it seemed to go down, but it disappeared from the inventory.

scenic vapor
#

oh ur using shaders for it?

wanton venture
#

I was thinking maybe the admin could use their RP to retrieve the rank glyphs and make a copy with a different ascent, but I don't know, I don't really like that idea.

wanton venture
scenic vapor
#

so how do you move it up and down

wanton venture
#

Wait for me

wanton venture
#

I had done something like this before, but I don't remember.

scenic vapor
#

huh, hows that capable of moving it up & down

#

this is just one huge negative pixel that moves it to left

wanton venture
#

But anyway, since you have more experience, do you have any idea?

scenic vapor
#

not really, Ive never seen anyone being able to achieve moving of glyphs up/down

#

only using shaders

#

but am not a huge fan of shaders

wanton venture
#

First, to find out which glyphs the ranks have, by making a copy I can figure out which ascendant to apply; it's not difficult.

scenic vapor
#

tho its gonna be done in Kotlin

#

so yeeeh not too useful for u

wanton venture
#

I work at Maven

#

But I'll have to leave that for later.

#

I'll focus on achievements or new features if I come up with any.

river solstice
#

you work AT Maven?

calm warren
#

Is there an API to open the menu?

scenic vapor
#

huh

split lynx
#

if that's what you asked

wanton venture
#

The theme buttons are on the base texture; I only have air-type items for the actions.

#

The detail is in the on and off switches, as these change and are located between 3 slots.

#

I don't know if just creating three items and having them change to the other option when clicked is enough.

#

Or reduce the design to just 1 item

modern siren
#

You could have those labels as another texture and then position them using spacing characters, you would have the same issue with clicking but changing the texture is as simple as changing the menus title

rotund raft
#

does anyone know of a way i can make portals that require the player to have a permission to enter?

river solstice
#

yeah I do

floral root
#

Best API for YAML?

#

java

rotund raft
river solstice
#

a simple google search would tell you

#

listen to PlayerPortalEvent, check for appropriate permissions, cancel if needed

vague marsh
#

Looking for some free developers to work with me on a project

robust crow
vague marsh
split lynx
#

Free developers 😔

dusk crypt
#

Hello, I'm getting this error when building Failed to connect to repo.helpch.at port 443 after 21248 ms: Could not connect to server Is there any workaround on this? Might be due to connection timeout

tame charm
#

Hi all,
Hoping someone has experience with intelliJ docker plugin.
I'm not too experienced with docker, however trying to learn a bit more.
I have a docker instance running on my server. On my local machine I have a project I'm working on in intelliJ.

In that project, I have multiple microservices that each run in there own container, I then have a docker-compose file that builds them all.

Previously I had my intelliJ run configuration set to run the docker-compose file, and I'm not sure how I had it configured, however it would upload my images to the remote server, and start them up for me.

After taking a months break from the project, I've come back and it told me it could not find the docker compose cmd. I tried reconnecting it to the server, and no luck. I found some things online saying I needed to install the docker CLI, so I can now run docker & docker compose on my local machine, however now when I use my run configuration, my project takes like 5-10 minutes to upload & start services running (previously it took less than a minute).

I found online some things saying it may be as it's running locally as well as remote, however I'm not really fully understanding it, hoping someone can help me clarify. Happy to share run configs if necessary to help!

Any hlep is much appreciated

icy shadow
#

there should be some option called "build on remote" or similar somewhere

tame charm
#

That's what I was thinking, but I can't seem to find it anywhere

#

Also strange that it just stopped working after no changes, just not using it for a month... Gotta love development haha

icy shadow
#

can you send a screenshot of your intellij docker config setup thing?

#

not sure the actual term lmao

tame charm
#

Thats for the run config

icy shadow
#

imgur is blocked in the uk 🥲 would you mind using another service lmao

#

my vpn is not working rn

tame charm
#

Ah yeah two secs

icy shadow
#

ty yea working

#

uh what happens if you click the ... here

tame charm
#

Just brings me to the docker config

icy shadow
#

ok ok give me a sec

icy shadow
#

@tame charm im assuming you have fixed this now right?

tame charm
#

Nah I've been playing around with it for ages and my whole intelliJ started tweaking out lmao

#

But no I still can't get rid of that error

#

If I change it to use TCP socket instead of SSH it seems to remove the error and it says conection successful

icy shadow
#

is your server supposed to have a local ip?

#

hmm

tame charm
#

yeah it's just a local server

icy shadow
#

ah i see

tame charm
#

not localhost tho its like intellij is tryna connect to a docker sever on my own machine

icy shadow
#

yeah im not sure i just tested docker remote on my vps and it worked fine

#

right

tame charm
#

Like that failed to connect to docker API thing makes it look like it's tryna connect to my dev machine doesnt it?

icy shadow
#

isnt that the idea?

tame charm
#

Like my server is 192.168.0.111, that error is tryna connect to localhost isn't it?

icy shadow
#

oh

#

yeah thats a good point

#

sorry im a bit sleepy

tame charm
#

all good, I might just fully remove all my configs and re add and see how I go

icy shadow
#

yeah try making the ssh config again

tame charm
#

It's just so weird, was literally working fine like a month ago, I haven't touched anything and now its cooked

tame charm
#

ok idk why but changing it from password auth to keypair fixed it 🙄

icy shadow
#

awesome

shell moon
shell moon
#

If i understood correctly, expansions (inside my own plugin) shoul duse persist true
and expansions i upload to ecloud should use persist false
am i right? (correct me if im wrong, ping)

dense drift
#

Yes.

shell moon
fierce latch
hushed badge
#

@robust crow

fierce latch
fierce latch
#

@robust crow I'm sending you a .jar file xD

civic tapir
#

Hi, is there a better way to return colors and new lines? Does this support the adventure Component api?

    @Override
    public @Nullable String onRequest(OfflinePlayer player, @NotNull String params) {
        if (!leaderboardService.isAvailable()) {
            return "unavailable";
        }
        return "§aTest\n§cNew Line";
    }
``` (it's a persistent placeholder expansion)
shell moon
#

afaik it doesnt support adventure, why you need that?

robust crow
waxen parcel
#

Hey! I genuinely want to learn how to do MC development and I don't have an account yet. Can someone please guide me and/or tell me what the steps are?

river solstice
#

there are no concrete "steps"

waxen parcel
#

I would really appreciate any help.

river solstice
#

google, youtube

torn heart
#

google a java tutorial also

river solstice
torn heart
#

it's good to get a taste of your goal a lil at first

river solstice
#

how are you gonna do plugin dev without knowing java

torn heart
#

watching tutorials for people who don't know java

#

lots of those online for plugin dev

#

it's just to motivate you

#

learning java is rlly hard for new people to programming so it's important to have motivation, which is very accessible with Minecraft plugin dev tutorials

icy shadow
#

man someone shouldreally make a good java tutorial

worn jasper
#

I also nominate @pulsar ferry (just so he is forced to touch java instead of kotlin)

hushed badge
#

still waiting for episode 1

#

5 years later

icy shadow
#

hehehe

minor summit
#

😔

icy shadow
#

sorry

minor summit
#

☹️

waxen parcel
shell moon
boreal inlet
shell moon
#

idk if it would be better to split _ 2 and get the first part instead of using pattern to match it tbh (i really dont know, just saying)

quick birch
#

How i can get verified fcr upload extension?

boreal inlet
crisp star
#

Properly

robust crow
#

have another go when you get a moment

boreal inlet
robust crow
fierce latch
fierce latch
# robust crow I've made a change to hopefully display a more useful error to see whats going o...

Do you trust the client to know if it's a .jar file?

  1. It appears that the browser sends the basic binary type without assigning the correct MIME type.
  2. First of all, I have tested it on several browsers. -> Same output (Chrome, Brave, Opera, Firefox and Edge)
  3. I also checked if there was a problem with the assignments of my .jar files as .jar files. I used Jarfix in case that was my problem -> It didn't solve it.
  4. When i use "inputHTML.files[0].type" only get "" type.
  5. Finally follow this StackOverflow https://stackoverflow.com/questions/51724649/mime-type-of-file-returning-empty-in-javascript-on-some-machines (The best StackOverflow)

Finish fix

robust crow
#

Yeah there's checks at the client, server and storage container

boreal inlet
halcyon wadi
#

CAUTION:
⚠️ Beware of and @strong gulch ⁨ReplixStudio⁩. They delete negative reviews. I received a poorly made product, wanted to share my feedback, and ended up getting banned with my review deleted.⁩

scenic vapor
#

uve ordered something from someone who got AI pfp? pepegacry

minor summit
#

xdd

halcyon wadi
#

xS

#

Does anyone know of a free auction house plugin that is for bidding on items with categories? sort of like the hypixel skyblock one

spiral prairie
#

Brutha making your question bold won't make it be answered any faster lol

scenic vapor
proud pebble
worn jasper
#

?paste

neat pierBOT
#
FAQ Answer:

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

worn jasper
indigo cloak
#

Hi, I have a plugin that connects to Discord. The issue is that I need to save information coming from Discord to the plugin's local database on the server.

#

I recently established a connection using a MongoDB database; the issue is that I need to transfer the information from the bot's database back to the server's local database.

#

Would I have to use WebSockets for this? Or is there an alternative?

merry knoll
merry knoll
indigo cloak
scenic vapor
#

confusion

#

why not just one?

indigo cloak
#

And the bot database is where I store information about the bot itself and the Discord server.

#

How do I store my bot's information in each server's database? XD

scenic vapor
#

well use MQ then imo

#

you have shared 0 info abt ur system and what ur trying to achieve...

#

different flow requires different stack

indigo cloak
indigo cloak
#

The command generates a code that is uploaded to the bot's database. On Discord, you can use a command with this code to obtain the Minecraft and Discord names. Now, this information needs to be returned to the server.

scenic vapor
#

well if you want these as separate systems, use Redis then and store codes with TTL

indigo cloak
#

But that would be a small part of what it would have

scenic vapor
#

redis also has MQ

#

so that would be all u need basically

indigo cloak
#

Something else would be direct messages on both platforms.

indigo cloak
scenic vapor
#

Redis is for cache

#

MQ is for message queue

indigo cloak
#

It's good for these functions, maybe so, but for example, if I need to get something from the Discord server, I could do it the same way, right?

indigo cloak
scenic vapor
#

why would u store data in 2 different DBs then when u wanna have discord data on MC and vise versa?

#

you would need to create a service for retrieving the data otherwise

indigo cloak
scenic vapor
#

redis is not for storing data

#

its for caching

indigo cloak
#

Although I think MQ might be better suited for a messaging system

scenic vapor
#

redis is for caching and messages

#

it has both

scenic vapor
indigo cloak
#

Basically as a messenger for both

scenic vapor
#

you want to have replies?

indigo cloak
indigo cloak
scenic vapor
#

welp then u gonna want to use RPC

#

so u can use RabbitMQ

#

Redis does not have message replies

#

and making ur own RPC using redis aint worth it

indigo cloak
#

Then it would fit your MQ experience better.

merry knoll
#

i mean rabbit also makes you implement your own rpc

#

well kinda

scenic vapor
#

well yes and no, I mean its already kind of designed like RPC

#

def better than using redis pub/sub

merry knoll
#

ye if you only need messaging, no point in redis

scenic vapor
#

he quite literally wants to have endpoints on both MC and Discord

merry knoll
#

but their issue is probably solved easier with a shared db or a backend

scenic vapor
#

yea

#

thats what I was saying too sadge

indigo cloak
merry knoll
#

no?

#

why would you host the bot in the plugin anyway

scenic vapor
#

am saying what most public systems do

merry knoll
#

you will already have a mq between em, if you will only have one server then that works fine

scenic vapor
#

I was saying that bcs I was not sure if you are planning doing this public or not

#

bcs u have mentioned h2

merry knoll
#

but for anything a bit more complex, you do need to handle state properly

scenic vapor
#

and other dbs

indigo cloak
#

I got a little lost, but I'll have to investigate further how Redis and MQ work (which I didn't know about).

scenic vapor
#

whats the reason

merry knoll
#

bossman, you probably

#

just want to share mongo between your plugin(s) + your discord bot

indigo cloak
#

I also appreciate that they took the time to respond and try to help.

merry knoll
#

and just query it for shared data

scenic vapor
#

+1

merry knoll
#

from the sound of your setup and questions that is

scenic vapor
#

ur overcomplicating it

#

while not understanding the stack

merry knoll
#

drop h2 as well since it doesnt make sense to store in 2 different places at the same time

#

use one shared database for permanent state and since your plugin is on the same instance as your discord, just do method calls for communication as needed

indigo cloak
merry knoll
#

if multiple servers the whole multiple discord instances (aka 1 per plugin) stop making sense

#

in that case, you probably want to do 1 mongo, 1 discord bot instance and n server instances

#

you can probably avoid messaging if you dont need to handle events between instances (command on bot -> stuff on server, or event on server -> stuff on discord)

#

if you need to notify either then you need a messaging system

#

either redis or rabbitmq in your case

indigo cloak
#

I was going to add a cross-platform messaging system, so MQ lends itself well to that.

merry knoll
#

if you also need a shared cache

#

then redis makes more sense

#

as it supports memory cache + basic pub sub

indigo cloak
#

But for example, if you send a Discord message to the server and it's turned off, it gets lost.

#

And I think that doesn't happen with MQ since he waits for it to be received

#

Based on my research

merry knoll
#

ye, rabbit mq has queues that can guarantee that a message is received

indigo cloak
#

How convenient would it be to use MQ only for this messaging system?

#

And the rest that adapts with Redis

merry knoll
#

you do not need rpc for that either, you fire and forget and depending on how the queue is configured (this is what receives and sends the message to your receiving server) it will be received there when it goes live

indigo cloak
merry knoll
#

yes

#

mq != rabbit btw

merry knoll
#

rabbit is just one of em

#

mq's are made for this so, quite convenient

#

redis one is barebones, but it also does the job so you dont need to double host

#

main part you miss will be the queue messages to deliver if receiver is offline thing

#

rest is semi there

indigo cloak
#

Okay, I'll take it upon myself to look into MQ more.

#

But I do think it's for the best.

merry knoll
#

rabbit has java specific tutorials

#

just check those out, it also has RPC implementation if you need that

indigo cloak
graceful hedge
#

There's also the option of just having a simple server w some sockets (not saying this is what you want, but more so just an alternative). I think @torpid raft got some library for that in case you'd be interested ^^

spark obsidian
ember steppe
#

HI.

#

HI. I am IT project leader and developer. I am looking for Collaborator in Europe, North and South America who collaborate with me for work.
I will share percentages of incomes to you and you can get good extra budget. This isn't project.
Age: 23-40 years old.
You need to have pc. If we can cooperate, I would like to discuss with them.

ember steppe
#

Nice to meet you.

sterile hinge
#

I don't have a PC, is an iPad enough?

ember steppe
#

This is good choice for you and me

ember steppe
#

HI. I am IT project leader and developer. I am looking for Collaborator in Europe, North and South America who collaborate with me for work.
I will share percentages of incomes to you and you can get good extra budget. This isn't project.
Age: 23-40 years old.
You need to have pc. If we can cooperate, I would like to discuss with them.

minor summit
#

oh, no Asia?

icy shadow
#

Lovely Business

uneven needle
uneven needle
upper jasper
#

enlighten me project manager!

ember steppe
#

Sorry where are you from?

icy shadow
#

lovely buisiness

upper jasper
raw mural
#

Hey, I hope this is the right channel for this - I'm trying to add the dependency me.clip:placeholderapi-paper:2.12.1 in my build.gradle.kts but when I try to build, it can't find it in the repository repo.extendedclip.com/releases/ provided in the PAPI dev docs. Is there a separate repo for this dependency?

robust crow
#

It's probably on our helpchat repo

raw mural
#

thanks!

robust crow
#

Yeah it's the more updated one

raw mural
#

hmmm, doesn't seem like it. I'm probably missing something, but both repos have placeholderapi, but not the paper version (placeholderapi-paper). The docs do say that dependency is optional, so shall I just ignore it?

robust crow
#

Erh I'm on mobile so can't check for certain, give it a go and see for now

#

I feel like that wiki page is wrong but we'll see

#

I think it was originally going to be separate for paper but believe it's just one jar again

raw mural
#

yeah, it works just fine without it - as long as the dependency is added in the paper-plugin.yml and set to load: BEFORE

robust crow
#

Yeah checked the wiki, seems to snuck past our proof read. @somber gale when you get a sec pls drop the optional part of that bit

dusky harness
#

oh

#

talking about the buildscript

#

didn't even realize PAPI had that but that's neat lol

celest hazel
#

Hi 👋 trying to add support here for my Hytale mod since this is now ported but it seems I'm running into issues.

I'm testing as per https://wiki.placeholderapi.com/developers/using-placeholderapi/#setting-placeholders-in-your-plugin but looks like
⁨```java
player.sendMessage(PlaceholderAPI.setPlaceholders(Message.raw("Welcome %player_name%!"), player))

should be
⁨```
player.sendMessage(PlaceholderAPI.setPlaceholders(player.getPlayerRef(), Message.raw("Welcome %player_name%!")))
```⁩
and it looks like the ⁨`%player_name%`⁩ isn't being replaced so I'm not sure the mod is working correctly or if hytale doesn't use ⁨`%player_name%`⁩
minor summit
#

well, did you install the player expansion?

robust crow
robust crow
#

(wiki should be fixed now)

celest hazel
# robust crow https://ecloud.placeholderapi.com/expansions/player-hytale/, you can download in...

I am using the maven version as I'm doing this all in dev, adding that does allow %player_name% to indeed work. However my own custom expansion for some reason isn't working:
[PlaceholderAPI|P] Successfully registered internal expansion: LevelingCore [0.9.4]
I see it registered it but using it like so:
player.sendMessage(PlaceholderAPI.setPlaceholders(player.getPlayerRef(), Message.raw("Welcome %player_name%! You are level %levelingcore_level%")));⁩ is not working.

Am I doing something incorrect here? https://github.com/AzureDoom/LevelingCore/blob/main/src/main/java/com/azuredoom/levelingcore/compat/placeholderapi/LevelingCoreExpansion.java

I am registering it here per the docs:
https://github.com/AzureDoom/LevelingCore/blob/main/src/main/java/com/azuredoom/levelingcore/LevelingCore.java#L113-L115 (Uncommented locally of course)

wheat carbon
#

@celest hazel ur identifier is set to "LevelingCore" not "levelingcore"

#

I think it's case sensitive

#

also params will just be equal to "level"

#

or "xp"

#

get rid of the levelingcore_

#

can join us in vc if that doesn't work

#

btw we were actually just about to make an expansion for ur plugin aha

celest hazel
#

Testing now!

#

Oh nice! haha glad I was a head of the game haha

#

It worked!

wheat carbon
#

awesome

celest hazel
#

Where you guys gonna do just level and xp or more entries? Gonna expand it like it here likely to cover my stats as well here locally.

wheat carbon
#

we hadn't looked at it yet tbh, your plugin was just on the list

robust crow
#

It's a big list...

celest hazel
#

I feel that haha

robust crow
#

But happy to have you aboard!

gleaming nacelle
#

Hi guys, I've got some dependency issues which I'm not sure how to handle. I've got my libraries shaded and relocated, but that doesn't include their transitive dependencies. One of the libraries my plugin uses depends on some other common libraries such as gson or protobuf, and depending on the server version or other plugins it conflicts with other versions of the same library. Should I relocate those transitive dependencies too? I'm not sure if that would be a nad practice, because I would need to relocate each common library such as gson, jackson or org.json (my dependencies use each one of those libraries) and perhaps many I'll be missing. Is there a way to relocate my dependency and its own dependencies?

torn heart
#

but unless you want to load libraries dynamically at runtime, then packaging your dependencies in the same jar file is common. the extra 50MB of RAM it costs will almost certainly be much less than the atrocious memory usage decisions minecraft plugins tend to cause in general due to bad decisions

dusky harness
pure crater
#

i often use https://jdec.app/ to view contents of JAR fast

JDec is a online Java decompiler that provides a fast way to decompile JAR files. Instant access to the files, no need to wait. Also supports downloading decompiled java code.

#

but yes, you can relocate them, but be careful

#

certain SQL drivers or libraries that use native JNI bindings will throw exceptions if they get relocated

gleaming nacelle
gleaming nacelle
gleaming nacelle
dusky harness
#

relocating should handle that for you

scenic vapor
#

server sw already is has gson

chrome totem
#

Hello. I have a problem. My placeholder isnt giving any value. It is registered as I can see in the console and in the /papi list but when I do /papi parse me %my_placeholder% it just shows the placeholder in the chat.

chrome totem
#

Here is my code

#

And here is how am I registering it in onEnable

robust crow
#

Identifier should be similar to the plugin name, then on placeholder request is where you check the second half of the placeholder

Eg, %myplugin_coins%

#

Myplugin is the identifier and coins is the actual thing we are checking for on placeholder request

#

Take a look at the wiki

chrome totem
robust crow
#

Correct

chrome totem
#

Thanks

unborn glade
#

Im struggling getting placeholderapi-paper; it doesnt download with the gradle example, and i dont see it in the releases repo, so i ended up using me.clip:placeholderapi-paper:2.11.8-DEV-228 with the https://repo.extendedclip.com/snapshots/ repo; even still i can't find any way to use components in this version

pulsar ferry
unborn glade
#

i see no noticable changes between the two either

broken elbow
#

You can still give https://repo.helpch.at/snapshots a try though. Also, they don't redirect. They are different repositories.

wheat carbon
#

@unborn glade it's in the main papi release

#

they're not separate modules

#

just me.clip:placeholderapi:2.12.2

#

will update the docs soon

unborn glade
#

i see

wheat carbon
#

also it's a diff class called PAPIComponents

silent talon
#
public void sendDeathMessage(Participant deadParticipant) {
    String deathMessage = deadParticipant.getDeathMessage();
    DeathCause deathCause = deadParticipant.getDeathCause();
    TagResolver.Builder resolver = TagResolver.builder()
            .resolver(TagResolver.resolver("player", getColoredNameResolver(deadParticipant)));
    if (deadParticipant.getLastAttacker() != null) resolver = resolver.resolver(TagResolver.resolver("killer", getColoredNameResolver(deadParticipant.getLastAttacker())));
    if (deathMessage.isEmpty() && deathCause != null) {
        broadcast(deadParticipant.getDeathCause().getMessage(), resolver.build());
    } else {
        broadcast(deathMessage, resolver.build());
    }
}

Implementation of getColoredNameResolver in a solo match:

public BiFunction<ArgumentQueue, Context, Tag> getColoredNameResolver(Participant participant) {
    return (ArgumentQueue args, Context context) -> {
        Player receiver = context.targetAsType(Player.class);
        Participant receiverParticipant = participant.getProfile().getMatch().getParticipant(receiver);
        return Tag.inserting(CC.returnMessage(receiver,
                (receiverParticipant == null ? MessagesLocale.MATCH_SPECTATOR_TEAM_NAME :
                        participant == receiverParticipant ? MessagesLocale.MATCH_OWN_TEAM_NAME :
                                MessagesLocale.MATCH_OPPONENT_TEAM_NAME).getString(),
                Placeholder.unparsed("name", participant.getName())));
    };
}

This code is supposed to set the color to green if it's themselves and red if it's an enemy.

  1. This feels like a really messy way of doing things, is there a better method?
  2. The final output:
    Winner: winner was killed by loser (both names are in red)
    Loser: loser was killed by loser (first name is in red, second is in green)
    What causes this unintended result?
scenic vapor
#

now thats a piece of a messy code

silent talon
#

the issue still persists though

#

I checked the logic myself, did a lot of debugging, and theoretically it should be impossible to have the same username twice in the same message

scenic vapor
#

am not saying ur approach is wrong, am just saying it looks messy. Not always it's worth doing everything inlined

silent talon
alpine oak
#

Hey, I’m looking for a developer who can help me configure a KB (knockback) on a Minecraft server. I’m willing to pay.

alpine oak
#

Ok, i'm sorry

wild eagle
#

I’m going to attempt to learn the skills on my own over the course of the next few months while Hytale develops but if I don’t meet my own deadline, I’d like to know a rough idea of a fair budget for things so I can make sure I have that, if that makes sense

jagged belfry
vestal phoenix
wheat carbon
#

whats ur ecloud account caleld

#

nvm

#

wait yes

#

sign up to ecloud

#

I can make u an author

vestal phoenix
#

I think I have with my GitHub which is OakLoaf

wheat carbon
vestal phoenix
#

perfect thank you!

vestal phoenix
wheat carbon
#

@robust crow yer shits still broke

vestal phoenix
wheat carbon
#

in the stackoverflow

#

go to the answer

scenic vapor
#

havent visited stackoverflow for quite a bit

hushed badge
vestal phoenix
neat pierBOT
vestal phoenix
#

is anyone aware of an alternative to imgur? it's blocked in the uk haha

#

although there isn't much more to see than what i noted

hushed badge
#

thats all u need

#

just copy mine

hushed badge
vestal phoenix
#

should i adjust the current 2 to replicate yours too?

hushed badge
#

yea i think the important one was the content type iirc

vestal phoenix
#

No luck unfortunately

#

it looks identical to yours now

hushed badge
#

did u refresh the page before trying to upload jar again

vestal phoenix
#

i take it back

#

refreshing did indeed resolve it

#

thank you so much for helping

hushed badge
#

np

robust crow
#

@vestal phoenix what version of windows are you on?

#

Being difficult to replicate

hushed badge
vestal phoenix
#

I'm also on 11

river solstice
#

I'm not on 11

vestal phoenix
#

How does one get an expansion verified? :o

wheat carbon
fathom terrace
#

i can't add placeholderapi to gradle

wheat carbon
#

@fathom terrace u need the helpchat repository

#
repositories {
    maven {
        url = 'https://repo.extendedclip.com/releases/'
    }
}
fathom terrace
#

If I put the repository in the same .kts file where I put compileOnly(placeholderapi....), the dependency will download, but I would like to put it in my root .kts file and not in my paper module; this only causes problems with the papi, not with the other plugins

fathom terrace
#

@wheat carbon do you know why?

wheat carbon
#

uh

#

it goes in ur build.gradle.kts

#

not ur settings.gradle.kts

#

usually

#

like most of that shit goes into ur build.gradle.kts

#

the root one

#

settings.gradle just has the project name and subprojects

#

could be wrong there's like a million different ways to do subproejct setups with gradle know so who knows

fathom terrace
wheat carbon
#

in the build.gradle.kts u pasted for ur subproject, ur applying the paperweight plugin and plugin-yml plugin which probably apply the repos that you already use

#

so they're not coming from ur settings.gradle they're coming from those plugins I imagine

fathom terrace
wheat carbon
#

well it depends if the plugin is hosted in any of the repos provided by those gradle plugins

#

in ur settings.gradle

fathom terrace
#

k

wheat carbon
#

then try use this dependency:
me.piggypiglet:TimeAPI:1.9

#

if it works then ye there's an issue

#

if it doesn't, then it's exactly what I said

fathom terrace
#

thanks

#

I had copied the design from here xd

wheat carbon
#

ah right

fathom terrace
#

paper doesn't include this

#

idk how tab compiles then

wheat carbon
#

so that uses the build-logic thing I think

#

idk I never used that

#

there's a few diff ways to do subprojects in gradle like I said before

#

maybe just look up a tutorial on gradle build-logic

fathom terrace
#

kk thanks

#

I think I'll put the repositories block in each module and that's it

wheat carbon
#

old project

#

can try that setup

fathom terrace
wheat carbon
#

?

#

that is a multi module project

fathom terrace
#

current placeholderapi project is not a multi project anymore

wheat carbon
#

that was going to be the new papi but it was never finished

fathom terrace
#

oh

river solstice
#

@wheat carbon when placeholderapi4

wheat carbon
#

yes

scenic vapor
#

LOL

river solstice
#

buh

#

dead chat

icy shadow
#

true

#

my bad

wheat carbon
#

help why is my hello workd not work

public class mAin {
public static volatile String variable = "hello world";

//todo: implement hello world
}```
river solstice
#

remove the todo

#

and it will work

wheat carbon
graceful hedge
#

I think you need to use skript and not spring

river solstice
icy shadow
#

we use bun install now

graceful hedge
icy shadow
minor summit
#

we haven't even gone on a first date yet

worn jasper
#

First dates are overrated

torn heart
#

FALSE

#

:3

minor summit
#

bro just doesn't go out on dates

wheat carbon
#

my date ran away when she realised my hello world didnt work

#

g1gc sent her to purgatory

lunar sapphire
#

I'm looking for an in-depth guide on how particles work on minecraft java. I've only been able to find a minecraft wiki stuff that mentions a few sentences about particles but thats it

spare musk
#

Hello everyone

#

Just joined this server hoping to make friends

river solstice
#

wrong place buddy

sterile hinge
#

True we hate each other here

raw mural
#

Feel free to scrutinise

lunar sapphire
#

This was a great read. This is exactly what I was looking for. Thank you so much

river solstice
#

have you tried using a debugger

crisp star
river solstice
#

I haven't really done much stuff with packets, but I mean cant you just go through the components of the packet inside the debugger?

minor summit
#

i'm sure linking the minecraft wiki is allowed

#

the fandom however, that's a different story

wheat carbon
#

Message sent by @dry walrus deleted in #development by themself.
It didn't really help, it was way too abstracted for me to understand tbh. Java is not my home language, nor do I program minecraft mods on the regular so I'm in pretty dark here as I mostly do my own projects in C#.
I tried looking at the minecraft wiki but I still can't form a solid mental image on how these connect to the packet reading in code, especially when the field number used in code feels super arbitrary. Is all good now that its solved though.

#

didn't let u link cuz ur tier 1 and ig we forgot to add that link to the whitelist

sterile hinge
craggy crest
#

Would anyone be able to help me set proper regions :() im unable to set it properly

craggy crest
nocturne dust
#

how do you guys teleport a player from one server to another using redis?

ocean raptor
#

to teleport the player to a specific coordinate in that server?

nocturne dust
#

Ah nvm

ocean raptor
#

because server teleports are done with bungeecord messaging

#

if you don't need to teleport the player to a location

nocturne dust
ocean raptor
#

make sure you have that enabled in velocity.toml and registered the channel

nocturne dust
#

although, i fixed it

ocean raptor
#

how did u fix

nocturne dust
ocean raptor
nocturne dust
#
// Fix: sync homeServerId so cross-server /clan home works correctly
    if (j.has("serverId")) c.setHomeServerId(j.get("serverId").getAsString());
nocturne dust
ocean raptor
#

sure thing

#

add me

worn jasper
#

Wrong place to ask and also pls use paste services instead of just sending the whole thing.

#

?paste

neat pierBOT
#
FAQ Answer:

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

hard sluice
#

When making PlaceholderExpansion is there a way to return colored text without using legacy codes?

shell moon
#

Can't you decide what your placeholder returns? I think so

worn jasper
#

so essentially either oyu use legacy colors

#

or you use MM with runway for ex.

shell moon
#

i guess legacy codes mean §a §l etc

#

Indeed, i hope it's not added soon, or at least a fallback or somthing

#

or many plugins will die xd

worn jasper
wheat carbon
#

it'll be added in ~2 months

fiery pollen
#

Hey, anyone experienced in assembly here?

sterile hinge
#

what kind of assembly

fiery pollen
#

Not super sure but I asked chatGPT and it said 32-bit x86 Assembly, it just a simple exercise I have to do at uni but we have to optimize the assembly so it uses less clockcycles

icy shadow
#

sounds fun

sterile hinge
#

Do you have a specific target processor? Because otherwise that’s not really possible

#

Typically for uni you have some simplified model assembly with a very simple pipeline if at all

fiery pollen
#

And this is the actual code in C, its a recursive function (we only have to optimize the function)

sterile hinge
#

oh so you're supposed to optimize C code? Or rather, from a quick look this is more about the algorithmic approach taken

fiery pollen
#

Well we have to optimize the assembly code in the .s file and run the actual assembly code, not the C file. But we have been given the C file just for more insight.

sterile hinge
#

mhh okay

#

but basically you can rewrite it however you want or are there any constraints?

fiery pollen
#

Don't remove any of the .cfi_... lines and don't create any other help-function

#

And also these are preserved and scratch registers

sterile hinge
#

yes that's just the calling convention

#

beyond that, it might help to understand what the pell-lucas numbers are, and more specificially, why calculating both pell_lucas(n-2) and pell_lucas(n-1) is somewhat unnecessary

fiery pollen
#

Yeah thanks, that helped, I managed to optimize it

river solstice
#

hi spammer

serene oyster
#

@leaden plume

wanton venture
#

@scenic vapor hello boy

#

Sorry for the ping, but I think you're the only one I know who knows about this.

scenic vapor
#

Just working on such stuff kekrvs

#

what do u need to know?

wanton venture
#

Currently, I'm using the user's theme font image and placing it in the title, but I have a problem: the blue and green fonts appear with a small shadow.

#

But the one in the center, orange, doesn't have it; the configuration of each font image is identical.

scenic vapor
#

i think its bcs of using incorrect glyph height

#

otherwise i dunno

#

or u got it in the png somehow xD

#

ive never seen that tbh

#

ah I know what it is

#

you are using the unselected ones in the BG, right?

#

it seems like that the selected state is not positioned well

#

for example the unselected state on green is abt 1 pixel down

#

and the blue one is abt 1 pixel to left

#

so its just 2 images overlapping

wanton venture
scenic vapor
#

yea

wanton venture
#

Here I changed the value of the blue glyph to green and it appears without the shadow

scenic vapor
#

no, the shadow is still there

wanton venture
#

The one that's blue is from the base texture

scenic vapor
#

I can quite literally still see the darker blue there

#

which is from the bg

#

as mentioned, you positioned it incorrectly

#

ye and thats the same case with the green one

#

thats also from the bg

#

bcs you got it abt 1 pixel lower

wanton venture
#

This is the base texture of the inventory; I'm just showing the glyph of the selected theme.

#
theme_blue_selected:
    path: theme_blue_selected.png
    y_position: -62
    show_in_gui: true
    shadow:
      enabled: false
  theme_orange_selected:
    path: theme_orange_selected.png
    y_position: -62
    show_in_gui: true
    shadow:
      enabled: false
  theme_green_selected:
    path: theme_green_selected.png
    y_position: -62
    show_in_gui: true
    shadow:
      enabled: false```
scenic vapor
#

man Ive already told u the reason twice

wanton venture
#

one is not lower than the other

scenic vapor
#

not in the bg and it can be quite literally easily seen

#

the green one is abt 1 pixel lower

#

3rd time am saying that

wanton venture
#

Damn, you're right.

#

Sorry to bother you, I hadn't noticed. 😩

wanton venture
scenic vapor
#

private project

#

there will be a vid in the showcase soon-ish

wanton venture
wanton venture
#

This question might not make sense, but is it possible to open a custom inventory without the generic texture?

#

I'm redesigning the texture, but the space above it looks bad to me. I adjusted it, but obviously the base texture is still sticking out.

#

I can't enlarge the black square because it would have more space above and below than on the sides.

#

I'm trying to think of a solution, but nothing comes to mind.

wanton venture
wanton venture
neon pewter
#

have anyone encounter the unexpected token in java doc snippet?

minor summit
#

that's just IntelliJ's viz shitting the bed

#

it'll compile and produce javadoc output just fine

river solstice
remote socket
#

likeabosssss

uncut saffron
#

Do anyone know any good earth maps?
And should I use 1.21.11 with earth gen?

neon pewter
#

anyone knows why the same task failed in the IDE but success in the console ?

river solstice
#

I don't know everything about your environment so I can't tell for sure

#

but 401 error should already give an idea

#

¯_(ツ)_/¯

neon pewter
#

not sure what happened

acoustic cave
#

Question is Chat Chat able to be used in a production enviroment or is it still being worked on ?

river solstice
#

it can be, yes

scenic vapor
#

oh shoot, I havent heard of chatchat for so long bruv

untold widget
#

I’m a versatile game developer yet with strong coding, animation, and modding expertise, capable of building, customizing, and optimizing engaging gameplay systems with smooth, high-quality visuals from the ground up.

minor summit
#

good job

untold widget
untold widget
icy shadow
#

Can I hire you for 1 million dollars per week

untold widget
#

Sure you can depending on the project

untold widget
scenic vapor
remote socket
untold widget
remote socket
untold widget
remote socket
#

yep this ai agent is terrible

scenic vapor
#

💀

finite geode
neon pewter
leaden sinew
#

I believe you

remote socket
#

i dont

torpid raft
#

fish]

river solstice
#

frog]

hot river
#

pufferfish

solemn seal
#
player.spigot().sendMessage(ChatMessageType.ACTION_BAR, new TextComponent(ChatColor.RED + "" + count));```
does anyone know why i cant do this anymore?
 net.md_5.bungee.api.ChatMessageType; seems to be deprecated? what do i use instead?
hushed veldt
solemn seal
#

ohh, thanks 🫂

tame moth
#

You would be great for that

obsidian orbit
tame moth
fast loom
#

I need website dev dm me

torn heart
remote socket
shell moon
#

Guys, what Material#createBlockData() returns if material is not a block, for example, a diamond sword?

river solstice
#

it returns you a nice little IllegalArgumentException

worn jasper
#

yet another example on why you should stop using spigot lol

river solstice
#

or am I dumb

worn jasper
river solstice
#

well, there are a lot of reasons to not use spigot, yes... but whats the case here

worn jasper
#

well having Player#sendActionBar for instance

river solstice
#

ah

worn jasper
#

it's one of the hundreds of extra api paper provides

#

I despise spigot with passion

#

xd

icy shadow
# river solstice

i still dont see how thats relevant to this particular example lol

worn jasper
#

I wasn't speaking about that example

#

oh wait

#

u speaking to m0dii

icy shadow
icy shadow
#

leave me alone