#development
1 messages · Page 96 of 1
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
what if I have an infinite amount of memory
give me.
it's mine get your own
rude
Skript would still take it
also, check DM's! (about BetterJails)
i was wondering how you get an ecloud account, i want to start uploading some of my projects but i don't know how
Can you link us to one of the projects first?
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) ?
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
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
well you can either make them private as well or disable the warning
?
nw got it working
respiratory
reminded me of covid
then you would be the culpable of ram inflation
hello we are looking for partners any interested ?
i already have a girlfriend
he quit 💀
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.
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.
This is actually so true
Why do you people always ping the wrong person
I mean that what you said is so true
people? Nah - bots
Yeah maybe that’s giving them too much credit
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
no homework help
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
Make a voice channel that people don’t have permission to join
This is the wrong channel also
i am facing data sync problem in lobby and its survival
Chatgpt is going wild
https://paste.helpch.at/mizuwogogi.css is my error
Is this from your own plugin? If so, you are including PAPI in your jar, don't do that.
No i think skyslycer is unemployed
Gemini on top
it also is cheap
am using Gemini flash
Then mare sure to add a depend / softDepend in your plugin.yml
can https://helpch.at/docs/ be updated to include 1.21.9 and 1.21.10 pls 🥺
jd.papermc.io/paper/1.21.9
jd.papermc.io/paper/1.21.10
you're welcome
package index
but thats paper 😠
yay!!!! thank you :))
good
I did in my paper-plugin.yml
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?
ig u know the answer xD
huh
So I should do what?
read up on what the dependency declaration format is on paper-plugin.yml and add the PlaceholderAPI dependency accordingly
that it is sure that he/she was not aware of it 
is there a backport for 1.21.11
of what? also "backport" to the latest available version doesn't make much sense so I guess the answer is no
I guess we shall also never know backport of what lol
Help
how do I update my servers world to 1.21.11 from 1.21.10
I don’t want it to reset
Like my server is 1.9+ and people want 1.21.11 features
We have 1.21.10 features
They want the spear and cute mobs
You want 1.21.11 features but allowing 1.19 to join?
swap out the server jar and use viaversion to allow other versions to join too
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
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
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?
...
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
yea idk where to put it
if you pay, paid
bc its a longterm project
if yoou dont plan to pay free
i can in future
then remove it from paid channel
share shares
spawn it again with a spawn packet and the necessary entity data
But if its a player, what to do exactly?
Have no idea about PacketEvents
in PRotocolLib i usually send update packet
but i dont think there is one in PAcketEvents
all the packets are the same
they're a light API on top of Minecraft's network code
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});
}
}
why don't you just use the entity visibility API?
Player#hideEntity/showEntity
and Entity#setInvisibleByDefault or whatever that's called
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
What are you trying to do
I am coding an ability plugin using highly packetevents
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!!
why not use the bukkit inventory api?
Cannot resolve symbol 'BuiltInInventoryType' >.<
packet > bukkit api
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
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
my plugin highly based major tasks
using bukkit api wont help
You can not listen to keyboard events with vanilla MC, only the clicks, movement.
do i need to make mod?
The question still is what you want to achieve with it
Some kind of inputs can be detected
I wanna listen to keybinds to active the abiltiies
cel = 2 ablities = 2 keybinds
this just isn't true as simple as that
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
yeah, plus I would argue that the API on its own is ensuring a lot of guarantees for you in the first place that you'd need to end up rewriting anyway
plus packets aren't "more secure", whatever that means, or "abuse using gui" uh..
The one thing I hate about some of ur stuff is it all being packet based
oh well yes and no. The thing is that you can be any good and still make mistakes - that's normal. Tho you can have a menus system that counts with issues and if anyone would break, players wouldn't be able to take the items out of it still. Additionally using packet menus you can modify the bottom inventory part without modifying the serverside inventory state
which eliminates the data loss or potential dupe glitches
huh
The player inventory part is indeed cool, probs gonna have to do this for runway.
Some stuff being packet based when it doesn't need to
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
Player#show/hideEntity and Entity#setVisibleByDefault in shambles
it still ticks
i have no idea what half of that means
display entities don't really tick lol
even tho it's non tickable entity, it still iterates
and it skips right through
how many entities are we talking about here?
and how many are being shown to any one player?
the client will shit the bed before it's a problem for the server
and my systems are in Coroutine contexts, i would need to switch to bukkit ctx just to spawn an entity
and what's the problem with that
performance
lol
spawning and destroying entities does take performance
a player merely existing is far faaaaar more intensive than spawning and destroying entities
true that, player moving their mouse probably is N times performance heavier than iterating and skipping over 100s, if not more, entities

yeah
I mean, KMenu is a good place to use packets
specially maybe in Runway....
👀
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?
Why not use the advancement system?
Would that be better?
Can you explain a little bit about what it's like?
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
But would the game's achievements be based on detecting when a value changes?
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?
Yes, take a look at Caching strategies and their benefits/down-sides, stale data is a thing too. You could take a use of Caffeine (library) and instead of using bukkit's thread pool (e.g runTaskAsynchronously), you could make use of your own ThreadPool - ExecutorService class with Executors, could be virtual thread pool too with CompletableFuture
dont read it in the main thread, otherwise it's fine, caching will be helpful when you have lots of reads, when your response latency increase you'll notice that you might want to have some sort of cache
So is it better to store the database in a HashMap and retrieve the information from there?
^ 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
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
yea DBs can handle literal thousands queries a second without a single problem
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
yep
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.
Okay, I understand, thank you very much for the help/suggestions.
you dont need fancy libraries to achieve that
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
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
yeh thats tru
there is one size fits all it's call dump it in a text file
like, what do you think mysql does behind the scenes?
it has an accountant in there writing everything in a text file
yes but that accountant is very smart
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!
🙏
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?
looks hella cool
I mean, where are you stuck exactly? Sounds trivial
glad to see someone else using glyphs in the Menus like this
It's almost too good, to be honest.
In truth, in the part about achievements
To enable them to create achievements in a file and have the plugin do the rest
And some ideas, things to add, etc.
I don't know how I could make it happen
reading an yaml file?
The whole achievement system is an idea I have, but I don't know how to implement it.
you just said it
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.
tho pretty hard to setup
Let's say I have the plugin read the settings, how would I be checking that these are being met?
customers usually got issues with understanding how this sht works
In fact, I found myself getting stuck in one part
And I'm still stuck
whats the issue?
Basically, the range prefix should go below the name.
ah that it is 1 pixel off?
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
you have got this automatic, right?
and ur using glyph widths to calculate the placements
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.
Yes
Have in mind that while having the widths, you need to add +1
Use a TFF font for the text style; I created an enum where I assigned the px values for each letter.
Yes, I just realized.
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.
you cannot do that
you cannot move a glyph up and down
you need to make another glyph for this
He had succeeded on the first try.
But it only worked in the chat
You can only achieve that using shaders
/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.
oh ur using shaders for it?
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.
Nope
so how do you move it up and down
Wait for me
{"file":"char/black.png","chars":[""],"height":-1027,"ascent":-5000,"type":"bitmap"}],"gui_light":"front"}
I had done something like this before, but I don't remember.
huh, hows that capable of moving it up & down
this is just one huge negative pixel that moves it to left
I'd like to give you a logical explanation, but even I didn't understand it.
But anyway, since you have more experience, do you have any idea?
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
The only one I see is this one, but I think it would be difficult.
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.
I will be working on a library for Glyph management, so I can send it to you afterwards
tho its gonna be done in Kotlin
so yeeeh not too useful for u
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.
you work AT Maven?
Is there an API to open the menu?
huh
deluxemenus doesn't have an api
if that's what you asked
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
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
does anyone know of a way i can make portals that require the player to have a permission to enter?
yeah I do
...how?
a simple google search would tell you
listen to PlayerPortalEvent, check for appropriate permissions, cancel if needed
Looking for some free developers to work with me on a project
Thank you
Free developers 😔
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
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
there should be some option called "build on remote" or similar somewhere
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
can you send a screenshot of your intellij docker config setup thing?
not sure the actual term lmao
imgur is blocked in the uk 🥲 would you mind using another service lmao
my vpn is not working rn
This is for the Docker config
https://imgur.com/a/PNQ1063
I believe that error down the bottom is new actually, just noticed
Ah yeah two secs
Docker config: https://pasteboard.co/njC0kDeZb8kQ.png
Run config: https://pasteboard.co/fLSA2P5fC36y.png
Never used thsi platform before so hopefully it owrks
Just brings me to the docker config
ok ok give me a sec
@tame charm im assuming you have fixed this now right?
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
yeah it's just a local server
ah i see
not localhost tho its like intellij is tryna connect to a docker sever on my own machine
Like that failed to connect to docker API thing makes it look like it's tryna connect to my dev machine doesnt it?
isnt that the idea?
Like my server is 192.168.0.111, that error is tryna connect to localhost isn't it?
all good, I might just fully remove all my configs and re add and see how I go
yeah try making the ssh config again
It's just so weird, was literally working fine like a month ago, I haven't touched anything and now its cooked
ok idk why but changing it from password auth to keypair fixed it 🙄
awesome
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)
Yes.

Hello, I would like to have access to upload a version of my placeholder.
Could you give me access?
https://ecloud.placeholderapi.com/expansions/advancements/
@robust crow
Done!
Thx
@robust crow I'm sending you a .jar file xD
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)
afaik it doesnt support adventure, why you need that?
That's odd, can you give me the jar file and I'll test it out
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?
there are no concrete "steps"
I just need someone to guide me
I would really appreciate any help.
google, youtube
google a Minecraft plugin dev tutorial
google a java tutorial also
this should be first
too hard to get into initially
it's good to get a taste of your goal a lil at first
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
man someone shouldreally make a good java tutorial
time for you to do it!
I also nominate @pulsar ferry (just so he is forced to touch java instead of kotlin)
hehehe
sorry
☹️
Hmm ty
wonder what does "i dont have an account" means, you mean official mc account?
Hi! What requirements do I need to upload an Expansion?
You need to create your account using GitHub and then tag funnycube so he can allow you to upload stuff i think
||https://api.extendedclip.com/expansions/translatefont/||
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)
How i can get verified fcr upload extension?
I already have a registered account. https://github.com/senkex
It was a prototype; I changed several things in another version that I'm still testing
What if I make a java course that teaches you java and plugin making properlt
Properly
I've made a change to hopefully display a more useful error to see whats going on
have another go when you get a moment
@robust crow would it be possible to give me access to the ecloud?
Suggest adding a readme so we can have a few examples of what it can do! 🙂
Okay, I'll try in a couple of hours when I get to my computer.
Do you trust the client to know if it's a .jar file?
- It appears that the browser sends the basic binary type without assigning the correct MIME type.
- First of all, I have tested it on several browsers. -> Same output (Chrome, Brave, Opera, Firefox and Edge)
- 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.
- When i use "inputHTML.files[0].type" only get "" type.
- 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

Yeah there's checks at the client, server and storage container
@robust crow The previous Expansion is now ready to be uploaded. https://github.com/nauticstudios/FontEngine
i've upgraded your account
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.
uve ordered something from someone who got AI pfp? 
xdd
i dont pay attention to thease stuff man
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
Brutha making your question bold won't make it be answered any faster lol

also #general-plugins
?paste
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
and this is not the right channel, use #general-plugins
ok thx
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?
i wouldnt use sockets directly, you can host a rest api or use a message server in between
rabbitmq, redis etc works it depends on your data flow but i would question why you are storing the data in two different places first tbh
One is the Discord bot's database, and the other would be from the plugin on the server.
The server database can be a local H2 or MongoDB, and it's where the server information/plugin data is stored.
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
well use MQ then imo
you have shared 0 info abt ur system and what ur trying to achieve...
different flow requires different stack
Unless it only stores the information in the server's database and makes requests to the plugin when necessary
It's currently a system for linking your Minecraft and Discord accounts.
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.
well if you want these as separate systems, use Redis then and store codes with TTL
But that would be a small part of what it would have
Something else would be direct messages on both platforms.
Can Redis and MQ also store data?
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?
Oh
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
I suppose Redis could work
Although I think MQ might be better suited for a messaging system
this is why most of such public systems host dc bot in the plugin directly - its just for an easy access and installation
Redis to request information that would be stored on the server
Basically as a messenger for both
you want to have replies?
That would help, but I don't want to do it that way.
It was like a confirmation
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
Then it would fit your MQ experience better.
well yes and no, I mean its already kind of designed like RPC
def better than using redis pub/sub
ye if you only need messaging, no point in redis
he quite literally wants to have endpoints on both MC and Discord
but their issue is probably solved easier with a shared db or a backend
But I would have to host the bot in the same plugin, right?
.
am saying what most public systems do
you will already have a mq between em, if you will only have one server then that works fine
I was saying that bcs I was not sure if you are planning doing this public or not
bcs u have mentioned h2
but for anything a bit more complex, you do need to handle state properly
and other dbs
The plugin stores its information in h2 or in a MongoDB database
I got a little lost, but I'll have to investigate further how Redis and MQ work (which I didn't know about).
whats the reason
bossman, you probably
just want to share mongo between your plugin(s) + your discord bot
I also appreciate that they took the time to respond and try to help.
and just query it for shared data
+1
from the sound of your setup and questions that is
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
Well, the owner can choose where to store their information, whether it will be on just one server or more.
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
I was going to add a cross-platform messaging system, so MQ lends itself well to that.
if you also need a shared cache
then redis makes more sense
as it supports memory cache + basic pub sub
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
ye, rabbit mq has queues that can guarantee that a message is received
How convenient would it be to use MQ only for this messaging system?
And the rest that adapts with Redis
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
rabbit is simple with good documentation
https://www.rabbitmq.com/tutorials/tutorial-one-java
This comment is about MQ, right?
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
Okay, I'll take it upon myself to look into MQ more.
But I do think it's for the best.
rabbit has java specific tutorials
just check those out, it also has RPC implementation if you need that
I'll look into how to host RabbitMQ to test it.
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 ^^
can some bodu help in that
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.
Lovely Business
Nice to meet you.
I don't have a PC, is an iPad enough?
This is good choice for you and me
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.
oh, no Asia?
what about Eurasia?
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.
Lovely Business
what if I am 41 from Asia does that work??? Please respond ASAP
Ok Thanks You For Fast Response!
it isnt project? what is it
enlighten me project manager!
Sorry where are you from?
lovely buisiness
neterland
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?
thanks!
Yeah it's the more updated one
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?
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
yeah, it works just fine without it - as long as the dependency is added in the paper-plugin.yml and set to load: BEFORE
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
shouldn't it stay? since paper plugins default to required: true
oh
talking about the buildscript
didn't even realize PAPI had that but that's neat lol
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%`
well, did you install the player expansion?
Correct, also as Emily said check you have the player expansion installed. PlaceholderAPI doesn't ship with any inbuilt placeholders
https://ecloud.placeholderapi.com/expansions/player-hytale/, you can download in game if you're on the non-curseforge version
(wiki should be fixed now)
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)
@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
awesome
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.
we hadn't looked at it yet tbh, your plugin was just on the list
It's a big list...
I feel that haha
But happy to have you aboard!
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?
can you not use spigot's library API?
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
besides what ixume mentioned, you can just unzip your plugin and relocate all the packages that you see (besides your own)
i often use https://jdec.app/ to view contents of JAR fast
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
Last time I tried it wasn’t possible to relocate packages and transitive dependencies were clashing
Wouldn’t I need to change code references too? Anyways that would require a lot of work to do this to every dependency
I used to use Libby which would do the work but I ran into some problems that would need to be fixed before I can continue using it
wdym?
relocating should handle that for you
if they use gson, just exclude gson from shading
server sw already is has gson
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.
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
@robust crow https://pastes.dev/Fd1YLhbDqS ok and if I have something like this how would the placeholder look like? cmbedwars_arena_mode?
Correct
Thanks
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
Gradle example seems to be outdated, use https://repo.helpch.at instead of https://repo.extendedclip.com
both redirect to the same place when i put that into my browser
i see no noticable changes between the two either
You can still give https://repo.helpch.at/snapshots a try though. Also, they don't redirect. They are different repositories.
@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
i see
also it's a diff class called PAPIComponents
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.
- This feels like a really messy way of doing things, is there a better method?
- 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?
now thats a piece of a messy code
i asked some people over at PaperMC Discord, they said the approach looks fine
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
am not saying ur approach is wrong, am just saying it looks messy. Not always it's worth doing everything inlined
ah, i changed it after i posted here
Hey, I’m looking for a developer who can help me configure a KB (knockback) on a Minecraft server. I’m willing to pay.
Ok, i'm sorry
In a case like that, what if you don’t know a budget because you don’t know what the services are worth?
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
you can just put a range of whatever you are willing to pay and then mention its negotiable and just discuss in dms of whoever contacts you about it
I've created a simple expansion (https://github.com/RegrowthMC/WorldBorderPlaceholderExpansion) that I thought might be suitable to upload to ecloud, not sure where to ask for support with this though
whats ur ecloud account caleld
nvm
wait yes
sign up to ecloud
I can make u an author
I think I have with my GitHub which is OakLoaf
u should be able to upload now
perfect thank you!
When I try to upload my jar it appears to error, it says "Invalid file type. Only .jar files are allowed. [application/jar]" but the file I am uploading is a jar aha
@robust crow yer shits still broke
@vestal phoenix there's some regeedit fix u can do in the meantime, #development message
I can't say I quite understand what the fix is here :o
havent visited stackoverflow for quite a bit
the SO answer beats around the bush a bit as it was for .csv files. same principle though. basically go to this location in the registry editor: Computer\HKEY_CLASSES_ROOT\.jar
then make sure to have the following keys/values in there
Ahh it's missing PerceivedType, and is slightly different in general, can't post pictures but I have:
(Default) - REG_SZ - Zulu.jarfile
Content Type - REG_SZ - application/jar
You won't be able to upload images here directly to avoid spam, so please use https://imgur.com/upload or similar service to upload images/screenshots.
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
i have same issue aswell 🥀
should i adjust the current 2 to replicate yours too?
yea i think the important one was the content type iirc
did u refresh the page before trying to upload jar again
np
I was on 11
I'm also on 11
I'm not on 11
How does one get an expansion verified? :o
I've verified it
i can't add placeholderapi to gradle
what am i doing wrong? https://pastes.dev/W29UvUzD5U
@fathom terrace u need the helpchat repository
repositories {
maven {
url = 'https://repo.extendedclip.com/releases/'
}
}
but i did
https://prnt.sc/-fqXmAqMMYhu i just used other repository
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
@wheat carbon do you know why?
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
For some reason, in my multi-module plugin, I did it this way, and the repositories work this way (except for papi)
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
So supposedly if I add a repository for a plugin I've never used, it will fail?
well it depends if the plugin is hosted in any of the repos provided by those gradle plugins
in ur settings.gradle
add this repo:
https://repo.piggypiglet.me/releases
k
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
Yes, it doesn't work, you're right
thanks
I had copied the design from here xd
they have this repository: maven("https://repo.william278.net/releases/") // VelocityScoreboardAPI
ah right
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
old project
can try that setup
why did you remove the multi-module?
on old project
current placeholderapi project is not a multi project anymore
that was going to be the new papi but it was never finished
oh
it works!
@wheat carbon when placeholderapi4
yes
LOL
help why is my hello workd not work
public class mAin {
public static volatile String variable = "hello world";
//todo: implement hello world
}```
I'm using spring does that help
I think you need to use skript and not spring
did you try npm install?
we use bun install now
i thought you were into cabal, stack n ghccup stuff
Hell yeah bro
you want me to install your bun??
we haven't even gone on a first date yet
First dates are overrated
bro just doesn't go out on dates
my date ran away when she realised my hello world didnt work
g1gc sent her to purgatory
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
wrong place buddy
True we hate each other here
I found your question very interesting. I have spent about 5 hours researching, looking into the Minecraft mappings, looking at how the code works, and then formulating all of this into one document that explain the full lifecycle of particles in Minecraft. Enjoy :)
https://docs.google.com/document/d/1EXiWb2nqlBeLf91gH4BOW7zmOAi8fFh5DCNkIL5-Okc/edit?usp=sharing
Feel free to scrutinise
That's awesome. Thanks a lot!
This was a great read. This is exactly what I was looking for. Thank you so much
have you tried using a debugger
the problem is that its "public class mAin" and should be "public final class mAin"
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?
i'm sure linking the minecraft wiki is allowed
the fandom however, that's a different story
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
Instaban tbh
Would anyone be able to help me set proper regions :() im unable to set it properly
Worldguard regions ?
Yeah, figured it out though. Thanks<3
how do you guys teleport a player from one server to another using redis?
why do you need redis for
to teleport the player to a specific coordinate in that server?
Ah nvm
because server teleports are done with bungeecord messaging
if you don't need to teleport the player to a location
tried but doesn't work.
make sure you have that enabled in velocity.toml and registered the channel
although, i fixed it
how did u fix
just a single line fix

// Fix: sync homeServerId so cross-server /clan home works correctly
if (j.has("serverId")) c.setHomeServerId(j.get("serverId").getAsString());
mind sending me in DM's so that I know the proper method for future needs.
Wrong place to ask and also pls use paste services instead of just sending the whole thing.
?paste
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
When making PlaceholderExpansion is there a way to return colored text without using legacy codes?
Can't you decide what your placeholder returns? I think so
no component support yet...
so essentially either oyu use legacy colors
or you use MM with runway for ex.
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
Runway coming in for the save 😎
it'll be added in ~2 months
Hey, anyone experienced in assembly here?
what kind of assembly
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
sounds fun
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
And this is the actual code in C, its a recursive function (we only have to optimize the function)
oh so you're supposed to optimize C code? Or rather, from a quick look this is more about the algorithmic approach taken
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.
mhh okay
but basically you can rewrite it however you want or are there any constraints?
Don't remove any of the .cfi_... lines and don't create any other help-function
And also these are preserved and scratch registers
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
Yeah thanks, that helped, I managed to optimize it
hi spammer
@leaden plume
@scenic vapor hello boy
Sorry for the ping, but I think you're the only one I know who knows about this.
Damn, it's beautiful
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.
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

yea
Here I changed the value of the blue glyph to green and it appears without the shadow
The one that's blue is from the base texture
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
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```
They all have the same Ascent
one is not lower than the other
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
What is this, by the way? It looks interesting.
Quick question, the text and information on the right, you add it from the title too, right?
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.
And looking at your texture, I think that one is also smaller than the default.
https://imgur.com/a/qn57SD3 What does it look like?
have anyone encounter the unexpected token in java doc snippet?
that's just IntelliJ's viz shitting the bed
it'll compile and produce javadoc output just fine
not sure if you're getting banned or should I recommend to post in #1477468989952364689
he spammed everywhere
likeabosssss
Do anyone know any good earth maps?
And should I use 1.21.11 with earth gen?
anyone knows why the same task failed in the IDE but success in the console ?
I don't know everything about your environment so I can't tell for sure
but 401 error should already give an idea
¯_(ツ)_/¯
i switch the run task from gradle to wrapper in build tool setting and it work
not sure what happened
Question is Chat Chat able to be used in a production enviroment or is it still being worked on ?
it can be, yes
oh shoot, I havent heard of chatchat for so long bruv
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.
good job
Thanks
Great!
Thanks
Can I hire you for 1 million dollars per week
Sure you can depending on the project
Sure
this AI agent is bad
dayummm
I don’t understand
whats 2+2
🤣🤣
yep this ai agent is terrible
💀
5
depend on the combination direction, it can form a fish
I believe you
i dont
fish]
frog]
pufferfish
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?
player.sendActionBar(Component.text(count, NamedTextColor.RED))
ohh, thanks 🫂
Ahh thanks for showing me that, I can't do a custom plugin yet with my skillset currently
I’ll do the plugins for u if u wanna do the rest <3
I need website dev dm me
budget is crazy low for all that work
i wish he just hire me as volunteer 😭
In case you plan to support spigot (for spigotmc.org), you probably need to use this (or ad compatibility somehow so it uses if the other is not available) as Player#sendActionBar is from papermc
Guys, what Material#createBlockData() returns if material is not a block, for example, a diamond sword?
yet another example on why you should stop using spigot lol
why is that?
or am I dumb
yes.
well, there are a lot of reasons to not use spigot, yes... but whats the case here
well having Player#sendActionBar for instance
ah
it's one of the hundreds of extra api paper provides
I despise spigot with passion
xd
i still dont see how thats relevant to this particular example lol
wdym
sorry no i meant to reply to this
leave me alone

