#placeholder-api
150650 messages · Page 52 of 151
hello
Hello, could you please tell me if there is placeholders for sheep sheared?
I don't think there is I'm afraid. All of them should be listed here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Statistic.html
and I can't find anything sheep related
Yes me too..
var min = 1;
var max = 25;
function example() {
if (args.length == 2) {
min = args[0];
max = args[1];
}
var random = Math.random() * (max - min);
random += min;
return Math.floor(random);
}
example();
So I am using the new JSExpansion and am testing with one of the example scripts on the github wiki. However, it seems as if min and max are never being effected by the args
Whatever numbers I input as min and max it always outputs a number between 1 and 25
how do you use the placeholder? @safe gazelle ?
/jsexpansion parse me %javascript_example_5,1000%
sorry to ping but meant to reply on previous message
working on testing this myself rn
will take a bit
yup I can confirm this does not work. Either it was named from args or something is broken. I've pinged the person that works on it and will wait for an answer
Brill thank you
Error reloading placeholderapi
https://prnt.sc/16cpz4j
placeholder for what?
Javascript doesn't work anymore on 1.17 😕
[22:45:00] [Server thread/INFO]: [PlaceholderAPI] Successfully registered expansion: javascript [22:45:00] [Server thread/WARN]: [PAPI] [Javascript-Expansion] ScriptEngine type for javascript placeholder exp_points isn't initialized! Defaulting to global [22:45:00] [Server thread/WARN]: [PAPI] [Javascript-Expansion] Failed to set ScriptEngine for javascript placeholder: exp_points
yeah. there's a new expansion in #852317810394267708 but its not fully working yet
that makes sense. bcz there those warnings were removed I'm pretty sure
and I just tested it. I Know its not fully working yet but it at least loads xD
I mean what placeholder? %statistic_time_played% ?
you can use a plugin like LeaderHeads or ajLeaderboards to make leaderboards from placeholders
I want the placeholders
I can make make the leaderboard
With holograls
Or menu
I am asking is there a placeholder for the top on block break mob killed like that stuff
not really I'm afraid.
no. you didn't understand me.
you need those plugins
to create the top placeholders
yeah they do
they create top placeholders
ugh you can use %statistic_time_played% for that tho
And i need to find the placeholder for thing i want
the statistic expansion
has all of that info
u should probably read the wiki. easier to see xD
Hello, it seems like this is no longer a expansion? https://gyazo.com/07de501e140fbc7c04a9ec25fa5f993c
Yeah, it's been discontinued
Those placeholders have been moved to the Player and Server expansions
oh
and statistic expansion
the %statistic_time_played% placeholder returns the time played
oh is that instead?
well you could use that yeah
ah I see. xD
Is there a way just to add days to it instead of hours, minutes, and seconds?
oh %statistic_time_played% %statistic_time_played:seconds% %statistic_time_played:minutes% %statistic_time_played:hours% %statistic_time_played:days%
so last one for days
oh
That strange it still counts the other ones.
oh wait
Got it! 😄
oh how about for the current world?
that's not possible
minecraft records the statistics from a server all in the same place
ohh
%player_world%
wdym?
So like
Let say if I don't want to show a current world name and want to only allow players to see certain world instead?
so if they're in worldA for example or in worldB it would show worldZ buti f they're in the worldC it would show worldC?
Like let say if they are in hub world but I don't want that to show in scoreboard. But if they were in like overworld then i want that to show up in scoreboard.
So like allowing players to only see certain world they are in on the scoreboard if that makes sense?
If is not possible then is all good, just wondering.
you can probably do it with JavaSCript expansion
oh
you can learn more about it here ^^ all you need is some basic javascript understanding
ah I see, ty!
There is no time to wait! Ask your question @frozen chasm!
I'm getting this error:
[PAPI] [Javascript-Expansion] Failed to set ScriptEngine for javascript placeholder
I'm using paper 1.16.5 + java 16
javascript expansion is broken in java 15+
you need to use the one from #852317810394267708. but.. that one is not working 100% either
a new one will be published there soon (I think)
It's working if you don't try to pass args into it 🙂
well I Didn't say its not working. just not 100% working
Yeah I know.
Ok, so... Can I use that version with java 1.16? or?
Yes!
And make sure you use the 1.16 versions of Server and Player expansions
Hmm
1.16?
what you mean?
ye?
dw imJouU. you're fine. all you need is the javascript expansion xd
he's probably tired lmao
he's on server version Paper 1.16
yeah and?
the current live versions of the Player and Server expansions are the 1.17 ones
ok and?
or are they backwards compatible
they work just as fine on 1.8-1.16
oh okay sick
they just add 1.17 support
ahhh that makes sense
they're not rewritten or anything afaik
hei
Will this work :'{medium}%parkour_topten_bar_1%{medium}&a.%parkour_leaderboard_cake_1_milliseconds%' Even tho the {medium} has a character after it before the placeholder?
it should work yeah
🐱
@safe gazelle You around?
Can you do me a favor and tell me if this fixes the arg issue?
The error just says whatever channel it tried to register was already registered.
¯\_(ツ)_/¯
The original dev of RedisBungee stopped working on the project so we stopped working on the expansion.
🧇

Work?
Oh
?
ban
I'll test now
hello, is placeholder api working 1.17?
Any luck?
i cant use % in AsyncPlayerChatEvent
String format = ChatColor.translateAlternateColorCodes('&', "%tab_tabprefix%" + p.getDisplayName() + " &8&l»&f " + message);
e.setFormat(PlaceholderAPI.setPlaceholders(p, format));
if i do this in my plugin
everytime i say "%" ingame it error
CC: @thorn thunder
May I get my expansion verified? :D
https://api.extendedclip.com/expansions/nestedplaceholders/
the thing is, setFOrmat requires a formatted string or whatever its called.
CC?
Means carbon copy.
Ouh, I speak Spanish, what does that mean 😅
When you send an email to someone, you can carbon copy them to make sure they also get the message.
Yugi is the one working on the expansion so I CCed him to make sure he got the message too.
And ... regarding my problem, it is a mistake of mine or of the plugin
It's something Yugi needs to look at since we haven't gotten that error before.
Is PlaceholderAPI compatible with 1.17?
check #852317810394267708
ok
Parameters:
format - String.format(String, Object...) compatible format string```
You can see more about String#format here: https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html#format(java.lang.String,java.lang.Object...)
@cobalt pollen you can use parseother for checking items of other players
feel free to ping me haha i didn't see this
but yeah it's working
[11:12:23 WARN]: [PAPI] [Javascript-Expansion] Failed to set ScriptEngine for javascript placeholder: playerlocation
[11:12:23 INFO]: [PAPI] [Javascript-Expansion] 0 script loaded!
[11:12:23 INFO]: [PAPI] [Javascript-Expansion] Java version: 15.0.2
What does this mean. And how do i fix it?
this means that java removed the nashorn engine from java 15+ and you need to use the javascript expansion from #852317810394267708
Hello! I have one question if someone does not mind helping me with it 🙂
If all goes well, you should be able to just replace this jar with the current existing one in the expansions directory.
Does this mean that I can use the 1.16.5 version release on Paper 1.17 and just drop the test file in as an expansion to run PAPI in 1.17?
how to throw a photo?
1.16.5 version of what?
put a number in there
from 1 to 64
that is the amount of items that will show in the gui
if you don't want to set it, just delete that line
it will set to the default 1
I can't figure out how to make it see how much experience a person has and execute the command.
explain exactly what you're trying to do
the player has 25 experience and to get the item
levels? or just points?
levels
update: true
hide_attributes: true
lore:
- ''
- '&7Cooldown: &f3 Days'
- '&7Left Click to Redeem'
left_click_requirement:
requirements:
exp:
type: has exp
amount: 25
level: true
left_click_commands:
- '[message]'
- '[close]'```
what version of deluxemenus do you have?
I guess what I mean is:
DeluxeMenus-1.13.3-Release
ah yeah. you'll have to update to the development builds. the has exp requirement was added just a couple weeks ago.
you can get it from here 2006lev ^^^
There is a PAPI release for 1.17 but it appears that it is just an expansion. Looks like any other expansion but the plugin itself does not appear to be written for 1.17. My question is can I use that 1.17 expansion on a build designed for 1.16?
Or is that the actual Plugin release?
I downloaded it today from spigotmc
okay thank you
The PlaceholderAPI from #852317810394267708 is a plugin. it is not an expansion. and from what I've seen it works
and yes
you can use the plugin from #852317810394267708 on 1.16
or lower
Thanks for your help Blitz!
oh yeah. deluxemenus will drop support for java 8. It will require java 11 from now on
at least
you'll need to update java
I am using java 16. Will it not work with 16?
23.06 12:14:51 [Server] INFO org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml```
Yeah i thought so. But..
this
And?
He said its not an expansion
ohh I thought you were talking about the plugin
not the javascript expansion
(about PAPI)
Ahh okay I gotcha xD
that's my bad
how to make to transfer bungeecord to another server
Looks like that has to do with the adapter cache holding released objects, Ill have a look
why does /papi parse Zax71 hi %playername% ! return hi %playername% ! not hi Zax71 !
yup
well then... if i use the Viaversion thing /papi parse Zax71 %player_version% (after install and reload) i get %player_version% not 1.16.5

so- i am using BossShopPro and a combination of DeluxeTags placeholders from papi and a javascript extension i made and am having no success with %deluxetags_tag_{javascript_snip_%shopitemname%,6,back}% other instances I have within the same shop work where the placeholders are%deluxetags_tag_%shopitemname%% so was wondering if anyone had any ideas on whether i was using the placeholder nesting incorrectly
well deluxetags does not support nested placeholders at all I'm pretty sure
but another thing is
nested placeeholders are usually {]
oh wait
%deluxetags_tag_%shopitemname%% works/
ugh yeah what you're trying to do is not really the best idea x
if %deluxetags_tag_%shopitemname%% works then I'd recommend you do everything in the javascript placeholder
so %javascript_snip_%shopitemname%,6,back% and this would return %deluxetags_tag_....%
so it would return the whole thing
not just the name
%deluxetags_tag_%shopitemname%%
probably works because it's BSP's placeholder which is parsed Before PAPI ones
which means that when it parses the deluxetag placeholder, %showitemname% would have already been translate into the correct name
yeah i figured that was the case
which also means that DeluxeTags doesn't support nested PAPI placeholders
i thought it might have been a bit over the top haha
but yeah, that would work
^^^
ahhh so how would i do this though?
what do you return inside the javascript? just add %deluxetags_tag_...% to it
where ... is what you were returning before
why wouldn't you be able to?
thank you so much haha
i'm not really sure haha
i didn't think about it in all honesty
actually
you could use %nested_deluxetags_tag_{javascript_snip_%shopitemname%,6,back}%
I guess that might work. but at this point I Don't see the reason
meow
i'll give that a go as it fits better to my use cases haha
how?
(btw you have to download the expansion manually since it isn't verified ;-;)
well you do you xd
because i need the split for multiple different plugins not just for deluxe tags
yeah but using the same one for multiple different situations would be more ideal as it would just be copy and pasting the same code but just adding a different placeholder around the returned output
I added a PlaceholdersAPI extention for Towny it says 2 placeholders hooks registered but nothing shows in ecloud download
This is what I downloaded https://api.extendedclip.com/expansions/towny/
/papi list ?
can you send a screen of the console on papi reload?
I cant paste images here?
this is all it shows anyways
[INFO] .... blazenoutlaws issued server command: /papi reload
[INFO] .... [PlaceholderAPI] Placeholder expansion registration initializing...
[INFO] .... [PlaceholderAPI] Fetching available expansion information...
[INFO] .... [PlaceholderAPI] Successfully registered expansion: towny
[INFO] .... [PlaceholderAPI] Successfully registered expansion: townychat
no errors or anything?
does it appear correctly in chat if you do /papi parse me %towny_town% ?
Internal error
check console
first :D
are you using Towny or TownyAdvanced?
TownyAdvanced
well that's probably why
Caused by: java.lang.ClassNotFoundException: com.palmergames.bukkit.towny.object.TownyUniverse
which version?
That file probably doesn't exist in the new Towny
1.16.4
I meant Towny
because it's wiki says that you only need the Towny expansion for the old versions
https://github.com/TownyAdvanced/Towny/wiki/Placeholders
ah yup, no expansion
so how am I supposed to do placeholders
I saw other servers with the same plugin using them
what's your Towny version?
I dont remember what version I got it was like 1 month ago
/ver towny
0.97.0.0
Wait @junior musk did you update nested placeholders for me lmao
then you need to use the placeholders on that page https://github.com/TownyAdvanced/Towny/wiki/Placeholders
I've posted it earlier today 😅
the old PAPI expansion?
no
I appreciate both you and blitz for the support
you can click on the arrow here
how can I create a variable that shows the amount of players with a specific permission?
you can use the PlayerList expansion for PlaceholderAPI and use the %playerlist_online,perm,yes,amount,<yourPermissionHere>% placeholder
yeah
this feels really stupid but whats the placeholder to list amount of online players
%server_online%
Recently the latest version of javascript has been consuming me too much performance, my server's tps drops considerably, and removing it solves this, the same thing did not happen to me before.
%checkitem_give_mat:bow,enchantments:power=1;punch={player_item_in_hand_level_ARROW_KNOCKBACK}%
I'm trying to use checkitem to give a power 1 bow but if they have punch 1 on there current item it gives them power 1 and punch 1. the bow I have in my hand has punch 1 yet it is not added, %player_item_in_hand_level_ARROW_KNOCKBACK% is 1, does anyone know why this doesn't work?
I've been testing for like the past 30 minutes lol
Hello friends, I have a plugin in which I have to put% superguilds_guild%, but it uses PlaceholderAPI, although my server does not detect the use of it, I am using ezchat and I am putting it like this: - '& f➣ & 7Clan: & e % superguilds_guild% '
What do you recommend me to do so that I can use it
/papi dump
Thank you very much for answering, I will try with that :), I hope you can! 🙌
please help me for some reason the store does not work, I wrote correctly https://imgur.com/gallery/zAS5mqj
hello
hi
is there a way I can show like the disk max and disk used
and ram max and ram being used right now
and CPU too
anyone?
me too
nice
idk, try ctrl + f --> disk
https://github.com/PlaceholderAPI/PlaceholderAPI/wiki/Placeholders#server
alright, thanks
Could you send us a timings report for us to have a look?
Hello how to add two variables together for example : %bungee_faction% + %bungee_faction2% = %bungee_factiontotal%
@rain basin ^^^ math expansion
.
does checkitem even support nested placeholders?
It says they are available if you use {} instead of %%
I tried so hard to get it to work lol
Yeah
oh wait...
yeah it doesn't set placeholders
for the value
just the enchanment name
Oof
@mint fable java NamespacedKey key = NamespacedKey .minecraft(PlaceholderAPI.setBracketPlaceholders(p, ench[0].toLowerCase())); enchantments.put(Enchantment.getByKey(key), Integer.valueOf(ench[1]));
you'll probably want to fix this
all you can do now SParxez is wait
for cj to fix it
yeah not really a bug
just a mistake on cj's part
unless there's actually a reason he did it like that
but I can't see what that would be
Thank you for the help tho!
👍
mistake on not parsing for the int for placeholders?
yeah. you should probably parse the bracket placeholders for the number value as well
i'll add it to the list
alr 👍
Thank you
Hello how to add two variables together for example : %bungee_faction% + %bungee_faction2% = %bungee_factiontotal%
Thx
How to remove the comma with Math expansions (placeholder)
Because %math_{bungee_bewards1}+{bungee_bedwars2}[precision:0]% don't work
it was changed
its not [precision:0] anymore
its %math_0:_{bungee_bedwars1}+{bungee_bedwars2}%
Okayy thx 😉
my placeholders arent working they're just showing the placeholders instead of the value any known fix for that
well have you downloaded the expansion for the placeholder you want to use?
hello
how i get worlds player count? exeample; in word a there are 12 online and world b 5 online, what is placeholder with 17 online?
you can add them up with the math expansion
how .-.
%math_0:_{server_online_a}+{server_online_b}%
oke thx
is there any way to show prestiges and ranks as prefix in chat?
im using UltraPrisonCore as plugin
for ranks and prestiges
yes all of them
give me an example of a placeholder that doesn't work then please
also restart the server please and send the full startup log
can you do /papi parse me %player_name% and tell me what it says?
My name
well then how does it not work?
on scoreboard or chest it doesnt show the placeholder values
ugh.
does your scoreboard plugin support PlaceholderAPI?
they don't just work everywhere, every plugin needs to implement support
yes it's scoreboard revision
and it worked perfectly just 1 week ago (i changed nothing) i started my server and they dont work anymore
so strange
can you add %player_name% to the scoreboard and see if that one works or not
well then its the scoreboard's fault. I can't tell what its wrong
but the placeholder clearly works
but also in chest gui the plachoder doesnt work
2 different plugins
and i dont changed anything not even updated any plugin
and it worked fine for months
ugh idk what to tell you man. if the placeholder works in /papi parse command it clearly works
i also reinstalled all the plugins but it still dont work
the plugin you're trying to parse it in, doesn't parse correctly
btw just so u know, according to the logs, your luckperms plugin is not working, so that might be affecting some stuff
i'll take a look at it
im not using any. im just using luckperms formatting
also there's a big error from SCoreboard Revision in there as well, tho I don't think that will really affect the plugin
is there any way to show prestiges and ranks as prefix in chat?
im using UltraPrisonCore as plugin
for ranks and prestiges
im using luckperms chat format
it's also not working with chestcommands, holographicDisplay plugins
HolographicDisplays doesn't support PlaceholderAPI tho
if you want to use placeholders in HolographicDisplay
you have to download: HolographicDIsplay, HolographicExtension and ProtocolLib
not just HolographicDisplay
yeah. so the placeholders works as I said
if they work in /papi parse they 100% work
hey, so i got a plugin called HubBasics and it has support for PAPI, i'vr tried to use the %player_name% placeholder to get the name of the player WITH the rank and it does not recognize it. help.
what do you mean by: you got the name of the player with the rank?
I'm a bit confused
@turbid tide It prints this in chat: %armor_material_helmet%
have you downloaded the Armor expansion?
i have pex installed and have set up groups with prefixes, and i want to show that prefix and the name in the plugin message
ah and %player_name% only shows the name?
it doesnt work at all
can you try and restart the server and send a startup log?
have you downloaded the player expansion? /papi ecloud download Player then /papi reload
and for the rank you need the Vault expansion
and you need the Vault plugin installed
well i have that, gonna test the commands
Yes, but I just ran papi ecloud list installed and it says Armor is green and installed
[PlaceholderAPI]: Placeholder expansion registration initializing... [PlaceholderAPI]: Successfully registered expansion: armor [PlaceholderAPI]: Successfully registered expansion: checkitem [PlaceholderAPI]: Successfully registered expansion: server
turns out it worked, but now how do i show the pex prefix as well? another placeholder?
@turbid tide After restart it is returning my diamond helmet. I'll see if it works with the npc stuff now
%vault_prefix% I believe
oh interesting. alr
thx, gonna test
👍
thanks so much @turbid tide now it works and i can use the placeholders in other plugins.
👍
@turbid tide Well it's still not working haha. Parse returns diamond helmet, but when i add %armor_material_helmet% == minecraft:diamond_helmet to the requirements it still gives the other text.
oh yeah
your check is wrong
that's the problem
bcz DIAMOND_HELMET will never be equal to minecraft:diamond_helmet
you need to do instead %armor_material_helmet% == DIAMOND_HELMET
it doesn't compare the materials, it compares the strings
Gotcha I'll try that right now
Heyyy there we go. It works! Thanks a lot for your help!
no problem 👍
any1 have a good scoreboard plugin since my scoreboard revision isn't working proprerly
you need it free or can you afford it paid?
depends how much it costs i dont wanna pay too much
well the best one out there is probably KiteBoard
can u suggest both
but its paid
but if you want to go best that's freet
free*
then probably QuickBoard
thx
👍
placeholderapi 1.17 ?
When is placeholderAPI updating to 1.17?
idk what im looking at? in #852317810394267708
read please
howdy howdy
alright so i need help with something
I am making a minecraft java plugin and i want to use placeholderapi for things such as getting a players ping
PlaceholderAPI.setPlaceholders(cmi_user_ping)
would this be right?
no not really
oh
PlaceholderAPI.setPlaceholders(Player player, String string)
so what would i do if I wanted to call the placeholder cmi_user_ping?
would string just be cmi_user_ping?
wait
actually would it be
String pingText = "&7[&6Show&7] >> %player_name% has %cmi_user_ping% ping!";
Bukkit.broadcastMessage(Utils.chat(PlaceholderAPI.setPlaceholders(CommandSender, pingText);
would this be it?
yeah
alright
i'm gonna see if that works
would i be able to do sender.getDisplayName() so that it gets the display name of the sender?
also am i asking this in the right chat?
well I don't see why you need the display name
Placeholderapi will handle that
bcz of %player_name%
oh duh
this is kinda old but for free ones you might also wanna check out TitleManager since quickboard support seems to be gone, idk if its changed
I decided for KiteBoard but thanks for the tip
np 👌
Heyo, I have kiteboard and for its animation colours I can use a hex code, I want to use a placeholder I have but it always outputs it as the actual hex code as in '#FFFFFF' , it seems to use formatting similar to HTML: <color> color=#FFFFFF </color>' , is there a way to format a hex code into a placeholder so that it is treated like a hex code in the plugin?
If your placeholder returns the hex color, cant you use <color> color=%placeholder% </color>? @formal vessel
What does this error mean and how do I update/fix it?
[10:47:08 INFO]: Successfully downloaded updates, registering new versions.
[10:47:08 ERROR]: [PlaceholderAPI] Failed to load placeholder expansion from class: com.extendedclip.papi.bungeeexpansion.BungeeCordExpansion
java.lang.reflect.InvocationTargetException: null
at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
at java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[?:?]
at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.createExpansionInstance(LocalExpansionManager.java:336) ~[?:?]
at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.register(LocalExpansionManager.java:138) ~[?:?]
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195) ~[?:?]
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177) ~[?:?]
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655) ~[?:?]
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) ~[?:?]
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) ~[?:?]
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) ~[?:?]
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) ~[?:?]
at me.clip.placeholderapi.commands.impl.cloud.CommandECloudUpdate.lambda$evaluate$4(CommandECloudUpdate.java:110) ~[?:?]
at me.clip.placeholderapi.util.Futures.lambda$null$0(Futures.java:46) ~[?:?]
at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftTask.run(CraftTask.java:100) ~[server.jar:git-Paper-745]
at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:468) ~[server.jar:git-Paper-745]
at net.minecraft.server.v1_16_R3.MinecraftServer.b(MinecraftServer.java:1427) ~[server.jar:git-Paper-745]
at net.minecraft.server.v1_16_R3.DedicatedServer.b(DedicatedServer.java:436) ~[server.jar:git-Paper-745]
at net.minecraft.server.v1_16_R3.MinecraftServer.a(MinecraftServer.java:1342) ~[server.jar:git-Paper-745]
at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1130) ~[server.jar:git-Paper-745]
at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:291) ~[server.jar:git-Paper-745]
at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: java.lang.IllegalArgumentException: This registration already exists
at org.bukkit.plugin.messaging.StandardMessenger.addToIncoming(StandardMessenger.java:94) ~[server.jar:git-Paper-745]
at org.bukkit.plugin.messaging.StandardMessenger.registerIncomingPluginChannel(StandardMessenger.java:226) ~[server.jar:git-Paper-745]
at com.extendedclip.papi.bungeeexpansion.BungeeCordExpansion.<init>(BungeeCordExpansion.java:62) ~[?:?]
... 24 more
[10:47:08 INFO]: Registered expansions:```
Try restarting
Server?
yes
oooh
try removing the bungee expansion from your folder
and then downloading it from the ecloud again
and if that doesn't work, remove it again and download it from the website yourself and put it in there
What's the website?
Failed to load due to a [NoClassDefFoundError], attempted to use net/milkbowl/vault/economy/Economy```
Also getting this error
You need vault
The message "expansion class .. is outdated" is misleading in this case
Thanks!
The placeholder still doesn't show any number and trying to update gives the same error
Even after installing the expansions from the website and doing a restart for installing vault
How do i fix this, because now the placeholder show 0 instead of the online players
I have tried this 2 times, but still no luck
can you do /papi dump and send the generated link here?
also restart your server and send over the full startup log.
Successfully posted dump: https://paste.helpch.at/siwejiyeqa
latest startup log
and to make sure I got this right, your bungee placeholder returns 0 every time?
oh. what is your current problem rn then?
It still won't update
try doing /papi ecloud download Bungee 2.0 then /papi reload
OH WAIT
@proper acorn
PAPI-Expansion-Bungee_HEbAVYe.jar
Expansion-bungee.jar```
you have 2 of them
why?
go to plugins/PlaceholderAPI/expansions
and delete them both
then do the commands
I gave above
can you do /papi dump again please?
And now have 0 players
Successfully posted dump: https://paste.helpch.at/xetaraseha
Also bungee?
I will wait 2 minutes to let the placeholder update on the bot
It now does show the players online
Thanks!
Using the Javascript expansion, how could I insert an integer into a placeholder?
var placeholder = "%uecon_balancetop_Dollar_name_" + integer + "%";
if you want to add the integer and then parse the placeholder, you have to use PlaceholderAPI.static.setPlaceholders(BukkitPlayer, "%"+"uecon_balancetop_Dollar_name_" + integer + "%")
I think you may need to report this to ChestCommands' dev
the dev no longer updates chestcommands
then idk
I got a new error:
TypeError: Cannot read property 'setPlaceholders' of undefined
Here's the full error if that helps:
[12:26:41 WARN]: Caused by: undefined:5: TypeError: Cannot read property 'setPlaceholders' of undefined
[12:26:41 WARN]: var placeholder = PlaceholderAPI.static.setPlaceholders(BukkitPlayer, "%"+"uecon_balancetop_Dollar_name_" + integer + "%");
[12:26:41 WARN]: ^
[12:26:41 WARN]: TypeError: Cannot read property 'setPlaceholders' of undefined
[12:26:41 WARN]: at isTopDollar (<anonymous>:5:43)
[12:26:41 WARN]: at <anonymous>:17:1
Not really sure what PlaceholderAPI.static is.
If I take that part out I get this:
try with PlaceholderAPI.setPlaceholders
TypeError: PlaceholderAPI.setPlaceholders is not a function
then idk
if the static one didn't work, I don't know what's the problem
it always worked for me
Well according to the wiki that should work
Getting errors with Javascript expansion (1.17)
https://mclo.gs/sKbFCmw
is PAPI usable for 1.17 already?
Mhmm
Do you have Vault on the server...?
JS Expansion still not working for me
Failed to evaluate requested script.
[22:24:08 WARN]: com.extendedclip.papi.expansion.javascript.evaluator.EvaluatorException: Failed to evaluate requested script.
[22:24:08 WARN]: at com.extendedclip.papi.expansion.javascript.evaluator.J2V8ScriptEvaluator.execute(J2V8ScriptEvaluator.java:34)
[22:24:08 WARN]: at com.extendedclip.papi.expansion.javascript.JavascriptPlaceholder.evaluate(JavascriptPlaceholder.java:121)
[22:24:08 WARN]: at com.extendedclip.papi.expansion.javascript.JavascriptExpansion.onRequest(JavascriptExpansion.java:141)
...
[22:24:08 WARN]: Caused by: java.lang.IllegalStateException: J2V8 native library not loaded (j2v8-linux-x86_64/j2v8-alpine-linux-x86_64)
[```
Yeah we saw this bug come up this morning. I know @thorn thunder is working on a fix for it but I believe he is asleep right now.
Yes I'm doing that but it doesn't actually colour the object, it adds the hex code character-for-character to the display as plain text
sorry, saw there was a mention way up and replied via the reply function automatically, I should have thought it through. Apologies.
np
download the right ones from #852317810394267708
I took the javascript and papi jars
I would post a picture but that doesn't seem allowed in this discord
You'll want to hold off on the JS one. We had some new errors come in this morning.
Hoping to have a better version out on Sunday or sooner.
ight ight
So what's the problem with the other placeholders then?
But everything else, from deluxetags, to advancedafk, to jobs, and beyond
all of them just display the placeholder name and nothing else
example in #showcase
anyways, do a /papi dump and send it here
Still bungee_total show 0 players when there are players online
try doing /papi parse me %<one of the not working placeholders%
and put one of the not working placeholders there obviously
My bungee placeholder shows 0 instead of the actual players online
I booted without playtimes and still having that issue
oh
it's stealing every placeholder and erroring
manually removed their jars from the expansions folders and the issue still persists
new error?
[19:30:21 INFO]: Matt1122 issued server command: /pl
[19:30:48 INFO]: Matt1122 issued server command: /papi parse me %deluxetags_tag%%
nope it comes out clean
and yet none of them show properly
why do you have two percent signes
[19:31:45 INFO]: Matt1122 issued server command: /papi parse me %deluxetags_tag%
[19:32:13 INFO]: Matt1122 issued server command: /papi parse me %deluxetags_tag%
oops autocomplete
/papi dump again
hmm okay
this is a very interesting issue
I would try making a fresh Purpur instance with no plugins, then just adding papi and an expansion to see if it works
it might be Purpur
I can boot with paper
yeah try that
then if it still doesn't work, start a fresh server and add plugins one by one until it breaks
u need help
oof dude
hey each 1 of those 140 is special
Don't blame purpur ;-; we need to brainwash convince more people
I might have just found them
Okay no
I think this is bad
It's not any specific plugin, but whenever the plugin list has more than 99 entries it gets borked
If anyone has a test server with paper 1.17 and a chunky plugin list check if papi is working correctly 😩
I saw someone make a weird report the other day in Paper about issues with 100 plugins.
Easy fix, don't use so many plugins.
that was me
e_e
A lot of servers see themselves running 100+ setups
Specially when it comes to smps
Thought the whole point of SMP was to be as close to Vanilla as possible.
Not a sizeable minority but an important one
Whelp you'll just have to wait and see what Paper says.
Survival Multiplayer =/= vanilla
Yeah ig so
this is gonna be pain
Smh
How is a smp more special that a public server?
wut
Why would you have 100+ plugins especially on a smp
Nothing related to papi, just curious
We like to give neat spin to most things
Improving everything your standard server has
A good 40% of plugins are just dependencies tho
Lile our mythic setup requites 5 plugins including mm
Goldencrates requires 1 jar
Jobs and bottled xp now use 1 common library
Etc etc
hey @austere hawk does spigot have the library thing too for your plugin.yml
cause that could be really cool
it does yeah
only for Maven Central tho?
imagine
like slimjar, but the server does it for you and can share dependencies
now that's nice
eh
i wouldn't really rely on that
i'm not sure how well it handles things like multiple versions and stuff like that
if it does at all lol
i mean if it's anything like the bungeecord one, it'll put them in separate version folders and relocate them for you
Exposing classes from one classloader onto others can be really weird
Especially if the package names dont match
it relocates it?
i don't think it does
also why are we in #placeholder-api lmao
Then you get behaviour thats not even present in the ClassLoader source
i mean I presume so, the classpath changes
are you sure about the relocation?
Its loaded into the PluginClassLoader of your plugin star
Oh it does that?
uh
yeah i mean that's how maven repos work
Try printing the class
I'm fairly certain it handles no relocation whatsoever
then how does it do multiple versions?
Do you see the jar?
lol
Its loaded into different classloaders
Open up the jar
man I need to read up on how classloaders work
or how java works
or how anything works
oh yea no relocation
Would you like to be a proud slimjar contributor then?
how could i contribute if I don't even know how a classloader works
Yea?
this library loader thing, it loads the jar for every plugin that uses it, right?
You learn while trying 🤷
Yea I think, thats what I read from one of the issues
Each plugin has a separate PluginClassLoader
that sounds memory consuming lmao
Probably not much
and probably worth it for the effort it saves
You get the same effect as what happens when the plugins relocate them
hm fair
i think there's some required reading before you even get there
You can ask most issues if you face anything here
Also, we should probably move to #dev-general
oh yea
Can anyone tell me whats wrong with my javascript
var answer;
if('%supervanish_isvanished%' == "No") {
answer = "&7"
} else {
answer = "&7&oVanished"
}
not sure why it doesnt return anything when i use /papi bcparse me %javascript_vanish%
you have to define a function then call it
function vanish() {
if('%supervanish_isvanished%' == "No") {
return "&7"
} else {
return "&7&oVanished"
}
}
vanish();
ok gotcha, must of been looking at old code or somthing
ok thanks
Just make sure the last statement contains what you want to return
havent quite had time to learn it yet so ive just been trying to get by with other peoples examples. guess ill have to learn it sooner or later anyway, thanks!
var answer;
if('%supervanish_isvanished%' == "No") {
answer = "&7"
} else {
answer = "&7&oVanished"
}
answer
This should work as well
oh that makes sense
so wait why are all the examples functions yugi
function hp() {
return Math.round(parseInt('%player_health%') * 100) / 100;
}
hp();```
surely that could be a one-liner
didnt seem to work
trying stars
Not sure
ok might be a me issue because neither are working
lol
Are you sure you registered it in the config?
what java version
16
nashorn doesn't exist anymore
Are you on a version from #852317810394267708 ?
yea you got this one? #852317810394267708 message
no latest jenkins dev build
featherboard needed it
"Changed the PAPI dependency from 2.10.9 to 2.10.10-DEV-123. Note that 2.10.10 is currently only available on the HelpChat discord under the channel #852317810394267708 or https://ci.extendedclip.com/job/PlaceholderAPI/"
should i grab the one from the discord?
Sure, but I dont recommend using it on your production server yet.
There another update coming in soon that should be much more stable
he's talking about the PAPI version in that one
ah
we're talking about the JS expansion version
Then it should be fine, again, I was talking about js-expansion version
i just did /papi ecloud download javascript
yeah nope
ops
Its not on ecloud yet
you need the one from #852317810394267708
as nashorn no longer exists in new java land
ahh
honestly can we just get a kts expansion
do i need to delete the old javascript files too?
We already have one
we do?!?
Sx made it when he was here
why do we still do JS expansion
kotlin is surely a lot better and easier and more type safe than js in like every way
nice nice
shouldve been paying attention lol
hmmm
but imagine if we were a primary reason to use kts
we could totally set the example
🤷
plus there would probably be way less problems than what you're having right now with the JS expansion
And then everyone using the js-expansion would have to rewrite all of them to kts
for free!
Still not ideal for the 3,000 servers using it.
I mean we support both for a bit
deprecation, not removal
send a few messages, give em a few years
awww no sed
Oh, speaking of which, seems the kotlin expansion needs to be updated too, if someone uses that ig
damn why you gotta say it like that 😦
we should defo encourage it more at least for new projects
mmk mmk
That must've never been deployed. There are 0 servers using that.
oh rip
wow what
well maybe I'll be the first
because kotlin is a significantly better language than javascript
ayy
We can probably integrate it with the js-expansion and rename it to script-expansion tbh
Hopefully better adoption then
yes!
yes!
instead of engine choice, language choice
then the transition becomes much easier
I think we need a working js expansion to begin with.
I mean they're getting there
Almost done
Haha. I'll be around sometime this weekend to test stuff.
Or distribute jars to test that is
Alrighty, awesome
yea I'd love to help test
lit
more fun than talking about my dreams for kotlin 🥲
🥲
I gave you perms to upload jars in this channel Yugi so you can have people test if I'm not around.
oh alrighty, thanks glare
What is wrong with my bungee expansion?
[07:19:08 INFO]: [PlaceholderAPI] Placeholder expansion registration initializing...
[07:19:08 INFO]: [PlaceholderAPI] Fetching available expansion information...
[07:19:08 INFO]: [PlaceholderAPI] Successfully registered expansion: bungee
[07:19:08 INFO]: [PlaceholderAPI] Successfully registered expansion: luckperms
[07:19:08 INFO]: [PlaceholderAPI] Successfully registered expansion: server
[07:19:08 INFO]: [PlaceholderAPI] Successfully registered expansion: player
[07:19:08 INFO]: [PlaceholderAPI] Successfully registered expansion: vault
[07:19:08 INFO]: 5 placeholder hooks successfully registered!
Papi list
[07:19:11 INFO]: A total of 8 placeholder hook(s) are active:
bungee, chatcontrolred, discordsrv, luckperms, player, server, tab, vault
Papi info bungee_total
[07:19:37 INFO]: There is no expansion loaded with the identifier: bungee_total ```
you'd do /papi info bungee
[07:21:54 INFO]: Placeholder expansion info for: bungee
Status: Registered
Author: clip
Version: 1.0.1
But the actual bungee_total placeholder doesn’t work
/papi info is not how you test placeholders
/papi parse me %bungee_total%
that's how you'd test the placeholder
which version are you on
1.16
hmm
Paper 1.16 to be exact
hmm the check interval is 30
and I'm not sure if that's seconds or minutes
but maybe try it now?
I will check
Check interval is 30
It still returned 0 when there are players online
The other bot that uses %online% does show the correct players online on this server
Do you know who does?
do you also have the bungee expansion on the other server?
if not, try downloading it