#placeholder-api
1 messages · Page 54 of 1
nah it's alr
thanks for your assistance
I even wrote requierments in the second item 😭
that's why both didn't work
man
happens
sometimes I add an s to view_requirement or click_requirement and wonder for hours why it doesn't work 
I checked that hoping it was the issue*
didn't realise it was the one below
I am making rank upgrades in my server, so if like a user buys a rank it shows him the second one and for a cheaper price instead of buying it instantly for a higher one
would be cool
It says there are no updates available for this expansion...
oh
Do someone know what's the cause of this bug?
[Server thread/ERROR]: [ModernPluginLoadingStrategy] Could not load plugin 'PlaceholderAPI-2.11.5.jar' in folder 'plugins\.paper-remapped'
org.bukkit.plugin.InvalidPluginException: java.lang.ExceptionInInitializerError
at io.papermc.paper.plugin.provider.type.spigot.SpigotPluginProvider.createInstance(SpigotPluginProvider.java:129) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at io.papermc.paper.plugin.provider.type.spigot.SpigotPluginProvider.createInstance(SpigotPluginProvider.java:35) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at io.papermc.paper.plugin.entrypoint.strategy.modern.ModernPluginLoadingStrategy.loadProviders(ModernPluginLoadingStrategy.java:116) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at io.papermc.paper.plugin.storage.SimpleProviderStorage.enter(SimpleProviderStorage.java:38) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at io.papermc.paper.plugin.entrypoint.LaunchEntryPointHandler.enter(LaunchEntryPointHandler.java:40) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:546) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:292) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1215) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:330) ~[paper-1.21.jar:1.21-130-b1b5d4c]
at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
Caused by: java.lang.ExceptionInInitializerError
at java.base/java.lang.Class.forName0(Native Method) ~[?:?]
at java.base/java.lang.Class.forName(Class.java:534) ~[?:?]
at java.base/java.lang.Class.forName(Class.java:513) ~[?:?]
at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:78) ~[paper-api-1.21-R0.1-SNAPSHOT.jar:?]
at io.papermc.paper.plugin.provider.type.spigot.SpigotPluginProvider.createInstance(SpigotPluginProvider.java:125) ~[paper-1.21.jar:1.21-130-b1b5d4c]
... 9 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 3 out of bounds for length 3
at PlaceholderAPI-2.11.5.jar/me.clip.placeholderapi.PlaceholderAPIPlugin.<clinit>(PlaceholderAPIPlugin.java:58) ~[PlaceholderAPI-2.11.5.jar:?]
at java.base/java.lang.Class.forName0(Native Method) ~[?:?]
at java.base/java.lang.Class.forName(Class.java:534) ~[?:?]
at java.base/java.lang.Class.forName(Class.java:513) ~[?:?]
at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:78) ~[paper-api-1.21-R0.1-SNAPSHOT.jar:?]
at io.papermc.paper.plugin.provider.type.spigot.SpigotPluginProvider.createInstance(SpigotPluginProvider.java:125) ~[paper-1.21.jar:1.21-130-b1b5d4c]
... 9 more
try 2.11.6
Execute /papi dump and send the generated link here please.
<link removed by me>
thx. It work now, i tried this version earlier and it didn't worked that's weird
Now you seem to be running the newest version of the expansion. Do you still get errors?
Yeah
1s
actually
This issue seems to have corrected itself
This there a way to delete this?
Hmm. I don't think there is a way to do so. Is there a reason you want it removed?
It has the servers version and stuff all on display
That is my only reason
I dont really care
But I would prefer that it was removed.
Wait I can literally just delete the messages
im stupid
thx cya!
I think I have a issue.. When multiple players are online, the coin placeholder (I’m using CoinsEngine) seems to bug out. For a few milliseconds, it briefly shows another player’s coin balance before switching back to the correct amount.
I’m displaying the placeholder through the BetterHUD plugin, but their support hasn’t been helpful—they’ve probably been ignoring me for a while.
Any ideas on how to fix this or sommething?
can someone help? when ever i donwload papi it just causes random events at random times. i dont know why its not anybody else on server and its only when i have the plugin installed. i have screenshots too
i have been trying to download the papi dependencies for a while like a good 30 mins any help on why its not working?
omds this log doesnt want to get pasted this day couldnt get any worse
Hey guys, I'm tryna implement placeholder requirements to one of my plugins and im kinda stuck on something
Does placeholderapi support inner placeholders?
like %math_%player_level%>10%
it works when i add an extra % to the beginning of player_level like %%player_level% but lefts an % in
Hey all, is there a placeholder that will list all installed plugins?
There isn't one that is standalone. I did see this plugin had one though: https://www.spigotmc.org/resources/30-off-usm⚡-1-13-1-21-⭕-manage-your-server-easily-⭕-plugins-files-stats-and-more.112006/. Not sure I'd install an entire plugin just for a placeholder and I can't tell you what exactly this plugin does and how good it is at it
So, PlaceholderAPI does not support inner placeholder. However, some expansions, such as the Math expansion do support inner placeholders with a different format. In your case, it would look something like this: %math_{player_level}>10%.
I don't see any mentions of PlaceholderAPI there but check the repositories you've declared. Some time ago the repository url had to change. It is now https://repo.extendedclip.com/releases/
Also, it seems that you have a failure connecting to maven central Connect to repo.maven.apache.org:443 [repo.maven.apache.org/199.232.80.215] failed: Connect timed out
yep, i figured that out, thx
do you know any way to fix it?
its still happening to me till now
i keep getting this error```PS C:\Users\Racha Rachad\IdeaProjects\LuckEvents> mvn clean package
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------------< me.imsonulucky:luckEvents >----------------------
[INFO] Building LuckEvents 1.0-SNAPSHOT
[INFO] from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
Downloading from central: https://repo.maven.apache.org/maven2/me/clip/placeholderapi/2.11.2/placeholderapi-2.11.2.pom
[WARNING] The POM for me.clip:placeholderapi:jar:2.11.2 is missing, no dependency information available
Downloading from central: https://repo.maven.apache.org/maven2/me/clip/placeholderapi/2.11.2/placeholderapi-2.11.2.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.456 s
[INFO] Finished at: 2025-04-04T05:32:26+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project luckEvents: Could not resolve dependencies for project me.imsonulucky:luckEvents:jar:1.0-SNAPSHOT
[ERROR] dependency: me.clip:placeholderapi:jar:2.11.2 (provided)
[ERROR] Could not find artifact me.clip:placeholderapi:jar:2.11.2 in central (https://repo.maven.apache.org/maven2)
[ERROR]
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
update version to 2.11.6
someone? :p
any idea how to disable worldguard messages ?
/rg flag region deny-message -e i found this but is it correct ?
this will be an issue with either the plugin ur displaying the placeholder in, or the placeholder expansions
placeholderapi will simply return whatever value its given, so if it works in /papi parse me %placeholder% command, then the issue will be elsewhere
Hello, I don't understand how placeholders work with args. I mean, I want, for example, the placeholder %player_gamemode% to show the {target} gamemode.
Like i tried %player gamemode_{target}% but didn't work
/papi parce {target} %player_gamemode%
/papi parse {target} %player_gamemode%only shows the player name and then the gamemode of the player. Can't i just use %player gamemode_{target}% or something like this? I only want to show the gamemode
I'm not sure what you want to do
Do you want to find out the gamemode of a player or display it?
Okay thanks. 😼
To display the gamemode of the player
Can you help me, please?
just use %player_gamemode%
it gets replaced with the gamemode of a player in places that it's supported
if you use this placeholder and it doesn't work it is not supported
if it shows the wrong gamemode you're using it in the wrong place
whats the newest version that works with java8?
Latest release on spigot will work with java 8
Nope
What do you mean by "Nope"? Do you get any warnings/errors on startup at least if it doesn't start?
It said some shit about java version
Like 65 or something
Which means it needs java 21 or newer
I tried 2.10.10 and that also had that error
PlaceholderAPI is compiled to target Java 8. It should work just fine. Have you downloaded it from spigot when you received this error?
Uhm, where else can you even download it
well its probably from spigot
Can you please try once again the latest version from Spigot and send the startup log here?
pretty sure my hard drives arent dead lol but sure why not
well turn out a ecloud plugin was compiled for java21 and i justfailed to notice
silly me
redownloading it with ecloud fixed that
kinda wierd but ok
Everything works now?
i hope
ok
hi, is there a palceholder that parses the placehodler value from another player? Similar to /papi parse <player>.....
There is an expansion called OtherPlayer that does what you want
thanks!
Ah yeah. I was thinking of ParseOther
We can try and help with the error as well maybe?
Oh, it looks like it is a version problem, but thanks for the support
Hey, someone know why my placeholder is not register on my plugin?
public static void sendColorFormat(Player player, String message) {
String spigotMessage = HexaColorSupportUtil.hex(message);
PlaceholderAPI.setPlaceholders(player, spigotMessage);
player.sendMessage(spigotMessage);
}
but work if I /papi parse me
because you forgot to reassign the spigotMessage string to the result of the PlaceholderAPI.setPlaceholders function
I want to display information about %floodgate_isBedrock% (plugin floodgate) about each player. I have a TAB plugin. He adds a belowname string where placeholders can be placed, and when I insert %floodgate_isBedrock% there, the information is displayed not by the player who has this belowname, but by the one who is watching. For example, I log in from the Java version, and the players under the nickname who play with the Bedrock version display false, and if I log in from Bedrock and look at the players who play with Java, they display true. I can assume that the placeholder takes information from the player who "sees" this placeholder, and not from the player above whom (belowname) it is located. How can I make sure that the players have their client (Java or Bedrock) displayed above the nickname from which they logged on to the server. The first screenshot is from the Java Client, the second screenshot is from the Bedrock Client. Thx
do you have an example ? plz ?
literally add spigotMessage = in front of the 3rd line you sent
you called the PAPI method, but aren't using its result
you just have to save it in your string before sending it to the player
Thanks, I just saw, I'm stupid
hi
placeholder %bungee_myserver% which i placed in plugin znpc plus displays incorrect number of players on server i need
when a player enters the server, it says that my server's online is being replenished, but when I connect to his server and write **papi parse me %bungee_myserver% ** it shows that there is 1 player on the server I need, although in fact there are 2
When or where to look for working CheckItem expansion for 1.21+?
How to transform the result of a placeholder
I would like the result of %essentials_fly% to be OUI or NON
You can use the changeoutput expansion
It can take in another placeholder as input, then compare it to a value you give it and give a different result based on that comparrison
But also, all the boolean placeholders (thouse returning yes or no) can be customized in the PlaceholderAPI config
So, if you want to change all placeholders that return yes/no, you can do it from the config
thx
Who can help with connection timeout
[07:35:45 WARN]: [PlaceholderAPI] Failed to download expansion information
java.net.ConnectException: Connection timed out
at sun.nio.ch.Net.connect0(Native Method) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:579) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:568) ~[?:?]
at sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:593) ~[?:?]
at java.net.Socket.connect(Socket.java:633) ~[?:?]
at java.net.Socket.connect(Socket.java:583) ~[?:?]
at sun.net.NetworkClient.doConnect (NetworkClient.java:183) ~[?:?]
at sun.net.www.http.HttpClient.openServer (HttpClient.java:533) ~[?:?]
at sun.net.www.http.HttpClient.openServer (HttpClient.java:638) ~[?:?]
at sun.net.www.http.HttpClient.<init>(HttpClient.java:281) ~[?:?]
at sun.net.www.http.HttpClient.New(HttpClient.java:386) ~[?:?]
at sun.net.www.http.HttpClient.New(HttpClient.java:408) ~[?:?]
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.ja va:1324) ~[?:?]
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java: 1257) ~[?:?]
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1 143) ~[?:?]
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1072) ~[?:?]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0 (HttpURLConnection.jav a:1702) ~[?:?]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java :1626) ~[?:?]
at java.net.URL.openStream(URL.java:1161) ~[?:?]
at com.google.common.io.Resources$UrlByteSource.openStream (Resources.java:72) ~[patc hed_1.16.5.jar:git-Purpur-1171]
at com.google.common.io.ByteSource$AsCharSource.openStream (ByteSource.java:456) ~[pa
I need stable this ecloud download
Have you tested this version of PlaceholderAPI? #placeholder-api message
im adding a custom placeholder to my teams plugin. the main usage for this is adding it to an executableitem to get the team name of a player. I have two questions
how can i add an arugment to the placeholder (ex: %steams_<player>_team%)
how do i make it so that the executableitem plugin can access it
heres my code:
public String onRequest(OfflinePlayer offlinePlayer, @NotNull String[] params ) {
if (offlinePlayer != null && offlinePlayer.isOnline()) {
if (params.length ==2 ) {
String playerName = params[0];
String command = params[1];
if (command.equalsIgnoreCase("team")) {
TeamManager teamManager = new TeamManager(teamData,schmuglTeams);
return teamManager.findPlayerTeam(playerName);
}
}
}
return null;
}
params is a string, not an array, you can split it however you want, in your case, split by _
and since player names can have underscores, I'd recommend you take the last element of the given array, and then substring the original params string to get the player name
and unsure what you want to do with ExecutableItems
I’m just not sure how to integrate the placeholder into an EI
for example, if I type my placeholder into an ei it should work whenever the ei tries to use it. I’m not sure how to do that
I think this question is better suited for the EI team
We're not familiar with their API
Hi! I created a MineClan plugin that includes its own placeholder (%mineclan_clan%) and I would like to publish it to PlaceholderAPI. I noticed that the link to the GitHub repo is not working. What are the current steps to publish my expansion to eCloud?
Hello. To publish an expansion on the ecloud, you need an account. The account creation is a manual process that one of our admins would usually complete.
This is to stop spam accounts from being created. There is one important rule for account creation:
ECloud expansions (external Jars) are generally reserved for cases where no external plugin is required for the expansion to operate correctly. If your expansion is dependent on another plugin to function it’s highly recommended that it be built into that plugin, you can find how to achieve that here. This aids with ease of use and version handling.
If you have a good reason to have the expansion be external/different jar, please let me know and I'll forward your request to our admins.
the thing is that I have a plugin, right? and I want in the sternalboard when I type %mineclan_clan% it shows the clan I am in (if the player doesn't have a clan then it shows none)
Can you create an account on ecloud for me so I can put this placeholder?
No, we told you already to include the expansion in your plugin directly
Only I want it to be in ecloud
Blitz already explained why we'd rather have expansions requiring a plugin to be included inside said plugin instead of on the ecloud
There's no reason for you to have it on the ecloud instead of inside the plugin
It's an extra step for you to upload to your expansion every time you have want to update it, and then wait for it to be verified every time
It's an extra step for users to download the expansion from the ecloud, while having to make sure they're using the right version of the expansion for your plugin's version
And it's an extra step for us to manually verify your expansion's code every time you update it
Just include it in your plugin, and it'll be fine, it'll do the same thing but easier, and with no extra step for anyone
So I already have my own placeholder in the plugin?
Add them within your plugin, yes
I sent you the wiki page explaining what you need to do for it to work
not working
define "not working"
and I did everything right. I use sternalboard, what should I do
idk
what is idk?
I don't know
so what next. if not working
Generated: April 10, 2025, 11:58:58 AM UTC
PlaceholderAPI: 2.11.5
Expansions Registered:
player [Author: clip, Version: 2.0.8]
skinsrestorer [Author: knat, AlexProgrammerDE, Th3Tr0LLeR, McLive, DoNotSpamPls, Version: 15.6.1]
Expansions Directory:
Expansion-player.jar
mineclan.jar
Server Info: 1.19.4-R0.1-SNAPSHOT/3763-Spigot-7d7b241-5a5e43e (MC: 1.19.4)
Java Version: 20.0.2
Plugin Info:
BMSprawdzanie [Version: 1.0]
Essentials [Version: 2.21.0]
EssentialsSpawn [Version: 2.21.0]
LPC [Version: 3.6.1]
LuckPerms [Version: 5.4.158]
MineClan [Version: 1.0]
NametagEdit [Version: 4.5.23]
PlaceholderAPI [Version: 2.11.5]
Rcheck [Version: 1.0]
SkinsRestorer [Version: 15.6.1]
SternalBoard [Version: 2.0.2]
UltraBar [Version: 2.3.2.1]
which placeholder did you use?
what does it show in scoreboard?
what's the code of said placeholder?
Hey guys
is there a placeholder or expansion than can tell how many entities there are per world ?
the server expansion only gives the total
maybe world expansion
doesn't seem like it
@open belfry I just want to clarify some stuff with you because it seems there was a misunderstanding.
PlaceholderAPI lets you register 2 types of expansions: internal and external.
Internal expansions are built directly into your plugin.
External expansions are built separately and require to be downloaded and installed manually (or with the ecloud command if they are published to the ecloud).
Only external expansion can be published to the eCloud.
Since you are creating your own plugin, you should build your expansion directly in your plugin. From the dump you sent, it seems that you have not properly registered the expansion. You can follow this tutorial on how to create internal expansions: https://wiki.placeholderapi.com/developers/creating-a-placeholderexpansion/#making-an-internal-expansion. If you are having problems even after following that part of the wiki, please come back with code. (We need the expansion class and the code where you register the expansion).
checked that too, it doesn't give those stats
at this point i'm looking at plugins like plan etc
I wish we had access to the World expansion. There's so many simple placeholders that we could add to it.
It was but it was on thienbao's github since I believe he made it. But I can't find it anymore. He either privated it or deleted it.
I just found it... https://github.com/WickyPlays/World-Expansion
I had a fork. Last time I searchd my github, I didn't select "All"
Hello, how can I change configs?
I can't find a config file in the "PlaceholderAPI" folder.
https://github.com/PlaceholderAPI/World-Expansion/issues/1
hmmm blitz.. i see you
@idle coral @gleaming charm @junior musk
ok lil bot
Did the plugin enable?
PlaceholderAPI I mean
do you see it colored green when executing /plugins?
Yes
Have you tried restarting your server? And the config still doesn't show up?
YES
Maybe I'm misunderstanding this, but in your plugins/PlaceholderAPI, you don't see a config.yml file?
Yes
Not sure how that can happen. Can you send over your startup logs?
Anyone sure how i can grab the amount of players connected on a certain velocity server?
and even globally connected to the proxy
The bungee expansion was abloe to do that. Might not work anymore.
Will require you to enable BungeeMessaging in Velocity if you haven't already.
Are you aware of how I could do this?
You want to make your own plugin/expansion for this?
I am so confused on how other Velocity servers can do it
I'm sorry but I don't fully understand what you want to do here. Are you looking for an existent placeholder for this or are you looking to create your own?
I am looking for an existing one
I am wanting to just get the amount of players globally connected to the Velocity Proxy and players on a certain server
@floral crane @floral coral , I've updated the World expansion if you guys are still interested. I have added the following:
- %world_fulltime_<world>% # Gets the full time the world has ran for (this value can be changed by plugins and does not update if the day cycle is stopped)
- %world_fulltime_strict_<world>% # Gets the full time the world has ran for. It is the exact time that the world has ran for and can not be modified by anyone or anything. It only works on 1.16.5 and higher though
- %world_entities_<world>% # Gets the entities count in a world
- %world_entities_living_<world>% # Gets the living entities count in a world
I have tested it on a Paper 1.21.4 server with PlacehodlerAPI 2.11.6. It worked for me but would love if you guys tested it as well before I push it to the eCloud.
If you don't know how to manually install an expansion, here are the steps:
- Copy file to
/plugins/PlaceholderAPI/expansions - Make sure you don't have a similar file (maybe an older version fo the expansion) in the same folder. If you do, delete the old one
- Execute
/papi reload
/papi ecloud download bungee
/papi reload
Then use:
%bungee_total% - count on velocity proxy
%bungee_SERVERNAME% - count on SERVERNAME
If it doesn't work, in your velocity config, make sure bungee messaging is enabled.
That worked thank you!
thank you so much for this! 🙏
I'll test it and check if there are abnormalities
If you want to read the full changelog, you can here: https://github.com/PlaceholderAPI/World-Expansion/pull/4.
Hey, I just wanted to ask if anything has recently changed with the GUILDS placeholders in Essentials. I haven’t modified anything, and I left the configuration as it was, but suddenly the guild tag placeholder started showing up as {GUILD_PREFIX}in chat instead of displaying the actual tag. Other placeholder still works fine in another plugin I use — the issue seems to only affect Essentials. Any ideas what might be causing this?
Heya, any idea what makes this happen with formatter?
[07:47:25 WARN]: [PlaceholderAPI] [formatter] Cannot convert {servervariablesvaluecoins} into a BigDecimal.```
Do you have a plugin that intreprets placeholders in chat, such as ChatInjector?
Not sure if that's the issue your having but yeah
Never mind, I’ve already figured it out!
It turns out that the issue was caused by a new option introduced in the latest Essentials update. By default, it's set in a way that breaks some placeholders — including the guild tag in my case.
To fix it, you just need to set chat.paper-chat-events to false in your config.yml.
Here’s the relevant explanation from the changelog:
However, if you use any plugins that rely on the legacy AsyncPlayerChatEvent, you may run into compatibility issues when upgrading to 2.21.0.
For now, you can switch back to the legacy events by setting chat.paper-chat-events to false in config.yml, but be aware this config option is not intended to be used long-term and could be removed in the future.
You should aim to replace any incompatible plugins with ones that support Paper's chat events
Hi, I am trying to use the placeholder %parseother.....% But I am getting this error:
https://paste.helpch.at/momiciwupa.css
Does someone knows what am I doing wrong?
Try
%parseother_{Zunalleing}_{ecoskills_taming}%
why does "/papi ecloud download Plan" not work? i wanted the Plan api for my leaderboard
plan doesnt exist on ecloud
i believe its already built into the plugin
you should see it in /papi list
hello, I have problems downloading the placeholder expansions, I put /papi ecloud download and no expansion appears to download.
Thank you soo much! this is gonna help
i was told this place might be good for my issue, would i be able to discuss server/forward porting here?
MineResetLite is not developed or maintained by us. If they have an official help system (such as discord), then I'd suggest you ask there. If they don't, you can ask in #general-plugins and wait until (if) someone that has knowledge about that plugin answers you.
Try #minecraft
how about the world guard ?
what is the papi to know how many players are inside the specific region ?
You can find the placeholders for it here: https://wiki.placeholderapi.com/users/placeholder-list/#worldguard. I can't see any placeholder showing what you need.
that's were PlayerList comes in clutch https://github.com/Tanguygab/PlayerList-PlaceholderAPI-Expansion/wiki#list-of-players-in-a-worldguard-region

I keep forgetting that it exists but it is a good expansion
sir, i have reply in the mc plugin support list ^_^
I took an example from the website https://github.com/PlaceholderAPI/Javascript-Expansion/wiki/Community-Scripts#has-permission and I replaced the placeholder there with the one that I will use, but not the example, not my code does not work, other javascript placeholder examples from this site work, I connected the file correctly, all the necessary dependencies are also there, the placeholder that I want to use in the script is also working
file code
// create a variable and name it wantever you want like this
// and use the placeholder you want, i'm using this one
var haspermission = "%checkitem_amount_mat:string%";
// create a function with the name you want
function permission() {
// if the haspermission variable that we created before return yes (true boolean)
// the js placeholder will return what we set in the return down
if (haspermission == 0) {
return "&aYou have the Test permission!";
}
// if the haspermission varibale wasnt true it will return what we set down
else {
return "&cYou don't have the Test permission!";
}
}
// by this we are calling the function to run
permission();```
the file is connected correctly, if you insert another code into it, it will work.
```js
example:
file: example.js
souls:
file: souls_tag.js```
tested and all works as it should ❤️
Question
you think it's possible to return the number of chunks loaded in each world?
the server expansion has the %server_total_chunks% placeholder but not per world
Yes it is possible. Will add it
You rock!
The world expansion is slowly becoming a serverUtils Expansion ngl
@floral crane (and @floral coral if interested), I've added the following placeholder to the World expansion:
- %world_total_chunks_<world>% # Gets the loaded chunks count in a world
But I've also made some changes to existent placeholders to better align them with the Server placeholders:
- %world_entities_<world>% --> %world_total_entities_<world>%
- %world_entities_living_<world>% --> %world_total_living_entities_<world>%
Also, the values of total placeholders (the 3 mentioned above), are now cached for 1 minute. This is also aligned with the Server expansion which does the same.
Will let you guys test first and will push to ecloud later.
There is no time to wait! Ask your question @modest ruin!
I just tested it
There's a weird thing happening, when parsing the total chunks, the value remains 3 for all 3 worlds
i increased my simulation distance from 2 -> 5
it still remained the same
- %world_entities_<world>%
- %world_entities_living_<world>%
these ones also dont work
My server is a paper 1.21.1
i'll check on 1.21.4
doesn't work on 1.21.4 either
Hello, when I wanna integrate PAPI into my plugin, it returns the repository wasn't found..
I see where I've made the mistake. Will fix it later today
I think the repository on the wiki is the old one. The new one is: https://repo.extendedclip.com/content/repositories/placeholderapi/.
Gotcha
Thanks again 🙏
@Override
public String onPlaceholderRequest(Player player, String params) {
the code executed here is on main thread?
Is there a way to limit math output?
So this %math_9e99999*9e9999% can't happen and crash my whole server?
Some plugin will use this value and just crash the hole server.
depends on the plugin parsing the placeholders
Hey guys what's wrong here
Does it depend on the plugin that is using the placeholder?
that's exactly what I just said, yes
I hadn't understood very well. OK thanks
Hello! Im having an issue with placeholders not work at all and no error outputs to the chat/console, and the placeholders are not being replaced.
My paper version:
You are running the latest version
Previous version: 1.21.5-22-6c2b037 (MC: 1.21.5)
Command i use /papi parse me %player:ping% the output %player:ping%
Also i got the same issue in the TAB - "&7Ping: %player:ping_colored%" and it just shows Ping: %player:ping_colore%
Thanks in advance!
you checked the wrong PAPI documentation 😅
those are Text PlaceholderAPI's placeholders (the Fabric mod)
Here's our PlaceholderAPI (for Spigot/Paper)'s placeholder list https://wiki.placeholderapi.com/users/placeholder-list/
Hey, I'm trying to use this placeholder, but it just gives an error. I don't understand why. If I run it without parseother, the luckperms part works. I need to get the player name from a UUID.
%utils_parse_parseother_unsafe_{luckperms_meta_clans-{luckperms_meta_clans-list-id-3}-leader}_{player_name}%
use Utils' parseplaceholder placeholder instead of ParseOther
%utils_parseplaceholder:[{luckperms_meta_clans-{luckperms_meta_clans-list-id-3}-leader}]_player_name%
Unfortunately that doesn't work, %luckperms_meta_clans-{luckperms_meta_clans-list-id-3}-leader% contains a UUID and I want to get the player's name from it.
Really? That would be really cool 😄
that was quick, thank you very much, I will test it right away 🙂
It works perfectly 🙏
can you make sure player names still work ? 😅
yes player names are still working 😄
perfect, thanks
someone can help me...
i need to get items adder id using a papi command
/papi parse me %checkitem_getinfo:mainhand_nbtstrings:% and im stuck in this part
with all the nbt info apearing in chat
how do i filther that..
Can I somehow install a papi dependency (like luckperms,vault etc.) with my plugin?
Hey, does the placeholder also work with offline players?
it does
though not all placeholders do
so while Utils will attempt to parse the placeholders you give it for offline players, if said placeholders don't support offline players, they won't return anything
Hmm okay, then player_name will not support offline players? because if I want to convert a UUID from a player to a player name that is offline, nothing is output.
It should work with offline players
unless said players never joined the server (and therefore their name isn't cached), it should work
Ah okey I test it with a player who has often been on the server, I tried it again with the player name, that works, but not with the uuid
Hi, do you know what's wrong with my dual condition?
%changeoutput_equals_input:{plasmovoice_hasVoiceChat}_matcher:true_ifmatch:{changeoutput_equals_input:{plasmovoice_microphoneMuted}_matcher:false_ifmatch: _else: }_else: %
if plasmovoice_hasVoiceChat = true and if plasmovoice_microphoneMuted = false, then or else
hello ? what is the placeholder for kills leaderboard ?
this isn't supported, thouuuuuugh it can still be done pretty easily
%changeoutput_equals_input:{plasmovoice_hasVoiceChat}{plasmovoice_microphoneMuted}_matcher:truefalse_ifmatch:_else:%
assuming both else: are the same
%statistic_player_kills% + ajLeaderboards
Why doesn't the deluxemenus plugin show the number when I type placeholder-%bolt_queue_PROFILE_UNRANKED_fireballfight_playing% in the value?
Hey, so i wanted to make some Leaderboards for my Server, the placeholder all work fine but they only update when i restart the server, ist that some kind of setting/config that im missing or how can i fix that?
Where are you using the placeholders? (Eg. In a hologram, plugin gui, chat, etc)
in a hologram
I believe it's down to the hologram plugin and/or the plugin providing the placeholders.
What happens if you reload the hologram plugin, does the placeholders update?
no, only when i restart the server
What plugin is the placeholders from?
essentials and ajlb
Oh, ajlb. I think they have a refresh property - one sec.
Is it a baltop leaderboard per chance?
for ex. if a Person has 3k Money and i pay him 1k and i do /money to that person i see 4k but if i do /papi parse me... its still on 3k
also
Yes or no
its baltop, top kills and top deaths
Do you have the same issue for all 3 leaderboards?
yea
what about the money lb, i do it with just &4%essentials_baltop_player_stripped_0% &8-&r &2$%essentials_baltop_balance_commas_0%
so i dont use ajlb there
I think Essentials doesn't automatically update baltop for performance reasons, it does it every 30 minutes or something like that.
I believe you can force update with /baltop force iirc
ohh thank you, that worked, i just need to find a way that essentials updates more often xD
do u know by any chance if theres a config for that?
A quick Google suggests its actually recalculated every 2 minutes.
mhh weird, it isnt updating for me tho
Do you show up on baltop?
no, but i mean like the money of other player isnt updating
Give it time
i mean i played yesterday for like 2h and it didnt update once
Did /baltop update?
no
no
I recommend having a look in Essentials' Discord about this, I can't find anything immediately obvious online about this issue.
where do i get the dev builds
Can someone help me with the Math expression? I want to add to online players numbers together, but for what ever reason I get the correct number with three 0 decimals. I have tried to use the decimal parameter, but it says is would be default 0, so it makes no sense. Seems like the doc is outdated?
https://andre601.ch/expansions/math/#decimals
My string:
%math_:[0]_{bungee_survival}+{bungee_creative}%
This returns 17.000
17 is correct, but I do not want the .000 behind
This returns broken, even though it seems correct via the doc:
%math_[0]:[up]_{bungee_survival}+{bungee_creative}%
Resolved. If anyone searches for this at a later date, the correct format is:
%math_0:_{bungee_survival}+{bungee_creative}%
Try: %math_0:down_{bungee_survival}+{bungee_creative}%
This should rownd down to 0 decimals
ava.lang.NoClassDefFoundError: Could not initialize class de.shaded.checkitem.nbtapi.NBTReflectionUtil
at de.shaded.checkitem.nbtapi.NBTItem.convertItemtoNBT(NBTItem.java:347) ~[?:?]
at de.shaded.checkitem.nbtapi.NBT.itemStackToNBT(NBT.java:447) ~[?:?]
at de.shaded.checkitem.nbtapi.NBT.modifyComponents(NBT.java:304) ~[?:?]
at com.extendedclip.papi.expansion.checkitem.CheckItemExpansion.getItemAmount(CheckItemExpansion.java:1007) ~[?:?]
at com.extendedclip.papi.expansion.checkitem.CheckItemExpansion.onPlaceholderRequest(CheckItemExpansion.java:778) ~[?:?]
at PlaceholderAPI-2.11.7-DEV-206.jar/me.clip.placeholderapi.PlaceholderHook.onRequest(PlaceholderHook.java:32) ~[PlaceholderAPI-2.11.7-DEV-206.jar:?]
at PlaceholderAPI-2.11.7-DEV-206.jar/me.clip.placeholderapi.replacer.CharsReplacer.apply(CharsReplacer.java:119) ~[PlaceholderAPI-2.11.7-DEV-206.jar:?]
at PlaceholderAPI-2.11.7-DEV-206.jar/me.clip.placeholderapi.PlaceholderAPI.setPlaceholders(PlaceholderAPI.java:71) ~[PlaceholderAPI-2.11.7-DEV-206.jar:?]
at PlaceholderAPI-2.11.7-DEV-206.jar/me.clip.placeholderapi.PlaceholderAPI.setPlaceholders(PlaceholderAPI.java:99) ~[Place
sorry for the long text but how do i fix this
I don't think the CheckItem expansion was updated to support the latest versions of Minecraft.
would an update be pushed out soon to fix this?
Can't tell you that. @mint fable handles that expansion but I believe it is open source so anyone could techincally push a fix.
- player```
```lore:
- "&f%parseother_{player}_{luckperms_prefix}%"````
It seems that it takes the name, but in the menu it does not work correctly, it simply does not show anything.
@mint fable could u help 🙏 🙏 🙏 🙏
oops sorry
Please help
u can fork it and change the nbtapi version in the dependency
its nothing too complicated
overall it does work fine
%parseother_{{player}}_{{luckperms_prefix}}% try this. If this doesn't work, try %parseother_{{player}}_{luckperms_prefix}%
If you've done it, can you PR it? I think I might be able to merge PRs and then upload a new version.
I didn't fork it directly i downloaded it first and then uploaded to my github :/
but ye i can try it's very simple
Yeah I just don't have time to do it. I have so much stuff on the todo list
how can i reset placeholders?
Not work bro
Sorry
If I use {{luckperms_prefix}} it returns {luckperms_prefix}, and using {{player}} it doesn't work either.
i have zero experience in coding, wdym by fork it
Is it possible to combine a placeholder in a placeholder? I want to combine: %checkitem_remove_inslot:X% with X = %randomnumber_value_0_41% ping me if you respond please since I probably wont be online by then.
i can only ecloud download 5 hooks max is that the limit?
my PAPI version is Version: 2.11.6
There is no limit, post any errors
.
.
There is no errors...
Then what are issue are you running into
I can only ecloud download 5 hooks
Can you describe what you're doing?
Trying to get 6-8 PAPIs that I need
As in expansions?
Yeah
Using the /ecloud download command?
Which one are you having issues downloading?
They are all saying they downloaded just once I reach 5 it kicks one out and replaces it with the one I recently downloaded
Hmm, can you run /papi dump for me and paste the link it gives you?
Cool, thanks
Let's try manually downloading the expansion and placing it in the /plugins/placeholderapi/expansions folder
Yw :>
You can find the one you're looking for from here https://api.extendedclip.com/all/
There's no limit
oke
Just only install the ones you actually need for performance reasons
Can sometimes be more reliable depending on how your server handles downloading files
yeah im self hosting lol
Might be why
All good
:>
How can I do this in DeluxeMenus?
must_be_mythic:
type: string equals
input: '%luckperms_primary_group%'
output: 'mythic'
I just wanna check the group without using permissions
You mean you don't want to do this? Why?
type: has permission
permission: group.mythic
I can’t use it ‘cause it conflicts with something I added. I just wanna check it directly.
You haven't really explained what you're actually trying to achieve and why you can't use the simple method as above.
I set up the permissions to follow a rank hierarchy — like, every permission from rank A gets passed on to rank B and so on. I’m working on a rank-up system, and it works fine, but right now players can skip ranks when buying, which I don’t want. So I’m trying to fix it by locking it so they can only buy the next rank in line. Hope that makes sense. I’m not super good at this stuff, sorry
example script
material: copper_ingot
slot: 1
priority: 1
enchantments:
- DURABILITY;1
hide_enchantments: true
view_requirement:
requirements:
has_rank:
type: 'has permission'
permission: 'group.member'
display_name: '&emember Rank'
lore:
- ''
- '&7Rank: &emember'
- '&7ราคา: &a20000 L'
- ''
- '&cคุณมีแรงค์นี้อยู่แล้ว!'
does_not_have_member:
material: copper_ingot
slot: 1
priority: 2
display_name: '&emember Rank'
lore:
- ''
- '&7Rank: &emember'
- '&7ราคา: &a20000 L'
- ''
- '&8Click to purchase.'
click_requirement:
requirements:
money:
type: has money
amount: 20000
deny_commands:
- '[message] &6&lเซอร์คราส &8» &7คุณมีลูมีน่าคอยล์ไม่เพียงพอ!'
- '[sound] BLOCK_NOTE_BLOCK_BASS'
- '[close]'
click_commands:
- '[takemoney] 500'
- '[console] lp user %player_name% promote rankup'
- '[message] &6&lเซอร์คราส &8» &7เยี่ยมยอด! คุณอัพแรงค์จาก &cdefault &8» &amember'
- '[close]'
- '[sound] ENTITY_PLAYER_LEVEL_UP'
# จบ - member
OK, as I thought... another case of the XY problem.
I will help you in #general-plugins.
ok
Hi, quick question: how can I use the CheckItem placeholder to check for an MMOItems item and its amount?
I tried /papi parse me %checkitem_amount_nbtstrings:MMOITEMS_ITEM_ID=AUSTRAL% but it didn’t work.
Hi, the plugin DreamWallet appears to be deleted from ecloud and the placeholders don't work. Can it be somehow re-added to ecloud?
Hey, I'm using DecentHolograms with PlaceholderAPI to show the kills leaderboard using %ajlb_lb_statistic_player_kills* placeholders. The issue is that some names appear twice in the hologram. Any idea how to fix this or why it's happening?
^ Contacted decent holograms support about it & they told me its a placeholder issue
does checkitem works for custom_data components? It says it uses nbtstrings but it is already outdated..
please someone help me 😭
pls
I am trying to use %server_countdown_<SimpleDateFormat>_<time>%
but even the example on the website wont work: %server_countdown_dd.MM.yyyy_01.01.2020%
it just keeps returning "invalid date"
pls help 🥺
hello im new into server managment, i wonder if there is placeholder api for folia 1.21.4?
i already downloaded a placerholder plugin, but im not sure if thats the official one + its not shown in /pl
Hello. I have The newest version of funnyguilds and placeholderapi. I cant download funnyguilds placeholders. Any help?
when i type /papi ecloud download i see only factionsmap,factionsupdated,forgemodscontrol and formatter
you don't need to download anything, that plugin has its placeholder expansion built in
it should show in /papi list
Hi! I have a problem about PAPI... there's my menu /profil but some placeholder don't work ... I'm using %luckperms_prefix% who shows %img_divin% in menu and not the PNG file...
/papi ecloud download Utils
/papi reload
%utils_parse:2_luckperms_prefix%
Thanks my god!
is there a folia 1.21.4 download?
nvm did it myself
Any idea why the player util not recognize the new max durability component?
/minecraft:give 0bviouslee wooden_pickaxe[minecraft:max_damage=100,damage=100] makes /papi parse me %player_item_in_hand_durability% still parses as 59 at max
Despite the item having 100 durability (and using the item to past 59 durability works, it parses as negative numbers tho..)
does placeholderapi work on 1.21.4 or stuff like that
yep
Hi, I can't find placeholdeAPI for version 1.21.1?
Latest version on spigot will work
hello, for some reason the placeholder wont work
Treasures &e%blockquest_blocksfound_lobby%/%blockquest_allblocks_lobby%'
also it lets me create a series, edit where the blocks are
but when i right click them it doesnt say I found 1
hello everyone, I need help with using WorldGuard's placeholder.
my spawn is located under 3 regions with different priorities, and the only placeholder to get the name of the region is %worldguard_region_name%, but it only returns one region name (and it keeps changing between the 3 of the regions), is there any way to return a region with the highest priority (or check if the placeholder contains a region name)?
thank for someone help me idk how to do with this error "java.lang.IllegalArgumentException: name cannot be empty
Failed to parse placeholder '%parseother_unsafe_{parties_list_rank_member_1}_{player_max_health_rounded}%' for 'Shirahagi'"
Is there no stacktrace after this line (a multiline error)
I believe you are looking for this placeholder: %worldguard_<Any WG Placeholder>_<Priority (Lowest number = Highest priority)>%
For you it would look something like this: %worldguard_region_name_1%
Hi, quick question: how can I use the CheckItem placeholder to check for an MMOItems item and its amount?
I tried /papi parse me %checkitem_amount_nbtstrings:MMOITEMS_ITEM_ID=AUSTRAL% but it didn’t work.
First of all, hello, I am getting the error "Unknown statistic 'player_kills', chech https://docs.docdex.helpch.at/1.16.5/org/bukkit/Statictic.htlm for more info/1". I get the same error not only for 'player_kills' but also for many APIs. I tried almost everything but couldn't figure it out. Can you help?
Hi
I have thhis error
[PlaceholderAPI] Failed to download expansion information
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
See https://github.com/google/gson/blob/main/Troubleshooting.md#unexpected-json-structure
at com.google.gson.Gson.fromJson(Gson.java:1372) ~[gson-2.11.0.jar:?]
at com.google.gson.Gson.fromJson(Gson.java:1262) ~[gson-2.11.0.jar:?]
at com.google.gson.Gson.fromJson(Gson.java:1171) ~[gson-2.11.0.jar:?]
at com.google.gson.Gson.fromJson(Gson.java:1137) ~[gson-2.11.0.jar:?]
at PlaceholderAPI-2.11.6.jar/me.clip.placeholderapi.expansion.manager.CloudExpansionManager.lambda$fetch$4(CloudExpansionManager.java:183) ~[PlaceholderAPI-2.11.6.jar:?]
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) ~[?:?]
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) ~[?:?]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
Caused by: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
See https://github.com/google/gson/blob/main/Troubleshooting.md#unexpected-json-structure
at com.google.gson.stream.JsonReader.unexpectedTokenError(JsonReader.java:1768) ~[gson-2.11.0.jar:?]
at com.google.gson.stream.JsonReader.beginObject(JsonReader.java:469) ~[gson-2.11.0.jar:?]
at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:196) ~[gson-2.11.0.jar:?]
at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:154) ~[gson-2.11.0.jar:?]
at com.google.gson.Gson.fromJson(Gson.java:1361) ~[gson-2.11.0.jar:?]
... 9 more
How to fix?
Anyone know about this?
Ecloud localtime error
When using a TimeZone
/papi parse me %localtime_time_America/Mexico_City%
First of all, hello, I am getting the error "Unknown statistic 'player_kills', chech https://docs.docdex.helpch.at/1.16.5/org/bukkit/Statictic.htlm for more info/1". I get the same error not only for 'player_kills' but also for many APIs. I tried almost everything but couldn't figure it out. Can you help?
Bump on this, still unverified
Can I get my expansion verified?
https://api.extendedclip.com/expansions/floodgate/
Guys is possible to do that?
https://paste.helpch.at/asepazayim.yaml
I wanna make custom flags for factions
Using PAPI
In my case dont worl
Exist any form?
factionsuuid doesnt have a config, are you trying to change the output of the placeholder?
can you try uppercase please?
this is not a valid time
using time_ requires a SimpleDateFormat
if you wish to use a timezone instead, use timezone_ instead
durability is currently based off the default of the material, so custom durability will currently not work. this will be an issue with the expansion
ill try and sort this out
tysm :D
@warm plover
fastest tester in the world 🤨
How? with changeouput placeholder?
Sorry
yes you can use changeoutput expansion
Yeah but in this case i have 100 alternatives
But i dont think that chat size allow that
you may be able to use string expansion with its config, but this will replace a sequence of characters, rather than matching the string exactly. so it may or may not work depending on ur use case
https://github.com/BlitzOffline/StringExpansion/tree/main?tab=readme-ov-file#stringexpansion
if that doesn't work, you may have to use javascript
Should I capitalize the endings of APIs?
yes, so %statistic_PLAYER_KILLS% should work
I hope it works, I'm busy with other things right now, I'll get back to you when it's my turn 🙂
how do i show TPS on a folia server
How can I sync placeholders from PlaceholdersAPI between servers? Like for example I need to get the placeholder of something in a survival server and I am in the lobby server.
I've searched some and it shows this plugin,
is there no other way than to use this?
https://polymart.org/product/5608/astralsync-mysql-and-redis
We have no solutions for this. As you've found there are ones made by others but I've personally never used them so I wouldn't know how good they are.
This is one I've seen mentioned before: https://www.spigotmc.org/resources/papiproxybridge.108415/
Is the ecloud down or something? /papi ecloud download Player doesn't work. It just says Failed to find an expansion named: Player
Just tested it and seems to work. Are you sure you don't have a typo maybe? I see that you've manually typed the message you sent here.
Or maybe it's back now?
Yup, no typo, might work now not sure, I just downloaded it manually from the site instead
Oops sry for ping
Hello,
I would like to make a menu with deluxemenu that (opens) according to the day of the week
rather, one of my menu items is displayed differently depending on what day it is
does anyone know why it doesn't work like I did?
`"dimanche":
slot: 25
priority: 1
view_requirement:
conditions:
monday:
type: EQUALS
value: Sunday
placeholder: "%server_time_format:EEEE%"material: "basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNjljNWY1ZDA0NmJkZWU2YzM5OTZkNWM0ZGVhYjI4YjM5Y2QwZmEyZDkzNGNjMjczM2YxNDlkNmJjYmRmOGNhIn19fQ==" display_name: '&5&l&nDimanche :' lore: - """dimanche":
slot: 25
priority: 2
view_requirement:
conditions:
monday:
type: "!EQUALS"
value: Sunday
placeholder: "%server_time_format:EEEE%"
material: "basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZmE2NjE0MTlkZTQ5ZmY0YTJjOTdiMjdmODY4MDE0ZmJkYWViOGRkN2Y0MzkyNzc3ODMwYjI3MTRjYWFmZDFmIn19fQ=="
display_name: '&5&l&nDimanche :'
lore:
- ""`
Not sure where that placeholder is from. You should try: %servertime_ddd%
/papi ecloud download servertime /papi reload
it doesn't work like that...
I've tried lots of different ways but it doesn't change...
Well your view requirement is also set up incorrectly
But also, I’m still not sure where you’re getting that placeholder from
Like @cunning charm said, the placeholder you are using is not correct. Also, the requirement type isn't either. Instead it should look something like this:
view_requirement:
requirements:
sunday:
type: "string equals ignorecase"
input: "%server_time_EEEE%"
output: "Sund"
and
view_requirement:
requirements:
not_sunday:
type: "!string equals ignorecase"
input: "%server_time_EEEE%"
output: "Sund"
Okay thank you 🙂
Hello,
Pardon my noobiness here, just getting into the rabbit hole of placeholders - I'm trying to make a dynamic spacing system for a tablist that compensates for variable-width glyphs, and am having trouble parsing some math with nested placeholders. I think I might just have been staring at this too long lol.
Here's the placeholder I'm __attempting __to build (probably formatted totally wrong):
%utils_parse_math_0_down{string_occurrences_count{essentials_nickname}_I}+{string_occurrences_count{essentials_nickname}_f}+{string_occurrences_count{essentials_nickname}_i}+{string_occurrences_count{essentials_nickname}_j}+{string_occurrences_count{essentials_nickname}_l}+{string_occurrences_count{essentials_nickname}_t}%
What this should do is check a nickname for presence and quantity of the characters "I, f, i, j, l, t" and output the number of characters matching that criteria, which will be checked in a TAB condition to pad the spacing.
Example:
Checks essentials nickname, finds 2 "i"s, 1 "j" and 1 "f", and tells me there are a total of 4 characters matching the criteria.
Passes TAB true / false condition of %myRidiculousPlaceholder%=4 and sends the proper spacing to the Tablist.
Any help would be GREATLY appreciated!
you forgot an _ aftet down
took a break, came back and realized that there's a spelling error in the String expansion syntax, lol.
%string_occurences_count_<string>_<match>% - Counts how many times the match appears in the string
"occurences"
Here's a test placeholder string that worked, if it's useful to anyone.
%utils_parse_math_0_{utils_parse_string_occurences_count_{essentials_nickname}i}+{utils_parse_string_occurences_count{essentials_nickname}_i}%
heya, does PAPI work with bungeecord? im getting an error.
02:38:57 [WARNING] Error loading plugin PlaceholderAPI
java.lang.NoClassDefFoundError: org/bukkit/plugin/java/JavaPlugin
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1027)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
at net.md_5.bungee.api.plugin.PluginClassloader.findClass(PluginClassloader.java:152)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593)
at net.md_5.bungee.api.plugin.PluginClassloader.loadClass0(PluginClassloader.java:66)
at net.md_5.bungee.api.plugin.PluginClassloader.loadClass(PluginClassloader.java:59)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
at net.md_5.bungee.api.plugin.PluginManager.enablePlugin(PluginManager.java:376)
at net.md_5.bungee.api.plugin.PluginManager.loadPlugins(PluginManager.java:286)
at net.md_5.bungee.BungeeCord.start(BungeeCord.java:300)
at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:67)
at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15)
Caused by: java.lang.ClassNotFoundException: org.bukkit.plugin.java.JavaPlugin
at net.md_5.bungee.api.plugin.PluginClassloader.loadClass0(PluginClassloader.java:103)
at net.md_5.bungee.api.plugin.PluginClassloader.loadClass(PluginClassloader.java:59)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
... 13 more
No it does not. If you want cross server placeholders you need to use an addon such as this one: <#placeholder-api message>.
You might be the only person to use that feature in 2 years. No one has reported this before.
I've added an alias to that placeholder. Waiting for the ecloud to work again so I can push the new version.
I appreciate the quick fix! That sounds about right as far as my luck & use case lol. Thanks!
I've just pushed the fix.
ah ok. well i tried using placeholders even with them both install on proxy and backend servers. but they still show what i put for example %luckperms_prefix%
Yeah because PlaceholderAPI won't work on proxy servers. There are plugins made by others such as the one i linked that tries to add proxy and multi server support.
Ah.
I see that that is actually an API not a plugin. Your proxy plugins would need to support it.
Is there a way to convert seconds to minutes with a placeholder?
You can use the Math expansion I guess
%math_0:down_{your_placeholder}/60%
the 0:down will round down to 0 decimals
What do you mean?
How can I transform my placeholders to have a "small cap" format?
that's up to the placeholder provider
sometimes it's supported, sometime it isn't
%player_name% this one ?
It is meant for your proxy plugins to add support for it. It will not work by itself
i use purpur btw
Ohh so that means luckperms doesn’t add support?
You can also use a different expansion such as the String expansion to transform output from other placeholders.
So, LuckPerms or any other plugin would need to add support for both PlaceholderAPI and PapiProxyBridge
Also I used /papi ecloud download statistic and the placeholders don’t work?
Aww man
Did you reload? /papi reload
I don't think the Player expansion supports it
I did
cc: @misty atlas
Execute /papi dump and send the generated link here please
thanks!
thanks i will try it
The expansion seems to be loaded. What placeholder have you tested?
Can anyone help me with the Vault expansion please
[PlaceholderAPI] Cannot load expansion vault due to an unknown issue.
i reinstalled the expansion, didnt work
can u send /papi dump
and a startup log please
?paste
did i do it right😭
i did not.
i couldnt paste the entire startup in /paste so i pasted the link inside it lmao
oh i think thats from when i deleted the expansion, i left out the ecloud command logs wait
ill paste the rest
not very informative though
whys it in one string ;-;
the bot messed it up
here u go thats everything after the startup i sent
do you have this every time u restart?
i restarted a lot of times while thinking reload didnt help.
i installed all the plugins right now though. never has worked
well first i downloaded sunlight, which is a essentials kind of plugin, and it uses vaults placeholders on a template
so i installed vault and placeholderapi after seeing that
but it doesnt work
i dont think its sunlights fault since placeholderapi itself has an error with vault
yes ive seen this before in papi, just not sure what the cause is
mind if i give u some jars to help me debug?
what does /vault-info say?
[Vault] Vault v1.7.3-b131 Information
[Vault] Economy: None [null]
[Vault] Permission: SuperPerms [SuperPerms]
[Vault] Chat: None [null]
that's the issue
Vault says you have no economy plugin
Sunlight doesn't seem to have hooked into Vault
bruhh im a dumbass
maybe you need to toggle some setting
or maybe it just doesn't have any economy feature, idk
sunlight doesnt have economy i think
then yeah that's the issue
i made this server to test sunlight for the first time
so i dont know its features at all
thanks for the help
wait why would vault have %vault_ranks%
what does ranks have to do with economy
that doesnt show either
Vault does both economy and permissions
so if i set up luckperms will vault automatically detect it?
and as it says in the /vault-info as well, you don't have any permissions manager (SuperPerms is Vault's own default permission manager)
yeah
thank you ❤️
Is there any reason why placeholders aren't loading on the scoreboard until /papi reload is done?
?startuplog
is there a way to escape placeholders? (I'm trying to do some input sanitization)
yooo i think ive seen your github
very odd profile choice
but memorable
you had a meteor archive right?
yeah
i checked out your profile to see if id trust your archive lmao
(i didnt trust u)
so i ripped the archive myself
?paste
hm
Is there a way i can make it so a placeholder such as group expiry time if it doesnt have an output for a temporary rank i can display a different text instead of it being blank?
It was posted on the github issue, though it wasn't conclusive.
Hi there, I wanna use a reputation system like this one https://www.spigotmc.org/resources/reputation.15687/ and display the reputation in Chat using Chat Manager. Any ideas how I can achieve this? I couldn't make the placeholder from the plugin working. Thanks in advance guys, would appreciate some help a ton 🙂
anyone?
PlaceholderAPI does not support any escaping. I guess, on your side, you could encode percent signs and then decode them later.
Hi, quick question: how can I use the CheckItem placeholder to check for an MMOItems item and its amount?
I tried /papi parse me %checkitem_amount_nbtstrings:MMOITEMS_ITEM_ID=AUSTRAL% but it didn’t work.
?startuplog
?paste
what server version is this
I cannot fix my scoreboard; it just broke when I went afk. and I do not know how to fix it
i cant add a pic ugh
1.21.4
this will be an issue with the expansion. i can see player locale placeholder is not working
hi I've got a plugin wiritten for me how do I create placeholders for it?
This wiki page will guide you: https://wiki.placeholderapi.com/developers/creating-a-placeholderexpansion/
Try /papi reload and if not restart your server.
I highly doubt this’ll fix it but it’s worth a shot
Hello i have a problem with papi i mooved my lobby to new hosting and placeholders dont work a tried to reinstall whole plugin and still not work.
Can anyone help me pls?
Have you redownloaded all the placeholder expansions?
yea i tryed it
Hello! I wanted to track my server's players' monthly playtime hours but whenever I add the built in playtime placeholder, this shows up. Anybody know the proper placeholders to track the playtime? Thank you! https://imgur.com/K8odVCR
if a placeholder is marked as "built-in" on the placeholders list, it means its built-in the plugin that's linked to that placeholder, not PlaceholderAPI
Ohh I see! Thank you! I was indeed confused and forgot to install the plugin itself. 😅
Hi, I was wondering, is there a way to use placeholders in bukkit.yml/spigot.yml/paper-defaults.yml?
hi so is it possible to connect mysql to papi or clear it (statistic expansion (so like remove time played etc.))?
statistic expansion stats are all collected from world/playerdata folder, if u need to clear it, delete it
and for the same reason, no you cant connect to mysql (i dont think??)
potentially using ChatInjector plugin, but im unsure if its updated anymore or if that would even work - but you can always try and see
my placehodlers are broken on 1.21.4
like even luckperms, statistics won't work even with ecloud download and reloading
Updated PlaceholderAPI?
Same with 1.21.5
I need help with the math placeholder... Whenever I try to parse my math placeholder which worked until today the console gives me this error:
[21:32:19 WARN]: [PlaceholderAPI] [math] Invalid Placeholder detected!
[21:32:19 WARN]: [PlaceholderAPI] [math] Placeholder: %math_0_%
[21:32:19 WARN]: [PlaceholderAPI] [math] Cause: '%math_<text>_%' is not an allowed placeholder syntax.
My Placeholder is: %math_0_%zmenu_argument_coinsengine_balance_raw_levelxp%/10*100%%
I do not how to fix that because it worked till today...
Sadly, it's not an option for me, my server runs 1.21.4. Any other idea?
Sorry about the ping
If its for chat purposes use LPC (LuckPermsChat)
Hey, is there a placeholder to check if an input is a pure number?
I tried this %math_0:_$1-/$1-% but it does not work because it also allows [()]+- and so on.
I was going to say that it might be better to use the JavaScript expansion. But I remember now that dealing with numbers in the JavaScript expansion is way worse so I'm afraid I don't have an answer for you other than making your own expansion.
Or asking for a placeholder to be added in an existent expansion.
Oh okey okey, then I will probably have to use several changeoutput_contains to filter out the characters
I am sorry to hear this 😭
Everything is fine 😉 , I already have it like this, since I had no other solution, I just wanted to see if there is a better way 😬
Javascript expansion might be slightly better if you want to give it a try
Okay, I'll take a look, I haven't done anything with it yet
@wet basin
The statistics are stored in the world folder in the stats folder. Each player has a file there.
ok
Hello I need help with placeholderapi its seems like it won't load any placeholder on 1.21.4 purpur
@turbid tide
Does the javascript expansion still work?
I just updated all my expansions and all my player statistics reverted to almost a month ago, anyone experienced similar behavior?
so
The statistics are simply taken from your world/stats folder. They are tracked by your server. Maybe you've reverted to an older version of your world?
Yes. You just have to manually install it
The only expansion that doesn't seem to have loaded is the PlayerStats one. Have you checked your logs for warnings or errors?
I haven't, but I think I found what it was...
sorry barry
but anyways
I hadnt updated the expansion in a very long time
over a year
I updated it today
and 2 months ago, there was a changed pushed to statistics
so many stats were being counted twice within the placeholders
verified by downloading backups from a few days ago, and the block changes were negligible compared to the drop we saw after updating (some players went from 1.4 million blocks mined down to like 800k)
so, it was counting all material based statistics twice...and updating the expansion stopped the duplicate totaling
everything should be fine
but with TAB I can't get any placeholders on the scoreboard
Do your placeholders work when testing them with the /papi parse command?
Oh yeah. This fix was so long ago I completely forgot about it.
yes
I just changed to another plugin
and papi works with that
might be a good idea to warn new users that it might be incompatible with TAB
We don't do that. Each plugin can say if they support or not PlaceholderAPI. This is just an API that plugins can use if they want to
Hi, could you please tell me how to find out what custom model data an item has with the help of placeholder? version 1.21.4.
Hello, how can I get an account on expansion cloud?
I made an expansion: https://github.com/saicone/Resourcepack-Expansion
Hello, anyone knows how can I format this: /help/thisvalue to thisvalue? I tried using substring text formatter and it only removes the first / which shows help/thisvalue
How are you trying to use it?
%formatter_text_substring_6:_/help/thisvalue% returns thisvalue
https://imgur.com/iRsRgk3
Thank you for the information! Really appreciate it!.
To clarify, we need to display the biome on our HUD and some biomes are on Terra and some are on TerraformGenerator
we need to get the last / value so we cna display it.
You could use the Javascript expansion. It lets you create your own placeholders using Javascript
Javascript takes too much of the process and I don't really need to sacrifice the performance with just a simple display. I'm looking for other options instead. Thank you so much!
There is the String expansion which gives you the index of a character from a string and also lets you get the substring from a start index. If you combine this with something like the Utils expansion maybe?
I believe the utils expansion lets you parse multiple nested levels of placeholders
I have cc-ed this to an admin to look into.
Just a note on the code, if /papi reload is executed the entire expansion is reloaded so the cache will be cleared. Not sure if you maybe want some sort of temporary storage that only clear on server restarts? Or maybe PAPI has a reload event. I am not sure
Hi guys, please help me, I installed PlaceholderAPI, but it won't start, no config is created, PAPI commands don't work. What should I do? My 1.21-loader.0.16.14-launcher.1.0.3, placeholder-api-2.4.2+1.21.jar here is the latest.log https://pastebin.com/avqEP9tV.
having issues with PlaceholderAPI and DeluxeTags. is there any way we can get it verifed?
PlaceholderAPI is a Spigot plugin, not a Fabric mod, and the Fabric alternative isn't ours
verified?
and what's the issue?
Dm me a username and email and I'll create the account
Hello, is it safe to stack 2 or more formatters at the same time? Or there's a better way to handle this?
You can try %formatter_text_replace_{{r=.*\/(.*)}}_$1_/help/thisvalue% using regex maybe.
https://imgur.com/a/wl2OUcR
Thank you! This is actually the continuation of the concern that i have above. But now, the first letter of each biome is not capitalized due to being removed. So I want to add another formatter on top of it to capitalize it. I know that might work but will that affect the performance of the server?
I've tried Javascript before and it's really taking too much resources so I want to ask if that may affect performance in the future. I'm working on our HUD to display data so once I started implementing this, I may no longer be able to remove it.
Hey is there a way i can get something like %region_tps_player% ? So the player gets the tps from his region? Im using the PlaceholderAPI-2.11.7-DEV-null.jar
As far as I know, there isn't an expansion for folia regions support.
is the only way to get this displayed a custom plugin? sry for the ping
i need help i got banned from server for no reson i made nothing so how i can back or how much i will be banned?
Or a custom expansion.
Yeah
I'm trying to download Pinger, but it says it can't find it, does it no longer exist?
https://imgur.com/a/qjGvoy6
Apparently Pinger still exists, but I can't download it, apparently the Plugin is having problems connecting to the API?
https://imgur.com/a/wcFKAeI
Now the plugin managed to connect again, it was a temporary unavailability, but even connected again, I can't download Pinger.
https://imgur.com/a/MNA27Fz
Hi, is there any way i1 can parse a placeholder for a specific user? for example, i want to create a hologram that says something like "House of %player_displayname%" but if I do that it shows my name and rank, and I want it to show another user's. i tried with ParseOther, but this only works while the player is online... if they disconnect, the line goes blank. is there any other way to do this? I'm using DecentHolograms
%formatter_number_time_{{PTM_playtime_s}}% why it is not working
yeah i know but, as i said: "i tried with ParseOther, but this only works while the player is online"
then u need to create ur own papi
how do i make so %statistic_deaths% works differently for different worlds
Another bump of this
Can I get my expansion verified?
https://api.extendedclip.com/expansions/floodgate/
with the WorldGuard PAPI expansion, is there a way I can get whether a player is in a certain region? %worldguard_region_name% seems to just return the highest priority region, but I want to check if a player is in a specific region that I specify the name of
Why is it that if the NPC's name is &a%bungee_survival% &felérhető játékos then the placeholderapi plugin works, but if I make the hologram and give it &a%bungee_survival% &felérhető játékos as the text, then it doesn't work?
does tags support 1.21.4?
Yes
hello! what would be the correct way of using bstats inside expansion? my current attempt looks like that:
import me.clip.placeholderapi.expansion.PlaceholderExpansion;
import org.bstats.bukkit.Metrics;
public class TestExpansion extends PlaceholderExpansion {
. . .
@Override
public boolean register() {
new Metrics(getPlaceholderAPI(), id);
return super.register();
}
. . .
}
metrics are working for sometime, but then stops 🤔 and reloading doesn't fix them… Thanks!
I don't think you're supposed to include bstats in the expansion. If you want to see expansion ussage, PlaceholderAPI already tracks that. https://api.extendedclip.com/usage/
i'm not seeing my expansion there either
maybe because i'm not released yet and just testing…
If you've just started testing it, it might take a bit to show up but it should show up eventually
as long as your server has access to the internet to send the stats
hm… i should search it by my identifier? right?
what if my desired identifier was already taken? 😭
It will count them together. If you don't plan on making the expansion verified on ECloud, then you should be fine with using your own bstats metrics. However, I am not sure why it is not working the way you intended.
thank you very much ❤️
Is there any cooldown / timer placeholder? I want the timer to loop itself when it's up aswell
Hi
Why is it that if the NPC's name is &a%bungee_survival% &felérhető játékos then the placeholderapi plugin works, but if I make the hologram and give it &a%bungee_survival% &felérhető játékos as the text, then it doesn't work?
guess i figured… reloads were spamming metrics tasks and got this id banned -_- any way to make global/static variable or class inside expansion? idk…
i'm just curious at this point 🤔 java is not my main language…
I don't think so. You would have to make a plugin
Is placeholder api compatible with TAB plugin?
is the TAB plugin compatible with PlaceholderAPI*
and the answer is yes
%Placeholder% isn't a valid placeholder
Do you have an example? I have my layout but I do not have the correct format for the palceholder in my config for my placeholder api placeholders.
Which placeholders are you using?
Hello, theres a way to create a placeholder that updates every tick?
Do you recommend using dev builds?
https://ci.extendedclip.com/job/PlaceholderAPI/
Does Javascript expansion has feature to call java api?
for example get all online players and then sort/filter them by some factors and use them to display data
BukkitServer.getOnlinePlayers()
Dev builds of any plugin are not recommended for production servers as they may not be stable
ViaVersion, TAB, DeluxeMenus, GrimAC - say otherwise
Hey, the placeholders do not load in the Badlion client. What could be the reason?
is there a way to show statistic_time_played as xDays and xHours instead of xDays xHours xMinutes xSeconds
?
Hello, where should I go to ask for help?
Maybe you can use formatter to cut the end off and add an 'h' back on the end after the placeholder: %formatter_text_substring_:h_{statistic_time_played}%h
Outputs: 4d 5h
does Papi have a function to apply placeholders to a text component used in paper?
No.
There are different placeholders that can return each of the components %statistic_time_played:seconds% (days, hours, minutes, seconds, separately), or you can use the %statistic_seconds_played% placeholder and then use other placeholders to format it however you want.
It is not just up to the placeholder to update every tick. It is also up to the plugin using it to parse it every tick. PlaceholderAPI has no update feature. Instead, it parses the string you give it, every time you ask for it.
java.util.concurrent.CompletionException: zip file closed (expansion file: /home/earth/plugins/PlaceholderAPI/expansions/Expansion-changeoutput.jar)
at PlaceholderAPI-2.11.7-DEV-200.jar/me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:443) ~[PlaceholderAPI-2.11.7-DEV-200.jar:?]
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1760) ~[?:?]
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) ~[?:?]
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) ~[?:?]
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) ~[?:?]
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) ~[?:?]
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) ~[?:?]
Caused by: java.lang.IllegalStateException: zip file closed
at java.base/java.util.zip.ZipFile.ensureOpen(ZipFile.java:846) ~[?:?]
at java.base/java.util.zip.ZipFile.getEntry(ZipFile.java:338) ~[?:?]
at java.base/java.util.jar.JarFile.getEntry(JarFile.java:516) ~[?:?]
at java.base/java.util.jar.JarFile.getJarEntry(JarFile.java:471) ~[?:?]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:209) ~[leaf-api-1.21.4-R0.1-SNAPSHOT.jar:?]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593) ~[?:?]
at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:169) ~[leaf-api-1.21.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:144) ~[leaf-api-1.21.4-R0.1-SNAPSHOT.jar:?]
at io.papermc.paper.plugin.entrypoint.classloader.group.SpigotPluginClassLoaderGroup.lookupClass(SpigotPluginClassLoaderGroup.java:43) ~[leaf-1.21.4.jar:1.21.4-DEV-259cdaa]
at io.papermc.paper.plugin.entrypoint.classloader.group.SimpleListPluginClassLoaderGroup.getClassByName(SimpleListPluginClassLoaderGroup.java:37) ~[leaf-1.21.4.jar:1.21.4-DEV-259cdaa]
at io.papermc.paper.plugin.entrypoint.classloader.group.LockingClassLoaderGroup.getClassByName(LockingClassLoaderGroup.java:34) ~[leaf-1.21.4.jar:1.21.4-DEV-259cdaa]
at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:187) ~[leaf-api-1.21.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:164) ~[leaf-api-1.21.4-R0.1-SNAPSHOT.jar:?]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:580) ~[?:?]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) ~[?:?]
at PlaceholderAPI-2.11.7-DEV-200.jar/me.clip.placeholderapi.util.FileUtil.findClass(FileUtil.java:62) ~[PlaceholderAPI-2.11.7-DEV-200.jar:?]
at PlaceholderAPI-2.11.7-DEV-200.jar/me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:421) ~[PlaceholderAPI-2.11.7-DEV-200.jar:?]
... 7 more```
is there a way to use checkitem expansion return a integer string value?
It only returns strings, wdym?
Yeeesss ,i figure it out that day, really thank you <3
what is the issue
also papi technically hasnt been tested with 1.21.5 (even though it should work), plus paper doesn't have a stable build yet of 1.21.5
is there a placeholder that returns player exp in terms of levels like 31 instead of 1555 xp
%player_exp_to_level%
that returned 121 for me even though im level 31?
Nevermind, sorry
Was an issue my side
Seems to work fine now
Hey, the placeholders do not load in the Badlion client. What could be the reason?
Placeholders are not client sided? I am not sure what you mean by this.
Hello everyone. It's been a while since I last worked with servers, so I'm a bit out of the loop on the subject. I'm going to install this plugin now on a Paper 1.21.4 server and I’d like to know if there’s anything I should be aware of — like any known errors or bugs, or if it’s working fine.
I’d appreciate it if you could let me know
Does anybody know if there is a plugin or way to get the Nth item in a placeholder that is formatted as a comma-separated list? E.g. I have a placeholder that returns something like home1,home2,home3 and I want to get the 1st or 2nd
Playerlist
check the example with type: CUSTOM
https://github.com/Tanguygab/PlayerList-PlaceholderAPI-Expansion/wiki#config-examples-and-placeholder-syntaxes
not really, aside from maybe that one issue where expansion randomly don't load on server start due to an error, we still don't know what it's caused by, but it doesn't seem to happen to everyone... it's really weird but aside from that you're fine
Ended up adding another operation to Blitz's StringExpansion expansion. Now allows something like %string_listelement_0_{huskhomes_homes_list}% to get the element in that list like I needed
Lol idk why it removed
There is no time to wait! Ask your question @static oyster!
Can I enter placeholder in placeholder
I want to have something like %server-online_(%world%)%
Assuming you want the player's world's playercount:
/papi ecloud download Utils
/papi ecloud download Server
/papi ecloud download Player
/papi reload
%utils_parse_server_online_{player_world}%
pretty sure there's already a placeholder for the current world's playercount already available though
would be better than relying on Utils
Well, placeholders are loaded and displayed with the normal Minecraft Launcher. If you play Minecraft with the Badlion client, you can no longer see the placeholders, then there is simply an empty field in the scoreboard, for example.
Is there a placeholder for the time played per day or per session (not for the entire time!)?
you will probably require an additional plugin to do that
all placeholderapi is doing is returning a String for other plugins to use this data, we are not touching the client in any way
heya, i wanted to ask will PAPI support components? like in the api rn i can only find a way to return String on request
Then Badlion Client probably doesn't support placeholderapi?
Probably not
Support in what way? Papi doesn't check the client type, unless the client does something weird, placeholders should work just fine
Then it is probably the client itself. As I said, the placeholders are simply not displayed in the client...
So you are using a placeholder like %player_name% and see what, empty space or the placeholder itself? Do you have different results with another client?
An empty space, yea
Can I have a group of worlds (multiverse core) instead of a world?
ItemChecker5:
type: 'string equals'
input: '%checkitem_nbtstrings:PublicBukkitValues..executableitems:ei-id=buty1%'
output: 'yes'
What is wrong here?
What if it is simple text not placeholders? Does it still show empty space or what? Either way, PlaceholderAPI does NOT interact with the client in any way shape or form.
please help, the placeholder api plugin doesn't work for some reason and doesn't recognize placeholders from the vault add-on
Answered in #general-plugins . Please reply there when you can
According to Spigot, the placeholder supports the PowerBoard plugin, but when I want to download the expansion, it doesn't find it. Does anyone know what the problem is or does anyone know another good scoreboard system?
It sounds like there might be a bit of confusion here.
PlaceholderAPI serves two main purposes:
- It allows developers to create expansions, which can either be built into a plugin or provided as standalone modules.
- It enables other plugins to use these expansions to display dynamic placeholders.
If you're using PowerBoard as your scoreboard plugin and you're trying to display data from other plugins (like player stats, economy, etc.), you don't need a separate PowerBoard expansion. What you need is:
- PlaceholderAPI installed.
- The appropriate expansions for the plugins you want to pull data from (for example, Vault, Essentials, LuckPerms, etc.).
Hi, I'm currently trying to write my first placeholder but it seems that the placeholder is not returning whats inside the onRequest. It says that the placeholder has been registered. I also tried the same with the other method and also some meaningful return values.
https://paste.helpch.at/umalakevav.typescript
Also am I correct in assuming that if I want to create an expansion which goes inside the folder of placeholderApi that I just need to create a simple java maven project or do i still need to create a JavaPlugin project?
the identifier should be a name without _ (usually, your plugin's name)
and the params in the onRequest would return has_bank_account
aaaaahh so its %<identifier>_<params>%. now I get a value with parse. Thank you very much. Awesome
Hi, does anyone know of a placeholder that shortens the time format, i.e., from 1h 30m 50s to just 1h 30m, so that there are only 2 time modules?
%subservers_subserver.players(<Subserver>)%
hi so i need to check the amount of players in a subserver and its name is 'survival' how do i do it?
cause this isnt working
@vivid sparrow Unknown expansion.
%subservers_subserver.players(survival)% should work
what does it show?
and does subservers show in /papi list?
but didnt wsork
@vivid spear hard to dm you when you don't accept friend request or allow people to DM you
my dms are open
Hey :), I have a question about the Playerlist extension, if this is possible.
I would like to add a placeholder filter and retrieve a value from all online players and compare it with the value of the performing player.
So in the list only players with the same value as the performing player should be listed.
I know I've already done that, but unfortunately it doesn't help me. If I place a variable in the output field, the value isn't retrieved from the executing player, but from the respective player in the list. Therefore, everyone is displayed in the list. That's why I'm asking. Sorry if it wasn't written very clearly.
This is an example that I tried, but it doesn't work:
test: type: all included: true filters: - PLACEHOLDER:%luckperms_meta_test%=%luckperms_meta_test%
left side is parsed for the target player, right side is parsed for the viewer so it should work
I'll try it again
I tested it again, but unfortunately it doesn't work, thanks for the help.
worked fine for me (Tang2 was added after I ran /op Tang2)
/papi parse me %luckperms_meta_test% | %playerlist_test_list%
/papi parse <player> %luckperms_meta_test%
send screenshots, second command with the name of a player in the list while they shouldn't be in there
I deleted the player list and rewrote it, now it works all of a sudden, I don't understand anything anymore. I tested it twice before, oh man, sorry to have disturbed you
Hi, I'm having a problem with the %checkitem_getinfo:offhand_loreequals:3% placeholder. It turns out that if the item I'm searching for the lore doesn't contain any lore, it throws an error and prevents me from performing a check. In any case, it should send an empty space. Do you know what I can do?
Hey everyone, I’m having trouble getting DeluxeTags to show up in chat. My setup:
Plugins: DeluxeTags, EssentialsChat, PlaceholderAPI
PlaceholderAPI: %deluxetags_tag% is installed & should be active
EssentialsChat Format: {DISPLAYNAME} %deluxetags_tag%: {MESSAGE}
Even though PlaceholderAPI recognizes DeluxeTags, the tag still won’t display in chat. I’ve checked my config files and tried different placeholders (%deluxetags_tag_raw%), but no luck.
currently deluxetags has broken since the latest version of essentialsX
i would recommend getting a new chat plugin that supports placeholderapi natively
oh
any recommended chat plugin? & will it mess with the other plugins on my server or will essentials still work eventho i add a diff chat plugin (sry for the stpd questions)
LPC is probably the simplest one i think, but theres lots like venture chat, chatchat
and essentials will work on its own
esschat is just an addon for it
also the clear chat plugins, will they still work eventho i switch chatplugins
depends, but probably yes
omg it worked, you are amazing tysmmmmm
hello, I have a problem understanding how to create the placeholder that works for me: I need a placeholder that returns the maximum life of a player, but the problem is that the max_health that I would like is not from the executor of the placeholder but from another specific player that I also get through another placeholder.
It should look like this %utils_parse:2_otherplayer_health_{servervariables_globalvalue_duelsplayerblue}% except that instead of health I would like the max_health, a value not supported by otherplayer extension.
The final goal is to put all this together with math to create a bossbar on TAB plugin that shows the health of the player in the variable. But unlike how I have it now I can have a proportion between the max health and the life shown on the bossbar (now if the player has 20/40 hp the bossbar is full as if it were 100%, due to the limit of the proportion at 20hp default)
Have you tried using ParseOther and using the player_max_health with that instead of the otherplayer? I assume servervariables_globalvalue_duelsplayerblue returns their username?
yes I tried in various ways to use parseother, an extension that promises a lot, but it gives me problems, maybe because of my username with _
https://paste.helpch.at/inuwazivey.css
And yes, servervariables_globalvalue_duelsplayerblue returns the username of the player who must be on the bossbar at that moment
both the name and the placeholder should be inside their own set of {}
%parseother_{name}_{placeholder}%
Thanks, I made a pretty stupid mistake... but I still have problems integrating everything with math or utils_parse:
%math_{parseother_{Lucke_08}_{player_health}}/{parseother_{Lucke_08}_{player_max_health}}*100
this formatting causes problems because it replaces the {} before running parseother, and even with utils_parse I can't think of a way to avoid this
%utils_parseother:[Lucke08]_math_{player_health}/{player_max_health}*100%
if you want to use a placeholder instead of the name:
%utils_parseplaceholder:[{some_placeholder}]_math_{player_health}/{player_max_health}*100%
I can never thank you enough 🙏
Just want to ask question if i can have 2 tags at the same time? one in prefix and other one is suffix
For DeluxeTags? No.
Hello, I have a question, can I make a Placeholder that will change depending on who sees it in the chat?
Yes. Using relational placeholders
@limber thicket #1367769664712871956
Hi cuties, I want to use the formatter papi placeholder expansion to ‘cut’ playernames in half (so first 3 letters and then the remaining ones’ how would I do so? I’ve tried some stuff but none seem to work
Or any other expansion idk
Could you elaborate using my username? cj89898
where would you like to see cj8 and where do you want to see 9898
Is it possible to only get cj8 from it? And then with a second placeholder string the 9898 :)
(It’s for automatic nickname colours)
👀 👀
(bot stuff)
Ooo
%formatter_text_substring_:3_{player_name}% - first 3
%formatter_text_substring_3:_{player_name}% - the rest
thank u so so much <3333
hey guys sorry for the inconvience but i have a question, do someone have problems with PAPI? our server keeps getting memory leaks and i don't know if it's from PAPI or another plugin
https://paste.helpch.at/kevexeyaso.rb
looks like a LiteBans issue, my guess is that they are querying the DB and not closing their connections
yeah i was thinking about this, we ve changed the papi version to 2.11.7 DEV thing and the server got the memory leak faster than normal, normally it stays for like 3-4 hours before "dying", and with the dev version 30 min was max
Dependency 'me.clip:placeholderapi:2.11.6' not found
hi i cant find the placeholder for kdr
can anyone please tell me?
hey is there already a clamp function in PAPI?
https://en.m.wikipedia.org/wiki/Clamp_(function)#:~:text=In computer science%2C clamping%2C or,to the nearest available value.&text=This is equivalent to max,the functions min and max
cant seem to find one in the list
I think Math should have that
%math_CLAMP(X,1,10)%
try that
it doesn't
you can still use both CEILING and FLOOR then
%math_CEIL(10,FLOOR(1,X))%
That should work thank you !
hi, why some statistic_ placeholders are causing CraftLegacy to load?
im not really sure if its an issue related to PAPI or to server itself, but placeholders are affected with this issue, that i aware about are: %statistic_mine_block% and %statistic_craft_item%
so after trying to use them, log looks like that:
[11:26:01 INFO]: lolipa1n issued server command: /papi parse lolipa1n %statistic_mine_block%
[11:26:01 WARN]: [org.bukkit.craftbukkit.legacy.CraftLegacy] Initializing Legacy Material Support. Unless you have legacy plugins and/or data this is a bug!
I believe it's because Spigot tries to load all blocks which you mined, some which could have been mined prior to updating to 1.13 and aren't being updated by Spigot for some reason
if you never where on versions older than 1.13 on this map, then I have no idea lol
just Spigot being Spigot I guess
so, thats should be an API related issue and maybe be reproduced by any call to org.bukkit.Statistic.MINE_BLOCK for example?
but yeah, nothing to do with PAPI, this happens when Spigot/Bukkit's getStatistic method is called on a player
pretty much, yeah
funny enough, this is almost freshly created server on 1.21.4 and it was never runned any other versions
then I have no clue xD
maybe it's looping over all existing Materials
including the LEGACY_ ones
Is that normal if my placeholders don't work when they get send to chat?
Previously it worked on my servers.
My plugin list is:
- EcoEnchants
- eco
- libreforge
- PlaceholderAPI
Like if I send %player_exp% instead of seeing number of my xp I see %player_exp% in chat
CEIL and FLOOR just rounds up or down. MAX MIN Function is correct just for the information
That is managed by your chat plugin not those you listed
try /papi parce %player_exp% nick
Does anyone know where the PlaceholderAPI that supports folia is?
Does anyone know how i can implement spigot placeholders in a fabric mod?
How to display PlaceholderAPI placeholders on a website?
Specifically, I want to create a personal cabinet with player statistics.
I already have player nicknames and UUIDs in the database, if that helps.
PlaceholderAPI was written for a Spigot servers. It can not be used without the Spigot API.
You can try this one: https://github.com/Winds-Studio/Folia-Expansion. We haven't verified it so can't tell you what and how it works.
Does the placeholder work if you execute this command? /papi parse me %player_exp%? If not, execute the following commands in order:
/papi ecloud download player/papi reload.
If it does work when you execute that command, then maybe your chat plugin does not have PlacehodlerAPI support?
Thanks for help, it worked!
Previously my chat plugin handled placeholders in chat. I didn't installed it on my current server so I couldn't use placeholders in chat without that command.
hi guys i have problem, my placeholders for superiorskyblock2 dont working, i want a create a TopWorth Islands, but dont work
Yeah I know, I tried to make a custom plugin that listens from a fabric mod but I got no idea how to do it
Execute /papi dump and send the generated link here please.
where can i download dev builds for papi
I want to show kills and deaths in the tablist for each player how can I do this in combination with TAB plugin
Where do I put this
in ur TAB config file
https://pastes.dev/7LOjc7gh49 what's wrong here?
SkinsRestorer API is not initialized
is checkitem not supported for 1.21.4?
ok but what's this mean
This is thrown by the following extension: SRPlaceholderAPIExpansion
Are you its developer? If not, I suggest you contact the developer of that expansion
no im not, so need to contact skinsrestorer
ok
Guys, I made a placeholderapi expansion, but when I do /papi reload the placeholder resets. Someone knows how to fix?
If it is an internal expansion you need to add the following:
@Override
public boolean persist() {
return true;
}
After register()?
Anywhere in the expansion class
Works! Thanks!