#placeholder-api

1 messages Β· Page 87 of 1

quartz dagger
#

Hey

#

I really need help

#

I can download expansions but cant reload so they dont get loaded in

warm topaz
#

whats the error

quartz dagger
#

When i do /papi reload

#

it says

warm topaz
#

console error

quartz dagger
#

One sec need to log in

#

Ill send in hatepin

#

hastepin

#

@warm topaz

warm topaz
#

?luckperms

tender vaporBOT
#
FAQ Answer:

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.

quartz dagger
#

This is the one

warm topaz
#

do what the bot says

quartz dagger
#

This is not my server and im just helping this guy out and dont get it why it isnt working

#

it works fine on my test server

#

Not just luckperms tho

#

Its anything

#

player

#

aswell

warm topaz
#

because luckperms is breaking it prob

quartz dagger
#

Maybe

#

true

#

I will try

#

Ye saw now it was a very old version

oblique sentinel
#

So i'm trying out

var faction = "%factionsuuid_faction_name%";

function getFacName() {
    if (faction === "") {
        return "wilderness";
    } else {
        return faction;
    }
}
getFacName();```
 and it's still showing [no-faction]
But if i'm in a faction it shows the faction name correctly
balmy marten
#

In game what does /papi parse me %factionsuuid_faction_name% show when you're not in a faction?

#

@oblique sentinel

oblique sentinel
#

[no-faction]

balmy marten
#

Alright so you're currently checking if faction === "" where you should be checking if it is equal to [no-faction]

oblique sentinel
#

Oooh okay, i didn't even think of that, i'll post back with the results

balmy marten
#

Yeah cause that script is just checking if nothing is returned

#

but something is, so it's showing it

oblique sentinel
#

Do color codes take in account?

leaden kraken
#

Yeah you can use color codes

oblique sentinel
#

Like in the if (faction === "") the [no-faction] didn't work, i was wondering if it mattered if it was colored ingame

leaden kraken
#

oh

#

What faction plugin are you using?

oblique sentinel
#

FactionsUUID

leaden kraken
#

What files does that have in its folder?

oblique sentinel
#

xD

#

It has Config folder, Data Folder, Lang.yml Tags.json

#

In config it has default_permissions.conf default_permissions.conf dynmap.conf and main.conf

leaden kraken
#

Check the lang.yml and search for no-faction

oblique sentinel
#

Oof

#

It can't be that easy xD

#

I hate myself now xD

sharp jay
#

xD

brisk coral
#

@short flicker Where is it being used, and could you show the crash report

meager vault
#

Hello,

Do you know if it's possible to parse offline player with the %parseother_{top player placeholder}_{data placeholder}% ?

sturdy sluice
#

@meager vault

meager vault
#

Mhh I have the 1.4.0 but I can't parse offline player

bronze bison
#

Not all placeholders support offline players.

#

Probably the data placeholder doesn't support that.

plucky wadi
#

If anyone could help with my javascript papi placeholder that would be great.

javascript.yml

fCloseBracket:
  file: fCloseBracket.js
  engine: nashorn
fOpenBracket:
  file: fOpenBracket.js
  engine: nashorn

fOpenBracket.js

var name = "%factionsuuid_faction_name%";
function fOpenBracket() {
    if (name != null) return "[";
    return "";
}
fOpenBracket();```
#

I tried to test it with the following command, papi parse smadger %javascript_fCloseBracket%

It just writes the %javascript_fCloseBracket% part out

brisk coral
#

Console is most likely outputting an error

plucky wadi
#

let me try again, just restarting the server

#

No error.

#

Just outputs it right back

#

As if nothing is different

#

Using papi parse smadger %javascript_fOpenBracket% now so it is the same command you're seeing above

#

It's like it's not even trying

plucky wadi
#

@brisk coral Any idea what's wrong

tender vaporBOT
#

@plucky wadi

Hey!

Please respect the rules, be patient and don't ping staff members!

plucky wadi
#

Oh sorry

#

Any help would be greatly appreciated

pliant fox
#

Hello where i can get the api docs ?

vivid sparrow
#

of?

plucky wadi
tender vaporBOT
#
FAQ Answer:

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.

pliant fox
#

@vivid sparrow for the chat part i wan't create a tags plugin

tender vaporBOT
bronze bison
#

@plucky wadi double check that you have the JavaScript expansion by checking if its listed on this command output /papi list.

If it is, then reload PlaceholderAPI plugin and send everything you get on the console.

plucky wadi
#

I ddi

#

Problem was that my luckperms was outdated

vivid quest
#

Anyone able to help with this?
26.01 19:27:41 [Server] Server thread/ERROR [PlaceholderAPI] Failed to init placeholder expansion from class: com.vk2gpz.papi.randomteleport.RandomTeleportExpansion
26.01 19:27:41 [Server] Server thread/ERROR [PlaceholderAPI] com/vk2gpz/randomteleport/RandomTeleport

austere hawk
#

Does anyone know why the place holder isnt working?

balmy marten
#

Which one?

full kettle
#

heeyyy any reason my expansions aren't loading?

balmy marten
#

Which expansions?

full kettle
#

sorry for the late reply

#

PlayTime/DeluxeTags

sharp jay
#

@full kettle any errors

twin lintel
tender vaporBOT
#

@twin lintel

Possible Solution Found:

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.

twin lintel
#

I don't use this expansion luckperms that the bot indicated "!

balmy marten
#

Caused by: java.lang.NoClassDefFoundError: me/lucko/luckperms/api/LuckPermsApi Seems you have the expansion installed

#

Just remove it if you dont use it

#

/plugins/PlaceholderAPI/expansions/

#

It's in there

mental night
#

Cubed

#

Apparently one of my menus is requesting players heads to fetch for a menu similar to baltop menu but It says I’m sending too many requests to Mojang servers

warm oriole
#

Likely due to the method and not using a plugin for it

#

hdb is the best option against that

full kettle
#

@sharp jay no errors, just isn't loading upon /papi reload

tender vaporBOT
#

@full kettle

Hey!

Please respect the rules, be patient and don't ping staff members!

full kettle
#

both PlayTime & DeluxeTags are in my expansions folder, they're just not loading in when i reload

brisk coral
#

You got the plugins? And as in not loading, do you mean not displaying in a certain place or? And do they show up on /papi list

full kettle
#

yeah, they're both in there

#

they're not coming up on /papi list

brisk coral
#

Restart the server

full kettle
#

i've tried that lol

trim mist
#

=paste

tender vaporBOT
#
HelpChat Paste

Please use a paste service to share configs, errors, code and long logs.
β€’ HelpChat Paste

trim mist
#

Can you throw your server startup log into a paste and provide the link?

#

We can see if they are actually registering or not.

full kettle
#

patched her up, just re-installed the plugins & expansions manually

#

not sure what was going on

#

anybody know of a placeholder that displays ALL of your vault ranks?

brisk coral
#

All as in?

full kettle
#

if a player has multiple ranks

full kettle
#

...it'll output all of their ranks

#

ie moderator/vip

#

%vault_ranks% outputs Moderator, VIP

brisk coral
#

Javascript perhaps

bronze bison
wooden shuttle
#

Q: i'm having a weird issue, and i'm only guessing that PlaceholderAPI might be involved:
When command lists are being generates (Tab-auto-complete) it's pulling in the formatting codes as well https://gyazo.com/4def00e4efe7466d6b7b472e8a05cba8
while AdminAnything claims to be using the default SpigotAPI, something funnky is going on. (Prefixes set with LuckPerms, through ServerControlRelloaded's chatformat via PlaceholderAPI)
[this only disconnects the client with illegal characters in chat]

vivid sparrow
#

Disable papi and try again

#

I doubt papi has anything to do with that

#

As it doesnt manage chat or anything on it own

wise scaffold
#

Is there a way to get %deluxechat_pm_recipient%'s vault prefix somehow?

brisk coral
#

javascript I'd assume

vivid sparrow
#

Parseother?

wise scaffold
#

How could I do that?

bronze bison
#

For bungee, there is no way of getting that without another plugin.
If bungee is disabled, you do %recipient_<any PAPI placeholder without <> and %%>%

wise scaffold
#

ty!

brisk sphinx
#

i may be confused about placeholderapi .. is their any way to get it to work with /broadcast or /m ?

#

also things such as signs ?

lapis schooner
#

How does the percision function work on math?

trim mist
#

Tap, if the plugin supports PlaceholderAPI, yes. Otherwise, no.

wet ferry
#

is there an expansion that allows if/else statements for other placeholders

for example:
%formatted_guild_tag%

if %player_guild% is '':
set %formatted_guild_tag% to No Guild
else
set %formatted_guild_tag% to [%player_guild%]

brisk coral
#

@wet ferry javascript

#
function hasGuild() {
  var guild = "%player_guild%;

  return guild == "" ? "No Guild" : "[" + guild + "]";
}
hasGuild;
wet ferry
#

yeah i think i'll settle for the javascript expansion

#

thanks a lot!

gray dagger
#

How come I keep getting an internal error message when I try to reload papi after downloading the Ecloud expansions?

brisk coral
#

?luckperms

tender vaporBOT
#
FAQ Answer:

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.

austere hawk
#

Guys

fading basin
#

Hey i have no idea about the right channel, i have prblem with one placeholder. Ich diwnloaded the mvdw extension from ecloud and insert in infinity scoreboard %mvdw_money% an it shows nothing. Can someone help me pls?

bronze bison
#

What does /papi parse me %mvdw_money% return?

fading basin
#

Ok i try it later at time not at home. Im looking for dezimal placeholder for money

mental night
#
      requirements:
        name:
          type: javascript
          expression: '"%player_item_in_hand%" == "DIAMOND_PICKAXE"'```
#

Can i make it so their can be more than one

#

so u can hold swords

#

would i just put another name:

#

example

#
      requirements:
        Pickaxe:
          type: javascript
          expression: '"%player_item_in_hand%" == "DIAMOND_PICKAXE"'
        Sword:
          type: javascript
          expression: '"%player_item_in_hand%" == "DIAMOND_SWORD"'
      deny_commands:
      - '[message] &5Enchants&7 Β»&d Please hold a Pickaxe or sword while trying to enchant.'```
fading basin
#

What does /papi parse me %mvdw_money% return?
@bronze bison it returns %mvdw_money%

tender vaporBOT
#

@fading basin

Hey!

Please respect the rules, be patient and don't ping staff members!

mint fable
#

@mental night just make another part of the javascript

#

"%player_item_in_hand%" == "DIAMOND_PICKAXE" || "%player_item_in_hand%" == "DIAMOND_SWORD"

#

but I think you want ===

#

both work I think actually πŸ€·β€β™‚οΈ not too sure

mental night
#

Alright ty cj ❀️

noble root
#

im using spigotboard right now with acidisland but the placeholders are not working in the scoreboard

#

😦

#

idk why

mental night
#

Does spigotboard support placeholderapi

noble root
#

yes

mental night
#

what placeholder are you trying to use

noble root
#

%acidisland_level%

#

Got everything downloaded from the ecloud etc

mental night
#

Have you downloaded acidisland papi expansion

#

Hm

#

Any errors in console

noble root
#

nope ):

mental night
#

Do /papi parse me %acidisland_level% too

noble root
#

and then

mental night
#

What does it return

noble root
#

%acidisland_level%

mental night
#

What version of placeholderapi you got

noble root
#

uhh

#

2.10.4

#

server is 1.15.2

tender vaporBOT
#
Placeholderapi - Version List
Spigot:

1.8.8
1.12.2
1.13.2
1.14.4
1.15

Version:

v2.10.4 - Latest
v2.10.4 - Latest
v2.10.4 - Latest
v2.10.4 - Latest
v2.10.4 - Latest

mental night
#

Hm

#

AcidIsland up to date?

noble root
#

its very weird

#

yeah

#

Most recent download

mental night
#

Whet placeholder does spigotboard mainly use

#

{ } or %%

noble root
#

Lemme look

mint fable
#

What?

#

it's whatever placeholder plugin it supports...

#

PlaceholderAPI uses %% and MVDWPlaceholderAPI uses {}

mental night
#

I’m dumb don’t judge

noble root
#

{} but ive tried both

mint fable
#

make sure to also get your placeholder expansion

noble root
#

already got that

#

dont see errors in console

mint fable
#

it supports papi placeholders it says

#

Did you run those commands to get the expansion? @noble root

noble root
#

Yepp

mint fable
#

what version are you on

#

Can you send a startup log?

noble root
#

Server? or the placeholder plugin

mint fable
#

Server version, acidisland version, and papi version

noble root
#

server 1.15.2

#

papi 2.10.4

#

acid 1.10.0

mint fable
#

BentoBox right?

noble root
#

Yap

mental night
#

Yeh

mint fable
#

so,

  1. they have a v1.11.0 now
  2. There might be different placeholders for bentobox
noble root
#

oof i made a typo

#

i was yusing 1.10.0

#

1.11.0*

mint fable
#

might be built in to their plugin

young iron
#

anyone help come room

mint fable
#

?help

tender vaporBOT
#
FAQ Answer:
Β» Give the helpers some details
Β» Ask suitable questions
Β» Be polite
Β» Wait

Source

noble root
#

'2. There might be different placeholders for bentobox' Yeppp, THANKS

young iron
#

i want just help

noble root
#

@mint fable and @mental night

mint fable
#

?

noble root
#

thxx

mental night
#

Np

young iron
#

@mint fable come room and put mut

mint fable
#

did you get it fixed?

noble root
#

bento box did have other placeholders xd

#

yes

mint fable
#

nice

noble root
#

im dumb srry xD

mental night
#

Same here

mint fable
#

all good πŸ‘

#

also seems that bentobox supports mvdwpapi and papi

mental night
#

Chicken dance

mint fable
#

so that's good

young iron
#

anyone come to room

#

[token=enchant]

mental night
#

@young iron what ya need help with

#

@young iron if you want support for TokenEnchant I recommend joining his discord so we can verify you have TokenEnchant purchased

bronze bison
wooden shuttle
#

are there dev builds available? i've seen a few issues pop up noted by some plugin authors since 1.15.2

balmy marten
#

Yes there are, see the pinned messages.

#

Report issues on the github so we can take a look

wooden shuttle
#

Thanks! πŸ™‚

junior musk
#

any news on PAPI v3 ?

balmy marten
#

Still in the works πŸ™‚

brisk coral
#

πŸ”œβ„’οΈ

junior musk
#

Gl with it, I hope it be out soon !

#

just one clarification, the bungeecord support that is planned, what will it do exactly ?

  • support bungee plugins to hook into it and create their own placeholders ?
  • support bungee plugins to show placeholders from the current servers !
  • support for plugins from the current server to show placeholders from other servers/proxies ?
#

or all ? (idk if you understand me x))

vivid sparrow
#

@carmine veldt can we have the last one? :0

#

Maybe as an expansion if you dont want another type of placeholders

carmine veldt
#

erm

#

maybe

#

yes

nova flame
#

Hello, I have got plceholderapi install and pinger downloaded and i am trying to check to see if my skyblock server is online with %pinger_online_serverIP:PORT% but it just comes back Offline but the server IS online?

#

even if I try to ping any server EG hypixel it just comes back offline...

brisk coral
#

Set the update interval to 1 inside papi config, after that it should return correctly on the second parse

nova flame
#

Still doesn't work just comes back offline

brisk coral
#

Checking it using papi parse or?

nova flame
#

yeah papi parse and then displaying it on my title manager sidebar

brisk coral
#

Have you change the update interval (it sometimes does funky stuff and doesn't actually change it)

nova flame
#

yep

#

its changed

brisk coral
#

Try also changing the placeholder update rate

nova flame
#

how?

limber ice
#

@nova flame its in the config for PlaceholdeAPI ```expansions:
pinger:
offline: '&cOffline'
check_interval: 1
online: '&aOnline'

nova flame
#

Yeah mine looks like that

limber ice
#

in your menu you may need this ```open_commands:

  • '[refresh]<delay=20>'
nova flame
#

I mean that wouldnt change anything as it doesnt even work with papi parse?

brisk coral
#

He ain't using dm for it Ironic

limber ice
#

%pinger_online_127.0.0.1:25256%

nova flame
#

shows offline still

limber ice
#

yes cause my ip and the port I'm using may not match your settings

nova flame
#

yeah I changed them to mine

#

sitll doesnt work

limber ice
#

ok

#

what version of MC?

nova flame
#

1.8.8

limber ice
#

might need older version of Pinger

nova flame
#

there arent any old versions?

limber ice
#

yes I just noticed there is only one version, I know there was an update

#

@nova flame I assume you have rebooted the server after the changes to the config

nova flame
#

yep

limber ice
#

don't change these and see if they work%pinger_online_testplugins.com:25565% %pinger_isonline_testplugins.com:25565%

nova flame
#

well the online one doesnt work but isonline does

limber ice
#

guess you will need to use the isonline one

nova flame
#

Just tried using it for my server doesnt work

#

Well ok, my domain name works eg play.hyrealm.network but my number ip for skyblock doesnt work

limber ice
#

not working meaning you get offline return

nova flame
#

yh

brisk coral
#

Meaning it ain't the expansions issue

limber ice
#

sometimes you have to check it twice

nova flame
#

Hmm okay ty

limber ice
#

thats why you change the timing in papi and refresh the placeholder to make sure it's correct

nova flame
#

I really dont know what going on with this

fading basin
#

@bronze bison it returns %mvdw_money%
@fading basin

tender vaporBOT
#

@fading basin

Hey!

Please respect the rules, be patient and don't ping staff members!

fading basin
#

Anyone have an idea how can i have an dezimal number in money placerholder?

brisk coral
#

Use the vault eco balance placeholder

drifting wing
#

I'm having issues with the McMMO placeholder on 1.15.2. The weird thing is that it works on my local server but not on my live dev server. Both servers show the error when I do /papi reload though. Same plugins and versions. Any help would be appreciated.

There's an error too but it doesn't seem to be related to McMMO, and the vote party placeholders work fine. This error shows when I do /papi reload.
https://imgur.com/a/GFi3FCi

#

It seems that it's just not installing properly. On my local server it shows up on the installed list, but not my live dev server.
https://imgur.com/a/8X8YnWZ

fading basin
#

The vault eco balance is not showinh the dezimal numbers

bronze bison
ashen garnet
#

I want to use %seasons_weather_world% as shown on https://github.com/Harieo/Seasons/wiki/How-to-use-Placeholders
The problem is that my worlds are named bskyblock_world, bskyblock_world_nether and bskyblock_world_the_end.
When I change %seasons_weather_world% to %seasons_weather_bskyblock_world%, it returns that the world 'bskyblock' does not exist.
How can I make sure PlaceholderAPI knows the entire world name is bskyblock_world?

#

Appreciate any help.

bronze bison
#

Contact the plugin's author, they should fix that.

ashen garnet
#

So there is no way I can fix this?

#

As in, adding some kind of '', "" or something else around it?

bronze bison
#

You can by forking it and fix that yourself as its open source.

ashen garnet
#

I don't have the knowledge to do that.

bronze bison
#

Seems like it can't be fixed without changing things in the source code.

#

Ok then contact the author

ashen garnet
#

I rather change the world names in all the plugins and such, than trying to fix it in Seasons.

#

Ok

bronze bison
#

Changing the world name would be an option too, yeah.

topaz apex
#

Hello, can I have some help with the papi api? My plugin implements the api but when I try to use the placeholder it does not work..

brisk coral
#

Show your classes

#

=paste

tender vaporBOT
#
HelpChat Paste

Please use a paste service to share configs, errors, code and long logs.
β€’ HelpChat Paste

topaz apex
brisk coral
#

Use that paste

topaz apex
#

Sorry for not making notes with '//'

brisk coral
#

Also show the main class

topaz apex
#

the main class is shown as the OnEnable line

#

Line 131

brisk coral
#

Also if you're using IJ that would immediatly show you an error (the String method requires a return method), all your returns are in statements

topaz apex
#

there are no errors

#

but it doesn't work when I try the palceholder

#

Im using %minetwist_level%

brisk coral
#

Any reason you're delaying the registration of the class?

topaz apex
#

Even with ```

softdepend: [PlaceHolderAPI]

#

so it doesnt initialise the placeholder otherwise

brisk coral
#

make it depend

#

And it'll always load afterwards

topaz apex
#

should that fix it?

mint fable
#

you shouldn't need to force depend

#

I don't

brisk coral
#

I do

#

:p

topaz apex
#

I am using spigot 1.12

mint fable
#

forcing depend is bad

#

I just

            papiEnabled = true;
            new PlaceholderAPIHook(this).register();
        }```
brisk coral
#

How so, the plugin uses the plugin for some of it's classes, meaning it depends on it

topaz apex
#

I do that too @mint fable but my plugin loads before PAPI so it doesn't work

mint fable
topaz apex
#

good poinrt

mint fable
#

@brisk coral not necessarily

#

My plugin has placeholders, but it doesn't need placeholderapi to run

#

hence why it would be bad to force depend

brisk coral
#

We'll yea, but if you're activelly using papi methods in most ur classes it's better to depend on it

topaz apex
#

It would be best to use a if(has papi) use papi, then else return the stirng

mint fable
#

like deluxemenus

brisk coral
#

I mean you could simply make a util for it

mint fable
#

aha

#

you can add loadbefore to placeholderapi

#

πŸ€·β€β™‚οΈ

#

loadbefore: [YourPlugin]

brisk coral
#

effort

topaz apex
#

eh, opening it in winrar.. changing a thing

#

effort

brisk coral
#

yup

mint fable
#

but figuring out a way to do it otherwise without forcefully depending on it? no effort

#

insert drake meme

topaz apex
#

wow spigot is poop

#
org.bukkit.plugin.UnknownDependencyException: PlaceHolderAPI
``` And i have `depend: PAPI`
mint fable
#

wot

topaz apex
#

why..?

brisk coral
#

Lmao

mint fable
#

goodnight πŸ’€

brisk coral
#

cya

topaz apex
#

im so confused

#

I even added loadbefore: in papi and my plugin is still loaded before it?!?

#

It works it works!! yay

#

thanks for the help πŸ™‚

ember crown
#

Hello, do you know the placeholder I want in DeluxeChat the date and time of sending the message?

#

Example - Message sended 01/02/2020 16:08

brisk coral
austere hawk
brisk coral
#

?ecloudblock

tender vaporBOT
#
FAQ Answer:

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.

brisk coral
#

@austere hawk ^

austere hawk
#

ok thaks πŸ™‚

#

@brisk coral

woven latch
#

Heey, after updating to 1.15.2 im getting this warn in console for my plugin and others: "[PlaceholderAPI] Loaded class ... which is not a depend, softdepend or loadbefore of this plugin."

#

My plugin actually has PlaceholderAPI as a softdepend in plugin.yml , do you guys know why im getting this warn?

brisk coral
#

Ignore the warning

#

It's something that's been changed in spigot 1.15.2, you can safelly ignore it

woven latch
#

Ohhh okay, yeah im also getting it with ProtocolLib

#

Do you know if it can only be removed on PAPI's side or just something we will have to live with? (so I can tell people if they ask me)

brisk coral
#

Not sure, it's spigot sided so unlikely I think

mossy ledge
#

Someone here I can tlak to? This is super weird

#

I have installed PAPI and FactionsUUID and SavageFactions

#

and am using the right placeholders

#

But I cant get any palceholders working in any tag editing plugin

#

Any ideas?

sharp jay
#

@mossy ledge SavageFactions is a fork of FactionsUUID use one not both or it will be buggy

mossy ledge
#

But Savage wont load without fuuid

sharp jay
#

I recommend joining there discord and asking for help if it doesnt load it means its just using factionsuuid and not savagefactions

mossy ledge
#

Savage is abandoned

#

No discord, no support, no website

#

even with savage removed the placeholders wont load

sharp jay
#

Its a premium plugin now pretty sure

mossy ledge
#

Factionsuuid?

sharp jay
#

savage

mossy ledge
#

It isnt

#

Its discontinued

#

uuid is premium

sharp jay
#

both are premium

tame lantern
#

Hi, why any placeholder do not work and any /papi ecloud download command shows "No cloud expansions avaible at the moment"?

#

I was testing it with TAB plugin

#
java.lang.NullPointerException: null
    at me.clip.placeholderapi.expansion.cloud.ExpansionCloudManager.lambda$fetch$4(ExpansionCloudManager.java:172) ~[?:?]
    at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftTask.run(CraftTask.java:84) ~[patched_1.15.1.jar:git-Paper-34]
    at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) ~[patched_1.15.1.jar:git-Paper-34]
    at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[patched_1.15.1.jar:git-Paper-34]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_161]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_161]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]``` :c
tender vaporBOT
#
FAQ Answer:

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.

brisk coral
#

@tame lantern ^

nocturne wedge
#

Hey, Can someone tell me how to properly do this as a javascript palceholder?
I want the following:

  expression: '%player_has_current_quest_Miner% == false'
  type: boolean
  true_result: '%quests_player_current_objectives_Miner%'
  false_result: 'No active quest!'```
Been trying for a while but couldn't understand a thing
brisk coral
#
var quest = "%player_has_current_quest_Miner%";
var objective = "%quests_player_current_objectives_Miner%";
function hasMinerQuest() {
    return placeholder == false ? "No active quest!" : objectives;
}
hasMinerQuest();
#

Try this

nocturne wedge
#

Alright trying it now

brisk coral
#

Are you familiar with how to setup a js expansion?

nocturne wedge
#

I will follow the example jr

#

Placeholder still returns empty results, What i am basically trying to do is, If %quests_player_current_objectives_Miner% returns nothing, It displays "No active quest!"

#

var objectives = "%quests_player_current_objectives_Miner%";
var objective = "%quests_player_current_objectives_Miner%";
function hasMinerQuest() {
    return objective == false ? "No active quest!" : objectives;
}
hasMinerQuest();```
#

This made it work

#

Thanks Frosty

brisk coral
#

Atleast remove one var then, since they're both the same

nocturne wedge
#

Oh alright xd

nocturne wedge
#
var objectives = "&atest";
var objective2 = "%quests_player_current_objectives_Fishing%";
var objective = "%quests_player_current_objectives_Basics%";
function hasMinerQuest() {
    return objective == false || objective2 == false ? "No active quest!" : objectives;
}
hasMinerQuest();```
i have tried doing objective,objective2 and with [] and  even tried putting both of them in the same var
#

but it will always only check one of them and ignores the other

#

So it'll only check for objective2 and never objective

brisk coral
#

Don't think this return style supports or

#

Also, I'd recommend either having a seperate placeholder for every different quest, or let me know and I'll show you how to make one for everything together

nocturne wedge
#

The thing with having multiple ones, It will display No active quest! multiple times

#

Which is not what i am looking for

#

So basically i want if a player has atleast one quest active, that "No active quest!" won't be there

#

no possible way to do if %1% or %2% == false ? "no active quests!"
?

brisk coral
#
var fishing = "%quests_player_current_objectives_Fishing%";
var basics = "%quests_player_current_objectives_Basics%";
var objectives = "&aTest";
function hasActiveQuest() {
    if (fishing == false || basics == false) {
      return "No active quest!"
    }
    return objectives;
}
hasActiveQuest();
nocturne wedge
#

It still only takes fishing into consideration

#

You are right, There is no support to | |

brisk coral
#

It shouldn't tho, switch them up and see if it uses only the basics

nocturne wedge
#

Alright

brisk coral
#
var fishing = "%quests_player_current_objectives_Fishing%";
var basics = "%quests_player_current_objectives_Basics%";
var objectives = "&aTest";
var noQuest = "No active quest!";
function hasActiveQuest() {
    if (fishing == "") {
      return noQuest;
    }
    if (basics == "") {
      return noQuest;
    }
    return objectives;
}
hasActiveQuest();
nocturne wedge
#

Now it's always displaying No active quest! doesn't matter what, Sorry for confusing you with my issue

brisk coral
#

Parse the seperate placeholders using papi parse and see what they return

junior musk
#

shouldn't it be else if for the second ?

nocturne wedge
#

I just did, When quest is not active, it returns an empty line, When quest is active, it returns the quest objective

#

so placeholders work fine

brisk coral
#

Ah it returns an empty line

#

Test that

nocturne wedge
#

now i need BOTH quests active for it to return Test

#

hmmm, i'll try the old method

#

with ||

#

without false

brisk coral
#

set it to ""

nocturne wedge
#

yea

brisk coral
#

I missunderstood so it might work

nocturne wedge
#

using js var fishing = "%quests_player_current_objectives_Fishing%"; var basics = "%quests_player_current_objectives_Basics%"; var objectives = "&aTest"; function hasActiveQuest() { if (fishing == "" || basics == "") { return "No active quest!" } return objectives; } hasActiveQuest();
it still needs both quests active to display Test

#

so || is basically being ignored

brisk coral
#

@vivid sparrow Can you confirm that || indeed doesn't work with js, or am I fucking something up

vivid sparrow
#

it does

#

you probably want to use &&

nocturne wedge
#

I'll try

vivid sparrow
#

actually, that works

brisk coral
#

That should work yea

nocturne wedge
#

Yep

#

&& works

vivid sparrow
#

I'm talking about OR

nocturne wedge
#

Or didn't work, i needed both fo them active to display "&aTest"

brisk coral
#

or should work yea, since it's either or

#

I mean didn't you say that's what you wanted

nocturne wedge
#

I wanted ONE of them to be false

#

for it to return Test

brisk coral
#

use && then

nocturne wedge
#

Yea got that, I really appreciate the help! Thanks alot ❀️

brisk coral
#

Just add more if you need them from now on

nocturne wedge
#

Yep, I figured that out thanks :)

cerulean ore
#

Any way of getting kd using %statistic_deaths% and %statistic_player_kills% using javascript?

brisk coral
#

You can use math for that

cerulean ore
#

Oh, will try it out

#

Ok so it works fine, just unsure about using it with featherboard

#

is this right? {placeholderapi_math_statistic_player_kills/statistic_deaths}

brisk coral
#

featherboard usually supports %% placeholders so try the normal one, otherwise try this one ye

cerulean ore
brisk coral
#

Check console

cerulean ore
brisk coral
#

odd, and have you made sure the placeholder returns correct values?

cerulean ore
#

cause using placeholderapi /papi parse me %math_{statistic_player_kills}/{statistic_deaths}% it returns everything fine

brisk coral
#

make a js placeholder then, cause I don't think it'll work if you add the 2 more {}

cerulean ore
#

Alrighty

meager ember
#

I am using Papi to display the time on my server, but it is stuck at a terrible time zone, I want to change it how do i do that?

#

&7%server_time_E%, %server_time_MMM% %server_time_d% %server_time_yyyy% %server_time_h%:%server_time_mm%

#

This is what i am using

#

I want to change it to America/Chicago time zone

brisk coral
#

It uses the servers timezone

meager ember
#

My server is hosted in Chicago, ironically its not using that time zone

#

Its 9:54 and it says its 7:54

#

I used this to help with the format but it is very unclear with timezones

cerulean ore
#

Using something like this, how would I round the KD to only 1 decimal? e.g 1.2
return Math.round(parseInt('%math_{statistic_player_kills}/{statistic_deaths}%') * 100) / 100;

brisk coral
#

no need for the Math.round

#
%math_{statistic_player_kills}/{statistic_deaths}[precision=1]%
meager ember
#

So is it impossible to change the timezone?

sharp jay
#

@meager ember Check the config of papi to see if maybe has an option

tame lantern
#

Hi, I have simple problem with PAPI as dev. I have registered simple placeholder in mvdw's papi, here is the code:

if (Bukkit.getPluginManager().isPluginEnabled("MVdWPlaceholderAPI")){
    boolean oldVersion = false;
    try {
        Class.forName("be.maximvdw.placeholderapi.PlaceholderReplacer");
    } catch( ClassNotFoundException e ) {
        oldVersion = true;
    }
    if (oldVersion == false){
        PlaceholderAPI.registerPlaceholder(this, "mox_title", new PlaceholderReplacer() {
            @Override
            public String onPlaceholderReplace(PlaceholderReplaceEvent placeholderReplaceEvent) {
                Player player = placeholderReplaceEvent.getPlayer();
                PlayerData playerData = MoxChatTitles.getInstance().getDataManager().getPlayerData(MoxChatTitles.getInstance().getDataManager().getPlayerID(player));
                if (playerData != null){
                    if (playerData.getLastTitle() != null){
                        return playerData.getLastTitle().getTitle();
                    }
                }
                return "";
            }
        });
    } else {
        Bukkit.getLogger().warning("["+getDescription().getName()+"] You are using old MVdWPlaceholderAPI version! Update it if you want to use placeholders!");
    }
}

And when I use string with "$" symbol, then it does not getting replaced. There is visible %mvdw_mox_title% instead of correct string. When I use anything that do not contain "$" symbol, then it gets replaced without any problems.
How to avoid this problem?

trim mist
#

Why are you trying to register with MVDWPlaceholderAPI and regular PlaceholderAPI?

#

You can simply just do regular PlaceholderAPI, and MVdWPlaceholderAPI will support it also.

tame lantern
#

I was first using it on featherboard but then I wanted to use it on TAB plugin and here is the problem :/

#

is there any way to avoid "$" breaking replacement?

trim mist
#

Never heard of that before. I just use regular PlaceholderAPI and it will support with mvdw

tame lantern
#

PAPI uses regex to replace?

#

Maybe thats because $ is a regex symbol

trim mist
#

Uh it might

tame lantern
#

so .replace('$', "\\u0024") should help?

austere hawk
#

Hello! I'm using the SuperBVote and HolographicDisplays plugin and I can't figure out how to make the top voter show up on the HD using papi

#

I don't how to use the %superbvote_votes% placeholder

austere hawk
#

@austere hawk Try replacing the % with { and }

junior musk
#

@austere hawk Download ProtocolLib and Holographic Extension, HD doesn't support PAPI on it's own

hearty flame
#

Any way to use placeholderapi placeholders into essentialsxchat on 1.15.1

#

chatinjector is only updated to 1.13

junior musk
#

Doesn't it already supports it?

#

Ah

hearty flame
#

i dont think so?

junior musk
#

Idk

#

I've never tryied lol

#

But maybe try ChatInjector

#

Sometimes plugins work even when updating versions

#

Like LP

hearty flame
#

may aswell try it

hearty flame
#

It works but it gives everyone access to color codes in essentialsxchat

quartz dagger
#

Then disable the perm

#

essentials.chat.color false

#

Think thats the perm node

#

@hearty flame

tame lantern
#

how to check if player have fly mode set to true? %essentials_fly% this is always false

hearty flame
#

@quartz dagger tried that already

cerulean ore
vivid sparrow
#

@cerulean ore move the first } to the right

austere hawk
#

Tanguygab, where exactly do I install it? Is it a .jar extension, because I can't seem to find a /papi ecloud download holographic extension.

brisk coral
#

It's a plugin

#

=pl holographicextension

tender vaporBOT
#

v1.10.8 by Niall7459
Implements scrollers, typewriters, color scrolls, and PlaceholderAPI to HolographicDisplays!

Downloads:

62,497

Likes:

148

Reviews:

51

brisk coral
#

This one ^

austere hawk
#

Thanks! πŸ˜„

austere hawk
#

How can i add Papi PlaceHolders in Hologramsdisplays Plugin?

#

@brisk coral can you help me?

tender vaporBOT
#

@austere hawk

Hey!

Please respect the rules, be patient and don't ping staff members!

austere hawk
#

Oki

warm topaz
#

install holographic extension for papi placeholders. i believe protocollib will be needed too

austere hawk
#

@warm topaz When i type /papi ecloud download Holographicdisplays

#

It says no expansion found

warm topaz
#

there is no expansion for HD. holographic extension hooks into PAPI which allows ur holograms to use any placeholder found on papi. such as vault, luckperms placeholders etc.

stone fern
brisk coral
stone fern
#

ah right cool thanks πŸ™‚

tender vaporBOT
#
FAQ Answer:

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.

junior musk
#

@austere hawk Holographic Extension is a plugin

austere hawk
#

Oki

tame lantern
#

how to check if player have fly mode set to true? %essentials_fly% this is always false

trim mist
#

@bronze bison You work on the Essentials expansion right? I think you're misusing the %essentials_fly% placeholder. You should be checking user.getBase().getAllowFlight() vs essentials.getUser(p).isFlyClickJump().

bronze bison
#

I probably did add few placeholders or cleaned the code a little bit but i didn't rewrite it.

If there's an issue with something or any request, feel free to open a new issue on the expansion's repository on GitHub @tame lantern

trim mist
#

I'll go ahead and open one for it.

#

Testing a fix for it now.

#

Fixed.

#

@tame lantern In a bit you should be able to re-download the expansion and it'll start working again.

sage valley
brisk coral
#

Use & instead of the other one

sage valley
#

its have on the config whit this & only bannerboard makes this whit Β§

oblique escarp
#

Good I have a problem with LeatherBoard when wanting to use it on FeatherBoard does not recognize the statistics and gives me a constant error in the console

cedar fossil
#

does placeholderapi not work correctly in 1.14.4?

#

it keeps spouting errors and refuses to work with mvdw

warm oriole
#

you likely aren't doing it right then

#

=paste

tender vaporBOT
#
HelpChat Paste

Please use a paste service to share configs, errors, code and long logs.
β€’ HelpChat Paste

oblique escarp
#

=paste

tender vaporBOT
#
HelpChat Paste

Please use a paste service to share configs, errors, code and long logs.
β€’ HelpChat Paste

oblique escarp
#

I'm trying to put my LH on featherboard and I get an error from "[LeaderHeadsRevamped] Placeholder players: damage-give_1 has an invalid number of part"
and this is the sentence I write on featherboard "'{leaderheads_players:damage-give_1}:{leaderheads_score:damage-give_1}'"

tame lantern
#

RedisBungee extension does not work. I have latest RedisBungee but it do not initialize at server start:

[00:37:46] [Server thread/ERROR]: [PlaceholderAPI] Channel must contain : separator (attempted to use RedisBungee)```
tender vaporBOT
#

@tame lantern

Hey!

Please respect the rules, be patient and don't ping staff members!

tame lantern
#

so I bet that you have to change just this:

      Bukkit.getMessenger().registerIncomingPluginChannel(getPlaceholderAPI(), "RedisBungee", this);```
to this:
```      Bukkit.getMessenger().registerOutgoingPluginChannel(getPlaceholderAPI(), "legacy:RedisBungee");
      Bukkit.getMessenger().registerIncomingPluginChannel(getPlaceholderAPI(), "legacy:RedisBungee", this);```
trim mist
#

Alright, that's cool, but I also don't have the source to the rest of it and I don't really have the time to remake it.

tame lantern
#

Alright, I will try to do it myself and I will update resource here if I will success

trim mist
#

@tame lantern I got the source and I'm going to push the old source to the GitHub Org so you can modify it from there if you wish.

tame lantern
#

I have trying to change it to legacy:redisbungee, it started initializing but all values are "0" :/

#

I do not know exactly channel name. I will try to decompile redisbungee and check it inside

trim mist
#

RedisBungee is open source so you can probably find it on their GItHub.

tame lantern
#
    getProxy().registerChannel("RedisBungee");```
#

But RedisBungee gives error :/

trim mist
tame lantern
#

Same error as before due to "RedisBungee" channel :/

#

spigot I see requires ":" symbol up from newer versions

trim mist
#

I added those in there. Guess it didn't want to work.

tame lantern
#

But redis bungee registered channel as "RedisBungee"

trim mist
#

I told it to also register the legacy stuff.

tame lantern
#

Can I get possibility to send screenshoots here :x?

trim mist
#

=imgur

tender vaporBOT
#
Uploading Images

Please use imgur to share screenshots and other images.
β€’ Imgur

tame lantern
#

This does not throws error

#

But it returns "0" value to everything

#

Maybe there is requirment to use it something like bungee:RedisBungee in newer spigot/bukkit versions?

#

or names of strings like if (subChannel.equals("PlayerCount")) are different now?

#

This channel legacy:redisbungee should work because it is same as RedisBungee so it is weird :/

#

ah, there is no "GetServers"

#

oh wait, I see mistake here

#

event.getTag().equals("legacy:RedisBungee")

#

but in main class he registered:
getProxy().registerChannel("legacy:redisbungee");

#

thats probably why values are 0 :/

trim mist
#

Ahh

tame lantern
#

Oh, I can not send file here :c

trim mist
#

You can also just compile a custom version for your server instead of waiting on him to fix it πŸ˜›

tame lantern
#

I think it requires tons of dependencies and it scary me to add them all just to compile it xD

#

Oh, its maven project. I will try then

#

nope, it will take hours to make it working in my IDE

austere hawk
#

Can I extend the ChatReaction offical expansion placeholder for github & ecloud? I wanna make more variables of it

austere hawk
#

When is the api getting fixed?

#

Or is there a working version for 1.14?

#

When is what api getting fixed?

#

Placeholder api

#

I do the /papi parse download commands but none of the placeholders work

oblique escarp
#

=paste

tender vaporBOT
#
HelpChat Paste

Please use a paste service to share configs, errors, code and long logs.
β€’ HelpChat Paste

gaunt pilot
#

with askyblock and papi is there a way i can get a island leader placeholder for the island a player is part of, not just the island they are currently in

humble yew
#

I’m working on a placeholder extension right now and it does work, however the function of it is to get the players team color set with the in game command /team so if they were on team called sky and their team color was blue the placeholder would return either the string β€˜blue’ or the color code for blue if possible

#

Anyone know how to grab team color off of a player like that?

humble yew
#

Never mind I found it was getPlayer().getScoreboard().getPlayerTeam()

austere hawk
#

Is Listener acceptable in an expansion .jar (without external plugin type)?

brisk coral
#

Wdym

#

Don't think you can use events, could be wrong tho

austere hawk
#

That is definitely possible if that is used on a full plugin

#

But not sure about it being accepted on ecloud or not

bronze bison
#

You can have events in expansions.
If you're asking if it would be acceptable on the eCloud or not, then yes. There's no reason for not accepting it if everything is fine.

brisk coral
#

Ohh damn

austere hawk
#

I still don't understand how core plugin register the listener class though

brisk coral
#

I'm assuming using getProdividingPlugin and get the main class and register it?

#

Could be wrong tho

carmine veldt
#

papi provides a listener util in it's expansion api, so it's acceptable

austere hawk
#

Fine

#

But I want to make extra placeholder in ChatReaction, which clip already owns

#

I prepared 6 placeholders in the expansion already 🀷

brisk coral
#

Ask him to OS it kek

austere hawk
#

Do I have to tag him or what ._.

warm topaz
#

lol gl trying to get him to OS it

bronze bison
#

PAPI doesn't provide anything for listeners? Current PAPI, idk about the new one

brisk coral
#

Piggy spoiling shit again smh..

bronze bison
#

Its like a plugin but you register the listener by PAPI

#

Also for the ChatReaction expansion, guess you mean make a brand new expansion with the new placeholders only? You can do that but I don't know about verifying it on the eCloud, would need to ask.

#

Or just ask him to open source it and you can contribute to the current one.

brisk coral
#

Bit confused as to why expansions aren't OSd from the start

balmy marten
#

I've got the source to a lot of the expansions that aren't on the github, if theres a need for one I can os it

austere hawk
#

Can you os my desired one please ._.

reef galleon
#

How can I show another player's money using placeholder?

junior musk
#

use the ParseOther Expansion

reef galleon
#

I have an error . Can I use an example?

#

%parseother_Destin_vault_eco_balance%

#

When error?

#

Destin - nickname

brisk coral
#

%parseother_{Destin}_{vault_eco_balance}% try this @reef galleon

reef galleon
#

Thanks

#

Work

wooden delta
#

Guys ?

#

Is there any placeholder that shows like player with most kills ?

reef galleon
brisk coral
#

Switch the > to a <

#

Since rn you're checking if it's above

wooden delta
#

Is there any placeholder that shows player with most kills ?

#

?

#

??

reef galleon
brisk coral
#

You only need requirements on one, which is the one with priority 1

wooden delta
#

@brisk coral
Is there any placeholder that shows player with most kills ??

brisk coral
#

Can you not? You've asked the question, now wait for some to answer

austere hawk
#

@wooden delta Google it

#

Google is you're best friend

wooden delta
#

Uncle Google

#

bruh

#

I didn't find it

bronze bison
#

There isn't one currently.

#

You can probably get one using leaderboard plugin afaik.

trim mist
#

Yeah since play kills are stored via statistics those only work for online players.

grand musk
#

well everything is working fine no errors and i get %player%

#

like it doesnt really work well

#

anything known at this point?

#

i use join tags and chat

warm topaz
#

to get the name player name, use %player_name%

#

if the plugin support papi

grand musk
#

why is the default config then %player% xD

warm topaz
#

join tags and chat
Deluxe plugins made by clip?

grand musk
#

yes

warm topaz
#

DChat will use %player_name%
/papi ecloud download Player
/papi reload

#

rest should work with %player%

grand musk
#

hmm weird why the default in the configs is %player%

#

let me try %player_name%

warm topaz
#

iirc dtags doesnt have papi support in the config, but could be wrong
never used djoin myself

grand musk
#

nope still nothing

turbid tide
#

servus what are you trying to do and doesn't work?

grand musk
#

uhm basically this

#

hmm

#

cant share screenshots

#

i want to use the variable player name

turbid tide
#

in what plugin?

grand musk
#

so i can use the %plater% or something

#

deluxechat join and tags

turbid tide
#

you will need PlaceholderAPI installed

trim mist
#

%player_name%

turbid tide
#

and Player expansion as well

#

and use %player_name%

grand musk
#

it is installed and hooked

#

%player_name%
@trim mist doesnt work for me

turbid tide
#

and you did: /papi ecloud download Player and /papi reload after?

trim mist
#

Then the expansion isn't actually loaded.

inland cliff
#

hey

#

@trim mist have to go in few mins, can you help?

tender vaporBOT
#

@inland cliff

Hey!

Please respect the rules, be patient and don't ping staff members!

inland cliff
#

Okay sorry

#

@mint fable have to go I feel so sorry and I know it goes against rules

tender vaporBOT
#

@inland cliff

Hey!

Please respect the rules, be patient and don't ping staff members!

trim mist
#

Why are you tagging if you're sorry and you know it's against the rules?

#

It's not helping anyone and it's making people not want to help you. You can leave and come back later for the answer.

stuck fiber
inland cliff
#

cause I have to go and I wont able to stay at pc for a long time so wanted to have an answer

stuck fiber
#

wait wrong paste

#

there we go the link is on now

sweet terrace
#

%essentials_nickname% is just showing as %essentials_nickname% - what on earth did i do wrong

trim mist
#

Make sure you have the expansion ^

sweet terrace
#

I did the commands and then restarted after changing my chat manager config but that didn't work

#

although it does say only 3 placeholder hooks. That's not meaning only 3 of them are being registered?

austere hawk
#

cube u still didn't os ChatReaction for me ._.

balmy marten
#

tag me in an hour

#

and ill do it

austere hawk
#

What are the 3 expansions @sweet terrace

sweet terrace
#

Not sure what the 3 were but I have the Expansions-Essentials jar in my PAPI expansions folder

balmy marten
vivid sparrow
#

O

brisk coral
#

O indeed

austere hawk
#

Done

#

Added some 2 new placeholders after cube sneaked on me creating more extras that my code already have ;p

balmy marten
#

o, i just saw the api and added a few that could be useful since i had it open

austere hawk
#

Yeah

#

A little bit weird is that why there is ReactionAPI class when you can just use ChatReaction.getDisplayWord() (static method from core plugin)

balmy marten
#

Β―_(ツ)_/Β―

brisk coral
#

Better to not use static

balmy marten
#

@austere hawk cleaned it up a bit, as brackets didn't line up and there was a random return null in the middle. But seems latestWinner isn't working

#

possible i broke it whilst cleaning up

warm topaz
#

cube breaks something :()

brisk coral
#

Not a first

#

You should see his Barry commits

balmy marten
#

smh

warm topaz
#

hes trying his best leave him alone @brisk coral

balmy marten
#

dw thienbai, fixed it

#

was missing the listener and was in the wrong spot

austere hawk
#

At first i was like: wow, I would think if the PlaceholderExpansion implemented Listener

#

Actually no... ._.

vivid sparrow
#

xd

balmy marten
#

All cleaned up and released now

austere hawk
#

Ik already

#

πŸ‘

vivid sparrow
#

fc da dev

balmy marten
#

yeah nah

#

even updated the wiki

carmine veldt
#

nah yeah

balmy marten
#

thats how good i am

vivid sparrow
#

At least here I have access to custom emojis

#

smh fc

balmy marten
#

sue me

vivid sparrow
stuck fiber
vivid sparrow
#

checkpinspls readthedocs pins we need these @balmy marten

tender vaporBOT
#
FAQ Answer:

DeluxeTags showing in essentials chat:

  • Turn of the DeluxeChat option in the DeluxeTags config.
  • Turn off the format_chat option in the DeluxeTags config.
  • Replace all the %placeholders% (%deluxetags_tag%) with {placeholders} ({deluxetags_tag}).
  • Restart the server.
balmy marten
#

^

stuck fiber
#

I've done that bud

#

force_tags: false
check_updates: true
deluxe_chat: false
format_chat:
enabled: false

warm topaz
#

change the %% to {}

daring ether
#

what is this?

#

[20:17:39 ERROR]: [PlaceholderAPI] BattleLevels is currently using a deprecated method to hook into PlaceholderAPI. Placeholders for that plugin no longer work. Please consult [RobiRami] and urge them to update it ASAP.

brisk coral
#

Contact the author of the expansion and telll him to update his shit

balmy marten
#

Cough @steep thorn cough cough

brisk coral
#

Wait, wasn't that updated already? Guessing you're using an outdated af version or.. @daring ether

balmy marten
#

Last update was dec 2017

daring ether
#

BattleLevels 8.2.2

#

yes this plugin isn't update!

brisk coral
#

Oof then

#

Never knew that was Robin's spigot kek

steep thorn
#

This is a temporary fix

#

Update is currently not ready

cerulean ore
#

Any way to open players dat files located in the world config?

junior musk
#

yes with an nbt editor

#

but that's not placeholderapi related I guess

cerulean ore
#

Oh wrong chat lol mb

junior musk
#

x)

brisk coral
#

Bit confused as to why you're returning the same thing @cerulean ore ?

cerulean ore
#

Just wanted to make sure that it returned that same thing incase something happened

#

But I figured it out tho,

brisk coral
#

You don't even need JS for that

cerulean ore
#

I do because for some reason the math expansion doesn't seem to working on my version of featherboard

brisk coral
#

1.8 I'm guessing?

cerulean ore
#

Yeah

brisk coral
#

It has a restriction of 32 chars

#

Per line

#

So it messes it up

cerulean ore
#

Ah I see

sweet terrace
#

Message_Format: '{pl_prefix}{pl_suffix}%essentials_nickname%: {message}'

I didn't write it wrong right?

brisk coral
#

If that's esschat @sweet terrace use {essentials_nickname} or install ChatInjector and you'll be able to use %% placeholders

vivid sparrow
#

Chatinjector still use {} @brisk coral

brisk coral
#

Trash

sweet terrace
#

I'm using one called Chat Control and I've just installed ChatInjector and changed the config to {%essentials_nickname%} but now the actual chat is just showing {%essentials_nickname%} now

brisk coral
#

Remove the %%

sweet terrace
#

That's worked, thanks!

mint fable
#

@gleaming dome %essentials_fly% might work

#

not sure what it returns though

drifting nimbus
#

true and false in colors probably

weary olive
#

How do I make it so that a player needs a certain rank in PEX to buy something off of deluxemenus

#

i already have expression: '%vault_eco_balance% > 50000'

#

so they need 50k to buy it

#

now i just wanna make it so they have a certain rank to buy it

golden trench
#

Okay so in deluxe menus you can make it require a permission, just make it require a permission that only that rank can access

#

Heres an example

weary olive
#

Ok. Figured that would work as well. Can I just create a custom perm?

golden trench
#
  example:
    menu_title: '&cToken&oShop'
    open_command: tokenshop
    size: 45
    open_requirement:
      requirements:
        permission:
          type: has permission
          permission: zedshop.toggle
          deny_commands:
          - '[message] You dont have permission to open the example menu'```
#

Yes you can

#

As long as the group has it πŸ™‚

weary olive
#

Awesome. Thanks!

golden trench
#

No worries mate

weary olive
#

Wait I have one more issue

#

So lets say I have 4 ranks. Rank 3 inherits rank 2's perms, rank 2 inherits rank 1's perms, and rank 1 inherits rank 0's perms

#

I'd like to make it so that rank 2 can buy this item from the deluxe menu, but not rank 3, even though rank 3 inherits the perms.

golden trench
#

Do you use pex or luckperms

weary olive
#

Pex

golden trench
#

Okay is it a prisons /rankup system?

#

or something similar

weary olive
#

Just survival

golden trench
#

How do people rankup

#

Is it a command?

weary olive
#

There are 3 default ranks you can buy from an NPC that opens my rankup deluxemenu

#

which runs the command

golden trench
#
/pex user %player% add example.permission
And then make the rank up to rank3 use the command
/pex user %player% remove example.permission```
#

Im trying to use PAPI-TokenEnchant to setup my placeholders for TokenEnchants
The issue is that when I use them, it only displays 0, everywhere
Im not sure if I am using the placeholers wrong or something?
For example, if I want it to display the current level of haste on my pickaxe, is %tokenenchant_Haste_level% the right placeholder?

weary olive
#

Ok

#

one last thing

plush mica
#

I need some help,

#

FactionsScoreboard seems to give me an error and it messes up all of the Placeholders when it's broken.

unique solar
#

Does PlaceholderAPI have a thing for how large the worlds are in memory? So like if my overworld is 1GB nether is 1GB and end is 1GB it will output 3GB?

#

If it does I cant find it on the wiki I would assume it would be under stats or server

covert ermine
#

hey how come placeholderapi stuff dont work for me

#

recently.

#

%vaulteco_balance%

#

STuff like that

#

it used to work liek a month ago

#

Anyone know why it stopped working?

brisk coral
#

%vault_eco_balance% and make sure you have the right expansion

covert ermine
#

oh wow

#

How come these dont work for me:
%statistic_time_played%
%statistic_player_kills%
%statistic_deaths%
%statistic_mine_block_SUGAR_CANE%

#

@brisk coral

#

NVM GOt it thx

unique solar
#

If anyone here could help me with my question please ping me

covert ermine
#

SO I got it to work BUT its not tracking the actual statistic of mined block sugar cane or player kills or deaths

austere hawk
#

Actual?

covert ermine
#

%statistic_mine_block_SUGAR_CANE% doesn't go up

#

when i Mine sugarcane

#

please tag me if anoyne finds a way to do this

uncut pilot
#

whilst finishing up my menu and having it all work perfectly fine. I began working on new menus and for some reason the menu broke. what i mean by broke is that it removes random items and disables commands. https://hastebin.com/alolucecon.cs is the menu (not full menu for security reasons but its exactly the same throughout the menu) and this is the MAIN javascript used ```js
var permission = "%askyblock_has_island%";
var permission2 = parseInt("%askyblock_team_size%");

function anything() {
if (permission == "yes" || permission2 >= 2) { return "yes"; }
else { return; }
}
anything();```

brisk coral
#

Jesus

#
var island = "%askyblock_has_island%";
var size = "%askyblock_team_size%";

function island() {
  return island == "yes" || size >= 2 ? "Yes" : "";
}
island();
uncut pilot
#

is that why its breaking

#

?

sharp jay
#

try it

brisk coral
#

Console errors?

#

Uh what

uncut pilot
#

i didnt mean to send the first one

brisk coral
#

Change the function to islands()

uncut pilot
#

menu doesnt open now

brisk coral
#

Parse both the placeholders

#

And see if it works

uncut pilot
#

script error

unique solar
#

How would I use %server_unique_joins% in a plugin that im making? I have a plugin that displays a message I set in a config to players who type /info and I want to add unique joins to that info command but dont know how to use this api.

brisk coral
#

Parse the message and use the %% placeholder within it

#

PlaceholderAPI.setPlaceholders(player, String);

uncut pilot
#

Frosty I get script error

brisk coral
#

Autumn remove the || size >= 2

#

And see if that works

uncut pilot
#

so its just return island == "yes" ? "yes" : "";?

brisk coral
#

Yea

uncut pilot
#

ok

#

script Error

brisk coral
#

Remove your javascript expansion and redownload it

uncut pilot
#

ok

#

Still get Script Error

#

Frosty I chucked the js into yamlchecker and it gives this in return

      return island == "yes" ? "Yes" : "";
                                     ^```
unique solar
#

I wish there was a guide on how to use this api

brisk coral
#

There is a guide

uncut pilot
#

Frosty. I still get Script Error

austere hawk
#

Can you show your full code again?

uncut pilot
#

@austere hawk me?

brisk coral
#

Show me how you're putting it in the .js file

uncut pilot
#
var island = "%askyblock_has_island%";
var size = "%askyblock_team_size%";

function island() {
  return island == "yes" ? "Yes" : "";
}
island();```
#

which is what you told me to put it as

brisk coral
#
var island = "%askyblock_has_island%";
var size = "%askyblock_team_size%";

function islandRequirements() {
  return island == "yes" ? "Yes" : "";
}
islandRequirements();
#

Try this, might be cause the function is the same as var, but not sure

uncut pilot
#

okay

#

now it returns yes

brisk coral
#

And if you don't have an island

uncut pilot
#

let me see

brisk coral
#

And?

uncut pilot
#

returns nothing

#

but opens the first menu

brisk coral
#

That's correct now, now try this

var island = "%askyblock_has_island%";
var size = "%askyblock_team_size%";

function islandRequirements() {
  return island == "yes" || size >= 2 ? "Yes" : "";
}
islandRequirements();
#

parse it and see if it works

uncut pilot
#

returns a blank chat πŸ™‚

brisk coral
#

Nice

#

Also change the Yes to yes, since I saw you using that in the config

uncut pilot
#

yeah I did

brisk coral
#

great

uncut pilot
#

Also with DeluxeMenus for some reason The filler blocks in my config arent showing

brisk coral
#

You've got a requirement from what I saw, why's that?

uncut pilot
#

priority: 1 and 2

brisk coral
#

paste the config again

uncut pilot
#

item1 and item2 dont show

brisk coral
#

switch the priorities

uncut pilot
#

so 2 becomes 1 and 1 becomes 2?

brisk coral
#

Yea

uncut pilot
#

Still shows nothing

#

i can try setting it as priority 2 and have no view requirements so it just shows and whatever item has priority 1 over rights it?

#

but only have 1 item1:

#

nope it still doesnt work xd

brisk coral
#

Do the rest of items show?

uncut pilot
#

Yeah

#

everything else shows but the glass panes

#

and it broke again

#

without doing anything

austere hawk
#

Is there a placeholder for your amount of deaths?

#

And the most amount of deaths /which player

brisk coral
#

first yes, second no

#

-papi statistic

austere hawk
#

Awe.. thanks tho

austere hawk
#

How to i wipe a players k/d?

warm topaz
#

in the world playerdata folder. idk if u can delete a statistic 1 by 1. but u can wipe all the stats by just deleting the files

warm oriole
#

unless u use a separate plugin for kills/deaths then no

#

or you have to delete all their statistics = data

austere hawk
#

if i delete the player data will their enderchest and inv go?

warm oriole
#

yeah lol

#

that's why I said

#

statistics = data

junior musk
#

I think you should be able to open your stats file with a NBT Editor and remove the data you want

austere hawk
#

i deleted all the the files in the playerdata & stats folders in the world directory, but even after multiple restarts its still showing what it did b4.

#

%statistic_player_kills%

#

%statistic_deaths%

warm topaz
#
/papi ecloud download Statistic
/papi reload```
unique solar
#

So although no one could help me on how to use placeholder-api I decided to make my own thing that goes like this, I would still really like to learn how to use this api for future project though

public List<String> getMessageLines() {
        Server server = Bukkit.getServer();
        int unique = server.getOfflinePlayers().length;

        if (!YMLConfig.contains("rows")) {
            ArrayList<String> obj = new ArrayList<String>(Arrays.asList("Text1", "Text2"));
            YMLConfig.set("rows", obj);
        }
        ArrayList<String> info = new ArrayList<String>();
        for (String s : YMLConfig.getStringList("rows")){
            s = s.replaceAll("%unique_join%", String.valueOf(unique));
            info.add(s);
        }
        return info;
    }
vivid sparrow
#

What are you trying to do?

unique solar
#

I was told there is a guide for this but was not linked

#

I wanted to use the %server_unique_players% but was not helped so I had to make my own thing

vivid sparrow
#

PlaceholderAPI.setPlaceholders(player, "String with %placeholders%")

unique solar
#

what is the player parameter for?

vivid sparrow
#

You have to pass a player argument if the placeholders you want to parse require it

#

For server placeholders you can just pass a null value

unique solar
#

so this string would output the number of how many unique players join my server?
String count = "Unique Joins: %server_unique_joins%"
count = PlaceholderAPI.setPlaceholders(null, count);
if not Im still confused about this lol

peak cape
peak cape
#

@vivid sparrow ai idee?

tender vaporBOT
#

@peak cape

Hey!

Please respect the rules, be patient and don't ping staff members!

honest nacelle
#

Hello how can I "display" all People from all Worlds?

#

With the api

#

Is there a way?

#

@sharp jay can you help me?

tender vaporBOT
#

@honest nacelle

Hey!

Please respect the rules, be patient and don't ping staff members!

honest nacelle
#

Oh

covert ermine
#

Hey did deluxechat remove placeholders.yml in the config section?

#

example:

layouts:

<placeholder without %>:

has_value: '[%value%]'

no_value: '%value%'

'factions_faction':

has_value: '&8[&f%value%&8]'

no_value: '%value%'

#

Like this?

#

@final shadow did u remove this functionality from the plugin?

tender vaporBOT
#

@covert ermine

Hey!

Please respect the rules, be patient and don't ping staff members!

balmy marten
shut nova
#

hello, im new to coding and i ran into this problem when trying to create an expansion within my plugin. java: package me.clip.placeholderapi.expansion does not exist

#

i did import papi-2.10.4.jar

brisk coral
#

@unique solar You always need to parse a player, it will still show the correct values, but that's how it's made

#

@shut nova Use maven instead of manually importing the jar

uncut pilot
#

Since the %pinger_online% player holder returns Online and Offline. how would i make it so it says ONLINE and OFFLINE within a js?