What expansion are you actually talking about?
Also, your log has a lot (and I mean A LOT) of other errors including one of a Per-World plugin manager, which imo can also be a cause for errors, so you may want to also fix those first...
1 messages ยท Page 14 of 1
What expansion are you actually talking about?
Also, your log has a lot (and I mean A LOT) of other errors including one of a Per-World plugin manager, which imo can also be a cause for errors, so you may want to also fix those first...
What expansion are you actually talking about?
Also, your log has a lot (and I mean A LOT) of other errors including one of a Per-World plugin manager, which imo can also be a cause for errors, so you may want to also fix those first...
Yes I know because I'm changing my server to java-16 and to do that I had to change to 1.16.5 which caused a lot of error and Im fixing it ... okay I'm going to fix first perworldplugin
When using exp levels in anvil (ex. enchanting pickaxe with enchanted book) %player_total_exp% placeholder doesn't update it's value.
PAPI version 2.10.10
Player Expansion version 2.0.2
Purpur-1393 (MC: 1.17.1)
Plugin Bug
It generates an error randomly in console
It shouldn't generate that error as far as i'm aware
To be honest it's random therefore i don't know
/papi dump Outputh...
Hello @DebuffPvP,
The issue you encountered is caused by an Expansion and not PlaceholderAPI itself.
This issue-tracker is reserved for Bug reports and feature requests towards PlaceholderAPI.
Please report this issue to the Expansion's main issue-tracker.
A list of known Expansion repositories and their issue trackers can be found here.
*This is an automated response created by a **GitHub Actio...
Issue is Vault expansion
Purpur git-Purpur-1383 (Paper 1.17.1)
ChatControlRed version 10.6.3
PlaceholderAPI-2.10.10-DEV-132
Javascript expansion [2.0.0]
I wasn't sure whether or not to report this to the main PAPI repo, but seeing as how Nashorn is used in the Javascript expansion and not in PAPI, here is probably best.
Java 17 came out as LTS.
PlaceholderAPI seems to break with ChatControlRed on 1.17.1 using the Javascript expansion placeholders. Temporarily downgrading back to Java 16, everything works...
sun.misc.Unsafe::defineAnonymousClass API has been removed in JDK 17.
The API replacement is java.lang.invoke.MethodHandles.Lookup::defineHiddenClass and java.lang.invoke.MethodHandles.Lookup::defineHiddenClassWithClassData.
When a player is on 1.17.1 for example (while 1.17.1 is the latest version), and they use an invalid statistic, they are sent an invalid link (https://helpch.at/docs/1.17.1/org/bukkit/Stastistics.html)
That is because the helpchat docs does not have the latest version of the javadocs. So maybe send them to the spigot link instead?: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Statistic.html
Courtesy ping @darbyjack if you are in charge of this module since the rewrite commits.
So I use the JS Expansion with Java 17 and everything runs fine, I do not have ChatControlRed so the problem may be from them because PAPI worked fine for me.
sun.misc.Unsafe::defineAnonymousClassAPI has been removed in JDK 17.
The API replacement isjava.lang.invoke.MethodHandles.Lookup::defineHiddenClassandjava.lang.invoke.MethodHandles.Lookup::defineHiddenClassWithClassData.
sun.misc.Unsafe::defineAnonymousClass is not used anywhere directly inside the expansion. The stacktrace points to the issue being with Nashorn using it in some case. I'll look into this and get b...
Courtesy ping @kangarko in case it's some weird nested issue with how ChatControlRed registers placeholders, since you also use nashorn as an external library.
Fixed an issue on build: https://pastebin.com/t3y61Vqu
Closes N/A
Create two separated pull requests if you want to contribute with that workflow.
c57640d add %server_build% and %server_version_build% (... - iGabyTM
Closes N/A
Changes:
031625 Add TokensPlus Placeholder - noreply33ff83 Update wiki/Placeholders.md - noreply722398 Update Placeholders.md - noreplyb207cb Add plugin to Plugins using PlaceholderAPI page - noreplyArtifacts:
Closes N/A
Is this issue still present?
Could you elaborate your request a bit more?
Do you already offer placeholders or do you want an expansion to be made?
If it is the second one do we have to say that the issue tracker is not the place to request expansions to be made.
I built if for myself, but it would be nice if someone would release it officially.
I built it myself, to test.
papi parse x %server_build% returns 6c1c1b2 rather than 3246 (the current build number). Please revisit this issue.
BTW, I built it initially with Java 11. It failed miserably. I reverted to Java 8, and it works just fine. I assume that was expected.
The placeholders that involve top balances (such as %vault_eco_top_balance_commas_#% and %vault_eco_top_player_#%) are not showing anything. It outputs 0.0 and a blank space for the player placeholder.
Can show proof if needed
Server Version: Paper-788 (MC: 1.16.5)
Vault Version: Vault v1.7.3-b131
EssentialsX version: 2.18.2.0
I built it myself, to test.
papi parse x %server_build%returns6c1c1b2rather than3246(the current Spigot 1.17.1 build number).version
[18:03:55] [Server thread/INFO]: This server is running CraftBukkit version 3246-Spigot-6c1c1b2-dc764e7 (MC: 1.17.1) (Implementing API version 1.17.1-R0.1-SNAPSHOT)It does return the current build number
295on Paper 1.17.1.version
[18:02:53 INFO]: This server is running Paper version git-Paper-295 (MC: 1.17.1...

Yeah but don't know why it not work ?
Thanks for fast response. With that JAR
Spigot 1.17.1 looks good
papi parse rambeau %server_version%
[07:36:59] [Server thread/INFO]: 1.17.1
papi parse rambeau %server_build%
[07:36:53] [Server thread/INFO]: 3246
papi parse rambeau %server_version_build%
[07:36:44] [Server thread/INFO]: 1.17.1-3246
Paper 1.171 is now not so good -- extra string (MC: 1.17.1) after build
...
Plugin Bug
Hello, a few weeks ago I saw that in my ChatControlRed plugin, they did not load the expansions in the chat or with / papi parse me. Doing experiments, I saw that the MarriageMaster expansions do not work and there is ...
Hello @Arthuuurr,
The issue you encountered is caused by an Expansion and not PlaceholderAPI itself.
This issue-tracker is reserved for Bug reports and feature requests towards PlaceholderAPI.
Please report this issue to the Expansion's main issue-tracker.
A list of known Expansion repositories and their issue trackers can be found here.
*This is an automated response created by a **GitHub Actio...
Note that the Spigot build number was added to the version string sometime in the tenure of 1.16.5. Prior to that time, the actual build number was not available. In those cases, I suppose the (for example) 6c1c1b2 bit is the next best thing.
Major Code improvement (Will affect Servers)
So at this moment PlaceholderAPI can only be used and installed on a single spigot server. My feature request expands that.
Currently, if you have a big network and rely on external premium spigot plugins you are very limited what you...
This is already planned for v3.
See #552 for current plans.
@Jaimss do you think you could update this?
StringJoinerappend() callsKeep an instance at the top of the class instead of creating a new one every time this method is used.
Yea I'll try to update it when I get a chance.
that should have it working still
i can test it again later if you want but it was just resolving a merge conflict so hopefully nothing broke lol
In the getLastColor() method, if the color is at the start of the prefix or suffix and there is no color after, it returns the entire prefix or suffix. I am not sure if this is how it is meant to work. leaving it here for the people that work on the expansion.
I'll be testing this on ChatControl's Red end this week and update accordingly.
API Bug
Throws an error in the console
Server start
Start the server
/papi dump Outputhttps://paste.helpch.at/equgobinop
Hello @xmakdwerd,
The issue you encountered is caused by an Expansion and not PlaceholderAPI itself.
This issue-tracker is reserved for Bug reports and feature requests towards PlaceholderAPI.
Please report this issue to the Expansion's main issue-tracker.
A list of known Expansion repositories and their issue trackers can be found here.
*This is an automated response created by a **GitHub Actio...
There are several issues you encounter and given the fact you even unchecked My issue is about PlaceholderAPI and not any expansion or external plugin shows me that you're well aware that this is NOT a PlaceholderAPI issue.
The issues you encounter are as follows:
StaffFacilitiesExpansion has a NoClassDefFoundError meaning it couldn't find a class it uses. This is normally the case when an expansion misses a required dependency (plugin).[^1]StatzExpansion has one of ...but how to find out which plugins they are? I just don't even know which plugins need to be removed or replaced ... or can it be calculated only by removing the plugin one at a time?
Just remove the expansions that give out an error.
Expansions aren't plugins. You won't find them in the /plugins/ directory but in an expansions folder in /plugins/PlaceholderAPI
it seems to have happened, deleted two files whose names were in errors, there are no more errors ... thanks, but these warnings are important and need to be fixed or not?
[01:31:16 WARN]: [PlaceholderAPI] Loaded class net.milkbowl.vault.economy.Economy from Vault v1.7.3-b131 which is not a depend, softdepend or loadbefore of this plugin.
but what I wrote in the wrong place, I just don't understand this and I'm doing it for the first time ... I understand that some plugins are to blame ... but what exactly this means I don't understand ... just one of the plugins refused me do support until I fix most of the errors of the server, so I had to do it the first time ...
[01:31:16 WARN]: [PlaceholderAPI] Loaded class net.milkbowl.vault.economy.Economy from Vault v1.7.3-b131 which is not a depend, softdepend or loadbefore of this plugin.
Warnings like those can be safely ignored. This is just SpigotMC nagging about PAPI loading jars that it doesn't have a (soft)dependency or loadBefore on.
Plugin Bug
On server start-up, only 29 of 33 hooks were loaded
[17:11:37] [Server thread/ERROR]: [PlaceholderAPI] failed to load class files of expansions
java.util.concurrent.CompletionException: java.util.ConcurrentModif...
I have tried repeatedly to reproduce this issue. No joy. I appreciate that a transient issue is problematic. I posted only for information, in the event that the error points to a recognizable timing issue. If not, so be it. Thanks for having a look.
I have tried repeatedly to reproduce this issue. No joy. I appreciate that a transient issue is problematic. I posted only for information, in the event that the error points to a recognizable timing issue. If not, so be it. Thanks for having a look.
Could perhaps a random outside issue (i.e. a temporary overload of the server's CPU or similar) be a possible cause?
This would be my guess as to why this isn't reproducible. Since it would make the most sense that the (physical) server has...
That is possible. The question it raised for me is whether such a event would cause timing issues with Placeholder enabling the expansions, and whether that might be an issue to address. If not, feel free to close the ticket as an unexplained transient.
PlaceholderAPI's current system behaves in such a way that plugins which manually register placeholders get registered earlier than those from external jars.
While this may not cause problems at first glance would it still be better to make the expansions register at the same time, after the server finished loading, no matter what type of expansion it is.
A solution could be that the registration won't directly register the expansion, but rather puts it on a list/queue that later is wor...
Just came back to this issue and thought about what structure for docs we should use.
I personally propose this general doc structure due to it being fairly readable for IDE users that check docs directly and not the rendered HTML version (if there will ever be one that is).
/**
* A single line with some simple text.
*
* <p>A new paragraph. The p tag won't be closed.
* <br>New lines are having a simple br tag.
*
* @param name
* Parameter description on a ...
Can confirm on 2.3.0 using PlaceholderAPI 2.10.10. Was an extremely serious problem on my server as people exploited this bug to avoid having their gold ingots converted to cash when using our gold -> cash conversion menu.
An expansion that will display how many people are in a certain team using something like %team_amount_% or something similar.
I tried to use the Minecraft color code symbol 'ยง' to check if it would work but it still won't. It cannot detect RGB names/lores. I tried something like ยงxยงaยงaยงbยงbยงcยงc to check but nothing happened. Would appreciate it a lot if this can be added in a future update
Have you tried using & instead? It might automatically be converted by bukkit/spigot.
Have you tried using
&instead? It might automatically be converted by bukkit/spigot.
I have tried it, yup!
After some testing, this DOES work, but the letters are capitalized when formatted so it would need to be ยงxยงAยงAยงBยงBยงCยงC
I am not sure if you guys are aware but the placeholders are being removed from the expansion and are being moved in the essentials expansion. There is currently a development build in our discord server: https://discord.gg/helpchat in the #placeholder-api channel.
If you still want this to work in the vault expansion I believe you have to download the version 1.5.2 of the expansion and enable it in the config.
Plugin/Server Incompatability
Javascript loads but with error.
[20:32:41 ERROR]: [PlaceholderAPI] expansion class JavascriptExpansion is outdated:
Failed to load due to a [NoClassDefFoundError], attempted to use org/ope...
Hello @RetamrCZ,
The issue you encountered is caused by an Expansion and not PlaceholderAPI itself.
This issue-tracker is reserved for Bug reports and feature requests towards PlaceholderAPI.
Please report this issue to the Expansion's main issue-tracker.
A list of known Expansion repositories and their issue trackers can be found here.
*This is an automated response created by a **GitHub Action...
Please update PAPI and the expansion.
PAPI 2.10.10 exists.
Okay, so how can I fix this error?
Hello, why when i use
/papi ecloud download Javascript
Then, /papi reload
Why i get
[20:32:41 INFO]: [PlaceholderAPI] Successfully registered expansion: vault
[20:32:41 INFO]: [PlaceholderAPI] Successfully registered expansion: ViaVersion
[20:32:41 INFO]: [PlaceholderAPI] Successfully registered expansion: luckperms
[20:32:41 INFO]: [PlaceholderAPI] Successfully registered expansion: multiverse
[20:32:41 INFO]: [PlaceholderAPI] Successfully registered expansion: server
**[20:...
Edit: I updated to latest version, and i get new error:
[09:51:07 INFO]: [PlaceholderAPI] Successfully registered expansion: vault
[09:51:07 INFO]: [PlaceholderAPI] Successfully registered expansion: ViaVersion
[09:51:07 INFO]: [PlaceholderAPI] Successfully registered expansion: luckperms
[09:51:07 INFO]: [PlaceholderAPI] Successfully registered expansion: multiverse
[09:51:07 INFO]: [PlaceholderAPI] Successfully registered expansion: server
[09:51:07 ERROR]: [PlaceholderAPI] Fai...
Closes N/A
Added my own OneBlock plugin...
I did it right, didn't I?
Yes, this looks right. ๐
Thank you for contributing towards the wiki and for supporting PlaceholderAPI.
6e1eb88 Add release.yml for automatic release drafts - Andre601
GitHub added the ability to automatically create changelogs for new releases by clicking a button in the release drafter.
This feature can be customized using a release.yml file inside the .github folder.
This PR adds such a file to enable the automatic release drafti...
I have the same problem, it works fine with Java 16 but when downgrading to java 11 it shows that error.
On my placeholder api I have vault installed and have tried the command (/papi ecloud download Vault) but does not seem to fix my issue and my issue is that my vault does not even show up as a extension and none of the commands work for the economy or anything be glad if someone could help :D
Any follow-up to this issue with Javascript-Expansion & ChatControlRed on Java 17? I would like to update since it's LTS and this is the only blocker.
Sorry, I got busy with other stuff, haven't tested this yet, but after reading this it looks like we need to wait for the nashorn library to update. The email at mail-archive you posted above is one day before the last nashorn release 15.3 which we are currently using.
Seems that this problem will effect all plugins using javascript compiler, not just ours. I recommend staying on Java 16 until then.
Closing due to duplicate of #49. Let's keep updates there.
Updating SlimJar to 1.2.6 and Nashorn to 15.3 so it works on Java 17.
Hi all! @ipsk has just spent some time doing some changes and testing and says that this new jar will work on Java 17. Would you guys mind testing it out for us? Here's a direct download to the jar, try it out and let us know if it fixes any problems you're having. https://glare.dev/static/Javascript-Expansion-2.0.0-all.jar
Hi ๐๐ป
When I try to load your expansion following error occurs in console:
[19:39:56] [Server thread/ERROR]: [PlaceholderAPI] Failed to load expansion class ScoreboardTagsExpansion - One of its properties is null which is not allowed!
[19:39:56] [Server thread/ERROR]: [PlaceholderAPI]
java.lang.NullPointerException: The expansion version is null!
at java.util.Objects.requireNonNull(Objects.java:233) ~[?:?]
at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.regi...
a0a4173 Fix version being null - Andre601
I hope I understand the TokensReplacer correctly here.
If that's the case, merge this to fix #1
I just tested your script @mibby, it appears to work now, thank you so much @darbyjack!

Some people are having issues with getVersion() returning null (possibly due to platform dependency? im not sure), so instead this has been changed to a hardcoded string.
also changed the onRequest() method to inherit @NotNull annotation to stop a warning in IntelliJ
afcd8e0 Update SlimJar + Nashorn for Java 17 (#51) - ipsk
Thanks for testing. Closing this as I merged the PR and will release shortly to the eCloud.
Basically I have the plugin on a server named PlayTime
Now i wanted to know if it's customizable like currently it goes by
Days,hours,minutes,seconds
We have a custom GUI on the side that shows timeplay
Now this causes tons of issues like nearly the whole screen is taken because of this
Is it possible to make it only appear as Days,Hours,Minutes?
If so please let me know, if it isn't then it's fine let me know as well
I have attached a screenshot of a player with the gia...
Could someone please finish this work -- see the two previous comments -- and publish an official release? Thanks in advance.
Something I wonder: Wouldn't it sound better to have %server_version_full% rather than %server_version_build%?
I feel like it makes a bit more sense here since we can see the MC version and build version as full version string I would say...
Something I wonder: Wouldn't it sound better to have
%server_version_full%rather than%server_version_build%?
I feel like it makes a bit more sense here since we can see the MC version and build version as full version string I would say...
%server_version_full% makes sense to me, better than %server_version_build%. Trust is, I don't care about the placeholder names. I do care that they return standard results, which the PR currently does not. A little more string parsing wou...
Adresses issues mentioned in #29
I simply added a substring(0, buildParts[2]) to the buildParts[2] section to exclude anything after the build number.
I also changed the getServerVariant() part a bit by moving the entire Map initialization and filling to static, so that it should only happen once.
Saying that I believe this needs some rework in order to improve it, especially in terms of maintainability for other forks which may or may not have different outputs for `Bukkit.ge...
I made some changes which you can see in #37
If you like could you test out this jar file real quick and tell me how it goes:
https://cdn.discordapp.com/attachments/412716812761825290/900468756176855071/PAPI-Expansion-Server.jar
Personally, I feel like we should make a proper method to retrieve the right values for the build to return, but this would in the end require us to know what each (popular) fork returns with Bukkit.getVersion() which could become annoying...
The ^^^ build return correct values on Spigot 1.17.1-3262
>papi parse rambeau %server_version%
[12:52:37] [Server thread/INFO]: 1.17.1
>papi parse rambeau %server_build%
[12:52:42] [Server thread/INFO]: 3262
>papi parse rambeau %server_version_full%
[12:52:52] [Server thread/INFO]: 1.17.1-3262
and Paper 1.17.1-341
> papi parse rambeau %server_version%
[12:53:40 INFO]: 1.17.1
> papi parse rambeau %server_build%
[12:53:44 INFO]: 341
> papi parse rambeau %server_versi...
Yeah. If we want to support other forks will we need to find out what they return, which at the end would probs require us to actually make a dedicated method...
To be really honest here, I do dislike the entire static stuff of the ServerUtil class and personally would go for making an instance of it to use later on with non-static methods.
I see a lot of possible work to do here, but I'm glad that my small fix is working. Let's just hope Paper doesn't randomly decide to just change t...
Let's just hope Paper doesn't randomly decide to just change the output again...
They would never do that. It is important to them to maintain compatibility with Spigot. ๐
Now if someone will accept the PR ...
Well... I could probs merge it myself, but I want to wait for Gaby's response on it.
78003bc Improve ServerUtils and TPS resolving - Andre601
d4ecbd4 Don't use Constructor - Andre601
3ee87ea Fix some inconsistencies - Andre601
905d6ef Add dependency-reduced-pom.xml to .gitignore - Andre601
ad81a89 Remove debug message - Andre601
dbd017b Just drop ServerUtils instance on clear() - Andre601
Improves the ServerUtils class in various ways:
Bukkit.getTPS() method when available, otherwise fall back to internal handling.tps_15 returning non-rounded number)I've made some basic tests on a PaperMC server (MC 1.17.2, build 273)...
Made some changes to the server expansion to now use the getTPS method when available.
You can try out this jar if you like and give feedback if anything else should be improved:
https://cdn.discordapp.com/attachments/412716812761825290/900834355386134589/PAPI-Expansion-Server.jar
Current changes in that jar can be found in #38
I can confirm all seems to be fine now, thanks!
Thanks. Please built and release the update: 2.6.2.
add new placeholder that shows the player's exact name. no dispaly name or any other shit.
I assume it's pretty much impossible for this property to not exist, right?
Or would there be a tiny chance that it isn't available?
I have the luckperms plugin for bungee and to be able to use its placeholders I need the placeholderapis
API Bug
ChangeOutput Placeholders show empty if the condition contains %player_name% and player name beginning or ending with _
it will not be empty
Placeholder:
`%changeoutput_eq...
Hello @M4h45amu7x,
The issue you encountered is caused by an Expansion and not PlaceholderAPI itself.
This issue-tracker is reserved for Bug reports and feature requests towards PlaceholderAPI.
Please report this issue to the Expansion's main issue-tracker.
A list of known Expansion repositories and their issue trackers can be found here.
*This is an automated response created by a **GitHub Acti...
This is as of right now a tracking PR for any concurrency issues. I am going to try to find and resolve concurrency issues in PlaceholderAPI's code. This is not to be merge soon!
This is trying to resolve issues such as #727 ; a ConcurrentModificationException showing that either:...
Fixed a typo in RedProtect's SpigotMC URL
Small typo fix in the link to RedProtect's SpigotMC page
Closes N/A
Updates ajLeaderboards placeholders. The prefix changed, and some new placeholders have been added.
From what I can see there is no need for the expansion to require offline player and it looks quite easy to make it work with null players. From what I can tell you just have to remove the null checks and in the evaluate method you add some extra checks when adding the bindings for offline player since PlaceholderAPI#setPlaceholders and #setBracketPlaceholders both work with null.
Plugin Bug
Cloning and building this repository fails builds since https://repo.maven.apache.org/maven2/net/kyori/adventure-platform-bukkit/ does not have 4.0.0-SNAPSHOT. This used to work, so I'm guessing that the snapshot has...
New API feature
I would like to see Adventure/MiniMessage placeholder support for Placeholder API.
Mojang is moving away from legacy section symbol formatting and focusing on raw json text instead. Paper and other servers are now offering Adventure as a replacement, and since ...
What kind of request is this? (Multiple selections possible)
What is the change?
Please provide as much information (including links, images a...
Actually there should be an issue made for everything you want to write code for.
Here's a copy from the discord:
Branch policy
We have 2 restricted branches we should only be PRed to.
These branches are master and develop.
master is for releases only and should only be PRed from the develop branch.develop is where all feature and bugfix branches are PRed to. This branch will be used to get all features and bugfixes for the next relea...Major Code improvement (Will affect Servers)
So at this moment PlaceholderAPI can only be used and installed on a single spigot server. My feature request expands that.
Currently, if you have a big network and rely on external premium spigot plugins you are very limited what you...
New API feature
Currently, I can read PlaceholderAPI placeholders by โpullingโ the information from the plugin which adds these placeholders. If a continuously changing placeholder should be displayed somewhere, it would need to be updated/requested in a set interval.
...
The biggest issue I see with this is, that placeholders are rarely static and may change a lot. Not to mention that they can and often will be per-player.
Just take the %player_name% placeholder as an example.
Even if we would keep a sort of cache could this end up in caching hundreds of entries because a server could have hundreds of players online and either a chat, tab or scoreboard plugin could then call the setPlaceholders method of PlaceholderAPI frequently here.
Other placeh...
New config option
The /papi command can be viewed in tab complete and ran by players by default. It does not appear to have an explicit permissions node associated with it. Even with permissions denied for /plugins etc., the fact that PAPI is installed can be determined by th...
I for my part can't see why hiding plugins is a good security practice.
The only "reason" I see is to make it harder for people to copy the server, which imo is stupid.
Because if they bother to copy a server down to its plugins do they have dangerously low standards for the most part.
I doubt this would change anything, but did you try executing ./gradlew clean shadowJar instead of ./gradlew build?
6676e2f Update dependencies of PlaceholderAPI - Andre601
Updated PlaceholderAPI's dependencies.
Updated dependencies:
4.0.0-SNAPSHOT -> 4.0.019.0.0 -> 22.0.01.23 -> 1.321.23 -> 1.325.6.2 -> `5.8....d68af58 Make name of job only show java version - Andre601
533b892 Add missing trailing / - Andre601
Some progress.
It seems the issue was/is, that the URL for the CodeMC repository was missing a / at the end and Gradle was a bit picky about this.
I still updated the dependencies in my PR. Could you try out the feature/update-dependencies branch and let me know if compiling (and running) the plugin works for you? Thanks.
Added two nullable annotations
Someone please build and release officially.
adds a description of a newly added placeholder.
Just to note, Kyori seem to have just removed 4.0.0-SNAPSHOT from the sonatype snapshot repository, breaking the build process unless you have a local build of it in your m2 repository.
Also, yes, obviously, your PR will fix this issue as it is referencing an existing version of the artifact. Additionally, it might be worth updating Gradle to 7.3 while you're at it updating stuff.
Plugin Bug
The plugin tries to load expansions even if they are not in the server folder and server freezes.
[09:36:06] [Server thread/INFO] [me.clip.placeholderapi.PlaceholderAPIPlugin]: [PlaceholderAPI] Placeholder expansion...
You are using PlaceholderAPI on a modded server.
PlaceholderAPI is a Spigot plugin and we do not support modded and hybrid servers, as they come with huge disadvantages. Please read the PSA from EssentialsX regarding this.
@Andre601
I tried the updated-dependencies branch, and this is the result:
For your issue with JDK 17:
PlaceholderAPI uses Gradle 7.0 iirc, which doesn't support JDK 17. You can either fix this by using JDK 16 or changing the version in gradle/wrapper/gradle_wrapper.properties to Gradle 7.3.
Updates to compile under 1.18 and some misc gradle changes
Closes N/A
Breaks the top_voter_* placeholders whenever there isn't a player link - even though they don't need one.
The p == null check should only be applied to votes and has_voted (as those are the only two that require a player link).
719bc4f Don't require player for top placeholders - darbyjack
2869a7c Add missing SuperbVote placeholders - Andre601
Updating SuperbVote placeholders
Closes N/A
ะะดัะฐััะฒัะนัะต!
ะฏ ะฒะฒะพะถั ะบะพะผะฐะฝะดั /papi ecloud download Javascript ะฐ ะฟะพัะพะผ /papi reload ะทะฐะบะปัะดัะฒะฐั ะฟะฐะฟะบั ะธ ะะถะฐะฒะฐ ัะบัะธะฟั ะฝะต ัััะฐะฝะพะฒะปะตะฝ ะฒ ะะปะฐะณะธะฝะต PlacehoderAPI.
ะงัะพ ะผะฝะต ั ััะธะผ ะดะตะปะฐัั?
I've gone ahead and translated your message.
Please write in English next time, so that everyone can understand it, thanks.

That's what I have after the team as it was and remained.
And here is the folder where a

ll the installers are
I've gone ahead and translated your message.
Please write in English next time, so that everyone can understand it, thanks.
API Bug
I am using otherplayer in my deluxechat /msg format. This is the format [&6%otherplayer_displayname_%recipient_player_name%%&b] And it gives me this error https://paste.helpch.at/cemenawesa.bash
It was working, and...
Not sure if it is a deluxe chat issue or a placeholder API issue.
Ahh, yes it appears to be a papi issue.
at java.lang.Thread.run(Thread.java:831) [?:?]
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 0
at com.extendedclip.papi.expansion.otherplayer.OtherPlayerExpansion.getDisplayname(OtherPlayerExpansion.java:239) ~[?:?]
at com.extendedclip.papi.expansion.otherplayer.OtherPlayerExpansion.onRequest(OtherPlayerExpansion.java:109) ~[?:?]
It doesn't look like we maintain that expansion. Feel free to reach out to the developer of the expansion on their SpigotMC page. https://www.spigotmc.org/resources/placeholderapi-otherplayer-expansion.51171/
It doesn't look like we maintain that expansion. Feel free to reach out to the developer of the expansion on their SpigotMC page. https://www.spigotmc.org/resources/placeholderapi-otherplayer-expansion.51171/
He does appear to be inactive, last online 17w
Unfortunately we can't really do anything as we don't maintain it nor have the source.
Unfortunately we can't really do anything as we don't maintain it nor have the source.
Are there any other ways to get the display name of the users?
Not sure how DeluxeChat handles internal/own placeholders compared to PlaceholderAPI ones, but PAPI itself doesn't support %placeholder% patterns inside other %placeholder% patterns.
Not sure how DeluxeChat handles internal/own placeholders compared to PlaceholderAPI ones, but PAPI itself doesn't support
%placeholder%patterns inside other%placeholder%patterns.
So there is no way to get the display name of a user via a placeholder that gets their name?
One way you could perhaps try (if the otherplayer expansion supports it) could be using {placeholder} patterns inside the %placeholder%
But for that would you need to use different placeholders instead of %recipient_player_name% and I'm not sure if DeluxeChat offers support for bracket placeholders.
Either way, the issue seem to be on the otherplayer expansion and not PlaceholderAPI, so nothing we can do here, nor something for this bug-tracker.
Feel free to open a [Discussion](h...
And here is the folder where a
ll the installers are
Probably because of the hosting. Thanks, I'll look and tell you the result!
New API feature
1.18 Support
No response
No response
No response
1.18 support is being worked on. In fact, there should be a jar file available on the HelpChat Discord to test out, so feel free to do so and report any bugs and issues you encounter along the way.
OK, thank you very much.
e969f37 Improve StringBuilder and also fix possible NPE - Andre601
3ba29f1 Fix possible NPE for findExpansionsOnDisk - Andre601
Hey, i just saw that you had the same Problem that i used to have, and it was annoying.
But i managed to solve it!
Just download the Math Extension with the command /papi ecloud download Math
Then just devide the Number of Mined blocks by 2 like the following : %math_{statistic_mine_block}/2% .
And thats basicaly it. It worked out for me, though im pretty sure not many people even know that something like that is possible.
Have a great day!
Changes:
6f5853 fix wiki action... again - noreplyaa68a4 Update flex - noreply0798d9 Update this flex too funnycube :) - noreply6e1eb8 Add release.yml for automatic release drafts - noreplyd68af5 Make name of job only show java version - noreply6f8795 feat: nullable annotation placeholderhook - noreplyArtifacts:
No artifacts saved.
Changes:
08c43d Add Java Version to /papi dump command - adminArtifacts:
No artifacts saved.
Merges latest changes from development branch into master
Closes N/A
cc235cf Merge Development into master (#758) - Andre601
Changes:
cc235c Merge Development into master (#758) - noreplyArtifacts:
Changes:
b4f683 Update development from master (#662) - noreply380991 Include version in registration message - 11576465+Andre601e969f3 Improve StringBuilder and also fix possible NPE - 11576465+Andre6013ba29f Fix possible NPE for findExpansionsOnDisk - 11576465+Andre60131deef Use completedFuture instead - 11576465+Andre601Artifacts:
Changes:
d79f97 Add logging options to PlaceholderExpansion - 11576465+Andre601721904 Add overload for Throwable - 11576465+Andre601fe0bb1 Add missing [<expansion>] prefix - 11576465+Andre601Artifacts:
Changes:
acb572 1.18 + Gradle Updates - adminArtifacts:
This replaces the check for the platform being Platform.SPONGE, which was not scalable, as other platforms may need to disable this binding, such as Velocity and Krypton, which both also bind the main class.
I did think about just making the binding nullable, but that wouldn't work, since we need the binding for the @Data binding.
If anyone has any better ideas, feel free to suggest them.
Also, this fixes a compilation issue for Sponge that was bugging me, in that the @Plugin ann...
This does exactly what it looks like. I cleaned up the configuration file in accordance with what me and @PiggyPiglet discussed on Discord.
This PR separates the Time stuff in to a separate subdirectory, under config.time in the common, and also moves everything config-related to a new config package. No idea why it was placed where it was before.
I also added a default configuration file for this, in common/src/main/resources, to avoid a startup NPE when the plugin has not been...
79940ff Removed Deprecated Methods - darbyjack
In version 2.10.9, we marked a bunch of older API methods as deprecated and to be removed in version 2.10.11. The time is coming soon to release this new version so the methods marked for removal should be removed. Merge this last before the 2.10.11 release.
Closes N...
Uh.... Some are marked to get removed in 2.11.0 while you mention 2.10.11, so which one is it now?
Yup, that's a typo on my end. The next version should be 2.11.0 and then removed normally.
Wanted to report this issue, with the help from the kind people in the help chat discord,
We ended up finding out that the JS Expansion fails to load on OpenJDK 17, however, it works completely fine using (Adoptium
Here is the error PAPI produces when JS Expansion is installed with OpenJDK 17 Error
This is with the Latest Paper 1.18 Build, and Latest PAPI Build for 1.18
Hey, I wanted to Implement the Towny Channel Tag youre currently writing in on the Plugin AnimatedScoreboard. (It Displays you some stats on the side) however nothing seems to work for.. ive tried "%townychat_channel_tag%, %townychat_channel_name%, %townychat_channeltag%" and honestly all the other options. but the three mentioned here seemed the most logical.
Please help, is this just a bug or is it me? :P
Plugin/Server Incompatability
I am setting up a server using macmamc (plugins and mods). When starting the server without any expansion of PlaceholderApi it starts correctly.
When I use the command
/ papi ecloud download and / ...
We do not really support Hybrid Servers since those kind of servers can and will break a lot of plugins.
Those kind of servers are bad as they try to combine two APIs which would never work together to begin with: On one side the fairly rigit Bukkit-API and on the other a somewhat lose and frequently changing Forge-API.
I highly recommend to not use those hybrids and instead use only one side.
I also recommend reading the [PSA of EssentialsX](https://essentialsx.net/do-not-use-mohist.h...
Please merge this, it means a lot to us. Thank you so much!
Wait, why hasn't this been pushed to the Spigot page? None of the open issues seem to be related to 1.18.
Because it has not been yet. It will when we feel it's ready.
Someone in helpchat was suggesting an MSPT placeholder that would return the value that Server#getAverageTickTime() returns. The only issue is that its only available in paper and its forks so it might create some confusion if listed on the wiki and it only works on some servers.
The placeholder %bungee_total% ping is too late.
I use %bungee_total% with discordsrv, if players join the server, the number of players will be delayed.
I just wanted to note that this issue has not really been fixed for people who depend on PlaceholderAPI. The maven has still not gotten an updated version and I don't think anyone should directly depend on the dev builds, which are in fact updated. Will we get a 2.10.11 anytime soon with the fixed builds?
We are shooting to release the next version by next week.
I hope it's as soon as possible as my CIs have been broken for over a month now just because of this ๐
How's the status on this PR?
Anything else to update/remove?
Going to hold back on this. Decided it was best to not take the chance to break stuff before PAPI3.
It's not a great solution, but I "fixed" my CI by using version 2.9 which didn't depend on adventure-platform
*sigh* so you do the bukkit aproach here...
Just remove it! If people use it it's their fault. They had plenty of time. We should just release 2.11.0
And be honest: Do you REALLY believe PAPI3 will enter any alpha or beta state in the next year, given its current state?
I state the facts here.
I believe one way you could do this for now is using jitpack to get the latest state of the development branch, which should have the updated dependencies of PAPI in it.
It's not an ideal solution, but as a temporary workaround should it work.
Direct link for download info:
https://jitpack.io/#PlaceholderAPI/PlaceholderAPI/development-SNAPSHOT
Semver isn't everything.
While we can follow it, is it not required. Not to mention did we ANNOUNCE through the annotations used that the stuff WILL be removed in 2.11.0, so now changing that would also not be nice.
If we announce something, no matter in what way, should we stick with it.
Semver isn't everything. While we can follow it, is it not required. Not to mention did we ANNOUNCE through the annotations used that the stuff WILL be removed in 2.11.0, so now changing that would also not be nice.
If we announce something, no matter in what way, should we stick with it.
I disagree, semver is a globally identifiable way of defining breaking changes, additions and patches/bug fixes that guarantees if my software changes a library versi...
Fixed placeholder will became lower case after parsing. Which affected old plugin a lot.
Closes #666
Add PowerBoard to the plugin list
Closes N/A
Add PowerBoard's placeholders
Closes N/A
Your Pull request has been marked as invalid.
This means that it doesn't follow our Contributing Guidelines.
Here is a small summary of what you should know:
development branch.docs/wiki branch.Don't hesitate to ask us any questions.
*This is an automated response created by a **GitH...
Your Pull request has been marked as invalid.
This means that it doesn't follow our Contributing Guidelines.
Here is a small summary of what you should know:
development branch.docs/wiki branch.Don't hesitate to ask us any questions.
*This is an automated response created by a **GitH...
Added PowerBoard to plugin list
Closes N/A
Added PowerBoard's placeholders
Closes N/A
Your Pull request has been marked as invalid.
This means that it doesn't follow our Contributing Guidelines.
Here is a small summary of what you should know:
development branch.docs/wiki branch.Don't hesitate to ask us any questions.
*This is an automated response created by a **GitH...
We won't accept those kinds of PRs. Please read the README about the wiki for how to contribute
Changes:
cfd289 Merge pull request #667 from PlaceholderAPI/fix/666-lowercase-issues - adminArtifacts:
Changes:
e25a28 2.10.11 RELEASE - adminArtifacts:
Changes:
No changes.
Artifacts:
Changes:
5fe938 We're actually on 2.11.0 RELEASE - adminArtifacts:
Hey everyone!
Another day, another release of PlaceholderAPI. This one brings quite a few new features and bug fixes to the plugin.
By far the most important change. PlaceholderAPI now supports Spigot/PaperMC 1.18.
Remember that as of writing this, PaperMC 1.18 is not considered to be stable yet, so use it at your own risk.
Added PowerBoard and its placeholders.
Closes N/A
API Bug
The method PlaceholderAPI.setPlaceholders(OfflinePlayer, String); is changing the input string %s to % , this is causing bugs further down the line in other plugins that use String.format(); for example.
This bu...
I assume the issue is not present when you do the String.format before setting placeholders?
F.e. PlaceholderAPI.setPlaceholders(player, String.format("Some String %s %%player_name%%"))
Doing String.format before PlaceholderAPI.setPlaceholders() would not indicate the existence of the bug as the %s will have already been replaced with the new value before PlaceholderAPI.setPlaceholders() can remove the s.
Image 1:
Image 2:
As you can see, there are differences between the results on the Hologram (Image 1) and the output of /superbvote top (Image 2)
Not only that, but some entries on the hologram are duplicated for some reason.
I am running:
Holographic Displays v3.0.0
PlaceholderAPI v2.11.0
More Information:
Here's my Hologram Configuration:
voteleaderboard:
lines:
- '&8[&c!&8] &7Vote Leaderboard &8[&c!&8]'
- '&e&l1. &r&a%superbvote_top_voter_name_0% &8- &7%superbvote_top_voter_votes_0% Votes'
- '&e&l2. &r&a%superbvote_top_voter_name_1% &8- &7%superbvote_top_voter_votes_1% Votes'
- '&e&l3. &r&a%superbvote_top_voter_name_2% &8- &7%superbvote_top_voter_votes_2% Votes'
- '&e&l4. &r&a%superbvote_top_voter_name_3% &8- &7%superbvote_top_voter_votes_3% Votes'...
I am having intense lag spikes when using the placeholders from this expansion.
Aikar Timings Link:
https://timings.aikar.co/?id=01f8c78bbf604a24a697407edf767299#timings
I am using 20 placeholders from this expansion on a Hologram to make a leaderboard hologram.
Hello, I figured out this is an issue with Holographic Displays, sorry for the useless issue.
i have a 1.8.8 server running java 16
I'm using this plugin as a dependency for a level system: https://www.spigotmc.org/resources/jsengine.92709/
I'm trying to use a javascript placeholder but i get this error: https://pastebin.com/76jdHthu
after some debug, i found that the issue is betwen javascript-expansion and jsengine
without jsengine everything works fine
Updates dependencies, implements #3.
Existing placeholders remapped:
%bungee_total%: %bungee_count_total%
%bungee_%: %bungee_count_%
New placeholders created:
%bungee_count%: The player count for the current server (via BungeeCord)
%bungee_server_name%: The current server's name, as defined in BungeeCord's config.yml
Bumped version to 3.0 due to breaking changes in existing placeholders.
348b075 added glare's fancy pants dev string to ver - PiggyPiglet
850633e Fix #771 - PiggyPiglet
Patches an oversight on the fix for #666 (#764), fixing #771
Will re-open this against the master branch
This won't be added in the near future, so I just close this.
a71b865 Update Contributing file - Andre601
Since we apparently go away from the development branch and instead now only have the master branch did I quickly update the CONTRIBUTING.md file to reflect that change (And to hopefully make it a bit more understandable in some way).
Closes N/A
38e6e02 Not sure how I missed that... - Andre601
Sentence flow here with the "should you both base of and target"
This sentence right here doesn't feel like it flows properly. "Make sure to both base of and target the mentioned branch". Is "of" supposed to be "off"?
Last part of the sentence seems off. Maybe "your changes should follow the ..."?
Idk... Not a native english speaker so I can't really tell which one is correct here...
In that sentence I basically want to say that the source and target branch should be the mentioned one.
See my other comment regarding this.
Hi i'm the author of the OtherPlayer expansion. As pointed out, you are trying to use a placeholder inside a placerholder which isnt supported. What ends up happening when u try to use %otherplayer_displayname_%recipient_player_name%% is that this gets submitted to the expansion: %otherplayer_displayname_% which currently doesn't have any elegant way of catching the misuse of the place holder and expects a player name so it crashes.
I will update the expansion today to more elegantly c...
Changes:
850633 Fix #771 - PiggyPigletArtifacts:
Changes:
358a3b Release 2.11.1 - noreplyArtifacts:
Hey everyone,
This release brings a fix to a bug that some users were facing when they had plugins that formatted chat via PlaceholderAPI.
%sbeing edited to % (#772)This discussion was created from the release 2.11.1 | Bug Hotfix.
Changes:
3ccbbe Bump to 2.11.2 DEV - noreplyArtifacts:
PlaceholderAPI as of right now is rather good and stable to use.
However, I believe it can be improved in different ways which I would like to go over in this discussion.
Yes, PlaceholderAPI v3 will be a thing... Yet it is further delayed by the main devs due to multiple reasons including simply not having time for it.
So while we wait for a possible v3 release of PAPI could we just improve the current v2 version and maybe even implement things planned fo...
Hello any homes above 10 for this placeholder do not show up and show this.

s
API Bug
I have a bug when I give myself money and I go to like 10M from there it starts to show weird numbers like "1.0e7" and I couldn't find any solutions to it so I came here

https://api.extendedclip.com/expansions/scoreboardobjectives/
...
Your Wiki Pull request has been marked as invalid.
Pull requests targeting the wiki need to be based of and target the docs/wiki branch of this repository.
More information can be found on the Wiki README.
This is an automated response created by a GitHub Action
Mentioning the bot won't have any effect!
<div align="right"><a href="https://github.com/PlaceholderAPI/PlaceholderAPI/acti...
It's not my placeholder, though.
They have updated the placeholders and have not updated the documentation.
You can check on ecloud which takes you to the spigot page. (Source code = Spigot page. ยกNICE!)
https://api.extendedclip.com/expansions/scoreboardobjectives/
...
It's not my placeholder, though.
They have updated the placeholders and have not updated the documentation.
You can check on ecloud which takes you to the spigot page. (Source code = Spigot page. ยกNICE!)
https://api.extendedclip.com/expansions/scoreboardobjectives/
...
20c87f1 Fixed decimal points pattern for %vault_eco_bal... - BlitzOffline
4e31025 I have no idea what happend here. kek - BlitzOffline
321a6dc Update dependencies | run baltop on startup - darbyjack
Migrates the baltop placeholders in the Vault expansion to this expansion to utilize EssentialsX's new BaltopAPI.
Can you let me know if this fixes it? PAPI-Expansion-Essentials.zip
Hello! This placeholder is taken works as %essentials_world_date%, but it can be configured freely according to the format in the config.yml of the PAPI plugin.


Plugin Bug
When I put the current PAPI release in a 1.8 Spigot server, the plugin won't load due to a NoClassDefFoundError:
`
org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: com/google/gson/Gson
at o...
To be clear, the only reason why I am even reporting this is because I have a plugin that works together with PAPI, and was asked to make my plugin available for 1.8. That is when I ran into this problem.
Oh, just found a workaround - it seems to work when I add this plugin in the 1.8 server:
https://www.spigotmc.org/resources/gson-for-1-8-3-or-older.30852/
Gson has been removed from PAPI to fix an issue with BStats, which does remove 1.8 support.
It was a long discussion we had and at the end did we went with dropping 1.8 in favour of fixing the BStats issues.
Just update to 1.8.8 or find another workaround.
This PR adds %holomobhealth_displaytoggle% from HoloMobHealth
Closes N/A
5d8b427 v2.4.0 - Added getinfo placeholder - cj89898
Adds checkitem 2.4.0 info
4a83ae2 Update Placeholders.md - cj89898
db5a2ff Merge pull request #786 from cj89898/docs/wiki - Andre601
adds a new entry (for Sack plugin)
For some reason I am getting this error on my latest Paper 1.17.1 server using PlaceholderAPI v2.11.1:
[13:02:23] [Server thread/WARN]: java.lang.ClassNotFoundException: net.minecraft.server.v1_17_R1.MinecraftServer
[13:02:23] [Server thread/WARN]: at java.base/java.lang.Class.forNameImpl(Native Method)
[13:02:23] [Server thread/WARN]: at java.base/java.lang.Class.forName(Class.java:350)
[13:02:23] [Server thread/WARN]: at com.extendedclip.papi.expansion.server.ServerExpansion.(Se...
Closes N/A
Please update the server expansion. The latest version is 2.6.0 and should fix this issue.
I just noticed that I had an extension called Expansion-server.jar and one called Expansion-Server.jar installed. I removed the older one (which had the old version), restarted and everythink works fine!
@darbyjack i would like to confirm that the downloaded PAPI expansion works over 10 homes
Is it possible to add placeholders for world in which the home is located and creation date of the home (if that value is stored anywhere)
When trying to round numbers with math extension i get errors in console
[09:01:30 WARN]: [PlaceholderAPI] [Math] Invalid Placeholder detected! [09:01:30 WARN]: [PlaceholderAPI] [Math] Placeholder: %math_:half-up_{essentials_home_1_x}% [09:01:30 WARN]: [PlaceholderAPI] [Math] '227.2476827494362.5' is not a valid Math Expression.
for some reason values X and Z are returning values with double decimal points like -5.87897896.5
%math_:half-up_{essentials_home_1_x}%
This isn't how you should use the math expansion. It's for math expressions and not just to round stuff.
94c27b6 Remove pointless .5 appending - Andre601
3e80bd0 Revert previous commit (Should be PR) - Andre601
2518f64 Remove .5 appending from Home location - Andre601
Why was that evene appended to begin with?
Also, if the X one looks weird is it because I accidentally committed directly to master when I wanted to make a PR, so I reverted it (poorly).
Issue has not recurred through several updates now. Consider it resolved by #738.
Someone please build and release this officially.
In Chinese:
ๆๅจserver.propertiesๆนไบmotd,ไฝๆฏๆญคๅ้่ฟๆฏๆพ็คบA Minecraft Server
ไปฅๅๅจ่ทจๆ็ซฏ(Waterfall)็configๆนไบไพๆงไธๆฏ็ๅฎ็ๅๅญ
ๆไปฅ่ฏท่ทๅmotd้็ๅๅญ่ไธๆฏ็ดๆฅๆพ็คบA Minecraft Server
In English(Use translator):
I'm on the server.properties is changed to MOTD, but this variable still shows A Minecraft Server
and the config Waterfall is changed. But it's still not the real name,
so please obtain the name in MOTD instead of directly displaying A Minecraft Server
The expansion obtains the server name from the PlaceholderAPI config, since the server does no longer have an actual server name.
That property has been removed a while ago.
If you want to use server MOTD, use %server_motd% which should be available.
6c47bb1 Added mainhand and offhand for getinfo - cj89898
Updated checkitem
Try using QuickJS (change in PAPI config)
Hello, it isn't really an issue with incorrect ordering, but actually, it's an issue where if 2 users have the same amount of votes, one of the users will have their leaderboard entry duplicated twice instead of having each user displayed seperately.
Using graalvm, I got an error in plugins using javascript (deluxemenus or deluxechat for example) :
https://pastebin.com/V6n4EkFA
I'm using :
I also had the issue on paper 1.16 with older deluxemenus and graalvm
Don't think GraalVM is compatible with these versions of Nashorn. Not much can be done about it unless someone has a fix.
for example, i used a autoclicker to test it(100 clicks per sec)
but %speedpersec_clicking% usually returns 0.0
CheckItem 2.5.0
2 separate issues have been made on my Math Expansion repository, reporting the expansion to not parse sn exression properly.
Looking at the reported issue, I can see one single source, which is the use of the Statistic expansion in both cases.
The issue seems to be the fact that the expansion returns an empty String rather than a default value like 0 or -1, which in return breaks the math expression.
A fix for this would be highly apreciated.
Related issues:
This works in the latest mohist buiilds
Would it be possible to add %player_item_in_hand_lore%, functioning exactly the same as %player_item_in_hand_name%, but returning the item's Lore instead?
Fix PlaceholderExpansion may not unregistered if Identifier has uppercase letters.
Presumably the intention was to append .5 to an int and not a double, so that the coordinate is centered on the top face of a block. This PR would at least return a number, but I would assume this is still incorrect, and instead it should be cast to an int and .5 should be appended to that int.
Presumably the intention was to append .5 to an int and not a double, so that the coordinate is centered on the top face of a block. This PR would at least return a number, but I would assume this is still incorrect, and instead it should be cast to an int and .5 should be appended to that int.
You are aware that an int can't have fractials..... right?
The issue is still a pointless .5 for the X and Z coordinates for homes, which makes no sense to do.
See #43 for why this is an issue.
Would it be possible to add %player_item_in_hand_lore%, functioning exactly the same as %player_item_in_hand_name%, but returning the item's Lore instead?
Hello!
Can you give an example of how to use the new nbtStrings to query an arbitrary NBT tag? I'm having trouble grokking how to get an NBT tag and use its value as a variable, instead of just comparing it against a known value.
Thanks!
Currently there is no way to get the raw value, but you can use the getinfo placeholder with nbtStrings or nbtInts and it will return all nbt tags in a certain pattern. You could then use the javascript expansion to extract the value from there.
You can always get a ton of help for things like this over on the HelpChat Discord
Updates to the docs/wiki for the Prison plugin and its available placeholdrs.
Closes N/A
Sorry. I was not aware my fork was out of date. I thought I refreshed it. I'll rebuild these changes and issue a new pull request.
Prison supports all other placeholder within the GUI ranks and mine lore.
Closes N/A
%essentials_afk% placeholder. In simpler terms, this allows you to change the normal yes/no output to something of your choice. Very useful!%javascript_check_afk%Javascript Code:
check_afk.js
var afk = PlaceholderAPI.static.setPlaceholders(BukkitPlayer, "%essentials...
// the PlaceholderAPI.static.setPlaceholders() is used to parse placeholders inside the javascript placeholder
Wrong, that method is used if you have placeholders like "%expannsion_" + argument + "%", all the other placeholders are replaced by default
Updates the ThemePark placeholders to the latest ones.
See https://api.extendedclip.com/expansions/themepark/
Your Wiki Pull request has been marked as invalid.
Pull requests targeting the wiki need to be based of and target the docs/wiki branch of this repository.
More information can be found on the Wiki README.
This is an automated response created by a GitHub Action
Mentioning the bot won't have any effect!
<div align="right"><a href="https://github.com/PlaceholderAPI/PlaceholderAPI/acti...
Updates the ThemePark placeholders to the latest ones.
See https://api.extendedclip.com/expansions/themepark/
(Now into the correct branch, whoops)

I want the NPC to have the name of the top island level leader.
As you can see its not working.
Citizens version; Citizens 2.0.29-SNAPSHOT (Build 2457)

// the PlaceholderAPI.static.setPlaceholders() is used to parse placeholders inside the javascript placeholder
Wrong, that method is used if you have placeholders like
"%expannsion_" + argument + "%", all the other placeholders are replaced by default
I stand corrected ยฏ_(ใ)_/ยฏ Thank you kind sir for the clarification. I've updated the post with the correct information.
How is this an issue with the Vault expansion?
You clearly use a different placeholder and/or plugin.
New API feature
There's currently a /papi parse me %someplaceholder%, alongside /papi parse (playername) %someplaceholder%
I suggest the addition of /papi parse null %someplaceholder% (or some other syntax to the same effect).
This would explicitly pass null as the play...
`
[21:16:52] [Server thread/ERROR]: [PlaceholderAPI] Failed to load expansion class JavascriptExpansion (Is a dependency missing?)
[21:16:52] [Server thread/ERROR]: [PlaceholderAPI]
java.lang.NoClassDefFoundError: org/openjdk/nashorn/api/scripting/NashornScriptEngineFactory
at com.extendedclip.papi.expansion.javascript.evaluator.NashornScriptEvaluatorFactory.create(NashornScriptEvaluatorFactory.java:34) ~[?:?]
at com.extendedclip.papi.expansion.javascript.JavascriptExpans...
Plugin Bug
https://gist.github.com/MithrandirCraft/ccf0333f5eac720bdce6a2292b99d44d
here's another one that seems to relate to SQL:
https://gist.github.com/MithrandirCraft/808a81923f49615841d9595fe2d30af3
These errors seem...
Hello @MithrandirCraft,
The issue you encountered is caused by an Expansion and not PlaceholderAPI itself.
This issue-tracker is reserved for Bug reports and feature requests towards PlaceholderAPI.
Please report this issue to the Expansion's main issue-tracker.
A list of known Expansion repositories and their issue trackers can be found here.
*This is an automated response created by a **GitHub...
The issue seems to be related to Vault and/or LuckPerms
Grief Defender uses LP, and also Vault I'd imagine.
My assumption is that GriefDefender hooks into Vault, which itself connects with LP and LP seems to have connection issues to its database, which propagates the error forward to vault, followed by the Vault expansion.
50d4e14 Add --null option for parse command - Andre601
fe8d865 Add missing import - Andre601
This PR adds a --null command argument to the parse command, which can be used instead of the player name.
Providing this argument would parse the placeholders against a null player, which can be useful for Placeholders that do not require a online player to be used.
Th...
631609a Improve expansion sorting in /papi dump - Andre601
This changes the way expansions are sorted in the /papi dump command.
Previously did PlaceholderAPI sort the expansions by their Identifier and then by author.
Now it should sort them by identifier AND also by the author.
Idk... Nag @iGabyTM about this.
Closes N/A...
I don't see the point of having another sorting by author's name, isn't like there will be multiple expansions with the same ID or whatever. If you ask me, I would sort them only by identifier.
I don't see the point of having another sorting by author's name, isn't like there will be multiple expansions with the same ID or whatever. If you ask me, I would sort them only by identifier.
The idea is to have the expansions grouped by the author, while in alphabetical order.
Would IMO be easier for debugging as all expansions are grouped by their author.
Hey there.
I made a PR that should add what you suggested. You would just need to use --null instead of a player name.
Could you try out this jar file if you have time?
https://cdn.discordapp.com/attachments/412716812761825290/939614880703602718/PlaceholderAPI-2.11.2-DEV-null.jar
Hey, i have the same issue :/
I'm on java 17 and minecraft-1.17.
Have you tried switching to quick-js in the config?
ๆจๆฏๅฆๅฐ่ฏ่ฟๅจ้ ็ฝฎไธญๅๆขๅฐ quick-js๏ผ
use_quick_js: true?
ๆจๆฏๅฆๅฐ่ฏ่ฟๅจ้ ็ฝฎไธญๅๆขๅฐ quick-js๏ผ


why is that
https://www.toptal.com/developers/hastebin/dufopevufi.properties
If you launch the server with:
"-Dnashorn.args=--no-deprecation-warning"
as a JVM argument, no script will work.
Users may be using this argument while using Java 11 with plugins that use the built-in Nashorn.
Checkitem changes
What about that "Cannot assign field "color" because "this.root" is null" error.
Seems irrelated to SQL?
With the checkitem_give be able to give an item with a glowin effect or hide an enchantment.
Disable the baltop task in the config. It's being removed from the vault expansion.
โฆ couple more.
Closes N/A
Plugin/Server Incompatability
[22:21:54] [Craft Scheduler Thread - 10 - PlaceholderAPI/WARN]: [PlaceholderAPI] Plugin PlaceholderAPI v2.11.1 generated an exception while executing task 1247
java.lang.NullPointerException: Cannot...
Hi, this is a problem with EconomyPlus, not PAPI, as per this line
me.itswagpvp.economyplus.vault.VEconomy.getBalance(VEconomy.java:82) ~[EconomyPlus.jar:?]`.
The issue you encounter is not considered a bug and rather an intentional behaviour of PlaceholderAPI and/or one of its expansions.
If you still believe that it is a bug, provide more information and a maintainer of this repository may look at it more closely.
Before providing more info, always make sure to use the latest version of PlaceholderAPI, as the issue you encounter might already be fixed in a newer version.
Optionally can you also try out [development builds](https://ci.extendedc...
It adds the BasicInfo placeholders to the list of placeholders.
Closes N/A
It adds the BasicInfo placeholders to the list of placeholders.
Closes N/A
Sorry, did it in 2 separate pull requests on accident, I can redo it and put it in one if you'd like me to.
Your Wiki Pull request has been marked as invalid.
Pull requests targeting the wiki need to be based of and target the docs/wiki branch of this repository.
More information can be found on the Wiki README.
This is an automated response created by a GitHub Action
Mentioning the bot won't have any effect!
<div align="right"><a href="https://github.com/PlaceholderAPI/PlaceholderAPI/a...
Your Wiki Pull request has been marked as invalid.
Pull requests targeting the wiki need to be based of and target the docs/wiki branch of this repository.
More information can be found on the Wiki README.
This is an automated response created by a GitHub Action
Mentioning the bot won't have any effect!
<div align="right"><a href="https://github.com/PlaceholderAPI/PlaceholderAPI/a...
Closes N/A


 to return empty string
No response
No response
No response
Not sure how PlaceholderAPI should be able to help here...
Spark has its own placeholders, open an issue on lucko/spark and ask luck to add such placeholder.
Spark has its own placeholders, open an issue on https://github.com/lucko/spark and ask luck to add such placeholder if the functionality exist on the plugin already.
oh, sorry, didn't know, i'll go there then
and seems like it was there, but wasn't in your wiki, and you added that already after my issue, lol
Been using this and works fine
Updates the placeholders to match the placeholder changes in ajLeaderboards v2.0.0
Build: 149
Status: failure
Changes:
38d77f Update label-commenter-config.yml - noreplycd9074 Update label-commenter-config.yml - noreply666ab4 Link to docs/wiki branch README - noreply50d4e1 Add --null option for parse command - 11576465+Andre601fe8d86 Add missing import - 11576465+Andre6011241c3 Add --null to command help - 11576465+Andre601Artifacts:
No artifacts saved.
Build: 150
Status: failure
Changes:
b73d72 add missing java.util.Locale imports - Gabriel DumitruArtifacts:
350a2be Remove testCharsReplacerHandlesEscapedHex() - Andre601
Fixes an issue where Builds on the CI would failed because a Test was not removed that requires the Color parsing functionality to be present.
Note that this PR should only be merged, if color parsing should be dropped, which I'm in favour of as it shouldn't be PlaceholderAP...
Plugin/Server Incompatability
[19:36:48 WARN]: java.lang.ClassNotFoundException: net.minecraft.server.v1_18_R1.MinecraftServer
[19:36:48 WARN]: at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
[19:...
The PlaceholderAPI server expansion. /papi ecloud download server.
Thanks for your help guys now it works without any exceptions :)
Have a nice evening.
Currently each string is parsed to apply placeholders on every call. A possible add-on could be pre-registerable strings which are parsed once and can be reused multiple times to append the placeholder values.
There should be a different, more distinct placeholder pattern to use in PlaceholderAPI.
The %placeholder% format is just flawed, may clash with plugins that already use such a format for internal placeholders, looks ugly IMO and also is harder to use when you would like to allow nested placeholders.
One suggestion that was given is to use ${placeholder_value}, as it is commonly used on places like terminal/command line stuff.
It would also allow a (hopefully) more easy Pattern to ...
adds an entry for MineResetLite
Plugin Bug
Hi, I have the latest version of PlaceholderAPI and Featherboard as a plugin on my server. I run my PaperSpigot 1.17 server and versions 1.16 and below don't see placeholders.
Show version 1.16...
There is very little in this issue. I presume you're using ViaBackwards? As you did not correctly insert the link to your /papi dump. This is most likely an issue with Featherboard, as PlaceholderAPI does not display placeholders to people.
Not a PlaceholderAPI issue.
Not a PlaceholderAPI issue. The statistics expansion just calls directly from the player data, and I have no idea what the Pyrofishpro expansion is, but it is an issue with the expansion if it does not work as expected.
Stale issue. No response from Author.
Submit a PR if you want additions to the wiki.
Hello @Shhishsh,
Your issue unfortunately lacks certain information that we require in order to help you with your issue.
Please make sure you provide the following information:
The easiest way to provide those information is through the /papi dumb command which posts the required information to https://paste.helpch.at and gives a URL to share.
*This is a...
3bc6ad0 Also update label-commenter-config - Andre601
1388a52 fix(replacer): Stop lowercasing replacements - Starmism
This commit changes two lines but fixes the replacement of cased
placeholders with non-cased ones that was accidentally happening.
This was partially fixed in a few previous commits, but not fully as
it was still replacing failed placeholder matches.
Closes #666...
Build: 151
Status: failure
Changes:
bb1498 Update label-commenter-config.yml - noreply1388a5 fix(replacer): Stop lowercasing replacements - iamstarmismArtifacts:
Build: 152
Status: success
Changes:
350a2b Remove testCharsReplacerHandlesEscapedHex() - 11576465+Andre601Artifacts:
Plugin Bug
Does not load placeholders
upload placholder
upload placholder
/papi dump Outputhttps://paste.helpch.at/rotuyesuqe
Can you please give more information?
The only thing I can see is an exception caused by a timeout, which is either caused by the cloud not responding (possible hiccup) or by your hosting solution acting up
Hello @Niklikq,
Your issue unfortunately lacks certain information that we require in order to help you with your issue.
Please make sure you provide the following information:
The easiest way to provide those information is through the /papi dump command which posts the required information to https://...
The author uses FalixNodes as hosting provider and at this moment they block PAPI's connections to the API due to their limited list of allowed IPs for external connections.
Updates the SkinsRestorer placeholders to the latest ones.
See https://api.extendedclip.com/expansions/skinsrestorer/
If no one has anything to add to this, I'll be merging in the next few days. Andre is right imo. The .5 there is probably from a time when the placeholder was returning an integer instead of the exact coord(double/float) and since most people wanted the center of the block they appended .5. Location#getX returns a double tho so the exact coords of the /sethome is returned now.
We should probably add the %vault_eco_top_rank% equivalent before merging this.
%essentials_baltop_rank%.
noticed the stuff for essentials at doesn't have anything for getting the players country?
Even though essentials is one of the few plugins that has the GEO plugin for getting that info, none of it is exposed for playerholder api... which is a disappointment.
ie UK/ shortened, and country long name
Could it be added thanks
9ed6801 Added the %essentials_baltop_rank% placeholder - BlitzOffline
Fixed with commit 9ed6801cb532b6c472bf8d71de9351d8bf9d8633.
Fixed how one of string placeholders work. In random string placeholder strings are separated by commas not underscores.
Fixed how one of string placeholders work. In random string placeholder strings are separated by commas not underscores.
Closes N/A