#placeholder-api

1 messages · Page 56 of 1

unborn cradle
#

Sorry it took a minute to figure out. Its been a minute since I did anything with PAPI

torpid vortex
unborn cradle
slow bear
#

Hey, i've made an expansion for PAPI and want to get it onto ecloud where and how do i do that?

balmy marten
native pumice
#

Hey.
I tried creating an account on eCloud, but it redirected me here. I'd like to upload a standalone expansion I made to randomly generate a color on each parse with multiple formats; Hex, Hexadecimal & legacy minecraft colors.
How would I be able to create an account if that's possible right now? Thanks 😄

vivid sparrow
#

Before publishing a new expansion, see if the functionality can be integrated into an existing expansion.

cinder orchid
#

hello i have a problem with my placeholder

unborn cradle
cinder orchid
#

%math_0:0_(0.05*{checkitem_amount_mat:coal}{luckperms_meta_shop})+(0.05{checkitem_amount_mat:coal}*{luckperms_meta_shop})*0.0{playerpoints_points}%

#

%math_0:0_(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})+(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})*0.0{playerpoints_points}%

unborn cradle
#

What does it out print? do /papi parse me %math_0:0_(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})+(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})*0.0{playerpoints_points}%

cinder orchid
#

It was still working a few days ago and suddenly the placeholder came loose.

unborn cradle
#

What does the placeholder return?

cinder orchid
#

same placeholder

#

and not the good result

unborn cradle
#

run /papi parse me %math_0:0_(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})+(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})*0.0{playerpoints_points}% what does it show

cinder orchid
#

i cant send screenshot

tender vaporBOT
unborn cradle
cinder orchid
unborn cradle
#

Did you install all the placeholder extensions you are using?

cinder orchid
#

yes

unborn cradle
#

/papi ecloud download math
/papi ecloud download checkitem
/papi ecloud download luckperms
/papi ecloud download playerpoints
/papi reload

#

try running those again

cinder orchid
unborn cradle
#

try doing this:

%utils_parse_math_0:0_(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})+(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})*0.0{playerpoints_points}%

#

and do /papi ecloud download utils

cinder orchid
unborn cradle
#

Thats a better output

cinder orchid
#

yes

unborn cradle
# cinder orchid yes

try doing %utils_parseplaceholder:[math_0:round_{0.05 * {checkitem_amount_mat:coal} * {luckperms_meta_shop} + (0.05 * {checkitem_amount_mat:coal} * {luckperms_meta_shop}) * (0.0{playerpoints_points})}]%

#

Cause you are parsing a placeholder

unborn cradle
# cinder orchid no

try:

%utils_parse_math_(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})+(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})*0.0{playerpoints_points}%

cinder orchid
#

@idle coral can you help me please and sorry for the ping

unborn cradle
# cinder orchid no

one last thing to try:

%utils_parse_math_0:down_(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})+(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})*0.0{playerpoints_points}%

#

math_0:0 does not exist anymore

#

Also, It could be an issue with you're decimals

cinder orchid
unborn cradle
#

try %utils_parse_math_4:down_(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})+(0.05*{checkitem_amount_mat:coal}*{luckperms_meta_shop})*0.0{playerpoints_points}%

cyan quiver
#

I have holograms and I wantr the players prefix to be shown back to them

unborn cradle
slow bear
slow bear
#

ah mb!

#

But i'd like to get it onto Ecloud is that possible?

slow bear
#

i might have missed it then

unborn cradle
#

@slow bear

slow bear
#

Yeah

#

that sucks 😦

unborn cradle
#

Sorry

slow bear
#

i thought i had a good idea but its fine 😄 i learned to how translate message input into a custom / different font

#

its fine dw!

#

not your fault

unborn cradle
cyan quiver
#

Thats not what imeant

#

For the player on the hologram

#

IIt should be their rank

#

Not ur rank

#

Cause if you add that placeholder then your rank will show on everyones name

unborn cradle
#

utils_parseother:[{player_name}]_luckperms_prefix%

#

@cyan quiver

cyan quiver
#

no

#

bro

#

no

#

i use vault

#

simple aj leadeboard

unborn cradle
#

Change luckperms prefix to vault_prefix

cyan quiver
#

yae

languid bay
#

I'm using %checkitem_amount_mat:AIR,inslot:8% to check amount of air in a specific slot, which should either return 0 or 1, but instead of returning 1, it returns exactly 2147483647.
While using the amount without the slot, returns the correct amount of empty slots

ocean basin
#

Does anyone happen to know the Advanced Skills placeholders? I am creating a menu and I need the progress placeholder but the one they have listed on their website isnt working.

#

This is the placeholder that I am using : %advancedskills_points_needed_woodcutting%

unborn cradle
#

%checkitem_inslot:8,material:AIR% @languid bay

#

Almost had it there

#

It displays "yes" or "no"

unborn cradle
ocean basin
unborn cradle
#

Ah, That sucks. GC support is slow too. You mustve been waiting a minute for a response

ocean basin
#

Yeah haha I was

#

Have you made any menus to change up the advanced skills?

unborn cradle
ocean basin
#

Interesting. I think im going to have to use a different skills plugin for what I am trying to do.

#

Alot of the AS functions are internal so its not doing what I need. Lol

unborn cradle
ocean basin
#

I will look into that for this project. Thank you so much for the info!

unborn cradle
#

ExecutableEvents takes deeper configuration knowledge than EcoSkills but it has a GUI menu to assist a little bit with Event handling creation

ocean basin
#

Im sure I can handle either of them. Ill look at both. Il

unborn cradle
#

@ocean basin #showcase message - This is only the beginning you can do with Executable Events. I made a whole boss fight percentage system via EE

viscid orbit
#

hello i get these warnings in console:

[15:33:16 WARN]: [PlaceholderAPI] Cannot load expansion playerstats due to a missing plugin: PlayerStats [15:33:16 WARN]: [PlaceholderAPI] Cannot load expansion advancedbungee due to an unknown issue. [15:33:16 WARN]: [PlaceholderAPI] Cannot load expansion playertime due to a missing plugin: PlayerTime

how can i get rid of them ?

unborn cradle
tired jetty
#

can anyone explain how to use the papi plugin on proxy servers when my plugin like TAB is on the proxy server and the papi plugin on the backend paper servers thanks for help

viscid orbit
#

thak you

unborn cradle
tired jetty
#

OK, thanks, but how can I then set that, for example, addons like playerstatistic are the same on all backend servers or the money from vault

unborn cradle
#

As long as the backend server has PAPI and the correct extensions install. It will work fine

tired jetty
#

oki thank you

ocean basin
#

Anyone know how to use the math placeholders? I am trying to get a placeholder to show in my menu for my foraging skill.
I dont want to show each individual block, but I want all foraging blocks total.

feral wharf
#

Hello, I'm using Folia for my server and I don't know if it requires complete recode of the plugin but placeholder API isn't working on this server software. Is there any way to fix it or do I just need to wait for a plugin update?

half briar
feral wharf
#

It's working, I didn't know they were DEV build available. I'll also check DEV build for other problematic plugins. Thanks for help @half briar

shut thicket
#

hello

#

hello how to show player-online in survival server on lobby . i cant do that . pls help me:cry:

#

i use PAPIProxyBridge and %papi-proxy_online_survival% on hologram

#

but that just show %papi-proxy_online_survival%

half briar
half briar
shut thicket
half briar
opaque patrol
#

Hello there
String parsed = PlaceholderAPI.setPlaceholders(null, placeholder);
Can i use null when parsing placeholder?
If not, how to parse a placeholder from the server?

junior musk
#

you can

#

though not all placeholders will return an output if the player is null

#

for example, %server_online% (and basically all Server placeholders) will work, but %player_name% (or any other Player placeholder) won't

opaque patrol
#

Its is my JS in the GUI name and it returns empty even though all its returns contain text

#
        String parsed = PlaceholderAPI.setPlaceholders(null, placeholder);```

JS uses the first argument, which is passed to the placeholder as a String (playerNameRaw)
zenith prism
#

Hi, I'm using DELUXEMENUS for a player stat menu, and i want so every player can see it's own playerhead. But my placeholders does not work, i just see a steve head

items:
player_head:
material: PLAYER_HEAD
slot: 0
display_name: "&aStats"
skull_owner: {PLAYER}

junior musk
#

why? idk

opaque patrol
#

It works in TAB

#

Awh

junior musk
#

yeah because TAB provides a player lol

opaque patrol
#

Yes yes yes

junior musk
#

Why parse a JS placeholder instead of coding the script's function directly in Java though?

#

it'll be much faster too, parsing the JS script is pretty slow

opaque patrol
#

My JS script works with a large number of lines that I can edit directly in the script without opening the plugin each time

junior musk
#

ok

normal urchin
#

Hello!
Currently having an issue with lpc and deluxetags spacing format

legacy_hex: false
papi_chat: true

force_tags: false
check_updates: true
deluxe_chat: false
format_chat:
enabled: false
format: ' {deluxetags_tag} <%1$s> %2$s'
load_tag_on_join: true
when having done my lpcs set up like this.

chat-format: "{prefix}{displayname}%deluxe_tags%{suffix} &7: {message}"

in chat it turns out like this

EX.
MEMBER Notch[THETAG] > {message}
and now when i setup my lpc like this.

chat-format: "{prefix}{displayname} %deluxe_tags%{suffix} &7: {message}"

ingame chat turns out like this.

EX WITH TAG.
MEMBER Notch [THETAG] > {message}

EX WITHOUT TAG. "Double Space After The Players Displayname"
MEMBER Notch > {message}

What should i do?

zenith prism
# opaque patrol Try %player_name%

Does not work, I already tried {PLAYER}, %player_name%, %player%, {PLAYER_NAME}, skullowner, skull_owner, skull_owner and skull-owner
Neither of theese helps

opaque patrol
zenith prism
#

Still doesnt work

#

May it be because Online-Mode false?

normal urchin
opaque patrol
#

papi reload or server restart?

zenith prism
junior musk
#

?dm-heads

tender vaporBOT
zenith prism
# tender vapor

Now it's Alex head, but just called "my minecraft nickname's" head

#

Isn't it because it is set to online-mode=false?

earnest nacelle
#

Why might I get a 503 error for http://api.extendedclip.com/v2/ with a server on my local machine, when I can access that URL in my browser? Doesn't happen on the public server.

rotund pendant
#

It's possible you didn't give the Java runtime for the server access to the your network / the internet.

earnest nacelle
#

Yep it pings without issue. Those with my ip can connect to my server and plugins do detect when there's an update available.

rotund pendant
sharp axle
#

How do I make the ping interval 1s?

earnest nacelle
#

Ah, I lied - other plugins cannot seem to check for updates locally. api.spigotmc.org returns a 403 for CMILib... but again, I can view it in my browser just fine. This is probably related to [PlaceholderAPI] Failed to check for updates on spigot..

LuckPerms, however, can open up an editor and connect to the editor but that might be using a different protocol.

#

If I run this command in terminal, I do get a 403 curl -I https://api.spigotmc.org/legacy/update.php?resource=87610. Again, in the browser is fine... so I wonder if my local IP is being blocked for non-browser traffic?

#

Spamhaus ffs

#

It's an IP range too, x.x.x.0/24

bronze shell
#

Hello!

I'm looking for a papi expansion that would allow me to "inject" a character between every character of a placeholder output.
Example: %myplaceholder% parse abcd! but i'd like to have an expansion automatically changing the output (whatever it is) to a b c d ! , so basically adding a space after each character.
I suppose this can be achieved with the String expansion, but do i have to register every character in the papi config file? isn't there a way to cover every possible character?

earnest nacelle
turbid tide
turbid tide
#

Can you show the ful result of curl -I http://api.extendedclip.com/v2/? Maybe some headers can help us track what blocks the connection

turbid tide
bronze shell
#

i have zero knowledge of javascript but i'll take a look. thanks

turbid tide
bronze shell
#

i try to not rely on chatgpt for coding 😬 i have some friends who can teach me that stuff

turbid tide
turbid tide
bronze shell
#

i see, thanks

#

for now i made a long ass string replacer list, and i'll try the js version later

earnest nacelle
# turbid tide Can you show the ful result of `curl -I http://api.extendedclip.com/v2/`? Maybe ...
HTTP/1.0 503 Service Unavailable
Date: Fri, 11 Jul 2025 16:01:59 GMT
Content-Type: text/html
Content-Length: 272
Expires: Fri, 11 Jul 2025 16:01:59 GMT
Connection: close

If I run curl -I http://google.com I will get a 301 Moved Permanently (as http redirects to https). If I run curl -I -L http://google.com it'll follow the redirection and return 200. This kind of proves that my network does allow HTTP requests.

I'm assuming Spigot utilises Spamhaus PBL (which is are IP ranges of networks not configured for email) and does a blanket block... which prevents plugins from checking Spigot for updates. That in itself is kind of stupid.. but extendedclip is different, as that's a 503 and not a 403.

earnest nacelle
#

apologies

turbid tide
#

I am at a loss here. I would've hoped it is cloudflare or a local service blocking this. But I am not so sure anymore.

#

@balmy marten is there any way to see if a specific requests reaches the API? Do we have logs?

#

To see if the 503 is returned by our API or is it a middle service

violet shell
#

quick question: how do get the %essentials_nickname% placeholder to work with TAB?

turbid tide
#

If not, execute /papi ecloud download essentials and then /papi reload.

balmy marten
torpid vortex
#

- '&r&f%utils_parseother:[{player}]_utils_parse:2_\luckperms_prefix\%' This did work for me, however I noticed that it returns an empty message if the player is not online

#

Would you have a solution?

turbid tide
#

I don't think there's anything you or us can do about it

torpid vortex
torpid vortex
#

%parseother_{%arg_1%}_{player_has_played_before}%

#

This is fine, right?

turbid tide
torpid vortex
stone edge
#

No one deleted the images yet?

sturdy glade
#
size: 9
open_command: kits
register_command: true
update_interval: 1
items:
  test_item:
    material: FISHING_ROD
    slot: 8
    display_name: "&7&lFishing Rod Kit"
    lore:
    - "&fIs Unlocked: %essentials_has_kit_fishingrod%"
    - "&fAvailable: %essentials_kit_time_until_available_fishingrod%"
    - ""
    - "&f&lITEMS"
    - "&7&l- &7fishing_rod"



    click_commands:
    - '[close]'
    - '[player] kit fishingrod'

is there a way I can make it say unlocked instead of true?

unborn cradle
#

Dont forget to do

/papi reload```
sturdy glade
#

Thanks

lapis anvil
#

Can anyone let me know if the way to register an expansion using the PAPI API has changed in 2.11.6 - 2.11.7? My code registering expansions has worked fine until I updated my dependency to 2.11.7 to support Folia. Now I get the following error:

java.lang.NoClassDefFoundError: me/clip/placeholderapi/expansion/PlaceholderExpansion```

The dependency is downloaded through maven correctly, and I know I am registering the expansions correctly, because my code was working perfectly fine up until version 2.11.5, but using 2.11.6 or 2.11.7 on paper or Folia servers cause the problem for me. Does anyone have some pointers on what might be causing this issue for me? Thanks in advance.
turbid tide
#

Is PlaceholderAPI installed on the server?

#

Or have you by any chance shaded PlaceholderAPI in your plugin?

lapis anvil
junior musk
#

though I'm not sure if PAPI even works on Folia

#

nvm it does, got confused with DeluxeMenus

#

but yeah you shouldn't shade PAPI within your own plugin

lapis anvil
#

Wonder if that might help thanks for the idea I’ll give it a go

lapis anvil
#

I figured it out, it was my fault and it was a stupid one! I needed to set join-classpath to true in my paper-plugin.yml for my PAPI dependency declaration. I guess I'm still working out the little details with the Paper API haha! Thank you guys for the help though, sorry to bother 🙏

restive nova
#

why papi hasn't updated for so long

#

Is papi 3.0 under development

balmy marten
fierce sinew
tender vaporBOT
turbid tide
#

@fierce sinew this

wide plover
#

im on paper 1.21.5 and have placeholderAPI installed and enabled on my server, it just doesn't parse, it isnt doing anything

near vessel
wide plover
near vessel
wide plover
#

no i didnt know it wass needed ill run it

wide plover
#

Is there a way to use placeholders inside of placeholders, for example my skript variable is {kills.%player%}, and the skript expansion is %skript_<variable>% so i tried %skript_kills.%player_name%% but it turns it into "N/Aplayer_name%%"

near vessel
wide plover
#

And the variable {kills.Jind} is set to 1

near vessel
#

It might not be possible like you're trying to do it

wide plover
thorny geyser
green socket
#

anyone knows how to make leaderboards with decent holograms i tried using the placeholder but it doesnt work

thorny geyser
green socket
thorny geyser
#

What do you mean?

#

What are you even trying?

green socket
#

i want to show top 10 players with the most mined blocks

thorny geyser
#

Yes

#

You need ajleaderboards decentholograms for example and placeholderapi

#

you don't need more things

green socket
#

i use fancy holograms

thorny geyser
#

I recommend decentholograms but you can do the same

green socket
#

but all the other stuff i use and i have them

#

%luckperms_group% it shows this and not the rank

thorny geyser
#

send a link to imgur because you can't upload photos

green socket
#

%ajlb_blocks_mined_1_alltime% it shows this not the players and their amoutn of blocks they mined

thorny geyser
green socket
#

i will try

near vessel
green socket
#

teach me

near vessel
near vessel
broken iron
#

how to make it %parseother_unsafe_{mmocore_party_member_1}_{player_health_rounded}% but by utils extension ?

sleek crystal
#

quick question, how do I show quests progress using quests papi in TAB plugin?

turbid tide
#

Take a look and test them using /papi parse me %placeholder% command

sleek crystal
turbid tide
sleek crystal
#

I put every placeholder in the scoreboard to see what it ouputs, all say "player is not a valid placeholder".

turbid tide
#

See if they work like that.

sleek crystal
#

yea

vital plank
#

hi! How do i make bedwars1058 placeholders work with Papi? All i get is just %bw1058_player_xp% and i should get number. i have installed on server bw1058, bedwarsproxy, placeholderapi and other plugins. every needed plugin is green when i type /pl.

agile bramble
pale scaffold
#

Hiya there,

I have used PAPI on my servers before, before today I was using the Bungee expansion with my Velocity setup to list the amount of players on the network and server (%bungee_total%, %bungee_<server>%) but I am unable to make it work on a new setup. I was wondering if this is no longer compatible or if I'm missing something.

Are there any requirements to make this expansion work and what information can I supply to make solving this issue easier. Thank you in advance!

turbid tide
final idol
#

ajlb_lb_statistic_time_since_death_1_alltime_name

statistic_time_since_death

The player in general was killed by a bug and I wonder, can I somehow restore his time from yesterday?

whole cosmos
#

I have the placeholder api version 2.11.6 and I ecloud download and reload each time but nothing works and shows up on my scoreboard and I am using proper placeholders.

turbid tide
#

You can probably manually change it, but you would have to know what the previous death time was

turbid tide
#

And an example of a placeholder that doesn't work.

tender vaporBOT
final idol
#

do you have any idea what?

turbid tide
#

I think I gave you the wrong path. Look for a folder that is called stats or statistics

final idol
#

okey see

topaz bronze
#

Hello! Do you have support for this plugin on version 1.21.4? The problem is that I installed the plugin on exactly this version and it could not connect to the network.

turbid tide
topaz bronze
tender vaporBOT
topaz bronze
topaz bronze
#

WTF

turbid tide
topaz bronze
tender vaporBOT
turbid tide
# topaz bronze that is, it can't connect to localhost?

You did not share any errors or warnings with us. All you said is that it can't connect to the network. The plugin needs to connect to the ecloud sometimes to download expansion information (or to download the expansions itself).

#

So, I assumed that it can't connect with ecloud

graceful isle
#

Sorry if its a FAQ but any 1.21.7 support or devbuild?

warm topaz
#

placeholderapi itself should already work, potentially some expansions may need updating but no reports of issues so far

graceful isle
warm topaz
#

try and see

#

i dont really know much about playerlist expansion

graceful isle
#

gotcha ill download both and give it a try

austere hawk
#

Is there a placeholder that allows me to see if a server in my network is whitelisted?

#

If so, which one is that?

novel granite
#

There's none that refer to the whitelist.json

elfin badger
#

https://github.com/PlaceholderAPI/PlaceholderAPI/wiki
TL;DR;

Is it possible to get values from environment variables/properties etc.?

desert bobcat
#

11:26:31 Warn]: [PlakeHolderapi] [Math] Espanceamento de espaço reservado: %MATH_MCMMO_XP_MINING MCMMO_XP_WOODCUTTING MCMMO_XP_EXCAVATION MCMMO_XP_HERBALISM MCMMO_XP_ACROBATICS MCMMO_XP_ALCHEMY MCMMO_XP_TAMING MCMMO_XP_REPAIR MCMMO_XP_SALVAGE MCMMO_XP_SMELTING "%
[11:26:31 Warn]: [PlakeHoldERAPI] [MATH] Causa: McMMO não é um número inteiro válido.

Comportamento esperado
11:26:31 Warn]: [PlakeHolderapi] [Math] Espanceamento de espaço reservado: %MATH_MCMMO_XP_MINING MCMMO_XP_WOODCUTTING MCMMO_XP_EXCAVATION MCMMO_XP_HERBALISM MCMMO_XP_ACROBATICS MCMMO_XP_ALCHEMY MCMMO_XP_TAMING MCMMO_XP_REPAIR MCMMO_XP_SALVAGE MCMMO_XP_SMELTING "%
[11:26:31 Warn]: [PlakeHoldERAPI] [MATH] Causa: McMMO não é um número inteiro válido.

Como reproduzir
Objetivo: PlaceHolderApi;%MATH_%MCMMO_XP_MINING%McMmo_XP_woodcutting%MCMMO_XP_EXCAVATION%MCMMO_XP_HERBALISM%MCMMO_XP_FISHS%MCMMO_XPOMXMOM_XP_XP_SWORDS%McMOMXMMOMXMOM_XP_SWORDS%McMMOP_XMMeM_XP_Words. %MCMMO_XP_ACROBATICS%MCMMO_XP_ALCHEMY%MCMMO_XP_TAMING%MCMMO_XP_REPAIR%MCMMO_XP_SALVAGE%MCMMO_XP_SMelting %%

Plug -in xltournamets

objective: PLACEHOLDERAPI;%math_{%mcmmo_xp_mining%}+{%mcmmo_xp_woodcutting%}+{%mcmmo_xp_excavation%}+{%mcmmo_xp_herbalism%}+{%mcmmo_xp_fishing%}+{%mcmmo_xp_archery%}+{%mcmmo_xp_swords%}+{%mcmmo_xp_axes%}+{%mcmmo_xp_unarmed%}+{%mcmmo_xp_acrobatics%}+{%mcmmo_xp_alchemy%}+{%mcmmo_xp_taming%}+{%mcmmo_xp_repair%}+{%mcmmo_xp_salvage%}+{%mcmmo_xp_smelting%}%

Hello friends, I'm still having trouble and haven't found a way to track my total XP from mcmmo.

Once again, I apologize for opening this ticket in the wrong section.
Can someone please help me?

cunning imp
#

Hey! I'm trying to use the Utils expansion to nest placeholders, and am running into a weird result.

 %utils_parse:1_changeoutput_equals_input:{statistic_entity_killed_by:player}_matcher:0_ifmatch:ɴᴏ ᴅᴀᴛᴀ_else:{math_{statistic_player_kills}/{statistic_entity_killed_by:player}}%

I want a placeholder that displays "no data" if %statistic_entity_killed_by:player% = 0, otherwise shows the player's KDR.

What I have works fine in cases where players' death count is greater than 0, but if it equals zero, instead of "no data" being shown, no datamath_0/0%% is returned instead. I'm not sure why the changeoutput placeholder isn't stopping at the _else: segment.

The placeholder works outside of the utils expansion.
eg. %changeoutput_equals_input:{statistic_entity_killed_by:player}_matcher:0_ifmatch:ɴᴏ ᴅᴀᴛᴀ_else:{math_{statistic_player_kills}/{statistic_entity_killed_by:player}}%. Of course, this won't parse the math expansion because it's nested too many times already.

warm topaz
warm topaz
proud mirage
#

good afternoon, I have a Javascript placeholder and when I put a custom placeholder I get a blank space but not what I did, I think this is because my server version is 1.20.4?

warm topaz
#

what placeholder are u trying to use and can u show the script

proud mirage
#

maybe you can somehow parse through ParseOther, although there's no point

proud mirage
#
function remainingTime() {
  if (!args[0]) {
    return "&cEnter time. Example: javascript_remaining_time_13:00:00";
  }
  
  var now = new Date();
  var target = new Date();
  var timeArray = args[0].split(':');
 
  target.setHours(timeArray[0]);
  target.setMinutes(timeArray[1]);
  target.setSeconds(timeArray[2]);
 
  if (target < now) {
    target.setDate(target.getDate() + 1);
  }
 
  var diff = target - now;
 
  var hours = Math.floor(diff / 3600000);
  var minutes = Math.floor((diff - (hours * 3600000)) / 60000);
  var seconds = Math.floor((diff - (hours * 3600000) - (minutes * 60000)) / 1000);
 
  return hours + " ч. " + minutes + " мин. " + seconds + " сек.";
}
 
remainingTime();
warm topaz
#

have u entered the placeholder into the javascript config?

#

along with correct file name

proud mirage
#

ah.. probably not

warm topaz
#

so u should have

  file: smth.js
proud mirage
#

a second

#

yes, it worked)

#

Thank you

desert bobcat
desert bobcat
#

objective: PLACEHOLDERAPI;%math_{mcmmo_xp_mining}+{mcmmo_xp_woodcutting}+{mcmmo_xp_excavation}+{mcmmo_xp_herbalism}+{mcmmo_xp_fishing}+{mcmmo_xp_archery}+{mcmmo_xp_swords}+{mcmmo_xp_axes}+{mcmmo_xp_unarmed}+{mcmmo_xp_acrobatics}+{mcmmo_xp_alchemy}+{mcmmo_xp_taming}+{mcmmo_xp_repair}+{mcmmo_xp_salvage}+{mcmmo_xp_smelting}%

Console
[17:02:08 WARN]: [PlaceholderAPI] [math] Invalid Placeholder detected!
[17:02:08 WARN]: [PlaceholderAPI] [math] Placeholder: %math_{mcmmo_xp_mining}+{mcmmo_xp_woodcutting}+{mcmmo_xp_excavation}+{mcmmo_xp_herbalism}+{mcmmo_xp_fishing}+{mcmmo_xp_archery}+{mcmmo_xp_swords}+{mcmmo_xp_axes}+{mcmmo_xp_unarmed}+{mcmmo_xp_acrobatics}+{mcmmo_xp_alchemy}+{mcmmo_xp_taming}+{mcmmo_xp_repair}+{mcmmo_xp_salvage}+{mcmmo_xp_smelting}%
[17:02:08 WARN]: [PlaceholderAPI] [math] Cause: '++++++++++++++' is not a valid Math expression.

even with your fix it keeps showing this in the console above and it's also not counting the xp

warm topaz
#

what does /papi parse me %mcmmo_xp_mining% return

warm topaz
desert bobcat
#

the problem is that it does not count the Mcmmo XP, it says that there is no extension

warm topaz
#

have u tried using the parsing the whole command through /papi parse me also?

desert bobcat
#

yes

#

the problem is that I can't send you a photo here

desert bobcat
warm topaz
#

yes

#

now run the whole placeholder through the command

#

/papi parse me %math_{mcmmo_xp_mining}+{mcmmo_xp_woodcutting}+{mcmmo_xp_excavation}+{mcmmo_xp_herbalism}+{mcmmo_xp_fishing}+{mcmmo_xp_archery}+{mcmmo_xp_swords}+{mcmmo_xp_axes}+{mcmmo_xp_unarmed}+{mcmmo_xp_acrobatics}+{mcmmo_xp_alchemy}+{mcmmo_xp_taming}+{mcmmo_xp_repair}+{mcmmo_xp_salvage}+{mcmmo_xp_smelting}%

warm topaz
#

strange

#

i literally copied and pasted the placeholder u put in here and its fine

#

only difference i had latest dev build - but that shouldnt really matter

cunning imp
#

Ah, really? I'd upload images if I could, but I'm not really sure how else to test this.

warm topaz
#

can u try without the UTF characters / font in "no data"? and just try normal chars

desert bobcat
#

/papi parse me %math_{mcmmo_xp_mining}+{mcmmo_xp_woodcutting}+{mcmmo_xp_excavation}+{mcmmo_xp_herbalism}+{mcmmo_xp_fishing}+{mcmmo_xp_archery}+{mcmmo_xp_swords}+{mcmmo_xp_axes}+{mcmmo_xp_unarmed}+{mcmmo_xp_acrobatics}+{mcmmo_xp_alchemy}+{mcmmo_xp_taming}+{

It only goes this far, can it be via console?

cunning imp
#

Like I said, %utils_parse:1_changeoutput_equals_input:{statistic_entity_killed_by:player}_matcher:0_ifmatch:ɴᴏ ᴅᴀᴛᴀ_else:{math_{statistic_player_kills}/{statistic_entity_killed_by:player}}% works so long as {statistic_entity_killed_by:player} returns anything greater than 0, but if it is 0 I get the no datamath_0/0%% thing.

Same thing happens if I use regular text instad of the tiny text.

#

Interestingly, the no datamath_0/0%% thing does NOT happen if I use

%utils_parse:1_changeoutput_equals_input:0_matcher:0_ifmatch:ɴᴏ ᴅᴀᴛᴀ_else:{math_{statistic_player_kills}/{statistic_entity_killed_by:player}}%

(replacing the comparison placeholder [{statistic_entity_killed_by:player}] with 0)

desert bobcat
warm topaz
warm topaz
desert bobcat
#

ok

cunning imp
desert bobcat
warm topaz
#

add the % for the end still

desert bobcat
warm topaz
#

"main" placeholders requires %%
inner placeholders are just {}

desert bobcat
warm topaz
#

ok so ur placeholders works, i assume u have 0 woodcutting XP, and 0 excavation XP

desert bobcat
warm topaz
#

that means the plugin u are using this placeholder in is not passing your Player argument, and thats where ur issue comes from as mcmmo is returning blank when there is no player

#

what plugin are u trying to use the placeholder in?

desert bobcat
warm topaz
#

so this plugin is not giving a player argument to the placeholder
some plugins intentionally do this, depending on if they can

#

i dont know anything about this plugin so I'm not sure if its possible, but I would try to contact the developer to see
the placeholder itself is working fine

desert bobcat
#

Do you think it has something to do with mcmmo?

warm topaz
#

the expansion works

#

everything on placeholderapi side works

desert bobcat
#

[18:01:02 WARN]: [PlaceholderAPI] [math] Invalid Placeholder detected!
[18:01:02 WARN]: [PlaceholderAPI] [math] Placeholder: %math_{mcmmo_xp_mining}+{mcmmo_xp_woodcutting}+{mcmmo_xp_excavation}+{mcmmo_xp_herbalism}+{mcmmo_xp_fishing}+{mcmmo_xp_archery}+{mcmmo_xp_swords}+{mcmmo_xp_axes}+{mcmmo_xp_unarmed}+{mcmmo_xp_acrobatics}+{mcmmo_xp_alchemy}+{mcmmo_xp_taming}+{mcmmo_xp_repair}+{mcmmo_xp_salvage}+{mcmmo_xp_smelting}%
[18:01:02 WARN]: [PlaceholderAPI] [math] Cause: '++++++++++++++' is not a valid Math expression.
console This message keeps uploading

warm topaz
#

because that is how the plugin is parsing the placeholder

#

it is parsing without a player

desert bobcat
#

But is it normal? There are times when it counts, then disappears and counts again and then stops like that all the time.]

light ginkgo
#

I'm trying to add the deluxetags placeholder to the essential chat and it's not detecting it. Does anyone know why?

warm topaz
warm topaz
desert bobcat
light ginkgo
cunning imp
# cunning imp Interestingly, the `no datamath_0/0%%` thing does NOT happen if I use ``` %util...

Using this placeholder as an example, I'm getting different outputs depending on who I'm running the placeholder for:

/papi parse me %utils_parse:1_changeoutput_equals_input:0_matcher:0_ifmatch:No data_else:{math_{statistic_player_kills}/{statistic_entity_killed_by:player}}% returns "No data" as expected. However...

/papi parse shoguul %utils_parse:1_changeoutput_equals_input:0_matcher:0_ifmatch:No data_else:{math_{statistic_player_kills}/{statistic_entity_killed_by:player}}% returns No datamath_0/0%%.

Nothing has changed between the two placeholders -- just the player it is being parsed for. I'm not sure why there would be a difference though, as the input string "0" always matches the matching condition.

#

I can just rewrite it as %utils_parse:1_math_{statistic_player_kills}/{changeoutput_equals_input:{statistic_entity_killed_by:player}_matcher:0_ifmatch:1_else:{statistic_entity_killed_by:player}}% and it works both ways. I guess there was just something funky with the way it was formatted previously

tender vaporBOT
desert bobcat
#

I have no idea
far as I know it passes the player

warm topaz
#

this would make the most sense as you said it works sometimes, and sometimes doesnt

desert bobcat
#

I sent it to him here, thank you, sorry for the ping

white sphinx
#

Hey can anyone link me with the papi java docs?

#

i wanted to know what's the newer way to unregister placeholders on disable (is deprecated)

warm topaz
#

what is deprecated?

#

this will automatically be ran upon server shutdown btw

vague flame
#

Hi there! I use the %vault_eco_balance_formatted% placeholder for some things on server. My problem is that the balance is displayed very rounded. For example, if the player has 11 million and 500 thousand, it simply shows 11M, but I want it to display 11.5M.

white sphinx
tender vaporBOT
white sphinx
#

whoops

halcyon palm
#

hello so i have a question cuz my place holders dont work cuz im trying to get the balance from essentialsx to simplescore and it does not want to work and also im trying to show the rank in simplescore also does not work can someone help me please

vague flame
#

Hi there! I use the %vault_eco_balance_formatted% placeholder for some things on server. My problem is that the balance is displayed very rounded. For example, if the player has 11 million and 500 thousand, it simply shows 11M, but I want it to display 11.5M.

turbid tide
turbid tide
halcyon palm
#

well i also have vault and it does not whana work for me the vault eco balance

#

i just fixed the one for luck perms its just the vault placeholders

turbid tide
#

Have you tested the placeholders using the /papi parse command?

#

Do they work that way?

halcyon palm
#

this is the papi dump

turbid tide
#

You do not have the Vault expansion

halcyon palm
#

oh?

turbid tide
#

Execute /papi ecloud download vault and after that /papi reload

halcyon palm
#

its also require a version what version do i need?

turbid tide
#

Version is optional. If you don't input anything it will take the latest.

#

Which is what you should use

halcyon palm
#

omg it worked thank you so much!!

tender vaporBOT
turbid tide
turbid tide
vague flame
#

Yeah, there it also is shown as rounded

#

I think, I have to configure this somewhere

#

sorry for my bad english

turbid tide
#

I've just tested this, with exactly 1_500_000, it shows the decimal. But with the amount you shown in the photo, it does not. I'll look into it.

vague flame
#

hmm

#

Are you using essentialsx?

turbid tide
#

Yeah. This is a bug in the Vault expansion. I'm fixing it right now and I'll send you to test.

vague flame
#

That is very very nice!

vague flame
#

I think, it rounds only "small" balances like millions

#

Anyway I also want to disable that

turbid tide
#

@vague flame, feel free to use this.

To update:

  1. Go to plugins/PlaceholderAPI/expansions/ and delete Expansion-vault.jar.
  2. Add this Expansion-Vault-1.8.4-dev.jar to the same folder.
  3. Execute /papi reload.

It should be an instant update and you should see this fixed.

turbid tide
vague flame
#

You are the best! Thank you very muc

turbid tide
vague flame
#

Now it works perfectly!

vague flame
#

Can I also make it display like that: 49.82 ?

turbid tide
vague flame
#

Oh okay, I saw it on antother Server, but then it is probably a different Plugin

turbid tide
vague flame
#

Could I use Skript for that?

#

Some Skripts I Designed myself can also Display Balance Like that

turbid tide
#

You need something to let you take the value from a placeholder (%vault_eco_balance_fixed%), format it in some way (do math and string operations on it) and then return it using a new placeholder.

#

If Skript can do that, then yes you can use Skript.

outer summit
#

@turbid tide Can anyone know how can i makkke a toggle menu example if I click on A example item suppose Stone it convert into end stone and it lore change to hello and if I click again it return backk to stone and lore change to hi and I need thhis in 1 menu

azure ravine
#

hi, i need to create an account on ecloud cuz i wanna upload a new extension

#

or is there another way?

halcyon palm
#

hey i cant seem to figure ourt the placeholder for playtime i think its in essentiels but i cant find it can someone help me

azure ravine
turbid tide
#

These are stats tracked by the server

halcyon palm
#

ohh oke great thanks

turbid tide
torpid pivot
#

How do you do Euclidean division with the math module?
%math_{zmenu_input}//9% dosen't work :/

turbid tide
torpid pivot
#

ok thx

turbid tide
azure ravine
#

alr, thanks

#

its my first time making an expansion at all so if somethings wrong lmk

slim ocean
#

Hello, good afternoon. Excuse me... Could you help me figure out how to remove decimals from this math formula? (I want at least 2 decimal places to be seen, that is, at a percentage level of 1.00% or even better, 1%.)&a%math_round(({mythic_archetype_exp_CLASS}/{mythic_archetype_exp_goal_CLASS})*100, 2)%&

azure ravine
#

add the _0 after %math basically

#

that number means how many decimals you want

slim ocean
#

Omg...

#

Thanks you so much!

azure ravine
#

yep np

random rampart
#

can someone help me?

#
  • content: '#FFFF00#&l1 &7%essentials_baltop_player_1% &8| #00ff00$%essentials_baltop_balance_fixed_1%'
    height: 0.3
    • content: '#FFFF00#&l2 &7%essentials_baltop_player_2% &8| #00ff00$%essentials_baltop_balance_fixed_2%'
      height: 0.3
    • content: '#FFFF00#&l3 &7%essentials_baltop_player_3% &8| #00ff00$%essentials_baltop_balance_fixed_3%'
      height: 0.3
    • content: '#FFFF00#&l4 &7%essentials_baltop_player_4% &8| #00ff00$%essentials_baltop_balance_fixed_4%'
      height: 0.3
    • content: '#FFFF00#&l5 &7%essentials_baltop_player_5% &8| #00ff00$%essentials_baltop_balance_fixed_5%'
#

for some reason

#

first place doesnt show up in my leaderboard

#

why cant i send screenshots in here?

tender vaporBOT
random rampart
#

ohh ok

#

here

#

developers it would be nice if you guys can help me out!

#

i asked essentials for help and they said "Ask papi support. We don't maintain that placeholder"

turbid tide
turbid tide
random rampart
#

?

turbid tide
#

or if the player is op, set that permission as false

random rampart
#

i dont have that as my permission

#

and ther are not oped

random rampart
#

???

turbid tide
tender vaporBOT
random rampart
#

if i also duplicate the 1st place it also shows the 2nd place person twice

#

even if i make myself 1st my name is gone in the baltop leaderboard

#

and the original 1st place is shown now

#

but its weird

#

1st place just disappears

#

can you help me figure it out?

gilded marlin
warm topaz
#

looks like u dont have a supported economy plugin / or permissions plugin

#

vault is just the provider

spark wigeon
#

hey hey,

im trying to parse an value out of an nbtstring,
i already can read the lore of the item, also the nbtstrings, but cant validate if number x is greater than y

#

is there any workaround or knows anyone an way?

torn atlas
#

hi so i noticed that some of the EssentialsX placeholder dont work anymore such as %essentials_nickname%

sacred thunder
sacred thunder
#

i'm 99% sure it's not a dependency issue

lucid leaf
#

Hi, I want to write a plugin with a placeholder on paper 1.21.4 on Intellij idea, but I can't add:

<dependency>
    <groupId>me.clip</groupId>
    <artifactId>placeholderapi</artifactId>
    <version>2.11.4</version>
    <scope>provided</scope>
</dependency>

Almost everything is red. Please help me.

lucid leaf
#

To be honest, I don't understand why to reboot

unborn cradle
lucid leaf
#

I'm getting the error Cloud not find artifact 'me.clip:plasholderapi.pom:2.11.'

lucid leaf
lucid leaf
#

I'm too dumb, now I have 3 errors at once here is one of them
Could not find artifact me.clip:placeholderapi:pom:2.11.5 in papermc-repo (https://repo.papermc.io/repository/maven-public/)

lucid leaf
lucid leaf
#

@idle coral help pls

tender vaporBOT
unborn cradle
#

@Staff random images, Possible scam

lucid leaf
#

I'm too dumb, now I have 3 errors at once here is one of them help mee
Could not find artifact me.clip:placeholderapi:pom:2.11.5 in papermc-repo (https://repo.papermc.io/repository/maven-public/)

vital veldt
#

What's a place holder to automatically display each peoples time's timezone or if not then the current date in their country

tender vaporBOT
cosmic hare
#

Hi, what is the different between onRequest and onPlaceholderRequest ?

turbid tide
upper violet
#

if i was to parse a placeholder and it returns back blank what does that mean usually

junior musk
#

depends on the placeholder

#

and depends on what you refer as "blank"
if it returns itself, it means the placeholder doesn't exist or its expansion isn't loaded
if it's an empty string/line/text, then the placeholder just didn't return anything

desert bobcat
#

Good morning my friends, can anyone tell me how to create a placeholder API where I can accumulate all the XP experience that the player can get with the mcmmo skills?

wide wasp
#

I'm migrating over from a custom translations implementation to the adventure MiniMessage translator, the problem is that I might have to void the PlaceholderAPI integration I have (all the messages I use are translated). The issue is that everything in adventure uses components, where I previously inserted the placeholder API strings before deserializing the translated mini message

Any idea on how to proceed with this, or should I just void PlaceholderAPI integration?

junior musk
wide wasp
# junior musk I'm unsure what the issue with PAPI is, are you trying to pass placeholders as a...

I just want any placeholder from other plugins to be available to use in my translated messages, for say this is how I'm planning to use the adventure translator.

audience.sendMessage(Component.translatable(translationKey, Argument.tagResolver(resolvers)));

And then the server automatically uses a GlobalTranslator to convert that message to the correct locale, which supports translations added by plugins.

I'm aiming to inject all the PlaceholderAPI placeholders into the unformated translation. Maybe that's not necessary to do, but like the translations are exposed to the users in multiple properties files

junior musk
#

oh the translation contains the PAPI placeholders, alright I misunderstood

#

I feel like there should be a library to parse PAPI placeholders in components, not entirely sure, I'll check

wide wasp
#

There's MiniPlaceholders, which just uses tag resolvers

#

You can also technically deserialize -> serialize -> inject placeholders -> deserialize

junior musk
#

I just remembered how MC works, and I don't think that's possible

#

only the translatable key is sent to the client, and the client replaces it with the correct string

#

but you can't parse PAPI placeholders after the player has the translated string, so I doubt that's possible

#

you should rely on arguments instead, forwarding components with the placeholders parsed into the translatable component's arguments

#

that should work

wide wasp
#

Maybe I can actually make a custom tag resolver, like this

my.translation.key=Hello <placeholderapi:[my-placeholder-key]>!

Code:

TagResolver.resolver("placeholderapi", ((argumentQueue, context) -> {
            String placeholder = argumentQueue.popOr("missing_placeholder").value();
            return Tag.selfClosingInserting(Component.text(PlaceholderAPI.setPlaceholders(player, "%" + placeholder + "%")));
        }));
wide wasp
#

Kezz says there will be no limitations on it, so I will trust that

junior musk
#

I don't use translatable components that much so I could be wrong, Adventure's dev are most likely more aware of how it works yeah

#

gl with that

wide wasp
#

Thanks 🙏

turbid tide
#

The main difference from yours is that it allows both closing and inserting components (with an optional argument like so: <papi:closing:MY_PLACEHOLDER>), and it also supports : inside placeholders. In your case if the placeholder contains :, it will only attempt to parse whatever is before it.

wide wasp
#

Thanks! I will see what I can copy from that!

turbid tide
wide wasp
#

Alright 👍

torn vapor
#

Hi, I'm having a problem with the plugin. When I restart my server, or there are daily restarts, the placeholders get broken and don't work until I use /papi reload. How do I fix it? 🙁

#

any idea how to solve?? 😭

turbid tide
sacred thunder
vital plank
#

Hi, when i use papi reload command i get only this and every expansions turn into e.g. %bungee_total% so they doesn't work, console shows only this:
[01:08:47 INFO]: [PlaceholderAPI] Placeholder expansion registration initializing...
[01:08:47 INFO]: [PlaceholderAPI] Fetching available expansion information...

turbid tide
#

Add PlaceholderAPI as a depend in plugin.yml

#

Also, make sure you don't shade PlaceholderAPI inside your plugin

#

@sacred thunder

turbid tide
sacred thunder
turbid tide
sacred thunder
#

No i'm registering a placeholder extension with it.

sacred thunder
turbid tide
sacred thunder
#

Oh nevermind i'm upid. The previous thing didn't fix the problem it's still giving that error.

sacred thunder
turbid tide
#

Can I see your pom file?

#

Or the file for whatever build tool you use?

sacred thunder
#

i don't use that i just added the dependency in my intellij project structure and it worked :3

turbid tide
#

Ok, can you use a decompiler such as recaf and make sure the PlaceholderAPI code is not present in your jar file?

sacred thunder
#

oh yeah there is

#

it's evil

vital plank
tender vaporBOT
vital plank
#

oh sorry

tender vaporBOT
rough lake
manic badge
#

try checking firewall settings

rapid helm
#

help, luckperms and carbon chat are running on the folia 1.21.8 core, but they don't see the placeholders. all plugins seem to be running successfully.

mental notch
#

hey guys. What's the correct way to use the CheckItem expansion now with the new item components stuff? Using latest but I'm facing errors whenever I try to grab the nbt strings of an item

cosmic fable
#

Question: How do I use a space inside a placeholder inside a placeholder using the math expansion and the playerstats plugin + expansion

Example; /papi parse me %math_{%playerstats_ only:number, me, deaths%} + 1%

If I use /papi parse me %playerstats_ only:number, me, deaths% it returns the 'deaths' statistic.

What I think is going wrong here is the fact that you can't use spaces in a placeholder inside a placeholder...

What I am trying to achieve at the end it this expression:
/papi parse me %math_{%playerstats_ only:number, me, kills%} / {%playerstats_ only:number, me, deaths%}%
This will calculate the kill death ratio.

If there is a different plugin and expression that gives you a kdr statistic please let me know, I'm struggling to figure this all out

Thanks

jovial cargo
#

/papi parse me %math_{playerstats_ only:number, me, kills} / {playerstats_ only:number, me, deaths}%

#

Thats how it should look

mental notch
#

you probably meant to tag the other guy

jovial cargo
#

Oops, I cooked you

jovial cargo
mental notch
#

can't seem to pick up an nbt string properly in 1.21.4

#

my item got;

[22:00:52 INFO]: xRebelD has the following entity data: {id: "minecraft:paper", count: 1, components: {"minecraft:custom_name": '{"color":"white","extra":[{"extra":[{"color":"#6e6e6e","text":"B"},{"color":"#7a7a7a","text":"e"},{"color":"#868686","text":"e"},{"color":"#939393","text":"t"},{"color":"#9f9f9f","text":"l"},{"color":"#ababab","text":"e"},{"color":"#b7b7b7","text":" "},{"color":"#c4c4c4","text":"J"},{"color":"#d0d0d0","text":"a"},{"color":"#dcdcdc","text":"r"}],"text":""}],"italic":false,"text":""}', "minecraft:custom_model_data": {floats: [901501.0f]}, "minecraft:custom_data": {PublicBukkitValues: {"mythicmobs:type": "beetle_jar", "mythicmobs:prevent_crafting_with": 1b, "mythicmobs:prevent_smithing_with": 1b, "mythicmobs:prevent_repairing_with": 1b}}}}

#

I need to pick up the mythicmobs:type beetle_jar

#

but I have no idea what the proper format is to do so using CheckItem in 1.21.4+

#

given the changes to the item component stuff

unborn cradle
mental notch
#

%checkitem_amount_mat:paper,nbtstrings:mythicmobs:type:beetle_jar,inhand:main%

#

well preferably they'd have it in their hand but I can deal with inventory as well

#

I'm certain that I'm doing something wrong but I'm so tired that I can't figure my way out of this loop

unborn cradle
#

Try that

mental notch
#

returns 0 on the item unfortunately

#

same without the inhand attribute

unborn cradle
#

%checkitem_amount_mat:paper,nbtstrings:PublicBukkitValues..mythicmobs:type=beetle_jar,inhand:main%

#

Try this

mental notch
#

WORKS! amazing

#

thank you so much

#

❤️

unborn cradle
#

I am de goat

#

Sorry, it took me a minute. Had to actually read the docs

cosmic fable
#

Anyone know a placeholder that displays coords?

cosmic fable
jovial cargo
cosmic fable
#

by a player not the whole server*

cosmic fable
# jovial cargo statistics

I used this expression for Time Played:

Time Played: Days: %statistic_days_played% Hours: %math_0_{statistic_hours_played} - {statistic_days_played} * 24% Mins: %math_0_{statistic_minutes_played} - ({statistic_days_played} * 1440) - (({statistic_hours_played} - ({statistic_days_played} * 24)) * 60)%

Days: %statistic_days_played%
Hours: %math_0_{statistic_hours_played} - {statistic_days_played} * 24%
Mins: %math_0_{statistic_minutes_played} - ({statistic_days_played} * 1440) - (({statistic_hours_played} - ({statistic_days_played} * 24)) * 60)%

if it works it works...

#

I couldn't get

%statistic_hours_played_remaining%
%statistic_minutes_played_remaining%

to work so yeah

#

I was too dumb to figure that out I just got an error stating "uknown statistic" when I parsed it

#

/papi parse me %statistic_minutes_played_remaining%

cosmic fable
turbid tide
#

So for example, if you've played 1 day 3 hours,

%statistic_time_played:hours% would return 3
%statistic_time_played:days% would return 1

honest nacelle
#

Hey is it possible that i create a placeholder manually in the file? Without creating my own expansion

warm topaz
#

in what file?

#

u can use javascript expansion to create ur own if u dont wanna do it properly

honest nacelle
# warm topaz in what file?

config.yml - i tried editing server_name to smt like %player_name% just to see if it works, but that doesn't work

#

there is also a config expansion but i cannot get it to work

lethal siren
#

Would using like a bedrock getUUid be possible, without any more dependencies

#

Like I'd most likely have to use floodgates api right]

restive mica
#

Does Statistic have placeholders responsible for (“shot by player”) and “thrown into the abyss by player”?

cosmic fable
turbid tide
quick cipher
#

I'm trying to use CMI placeholders inside a deluxemenu as a requirement but the placeholder seems to not work inside the deluxemenus. type: string equals ignorecase input: '%cmi_user_kit_hasaccess_Centaur%' output: 'True' - It always returns false even though it returns true for myself if I parse it through PAPI.

#

I tried to do a workaround by doing type: has permission but that doesn't even work, even though I have the direct permission.

frosty reef
#

@sharp jay

tender vaporBOT
frosty reef
#

...

#

@carmine veldt

carmine veldt
frosty reef
#

just some spam accounts targetting me

sharp jay
frosty reef
#

the ping was done before that and yeah i saw

sharp jay
half briar
quick cipher
#

nothing shows

#

wait string contains

#

let me try

prime zodiac
#

hey guys, how to use the checkitem expansion as when parsed gives me zero of the item.

say I have an item with custom name and lore to differentiate it with other items of the same material?

prime zodiac
#

say the name is common iron ore with hex code colors, with custom lore too

languid mortar
#

Can anyone help me solve this? Yesterday it was normal and today, when I tried to start it, this appeared and I also can't open the website api.extendedclip.com (with Opera's VPN, the website opens normally, but without it, it doesn't open).
https://prnt.sc/JRYaHzWBztQX

plush loom
#

is the PlayerTime expansion broken? Tried both manually installing it into the expansions folder and using /papi ecloud download, but its not downloading nor does it work

turbid tide
#

Not sure if that plugin works anymore.

plush loom
#

o

#

Thanks mate.

manic coyote
#

is it possible to have %player_health%'s decimal to only show .5? so like its either 20 or ##.5

#

i already tried %math_1:round_{player_health}% but it shows .1 to .4 and .6 to .9

#

i dont think its possible but if anyone is curious for what i went with its %utils_parse_formatter_text_replace_.0__{math_1:round_{player_health}}%

turbid tide
#

But I can't see a way to do it with just math expansion

manic coyote
#

thanks for trying to help tho

turbid tide
#

It shouldn't be that hard. ChatGPT will probably give something functioning.

manic coyote
#

i see, thanks

turbid tide
#

I guess I can even try to give you the code rn. 1 sec

manic coyote
turbid tide
#
function get_rounded_health() {
  var health = parseFloat("%player_health%");
  if (isNaN(health)) {
      return "0";
  }
  var rounded = Math.round(health * 2) / 2;
  return (rounded % 1 === 0) ? rounded.toString().split('.')[0] : rounded.toFixed(1);
}

get_rounded_health()
#

This would be the code

manic coyote
#

like how do i use it

#

sorry if I’m asking these random ahhh questions

turbid tide
#

execute /papi reload

manic coyote
#

alr tysm

#

appreciate the response

turbid tide
#

There's a bit more. Just had to remind myself

#

After reload, go to plugins/PlaceholderAPI/javascripts/ and create a new file. Name it something like rounded_player_health.js

#

inside the file, place the code I sent above

#

Then in plugins/PlaceholderAPI/javascript_placeholders.yml add the following:

rounded_player_health:
  file: rounded_player_health.js

And then simply use %javascript_rounded_player_health% wherever you want to see the rounded health

manic coyote
#

thank you so much

#

🐐

#

appreciate it!

sacred thunder
reef sparrow
#

sorry if this has been asked a million times but, what's the score on latest dev build working on 1.21.8? (I did use the search bar above to try find the answer first btw)

sharp ledge
#

Ditto to the above comment sorry for asking twice, I see placeholderAPI 2.11.6 has been on 1.20.6 support for over a year just need to know if anyone has used this version on 1.21.7/1.21.8 and if it is supported there. Currently run the 2.11.6 build on my 1.21.4 server with no issue!

half briar
sacred thunder
turbid tide
# sacred thunder Don't trust them it isn't supported

PlaceholderAPI is a very simple plugin that very rarely breaks between versions. I have personally used it in 1.21, 1.21.4 and 1.21.8. Expansions are another story. Some are very simple as well so they'll work just fine, but some make use of stuff that changes between versions. And those expansions need updating

reef sparrow
turbid tide
#

the only changes should be folia support

sacred thunder
turbid tide
sacred thunder
#

The same exact error i posted earlier

tender vaporBOT
turbid tide
turbid tide
sacred thunder
#

In idea i do Build > Build Artifacts > Build

turbid tide
#

So you're still building it the old way. If you use maven, you need to use the mvn package command

sacred thunder
turbid tide
sacred thunder
#

ok it worked thanks!!

#

i have no idea why it was doing that lol

turbid tide
#

which did not care at all for your pom.xml file

wicked stratus
#

hello 👋 why is math telling me that / and * arent valid math expressions?

junior musk
#

send the whole placeholder you tried to use

wicked stratus
#

"%math_{parkour_current_checkpoint}/{parkour_current_course_checkpoints}*100%"
TAB Plugin Bossbar progress

#

i mean thats the example they put on the wiki for bossbar configuration

junior musk
#

try adding 0_ like so %math_0_...

wicked stratus
#

tried..same output

junior musk
#

send the error in console

wicked stratus
#

i cant add pictures here

tender vaporBOT
wicked stratus
#
[18:59:35 WARN]: [PlaceholderAPI] [math] Placeholder: %math_{parkour_current_checkpoint}/{parkour_current_course_checkpoints}*100%
[18:59:35 WARN]: [PlaceholderAPI] [math] Cause: '/*100' is not a valid Math expression.```
junior musk
#

you can copy paste it too

#

both your placeholders returned nothing

wicked stratus
#

but it works when i am in parkour

junior musk
#

that explains

#

I'm in the train rn but I'll get you something in 10min

wicked stratus
#

but when im in parkour it also puts out the error msg

wicked stratus
junior musk
#

/papi ecloud download Utils
/papi reload
%math_0_{utils_default:0_parkour_current_checkpoint}/{utils_default:1_parkour_current_course_checkpoints}*100%

#

sorry, took me a little longer

wicked stratus
#

lemme try

#

it stopped but ruined my kitpvp placeholders xD

junior musk
#

how so ?

wicked stratus
#

downloaded, reloaded papi, inserted in tab, reloaded tab, kitpvp placeholders no value

#

before the utils thingi they gave a normal value in scoreboard

#

btw the display condition are 2 separate worlds and the checkpoiints are as bossbar and kitpvp are as scoreboard, everything else like towny, vault, pvpmanager works fine

wicked stratus
#

[20:31:06 WARN]: [PlaceholderAPI] Cannot load expansion parkour due to an unknown issue.

found the error message

bold chasm
#

RNG, ExpiryTime, CheckItem, and Math are not working. What should I do?

paper canyon
#

Hi, I've never had this issue before now, but when I use %Advancements_completedAmount%, I get an odd number.
When I had 3 advancements, it came out as 33, and later on with more advancements, its just even more odd numbers.

Any clue what could cause this?

turbid tide
wicked stratus
empty salmon
#

Heya Congrats on 10 years,

#

I get this error, not sure what it is due to [14:18:04 WARN]: [PlaceholderAPI] Failed to download expansion information

#

I'm not sure what is downloading it, I cleared the ecloud cache and it is not in the installed list

turbid tide
#

maybe you can ask them (matahombress is their tag)

tender vaporBOT
turbid tide
#

@empty salmon this might be related to your issue this

empty salmon
#

There isn't an expansion called information

#

All other expansions are downloaded

turbid tide
empty salmon
#

Hm

#

I don't think it's blocked, it's my dedi

#

And I can download other stuff

#

As in other expansions

uncut matrix
#

I also have this issue ^

Started happening a few days ago, we are also running our own dedi and have not blocked the connection

#

And on this server I only have spark extension enabled, so can it be related to the expansion itself maybe?

turbid tide
#

Could you both send a full startup log please?

#

One that contains the warning

spare dagger
#

Hi, only me don't work placeholder api in 1.21.8?

uncut matrix
steel obsidian
#

I am making a profile menu that lets a player view some info about himself, like blocks he broke kills and death etc, But I want the player to be able to view other players, how can I let the placeholders parse for the other person instead of player who issued a command

turbid tide
#

it lets you parse placeholders for targets

#

based on their username or UUID

steel obsidian
tender vaporBOT
normal linden
#

Hello everyone, how can I use this variable to separate the numbers by a , and not a . %vault_eco_balance_commas%

gray tartan
#

HELP...!
Cant install&register papi extentions
Use PlaceholderAPI v.2.11.6
1.21.8 Papere

I've tried installing some extensions, but some can and can't

[07:42:35 INFO]: Lapius7 issued server command: /papi reload
[07:42:35 INFO]: [PlaceholderAPI] Placeholder expansion registration initializing...
[07:42:35 INFO]: [PlaceholderAPI] Fetching available expansion information...
[07:42:35 INFO]: [PlaceholderAPI] Successfully registered external expansion: server [2.7.3]
[07:42:35 INFO]: [PlaceholderAPI] Successfully registered external expansion: statistic [2.0.2]
[07:42:35 WARN]: [PlaceholderAPI] Cannot load expansion playerstats due to a missing plugin: PlayerStats
[07:42:35 INFO]: [PlaceholderAPI] Successfully registered external expansion: player [2.0.8]
[07:42:35 INFO]: [PlaceholderAPI] Successfully registered external expansion: rng [1.4.0]
[07:42:35 WARN]: [PlaceholderAPI] Cannot load expansion prisonmines due to a missing plugin: PrisonMines
[07:42:35 WARN]: [PlaceholderAPI] Cannot load expansion playertime due to a missing plugin: PlayerTime
turbid tide
#

Cannot load expansion playertime due to a missing plugin: PlayerTime

#

it says right there why it doesn't work

#

some expansion require you to have some plugins

#

and you don't have them

mortal knoll
#

Hello, does PAPI work with MiniMessage ?

tender vaporBOT
gray tartan
gray tartan
turbid tide
#

Some expansions require other plugins to work

#

Expansion playertime requires plugin PlayerTime to work

gray tartan
#

set
・plugins/PlaceholderAPI/expansions/playertimexpansion-1.0-SNAPSHOT_utFT5p3.jar
・plugins/PlayTime-3.6.jar

Commands such as "/playtime:playtime top" are now usable, but are not recognized by Placeholder.

hybrid palm
#

whats the placeholders for velocity? nothing in the wiki

#

i need total online players

turbid tide
gray tartan
#

cant register

turbid tide
turbid tide
tender vaporBOT
turbid tide
#

@hybrid palm just make sure, in velocity.toml, bungee messaging is enabled for the expansion to work

gray tartan
#

?paste

tender vaporBOT
turbid tide
sharp jay
#

@gray tartan whats that link?

gray tartan
#

Ok. Can you please send the full startup log of your server?

I was asked to show the server startup log.

turbid tide
#

yeah @sharp jay is just stupid. I saw it its fine

gray tartan
#

ok

turbid tide
gray tartan
#

Maybe it was a different plugin?

turbid tide
#

yeah, the one I sent is what you need for the expansion you're trying to use

gray tartan
#

ok try it

#

thx It's been installed! THX
By the way, if I want to display the time a player has played as "21 hours 15 minutes 35 seconds", what extension do you think would be good?

gray tartan
#

THX Support Blitz

cursive pendant
#

how do i unreigster placeholders on version 2.10.6

#

is that even possible

sharp bloom
#

Is there a placeholder that returns how much damage an item has taken? (durability)

#

i see only a %player_item_in_hand_durability% but that returns the max durability of the item, i was wondering if there is something that is the opposite of that

weak wasp
#

Will place a minus infront of it but should output the exact durability lost.

#

Obviously, replace the number with the exact durability of the held item.

sharp bloom
#

SCshocked great option, i already coded a placeholder in my utils plugin so its gucci

polar bronze
#

question, I downloaded papi, 2.11.6 but it says its not marked as supporting folia?

#

im on foilia 1.21.6

turbid tide
polar bronze
#

Do you have link?

polar bronze
#

thanks!

silk totem
#

Hello
is the javascript from ecloud (2.1.3) latest one? there is no more later one?
I remember there was before on discord some releases, like beta or something, i don't remember because of what

turbid tide
sudden jungle
#

Additional Error Info: Warning: PlaceholderAPI from wrong thread, blocked. Inform the developer of whatever plugin tried to read Placeholder data that it is forbidden to do so async. You can use config option 'Scripts.Economy.Pass async to main thread' to enable dangerous access.
Additional Error Info: Internal exception was thrown!

turbid tide
#

Another plugin might be mentioned above or under this error?

tender jacinth
#

I having problem with papi

#

...

#

Sometime it not work

late turtle
#

im having an issue where papi isnt loading in 1.21.4

#
[01:13:21 ERROR]: Error executing task on Server
java.util.NoSuchElementException: No value present
        at java.base/java.util.Optional.orElseThrow(Optional.java:377) ~[?:?]
        at io.papermc.paper.command.brigadier.MessageComponentSerializer.message(MessageComponentSerializer.java:23) ~[paper-api-1.21.4-R0.1-SNAPSHOT.jar:1.21.4-232-12d8fe0]
        at net.minecraft.commands.Commands.finishParsing(Commands.java:404) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.commands.Commands.performCommand(Commands.java:353) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.commands.Commands.performCommand(Commands.java:347) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.commands.Commands.performCommand(Commands.java:341) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.performUnsignedChatCommand(ServerGamePacketListenerImpl.java:2215) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$11(ServerGamePacketListenerImpl.java:2188) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]```
#
        at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:155) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1448) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:176) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:129) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1428) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1422) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:139) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1379) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1387) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1264) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at net.minecraft.server.MinecraftServer.lambda$spin$2(MinecraftServer.java:310) ~[paper-1.21.4.jar:1.21.4-232-12d8fe0]
        at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
#

what is going on

pallid wharf
#

root@kz1-node:~# curl -v https://api.extendedclip.com/home

  • Trying 104.21.48.1:443...
  • Trying 2606:4700:3030::6815:5001:443...
  • Immediate connect fail for 2606:4700:3030::6815:5001: Network is unreachable
  • Trying 2606:4700:3030::6815:4001:443...
  • Immediate connect fail for 2606:4700:3030::6815:4001: Network is unreachable
  • Trying 2606:4700:3030::6815:6001:443...
  • Immediate connect fail for 2606:4700:3030::6815:6001: Network is unreachable
  • Trying 2606:4700:3030::6815:3001:443...
  • Immediate connect fail for 2606:4700:3030::6815:3001: Network is unreachable
  • Trying 2606:4700:3030::6815:7001:443...
  • Immediate connect fail for 2606:4700:3030::6815:7001: Network is unreachable
  • Trying 2606:4700:3030::6815:2001:443...
  • Immediate connect fail for 2606:4700:3030::6815:2001: Network is unreachable
  • Trying 2606:4700:3030::6815:1001:443...
  • Immediate connect fail for 2606:4700:3030::6815:1001: Network is unreachable
    Hmmm
#

My server can’t ping api placeholderapi

#

Ecloud

sharp jay
pallid wharf
tender vaporBOT
pallid wharf
#

May be cant work with ipv6

#

Only connect with ipv4 but ipv6 down

sharp jay
pallid wharf
#

I can’t only connect ipv4?

balmy marten
#

What exactly are you pining

#

oh nvm im blind

sharp jay
pallid wharf
balmy marten
#

Is there a reason you're using ipv6

#

We're doing nothing special on our side, everything is fed via cloudflare's proxies

pallid wharf
#

Only ipv4

sharp jay
#

ooh then it should def work

pallid wharf
#

Connect with ipv4 api work but ipv6 i dont need hmm

#

How fix it hm

sharp jay
#

?

pallid wharf
#

Ping Api try ping ipv6

#

But i dont use ipv6

#

It is closed provider

balmy marten
#

Suggest contacting their support if its an external provider

tender jacinth
turbid tide
# tender jacinth .

When you say "it doesn't work", what do you actually mean? Which part of the plugin doesn't work? Do you get any warnings or errors?

tender jacinth
#

I mean i like have %kitpvp_kills% sometime the placeholder work some time i just see "kill: %kitpvp_kills%" i don't know why sometime the papi not load

turbid tide
#

or maybe, do you get messages saying that they did load and the placeholder still doesn't work?

tender jacinth
#

I don't see anything in the consile

#

Just they don't load

tender jacinth
tender jacinth
#

What i can do? @turbid tide

tender vaporBOT
tender jacinth
#

I didn't knew that

junior musk
#

send your server logs

#

?startuplog

tender vaporBOT
tender jacinth
#

?paste

tender vaporBOT
tender jacinth
#

I will send my server log

tender vaporBOT
tender jacinth
#

What config?

turbid tide
#

But it seems it was fixed

tender jacinth
#

That is for Kit of kit pvp

turbid tide
#

the bot just saw it in the logs

tender jacinth
#

So it don't be the problem with papi

#

Right?

turbid tide
#

By any chance, when you execute /papi reload, does the kitpvp placeholders break?

tender jacinth
#

I mean they are break when i start the server

#

And /papi reload only see 1 papi of another plugin

#

Not the papi of kp

#

Sometime when i start the server papi of kp work sometime not work

turbid tide
turbid tide
#

Also, execute /papi dump and send the generated link here.

tender jacinth
#

Now i will see the dump link

#

Ok?

turbid tide
#

yeah

tender jacinth
#

I starting the server

#

So?

#

What you see in this /papi dump?

#

?

turbid tide
junior oxide
#

hey folks, i know this may be a bit dumb but ive been breaking my head over a specific thing.
i wrote a mod to take custom colors from players and it saves that in a placeholder but i cant manage to make the player name be formatted in styledchat, styledplayer list or customnametags. when trying to put the placeholder in a color: tag doesnt work so i just wanted to ask if anyone has a better solution to this right now it gets player colors with hexcodes and saves them.
sadly im on fabric so this means i have to write most of the stuff alone

turbid tide
junior oxide
#

Ah rip

#

I confused with text placeholder api my bad folks

turbid tide
pure robin
#

when im use %server_name% the placeholderapi replace this to "A Minecraft Server", but i set in server.properties...

#

server-name=Lobby_1

turbid tide
#

I'm not sure why it is done like this

#

in config.yml you should see the

expansions.server.server_name option

pure robin
#

okay thanks, but why is it here and not downloaded from server properties?

tender vaporBOT
tender jacinth
#

Bot bugged

turbid tide
turbid tide
# tender jacinth Bot bugged

No the bot is not bugged. You did use a ping reply.

Regarding logs, I want the startup logs from when the bug happens if possible.

tender jacinth
#

Now i know it

tender jacinth
turbid tide
tender jacinth
turbid tide
tender jacinth
#

But it say not break the rules. But where are the rule written?

turbid tide
tender jacinth
#

Oh i din't have it in channel list

#

I will read them

#

Readed

#

Blitz it can be helpful to say where i'm using the papi?

#

(Sorry for my bad english)

gray tartan
#

Is there a Placeholder that lets me see the total number of blocks placed?

warm plover
#

Is there any expansions with a vanilla to mm placeholder for hex colors / general formatting?

#

I know it's probably stupid easy with javascript but I don't have enough experience with it xD

glossy trench
#

%essentials_baltop_balance_<rank>%
and
%essentials_baltop_player_<rank>%
It refreshes very poorly, is there any way to fix it?

stoic escarp
turbid tide
turbid tide
# glossy trench `%essentials_baltop_balance_<rank>%` and `%essentials_baltop_player_<rank>%` It ...

The baltop is updated by us once when the expansion is loaded, and then only updated whenever /baltop is ran or another plugin updates the baltop. Feel free to open an issue here: https://github.com/EssentialsX/Essentials/ to ask for the baltop to be updated automatically by the expansion. If you do open a ticket, please mention this link as well: https://github.com/EssentialsX/Essentials/blob/2.x/Essentials/src/main/java/net/essentialsx/api/v2/services/BalanceTop.java

turbid tide
gray tartan
stoic escarp
tender vaporBOT
turbid tide
turbid tide
#

What does not work?

#

What are you trying to achieve?

stoic escarp
turbid tide
tender jacinth
#

Yea

visual turtle
#

Hi im using KyverEco and the placeholders arent working

turbid tide
#

I'm just trying to pinpoint the exact issue they're having

#

because it is not very clear

turbid tide
visual turtle
tender vaporBOT
visual turtle
#

?paste

tender vaporBOT
visual turtle
steady lynx
#

'PlaceholderAPI v2.11.6' as it is not marked as supporting Folia!

#

@idle coral help pls

tender vaporBOT
steady lynx
steady lynx
#

thants

steady lynx