#placeholder-api
1 messages · Page 92 of 1
does it work now ?
It's working now, one issue
Deluxechat like
The chat color and bracket works
But the prefix doesnt?
🤔
it's the wrong part of the config 😂 😂 😂
you're in the examples in the config
there's the # before to say that it's a config comment
the real config is below
its still wrong tho 😂
🤔
any errors in console on /deluxechat reload ?
Changed the suffix and it still didnt update
No.
Would supercore be interfering with this?
is it another chat plugin ?
k I just saw the plugin's page and it doesn't seem to change the chat format
My only guess would be NTE
because now when I type /nte nothing appears in chat nor in console
like error and message wise
could you send your plugin list ?
because now when I type /nte nothing appears in chat nor in console
K I know why NTE doesn't work x)
they haven't updated to LuckPerms v5
I think
because someone said the same thing in the comments
Warning: Nashorn engine is planned to be removed from a future JDK release @final shadow rip javascript extension
@static dragon
Please respect the rules, be patient and don't ping staff members!
barey dum
Big oof
Hi @turbid tide, are you here?
yeah
Did you know where can be a mistake?
https://paste.helpch.at/lawadahebi.cs
I am in that job and it's showing still menu join to that job
currently I am in a game of Cs:Go and will help after the fame if no one else here figures it out
Okay, thanks
@ember crown first of all: output: 'true'
Okay, I will try it
No, still doesn't work
I will send you that 2 menus
@turbid tide, https://paste.helpch.at/bavapoluxo.cs
@ember crown what does it return when you do:
/papi parse me %jobsr_user_isin_Dřevorubec%
It writes "True"
Rename a job to something which doesn't use special characters and try with that
When I want to restart my server it keeps hanging on > [17:21:10] [Server thread/INFO]: [PlaceholderAPI] Disabling PlaceholderAPI v2.10.4 Only when I kill it will stop but that wont save the rest of the files. Checked the logs and there is no errors shown
/papi reload```
i already did that but am making a shop and it doesnt take money from the player they just get it for free
and did you add a command to take the money from the player ?
yes
can you send your menu ?
display_name: '&e&nPig&f | Spawner' lore: - ' ' - "&8 ▪ &7Buy Price:&r &e75,000 &a⛁" - ' ' - "&6&l* &eLeft click to buy" left_click_commands: - '[console] us givespawner %player_name% pig 1' - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP' - '[console] eco take %player_name% 74999' - '[refresh]' right_click_commands: - '[console] us givespawner %player_name% pig 1' - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP' - '[console] eco take %player_name% 74999' - '[refresh]'
dpes ot says something in console when clicking the item ?
lemme see
and can you try to do /papi parse me %player_name% ?
does the other commands work ?
does it work if you do /eco take <player> 74999 by yourself ?
yes
that's weird
and it doesn't take the money for both clicks?
yes
but gives the spawner?
do you have a click requirement to check that the player has the money ?
if you have the amount of money to buy it you can buy it but if it doesnt you cant but you get it for free
and it doent take your money
right_click_requirement:
requirements:
money:
type: money
amount: 74999
deny_commands:
- "[message] &cyou don't have enough money !"
left_click_requirement:
requirements:
money:
type: money
amount: 74999
deny_commands:
- "[message] &cyou don't have enough money !"
try to add this to your item
doesnt work
right_click_requirement:
requirements:
money:
type: has money
amount: 74999
deny_commands:
- "[message] &cyou don't have enough money !"
left_click_requirement:
requirements:
money:
type: has money
amount: 74999
deny_commands:
- "[message] &cyou don't have enough money !"```
try this
left_click_commands: - '[console] us givespawner %player_name% pig 1' - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP' - '[console] eco take %player_name% 74999' - '[refresh]' requirements: money: type: has money amount: 74999 deny_commands: - "[message] &cyou don't have enough money !" right_click_commands: - '[console] us givespawner %player_name% pig 1' - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP' - '[console] eco take %player_name% 74999' - '[refresh]' requirements: money: type: has money amount: 74999 deny_commands: - "[message] &cyou don't have enough money !"
this is what i have
and its not working
well because you didn't paste what I gave you and you modified it ...
the requirements don't work if you add them in the click_commands sections ...
1 sec
still not
guys does papi support if else logic
javascript does ye
wait doesn't papi's math placeholders include if logic?
don't think so
but you can do your own placeholders using javascript
@white hinge can you give the entire menu?
=paste
Please use a paste service to share configs, errors, code and long logs.
• HelpChat Paste
It doesn't no
@white hinge you can't have 2 items with the same name
hm
'villager': you have 2 of those
and 2 for zombie_pigman
pig_zombie*
try that menu
wait, so if i do %javascript_llll%, itll use whatever the placeholder translates to in javascript code?
i don't rly understand your question
you can write your own placeholder in javascript
that is what I am saying
so you have to write it
so if i replace llll with an argument in javascript, will it use thata argument as if this is javascript code
or do i have to create the placeholder
and simply refer to it
You have to create the code
you have to create the placeholder and %javascript_placeholdername% will only call the placeholder
ah ok thanks for clearing thata up
when you try to buy the spawner it doesnt take the money
eco take %player_name% doesnt work
why
and it doesn't even try to execute the command in console when you click the item?
click the item and check the console and see if it at least tries
also do /papi parse me %player_name% and see what that returns
it says my name
so im making a placeholder in javascript, but i only know java so im doing it very roughly
how do i use values that are called with the placeholder? Can I just use args[0] or something?
Check the wiki https://github.com/PlaceholderAPI/Javascript-Expansion/wiki, it will help you with all of these 😃
aight thanks idk how i couldnt find this
👍
Is there anyway to put a placeholder inside of a placeholder... (EX. %rankprefixof%player%%)
Depends if that placeholder support placeholders inside it.
If it did, how would I format it?
Usually its with %placeholder_example_{placeholder}%.
Your example can be done with ParseOther Expansion, https://api.extendedclip.com/expansions/parseother/
Thank You!
@pseudo mist Open source the expansion so it can be looked at.
What expansion? Advancements or RogueParkour?
RogueParkour
GH preferable
anyhow
i need some help, i contacted the dev of deluxehubs about this problem, he said to join the papi discord
Lets watch our language @sterile imp
sorry dad
Could anyone potentionally help me? Thats my error log up here, i ran all of the /papi ecloud download commands, and i have the latest version of everything.
I'm clueless at this point.
Please use a paste service to share configs, errors, code and long logs.
• HelpChat Paste
(easier to read since dark theme)
https://paste.helpch.at/fulaherina.cs i think thats the link
dont know how to save it..
ctrl+s
did so.
I keep getting "No cloud expansions are available at this time."
?ecloudblock
Should your host not allow connections to the PlaceholderAPI eCloud, you can manually download expansion from https://placeholderapi.com/ecloud and place them in your /plugins/PlaceholderAPI/expansions/ folder.
I mean, it was working yesterday
which is why im confused, did they just now block it, for both of us, on 2 separate server hosts?
Can anyone help a brother out?
...
am i correct in saying that when using a javascript placeholder, the format would be %javascript_nameoffile_arg1,arg2,arg3%?
so like am making a shop and when you buy stuff it doesnt take the money it just gives you it for free so you can just spam it and iit will not cost anything .
- '[console] eco take %player_name% 49999'
can you send your menu ?
try using just %player
if the players do have enough money, is it taken ?
even if he have enough ?
yes
for what item ?
like spawners
I mean, wich one did you try ?
pig
villager
cow
sheep
chicken
skeleton
iron_golem
creeper
zombie
spider
blaze
enderman
magma cube
zombie pigman
ghast
thats it
I can't find the problem, it all seems to be good
what's your server verdion and your DM version ?
%player% isn't a valid placeholder, it's %player_name%
hm
yes
How would you output commands through a javascript placeholder with papi through something like MyCommand?
This is the code, pretty simple, basically only lets the player purchase something if their debt will not exceed -50k:
var playerbal = 0;
var minbal = -49950;
var amount = 1;
function ifdebt() {
if (args.length==3) {
playerbal = args[0];
minbal = args[1];
amount = args[2];
}
playerbal -= (amount*50);
if(playerbal>=minbal) {
//output a series of commands
}
}
ifdebt();
@winged breach you want to make the when the user uses that command check the placeholder and then continue doing things?
If I have not misunderstood you
Into mycommand have a $Script$%if%. If you know programming, use system boolean, you can made javascript placeholder return 1 or 0. 1 is true and 0 false. I made one example
checkmoney:
command: /checkmoney
type: RUN_CONSOLE
executefor: SENDER
runcmd:
- "$delay$"
- "$Script$%if%%javascript_checkmoney%==1"
//commands if player have less -50k
- "$Script$%else%"
//commands if player more -50k
permission-required: false
delaytimer: 1
Javascript
var playerbal = 0;
var minbal = -49950;
var amount = 1;
function ifdebt() {
if (args.length==3) {
playerbal = args[0];
minbal = args[1];
amount = args[2];
}
playerbal -= (amount*50);
if(playerbal>=minbal) {
return 1;
}else{
return 0;
}
}
ifdebt();
Ah I didn't know you could do that, thanks for the help
ok now i have another issue
one of the variables i need is %essentials_worth% which is the player's essentialsx balance, and i think it thinks i'm calling %javascript_if_% instead
so it looks like this:
$Script$%if%%javascript_if_%essentials_worth%,-49950,$arg1%==1
the three variables are %essentials_worth%, -49950, and $arg1 so i think the first % in essentials is ending the if thing early
use {}
Will someone help me with voteparty? placeholders
Since its not working with featherboar
instead of %%
so {essentials_worth}?
yes
aight ill try that thank you
damn well maybe it works but the code is still not working :(
im guessing its the same as java
parseInt(-49950)
The args into placeholder pass how string. If you like use operators (-,+,*,/......) you need parse to integer (parseInt) into code when you call "args[0]...." if the var is number
ah so i do parseint inside the javascript code, not the command
ok i dont understand why the fuck this doesnt work
var playerbal = 0;
var minbal = -49950;
var amount = 1;
function ifdebt() {
if (args.length==3) {
playerbal = parseInt(args[0]);
minbal = parseInt(args[1]);
amount = parseInt(args[2]);
}
playerbal -= (amount*50);
if(playerbal>=minbal) {
return 1;
} else {
return 0;
}
}
ifdebt();
MyCommand:
- '$Script$%if%%javascript_if_{essentials_worth},-49950,$arg1%==1'
parse it in chat
what do you mean?
/papi parse me %javascript_if_{essentials_worth},-49950,$arg1% replace $arg1 with a number though
yes but $arg1 is a number the player enters
for the parse command I mean
ah
anyone know why this doesn't work?
var admin = "%otherplayer_hasperm_{%player_name%}_perm_displayname.Admin%";
function prefixcolor() {
return admin;
}
prefixcolor();
it just returns saying an internal error occurred when i do /papi parse me %javascript_prefix%
i believe it should be {player_name}
I changed it to {player_name} and now it doesn't error out just it returns PNF, player not found
This command isn't working, and I'm not sure why. It's supposed to give x amount of power only if the resulting debt is less than -50k.
landconfirm:
command: /landconfirm
type: RUN_CONSOLE
runcmd:
- '$Script$%if%%math_{essentials_worth}-$arg1%>=-50000'
- '/f powerboost faction add %factions_faction% $arg1'
- '/broadcast $player has bought [$arg1] land power!'
- '/economy take $player %math_$arg1*50%'
- '$Script$%else%'
- '/whisper $player You dont have enough money! You may not go beyond $50,000 in debt!'
error-message: 'Purchases land power. Usage: /landconfirm <amount>'
permission-required: false
register: true
at this point ive tried javascript placeholders, if scripts, and idk what else to do
How do you parse a variable in javascript where the string is dynamically generated?
Like for Jobs Reloaded, there's a variable %jobsr_user_isin_1%, and 1 is set to a variable like "i". I tried "%jobsr_user_isin_" + i + "%" but that does not work
If anyone knows a way, please @ me so I don't forget to look
There's an example on the wiki iirc
How come I keep getting No cloud expansions are available at this time, no matter if I reload the plugin?
I have to restart my server for it to work, and then it stops again after like one download
?ecloudblock
Should your host not allow connections to the PlaceholderAPI eCloud, you can manually download expansion from https://placeholderapi.com/ecloud and place them in your /plugins/PlaceholderAPI/expansions/ folder.
Wonderful, thank you so much
Anyone knows why args.length always returns 1 unless you don't pass any arguments with /papi parse? I'm trying to get something working in javascript with 2 args
%javascript_placeholder_arg0,arg1,arg2,etc% and args.length for this will return 4
is there a placeholder to check if a player is on a bungee server? (ping when answering)
or do i have to make a custom javascript placeholder that checks a placeholder in a different server using serverselectorx nvm
Ah thx @bronze bison
@coarse sable
Please respect the rules, be patient and don't ping staff members!
That hurts Barry
is there a placeholder to check if a player is on a bungee server? (ping when answering)
anyone
%server_name%
i want to know if a person is in a server which is under a bungee proxy
isn't this for the server name in your papi config ?
Yes it is
where could i find the variables that are set in javascript placeholders like BukkitPlayer and BukkitServer
https://github.com/PlaceholderAPI/Javascript-Expansion look at JavascriptExpansion class
But theres nothing about bungee
yeah i got an idea how to do it
BukitPlayer, BukkitServer, PlaceholderAPI, args[], Expansion, placeholder
thanks for reminding me of %server_name%
Thats all you got iirc
thanks btw
No worries
not sure if this should go here or in the ezrankspro channel, but how can i edit this messages placeholder?
Hi, how can I verify my expansion?
One of the eCloud mods has to verify it.
I'll verify it later if no one did.
Hello @pine slate,
Unfortunately, you expansion won't be verified due to the lag it might cause when executing SQL queries every time a placeholder gets parsed, and that's for most of the placeholders you have.
A solution for this, would be locally caching the data you often pull from the database.
@bronze bison Ok thanks, already locally cached the data, but I was wrong in how to get the data, now I start to fix it and upload it again
Cool! I'll look into it again once you update it 👍
@bronze bison Now its fixed
@pine slate
Please respect the rules, be patient and don't ping staff members!
Verified 
Thanks for using PlaceholderAPI 😃

does anyone know the correct place holder to represent the number of players on a world?
%server_online_WORLD%
so where it says 'WORLD' i would place my world name?
yes
okay thank you so much @vivid sparrow !
np
var playerbal = 0;
function givebal() {
playerbal = parseInt(args[0]);
return playerbal;
}
givebal();
/papi parse me %javascript_bal_{economy_worth}%
this is returning NaN, any idea why? It should return my actual /bal i think
aBooDyy executing SQL queries cause one expansion won't be verified?
@pseudo mist
Please respect the rules, be patient and don't ping staff members!
@winged breach what does /papi parse me %economy_worth% return?
just %economy_worth%
well what placeholder is that from what plugin*?
i believe essentials
hm i guess i didnt think about that
If I used vault
's expansion, would that also use essentials' economy
it will use your main economy
oh yea it does
im using essentials / vault and for permissions im using luckperms
ok /papi parse me %essentials_worth% is outputting a blank line
oh wait does it return a value of an item?
in essentials folder you have a worh folder
worth*
for prices
and it returns the price of the item in your hand
oh yeah it does do that
or well its supposed to
ok wel %vault_eco_balance% works right
🙂
thanks for the help i didnt even consider anything wrong with economy_worth
Executing SQL queries every time the placeholder is parsed. Yes @pseudo mist
The reason of that is the amount of lag this would cause. Placeholders mostly get parsed every second while one player is online.
So how about multiple players and multiple placeholders getting parsed every second or so, and all of them are executing SQL queries.
and is there any way to improve that? Without depending on the plugin on the plugin that should return the data?
when making a placeholder of an outdated plugin and not optimized for placeholderAPI that has a database connection option.
I am interested in it
Unverified expansion means if you want to use it, it will be on your own risk. And in order to make the users know that, they should download it manually.
The proper way of storing data in an online database, should be by caching the data locally, then pushing once. And pulling the data and caching them locally once.
That part should be done in the plugin, cause if the plugin itself doesn't do that, then it would also cause lag, same thing as the expansion.
If that outdated plugin you're talking about is open source, you can improve it yourself or hire someone to do so.
it is not open source,hopefully
You can cache the placeholder values in the expansion
Let me find an example
Here’s one
In there we only fetch values from the map
But it has a task that populates the map on an interval
Maybe not the best example but something like that is what I’d suggest
@pseudo mist
That's unfortunate, but mostly outdated plugins get replaced with a new public one, or the user gets his own one.
Anyway, as clip said, you can cache in the expansion if you want to stick with that plugin.
At the moment I will continue with this add-on (respecting the original idea of the author). If in the future I can get in contact with the author, I would like to help him. But if I don't get it I will have to make my own plugin
thanks for the suggestions
Thank you for that. However, you can write your own plugin and credit the author for the idea. And (would be preferred) ask for his permission before doing that (some might disagree with this but that what I would personally do).
Last activity=last year.... I'm not going to be in a hurry about it XD
You could just make an expansion rather than modify the plugin
keep saying he's still busy. For more than 1 year
Just use the expansion as the bridge between your plugin and the placeholder. If the plugin api is doing bad things such as sync calls to database u can just do what I mentioned above. That way the plugin doesn’t need modified at all
Yes that's what i will do. It is faster and easier for me at the moment
Heyo!
Can someone make me a placeholderapi expansion for PvPingMobcoins
the current one does not work
the owner of the plugin would have to do that
unless it is opensource then maybe
someone could
@turbid tide It has a API
I am update the expansion RogueParkour, add cache system and configuration for interval check
Hey I am trying to make a deluxemenu tokenenchant gui, however when I download the tokenenchant ecloud it breaks the GUI.
hey so I have ezrankspro and im trying to setup progressbar on scoreboard through scoreboard r yet the progress bar doesnt work at all anyone know a fix?
How can I get a list of online players?
Yes I saw that, but I want to list players in every world
And %listplayers_in_world_global% doesn't work
Ok
No it doesn't work: I put %listplayers_with_perm_etredanslaliste% and gave everyone on minecraft the perm etredanslaliste (=be in the list)
well that is weird.. it works for me
Hmmm
etredanslaliste
😂 best perm ever
anyways, after searching in the list of placeholders on github and in the ecloud, I can't seem to find any other ways too do this
Ok...
Thank you anyway
It wouldn't be difficult to create a new placeholder that just list players with a custom separator, would be?
no
I just need to learn Java and the basics of a Minecraft server
wouldn't you be able to use javascript for that?
I don't know anything about JavaScript... The only language which I know is Python
Okay so I havent bought Featherboard, im asking this on behalf of Terence888 the owner of PandaCraft who has bought it. Im a manager on his server.
With Featherboard, its working perfectly except the placeholder we are using does not turn $1000QD into $1QT, it instead just becomes 1000000000000 (until it reaches the edge of the scoreboard). Does anybody know a placeholder that wont stop at $999QD? (Repost because it was ignored)
{money_formatted}
How do you parse a variable in javascript where the string is dynamically generated?
Like for Jobs Reloaded, there's a variable %jobsr_user_isin_1%, and 1 is set to a variable like "i". I tried "%jobsr_userisin_" + i + "%" but that does not work
use PlaceholderAPI.static.setBracketPlaceholders(BukkitPlayer, "{placeholder_placeholder_" + i + "}")
You can do that in Javascript?
[16:11:38 WARN]: org.bukkit.configuration.InvalidConfigurationException: while scanning for the next token
[16:11:38 WARN]: found character '\t(TAB)' that cannot start any token. (Do not use \t(TAB) for indentation)
[16:11:38 WARN]: in 'string', line 1235, column 11:
[16:11:38 WARN]: '1':
[16:11:38 WARN]: ^
[16:11:38 WARN]:
[16:11:38 WARN]: at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:55)
[16:11:38 WARN]: at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:162)
[16:11:38 WARN]: at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:130)
[16:11:38 WARN]: at com.extendedclip.deluxemenus.DeluxeMenusConfig.checkConfig(DeluxeMenusConfig.java:582)
[16:11:38 WARN]: at com.extendedclip.deluxemenus.DeluxeMenusConfig.checkConfig(DeluxeMenusConfig.java:574)
[16:11:38 WARN]: at com.extendedclip.deluxemenus.DeluxeMenusConfig.loadDefConfig(DeluxeMenusConfig.java:63)
[16:11:38 WARN]: at com.extendedclip.deluxemenus.DeluxeMenus.onEnable(DeluxeMenus.java:71)
[16:11:38 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264)
[16:11:38 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:316)
[16:11:38 WARN]: at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405)
[16:11:38 WARN]: at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugin(CraftServer.java:395)
[16:11:38 WARN]: at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugins(CraftServer.java:344)
[16:11:38 WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.t(MinecraftServer.java:442)
[16:11:38 WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.l(MinecraftServer.java:403)
[16:11:38 WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.a(MinecraftServer.java:341)
[16:11:38 WARN]: at net.minecraft.server.v1_12_R1.DedicatedServer.init(DedicatedServer.java:289)
[16:11:38 WARN]: at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:616)
[16:11:38 WARN]: at java.lang.Thread.run(Thread.java:748)
[16:11:38 WARN]: Caused by: while scanning for the next token
[16:11:38 WARN]: found character '\t(TAB)' that cannot start any token. (Do not use \t(TAB) for indentation)
[16:11:38 WARN]: in 'string', line 1235, column 11:
[16:11:38 WARN]: '1':
[16:11:38 WARN]: ^
any help ? 😦 😦
You can't use tabs in yml files, use spaces
aBooDyy i update my placeholder (RogueParkour-temporary) and add cache for database
You can see source code into: https://github.com/matahombres/RogueParkour-Temporary
Do it need any more changes?
Cool, will take a look in a bit.
@bold mesa
Looks like your server can't connect to our API,
Should your host not allow connections to the PlaceholderAPI eCloud, you can manually download expansion from https://placeholderapi.com/ecloud and place them in your /plugins/PlaceholderAPI/expansions/ folder.
I'm using the PAPI Expansion "ScoreboardObjectives", and my code is:
%objective_score_hi_{player_name}%
But it always returns 0. It works if {player_name} is replaced with an actual IGN, but I have the Player expansion downloaded.
This also doesn't work if I replace {player_name} with $player (mycommand) or $player_name$.
what if you replace it with %player_name% directly
i can't replace the syntax with %% because the syntax ends %objective_score% before player name is even reached
the first thing i tried was using {player_name}, you can see it on the example i showed above
and yes that is supported (supposedly)
I downloaded the LuckPerms expansion and i get this error now
This error occurs when there is a mismatch in versions between the expansion and luckperms itself.
Make sure you have the very latest LuckPerms and the latest LuckPerms Expansion.
Once installed restart your server.
If you want to keep using v4 please download the version 4.1 of the LuckPerms expansion.
@rapid trail
Thanks
When I type "/papi ecloud download statistic" and then reload it doesnt appear to actually add anything
it appears that it has been installed but papi is not detecting it
let me try restarting the thing
it appeared to do nothing
And i also tried downloading it from your website, and putting it in manually, and its still not working
Check the expansion folder and make sure you don’t have multiple statistic jar files
yea there is no duplicates
Got this error was told by TAB to ask you guys
umm
it looks like they might've fixed it
yep, fixed on github
have you tried updating TAB @austere hawk ?
And did they really send you to us? It was an error in TAB... that they fixed already
They said it was a placeholder API issue
😂
they didn't check the recent updates I guess
lol
I saw it fixed on github so 🤷♂️
What update I updated tab to the newest version
it looks like 2.7.0 has A fix
That's the version I have it just started throwing that error when I updated
the next update will have an additional error log it seems
Are you sure? the error you sent clearly says v2.6.5
I just downloaded 2.7.0 and see in the code that it catches that exception
Let me check one moment
A member of staff has requested I move your message to a paste,
Most likely beacause it contains a config/error/code snippet.
It says I'm using 2.70
Check if you have two
also check that it's the correct server directory
Could it be because of the folder
Does the old folder have to be deleted
Because I have so much configuration I don't want to lose it
shouldn't have to
That paste was from earlier. I was just cleaning up chat.
Ah
Yeah I don't know why it's throwing that Warn or error because it doesn't make sense
Okay
I just looked and it says 2.65
Why won't update 2.7.0
Let me delete the jar and reinstall again one moment
Make sure the server is off
ya... how are you "updating" it?
Restarting
also, try to re-download it
Server stopped and it was re-downloaded putting in now
hi, im having this (https://paste.helpch.at/gazewiyava.cs) error.
the line 49 in "GameArena.java" is new PAPI(this).register();
and PAPI.java is https://paste.helpch.at/afufexalih.java .
I looked few times and followed instructions (https://github.com/PlaceholderAPI/PlaceholderAPI/wiki/PlaceholderExpansion#internal-class) but I can't fix it.
can anyone help me?
@lament ermine can you send over the GameArena class?
@austere hawk I am very confused
500% it's the correct server directory?
Cj have you tried downloading it and verifying the latest version isn't wrong?
I haven't loaded up, but checking code it says 2.7.0 @trim mist
Just download and look at the plugin.yml
it looks like they write it manually
oof
and the version is 2.7.0 in the plugin.yml
@austere hawk not the plugins folder, I'm specifically talking about the server itself
Like version?
I personally have multiple testing servers all labeled very similarly
https://paste.helpch.at/ulirehivoy.java here it is.
it's very beginning so the code isn't look great.
do you have multiple servers @austere hawk ?
So are you putting the plugin in the correct one
Or are you putting it in another server?
in all 7 not bungeecord
So you're stopping all 7 servers, removing the old .jar, and putting the updated plugin in?
1 by 1 yes
You mentioned you have two plugin directories, one old, one new, what are you naming the old one?
what? I only have 1 plugin directory meant to say 1
for all 7 servers?
Yes 7 different plugin directories 1 per srever
no because of uptime wanted to see if it would update
Okay, so I want to make sure that if you update server 1, you are also giving us the log from server 1, right?
That's what I mean by "putting the plugin in the correct server directory"
@lament ermine Don't you need to import GameArena in PAPI?
Most IDEs have auto importing, which one do you use?
I'm using Intellij IDEA 2019 but I updated last week so it might have some problem
let me check
Basic procedures to create and optimize imports in IntelliJ IDEA. Learn more how to import the missing import or XML namespace.
Ctrl+Alt+O seems like
Ctrl Alt O did remove 9 unused imports.
and I guess i have auto importing already
GaneArena and PAPI are in the same package, so IDEA doesn't want let me import them.
no idea why it's not working
but you shouldn't register your events for your plugin inside the placeholderapi check...
Bukkit.getPluginManager().registerEvents(this, this); this one?
ya
Honestly not sure, it looks correct to me, but it's also a bit hard to follow
gamearena.gamearena.GameArena
mate
.<
Also naming your class PAPI... it's all conventional, optional, but you will get a lot of comments and questions from most people
I'm doing solo so it's ok(?)
Exactly, it doesn't really matter either way
||but i'll leave this here for you if you want https://www.geeksforgeeks.org/java-naming-conventions/||
😂 Thanks!
Is there like a placeholder that can show a progress bar of another placeholder?
progress_bar_superior_island_upgrade_members-limit_c:&a■_p:&e■_r:&7■_l:10_m:100_fullbar:&aCompleted!
I tried that one, but ain't showing anything
{} for placeholders
ow ok thx bro
👍
I'm getting a NoClassDefFoundException
=paste
Please use a paste service to share configs, errors, code and long logs.
• HelpChat Paste
My plugin is importing the same version of PAPI that s on the server
paste the full error please
Ensure that your plugin is depending, or soft depending on papi so it loads after papi. Also, move to #development
plugin.yml on #development
you have a ' inside ' '
you have to add another one (example: ' text '' test '
line 209
in your menu requirements_menu.yml
ah
weird
Does anyone have a PAPI extension for Tebex? Most donations highest amount that kind of stuff? ?
im using a plugin called SimpleScoreboard, it supports PAPI, what is the % for kills on a scoreboard
where is the kill one?
didn ot work
not*
on the scoreboard i want it to list the top5 most kills on the server
how do i do that? the %statistic_player_kills% did not work
Did you download the expansion?
what is expansion Tanguyab?
or DeluxeCombat
does that supports my scoreboard?
Ah if you want Top then yeah you need a plugin like leaderheads
does that supports my scoreboard?
If it supports PlaceholderAPI and that you ensure to download its PAPI expansion, then yes it'll work
Nope
send me link to it?
try DeluxeCombat
okay, how do i get it to say the players kills?
%statistic_player_kills%
/papi reload```
oh, i did that
and ?
nothing happend
Statistic and not Statistics
yes?
when you do /papi ecloud download Statistic make sure you type Statistic and not Statistics
also what does /papi parse me %statistic_player_kills%
/papi parse me %statistic_player_kills%
return ?]
What does that return?
What does the parse command return
@forest tendon run this command in your chat:
/papi parse me %statistic_player_kills%
ok
and tell us what it returns
What's your server ver
1.8.8
/papi ecloud download statistic 1.7.0
ok
delete the expansion from the folder first tho
statistics placeholders is not working
papi is not detecting the extension
so you have it installed but doesn't work?
yes
delete the expansion and install it manually
tried that too and it doesnt work
your server version?
Paper 1.8.8
/papi ecloud download statistic 1.7.0
but delete the current expansion
from the folder
oke
and also /papi reload after that command
#spigot-linking
?
ezrankspro is a premium resource so if you want support for it you will need to link your account so the person who is going to help you can confirm you bought the resource
okay cool
how can i show a player's prefix in the join/quit message? like "[prefix] [player] joined the game"
uh that didnt seem to work. just added a little blank space in the message
what does /papi parse me %vault_prefix% return?
nothing its blank
luck perms
try %luckperms_prefix% then
also blank
and I am assuming that you have the expansions installed?
:))
well you can still show the rank
if you don't want to set up prefixes
%vault_rank%
and it will return the name of the rank
im basically just trying to get deluxejoin to show the deluxechat prefix
I don't think deluxechat can return the prefix ... you have to use the rank prefix
How do I exclude plugins from using PlaceholderAPI (so they can use their own placeholders)?
WhAt
what placeholders?
basically
I use EasyPrefiz
x*
and when i installed papi
This started happening
Someone want to help me with voteparty?
How possible would it be to make placeholders for Litebans?
I'd like too have some too, but when I was searching, I found that =/ https://gitlab.com/ruany/LiteBans/-/issues/58
@tranquil sapphire , @junior musk Mind telling me which ones?, I requested some ages ago to the author but he said it was not worth his time
is player banned/muted,
how many times was banned/muted/kicked/warned
(if player is ban/mute) ban/mute reason
I can't think of anything else
sec lemme find my message to him
Frosty:
Hello, I was wondering if it would be posible to add some placeholders:
History:
%litebans_bans% - Returns the number of bans the player has
%litebans_server_bans%
%litebans_mutes% - Returns the number of mutes the player has
%litebans_server_mutes%
%litebans_kicks% - Returns the number of kicks the player has
%litebans_server_kicks%
%litebans_warnings% - Returns the number of warnings the player has
%litebans_server_warnings%
%litebans_player_history_#% - Returns the players punishment date (# - number of the history's date)
%litebans_player_reason_#% - Returns the players punishment reason (# - number of the history's reason)
%litebans_player_executor_#% - Returns the players punishment executor (# - number of the history's executor)It would also be nice if an api could be added.
If you would need any further explanation, feel free to DM me on discord Frosty#0013
(I rarely check spigot so a response would also be very welcomed on discord)Cheers Frosty
Ruan (dev of litebans)
Currently PlaceholderAPI is not supported.Adding support is complicated because all of the required data is usually stored in a MySQL database which means that getting any kind of variable requires a database query, which means it could cause lag if the placeholders are used on the main server thread (if the query takes 1 second, the entire server will freeze for one second until the query has finished).
So the data has to be cached to avoid lag, but that's also complicated because if there's a large number of placeholders then the act of caching in itself can cause additional unnecessary database load because the server could be fetching data that's ultimately unused. And if there are 20 servers, then the unnecessary database load is multiplied by 20. 100 servers = 100x database load. There would have to be a much higher caching interval for unused variables, but all of them would still have to be fetched on startup unless "0" is returned on variables that have been used for the first time which isn't ideal.
Basically it's a whole lot of effort for a handful of variables. Enough that I don't consider this a priority feature to implement.
There is an api for it, if you'd like to try
If you want to fetch punishment counts or date/reason/executor of a punishment, use the API. https://gitlab.com/ruany/LiteBansAPI/wikis/home#fetching-a-players-ban-history
Theres no time to wait! Ask your question @raven tinsel!
This is for CheckItem modifier: lorecontains:<text> How i can check the second line of a item's lore?
@mint fable :p
So maybe i have to say in another way. I am making a command that checks the item in hand. If the item had no lore, it costs 20k for the command, if found a lore "gem" it costs 30k and if found two lore "gem" it says you can't get more than two gems
Any idea? i have problem for the last target (two gems)
use the amt modifier
This item is a Diamond_Sword, so it can't be stacked
Don't think that's what he means cj, assuming you're defining gem "amount" through the lore
I think amt should still work for non-stacking items @raven tinsel
ie:
no gem : 20k
1 gem : 30k
2 gem : not available
yes exactly
How many gems can a player have? any amount?
the command is: add lore: "Gem" and I if the player's item had two "gems" the console say: you can't add more than two gems
Is the amount of gems defined in lore or is 1 diamond sword 1 gem?
he's defining the amount in the lore
Sure
?imgur
You won't be able to upload images here directly to avoid spam, so please use https://imgur.com/ to upload images/screenshots.
It seems I can't send any pictures here
I can't paste it
I will write all the commands
''test''
use imgur
I meant of the gems
and if it has a gem?
it costs more, if has two gems, it should say: you can't have more than two
Show how it would look if you have two gems
I need to see how the item looks @raven tinsel
how it looks with 0 gems, 1 gem, 2 gems, etc.
No it doesn't look like 0 gems, 1 gems,etc , it looks like this: Free Gem Slot, there's a command that add this lore, I want to stop player from using this command if the item has two Free Gem Slot
I definitely think javascript will need to be used here
||I'll take that sorry now smh cj||
So the commands adds an EMPTY gem slot?
okay you're gonna have to use javascript for that
Okay i'm gonna test that
it didn't
It was good if we had a placeholder that checks the <line-number> of a lore
Can I request this for a update?
Well think about it
once you fill that free gem slot, you'll only have 1 free slot
which will let players add more than 2 gems?
I think the best way for this is to customize a javascript placeholder that checks the lines individually
Because if < Free Gem Slot > gets filled with something like Fire Gem (no idea what gems you have) it will let you add more empty slots
You can checkout the wiki here: https://github.com/PlaceholderAPI/Javascript-Expansion/wiki
there's some examples, and google can help too
Yes Yes i understood that, and I want to write also if lorecontains:+ (gems add something like: +2 Damage, +5 Armor,etc) it will understand, I can write all the ways: lorecontains:+\nFree or lore:contains+\n+ .....
Its pretty easy if i can check the second line
Hey,
head;%player_name% does’nt work ?
head-%player_name%
also make sure you have the expansion (; if you're on 1.12, - if you're on latest)
Why did clip remove the ; smh
So I'm using essentials chat as my chat plugin, and I'm using the Towny plugin as well. When I go into the config and put the placeholder "townyadvanced_towny" into the chat, it is fine, but once i add the two % symbols, it breaks.
Any way to fix?
use {} and install chat injector
Could not load 'plugins/ChatInjector.jar' in folder 'plugins'
What Im getting in console
@brisk coral
There's probably a reason why
@lost token Show the startup log
Did it only occur one time?
no after that i gave up and took everything out because the server is releasing now to 70+ people
I was just seeing if i could do one last thing before release
but i'll fix it later
Would it be possible to make a placeholder that counts time?
Not a count down.
Like a "count up".
I don't know how to say it.
Something like this: https://gyazo.com/789500c75f78109c99a04d8725f8c6ca
a counter
hmm
you can make it with javascript probably https://github.com/PlaceholderAPI/Javascript-Expansion/wiki/Advanced-Scripts#storing-data
that's a link to storing data
@bronze bison made a cooldown placeholder here: https://www.spigotmc.org/wiki/placeholderapi-javascript-expansion-scripts/#cooldown
The home of Spigot a high performance, no lag customized CraftBukkit Minecraft server API, and BungeeCord, the cloud server proxy.
you can check that for how to see the current time and use it
I know that
I put that there so they can use it as a reference for using the current date and time
ye but you dont have to store anything
just put the starting timestamp on a variable
Ya, but you have to store it
and then you have to get the current date and time to see the difference
just put the starting timestamp on a variable
what?
What is this the age of @buoyant hedge ?
a person or the server?
Because I was setting it up for a person's age kind of thing @vivid sparrow
server age for sure
@mint fable A server lmao.
@buoyant hedge
Please respect the rules, be patient and don't ping staff members!
But, it has to be stored some where right? Or else every time the server reloads it will start back at 0?
No, he's saying set the time you want as a constant variable
so var serverStart = 3/23/2020
that kind of thing
unix
Oh as a starting point?
yep
But then, I'd have to make another var to store the current time no?
Well you don't need a variable for it, but yes
Since the clock will be internal, every restart I will lose time no?
you just get the current date and time, calculate the difference and then run the number through a formatter to give you w d h m s
Yeah.
Oh you want the running time of the server?
No.
why would you lose time?
I was worried that if I just made a counter I would lose time. Calculating the difference between current and first value is 1000x better.
I thought you meant use the start var and add a counter to it.
creepy_cj.gif
It's really just to let players keep track of the season's progression.
Wow smh.
It was there all along.
Yeah lmao.
We're over here trying to reinvent the wheel.
Actually no.
That's a static value.
It just calculates the difference between 2 dates, I need a difference between 1 set date and the current date.
that's what it does
var startDate = new Date(2020, 2, 23);
var endDate = new Date();```
ez pz
yes
I reformatted it for weeks, so proud 😄 https://gyazo.com/29cc2c70dec2b86646fca254047aff8c
Hello so i own a multiworld server and when doing the %server_online_smp% it shows the smp world but smp_nether and smp_end gets left out
so is there any way you can do like %server_online_smp,smp_end,smp_nether%
Are you trying to do every player in every world or just those 3 worlds, and dont count players in other worlds?
@austere hawk since that was 2 hours ago
If that's the entire server, just do %server_online% (I believe this means online players)
If you JUST want those 3 worlds, I recommend the Math expansion, then it's just %math_{server_online_smp}+{server_online_nether}+{server_online_the_end}%
lookin good @buoyant hedge
Thanks man
@unique flare that kinda worked but now there are all of these numbers showing up 0.000
[precision:0] worked
🙂
ty so much
where do I find the latest placeholder api list
[10:53:30 WARN]: org.apache.commons.lang.UnhandledException: Plugin PlaceholderAPI v2.8.1 generated an exception while executing task 13
at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:56)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalArgumentException: Comparison method violates its general contract!
at java.util.TimSort.mergeHi(TimSort.java:899)
at java.util.TimSort.mergeAt(TimSort.java:516)
at java.util.TimSort.mergeForceCollapse(TimSort.java:457)
at java.util.TimSort.sort(TimSort.java:254)
at java.util.Arrays.sort(Arrays.java:1512)
at java.util.ArrayList.sort(ArrayList.java:1462)
at java.util.Collections.sort(Collections.java:175)
at me.clip.placeholderapi.expansion.cloud.ExpansionCloudManager$1.run(ExpansionCloudManager.java:319)
at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71)
at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53)
... 3 more
update the plugin
Hi, i have another problem with script
So when i type /papi parse me %javascript_eastereventvote% &8/ &6%mycommand_playerdata_eastereventvote%
it returns this
My script is
function always() {
if (p === 1) {
return "&4&lBARDZO ŹLE";
} else if (p === 2) {
return "&c&lŹLE";
} else if (p === 3) {
return "&a&lOK";
} else if (p === 4) {
return "&2&lDOBRE";
} else if (p === 5) {
return "&d&lEPICKIE";
} else if (p === 6) {
return "&6&lLEGENDARNE"
} else {
return "&4&l!!! &c&lBrak Głosu &4&l!!!"
}
}
always();```
so shouldn't it print out "ŹLE"? <--- Main Question
btw i know i need to replace to unicode i will do it later
also please if you could link me a unicode checker?? or something l,ike that cuz idk know the unicode code and i can't find that type of page/tool
PLEASE PING ME WHEN YOU ANSWER @austere hawk
Hey there lovely people, I was wondering if you can remove a cloud expansion from papi, I keep getting this error since I added Factions expansion but I dont have the plugin for it nor need it anymore
[ERROR] .... [PlaceholderAPI] Failed to init placeholder expansion from class: com.extendedclip.papi.expansion.factions.MCoreFactionsExpansion
[ERROR] .... [PlaceholderAPI] com.massivecraft.factions.RelationParticipator
Why not just delete the expansion from the expansion folder?
Sorry, I don't work with JS stuff, someone else might be around!
k
I use this @austere hawk https://unicode-table.com/en/
Also, p is a string, compare it with a string
so i need to do numbers in "", is that right?
Great everything works now thank you!
Cool!
Having an error here
sec lemme find my message to him
@brisk coral Sorry but did he add the placeholders or what?
@tranquil sapphire
Please respect the rules, be patient and don't ping staff members!
@tranquil sapphire He didn't no, he said it wasn't worth his time to go trough the effort
@austere hawk either parse that value as a number parseInt() or use .equals("NUMBER")
ah, kinda late to the party
welp
So I installed Pinger onto placeholderAPI and now im getting a huge error in console of the server im getting stats from, viaversion and protocolsupport are mentioned in the error, any help would be much appreciated
@north rock please paste the error using paste.helpch.at and give the link so others can see what the problem is and give a solution.
@turbid tide type that into console?
no
paste.helpch.at is the link where you paste the error
you get the error from the console
and go to that link and paste it there
and than save it (using ctrl+s) and give the newly generated link
with a javascript how would you make it so if the return of a placeholder is Test_level_<#> how would i put that into a javascript so i dont have to make like 10 Js's
there's many ways @uncut pilot what is the # you want to return?
1-10

I need it so if it = Top_Month_10 it'll return it as Empty where if its not empty it displays the correct return
How would it go within a JS? i've never written a js with arguments
%javascript_javascriptname_arg1,arg2,{arg3placeholder}% and args[0] will return arg1, args[1] will return arg2 etc. and as you can see you can use placeholders but instead of %% you use {}
https://paste.helpch.at/davakiweso.apache
dont know if thats the full error, it spams, dont know if its your plugin or viaversion, protocol support.....
^^ Sorry I'm in a game 😂
nvm talked to a viaversion guy, viaversion and protocalsupport dont work together on spigot anymore lmao
BUG REPORT: After I do /papi reload the /jsexpansion reload breaks and it says that I have 0 javascript placeholders and I also think that it breaks the javascript placeholders and I have to do /papi reload. I am not 100% sure it breaks the javascript placeholders tho.
hello again guys :P
sooo...... I'm configing Scoreboard-revision
with AutoSell.
I can't add the autosell_perm_multiplier
it just doesnt show up properly
nvm! got it working LooL
java.lang.NullPointerException: null
at me.clip.placeholderapi.expansion.cloud.ExpansionCloudManager.lambda$fetch$4(ExpansionCloudManager.java:172) ~[?:?]
at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:76) ~[spigot-1.12.2.jar:git-Spigot-2cf50f0-2b93d83]
at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52) [spigot-1.12.2.jar:git-Spigot-2cf50f0-2b93d83]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_231]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_231]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_231]``` anyone know what is causing this? it worked fine, i installed server then i tried player and it started doing this
@subtle surge
Looks like your server can't connect to our API,
Should your host not allow connections to the PlaceholderAPI eCloud, you can manually download expansion from https://placeholderapi.com/ecloud and place them in your /plugins/PlaceholderAPI/expansions/ folder.
wow that bot is good
😄
oh wait glare while you are online, can you not reload multi economy without restarting the server?
I'll be honest I haven't looked at that project in probably 6 months.
I've been too busy with other stuff.
So, the answer is.... I don't remember.
