#placeholder-api

1 messages · Page 58 of 1

carmine veldt
#

means ur firewall or something is blocking it

glad ingot
#

how do i solve this

carmine veldt
#

are you on windows or linux

#

or a shared host

glad ingot
#

I am using ubuntu pterodactyl

carmine veldt
#

does pterodactyl have firewall rules for the containers it creates

#

or is it just the firewall on the host system

glad ingot
#

I have no idea

carmine veldt
#

neither

#

if it's rules per container u need to allow 443 on those containers and the host, otherwise just 443 on the host

#

I'd check ptero's control panel first for any settings relating to a firewall, maybe try googling "placeholderapi not working pterodactyl" or something see if anyones had the same issue

#

if not u gotta allow 443 thru iptables/ufw

#

I feel like papi works fine out of the box on ptero following the install instructions on ptero's docs so you or whoever installed it must've done some extra firewall rules or ptero has added a feature since I last used it (which was years ago so possibly)

glad ingot
#

port is already added

443 (v6) ALLOW Anywhere (v6)

carmine veldt
#

r u using ipv6

#

u need to allow ipv4

glad ingot
#

There are 2 443 ports

#

443 ALLOW Anywhere
443 (v6) ALLOW Anywhere (v6)

carmine veldt
#

hm

#

just like

#

ufw disable for a sec

#

and see if it works

glad ingot
#

not work

#

Let's try to ping what is the IP of the server it is trying to connect to.

restive mica
#

Is there a placeholder in Statistic that counts how many player have placed blocks?

restive mica
#

I don't want to install a plugin just for one small feature.

jagged light
#

Hi, why isn't this bookmark working when I try to use it?

%server_countdown_<SimpleDateFormat>_<time>%

#

When I run the command: /papi parse me %server_countdown_dd.MM.yyyy_01.12.2025% It gives me an invalid date result

modern light
#

Hello, I downloaded the Ultimate Guild plugin and I created my guild, but it does not appear next to my username or in the tab. Why? Thanks in advance.

turbid tide
#

in your tab and chat. or wherever else you want to display the guild name.

turbid tide
#

You can try /papi parse me %server_countdown_dd.MM.yyyy HH:mm_01.12.2025 00:00%

tidal plover
#

How do I format playertime as (Hour, Minutes), without the minutes being the full playtime, and instead have it work as a digital clock?

turbid tide
tidal plover
#

"%playertime_time_hours"

turbid tide
restive nova
#

Do papi support async return value? I'm getting value from my database and I don't want it to run on main thread

burnt cypress
#

who can help me downlaod chatchat

turbid tide
burnt cypress
turbid tide
burnt cypress
turbid tide
#

send the startup logs

burnt cypress
#

check dm

#

btw when i put it to my plugins folder it doesnt creating folder named chatchat

#

and when i start i cant see in my console chatchat

turbid tide
turbid tide
burnt cypress
turbid tide
#

not the API

burnt cypress
#

ok alr

#

yep woker ty so muich

rustic umbra
#

a

tulip crater
#

Anyone know if there's a way to grant a permission (or run a command) based on the value of a placeholder? For example:

  • Placeholder tracks zombie kills
  • Player kills 100 zombies
  • Player receives a permission, something like: tracker.zombie.100
serene atlas
#

there are plugins that can run commands though when the placeholder reaches a certain value and so you could

check_zombie_100:
  type: player_kill_mob
  conditions:
    - '%statistic_kill_entity_zombie% == 100'
  actions:
    - 'console_command: lp user %player% permission set tracker.zombie.100 true'```

conditionalevents, trmenu, or deluxemenus are a few examples
tulip crater
serene atlas
plucky prawn
#
        gem:
          type: javascript
          expression: "%liteeco_balance_gems% >= 500"

i wanted to make a gem shop but my plugin doesnt return with 500 but 500.00 how could i do that nothing works ): and im not that smart pls help

#

@idle coral

tender vaporBOT
proper leaf
#

helloo, why the %deluxetags_tag% placeholder is not working in chat

#

?

tender vaporBOT
turbid tide
proper leaf
turbid tide
#

If it still doesn't work, run /papi dump and send the generated link here.

turbid tide
proper leaf
#

yes

#

I mean the placeholder in the chat doesn't work.

#

only show this %deluxetags_tag%

turbid tide
#

If you try /papi parse me %deluxetags_tag%, does it parse correct?

proper leaf
#

it appears in chat when ii do this only %deluxetags_tag%

#

it still doesn't work

turbid tide
proper leaf
#

yes

turbid tide
#

It seems that the plugin didn't start at all

proper leaf
#

❤️ PlusOne

frozen meteor
#

Hey, I'm having an issue with ajLeaderboards and PlaceholderAPI. Sometimes when a user leaves there seems to be a thread blocking issue caused by an interaction between ajLeaderboards 2.10.1 (release) and PlaceholderAPI-2.11.6.

The developer of ajLeaderboards says its likely related to bukkit itself and recommended me to ask here if more is know about this problem. Is there any way I can fix this?

Partial log:
https://paste.helpch.at/zipuvaboku.md

Full log:
https://paste.helpch.at/nibebemiko.md

vivid sparrow
#

I also see a mention of denizen script in your log.

glossy dock
#

im trying to build a Bank GUI for my skyblock server with deluxe menu. my config: items:

'whole':
material: CHEST
amount: 64
slot: 10
priority: 1
update: true
update_interval: 0.5
display_name: '&aDein gesamtes Guthaben'
lore:
- ''
- '&7Aktuelles Bankguthaben: &6%Bank_bskyblock_island_balance%'
- ''
- '&7Einzahlungsbetrag: &6%vault_eco_balance_commas%$'
- ''
- '&eKlicke hier, um das Geld einzuzahlen!'
left_click_commands:
- '[player] is bank deposit all'
- '[close]'

#

but ingame the format of the two numbers is not the same. can i adjust that? one is 0.000,00$ and one is 0.000$

serene atlas
glossy dock
#

@serene atlas doesnt work for me, but i set the Format of the Formatter expansion in the placeholderAPI config to de-de, now it displays e.x. 15.900,41 if i do "/papi parse me %formatter_number_format_{bank_bskyblock_island_balance_number}%" // Before i used "/papi parse me %bank_bskyblock_island_balance_number%" and got 15900.41 // So the format is good now, but now i still need to add the math to divide it by 2. Is it even possible to use multiple placeholders in each other? i would need the Formatter + Math + Bskyblock

glossy dock
#

This is not a bug, but a normal behaviour of PlaceholderAPI and also not a PlaceholderAPI issue directly.```
#

i found that comment online, so i think it wont be possible what im trying to do :/

echo canyon
#

%math_0:_{jobsr_user_jexp_rounded_Fisherman}*100/{jobsr_user_jmaxexp_Fisherman}%

#
[20:04:24 WARN]: [PlaceholderAPI] [math] Invalid Placeholder detected!
[20:04:24 WARN]: [PlaceholderAPI] [math] Placeholder: %math_{jobsr_user_jexp_rounded_Fisherman}*100/{jobsr_user_jmaxexp_Fisherman}%
[20:04:24 WARN]: [PlaceholderAPI] [math] Cause:       '0*100/0' is not a valid Math expression.
#

can someone help?

sacred orbit
#
  survival:
    material: paper
    custom_model_data: 16000
    slots: [1,2,3,4,5,6,7,10,11,12,13,14,15,16]
    item_flags: 
    - HIDE_ATTRIBUTES
    display_name: '&a&lSurvival'
    lore:
      - '&7Túlélő szerver sok-sok extrával:'
      - '&7Vásárlás, ládanyitás, battlepass'
      - ''
      - '&fSzerver verzió: &a&l%server_version%'
      - ''
      - '&fCsatlakozz a többi &a&l%bungee_survival% &fjátékoshoz!'
    actions:
      - '[PROXY] survival'```And it says: Server version: 1.21.10
and the server is only 1.21.8

what is this about?
and this deluxehubreloaded plugin
turbid tide
#

The return of {jobsr_user_jmaxexp_Fisherman} is 0.

turbid tide
turbid tide
turbid tide
sacred orbit
turbid tide
# sacred orbit purpur

This is a strange issue. It should take the version directly from the server. Can you send a screenshot of the item where it shows the version?

turbid tide
#

in game

sacred orbit
tender vaporBOT
tender vaporBOT
turbid tide
# sacred orbit okey dm send

Hi. I saw the message and I looked trough the code but this issue is unfortunatelly stomping me. I can not figure out why this would return the wrong version.

turbid tide
sacred orbit
#

me fixed

#

old code
- '&fSzerver verzió: &a&l%server_version%'
new code:
- '&fSzerver verzió: &a&l%pinger_version_172.18.0.1:25568%

turbid tide
#

Ah. You've swapped the placeholder. Alright. Thanks for sharing.

white reef
#

I've tried deleting and re-downloading it multiple times, but the error spam is still happening. How can I fix this?

[18:06:53 ERROR]: [PlaceholderAPI] Failed to load expansion file: D:\VietReam New\AVietRealm\Spawn\plugins\PlaceholderAPI\expansions\Expansion-checkitem.jar
java.lang.IllegalStateException: zip file closed
        at java.base/java.util.zip.ZipFile.ensureOpen(ZipFile.java:826) ~[?:?]
        at java.base/java.util.zip.ZipFile.getEntry(ZipFile.java:290) ~[?:?]
        at java.base/java.util.jar.JarFile.getEntry(JarFile.java:505) ~[?:?]
        at java.base/java.util.jar.JarFile.getJarEntry(JarFile.java:460) ~[?:?]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:209) ~[leaf-api-1.21.4-R0.1-SNAPSHOT.jar:?]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:557) ~[?:?]
        at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:169) ~[leaf-api-1.21.4-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:144) ~[leaf-api-1.21.4-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.plugin.entrypoint.classloader.group.SpigotPluginClassLoaderGroup.lookupClass(SpigotPluginClassLoaderGroup.java:43) ~[leaf-1.21.4.jar:1.21.4-524-8757c36]
crystal coral
#

Heya, I'm encountering crashes with the Math expansion
/%math_9^9^9^9^9^9^9^9^9^9^9^9^9^9% got this from the logs, looks like a stackoverflow when It cant compute it.

Does anyone know a fix for this?

Crashstack: https://hastebin.nl/IkXo8xF

tired grove
#

Hello, I can't download the PlaceholderAPI
papi ecloud download vault extension.
[14:31:00 INFO]: Failed to find an expansion named: vault

#

and any extensions are not downloaded

tender vaporBOT
balmy marten
#

We did make a change to the api but I don't believe it would have caused this

tired grove
balmy marten
#

What happens when you run /papi list all

tired grove
#

I can't download anything using the papi ecloud download command.
But I can go to the website and download.

#

papi list all
[14:47:32 INFO]: There are no placeholder hooks active!

balmy marten
#

ah sorry /papi ecloud list all

tired grove
#

papi ecloud list all
[14:48:20 INFO]: No expansions available to list.

carmine veldt
#

what expansion are you trying to donwload?

#

ah vault

tired grove
#

any at all

balmy marten
#

My guess is your server is blocking connections to our api but we're just confirming that

tender vaporBOT
tired grove
#

Now /papi ecloud download CheckItem
but he still doesn't want to

carmine veldt
#

Yeah just tested it on localhost and ecloud is working fine

#

are you running locally or on a host?

tired grove
#

Local

#

there is no hosting

carmine veldt
#

disable windows firewall in settings

#

temporarily to see if that fixes the issue

tired grove
#

I disabled it anyway.

papi ecloud download CheckItem
[14:52:24 INFO]: Failed to find an expansion named: CheckItem

carmine veldt
tired grove
#

yes

carmine veldt
#

there must be something on your computer blocking outgoing traffic from spigot's java process

#

usually is windows firewall, just disable all anti virus and firewall software you have

tired grove
#

If I live in Russia, can Russian IP addresses be blocked?

#

I tried it through VPN and it works.

carmine veldt
#

I mean

#

if you can access it in the browser then that shouldn't be it

#

unless you have a vpn in your browser already

#

if your country has internet censorship your ISP's dns may block certain things, but whatever browser you have may use a different dns

#

so you could try change your system dns aswell

#

but yeah we don't block any countries on our end

tired grove
#

I have a problem with
gradle
I'm adding
maven { url = Placeholder URL
// PlaceholderAPI - use the official repository instead of a local JAR
compileOnly 'me.clip:placeholderapi:2.11.5'

But it doesn't want to accept and connect to my project

quasi tangle
#

x

#

i need help with pai

#

papii

#

some logs spams my console

#

i cant send pastebin here

rigid vigil
#

do u hawe placeholder to welocity?

tired grove
#

Could you please upload the current PlaceholderAPI Gradle maven plugin repository to GitHub? The link is outdated and doesn't work.

lyric hollow
#

anyone know how any of these work?

%distance_x1,y1,z1[,x2,y2,z2][,decimals]%
%distance_player1[,player2][,decimals]%
%distance_player[,x,y,z][,decimals]%
%distance_UUID1[,UUID2][,decimals]%
#

i cant figure it out it doesnt work when parcing

#

no matter what i do it just returns -1

hollow cipher
#

Hi, I'm using the localtime expansion and it worked at first but now I'm getting errors that it can't gather my timezone and will use the default instead. Am I doing something wrong or is there an issue with the api rn?

hollow cipher
#

Its doing this for others as well now

formal hemlock
#

How would I display the name of the server or world like Example if the name of my server or world is called Event, Test, or Build World how would I display that I have tried every server and world placeholder that would make sense.

trim flicker
#

where are you displaying it?

formal hemlock
strange mortar
#

For server use
%server_name%

small drum
#

eCloud Manager is not enabled! To enable it, set cloud_enabled to true and reload the plugin. how to fix?

strange mortar
#

this is papi config.yml

cloud_enabled: true
cloud_sorting: "name"
boolean:
  'true': 'yes'
  'false': 'no'
date_format: MM/dd/yy HH:mm:ss
detect_malicious_expansions: true
debug: false```
#

your error says cloud_enabled

#

which should be by default true

small drum
# strange mortar If your /plugins/placeholderapi doesnt have a config idk, but, for default it is...

check_updates: true

cloud:
enabled: true
base_url: "https://api.extendedclip.com/"
timeout: 1

cloud_sorting: name

boolean:
'true': '&a✔'
'false': '&c✖'

date_format: MM/dd/yyyy
debug: false

expansions:
localtime:
date_format: dd/MM/yyyy hh:mma

player:
ping_value:
high: 100
medium: 50
direction:
north: N
south: S
north_west: NW
north_east: NE
east: E
south_east: SE
west: W
south_west: SW
ping_color:
medium: '&e'
high: '&c'
low: '&a'

server:
tps_color:
high: '&f'
low: '&f'
medium: '&f'
server_name: LeonCraft

vault:
baltop:
check_delay: 30
cache_size: 100
enabled: false
formatting:
thousands: k
millions: M
billions: B
trillions: T
quadrillions: Q

#

@strange mortar

restive mica
candid jay
#

checkitem_amount_custommodeldata doesn't work

#

java.lang.IllegalStateException: No numeric custom model data

formal hemlock
junior musk
formal hemlock
junior musk
modest python
#

hi, i have a problem with %bungee_total% placeholder api, it keep showing zero player while there are a couple players in the game, it shows numbers in main lobby server , it also shows in pvp server, but it wont show in economy server i do not know why, been fixing all days and its still show zero. ( i use velocity btw ) i configure everything right but it only show on other of my backend server except the economy server. pls help me

#

my bungee messaging is enabled in velocity's config

jaunty barn
#

is there any verified placeholder to get current unixtime/timestamp? the placeholders I've found all show simpla date format and I don't want to download unverified placeholders to do so.

#

I want it in an unformatted form.

jaunty barn
#

the javascript placeholder would help but it's unsafe/unverified

brave oar
#

Why does this placeholder
%server_countdown_dd.MM.yyyy_26.12.2025%

Just return invalid date?

turbid tide
brave oar
#

That works, thanks

teal ether
#

I'm using the plugin on 1.21.10 and I'm having trouble with the multiverse-core extension. When I hit download from command it tells me that it does not exist. And if I download it manually, it throws an error. Has this happened to anyone?

https://paste.helpch.at/karociruca.rb

plain flame
#

i need help component for custommodel data in deluxe menus is not working the server is on 1.21.8

warm topaz
warm topaz
karmic saddle
#

does anyone know how to get %health% to work? I tried installing statistics, player, and playerstats, but the plugin don't seem to return anything when i typed /papi parse [player name] %health%

#

im on paper 1.21.4 and is using placeholderapi 2.11.7

strange mortar
karmic saddle
#

oh ye i tried doing that, but it seem like advancedenchants hated that

#

so now im stuck with only being able to use %health%

strange mortar
karmic saddle
#

good luck lol

#

but usually something like "%a_placeholder_name% = true/false : %allow/stop%" should work

#

*for the config

strange mortar
#

uhm, this plugin has a lot of mechanics

karmic saddle
#

yeeeah and its poorly documented

#

but i assume %health% don't work at all, and %player_health% is essentially the replacement?

#

maybe they didnt update their wiki or sum

#

ohhh ye found this

#

so ig thats not a thing

dusk ivy
#

Hi!

I have a problem with my Deluxemenu, probably since I update my server from 1.19.4 to 1.21.4

Can someone help me to solve it ? I'm ready to pay 🙏

craggy kettle
#

is there anyone to help me?

%parseother_{duels_match_opponent}_{duels_match_opponent_health}%

i wanna nest 2 placeholders toghether, but the way i sent wont work, is there any way to do it?

pseudo cloud
#

I have one problem, whenever i download bungee expansion in papi and try to reload it, it dosent gets reloaded. Server ver: 1.21.8 (Folia)

cinder orchid
#

possible to have player expansion without gamemode

warm topaz
warm topaz
tender vaporBOT
silver escarp
#

I’m trying to display the Factions tag in chat through Essentials using the PAPI placeholders, but I haven’t been able to get any of the placeholders to function properly. I’m currently running FactionsUUID on version 1.21.10, and I’ve tested multiple placeholders including %factionsuuid_faction_name%, {FACTION}, [FACTION], %factionsuuid_faction_tag%, and several others, none of which have worked so far.

mellow valley
#

Hi, I have a problem: a message is being spammed in the server console, and it's annoying. If anyone knows what's causing this or has experienced it, could you please help me?

#

[18:50:02 INFO]: [Progress] Couldn't get the number from inactive. The progress will be 0%.
[18:50:03 INFO]: [Progress] Couldn't get the number from inactive. The progress will be 0%.
[18:50:04 INFO]: [Progress] Couldn't get the number from inactive. The progress will be 0%.
[18:50:05 INFO]: [Progress] Couldn't get the number from

timber root
#

could u ad the extension for ultimatetemas

unkempt quest
#

[22:28:53 WARN]: [PlaceholderAPI] [math] Placeholder: %math_0:{mmocore_cooldown_bound_4}+1%
[22:28:53 WARN]: [PlaceholderAPI] [math] Cause: 'No Skill Bound+1' is not a valid Math expression.
[22:28:54 WARN]: [PlaceholderAPI] [math] Invalid Placeholder detected!
[22:28:54 WARN]: [PlaceholderAPI] [math] Placeholder: %math_0:
{mmocore_cooldown_bound_7}+1%
[22:28:54 WARN]: [PlaceholderAPI] [math] Cause: 'No Skill Bound+1' is not a valid Math expression.
[22:28:56 WARN]: [PlaceholderAPI] [math] Invalid Placeholder detected!
[22:28:56 WARN]: [PlaceholderAPI] [math] Placeholder: %math_0:{mmocore_cooldown_bound_5}+1%
[22:28:56 WARN]: [PlaceholderAPI] [math] Cause: 'No Skill Bound+1' is not a valid Math expression.
[22:28:58 WARN]: [PlaceholderAPI] [math] Invalid Placeholder detected!
[22:28:58 WARN]: [PlaceholderAPI] [math] Placeholder: %math_0:
{mmocore_cooldown_bound_6}+1%
[22:28:58 WARN]: [PlaceholderAPI] [math] Cause: 'No Skill Bound+1' is not a valid Math expression.

I am getting spammmmmed this in console - think it has something to do with a HUD - know if this is hud side or api side for me to fix ?

warm topaz
#

%mmocore_cooldown_bound_7% is returning 'No Skill Bound' instead of a number

#

so math expansion is failing

#

u need ur placeholder to always return a number

unkempt quest
warm topaz
#

find out why mmocore is returning no skill bound

onyx token
#

hello, i'm wondering if anyone had this issue before, whenever i do /papi parse me %player_name% or any other placeholder, it would return player_name without the %%, the placeholder works fine everywhere other than chat

#

another thing is that console can parse the placeholders correctly, so sending same command in chat wouldn't work but it would work in the console

onyx token
#

but not related i think its something else

#

something is replacing when two % % are received in chat

potent sundial
#

%server_version% not working and other basic PAPI holders

tiny sail
#

at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:155) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1450) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:176) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:129) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1430) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1424) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:139) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1381) ~[paper-1.21.8.jar:1.21.8-60-29c8822]
at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1389) ~[paper-1.21.8.jar

#

why is this happening

delicate drift
#

Hi everyone!

I’m trying to create a placeholder that shows a player’s kills, but I only want it to count kills in my Survival worlds (world, nether, end).
Right now, if I use %statistic_player_kills%, it counts all kills, including ones in my KitPvP world, which I don’t want included.

Is there a way subtract the kills from the KitPVP world, or perhaps only add up the kills from the survival worlds using Simple Mulitverse Stats?
I am aware of the math expansion, but I have not found a way to get it working with this issue.

I would appreciate any help. Thank you so much!

marble sorrel
potent sundial
#

3.12 17:35:53 [Server] INFO [PlaceholderAPI] Placeholder expansion registration initializing...
03.12 17:35:53 [Server] INFO [PlaceholderAPI] Fetching available expansion information...
03.12 17:35:53 [Server] ERROR [PlaceholderAPI] Failed to load class files of expansion.

coral ice
#

will an1 help me to link npc to world

#

plese

fluid heron
#

I am trying to instal the vault placeholder but when i reload it is says 0 placeholder hooks registered!

#

Can someone help how i can fix that

muted plank
#

@balmy marten Hey, i want to upload an expansion to eCloud, can i get help with that?

abstract spade
#

Hi! Is there a way to add {player:{name:"Bobicraft"}} to a variable? My idea is to put that head in a menu for users; if they use /title @a title {player:{name:"Bobicraft"}} they'll understand what it does.

#

It displays the player's head wherever you put the variable, but I can only use it with vanilla commands and I'd like to do it with plugins.

sharp jay
muted plank
#

He doesn't accept frined requests

sharp jay
muted plank
#

Thanks

sharp jay
#

for your expansion

sour bolt
#

Hello, Is it possible to place one placeholder inside another?

#

Exemple:

#

/papi parse me %formatter_number_format_[pt-BR:#,##0.00_essentials_baltop_balance_2%

warm topaz
#

if the expansion supports it, then yes. use {} on the inner placeholder

fringe sundial
#

@balmy marten @carmine veldt why you don't care about the security of eCloud? i saw the commits of the new version of PAPI on github, and there was a hash check, which is needed now! recently my friends discovered BuildBattlePro with obfuscation in their expansions folder, why haven't you released an update yet?

The production API has been temporarily updated to only return the latest version of each verified expansion, preventing access to older versions while additional protections are developed

the API is still returning the latest versions, although 3 weeks have passed, apparently no work is underway lmao

Additional platform safeguards and automated checks are being implemented to enhance expansion review and threat detection.

you promised new additional checks, but they are still missing, there is no new info from you, there are no commits - are you doing something, or you really not care about the server admin community? you haven't been able to take care of your security for many years, this time you just decided to leave only the latest versions in the API, and that's it - is this a solution?

tired grove
#

Could you please provide a link for Gradle?
I can't connect PlaceholderAPI.
I need Gradle and Maven.

warm topaz
tired grove
#

404︱Resource not found
Looking for a dashboard?

warm topaz
#

yes, for viewing

#

actual repo when adding to gradle is without /#/

tired grove
#

Thanks, it worked.

#

I thought my plugin would be left without Placeholder.

#

Thank you

agile bramble
#

hello, is there some known papi expansion that can get paceholders even for offline players? Ideally where I can save custom things? I'd like to get like player group from luckperms etc if they're offline

balmy marten
# fringe sundial <@161022752923320320> <@181675431362035712> why you don't care about the securit...

Hi Axi, excuse the shortness of my reply as I'm on mobile.

You're right, we do have a version of papi with has checks. But as papi is dependant on by so many people it's important to test changes before they go live, especially something such as this which could cause issues if false flags appeared.

Regarding the ecloud, a whole new ecloud is currently being written with a whole load of updates including that version verification. Thing just take time, do keep in mind we are volunteers, we are not paid, we have full time jobs.

BuildBattlePro was in my announcement and is in the list of hashes. It was removed from our CDN at the time of the announcement.

If you want to help get the hash checking version out, get your friends to give it a test. It can be downloaded from our Jenkins server.

fringe sundial
balmy marten
#

All good, just need to remember not everything we do is public

#

Here's an example of version verification running on the in dev ecloud

tender vaporBOT
fringe sundial
#

are there deadlines?

light tree
#

hey,
how to create a ecloud account?

limpid smelt
#

is there any placeholder for online people on the server and online people on the network?
like %proxyplayers_online% or %server_online%

hazy onyx
#

%bungee_server% and %bungee_online% i believe

carmine veldt
# fringe sundial are there deadlines?

Ideally in the next couple weeks, also to reply to your previous msg, we didn't do a public release for the papi version with the new commits as while the announced exploits were severe, the infected demographic was very small, too small that it's highly unlikely that the new release would've actually gotten onto these servers to prevent any major damage being done, which is why we reacted with just restricting the ecloud api versions to the latest instead

#

Next couple weeks for a new papi update hopefully, ecloud rewrite may be a little further off

#

however we do take the security on the ecloud very seriously and any time an exploit or vulnerable expansion has been brought to our attention it's been resolved very quickly

#

to be clear, the papi expansions in question were installed on a total of 77 servers I believe (out of ~300,000) which would include servers included in a bungee network, so the total networks would be less, and these were all concentrated in a region in russia, the recent attack was not a collective effort to target the entirety, it was a targeted effort against specific russian servers/networks using our plugin to install a malicious expansion

#

The expansion in question, was also not malicious in it's latest version, infected users specifically installed an older version of the expansion, someone specifically told them to download an older version which is why we restricted ingame/onserver downloading till the latest version till we release the new ecloud which allows for per-version verification of expansions

EDIT: also regarding buildbattlepro, it's not confirmed to be malicious, we removed it due to the obfuscation however

limpid smelt
hazy onyx
limpid smelt
strange mortar
light tree
#

Hey,
Can I get a ecloud account?

sharp jay
sharp jay
sharp jay
limpid smelt
#

Also, is there any way to make a discord channel that shows how many people are online on the network

limpid smelt
#

(there are "_" but they wont show on discord for some reason)

nocturne field
#

are there placeholders that show for instance in the lobby whos on survival?

narrow tulip
#

Hi, why doesn't the chat appear empty when I use %player_item_in_hand_name%? The same thing happens when I use %player_item_in_hand_data%.

pure mantle
#

Hello! Just had a quick question regarding the server countdown expansion for PAPI. Is there a way to change/specify the format of the displayed text? ie. if instead of showing 2w 5d 9h... if i wanted to just show 19 days would that be doable?

knotty pelican
#
[WARNING] Failed to download maven-metadata-placeholderapi.xml [https://repo.extendedclip.com/content/repositories/placeholderapi/]
[WARNING] Failed to download placeholderapi-2.11.6.pom [https://repo.papermc.io/repository/maven-public/]
[WARNING] Failed to download placeholderapi-2.11.6.jar [https://repo.papermc.io/repository/maven-public/]
agile bramble
strange stump
#

How do I get the player count, online status, etc of backend servers from another backend server? (the hub)

spark dome
#

my placeholderapi will not work for my minecraft server it is 1.8 verison and placeholderapi is 2.11.7 and 2.11.6 but i not working on my server i can't see the plugin

tender vaporBOT
balmy marten
spark dome
#

what do u mean with log? i am from denmark 🙂

#

i have a file

balmy marten
spark dome
#

PlaceholderAPI

Version: 2.11.7

Created by: extended_clip

Contributors: https://github.com/PlaceholderAPI/PlaceholderAPI/graphs/contributors

Issues: https://github.com/PlaceholderAPI/PlaceholderAPI/issues

Expansions: https://placeholderapi.com/ecloud

Wiki: https://wiki.placeholderapi.com/

Discord: https://helpch.at/discord

No placeholders are provided with this plugin by default.

Download placeholders: /papi ecloud

check_updates: true
cloud_enabled: true
cloud_sorting: "name"
boolean:
'true': 'yes'
'false': 'no'
date_format: MM/dd/yy HH:mm:ss
debug: false

#

i cant not place the map

balmy marten
#

That is the config not your log

#

Your latest.log can be found in ur /logs/ folder

spark dome
#

when i type logs. i find a latest but i cant kopier it in here i the chat i wil not show

tender vaporBOT
spark dome
#

"C:\Users\pc\Downloads\lastest.jar"

#

is only that i can kopi in

balmy marten
#

Go to the folder of your server

#

your should see folders like /plugins and /logs

#

go into the /logs folder and tell me what you see

spark dome
#

a lot of numbers

balmy marten
#

does one of them say latest.log?

spark dome
#

yes latest.log

balmy marten
#

Great, open that

spark dome
#

now i have open that i can see a lot of texts

balmy marten
#

Then click the save button and copy the new url it gives you

spark dome
#

i have savet it now but i didt give anything but i wish i could sent a photo

balmy marten
spark dome
tender vaporBOT
spark dome
#

there u go

#

woaw i am stupid haha

balmy marten
#

Barry has provided you the answer

spark dome
#

what do i do soo

balmy marten
#

Your server is too old. Needs to be at least 1.8.8

spark dome
#

my friend have sever is 1.8 he have a placeholderapi plugin i cant not put my server verison to 1.8.8 i have 100 players pr day they not plugin on 1.8.8 i will lose all my players 🙁

balmy marten
#

It's still 1.8 just the 8th minor version

#

1.8**.8**

#

instead of just 1.8

#

Your players will most likely not notice any change

spark dome
#

but i will but people on 1.8 and 1.8.9 can still play on the server? and labymods player

balmy marten
#

Players with 1.8.9 will be able to join yes

#

You do know this version is over 10 years old yeah?

spark dome
#

ye i know i am 24 years old but if i change the verison now in my server then i will could use placeholder

balmy marten
#

Yes, as a minimum upgrade to 1.8.9

restive musk
#

Hello guys how do i repair this? "deluxemnus couldnt Hook up with Holderapi"

#

@balmy marten could you help me?

tender vaporBOT
restive musk
#

Oh ok

amber wren
#

does someone know a expansion that can store a players killstreak in the scoreboard

amber wren
pearl tartan
#

/papi ecloud download Statistic

amber wren
#

oh ty

latent herald
#

has it been updated to 1.21.11?

sour bolt
#

/papi parse me %math_{%replace_ &b:gem:__{%peconomy_balance_cash%}%}>10%

Hi, how do I get this placeholder to work?

#

The replace function is removing the symbol and color from the savings placeholder. I tested it and it's working, but when I put it inside the math function, everything stops working. If anyone understands this better and can help me, I would appreciate it.

gaunt schooner
#

Hello,

I am currently writing a new external PAPI expansion. I would like to have a config section inside the PAPI config, I found the Configurable interface for that.

I was wondering if there was a way to cache options from the config when the expansion/plugin reloads? Or do I have to keep calling the #getString(..) method for instance, everytime a placeholder is parsed.

Thanks

junior musk
#

I usually use the Taskable interface and get config settings in the start method

junior musk
sour bolt
#

I'll try to fix the replace before

#

Works!

#

I know this has nothing to do with PAPI, but how could I implement this in Better GUI? The currency I use isn't transmitted through Vault, and I want to do something like this:

gaunt schooner
sour bolt
#
pickaxe_1:
  NAME: "&b&lQuebra-Mundos"
  ID: DIAMOND_PICKAXE
  POSITION-X: 3
  POSITION-Y: 2

  LORE:
    - "&7Inquebrável IV"
    - "&7Fortuna IV"
    - "&7Eficiência V"
    - "&7Remendo"
    - ""
    - "&6Preço: &b20 💎"
    - ""
    - "&eClique para comprar"

  CLICK-REQUIREMENT:
    default:
      condition: "%utils_parse_math_{replace_&b💎__{peconomy_balance_cash}}>20%"
      fail-command:
        - "tell: &cVocê não tem cash suficiente!"
      success-command:
        - "op:eco removebalance %player% cash 20"
        - "give:diamond_pickaxe 1 name:\\&aQuebra-Mundos enchants: efficiency:5 fortune:4 unbreaking:4"
        - "sound: ENTITY_EXPERIENCE_ORB_PICKUP"
        - "tell: &a✔ Você comprou a Quebra-Mundos com sucesso!"
#

Would you understand how this could work?

wary wyvern
#

Hi, is the advancedbungee papi expansion still maintained? I just tried to install it and I am getting [PlaceholderAPI] Cannot load expansion advancedbungee due to an unknown issue

#

I have tried the bungee expansion, it works but is slow at getting total player count, so I thought I would try advancedbungee

junior musk
#

idk if AdvancedBungee is that good tho, I remember it having issues, I may update it at some point but yeah

junior musk
sour bolt
#

Worked, thankss

wary wyvern
# junior musk enable bungeecord in your spigot.yml

ah that is false in all servers, the other placeholder expansion works without that enabled (not sure of the knock on affects of enabling that on a velocity/paper network). I just want to get total player count on all servers, but quickly (bungee expansion is far too slow, says 0 for ages)

junior musk
#

AdvancedBungee won't work

#

it requires the expansion to also be used as a BungeeCord plugin

#

and you can refresh the Bungee expansion's refresh interval in PAPI's config

wary wyvern
#

Ok thank you

haughty thistle
#

why i have only 152 ecloud expansions but in the website it says it is 249 expansions

#

i use the latest version

junior musk
#

because not all expansions are marked as Verified

#

those that aren't can't be downloaded through commands

final idol
#

Hi hi hi

#
command /grzaniec:
    trigger:
        if player has permission "swiateczny_grzaniec_30min":
            send "&aPosiadasz aktywny bonus!" to player
        else:
            send "&cNie posiadasz aktywnego bonusu" to player

I have a question - because it currently works, but I want to add one thing, and among other things, it would be displayed

%luckperms_expiry_time_swiateczny_grzaniec_30min%

When a player has an active permission but something doesn't want to work, maybe someone has an idea?

warm plover
#

Is there a way to get the worth of all the items in your inventory?

#

Essentials placeholder %essentials_worth% only shows the item in your hand sadly

strange cradle
#

Is there an expansion that can take the statistic placeholder but give me leaderboard formats so it’s not just showing the stat of the person looking at it? Like a top “n”

glass pond
#

hello, how do i make my money like $34.85M and not just $34M?

#

%vault_eco_balance_formatted% not working

hazy onyx
#

I think you can change how many decimals are from papi’s config file but im not sure

spice tapir
#
java.lang.NoClassDefFoundError: com/massivecraft/factions/RelationParticipator
        at java.base/java.lang.Class.getDeclaredMethods0(Native Method) ~[?:?]
        at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3578) ~[?:?]
        at java.base/java.lang.Class.getDeclaredMethods(Class.java:2676) ~[?:?]
        at PlaceholderAPI-2.11.7.jar/me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:429) ~[PlaceholderAPI-2.11.7.jar:?]
        at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1760) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) ~[?:?]
Caused by: java.lang.ClassNotFoundException: com.massivecraft.factions.RelationParticipator
        at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445) ~[?:?]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593) ~[?:?]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) ~[?:?]
        ... 11 more





[12:43:29 WARN]: [PlaceholderAPI] Cannot load expansion playertime due to a missing plugin: PlayerTime```


How do I delete or remove some placeholders I downloaded?
golden cloud
#

Is it possible to register on PAPI eCloud right now? I have a plugin and I was wondering if I could register my PAPI expansion to it?

balmy marten
#

We'd suggest building the expansion into the plugin

#

Makes it easier

glass pond
tired grove
#

You can use an actual link

short dagger
#

Im going crazy, for some reason, my code works PERFECTLY but if an specific variable of my code has 5 or 11 letters it breaks my entire code with the error

#

java.lang.StringIndexOutOfBoundsException: start 26, end 129, length 104
at java.lang.AbstractStringBuilder.checkRangeSIOOBE(AbstractStringBuilder.java:1724) ~[?:?] {}
at java.lang.AbstractStringBuilder.substring(AbstractStringBuilder.java:1017) ~[?:?] {}
at java.lang.StringBuilder.substring(StringBuilder.java:85) ~[?:?] {}
at io.github.tanguygab.utilsexpansion.UtilsExpansion.parseBracketPlaceholders(UtilsExpansion.java:201) ~[?:?]

#

if it has any quantity of letters like 3, 4, 6 or anything else it works like i coded, but if it has EXACTLY 5 OR 11

#

it breaks my entire code

junior musk
#

there's a good chance it's an issue with Utils

short dagger
#

yes its utils

junior musk
#

can you send the placeholder you're using?

short dagger
#

its a placeholder for finding an anime form of an pokemon and displaying it

junior musk
#

I hadn't have any issue in a while, I was happy for once

#

I'm scared to check its code again ;-;

short dagger
#

its a code where's the person can select an anime a person and it shows all the pokemon it can morph into

#

but specific pokemons like Ditto, tepig, pichu and meowscarada/blacephalon it bugs

#

gible too

#

i noticed the 5/11 incident bc ALL my persons that has 11 or 5 pokes in their list just crashs

#

luxray sanemi for an example works like an angel, i can't send the photo, but it works

short dagger
junior musk
#

I'd need to fix Utils, but I'm not even sure how to ;-;

short dagger
#

oh, you're the utils creator?

junior musk
#

yeah

short dagger
#

i love utils btw it helps me a lot

#

th

#

thx

junior musk
#

can you try to add this shortcut in your PAPI config.yml

  utils:
    shortcuts:
      animedexperson: "%score_variables_{score_variables_animedexpers

and then use this placeholder %utils_parse_pokemon_form_{formatter_text_lowercase_{changeoutput_contains_input:{utils_shortcut_animedexperson}_matcher::_ifmatch:{utils_shortcut_animedexperson}_else:{utils_shortcut_animedexperson}: {score_variables_animedexperson}}}%

short dagger
#

ok

junior musk
#

f

#
  utils:
    shortcuts:
      animedexperson: "%score_variables_{score_variables_animedexperson}_6%"
#

didn't paste it correctly

short dagger
#

ok it kinda works now but my pokemon placeholder is returning an error

junior musk
#

o

#

what's the error?

short dagger
#

variable not found:sasuke

#

lemme see

#

the shortcut is retuning the variable not found

#

lemme se

junior musk
#

I don't even remember how this works

#

and I'm the one who wrote this code 😭

#

2 years ago

short dagger
#

Ok, there's a thing

#

now it works

#

but i can't use the _6 in the code bc the _(number) is a list

#

like

#

_4 and _5 is different

#

but i can work around it

junior musk
#

arguments

short dagger
#

thx

#

you saved my day

junior musk
#

shortcut supports arguments

short dagger
#

yippie

#

how it works?
never used shortcuts

junior musk
#

{utils_shortcut_animedexperson:6}

#

and in the config, you use {0} I think

#

let me double check

short dagger
#

ok

junior musk
#

yup

short dagger
#

ok, thx

#

you saved my day

#

and thx for utils, it helps me a lot

#

❤️

junior musk
#

yeah, except when it's broken

short dagger
#

nah i made more than 60 menus with utils

#

1 bug ins't nothing

junior musk
#

¯_(ツ)_/¯

#

was able to find a way to break Utils

#

now I need to figure out why it doesn't work and how I can fix it

junior musk
#

bruh

#

I just simplified & fixed the expansion

#

it just took me 2 years to do so

#

all of that because I'm an idiot and just keep on making my job harder for no apparent reason

#

just to make sure

spice tapir
#
java.lang.NoClassDefFoundError: com/massivecraft/factions/RelationParticipator
        at java.base/java.lang.Class.getDeclaredMethods0(Native Method) ~[?:?]
        at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3578) ~[?:?]
        at java.base/java.lang.Class.getDeclaredMethods(Class.java:2676) ~[?:?]
        at PlaceholderAPI-2.11.7.jar/me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:429) ~[PlaceholderAPI-2.11.7.jar:?]
        at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1760) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) ~[?:?]
        at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) ~[?:?]
Caused by: java.lang.ClassNotFoundException: com.massivecraft.factions.RelationParticipator
        at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445) ~[?:?]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593) ~[?:?]
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) ~[?:?]
        ... 11 more





[12:43:29 WARN]: [PlaceholderAPI] Cannot load expansion playertime due to a missing plugin: PlayerTime```


How do I delete or remove some placeholders I downloaded?
junior musk
#

in your /plugins/PlaceholderAPI/expansions/ folder

tired grove
#

What should I do if Gradle doesn't want to add Placeholder to the project?
I'm using Gradle.

junior musk
#

send your build.gradle

tired grove
junior musk
#

what?

tired grove
#

?

junior musk
#

it's https://repo.helpch.at/releases

tired grove
junior musk
#

I don't understand what you mean

tired grove
#

I can't connect placeholderapi

junior musk
#

without the #

#

also, why are you shading PlaceholderAPI in your plugin?

#

you should only use compileOnly, not implementation

silver radish
#

/papi parse DonKolia %world_nearbyEntities_5%
dont works, other time....
And yes, i execute papi ecloud download world and i am using the last version of PAPI and i dont see console messages

tiny moss
#

Sup guys, can I make multiple if in ChangeOutput placeholder? I try to use it like in cycle, where else condition use another change output placeholder, but it doesn't work cause i already used another placeholder in option. I need to make 3 outputs for 3 different values in scoreboard

%changeoutput_equals_input:{objective_score_lw}_matcher:1_ifmatch:world_else:{changeoutput_equals_input:{objective_score_lw}_matcher:2_ifmatch:world_nether_else:-world}%
marsh trail
supple crane
#

?

supple crane
#

?

cerulean merlin
#

I'm not sure what else to do from here... https://i.imgur.com/IGjelbO.png

I don't know enough to understand what's going wrong

[18:27:33 ERROR]: [PlaceholderAPI] Failed to load expansion class ConfigExpansion - One of its properties is null which is not allowed!

right after doing /papi ecloud download config and /papi reload

balmy marten
#

The expansion is missing a value

#

@vivid sparrow

half briar
vivid sparrow
full edge
#

Nuvotifier version 1.21.8 doesn't support VoteParty. Which other plugin can I use it with?

glass pond
#

i have a question, how do i use placeholder like %vault_eco_balance% with custom fonts i want?
for example ttf font

#

for example <font: “myfont”>%vault_eco_balance%</font>

outer hollow
#

Hey so I'm trying to find the correct way to update placeholders for leaderboards , %vault_eco_balance% updates automatically yet it seems like the %essentials_baltop_player_stripped% and %essentials_baltop_balance_fixed% do not automatically update, this whole time i've just been using /papi reload as a way around this yet what is the correct way to do so, is there anyway to automatically update these without doing a full reload on PAPI?

outer hollow
heady creek
#

Hi! I have velocity network and I wants to use my skyblock placeholder (eg. placeholder from island plugin for level) to show on my lobby server like stats (profile). Is it any possibility to do that?

daring holly
#

uhm when using setPlaceholder, what's the behaviour if I pass null?

junior musk
#

for the player or the string?

#

if for the player, it depends on the placeholder, some don't require players like the ones from the Server expansion, some require one and will an empty string, null (and therefore the placeholder identifier in the result string) or something else

#

if for the string, it's annotated as NotNull so, uh, prob don't

#

there's nothing to parse anyways so yeah

daring holly
#

so it depends on placeholder

#

I see

half briar
heady creek
coral hollow
#

For my plugin I want to create placeholder, someone know a good guide or video to learn to create my own placeholder for my plugin?

hushed roost
#

Hello papi team,

I am curently using papi griefprevention placeholders for our scoreboard but unfortunately occasionally the output comes as something incorrect

#

Ah I'm unable to send links it seems

#

its a link to a picture

floral prism
#

I need help

tender vaporBOT
#

There is no time to wait! Ask your question @floral prism!

floral prism
#

My account IDKKKK the email

#

Idk what to do

#

Can anyone help me

#

Pls

#

Anyone

soft sage
#

👎

barren isle
#

any update about this or similiar messages? about %server_countdown

junior musk
#

you have to specify HH:mm:ss as well

barren isle
#

done, the wiki of papi is outdated, thanks

#

Do you have problems with the placeholder checkitem too? getinfo or nbt related modifiers seems to be broken

hushed roost
daring holly
#

is there a proper way to mock PAPI? I need it to unit test my plugin

plush mural
#

im trying to setup a hardcore playtime scoreboard but its not working

manic badge
#

whats wrong

warm plover
#

Is there a placeholder to check if a string matches something in regex

errant iron
#

i'm sure that'll be a great performance killer to implement lol

warm plover
#

all good I figured out something else instead xD

daring holly
#

Although not sure it has regex support now that you say it

#

I still gotta implement some way of caching and fix migration not working properly lol

young pasture
#

One message removed from a suspended account.

junior musk
#

?dm-heads

tender vaporBOT
young pasture
#

One message removed from a suspended account.

young pasture
#

One message removed from a suspended account.

tender vaporBOT
young pasture
#

One message removed from a suspended account.

warm plover
crimson glade
#

Does PlaceholderAPI work on 1.21.11?

warm topaz
#

yes, its moreso the expansions that may need updating instead

exotic fable
#
        '0': '%player_name%'```

how can i use placeholders for String  for the characters to be replaced
#

It doesnt show my name, just%player_name%

novel wadi
#

i have a problem with Statistics

#

im using /papi parse me %statistic_damage_dealt% or taken etc. it works it shows them BUT when i try these:
%statistic_mine_block%
%statistic_mine_block:<material>,<material2>%
it fails

#

i mean how can i track their stone mined or dirts mined

#

when i try to replace <material> with dirt / stone etc. it says Unknown statistic 'MİNE_BLOCK', check spigotblabla

#

i checked for those web pages but couldnt find how to use them

#

may i request a quick help @warm topaz

novel wadi
#

ups sry

#

ok i wont ping again

novel wadi
#

i seek help from a wisdomful human being

novel wadi
safe lava
#

Hi, I’d like to know how the Math extension works because I’m trying to add two placeholders together, but it doesn’t work.

sour bolt
#

Hi, Papi have any addon that removes items from a player's inventory? Specifically, in quantities. I'm trying to create a shop for trading items, but I'm having trouble trading items in the inventory—exchanging one item for another, or multiple items with a specific command. Is there anything like that?

trail oar
#

When will the plugin be updated to version 1.21.11?

balmy marten
#

Already supports it

trail oar
#

commands don't work for me /papi ecloud download player

balmy marten
#

what does it do?

trail oar
#

failed to find an expansion named: Player

balmy marten
#

Sounds like your server is failing to reach our api

tender vaporBOT
trail oar
#

I created expansions.yml and manually uploaded the PAPI-Expansion-Player_R5xV754.jar file, and it worked

balmy marten
#

Shouldn't need to create any yaml files. Just manually installing the expansion should be enough to load it all

bronze folio
#

Hello, the papi pinger extension doesnt work. it say offline for all servers whenever its online...

#

no errors in console

#

ive tested it on a three servers and the same result

honest linden
#

Hi, so basically i have a really weird problem and i dont really understand why its happening, i have a modded smp that runs on magma 1.12.2, and i use placeholderapi(papi) for alot of useful features but papi is really weird becuz it often just kills the server. To basically explain what i mean, is that i use 11 expansions, and sometimes the server just stops working and goes into a state where its techically running but not really, as in the server gives the stop, restart and force stop options but u cannot connect to the actual server, it also doesnt show anything in logs and doesnt show anything in console, it was by pure luck i realized it was papi doing it, i deleted the expansions folder and the server started fine again, but everytime i try to reinstall the expansions its just a matter of time before the server goes into a buggy state again, the expansions i use are Crazycates, luckperms, minepacks, mycommand, nf, otherplayer, parseother, player, server, spark and statistic. can anyone please help? im lost on how to fix it.

balmy marten
honest linden
balmy marten
#

Are you on the dev build of papi or the latest stable?

honest linden
#

im on version 2.11.6

balmy marten
#

When it's in its state of not connecting, does the console still work?

honest linden
#

yeah im pretty sure, its fixed for now but it randomly occurs, and when it does to get the server working again i manually delete the entire expansion folder and restart and it works, and in install all expansions again and then it just keeps repeating

#

its really annoying and cant seem to figure out what exactly is causing it

balmy marten
#

Can you run /papi dump for me

honest linden
#

yeah

#

i have changed the versions of expansions cuz i thought maybe i needed to use older versions of the expansions since the server is magma 1.12.2

balmy marten
#

Well the first step is to remove the minepacks expansion

honest linden
#

alright, will do

#

do u have any idea what could also potentially be causing it or do u think its just cuz of minepacks?

balmy marten
#

It could be a number of things, go lean on your expansions only keeping the ones you actively use. If it still happens you can run timings/performance reports to see if there's a particular expansion misbehaving

#

Also just FYI, the latest dev build of Papi will actually stop your server if it detects a known malicious expansion, but that happens cleanly with a message in the log explaining what happened

honest linden
honest linden
warped oar
#

I updated to 1.21.11 Folia. I'm on the latest dev-build of PAPI and now placeholders aren't working for some reason

#
[02:00:38 INFO]: [PlaceholderAPI] Fetching available expansion information...
[02:00:38 INFO]: [PlaceholderAPI] Successfully registered external expansion: griefprevention [1.7.0]
[02:00:38 INFO]: [PlaceholderAPI] Successfully registered external expansion: server [2.7.3]
[02:00:38 INFO]: [PlaceholderAPI] Successfully registered external expansion: bungee [2.3]
[02:00:38 WARN]: [PlaceholderAPI] Global task for PlaceholderAPI v2.11.8-DEV-221 generated an exception
java.lang.UnsupportedOperationException
        at org.bukkit.craftbukkit.scheduler.CraftScheduler.handle(CraftScheduler.java:517) ~[canvas-1.21.11.jar:1.21.11-606-37f7f0d]
        at org.bukkit.craftbukkit.scheduler.CraftScheduler.runTaskTimer(CraftScheduler.java:227) ~[canvas-1.21.11.jar:1.21.11-606-37f7f0d]
        at org.bukkit.craftbukkit.scheduler.CraftScheduler.runTaskTimer(CraftScheduler.java:209) ~[canvas-1.21.11.jar:1.21.11-606-37f7f0d]
        at com.extendedclip.papi.bungeeexpansion.BungeeExpansion.start(BungeeExpansion.java:91) ~[?:?]
        at PlaceholderAPI-2.11.8-DEV-221.jar//me.clip.placeholderapi.expansion.manager.LocalExpansionManager.register(LocalExpansionManager.java:305) ~[?:?]
        at PlaceholderAPI-2.11.8-DEV-221.jar//me.clip.placeholderapi.expansion.PlaceholderExpansion.register(PlaceholderExpansion.java:147) ~[?:?]
        at PlaceholderAPI-2.11.8-DEV-221.jar//me.clip.placeholderapi.expansion.manager.LocalExpansionManager.register(LocalExpansionManager.java:193) ~[?:?]
        at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:214) ~[?:?]
        at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:197) ~[?:?]
        at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1716) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:570) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:560) ~[?:?]
        at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:265) ~[?:?]
        at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:723) ~[?:?]
        at PlaceholderAPI-2.11.8-DEV-221.jar//me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$registerAll$4(LocalExpansionManager.java:366) ~[?:?]
        at PlaceholderAPI-2.11.8-DEV-221.jar//me.clip.placeholderapi.util.Futures.lambda$onMainThread$0(Futures.java:48) ~[?:?]
        at PlaceholderAPI-2.11.8-DEV-221.jar//me.clip.placeholderapi.scheduler.folia.FoliaScheduler.lambda$runTask$0(FoliaScheduler.java:72) ~[?:?]
        at io.papermc.paper.threadedregions.scheduler.FoliaGlobalRegionScheduler$GlobalScheduledTask.run(FoliaGlobalRegionScheduler.java:178) ~[canvas-1.21.11.jar:?]
        at io.papermc.paper.threadedregions.scheduler.FoliaGlobalRegionScheduler.tick(FoliaGlobalRegionScheduler.java:36) ~[canvas-1.21.11.jar:?]
        at io.papermc.paper.threadedregions.RegionizedServer.globalTick(RegionizedServer.java:366) ~[canvas-1.21.11.jar:1.21.11-606-37f7f0d]
        at io.papermc.paper.threadedregions.RegionizedServer$GlobalTickTickHandle.tickRegion(RegionizedServer.java:202) ~[canvas-1.21.11.jar:1.21.11-606-37f7f0d]
        at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:552) ~[canvas-1.21.11.jar:1.21.11-606-37f7f0d]
        at io.canvasmc.canvas.tick.CRSThreadPool$TickThreadRunner.run(CRSThreadPool.java:665) ~[canvas-1.21.11.jar:1.21.11-606-37f7f0d]
        at java.base/java.lang.Thread.run(Thread.java:1474) ~[?:?]```
#

Kyorify, Bungee, LuckPerms placeholders not working

#

even if I just do /papi parse me %placeholder%

#

I think it's just an issue with Bungee expansion

#

I removed that and all the placeholders started working again

#

So it seems that bungee expansion is not compatible with folia 1.21.11

balmy marten
#

Yeah not all expansions will work on folia (yet)

#

Feel free to create a github issue with the error on the bungee expansion if there isin't already

heady drift
#

Hi. I have a problem: when I start the server, papi doesn't parse anything at all. Only /papi reload helps. How to fix this?

#

@balmy marten pls help bro

tender vaporBOT
tiny drift
#

When will Skript expansion be verified? I need to download it through command, as I cant do it manually on Aternos.

balmy marten
#

I believe it was unverified as it didn't work on the latest version

tiny drift
#

Would it be possible to verify it at some point? When it gets updated or something? I tested it manually on a different server and it worked just fine

tiny drift
#

Texted to Aternos but their support didnt really help me, would this be possible?

honest linden
carmine veldt
#

@balmy marten

balmy marten
carmine veldt
#

gotta delete and reinstall everything

honest linden
balmy marten
#

Can you ping it when its in that state?

#

Also are you redownloading the expansions or are you just adding them back in

honest linden
honest linden
#

like the folder

balmy marten
#

if it's currently in the state, do console commands work?

honest linden
#

hold up, im putting it in it

honest linden
#

and like in mc multiplayer screen it just keeps saying "pinging" until it says "cant connect to server"

balmy marten
#

So it sounds like its just crashing/hanging

honest linden
#

not sure what hanging means

#

is there any way to send a screenshot?

tender vaporBOT
balmy marten
#

Restart the server and run a spark report

honest linden
#

how do i run a spark report?

balmy marten
#

/spark profiler start wait 5-10 mins /spark profiler stop

honest linden
#

and do u want me to have the server in the ghost/zombie state or have it up and running?

#

whilst running it?

balmy marten
#

Have it running with all the expansions

honest linden
#

ight

balmy marten
honest linden
balmy marten
#

I would assume so

#

So we just need to pin point whats causing it to hang, spark will let us look into what resources everything is using to see if something looks out of the norm

honest linden
honest linden
balmy marten
#

Should give you a url

honest linden
balmy marten
#

hmm nothing immediately jumps out

honest linden
#

i got no clue what could be causing it😭

balmy marten
#

Well the next step would be trial and error

#

First step is we remove any expansions you're not actively using

#
  CrazyCrates [Author: BadBones69, Version: 1.10.2.2]
  luckperms   [Author: Luck, Version: 5.0]
  mycommand   [Author: emmerrei, Version: 1.0.0]
  nf          [Author: vk2gpz, Version: 1.6.1]
  otherplayer [Author: L3thalBunny, Version: 1.3.0]
  parseother  [Author: cj89898, Version: 1.4.0]
  player      [Author: clip, Version: 1.6.5]
  server      [Author: clip, Version: 2.1.4]
  spark       [Author: Luck, Version: 1.10.119]
  statistic   [Author: clip, Version: 1.9.2]```
honest linden
#

I use everyone of them😭

balmy marten
#

Well you'll need to try to add them over time till the issue happens

#

then we can pin point which one it is

#

It's just odd as your setup is not really that crazy and no one else seems to have the same issue

honest linden
#

yeah its really confusing for me too, ive been trying for days to figure out whats causing it

balmy marten
#

What exactly tells you its an expansion issue anyway? Or is it just restarting the server fixing it for a little bit

honest linden
# balmy marten What exactly tells you its an expansion issue anyway? Or is it just restarting t...

the issue gets fixed when the expansion folder is deleted, basically if i dont have any expansions downloaded on the server, the server launches successfully, and i can then add expansions to the expansion folder and do /papi reload and the server works completely fine, but if for some reason the server stops or goes offline, the issue occurs and the server is stuck in that annoying state where it doesnt start, i then have to stop the server so it isnt running, delete/remove the entire expansions folder and then i can successfully start the server and then it repeats, i then add the expansiosn back, do /papi reload, if server stops at some point and i try to start again it goes back to the bugged state

balmy marten
#

So if you stop the server, place the expansions in and start the server, does it come up?

honest linden
#

if i stop the server, have the expansions in the expansion folder and try to start, the issue occurs and it does not start proprerly

balmy marten
#

Oh that makes things a little easier

#

Can you do that and get the latest log

tender vaporBOT
honest linden
#

yes gimme a min

#

so i just stop, keep the expansions in the folder and try to start causing the bugged state and send the latest.log?

balmy marten
#

Yeah should tell us where it gets up to before it dies hopefully

honest linden
#

how do i send it?

tender vaporBOT
balmy marten
#

^

honest linden
#

not sure if that worked

#

it keeps saying page unresponsive

balmy marten
#

How big is it lol

honest linden
#

idk lol

#

4.3mb

carmine veldt
balmy marten
#

Take out the server and player expansion and do the same thing

#

see if it starts

honest linden
#

ight

balmy marten
#

We'll keep repeating till we find which one it is

honest linden
#

and btw if u were curious this is the last thing it says in the console

balmy marten
#

Yeah its the same in the log

honest linden
#

ahh ok

balmy marten
#

Papi doesn't officially support forge so there's probably some weird compatibility thing

honest linden
balmy marten
#

Cool cool, pick another 2

#

and repeat

honest linden
#

alright lmao

#

not luckperms or statistic either

balmy marten
#

Watch it be the last one you pick

honest linden
#

not parseother or otherplayer

#

not nf either

#

that was the last one

carmine veldt
#

were you adding the other expansions back as you removed them

#

you need to remove them one by one till there's none left

honest linden
#

i didnt add them back

carmine veldt
#

so the server still won't start even with no expansions in the folder

#

server hangs

#

whatever

balmy marten
#

So there's none left now?

honest linden
#

im right now after removing the nf which was the last to test trying to put one thats known to be safe(just put luckperms back) to test if its just if theres anything in the expansion folder it doesnt work, and with any expansion it just wont start properly

#

imma try now without any expansion completely at all(which usually works)

balmy marten
#

You could try updating papi incase the version you have is broken

#

But I'm quickly running out of ideas

honest linden
#

tested without any at all in the expansions folder and it works

#

and ight ill try updating

carmine veldt
#

doesn't work with just luckperms?

honest linden
#

nope

#

only works when there is literally no expansions in the expansions folder doesnt matter which expansion there cant be any at all

#

to update version can i just replace the .jar file? or do i need to do something else too?

carmine veldt
#

just change the jar file

honest linden
#

just to the newest?

carmine veldt
#

if update doesn't work there's an incompatibility between one of your other plugins/mods/forge and papi

balmy marten
#

Which next steps would be to load just papi and forge with no other plugins/mods

honest linden
carmine veldt
#

yeah don't remove the configs

#

make a backup too if you haven't already

honest linden
#

when removing the plugin .jars do i just try to launch with all the expansions in the expansions folder or what?

carmine veldt
#

ye

#

realistically though

#

I doubt it's gonna be one of ur plugins

#

it's probably gonna be one of ur mods/magma

honest linden
#

alright, its really late for me so i have to go to sleep, imma start testing tmrw with the mods and plugins to see if its one of them, appreciate the help guys, u guys are the goats❤️

balmy marten
#

all good

runic dawn
#

can anyone tell me how to use custom font in placholder ?

#

@here

honest linden
junior nimbus
#

Hi looking to remove /papi from default but can't figure out which and there's no permissions on the wiki that I'm seeing. Dump, Info, and Version are all revoked and players can still do /papi

deep hollow
#

Hey, anyone knows how make %bungee_<server>% placeholders from placeholderapi faster? It refresh each 30 sec or so, it's so slow

#

oh just saw it, check_interval, it affects perfomance if I set it to 1?

carmine veldt
#

I've never used it

#

we don't support it

#

chances r thats whats causing issues

balmy marten
runic dawn
#

@everyone can anyone tell me how to use custom font in placholder ? Pls help me

austere hawk
#

guys my PAPI isnt working, like it doesnt nothing when it comes to expansion but the thing is i deleted all plugins to check if it conflicts but yet papi is still not working

nova fjord
junior musk
#

%math_2_...

nova fjord
#

Thanks

solar bolt
#

I have my homework project built with laravel+react
And the goal is to upgrade this project.
If anyone can help me, please DM me and discuss budget of this project

fast crypt
junior musk
#

how is it any different to the Bungee expansion?

fast crypt
#

that's what I tried earlier but yeah unfortunately got an error.

junior musk
#

it does work with Velocity, you use the same plugin messaging channel so I don't see why it wouldn't work

#

what's the error?

fast crypt
junior musk
#

ah

#

then could you rather make a PR to make the Bungee expansion work on Folia instead?

#

I'm guessing it's just the reapeating task

#

that would be better rather than adding another expansion that does the exact same thing

fast crypt
#

technically it was just a fork then I think for better adjustment that could fit to my needs, I just recreated it on my own way.

#

Cuz' I might going to enhance that expansion depending on what I need in the future.

austere hawk
#

can someone help me ive been struggling with PAPI since yesterday, it doesnt work at all. i tried 1.21.11 and 1.21 and it doesnt work. i also tried changing version of the plugins, didnt work either. lastly i removed plugins and only kept ones that are guaranteed to not break PAPI plugin. for some reason i cant download using /papi ecloud download, i also cant register extensions i manually put there. would appreciate any help

crimson shell
austere hawk
lusty forge
austere hawk
#

in the console itself didnt really mention that much either

lusty forge
#

With /pl do you see PAPI in green ?

real field
lusty forge
#

Wdym ?

real field
#

where can i paste images

#

im gonna show

#

idk what suddenly happned

#

@lusty forge

lusty forge
#

Send me in mp

#

Don't know the rule about the images on the server 😅

real field
#

btw idk its not papi

#

its deluxe menus

#

@lusty forge sent u in dm

tender vaporBOT
lusty forge
austere hawk
fleet arrow
solar bolt
#

I have my homework project built with laravel+react
And the goal is to upgrade this project.
If anyone can help me, please DM me and discuss budget of this project

long herald
#

Hi! Can anyone tell me what the problem is? I'm trying to display my balance and player nickname in Scoreboard, but it's not working. I have TAB, Vault, EssentialsX, LuckPerms, and PlaceholderAPI installed. Why can't TAB see the PlaceholderAPI API?

    scoreboard:
      title: "TEST.SERV"
      lines:
        - "╔═════════════"
        - "║"
        - "║ &7Nick&7:&f %player_name%"
        - "║ &7Ping&7:&f %ping%&7ms"
        - "║ &7Balance&7:&f %vault_eco_balance%"
        - "║"
        - "╚═════════════"
#

If I write %player% instead of %player_name%, the nickname will be displayed on the scoreboard.

long herald
#
> papi list
[20:15:26 INFO]: A total of 3 placeholder hook(s) are active:
betterrtp, deluxemenus, protectionstones
half briar
long herald
half briar
long herald
half briar
#

If they wont download through the command, try manually grabbing them from the site and placing them in the folder 😓

long herald
autumn ether
#

why does the placeholder %utils_parse_{math_1:_(1.441*(({servervariables_display_token}/1000)^0.7604-1)+1)*{math_2:_1.1^{servervariables_display_rebirth_level}}}% return %-0.4%? How can I remove the %%

junior musk
#

remove the {} around the math placeholder

tender vaporBOT
river seal
#

%nexo_newbie% blabla (work)
%luckperms_primary_group_name% => newbie (work)

but %nexo_%luckperms_primary_group_name%% => luckperms_primary_group_name%
This is not work

junior musk
#

use {} instead

#

if it doesn't work, use Utils to parse nested placeholders
%utils_parse_nexo_{luckperms_primary_group_name}%
/papi ecloud download Utils
/papi reload

native fern
#

Hey! I'm integrating PAPI to my plugin, and I have a few questions mostly regarding the conventions, which I didn't really find answers for when reading the wiki.

  1. Are you supposed to allow placeholders to use the text formatter (e.g. MiniMessage) or should it only be plain text?
  2. What's the expected polling rate?
  3. Are there any rules on what escape characters are normal? I've seen %placeholder% often.
junior musk
#

There aren't really any conventions

  1. You can do whatever you want with user input (String params parameter in onRequest referring to %<expansion identifier>_<params>%) and you can return a String with or without MiniMessage formatting, all that matters is in which plugin the placeholder will be used and how it processed parsed placeholders (assuming you're creating your own PAPI expansion, if you're not then not sure what you mean)
  2. Assuming you meant the refresh interval at the onRequest method gets called, there's none. It all depends on the plugin parsing the placeholders (example: chat plugins like LPC will parse placeholders when players type in chat, whereas some plugins like TAB or DeluxeMenus will have repeating tasks to parse placeholders over & over to display their output in tablist or in items in menus)
  3. Not sure what you mean by that
native fern
# junior musk There aren't really any conventions 1. You can do whatever you want with user in...

Hey! Thanks for your response!

I am making a plugin that consumes placeholders, it does not provide new ones. So I am asking if I should format the returned data from placeholders or if it should be considured "unsafe user input" (like in web/html land) where the content should be shown as is. As for the refresh interval, as I am the consumer, what interval would I be expected to run on? And on my third question, I was talking about the format of placeholders, should I just use %foo%?

junior musk
#

ah alright

#

In this case, it will vary on the placeholder as some will output legacy colors (that break MiniMessage formatting) while others will return valid MiniMessage syntax, or some just return plain text.

Either you can decide that you don't care what placeholders return and force users to use the Kyorify expansion with their placeholders so they return valid MM syntax, or you can try to replace legacy & and § colors yourself with their equivalent MiniMessage syntax

#

for the refresh interval, usually plugins have a setting in config for that which can be changed by the user if they want higher/lower refresh intervals

#

you could put it at 1s or 10s by default if you want

native fern
junior musk
#

you could yeah

#

there's not really a rule to whether you can or cannot

#

it just depends on what you're doing and how customizable you want your plugin to be

native fern
#

alright, I'm just used to conventions haha

#

thank you for your answers!

long spear
#

Hello. I am trying to implement some placeholders into my plugin using an internal expansion. However it looks like none of my placeholders seem to work. For example, I try %test% using the papi parse me %test% command and instead of getting replaced back, I'll get %test% which indicates that no parsing happened. My internal expansion gets registered just fine. I am using the onRequest as in the example:

    @Override
    public String onRequest(OfflinePlayer player, @NotNull String params) {

        if (params.equalsIgnoreCase("test")) {
            return "replaced";
        }

        return null;
    }
junior musk
#

it's %identifier_params%

long spear
#

oh

#

ok thank you

warm edge
#

Hello there, after installing PAPI on ShreddedPaper 1.21.11, a simple /papi parse Awhikax %player_name% returns literally %player_name%. No other logs than these, even in debug:

[14:49:19 INFO]: Awhikax issued server command: /papi parse Awhikax %player_name%
[14:49:19 INFO]: %player_name%

Are there some common/known issues regarding such behavior?

Note that while not officially supporting ShreddedPaper, the plugin seems to load properly as I get clean loading messages.

half briar
warm edge
#

Obviously, not. Looked for a "Quick start" in User Guide but since the player placeholders were listed in "Standalone" section I assumed it would automatically be included by default. Thanks 🙂

junior musk
# warm edge Obviously, not. Looked for a "Quick start" in User Guide but since the player pl...

By standalone, it means the expansion doesn't require a plugin and can be downloaded directly without any dependencies.
There are other expansions that come directly with their associated plugin (some may require you to toggle a setting in their config like TAB), and some that don't (and therefore need to be downloaded) but still require a plugin (like the LuckPerms expansion)

There aren't any expansions pre-installed by default by PlaceholderAPI

#

If you find a placeholder and are unsure which command to run to download it, 99% of the time it's going to be its expansion's identifier (the first word before the first _ in the placeholder, for example %player_name%'s expansion identifier would be player)
There are few case where it's a little different but most of the time it's that

warm edge
#

It's all good now thanks. I guess I mostly got biased by the fact most plugins comes bundled with a bunch of premade stuff without extra config/commands required and I wanted to make sure PAPI would work with ShreddedPaper.

inner edge
#

Awesome update, thanks for this !

#

Not sure if creating a new expansion is better

#

i'm open to make one if required

autumn ether
#

is there a formatter option with numbers greater than Dc?

muted gulch
#

Does the floodgate placeholder set no longer function?

fast briar
#

Hello, I recently updated my Vault plugin from 1.7.3 to the newer v2 (1.5.2). I made sure to delete any previous .jar and config folder as well as the old expansion but I keep getting the following error by PlaceholderAPI:

[WARN]: [PlaceholderAPI] Failed to load external expansion vault. Identifier is already in use.
[WARN]: [PlaceholderAPI] Cannot load expansion vault due to an unknown issue.

Also the plugin reports a mismatch in the version name:

[Vault] [UpdateCheck Debug] Raw Local: '1.5.2' | Norm Local: '1.5.2'
[Vault] [UpdateCheck Debug] Raw Remote: 'v1.5.2' | Norm Remote: '1.5.2'

When I check with /papi list I can see vault, vault2. Both expansions return with /papi info vault or vault2 returns:

Author: (is empty)
Version: 1.5.2

I manually deleted the Expansion-vault.jar expansion from my ../PlaceholderAPI/expansion folder.
Then run in the following order:
/papi unregister vault
/papi unregister vault2
/papi reload
To which I get returned among other expansions:

[INFO]: [PlaceholderAPI] Successfully registered external expansion: vault [1.8.3]

Typing /papi info vault returned

Author: HelpChat
Version: 1.8.3

I thought I resolved the problem but it seems that after I stop my server and start it again it keeps downloading the older 1.5.2 expansion and as well as registering vault and vault2 in my installed list therefor resulting in the same error.

Any suggestions? 🙄

sour bolt
#

Hi, is there an extension that retrieves player statistics and places them in a placeholder?

crisp crystal
#

Hey!

Some time based placeholders on my minecraft server shows one hour wrong using Pterodactyl, however schedules are running on correct times. What could be the issue?

tight veldt
#

Ello

#

Hello*

#

The placeholder %player_ping% is giving me errors.

sharp jay
sharp jay
tender vaporBOT
hollow fox
#

Hello there!

am I.. understand it right that there are really no way to get other player's yaw and pitch using placeholders?

i found an OtherPlayer expansion but it contains only coords, not yaw and pitch.

hollow fox
hollow fox
soft acorn
tender vaporBOT
jovial adder
#

hi there

#

im attempting to set a placeholder to run an integer, but public String onPlaceholderRequest returns only a String, not an Integer.

The placeholder is passed to another plugin which needs it to be an integer. Any way out?

wide reef
jovial adder
#

I needed to repackage it with that change

strange timber
#

My papi isnt working on player_kills for ajlb

command: /ajleaderboards add %statistic_player_kills%
error: Returned: Unknown statistic 'player_kills' check https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Statistic.html for more info
The placeholder 'statistic_player_kills' does not give a numerical value. Make sure that the placeholder returns a number that is not formatted.

note: i downloaded statistic from ecloud and its work on statistic_deaths

white frigate
#

`menu_title: '&8&lMenu Jobs'
open_command: jobs
size: 54

items:

miner:
material: DIAMOND_PICKAXE
slot: 10
priority: 1
display_name: '&b&lMiner'
lore:
- ''
- '&7KClick to join the job!'
- ''
view_requirement:
requirements:
nie_jest_w_pracy:
type: string equals
input: '%jobsr_user_isin_miner%'
output: 'false'
left_click_commands:
- '[player] jobs join Miner'
- '[close]'

miner_leave:
material: DIAMOND_PICKAXE
slot: 10
priority: 2
display_name: '&b&lMiner'
lore:
- ''
- '&Level: &f%jobsr_user_jlevel_miner%'
- '&eExperience: &f%jobsr_user_jexp_miner%/%jobsr_user_jmaxexp_miner%'
- ''
- '&a✓ You are in this job'
- '&cKClick to leave the job!'
- ''
view_requirement:
requirements:
nie_jest_w_pracy:
type: string equals
input: '%jobsr_user_isin_miner%'
output: 'true'
left_click_commands:
- '[player] jobs leave Miner'
- '[close]'`

I would like there to be a button in a single slot that allows both joining a job and leaving a job, displaying different information.

#

Why doesn’t this work?

jovial adder
frosty condor
#

id like to thank this 3 year old message for helping me

rocky smelt
#

Hey, I downloaded the Player and Playtime expansions for PlaceholderAPI, but the placeholders don’t get replaced I only get the variables as response

#

Player and Playerstats wont install correctly

scenic umbra
#

hello, I am struggling using the checkitem placeholder for an mmoitem helmet, this is my first time using this. I want it to check for that specific helmet. but I can't get around to figuring out the format

fringe hinge
#

Hey. somehow my placeholder %player_name% isnt working. i already loaded the ecloud player. but somehow it isnt updating.

raw sail
#

On my Velocity network, is there any placeholder that lists all players on a specific server? I couldn't find anything.

fervent spire
fringe hinge
#

since i couldnt fix the problem

loud citrus
#

I cant hook placeholderAPI into my plugin

#

I add the dependency and import and it just says an error that it cant find placeholderAPI even though ive added it FOR SURE

#

any chance an admin/someone can breakdown; its not lack of knowledge as i read the entire documentation

past flint
#

What project setup do you have? Gradle or Maven?

#

actually just that for now

loud citrus
#

Maven

#

It struggles to find placeholderAPI even though I followed the doc to a T

past flint
#

can you send your pom.xml?

loud citrus
#

I had to remove the dependency for placeholder as it was ruining plugin; but I’m pretty sure I have a copy of the edited lemme find rq

#

sent 😉

#

thats an example of how i added

#

then id import under main java ofc

#

youll see i imported others even

past flint
#

If i can ask, what was the error?

loud citrus
#

it was saying it couldnt load placeholder, but let me copy exact

#

sent

past flint
#

Does anyone know how to remove the duplicate adventure library that gets installed when I use placeholderAPI? It's kinda annoying when tab completion comes up with the papi library and not the normal one. I'm using gradle and heard about a way to exclude parts of dependencies, but what I've tried hasn't worked yet.

#

TBH if there isn't a way to remove it, that's fine. This is a minor inconvenience that doesn't really matter much

trim tinsel
#

I had a note in my console to the effect of "4 hooks were registered, but 1 placeholder hook has an update available" so I ran papi ecloud update all now I have error associated with the Shortcut Expansion. Apparently the updated version of Shortcut requires Java 23 and I am running Java 21. Where can I pull the previous version an what version number is it? Thank You.

loud citrus
#

@trim tinsel i was having issues with version and had to add a line to force versions

trim tinsel
halcyon palm
#

my place holders in TAB dont work anymore is it cuz there is something not installed or is it in the configs?

muted plank
wheat bough
west violet
#

how do i pull an item name with CheckItem getinfo

sour bolt
#

Hi, is there a placeholder that compares text? For example, I want to check if the player is in a specific world and return true or false.

/papi parse me %player_world% == Arena1
soft acorn
#

I’ve had pretty good experience with this

#

Example would be

var world = "%player_world%";

function checkWorld() {
  if (world === "Arena1") {
    return "true";
  } else {
    return "false";
  }
}

checkWorld();
#

then you’d use %javascript_checkWorld%

dull stratus
#

I can't run playerpoints expansion in my papi, I have installed in physically in the folder and tried to reload, but I didn't work.

dull stratus
sharp jay
#

check console

tender vaporBOT
dull stratus
# sharp jay what error...

[07:21:02 WARN]: [PlaceholderAPI] playerpoints is at tempting to register placeholders via deprecated Pla ceholderHook class. This class is no longer supporte d and will be removed in v2.13.0!

[07:21:02 WARN]: [PlaceholderAPI] Cannot load expans ion playerpoints due to an unknown issue.

sharp jay
dull stratus
balmy marten
dull stratus
balmy marten
#

" Please note this expansion is no longer needed for PlayerPoints plugin versions v3.0.0 or newer as a newer version of the expansion is now built in."

#

You don't need the expansion

dull stratus
dull stratus
balmy marten
#

No, I'm saying you don't need any expansions

#

as it's built into the points plugin

dull stratus
muted plank
dull stratus
muted plank
sharp jay
#

as we already have an expansion like this

#

waas put under too simple

muted plank
#

I don't know, i asked to get an account like a month ago, didn't get an answer, then decided to wait for new ecloud release

sharp jay
sharp jay
#

@muted plank verified it enjoy (keep in mind this is per version)

muted plank
#

Thank you so much

sour bolt
soft acorn
#

You need to register the placeholders first

#

lookup a tutorial for JavaScript placeholders on papi, that should run you through the basics

#

if that still fails, then there’s something wrong with your javascript code

sour bolt
#
[08:52:51 INFO]: [PAPI] [Javascript-Expansion] 1 script loaded!
[08:52:51 INFO]: [PlaceholderAPI] Successfully registered external expansion: javascript [2.1.3]
#

Just loading doesn't solve it?

#

I searched the wiki for information about the extension, but I couldn't find any documentation.

#

I searched for videos, but I didn't find anything that could help me either.

#

Especially in my language...

#

Forget it, I found out.

#

There is a file called JsPlaceholders.yml

#

Just put it there

sour bolt
soft acorn
#

No worries

balmy bluff
#

Hey, i'm trying to download Statz placeholders 'cause i need %statz_distance_traveled% but minecraft cant seem to find it. Version is 1.21.4

#

says "Failed to find an expansion named Statz" what can i do about it?

junior musk
#

-papi statistic

#

👀

#

%statistic_walk_one_cm%

balmy bluff
#

there's no way to block the number right?

#

for little time

#

nvm no need to

rose ocean
#

Guys, I got an error when downloading the Vault plugin! What should I do? Here's the error:[20:45:18] [placeholderapi-io-#3/INFO]: Failed to download expansion: java.io.FileNotFoundException: plugins/PlaceholderAPI/expansions/Expansion-vault.jar (Permission denied)
[20:45:18] [placeholderapi-io-#4/ERROR]: [PlaceholderAPI] Failed to download Vault:me.clip.placeholderapi.expansion.cloud.CloudExpansion$Version@76a50ce5
java.util.concurrent.CompletionException: java.io.FileNotFoundException: plugins/PlaceholderAPI/expansions/Expansion-vault.jar (Permission denied)
at me.clip.placeholderapi.expansion.manager.CloudExpansionManager.lambda$downloadExpansion$5(CloudExpansionManager.java:258) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1789) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614) ~[?:?]
at java.lang.Thread.run(Thread.java:1474) [?:?]
Caused by: java.io.FileNotFoundException: plugins/PlaceholderAPI/expansions/Expansion-vault.jar (Permission denied)
at java.io.FileOutputStream.open0(Native Method) ~[?:?]
at java.io.FileOutputStream.open(FileOutputStream.java:255) ~[?:?]
at java.io.FileOutputStream.<init>(FileOutputStream.java:210) ~[?:?]
at java.io.FileOutputStream.<init>(FileOutputStream.java:171) ~[?:?]
at me.clip.placeholderapi.expansion.manager.CloudExpansionManager.lambda$downloadExpansion$5(CloudExpansionManager.java:255) ~[?:?]
... 4 more

peak badger
#

This app is trying to raid my server what I can do?

warm topaz
vivid sparrow
glacial idol
#

hey im wondering if there is a version of %player_name% that will force the player name to be all lowercase letters

half briar
glacial idol
#

thank you

#

big tyty

crimson shell
#

[17:59:07 ERROR]: [PlaceholderAPI] Failed to download Statistic:me.clip.placeholderapi.expansion.cloud.CloudExpansion$Version@6e25d57
java.util.concurrent.CancellationException: null
at java.base/java.util.concurrent.CompletableFuture.cancel(CompletableFuture.java:2510) ~[?:?]
at PlaceholderAPI-2.11.7.jar/me.clip.placeholderapi.expansion.manager.CloudExpansionManager.lambda$clean$2(CloudExpansionManager.java:169) ~[PlaceholderAPI-2.11.7.jar:?]
at java.base/java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(ConcurrentHashMap.java:4783) ~[?:?]
at PlaceholderAPI-2.11.7.jar/me.clip.placeholderapi.expansion.manager.CloudExpansionManager.clean(CloudExpansionManager.java:169) ~[PlaceholderAPI-2.11.7.jar:?]
at PlaceholderAPI-2.11.7.jar/me.clip.placeholderapi.expansion.manager.CloudExpansionManager.load(CloudExpansionManager.java:102) ~[PlaceholderAPI-2.11.7.jar:?]
at PlaceholderAPI-2.11.7.jar/me.clip.placeholderapi.commands.impl.cloud.CommandECloudDownload.lambda$evaluate$1(CommandECloudDownload.java:111) ~[PlaceholderAPI-2.11.7.jar:?]
at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) ~[?:?]
at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841) ~[?:?]
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510) ~[?:?]
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1773) ~[?:?]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
[17:59:07 INFO]: Failed to find an expansion named: Server

warm topaz
short sierra
#

Hi, I need some help with PAPI
I'm using the Statistic expansion, specifically the kill and death counter, but I want to reset the death count data for one of my players.
Could someone please tell me how to do this, or point me in the right direction? Thanks

warm topaz
#

statistics expansion gets its data through the server's world folder
i guess if you want to edit a specific player, you would have to open the stats file for that persons uuid and edit the json directly

short sierra