#placeholder-api
150650 messages · Page 88 of 151
I believe you have to add them all up. so a placeholder for every crop and then math expansion to add them up.
can you share the error please?
you do have to download the server expansion. /papi ecloud download server then /papi reload
kk
My question is for placeholders tab complete that list comes from the ecloud website?
yeah. I believe so
so people using older versions of Statz expansion will see new placeholders that may not work on the expansion they are using
does anyone know the placeholder that displays all time? as in days minutes hours ecyt
I believe u have to override this method @turbid tide https://github.com/PlaceholderAPI/PlaceholderAPI/blob/master/src/main/java/me/clip/placeholderapi/expansion/PlaceholderExpansion.java#L94
do you? because I'm pretty sure I did with my expansion and it didn't list the placeholders there.
until I've put it on the ecloud
maybe it does with external expansions
but I'm pretty sure internal expansions would have to use that method
would be cool if there was a tab complete method so we could have full control
yeah. I don't know tho. I also remember having the same problem with random teleport. It was showing the placehodlers from the ecloud random teleport expansion not the internal one
Why does Placeholder not detect extension https://api.extendedclip.com/expansions/mines/ For plugin https://www.spigotmc.org/resources/mines-»-1-7-1-17-1-•-unique-features-•-api.63552/
Hello,
Plugin: PlaceHolderAPI ( Statistics )
Do you know how to display the number of crops the player harvests?
Yes
%statistic_break_item:<material>,<material2>%
Or
%statistic_mine_block:<material>,<material2>%
Hey
Would it be possible to display my servers total balance using PAPI? If not, could that be added?
hi
https://gyazo.com/29da7f72e178706aad74bee939db17f9 like in this image server total balance
Hi o/ I have problem with placeholders for home set and max in Realscoreboard plugin. When i set in config placeholders like this:
&fHome: &6%essentials_homes_set%&7/&6%essentials_homes_max%'
i have same text on scoreboard, not an count of homes
/papi ecloud download essentials
/papi reload
- placeholders not parsing points to the responsible expansion not being present
now it works, Thanks
Hey, upon starting my server I get an error and no placeholders work. I can however reload the plugin and then it will start working as usual, just not when the server starts up. I am running paper 1.18.2 and PAPI 2.11.1
This is the beginning of the error
[11:22:29] [Server thread/ERROR]: [PlaceholderAPI] failed to load class files of expansions
java.util.concurrent.CompletionException: java.lang.IllegalStateException: zip file closed
Any ideas why this could be or how to fix it?
I think it might be due to some expansion I've got, is there any way to figure out which one without just having to test them all?
Hey !
i'm looking for a way to make work these papi placeholders :
%vault_eco_balance%
I have these papi expension downloaded for now :
-Killstats
-Sever
-servertime
-statistic
-vault
-player
But fir these placeholders i still have the %xxxx% showed in game i'm a bit lost, if anyone can help me 😦
Try %statistic_mob_kills%
Yeap, it's good for this one ^^ just have the vault one
But maybe it's because i don't have a proper essential
don't really understand how to put essential on my server ahah
I'm not sure why the vault one isn't working. But you do have vault installed on your server, right?
Vault yeap, but no essential, and i think i need them both
Yea you do need a plugin to handle the economy
Im making a gui for a kits, but there is a problem with placeholders from essentials, they literally didnt work
I ran commands:
papi ecloud download Essentials
papi reload
(still not works)
restart gui plugin
(still not works)
restart server
(still nothing)
whats the problem?
%essentials_kit_is_available_gracz%, yes im sure its correct kit name
I have EssX, and yes essentials expansion is green in /papi list
If you do /papi parse me placeholder, does it work normally?
doesnt work for crops nether stalk...
You need to write exact block material name
%statistic_break_item:CROPS%
BRUH
%statistic_mine_block:crops% " Could not get the statistic " mine_block ... " "
well what is the stat for harvests?
Use math and count all crops together
help pls, i got this error
i don't understand how this placeholder work:
%world name <world>% (without undercourse because discord have text formatting)
i should write something in <world> or just paste it in my scoreboard config?
Write the name of the world
If your world is named lobby, then you do
%world_name_lobby% etc
May I ask what is the problem that the parameters will be broken after I restart the server?
paper 1.18.2
Plugin version PlaceholderAPI-2.11.1
@hasty harness send the startup log please. read above for more information.
Too much text, how can I upload it?
Papi Extension Player does not load on spigot 1.19: https://pastebin.com/3bgSLJU9
try the one from #1-20
I did
oh nvm
you've placed your expansion in the plugins folder
it needs to go in the expansions folder
oh ops
plugins/PlaceholderAPI/expansions
it should yeah
the plugin itself at least. the expansions, they might or might not depending on how they work
Thanks for the info
Is this correct?
I'm looking at the logs and seems like all expansions are loading just fine. Which placeholders break.
can you test the placeholder using /papi parse me %vault_eco_balance_fixed% please?
can you execute /papi dump and send the generated link here please?
can you also execute /vault-info and send a screenshot of the output?
can you try another vault placeholder please? /papi parse me %vault_eco_balance% and also /papi parse me %vault_rank%
Although it will be good to hit /papi reload, but every time you restart the server, you have to hit
so if you do /papi reload the placeholder starts working?
YES
can you restart the server, don't execute papi reload and send the newly generated startup log here please?
I am perplexed. The expansion loads just fine, vault - cmi hook seems to be working just fine, there are no warnings/errors, the loader works just fine.
https://i.imgur.com/WB1wLPr.png
I don't know
09.06 20:31:49 [Server] ERROR failed to load class files of expansions
09.06 20:31:49 [Server] INFO java.util.concurrent.CompletionException: java.lang.ClassNotFoundException: com.extendedclip.papi.expansion.server.caffeine.cache.LocalCacheFactory$WSLoSMWA
09.06 20:31:49 [Server] INFO at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:412) ~[PlaceholderAPI-2.11.1.jar:?]
09.06 20:31:49 [Server] INFO at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
09.06 20:31:49 [Server] INFO at java.lang.Thread.run(Thread.java:833) ~[?:?]
09.06 20:31:49 [Server] INFO Caused by: java.lang.ClassNotFoundException: com.extendedclip.papi.expansion.server.caffeine.cache.LocalCacheFactory$WSLoSMWA
09.06 20:31:49 [Server] INFO at java.net.URLClassLoader$1.run(URLClassLoader.java:429) ~[?:?]
09.06 20:31:49 [Server] INFO at java.net.URLClassLoader$1.run(URLClassLoader.java:421) ~[?:?]
09.06 20:31:49 [Server] INFO at java.security.AccessController.doPrivileged(AccessController.java:712) ~[?:?]
09.06 20:31:49 [Server] INFO at java.net.URLClassLoader.findClass(URLClassLoader.java:420) ~[?:?]
09.06 20:31:49 [Server] INFO at java.lang.ClassLoader.loadClass(ClassLoader.java:587) ~[?:?]
09.06 20:31:49 [Server] INFO at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
09.06 20:31:49 [Server] INFO at me.clip.placeholderapi.util.FileUtil.findClass(FileUtil.java:62) ~[PlaceholderAPI-2.11.1.jar:?]
09.06 20:31:49 [Server] INFO at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:388) ~[PlaceholderAPI-2.11.1.jar:?]
09.06 20:31:49 [Server] INFO ... 2 more
09.06 20:31:49 [Server] INFO Caused by: java.io.EOFException
09.06 20:31:49 [Server] INFO at java.io.RandomAccessFile.readFully(RandomAccessFile.java:471) ~[?:?]
09.06 20:31:49 [Server] INFO at java.util.zip.ZipFile$Source.readFullyAt(ZipFile.java:1348) ~[?:?]
09.06 20:31:49 [Server] INFO at java.util.zip.ZipFile$ZipFileInputStream.initDataOffset(ZipFile.java:915) ~[?:?]
09.06 20:31:49 [Server] INFO at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:931) ~[?:?]
09.06 20:31:49 [Server] INFO at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:448) ~[?:?]
09.06 20:31:49 [Server] INFO at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158) ~[?:?]
09.06 20:31:49 [Server] INFO at jdk.internal.loader.Resource.getBytes(Resource.java:126) ~[?:?]
09.06 20:31:49 [Server] INFO at jdk.internal.loader.URLClassPath$JarLoader$2.getBytes(URLClassPath.java:893) ~[?:?]
09.06 20:31:49 [Server] INFO at java.net.URLClassLoader.defineClass(URLClassLoader.java:519) ~[?:?]
09.06 20:31:49 [Server] INFO at java.net.URLClassLoader$1.run(URLClassLoader.java:427) ~[?:?]
09.06 20:31:49 [Server] INFO at java.net.URLClassLoader$1.run(URLClassLoader.java:421) ~[?:?]
09.06 20:31:49 [Server] INFO at java.security.AccessController.doPrivileged(AccessController.java:712) ~[?:?]
09.06 20:31:49 [Server] INFO at java.net.URLClassLoader.findClass(URLClassLoader.java:420) ~[?:?]
09.06 20:31:49 [Server] INFO at java.lang.ClassLoader.loadClass(ClassLoader.java:587) ~[?:?]
09.06 20:31:49 [Server] INFO at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
09.06 20:31:49 [Server] INFO at me.clip.placeholderapi.util.FileUtil.findClass(FileUtil.java:62) ~[PlaceholderAPI-2.11.1.jar:?]
09.06 20:31:49 [Server] INFO at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:388) ~[PlaceholderAPI-2.11.1.jar:?]
09.06 20:31:49 [Server] INFO ... 2 more
can you sexecute /papi dump and send the generated link here please?
oh also @austere hawk try the development build of PlaceholderAPI from here https://ci.extendedclip.com/job/PlaceholderAPI/152/
is there a papi 1.19 branch that i can build to test my plugin?
10.06 03:28:49 [Server] WARN failed to post dump details
10.06 03:28:49 [Server] INFO java.util.concurrent.CompletionException: java.io.IOException: Server returned HTTP response code: 500 for URL: https://paste.helpch.at/documents
10.06 03:28:49 [Server] INFO at me.clip.placeholderapi.commands.impl.local.CommandDump.lambda$postDump$1(CommandDump.java:114) ~[PlaceholderAPI-2.11.1.jar:?]
10.06 03:28:49 [Server] INFO at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
10.06 03:28:49 [Server] INFO at java.lang.Thread.run(Thread.java:833) ~[?:?]
10.06 03:28:49 [Server] INFO Caused by: java.io.IOException: Server returned HTTP response code: 500 for URL: https://paste.helpch.at/documents
10.06 03:28:49 [Server] INFO at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1997) ~[?:?]
10.06 03:28:49 [Server] INFO at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1589) ~[?:?]
10.06 03:28:49 [Server] INFO at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:224) ~[?:?]
10.06 03:28:49 [Server] INFO at me.clip.placeholderapi.commands.impl.local.CommandDump.lambda$postDump$1(CommandDump.java:108) ~[PlaceholderAPI-2.11.1.jar:?]
10.06 03:28:49 [Server] INFO ... 2 more
10.06 03:28:49 [Server] INFO Failed to post dump details, check console.
Not yet, soon™️
It seems to be a problem in expansions, I can use the old one
Hey uh how do I setup deluxemenus to work in a way that
I have a portals plugin
And when someone enters that portal, deluxemenus should open a menu for that player
How do I setup this
the portal has to send the open command for the player
How
depends what/if at all the portal is handled by a plugin
hey can i install papi on bungee?
no
Hello, why my cooldownbar "rdy tag" doesnt work for me? %cooldownbar_{luckperms_expiry_time_work.warmup}_p:&a■_i:&e■_r:&7■_l:5_c:5s_rdy:&aRdy!%
I use simple portals plugin
does it have 'enter commands' or similar? you'd there add the dm open command
Yeah it has addcommand function but entering dm open command doesn't work, it asks for player name
yea so the portal plugin must have a player selector. go by it's wiki and see what it suggests to use
Ok
I'm using latest version of PAPI, and every time I restart my server I have to do /papi reload or else placeholders are not automatically loaded. Anyway to fix? (please ping if reply)
anyone ?
Can some1 help me with my placerholders for superiorskyblock not working with HolographicDisplays.jar
holographic display uses a different format: {papi: placeholder_here} instead of %placeholder_here%.
can you restart the server and send the startup log here please?
Thats what im doing
- '&f&l#10 &8&l- &3{papi: superior_island_top_level_leader_10} &8&l➼ &3{papi: superior_island_top_level_value_1O}'
what version of HD do you have? make sure you have the latest beta.
if you do then execute /papi parse me %superior_island_top_level_leader_10% and tell me what it returns please.
That's the only worthy output in logs
any ideas? @turbid tide sorry for ping
using latest version on spigot
https://paste.helpch.at/olesepejin.js if Im going to be using this in a context for luckperms, would it cause lag?
or would it be better to create a different javascript for each one to reduce the amount of placeholders parsed
Hello!
Im using BungeeCord expansion and after the server is turn on for some hours the placeholder %bungee_<server>% stops updating. It will say there are "10" players but there are more.
I tried doing /papi reload but after that placeholder will return "0" in every server.
Thanks a lottt i was trying to figure this out and now I found the way.
actually I have to add the command with dm open menu:PLAYER
This opens it for the player ;)
Again thanks
👍
oke ty
so placeholderapi doesnt work with 1.18.2?
It works just fine?
^
ah some expansions where not up to date
Hi, when I open my server Magma 1.12.2 with Player and LuckyPerms expansions my server doesn't open, it stops when the console says it's loading the expansions. When I delete and open them if it works... I'm using version 2.11.1
how can i get something like @p using placeholder?
find out the nearest player near me
Does anyone know how to get the name of the player closest to the player?
Ah, you cant do that with papi
May be use ParseNear and parse %player_name%
and how can i do that?
# install expansion
papi ecloud download ParseNear
# reload papi
papi reload
# parse placeholder
papi parse me %parsenear_player_name%
try this
ok, Thanks
np. I tested it on my server, it works.
math expansion?
What's the current status for PAPI? I know there's no 1.19 build, but is it functional? I notice that it runs, but that's as far as I've got thus far lol
there's no reason for it to not work really
Is there a placeholder that returns the value of a players health + any extra hearts from absorption?
so If I had 10 hearts + 2 hearts it would return 24?
afaik, there is no placeholder for that. At least not in the Player expansion. It might be in another expansion tho but couldn't find one.
Alright, is there any way I can create my own placeholder either with an api or something?
Can someone help me, please?! PlaceholderAPI plugin generated this Exception in server console:
https://pastebin.com/KuxNrmBy
hey
i need a help
if a factions tag is a empty, i want to replace to: None. (actually is a empty)
if a factions tag is not a empty, show a factions tag
how to do that?
@wicked ocean you can make a javascript placeholder
worked thx
function example() {
return BukkitPlayer.getHealth() + BukkitPlayer.getAbsorptionAmount()
}
example()
use this js placeholder
rename it whatever you want
why do i have to register the placeholders everytime i start up my server
it just happened today
before i didnt have to do it until now
Is it possible to round down the result from a placeholder? ie my essentials home coords are 12 decimals long, instead of 1
you could use the math expansion.
%math_1_{essentials_homes}% or whatever.
Hello, I created an expansion and it does register but does nothing and onRequest method never gets invoked when I try /papi parse. After couple days of looking found nothing that helped, does anyone have any idea?
Here is the class: https://pastebin.com/kh8hz2Q7
identifiers have to be lowercase iirc
if thats the issue I will eat my shoes
let me check 😄
I changed the identifier and equalsignorecase checks to lowercase but nothing changed
for additional info I'm compiling the plugin with java 11 on spigot 1.15.2
this is how I register the class
if (Bukkit.getPluginManager().getPlugin("PlaceholderAPI") != null) {
new Expansion(data).register();
}
yeah
follow those steps for an internal class
few things missing
remove onPlaceholderRequest if you don't require the user to be online
I did follow it but let me do it again
might have followed a different one
realized I don't actually, gonna remove thanks
I'd recommend passing your plugin instance vs the FileIO instance
in case you need to reload it or something at one point
changed ASIC to asic, added missing pieces of and added code from tutorial still no success on /papi parse me %placeholder%
it feels weird like I'm missing something so small but can't find it
you're typing /papi parse me %asic_totalPrizePoolPaid% ye?
nice
lmfao it worked the whole time
I was using macro to test the commands and it removed asic_ from them
and I'm gonna go eat my shoes now as I promised
Thanks a lot 😄
F************CK
😄
sorry for spamming have a wonderful rest of your day
you too, good luck with the shoes 👍
Thanks!
It seems like %server_ram_used% is reporting a wrong number, using the Server expansion. Am I missing something
My server is using 5.25 gb currently but /papi parse me %server_ram_used% returns 1325.
never mind
should be using %server_ram_total% 🙂
what does /papi parse me %server_ram_total% return, also what does /papi parse me %server_ram_max% return?
yeah. the actual 5.25 might not actually be used
just reserved
Yeah, sorry about that :þ
no worries 👍
Is there something I can do to combine %server_ram_total% across multiple servers? Say I have 4 servers and want to return all of them combined?
there's no bungee support in PlaceholderAPI as of now no. You'd have to write your own thing to get that.
https://paste.helpch.at/wifataceyo.php so I have this javascript, and I'm trying to make it so it takes away a raw potato and gives a baked one, but it gives a baked one even if the if statement is false
check cyberstatistics plugin
you shouldn't need to use PlaceholderAPI.static.setPlaceholders
the placeholders are automatically parsed inside strings
well im not sure how to just parse it
ah ok
still gives me a baked potato though
if i return num, it gives me no
oh right. bcz it parses them when the script is initalized
oh
gimme 5 mins
use the static thing but instead of only 1 string for the placeholder concat multiple ones
oh, I was gonna make a new variable, and if it equaled yes, then set the var to 1, if no, then set to 0. and have the give baked potato amt: be the new variable
but this is so much better 😂 thanks!
what papi command uses %maxplayers%?
that's not a PlaceholderAPI placeholder
hmm
praying for papi 1.19 rn
Hey, Holographic Displays doesn't pick up placeholders from external plugins that works with /papi parse any idea why it might be happening?
@sacred violet do you have https://www.spigotmc.org/resources/holographicextension.18461/
or this one if your running newer MC https://www.spigotmc.org/resources/holographic-placeholders-holoextension.64535/
I found this on the wiki of HD
The file /plugins/HolographicDisplays/placeholders.yml contains the list of custom placeholders.
Despite having the .yml extension, it's not a normal YAML file.
To add a new placeholder:
Open placeholders.yml.
Add a new line with the format <placeholder> = <replacement>.
Reload the plugin with /hd reload.
You can now use your custom placeholder in holograms and it will be automatically substituted with the replacement.
but these makes more sense, thanks!
that is not papi placeholders, the data will not change
use one of the above plugin addons to get papi placeholders to work
they worked thanks a lot
also looks like v3.0.0 supports these built in
gonna try that one also
I recommend decent holograms
Holographic Displays v3.0.0 does the job without need of additional plugins
just tested it
with my custom plugin
just some weird format for it
also shoes were not that bad after resting in oven for couple hours then frying with salted butter
nice
yeah but my client wants it to work without anything else if possible so I'm going with this I guess 😄
thanks again!
holographicdisplays fell off
how can i display kills and deaths
%statistic_deaths% %statistic_player_kills% after running those commands @raven sparrow 
Can someone help me with math expansion?
I want to merge 2 placehoders values how to do that
merge as in add them?
%math_0_{placeholder_1}+{placeholder_2}%
Thanks!
left_click_requirement:
requirements:
has_permission:
type: has permission
permission: deluxemenus.warrior
has_cooldown:
type: javascript
expression: '%mcd_left_test% = 0'```
what am i doin wrong ?
when i remove the second requirement it works
== @lone moth
hello
- "papi ecloud download Javascript"
- "papi ecloud download javascript"
- "papi ecloud download Javascript"
- "papi ecloud download javascript"
/papi ecloud download Javascript
deleted through placedholder?
no builds for 1.19 yet
should work anyways
yeah still works
❤️ just went here to say I love the devs
gey guys, I have a problem with placeholders. like, I cant paste command with the skript plugin.
https://cdn.discordapp.com/attachments/633647463231914005/986373096338501673/unknown.png
what should I do to fix it
I want to execute some of the commands from the skript
what is that
okeeey
both were updated around august 2021, later than the other 2 expansions
ye I see
not quite, exact info is on the website
👍
thank u a lot
On some players, placeholder %player_total_exp% give no value, while some other give correct value. How to solve this? Thanks
are all players online?
Will 2.11.1 work for 1.19?
yes
Does it seem to have anything identifying who it works for and who it doesn't work for?
Can you type /papi dump as well
Here's the papi dump result: https://paste.helpch.at/uxixelonij
afaik, the problem is happened randomly, some of staff and normal player both experience this issue. I suspect, this is because the placeholder value is not updated, even though the player has been online for a long time. Is there any way to force update placeholder values?
where are you having issues with it?
In Skyblock server. On some players, placeholder %player_total_exp% give no value, but some other give correct value.
Does the issue persist if you test it with /papi parse <player/me> %player_total_exp%?
yes
I'd recommend updating placeholderapi and try again
the placeholder updates every time it is called fyi
okay, thanks for the info. I will update the plugin and give more info later
How can I reset placeholder
which placeholder?
nevermind me
So I'm like new with these, I contacted the dev of ajlb and he told me to contact papi to reset the place holder
Yes, that's why I'm asking which placeholder you want to reset.
Every leaderboard you have is based off of a placeholder
so that's stored with the player's nbt file itself
either you reset the nbt file(s) or you manually edit each one
How do I reset nbt files
Hm? I didn’t ping nobody
The player data folder in your world save. This deletes ALL data for that player, inventory and all.
And if you delete the folder it deletes everybody’s data
And technically, reply has an option to disable pinging, but it’s fine we were in conversation.
Hi, trying to use placeholders and parsing it to make sure they're valid but they don't work if they're against one another
This doesn't work: &%trainerlevels_rankcolor%%trainerlevels_level% &3(&b%trainerlevels_xp% experience&3)
This works: & %trainerlevels_rankcolor% %trainerlevels_level% &3(&b %trainerlevels_xp% experience&3)
[17:32:10 WARN]: java.lang.NoSuchFieldException: ping
[17:32:10 WARN]: at java.base/java.lang.Class.getDeclaredField(Class.java:2610)
[17:32:10 WARN]: at com.extendedclip.papi.expansion.player.PlayerUtil.getPing(PlayerUtil.java:49)
[17:32:10 WARN]: at com.extendedclip.papi.expansion.player.PlayerExpansion.onRequest(PlayerExpansion.java:270)
[17:32:10 WARN]: at PlaceholderAPI-2.11.1.jar//me.clip.placeholderapi.replacer.CharsReplacer.apply(CharsReplacer.java:161)
[17:32:10 WARN]: at PlaceholderAPI-2.11.1.jar//me.clip.placeholderapi.PlaceholderAPI.setPlaceholders(PlaceholderAPI.java:70)
[17:32:10 WARN]: at PlaceholderAPI-2.11.1.jar//me.clip.placeholderapi.PlaceholderAPI.setPlaceholders(PlaceholderAPI.java:98)
why am i getting this warning
using 1.17.1
how do i do this
/papi ecloud download player iirc
Can you check your direct messages? @vivid sparrow
Where do i change %server_name% in Server addon?
I mean i have no config like this in server properties
plugins/PlaceholderAPI/config.yml
https://cdn.discordapp.com/attachments/694963864390860803/986686752146194432/unknown.png
I know the expansion KillStats hasn't been updated in a while, but is there any possible ways of fixing this? It includes all the placeholders I need.
Or if there are any expansions which include player kdr, player kills, player deaths, and player streak, then that's cool, too.
KillStats require a plugin, is not a stand alone expansion afaik
oh?
judging by the name of the plugin, probably this one https://www.spigotmc.org/resources/killstats.2098/
Thank you
When trying with the plugin, although this time it successfully registers, the placeholders don't show when using it in scoreboard. The plugin is also marked as red in the /plugins list. Do you know what the issue could be now?
When trying to run any command with the plugin, it raises this error:```yaml
[19:51:26 INFO]: MoritzSnek issued server command: /killstats MoritzSnek
[19:51:26 ERROR]: null
org.bukkit.command.CommandException: Cannot execute command 'killstats:killstatsadmin' in plugin killStats v3.0 - plugin is disabled.
java.lang.NoSuchMethodError: 'org.bukkit.entity.Player[] org.bukkit.Server.getOnlinePlayers()'
F, NoSuchMethodError, I guess it's because just outdated and i dont think it's fixable
Is it possible to make remove all text in a string except a players name
For example, if someone types "0bviouslee hello", could I use something like formatter to just keep 0bviouslee and remove hello?
KillStats hasn't been updated since 2014 so its possible it doesnt support your version
@warm ploverIn chat to filter what is sent to screen use a chat filter of some kind
Not a filter, it's was for a mention system
But I was trying to make it myself without the use of another plugin
you could use javascript but it seems like a very inefficient thing to do. imo, you should make a plugin for this instead
the script would be, looping thru all player names, seeing if it contains it then you have it.
ok so
I have featherboard working, and I have papi with all my expansions downloaded
despite having the scoreboard objectives addon
it wont display / parse my scoreboard scores
it just always shows as 0
it didn't delete the leaderstat :(
dose placeholderapi work with 1.19?
Yes
how come /papi ecloud download DeluxeTags doesn't exist anymore?
DeluxeTags includes a PAPI expansion by default, you don't need to download a separate one
Well it's not recognizing my deluxetags placeholder
since when?
1.8.2?
i'm like 99% sure Blitz added it
ye he did
just not sure when, I've been telling people to /papi ecloud download deluxetags lmao
🤷♂️
ye 1.8.2
fool, I am
i feel vindicated lol
In my essentials config yml, I used two placeholders in the chat format section, but it's not showing them in chat, any ideas how to fix? This worked for the longest type, but then I updated my server to 1.18.2 (and updated all other plugins)
format: '{DISPLAYNAME} &8[&r%elitemobs_player_active_guild_rank_name%&8] &r%deluxetags_tag% &8&l>&r {MESSAGE}'
essentials doesn't support placeholderapi by default
you might've been using chatinjector?
ya... that hasn't been updated in a while
so it could be broken
does it load?
?startuplog
let me check
[19:13:30] [Server thread/INFO]: [Chat-Injector] Enabling ChatInjector v1.1
ye, I'm gonna say it is prob just broken
just to make sure, /papi parse me %elitemobs_player_active_guild_rank_name% %deluxetags_tag% still works right?
it returns the correct values?
It's weird because I used that version of chatinjector since 1.16-1.18.1, then I update to 1.18.2 and it breaks
yep shows correct values
Let me check
and just make sure to restart if you do make any changes
okay, thank you though
anyone why DM wont allow me to use %player% {player} in menus + commands ???
@cunning sparrow 
yeah i got it haha. forgot to delete message from here
Hello, i have an issue with the placeholder plugin, when i do the command %player_name% in the scoreboard that supports this plugin it glitches the player names together
Hi, we are trying to use a JavaScript placeholder on our server, we already have other placeholders that are working just fine, however, when we try to use the PlaceholderAPI.static.setPlaceholders() function in JS we get an error and we don't really know how to fix it. The error is as follows:
Caused by: com.koushikdutta.quack.QuackException: TypeError: cannot read property 'setPlaceholders' of null
at <javascript>.formatEnchantCost(?:2) ~[?:?]
at <javascript>.<eval>(?:5) ~[?:?]
Our JS code is:
function formatEnchantCost() {
return PlaceholderAPI.static.setPlaceholders(BukkitPlayer, "%" + Java.type("java.lang.String").join("_", args) + "%").replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,");
}
formatEnchantCost();
If someone could help us we would really appreciate it!
[06:01:00 WARN]: [PlaceholderAPI] Loaded class net.luckperms.api.LuckPerms from LuckPerms v5.4.30 which is not a depend, softdepend or loadbefore of this plugin. Many logs like this wont make any problems yea?
Should be safe to ignore
Anyone knows a placeholder which returns how much member from luckperms group or from minecraft team are online?
don't think there is one. you can make one using javascript or even better make your own expansion.
oh I completely forgot about that
here's an even better one @austere hawk. One that's still maintained https://github.com/Tanguygab/PlaceholderAPI-PlayerList-Expansion/ https://github.com/PlaceholderAPI/PlaceholderAPI/wiki/placeholders#playerlist
remove the %% that are inside of the {}
oh yeah but there are operators in my server
can I make something like online with perm group.red and without perm random.perm
Hi
I need help with my Expansions
How can i use money expansion on a scoreboard ?
Hey, Im having a strange issue where none of my holograms are showing placeholders. Is this a papi issue or a holographic display issue?
I have the expansion installed for vault and its doing this stuff. I tried using "one" but that also didnt work and all my holograms are having this issue, any help would be great thanks 😄 https://gyazo.com/47afcf901d534aca599361cb3ccc0d13
@timid yachtdo you have this plugin? https://www.spigotmc.org/resources/holographic-placeholders-holoextension.64535/
yeaa no
required to use placeholders with Holographic Display
ahhh
okay cool Ill see if that will fix it
it did not
ill try some things with it
do I need to download anytthing else or type any commands?
only if your HD version is < 3.0 update is better option
decent holograms 
I can't get deluxe tags expansion pack to load with papi, any suggestions?
16.06 23:21:21 [Server] INFO [PlaceholderAPI] Fetching available expansion information...
16.06 23:21:24 [Server] INFO Vaspei issued server command: /papi reload
16.06 23:21:24 [Server] INFO [PlaceholderAPI] Placeholder expansion registration initializing...
16.06 23:21:24 [Server] INFO [PlaceholderAPI] Fetching available expansion information...
16.06 23:21:24 [Server] WARN java.lang.ClassNotFoundException: net.minecraft.server.v1_18_R2.MinecraftServer
16.06 23:21:24 [Server] WARN at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
16.06 23:21:24 [Server] WARN at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:587)
16.06 23:21:24 [Server] WARN at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
16.06 23:21:24 [Server] WARN at java.base/java.lang.Class.forName0(Native Method)
16.06 23:21:24 [Server] WARN at java.base/java.lang.Class.forName(Class.java:375)
16.06 23:21:24 [Server] WARN at com.extendedclip.papi.expansion.server.ServerExpansion.<init>(ServerExpansion.java:62)
16.06 23:21:24 [Server] WARN at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
16.06 23:21:24 [Server] WARN at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
16.06 23:21:24 [Server] WARN at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
16.06 23:21:24 [Server] WARN at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
16.06 23:21:24 [Server] WARN at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
16.06 23:21:24 [Server] WARN at PlaceholderAPI-2.11.2-DEV-152.jar//me.clip.placeholderapi.expansion.manager.LocalExpansionManager.createExpansionInstance(LocalExpansionManager.java:422)
16.06 23:21:24 [Server] WARN at PlaceholderAPI-2.11.2-DEV-152.jar//me.clip.placeholderapi.expansion.manager.LocalExpansionManager.register(LocalExpansionManager.java:162)
16.06 23:21:24 [Server] WARN at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
16.06 23:21:24 [Server] WARN at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
16.06 23:21:24 [Server] WARN at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
16.06 23:21:24 [Server] WARN at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
16.06 23:21:24 [Server] WARN at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
16.06 23:21:24 [Server] WARN at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
16.06 23:21:24 [Server] WARN at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
16.06 23:21:24 [Server] WARN at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
16.06 23:21:24 [Server] WARN at PlaceholderAPI-2.11.2-DEV-152.jar//me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$registerAll$4(LocalExpansionManager.java:333)
16.06 23:21:24 [Server] WARN at PlaceholderAPI-2.11.2-DEV-152.jar//me.clip.placeholderapi.util.Futures.lambda$onMainThread$0(Futures.java:46)
16.06 23:21:24 [Server] WARN at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftTask.run(CraftTask.java:101)
16.06 23:21:24 [Server] WARN at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:483)
16.06 23:21:24 [Server] WARN at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1532)```
Yeah that didnt help much. My other placeholders arent working either. Like for any of the holograms. Including top kills, votes, etc
does the placeholder work if you type /papi parse me %placeholder%?
yes and no
delete server expansion and reload
you can also delete deluxetags expansion if you're on 1.8.2, it's internal now
Like the placeholders are showing, but if I type in balance top it only says 0. unless thats supposed to happen
well the balance top has been moved to essentials
so I use essentials placeholders?
I do not know if there is a current expansion build that allows it
see pinned #placeholder-api message
wait I see some
is luckperms internal now too?
ill try them
so it's kind of in between, but ye try it
no
I deleted the expansions folder and reloaded, but now it won't let me install any expansions packs
https://vaspei.us/ss/rzqxg.png
maybe you're having a bad connection to the ecloud
deluxe tags doesn't load
https://vaspei.us/ss/19y28.png
what if you try downloading them manually from the ecloud?
What chat plugin do you use?
I use essentials chat, with a custom chatinjector plugin I have
in order
well I used the essentials format but it doesnt matter since all the placeholders for holograms wont work https://gyazo.com/7910746727b24feb1d79a69278d82e19
Yes on to that
what holograms plugin do you use
it was working fine until I updated to 1.18, so idk
and what version
latest dev build for holographic display and latest version for papi
my server is on 1.19 now tho
okay so holographic displays has some weird format for it now
I have both papi_chat and deluxe_chat in my config, do I set both to false?
whaaa
Remove deluxe_chat and set papi_chat to false
Okay, thanks
nobody knows why
ill just try out that hologram plugin then 😛
seems decent
Okay, those steps fixed my chat issue, but now my tab menu is messed up, thoughts on this?
https://vaspei.us/ss/dangn.png
Do I just change all the placeholders to {} instead of %%?
no
probably missing the player expansion
and if you can't download it with the command in-game, try the cloud
download link ^
Works now, thank you sir
/papi parse <playername> %player_total_exp% give result Failed to find player: <playername> while the player is online. How to solve this? Thanks
All placeholders stop working after the server is started if ChangeOutput is enabled at 1.19 before /papi reload
https://www.toptal.com/developers/hastebin/depaceraho.sql
does placeholderapi support bungeecord?
no
Why can't I see commas or dots?
command /papi parse me %vault_eco_balance_commas%
https://cdn.discordapp.com/attachments/328559203566354442/987398842368548894/unknown.png
try the formatter expansion
%formatter_number_format_{vault_eco_balance}%
that helped the last person #placeholder-api message
it works thanks
can someone tell me how how do i get placeholderapi 1.8
version
nvm
solved
=======
what you have to do is install 1.14
latest papi should work fine on 1.8, but hey if it works it works
ooh, sorry, try 1.8.8 instead of just 1.8
Does anyone know why this doesn't work and how I can fix it?
%math_{%statistic_walk_one_cm%}:100%
This one works just fine:
&7%math_{player_x}*8%
remove the extra %% and you use / to divide numbers @ancient spire
thx now that I look at it, it seems so obvious o.o
oh cmon I was just replying ._.
What is the prefix for chat on guilds?
https://paste.helpch.at @tacit coral
lol
?
The log are not totaly exposed
I use aternos 😐
ops i paste the wrong log
lol
sorry
That is the correct link 👍
Can you fix this?
Would anyone know a way where I can replace all numbers in my vault balance with another font?
I tried %formatter_text_replace_1 2 3 4 5 6 7 8 9_₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉ ₀_{vault_eco_balance}% but that doesn't seem to replace the numbers within the placeholder, just a specific string
where can i donwload 1.19 papi?
latest works
hey, i wanted to install the PAPI plugin in Aternos Server, but i can't find it anywhere. Does someone know why?
I also wanted to add it to my Aternos server, but "MVdWPlaceholderAPI" appears and PlaceholderAPI does not appear.
Any solution? Please
sameee
i thought i done something wrong
me too bro
i deleted the whole server and created a new one and still doesn't show up, im such an idiot
what it does?
and i thought cuz of this the plugin disappear
ohhhh
ohh i understand
i disabled scoreboard till they fix it
and i have 5 seasons in server so its fine
WeCrafters_S1.aternos.me
any mod?? please tell us after how much time it takes to come back on aternos???
what is the time for you now?
2:29am
im something like both
How can I make the sum not give me a decimal, it tells me "5.0", I don't want it to say ".0"; I want you to just tell me "5"
function result(){
var q1 = "%asd%";
var q2 = "%asd%";
var q3 = "%asd%";
var q4 = "%asd%";
var q5 = "%asd%";
if (args.length == 1) {
if(args[0] == "qasd"){
var Mi1 = Number(q1);
var Mi2 = Number(q2);
var Mi3 = Number(q3);
var Mi4 = Number(q4);
var Mi5 = Number(q5);
var summD = Mi1 + Mi2 + Mi3 + Mi4 + Mi5;
}
}
return summD;
}
result();```
You can do %math_0:1_<js placeholder>%
Or 0:0 if that doesn’t work
ty
Error log: https://paste.helpch.at/qaruqiwaki.sql
JavaScript placeholder: https://paste.helpch.at/ekobinifom.js
Every time the script corresponding to the JavaScript placeholder is called the console displays the logs attached above, after using the print() function within the JavaScript placeholder we found that the values returned from PlaceholderAPI.static is null, which seems to be the reason of the exception.
But why did aternos decide to remove your plugin from their platform?
Will pay for solution!
hi, I'm having an issue with the javascript extension
https://paste.helpch.at/tegabucama.bash
still wondering 💀
can anyone tell when it came back to aternos?? or if not then anyone know any other plugin which works same as place holder??
That's a question for them, not us.
Hey, Can someone help me with deluxemenus?
I have this line in the config
- '[console] eeconomy give %player_name% 15000'
And the playername placeholder doesnt work
console:
CONSOLE issued server command: /eeconomy give %player_name% 15000
Anyone know any fix for this?
?player
yea but is they gonna ever add it back???
That's also a question for them. We have nothing to do with them.
❤️
sryy
aternos is saying we have security issue with placeholderapi as long as they won't solve it we won't add it back 💀
%vault_eco_balance%
is there any way to up the limit on placeholder characters and dependency urls on ecloud
i have a lot of placeholders and 1000 characters isnt nearly enough to put them all
and my plugin download link happens to be slightly over 100 characters also
Can anyone assist?
Does papi support 1.19?
x2
I mean there's no real reason for it to not work
nice, i'll download it from spigot then
Alr
Hey all you guys! Is there any way to make placeholder output a certain text depending on the end of the digit? What I need:
I'm currently displaying like this:
1 days
Is it possible to make it like this? 1 day?
It's the same with minutes and hours.
https://github.com/PlaceholderAPI/PlaceholderAPI/wiki/Placeholders#Formatter
I know that there is something similar, but I do not understand how it can be implemented(((
Does anyone already have the blanks, or could someone help me with this?(
I use Statistic to display the played time
PlaceholderAPI-2.11.1 works on 1.19 ?
it should. yeah
help pls(
If an expansion is approved/verified, would it appear in ecloud list?
Hello, I am struggling to get placeholder api to work on 1.19, several of the plugins I use have broken placeholders
Purpur-1.19-1669
Placeholder API 2.11.1
Lighteconomy 3.2.3
KitPVP 2.2.0
[16:05:31 ERROR]: [PlaceholderAPI] failed to load class files of expansions
java.util.concurrent.CompletionException: java.lang.NullPointerException: Cannot invoke "java.lang.Class.getClassLoader()" because "result" is null
at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:412) ~[PlaceholderAPI-2.11.1.jar:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1760) ~[?:?]
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?]
at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?]
at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?]
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?]
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?]
Caused by: java.lang.NullPointerException: Cannot invoke "java.lang.Class.getClassLoader()" because "result" is null
at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:113) ~[purpur-api-1.19-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.java.JavaPluginLoader.getClassByName(JavaPluginLoader.java:235) ~[purpur-api-1.19-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:128) ~[purpur-api-1.19-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:105) ~[purpur-api-1.19-R0.1-SNAPSHOT.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:574) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]```
at java.lang.ClassLoader.defineClass1(Native Method) ~[?:?]
at java.lang.ClassLoader.defineClass(ClassLoader.java:1012) ~[?:?]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150) ~[?:?]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:524) ~[?:?]
at java.net.URLClassLoader$1.run(URLClassLoader.java:427) ~[?:?]
at java.net.URLClassLoader$1.run(URLClassLoader.java:421) ~[?:?]
at java.security.AccessController.doPrivileged(AccessController.java:712) ~[?:?]
at java.net.URLClassLoader.findClass(URLClassLoader.java:420) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:587) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
at me.clip.placeholderapi.util.FileUtil.findClass(FileUtil.java:62) ~[PlaceholderAPI-2.11.1.jar:?]
at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:388) ~[PlaceholderAPI-2.11.1.jar:?]
... 7 more
Would this be because of the plugins I'm using or placeholder api. They successfully load in 1.18.2`
and I have to do /papi reload after every reboot because it fails after starting
That is happening to me and not only with a javascript that I have created...
And it happens to me with another script that it creates but from SkriptLang.
My solution was to create a script that would manually reload on startup...
The jank is real
on server start:
wait 30 seconds
execute command "/sk reload Reputacion.sk"
https://paste.helpch.at/umofesutux.makefile getting a lot of these errors
same here
I dont think papi is compatible with 1.19
my b I cant read
bungee expansion
idk if you've fixed it yet
Its not compatible?
well idk if he has bungee
can you send your startuplog please
with bungee expansion
Also, do you use regular Bungee or a different one?
Hello, I am using this function and when using its placeholder %javascript_Rangoname% in tab, it causes me a lot of lag and tps drop.
function Rangoname(){
var Rangoname = "%placeholder%";
if(Rangoname == "1"){
return "I";
}
if(Rangoname == "2"){
return "II";
}
return "I";
}
Rangoname();```
I have increased the refresh time to 1000 in tab, and even so it goes 1,000%, and if I put the refresh rate to less the % increases:
https://imgur.com/SPF5LSE
the code is wrong?
or any way to optimize?
Does this plugin supports with TAB?
Yes, TAB supports papi
Help please🥺
is there a placeholder that lists the online players 1 by 1? so for example %playerlist_online_firstplayer% would return the top player, %playerlist_online_secondplayer% would return the second, or soemthing likethat
got it
Hi! I am hooking into placeholder api but when I build my plugin with custom placeholders values doesn't update
Any placeholders
Is there a way to use the String PAPI expansion in such a way where you can have a placeholder within a placeholder?
E.g. %string_substring_%string_indexOf_this/0/is/1/a/2/test_/0/%_this/0/is/1/a/2/test%
Essentially, returning the index where /0/ appears and creating a substring from that index.
some placeholders support nested placeholders with {}
%string_substring_{string_indexOf_this/0/is/1/a/2/test_/0/}_this/0/is/1/a/2/test%
Legend, thank you 🔥
Is there a different way to format this? I'm trying to use a placeholder, in a placeholder, in a placeholder.
/papi parse me %string_substring_{math_{string_indexOf_this/0/is/1/a/2/test_/0/}+3}_this/0/is/1/a/2/test%
Throwing this error: https://pastebin.com/ETA8PbjD
I think it's trying to the the wrong placeholder.
When I do /papi parse me %math_{string_indexOf_this/0/is/1/a/2/test_/0/}+3%, this returns the expected result.
[17:16:12 WARN]: [PlaceholderAPI] [math] Cause: '{string' is not a valid number for precision! Makes me think it's trying to use the %math_[precision]:[rounding]_<expression>% placeholder.
You cant have a placeholder inside a placeholder inside a placeholder
hi I made a top10 players that mine diamonds the most, but I saw that if I put blocks and break them with soft touch it also counts, is there any way to not count.
%statistic_mine_block:diamond_ore%
is there any way to count only those that were generated by the world?
because if not I can keep putting the block and breaking it with soft touch and get infinite points
When i did something similar what I did was use the number of diamond blocks mined minus the number placed as the score, two people could get away with this as a team but it would take people competing to have team work so for small temporary competitions it works as a bit of slight of hand trickery because i didn't tell them i was keeping track of how many were placed too
You can achieve that goal with using Spigot API getOnlinePlayers() in javascript placeholder.
// normal
function example() {
// no target specified
if(args.length !== 1) {
return false
}
// target (1 ~ )
var target = parseInt(args[0]) - 1
// plyer object
var players = BukkitServer.getOnlinePlayers()
// get display name of player
return players[target].getDisplayName()
}
example()
// compact version
function example() {
if(args.length !== 1) return false
return BukkitServer.getOnlinePlayers()[parseInt(args[0]) - 1].getDisplayName()
}
#first online player's displayname
%javascript_example_1%
Or you can just use PlayerList
/papi ecloud download playerlist
%playerlist_online,normal,yes,<index>%
Uhm, this just broke today for some reason: diff ! [Tue 08:29:18 WARN PlaceholderAPI] [math] Invalid Placeholder detected! ! [Tue 08:29:18 WARN PlaceholderAPI] [math] Placeholder: %math_CEILING({server_ram_used}/{server_ram_total}*100)[precision:0]% ! [Tue 08:29:18 WARN PlaceholderAPI] [math] Cause: 'CEILING(1594/2768*100)[precision:0]' is not a valid Math Expression.
and yes I have downloaded math
what version of the math expansion tho
the [precision:0] was changed in one of the newer versions
I just did /papi ecloud download math
yeah that means you're probably on the latest version.
oh, how do I fix it ?
try %math_0_CEILING({server_ram_used}/{server_ram_total}*100)%
ok
it worked thanks
Hey,
i wanted a bit of help
i am using Bungee placeholder api
i found the PlaceholderAPI.setPlaceholder method but it's not updating
runTimer(40, () -> {
final File file = FileUtil.getFile("signs.yml");
if (!file.exists()) return;
final SimpleYaml config = FileUtil.loadConfigurationStrict(file);
if (config.getConfigurationSection("Signs") == null || config.getConfigurationSection("Signs").getKeys(false) == null) return;
config.getConfigurationSection("Signs").getKeys(false).forEach(s -> {
final TpSign tpSign = TpSign.getSign(s);
if (!(tpSign.getSignLocation().getWorld().getBlockAt(tpSign.getSignLocation()).getState() instanceof Sign)) return;
Sign sign = (Sign) tpSign.getSignLocation().getWorld().getBlockAt(tpSign.getSignLocation()).getState();
String replacedPlayerCount = "";
for (Player player : Remain.getOnlinePlayers()){
replacedPlayerCount = PlaceholderAPI.setPlaceholders(player, "%bungee_" + tpSign.getTargetServer() + "%");
}
sign.setLine(0, sign.getLine(0).replace("{player_count}", replacedPlayerCount));
sign.setLine(1, sign.getLine(1).replace("{player_count}", replacedPlayerCount));
sign.setLine(2, sign.getLine(2).replace("{player_count}", replacedPlayerCount));
sign.setLine(3, sign.getLine(3).replace("{player_count}", replacedPlayerCount));
sign.update();```
it works once but then it doesn't update it
for some weird reason
This is not needed btw
String replacedPlayerCount = "";
for (Player player : Remain.getOnlinePlayers()){
replacedPlayerCount = PlaceholderAPI.setPlaceholders(player, "%bungee_" + tpSign.getTargetServer() + "%");
}```
Can simply be `String replacedPlayerCount = PlaceholderAPI.setPlaceholders(null, "%bungee_" + tpSign.getTargetServer() + "%");`
also, make sure it reaches the end of your code
What markdown did you use here? (Discord not the code itself lol)
You can use inspect to see
I'm on mobile. And it's showing the colors hence why I am asking xD
Yeah I can see the color lol
Can't attach files 🤦
Yeah, it is js
yes it's js
how can i do it sorry mark it?
but will it update the placeholder?
sorry barry my friend
null isn't working btw
Print the result of setPlaceholders to console
can someone please help me solve this, is there a way to solve the problem when a player puts the block on the ground and breaks the statistic_mine_block:diamond_ore%
or when you use soft touch it also counts, you can farm infinite points, for example, I break a block with soft touch and put it on the ground, I do this several times.
the placeholder in the sign is changed
but it's never getting updated
i havea custom sign placeholder {player_count} and it's getting changed to %bungee_lobby% perfectly
but it's not getting updated
should i create a runnable and set %bungee_lobby% to %bungee_lobby% again and update the sign?
well, that makes sense
bruh
you need to replace placeholders from the original string
once {player_count} replaced with the value of %bungee_x%, next time nothing will happen because theren's no more {player_count}
no
gaby help me pls
get the lines from config, replace the placeholder(s) and then set the on the sign
that makes sense
I am being ignored
bruh thats what i was saying
ok sorry
i have to do something like this right ?
but I have been waiting for help since yesterday
No, you can't make the expansion ignore placed blocks because it can't differentiate them
String replacedPlayerCount = PlaceholderAPI.setPlaceholders(player, "%bungee_" + tpSign.getTargetServer() + "%");
sign.setLine(0, sign.getLine(0).replace("%bungee_" + targetServer + "%", replacedPlayerCount));
sign.update();
.
get the lines from what config?
idk man, where you keep the formats of your signs
but thats what i am doing
gaby is there an expansion for this?
No is not, you use the current line of the sign, which no longer has any placeholders
i am setting the line then i get the original line and replace {player_count} with a placeholder %bungee_lobby%
sign.setLine(0, sign.getLine(0)
look at this
if line 0 is Online: {player_count}, when the runnable runs the first time, it will become Online: X
ok, and if you use getLine(0) you will get Online: X, not Online: {player_count}
Good, if you understand that, now change your code
no
isn't there anyone who has solved this problem?
probably a custom plugin
I have a way of gettings target server , and there are many signs thats why i am iterating through every sign and seting this info as it's important.. the thing is i don't know how can i update the placeholder.. maybe settings it into "" then setting it back to %bungee-lobby% ...
Do you store the default text somewhere? the one with all placeholders
so when people create a sign (sign is not org.bukkit block it's a custom class
there is not default text and there is only this one placeholder
Store the text that's written on the text and then use it
Also, this is more of a #development problem
Ooo now i get it
I think it works, no?
hey guys i really don't get this. i have literally exhausted every single google search for 3 pages.
%statistic_jump%_alltime_#1
i just can't get this to display the #1 player who has jumped the most. where am i going wrong? i have player papi installed too. im using this in holographic displays
There are no tops in the statistic expansion
Oh I though it didn't
This for when I try and parse %parseother_{objective_entryposhigh_{Indiv_Coins}_{1}}_{luckperms_prefix}%, it is the error
are there any default placeholders in PAPI that require no expansions installed
no
but expansions don't need to be external. They can be built inside other plugins
[16:47:11] [Server thread/ERROR]: [PlaceholderAPI] Failed to load expansion class StatzExpansion - One of its properties is null which is not allowed! [16:47:11] [Server thread/ERROR]: [PlaceholderAPI] java.lang.NullPointerException: The expansion version is null! at java.util.Objects.requireNonNull(Objects.java:233) ~[?:?] at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.register(LocalExpansionManager.java:166) ~[PlaceholderAPI-2.10.10.jar:?] at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?] at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) ~[?:?] at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) ~[?:?] at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) ~[?:?] at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) ~[?:?] at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) ~[?:?] at java.util.stream.ReduceOps$5.evaluateSequential(ReduceOps.java:257) ~[?:?] at java.util.stream.ReduceOps$5.evaluateSequential(ReduceOps.java:248) ~[?:?] at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?] at java.util.stream.ReferencePipeline.count(ReferencePipeline.java:709) ~[?:?] at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$registerAll$3(LocalExpansionManager.java:327) ~[PlaceholderAPI-2.10.10.jar:?] at me.clip.placeholderapi.util.Futures.lambda$null$0(Futures.java:46) ~[PlaceholderAPI-2.10.10.jar:?] at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftTask.run(CraftTask.java:101) ~[patched_1.17.1.jar:git-Paper-408] at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:483) ~[patched_1.17.1.jar:git-Paper-408] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1229) ~[patched_1.17.1.jar:git-Paper-408] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:319) ~[patched_1.17.1.jar:git-Paper-408] at java.lang.Thread.run(Thread.java:831) ~[?:?]
Any idea how i can fix this?
sup folks, %statistic_junk_fished% doesnt seem to be real statistic, its not mentioned in https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Statistic.html, yet still mentioned in placeholder list - https://github.com/PlaceholderAPI/PlaceholderAPI/wiki/Placeholders#statistic
(https://prnt.sc/GPtr5KiapUAJ - pic for reference)
how do i make it possible? i swear this used to be back in the day with displaying top monthly voters on holographics and more
o shit mb
It was never handled by placeholderapi
You are most likely talking about LeaderHeads which had papi placeholders
ah i couldn't get it working with leaderheads either. at a dead end lol
i, sorry to ask, but doesn't anyone here have an expansion that corrects the fact that it only counts if people get the blocks generated by the world? %statistic_mine_block:<material>%
is that it becomes easy to manipulate, just put it on the ground and break it and get infinite points.
if someone has a solution, please let me know.
PlaceholderAPI just stopped working when I was updating other plugins, I have no idea why.
Server version: 1.17.1
API version: 2.11.1 (Latest)
restart the server and send the startup log
this would require a full plugin. You'd need to track every block ever placed or mined. You can however use a more janky solution but which is more doable. That would be to subtract the number of blocks placed from the number of blocks broken.
its nowhere near perfect but its an easy solution
Have you tried following their setup tutorial? Also have you tested the placeholders somewhere else other than HolographicDisplay? Somewhere like /papi parse me %placeholder_here%
%math_0_{statistic_mine_block:diamond_ore}-{statistic_use_item:diamond_ore}%
?paste
I believe should work
It will not, blitz
is use not also used for place?
Because if you place blocks without breaking them, it will just return a wrong value xD
well yes. I did mention it won't be perfect.
and it is janky. but I don't assume they will make a plugin for this so I gave them the only simple solution out there janky as it is
delete the essentials expansion from plugins/PlaceholderAPI/expansions/
and restart the server
okay
It works now, thank you
no problem
does it work?
Hello, I am using placeholderapi javascript to output the desired command to the console depending on the result of placeholder, I am facing the problem of constant errors. The documentation says: Just like the player, the server is also passed along to the placeholder script when called. The server may be accessed using BukkitServer. After receiving, you can access all of the server methods included in the Spigot API.
||https://github.com/PlaceholderAPI/Javascript-Expansion/wiki/Advanced-Scripts#player-information||
https://paste.helpch.at/ijeremahar.js
I think I've tried every combination of this command that I can think of
try to use server.getConsoleSender() and remove the var vbukkit line
doesn't work
vbukkit.getConsoleSender().sendMessage("test")
I was using before, and it worked by sending a message to the console
(I already tried vbukkit instead of server)
uh
Oh
I think I see why
I think the placeholder is ran async, but you can't dispatchCommand in async, only sync
what are you trying to do? execute a command through the console or send a msg to the console?
console command
If the placeholder = yes, then it executes a command that gives the player the permision I want
are you using the placeholder in TAB ?
Yes, but only to check if it works.
It's working, thank you 😄
Wait, 2.11.1 should work? The #1-20 channel didn't say it was updated yet nor the spigot page
woops sry 4 reply ping
yeah. or if not then latest development build
which you can get here
Hello
is there any placeholderapi placeholder that can do next:
check if another placeholder is numerical
example:
%player_stats% when parsed outputs 1
%player_position% when parsed outputs left
now we use %check_if_numerical_output_{player_stats}% when parsed will output for example yes
%check_if_numerical_output_{player_position}% when parsed will output no
is this possible/
placeholders work fine for the individual player. as soon in image https://prnt.sc/vJ55-44sQ1V8 , but im unsure of the actual placeholders/program to get top players to show.
wait if there's 1.19 support then why is it labeled as unsupported in #1-20?
Idk @trim mist
Is there a Statistic placeholder that can output the total number of ender dragon deaths for example?
It is common, not just one player, but all together
ah alr
anyone know why %leaderheads_name_{statistic_jump}_daily_1% doesn't work?
%math_0_{statistic_mine_block:diamond_ore}-{statistic_use_item:diamond_ore}% There is no way to remove this - ?
[17:35:24] [Server thread/WARN]: [PlaceholderAPI] Failed to set ScriptEngine for javascript placeholder: dameCristal
[17:35:24] [Server thread/WARN]: [PlaceholderAPI] Failed to set ScriptEngine for javascript placeholder: dameStatus
[17:35:24] [Server thread/WARN]: [PlaceholderAPI] Failed to set ScriptEngine for javascript placeholder: dameTitulo
[17:35:24] [Server thread/WARN]: [PlaceholderAPI] Failed to set ScriptEngine for javascript placeholder: cooldown
[17:35:24] [Server thread/WARN]: [PlaceholderAPI] Failed to set ScriptEngine for javascript placeholder: cooldowns
Ughh
What to do
it really works but how do I remove the - there is no way?
what are you wanting to remove?
try removing the engine for all those scripts in the javascript_placeholders file
dameCristal:
file: dameCristal.js
engine: nashorn
dameStatus:
file: dameStatus.js
engine: nashorn
dameTitulo:
file: dameTitulo.js
engine: nashorn
cooldown:
file: cooldown.js
cooldowns:
file: cooldown.js
What is the engine?
here
oghhh
sorry
It now dosen't even apear
In deluxemenus
Is there a Statistic placeholder that can output the total number of ender dragon deaths for example?
Obviously, you've bought/downloaded a package for deluxemenus/placeholderapi
I've seen it before
probably not, statistics are per player
Ok, thanks❤️❤️❤️
And here is a more complicated question, whether it is possible to make the time is displayed depending on the number, I mean the words. For example, not 1 day, but 1 day. And so with the hours and minutes.
If you use this. But I don't understand how it can be implemented. Has anyone from here done this?
Yes, what are you trying to format?
First it sayd %java_script-cooldow….% now it don’t even apear in gui
?startuplog
can you send that over
I use Statistic, and output the played time
and send over your deluxemenus file @wispy hull
%formatter_number_time_fromSeconds_<number>% most likely
I use 3 values, day, hour, minute
you want to use all 3?
Well I have it in turn, if he played only 3 hours, then displayed only 3 hours, 0 minutes, if it is already 2 days, then displayed all together
I just do not understand how to make the correct display of endings, at the moment I can display this:
2 days (singular) 3 hours (plural) 31 minutes (singular)
I just do not know how to explain it to you in English to make you understand🥺😔 I, for example, have a word in the plural when there is a number 1, and this should be when the number 2.
I feel like you're going to have to make a custom javascript
I thought I had one, but I do not
Meaning.
Not 1 days played, but 1 day
How can I implement this in Js?
%formatter_number_time_fromMinutes_{statistic_minutes_played}% What condition should I set for this placeholder?
var timePlayed = parseInt("%statistic_seconds_played%");
var out = "";
if(timePlayed>=86400){
var days = timePlayed/86400;
timePlayed -= days*86400;
out = days+" day";
if(days!=1)
out = out+"s";
}
out;
something like that maybe
wrote it in discord so
then add hours, minutes, etc.
I've been agonizing with this question for two days now, but I'd appreciate it if you could help me out. 🥺❤️
Wow
I will try this in a few hours, thank you so much for the tip!
Thank you so much again for your help! ❤️❤️❤️❤️I hope everything works out, I'll try to figure it out, if I have any questions, can I contact you later?
Yep you can always ask here
Thanks!❤️
How would I get a specific rank's prefix?
@crisp stormLP?
Yes
it really works but how do I remove the - there is no way?
" - "
For example, I have mined 10 blocks of diamonds and instead of showing only the 10, it shows -10.
%math0{statistic_mine_block:diamond_ore}-{statistic_use_item:diamond_ore}%
using %luckperms_prefix%Returns the player's prefix
Thank you, but I'm trying to get a specific rank's prefix
@crisp storm I don't think that is possible with papi here's all of LP placeholders https://luckperms.net/wiki/Placeholders
Thank you, I ended up making my own placeholder
It is possible with the element placeholder %luckperms_prefix_element_<element here>% where elements are any of the stacking rules you see in the luckperms config for meta-formatting. Example %luckperms_prefix_element_highest_on_track_staff%
I couldn't send more
?startuplog
have you heard of mastercooldowns?