#placeholder-api

150650 messages · Page 129 of 151

bronze shell
#

thank you for the fixed shortcut, haven't thought of the ascii for replacing the % too

#

👍

junior musk
#

also download the Ascii expansion

bronze shell
#

ah 😩

junior musk
#

and I fuvked up

#

change the second ascii to 124

bronze shell
#

ok

junior musk
#

I used 123 twice for { 😅

#

wait no it's 125

bronze shell
#

would there be any other way that wouldn't require an extra expansion to solve this issue?

junior musk
bronze shell
#

yeah 😬

grim arrow
#

I still don't get it sorry, I tried but I don't find the solution I just need to know what I should use as input

junior musk
#

😅

bronze shell
#

if only the plugin author could fix their placeholder loading time

#

smh

junior musk
#

imma go die on my couch now

#

bye

bronze shell
#

enjoy

grim arrow
bronze shell
#

no idea, ive never used wg placeholder

grim arrow
#

😔 alright thanks

bronze shell
#

i'm not even sure what you mean

#

what input?

stone edge
#

' &#FBE200&l| &fPvp &b%changeoutput_equals_input:_matcher:{worldguard_region_has_flag_pvp}_ifmatch:&aEnabled _else:&cDisabled &m%'

grim arrow
#

I mean im trying to do a changeout that for example when you enter in a pvp zone it says that the pvp is enabled and the opposite

stone edge
#

mmmm

#

/papi parse me %worldguard_region_has_flag_pvp%

bronze shell
#

i'm not even sure what this placheolder output would be

#

yeah do that

#

lol

#

it might just list you all the region with the pvp flag

#

cuz i don't see how it could understand what region you're talking about

grim arrow
#

xd

stone edge
languid jasper
#

Is it possible, to use placeholder as luckperms-context?

languid jasper
#

Luckperms context is basicly said "circumstances where something will apply". You're able to bind the permissions to special cases. e.g. the player only has the permission for gamemode, if he is in world XY. I wanna now, if some of you maybe know for an integration of this for Luckperms

vivid sparrow
languid jasper
#

Ohhh damn, thank you ^^ didnt know about that one

broken cipher
#

hello,
is it possible to use placeholder inside of second argument for ParseOther expansion?

%parseother_{player_name}_{player_has_permission_test.permission}%

this does not work, player_name doesn't get parsed

junior musk
#

it should

#

what does the placeholder return?

broken cipher
junior musk
#

oki

broken cipher
#

i tested with custom placeholder, Utils expansion does work, ParseOther does not

junior musk
#

oki, weird

broken cipher
#

maybe it's intended(?) to target usernames specifically and not via placeholder?

#
  • %parseother_{player_name}_{player_has_permission_test.permission}% - does not work
  • %utils_parseother:[player_name]_player_name% - works
junior musk
#

it should work with placeholder

#

idk why it doesn't but 🤷

#

Utils > ParseOther
kekw

broken cipher
#

xd

#

please just don't remove this

#

utils_parseother

junior musk
#

alright I'll remove it in the next update

broken cipher
#

XD

#

...

junior musk
#

jk

broken cipher
#

it happened with vault_colorprefix

#

or something like that

#

just stopped working

#

but that's ok

#

now i only need to wait for kangarko to implement sender placeholder in his chcred formats so i can use
%utils_parseother:[sender]_<whateverineedhere>%

#

😭

junior musk
broken cipher
#

🥲

mint fable
#

it made sense for parseother because of the widespread usage it already had when we learned about the vulnerabilities

#

||if people put player_name as an argument for a deluxemenus menu, then it could parse inside of parseother; makes it very easy for somebody to parse/abuse any placeholder||

finite imp
#

Tell me how to force JavaScript not to parse the placeholder?
If I write function stat() {return '%javascript_stat%';}
but I don't call it, the %javascript_stat% placeholder is still processed (it writes data every time it is called)
Maybe there is a method similar to this: PlaceholderAPI.parse?
Tell me where to find all PlaceholderAPI methods

mint fable
#

separate the % @finite imp

#
'%'+'javascript_stat';
finite imp
#

I tried it, it doesn't work
outputs empty value

function stat() {return st;}
stat();```
mint fable
#

that's... weird

#

it shouldn't be

#

it parses %placeholder% before the script runs

#

but when you separate it...

finite imp
#

I'm sorry, this method is still parsed

mint fable
#

hmm imma boot up a server

#

peculiar

#

javascript 2.1.2, yes?

finite imp
mint fable
#

hmm, I don't get the same result

#
var st = "%"+"player_name%";
st;
finite imp
#
var st = сс+'javascript_stat%';
function stat() {return st;}```
this method is still parsed
mint fable
#

this returns %player_name%

mint fable
#
var сс = '%';
var st = сс+'player_name%';
function stat() {return st;}
stat();
#

this returns %player_name% for me

#

when I type /papi parse cj89898 %javascript_test%

#

do you have an engine defined? @finite imp

finite imp
#

the fact is that there is a stat script assigned to it with a placeholder %javascript_stat%
The script contains huge statistics collection, and I need it to work only when I tell it to
The second script %javascript_exdata% writes the result of the first script %javascript_stat% into memory and updates the data from %javascript_stat% every minute

mint fable
#

I see

#

but it doesn't change the fact that your results are somehow different than mine

#

you are saying the script is parsing %javascript_stat%, right?

#

even when you seperate it?

finite imp
#

This is how it seems to work as it should

    a = '_stat%';
    return '%javascript'+a;
}```
#

there is a stat_data.yml file and it is no longer updated

mint fable
#

hmm

#

ok

#

that's what you want, right? @finite imp

finite imp
#

Thanks for the help, but it doesn't work as it should.
Somewhere there is a cache memory of the placeholders themselves
I used the TAB plugin to call placeholders cyclically (for testing) and reload did not help, so I removed the placeholder and put it back in place, everything became
As a result, the placeholder does not work a little correctly

//file statt.js          -    papi parse cj89898 %javascript_statt%
var st = '%'+'player_name%';
function stat(s) {return s;}
stat(st);  // displays %player_name%


//file statt.js          -    papi parse cj89898 %javascript_statt%
var st = '%player_name%';
function stat(s) {return s;}
stat(st);  // displays cj89898


//file statt.js          -    papi parse cj89898 %javascript_statt%
function stat(s) {return '%player'+s;}
stat('_name%');  // displays %player_name%
finite imp
#

@mint fable

//my work for the test was:
//TAB scoreboards: %javascript_statt%


//file stat.js
var statdata = Data.exists('ff') ? Data.get('ff') : 0;
statdata++;
Data.set('ff', statdata);
Placeholder.saveData();
statdata; //for example 23 and growing
//stat_data.yml
ff: 23.0


//file statt.js
function stat(a) {return '%javascript'+a;}
//stat('_stat%');
'1'; //displays 1
//everything works and %javascript_stat% is not parsed


//=====================================



//I change it to
//papi reload
//tab reload

//file statt.js
function stat(a) {return '%javascript'+a;}
stat('_stat%'); //displays 28 > 
//'1'; 

//this is right

//=====================================



//I change it back to
//papi reload
//tab reload

//file statt.js
function stat(a) {return '%javascript'+a;}
//stat('_stat%'); //but statdata continues to grow 36 >
'1'; //displays 1

//for some reason %javascript_stat% continues to be parsed

//stat_data.yml
ff: 36.0
finite imp
#

Since I can’t work through the placeholder database, I wanted to use the bikkit methods, but again the problem is that this method gives an error:
var player = BukkitPlayer;
var stplayer = player.getStatistic('DROP_COUNT');

[09:36:45 ERROR]: [PAPI] [Javascript-Expansion] An error occurred while executing the script 'stat
javax.script.ScriptException: TypeError: Can not invoke method [jdk.dynalink.beans.OverloadedDynamicMethod
 int org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer.getStatistic(Statistic,EntityType)
 int org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer.getStatistic(Statistic,Material)
 int org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer.getStatistic(Statistic)
] with the passed arguments; they do not match any of its method signatures. in <eval> at line number 28

what's wrong? help, I want to crash my PC already

junior musk
#

maybe I am actually, I'll double check

#

yeah I am, I'll change that too

strange stump
#

what is the syntax for the uuid of a certain player in an event (for skript variables)

kill: '&c%player% was killed by %killer% &6(%skript_killstreak.{uuid}%)'
Currently the skript_killstreak.{uuid} returns the killstreak of the victim and not the killer

strange stump
#

for example?

ocean beacon
dusky field
#

So I wanted it to show the speed attribute but it kept giving me a 1.000001 something something I wonder how to round the number

dusky field
#

uhh

#

yes

lofty grove
#

Is there still a way in the javascript expansion to use PlaceholderAPI.setPlaceholders (so I can dynamically parse placeholders)

junior musk
#

PlaceholderAPI.static.setPlaceholders(BukkitPlayer,"%"+"placeholder%");

#

the first % needs to be separated otherwise it may not parse correctly if you use variables inside the string

lofty grove
#

ok I never would have figured out that you need to do .static to get the static methods lol

barren iron
#

@carmine veldt
please help why is it working, checking two permissions, changing nothing works, who can help if there is a volley.
https://ibb.co/7n4b9YG

junior musk
#

it's has permission

#

not has_all_permissions

#

all requirement types are listed here

barren iron
# junior musk it's `has permission`

can you help please, I don’t know exactly how, what can provide the setting if it’s not difficult that would require 2 permissions for access

#

I was fiddling around all day yesterday and it didn't work

junior musk
#

has_all_permissions -> has permission

barren iron
barren iron
# junior musk

can you help please, I’ve probably already made a billion changes, issued these solutions and they are not available..

junior musk
#

send your menu file

barren iron
sharp geode
#

hey
guys i wanna something show luckperms for example police group online members like that:
PD Onlines: (Number Of Online Members In Police Group Luckperm)

#

anyone have idea about that ?

swift grove
#

why the placeholder %vault_hasgroup_group% not found

#

@tardy flare

#

@gleaming charm

junior musk
#

stop pinging everyone

#

and the placeholder was broken

#

idk if it got fixed

#

it wasn't

#

well it was but the jar hasn't been uploaded to the ecloud for some reason

#

here it is

#

go in your /plugins/PlaceholderAPI/expansions folder and replace the old Vault-Expansion.jar by this

swift grove
#

ok

mint fable
#
//file statt.js
function stat(a) {return '%javascript'+a;}
//stat('_stat%');
'1'; //displays 1
//everything works and %javascript_stat% is not parsed

//=====================================

//I change it to
//papi reload
//tab reload

//file statt.js
function stat(a) {return '%javascript'+a;}
stat('_stat%'); //displays 28 > 
//'1'; 

//this is right

//=====================================


//I change it back to
//papi reload
//tab reload

//file statt.js
function stat(a) {return '%javascript'+a;}
//stat('_stat%'); //but statdata continues to grow 36 >
'1'; //displays 1

//for some reason %javascript_stat% continues to be parsed

//stat_data.yml
ff: 36.0

For this though, I have absolutely no idea what is going on

#

because, as you state at the top: the script works

#

I also think, after looking at it after I re-posted it, that some of the commented out lines you included are incorrect

#

But if you are literally saying that the EXACT same script functions DIFFERENTLY when you papi reload, tab reload, then I have no idea what is happening

sharp geode
strange stump
#

how do i prevent rounding with the math addon

%math_2_{statistic_player_kills}/MAX(1,{statistic_deaths})%
still rounds with this

#

(for kdr)

strange stump
#

thats the part that keeps the decimal %math_[precision]:[rounding]_<expression>%

ocean beacon
strange stump
#

200/13 =15.38

ocean beacon
strange stump
#

looks right to me but it still returned "15"

junior musk
#

didn't NEZ already answer you saying that the belowname doesn't support decimals due to client limitations on <1.20.3?

#

if you check in /papi parse me %math_... you'll see that the placeholder parses decimals correctly

#

it's really just MC that didn't support decimals in the belowname number before 1.20.3

dire pine
#

how can i use the server placeholder from placeholderapi to get a server that is not the current one max players

#

i use velocity

finite imp
dire pine
#

blud did not ping a staff member lol

echo canyon
#

hi

#

how can i use

#

anyone know how to get an output like this with the Formatter extension where the decimal stops after 2:
62,676,825,459.56 -> 62.68b

Right now im using %formatter_number_shorten_<number>% and its doing:
62,676,825,459.56 -> 62.67682545955999b

heavy brook
# dire pine blud did not ping a staff member lol

when replying to someone you have the option to ping them or not. If you click reply in the little bar saying Replying to "user" on the far right side it has the @ symbol saying "ON" or "OFF" this option defines whether you are going to ping them or not when sending the message even if you dont actually @"user" them

dire pine
junior musk
#

you could use the Pinger expansion with the IP and port of the other server

dire pine
#

Tysm

arctic anvil
#

Is it possible to add a cooldown for sell/buy items in the shop?

swift grove
#

vault give me this error why [15:56:53 WARN]: A economy plugin from VAULT was not found. The VAULT economy type will not work.

jolly crystal
#

Because you don't have an economy plugin such as essentials like its requesting.

swift grove
#

im using vault plugins

jolly crystal
#

Show your plugin list.

junior musk
#

Vault is only a bridge between economy plugins (like Essentials or TNE) and plugins that get money info from players (like DeluxeMenus)

#

Vault isn't an economy plugin on its own, so you'll need to find one online

sharp geode
#

hey
guys i wanna something show luckperms police group online members like that:
PD Onlines: %luckperm_police_online%
anyone have idea about that ?

#

Or if there is luckperm itself, send it to me because I did not find it

vivid sparrow
#

use the playerlist expansion and create a list for the permission group.police

sharp geode
#

ok

dire pine
#

why is /papi bcparse EthanGarey %pinger_players_ethannetwork.net:25565%

returning 0?

#

oh wait I fixed it

ancient canyon
#

is there a palceholder in 1.8 to see if player is in water ?

silk cipher
#

How would I use this to just display days, hours and minutes, not seconds? %server_countdown_<SimpleDateFormat>_<actualdateandtimebasedonsdfspecified>%

silk cipher
#

Or I'm wondering, is there a better way to do a countdown, maybe?

mint fable
#

can you tell me what it returns right now exactly? @silk cipher

mint fable
#

try this, download formatter
%formatter_text_replace_{{r= \d\ds$}}__{server_countdown_dd-MM-yyyy hh:mm_18-2-2024 19:00}%

#

@silk cipher

silk cipher
#

That worked, thank you ❤️

mint fable
#

nice

#

no problemo

#

😊

urban canopy
#

[01:03:03] [Server thread/INFO]: [PlaceholderAPI] Placeholder expansion registration initializing...
[01:03:03] [Server thread/INFO]: [PlaceholderAPI] Fetching available expansion information...
[01:03:03] [Server thread/ERROR]: [PlaceholderAPI] Failed to load class files of expansion.
java.util.concurrent.CompletionException: java.lang.UnsupportedClassVersionError: at/helpch/placeholderapi/expansion/vault/EconomyHook has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 60.0
at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) ~[?:?]
at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1766) ~[?:?]
at java.lang.Thread.run(Thread.java:831) [?:?]
Caused by: java.lang.UnsupportedClassVersionError: at/helpch/placeholderapi/expansion/vault/EconomyHook has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 60.0
at java.lang.ClassLoader.defineClass1(Native Method) ~[?:?]
at java.lang.ClassLoader.defineClass(ClassLoader.java:1010) ~[?:?]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150) ~[?:?]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:512) ~[?:?]
at java.net.URLClassLoader$1.run(URLClassLoader.java:420) ~[?:?]
at java.net.URLClassLoader$1.run(URLClassLoader.java:414) ~[?:?]
at java.security.AccessController.doPrivileged(AccessController.java:691) ~[?:?]
at java.net.URLClassLoader.findClass(URLClassLoader.java:413) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:586) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:519) ~[?:?]
at me.clip.placeholderapi.util.FileUtil.findClass(FileUtil.java:62) ~[?:?]
at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:421) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1764) ~[?:?]
... 1 more

urban canopy
#

[01:17:18] [Server thread/ERROR]: [PlaceholderAPI] Failed to load class files of expansion.
java.util.concurrent.CompletionException: java.lang.UnsupportedClassVersionError: at/helpch/placeholderapi/expansion/vault/EconomyHook has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) ~[?:?]
at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1702) ~[?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: java.lang.UnsupportedClassVersionError: at/helpch/placeholderapi/expansion/vault/EconomyHook has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
at java.lang.ClassLoader.defineClass1(Native Method) ~[?:?]
at java.lang.ClassLoader.defineClass(ClassLoader.java:1017) ~[?:?]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174) ~[?:?]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:555) ~[?:?]
at java.net.URLClassLoader$1.run(URLClassLoader.java:458) ~[?:?]
at java.net.URLClassLoader$1.run(URLClassLoader.java:452) ~[?:?]
at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
at java.net.URLClassLoader.findClass(URLClassLoader.java:451) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:589) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:522) ~[?:?]
at me.clip.placeholderapi.util.FileUtil.findClass(FileUtil.java:62) ~[?:?]
at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$7(LocalExpansionManager.java:421) ~[?:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700) ~[?:?]
... 1 more

urban canopy
mint fable
vivid sparrow
#

55 = 11

#

Did you just download the expansion @urban canopy ?

grim thicket
#

Hello! I am trying to check if server is online with %pinger_online_ip% but even if the server is running I got "disabled" message. As I understand that is cause of closed ports. How can I fix it or are there another placeholders to check if the server online?

jovial cargo
little spruce
#

how can I make a shop (plugin used playerpoints)

#

I want to make a custom shop with a custom order

#

can i be helped?

sly ibex
#

How to CheckItem Enchantments (Unbreaking 255)

jovial cargo
#

That checks for the item in hand (both off hand and main hand)

#

And then checks if it has enchantments unbreaking 255

lean temple
#

@carmine veldt How I could register on ecloud?

vivid sparrow
#

Do you have an expansion ready to publish? @lean temple

ancient canyon
#

is there a palceholder in 1.8 to see if player is in water ?

urban canopy
tender vaporBOT
vivid sparrow
#

What?

tender vaporBOT
limber storm
#

Hey does anyone how can i fix this issue?

junior musk
#

/papi ecloud download Player
/papi reload

near forge
# junior musk /papi ecloud download Player /papi reload

Hello, I am currently having a big problem with the PlaceHolderAPI plugin. I'm close to killing myself. I installed the Statistic 2.0.1 version, but some placeholders do not work properly. For example, the one that counts deaths works, but the one that counts kills does not work. I receive an unknown placeholder message. It directed me to a site, but I could not understand much of anything on the site. I need help urgently, please help, thank you.

junior musk
#

I already answered you

limber storm
mystic crow
#

Is there a placeholder API for bungee so that e.g. syncbungee plugins have the correct placeholders in the tab list?

near forge
# junior musk

I know what placeholder is, I already use it, but when I use it, it gives an unknown placeholder error and sends me to the help site.

junior musk
#

send a screenshot of the result of /papi parse me %statstic_player_kills% in the chat

#

?imgur

tender vaporBOT
near forge
junior musk
#

what's your server version?

near forge
junior musk
#

are you on Spigot, Paper or another fork?

#

and can you send a screenshot of the message in the chat?

near forge
vestal dune
#

@tender vapor @tender vapor

#

?player

tender vaporBOT
tender vaporBOT
bronze shell
#

Does anyone know if a papi expansion allows to transform an input that is not fully made of numbers, into something else ?
like if input is !abcd4efg%, transform it into 0
if input is 4, don't do anything

#

Alternatively, something that could automatically transform a text of a specific number of caracter into something else could work in my case 🤔

#

i've searchhed a bit on the wiki with no success, since my request is very specific ahah

astral galleon
#

check general-plugins-2

ocean iron
#

Hello ! Im using Javascript-Extension and I have a question, is it possible to have the result of a Placeholder for a specific player.
I have found this code:

var hasKit = PlaceholderAPI.static.setPlaceholders(BukkitPlayer, "%" + placeholder + "%");

but it take the player who "execute" the placeholder..
I have found this code(https://github.com/PlaceholderAPI/Javascript-Expansion/wiki/Community-Scripts#checkremove-item)

var vbukkit = org.bukkit.Bukkit;
var playerArg = arg[1];
var player= vbukkit.getPlayer(playerArg);```
But when I copy this code, I have an error who said that org. is not found.. Any idea ? ^^
junior musk
#

BukkitServer.getPlayer(args[1]) instead of BukkitPlayer in the PlaceholderAPI.static.setPlaceholders

ocean iron
#
function randomjobs() {
    if (args.length === 1) {
        const metiersString= PlaceholderAPI.static.setPlaceholders(BukkitServer.getPlayer(args[0]), "%jobsr_user_jobs%");
           const metiers = metiersString.split(',');
          const indexAleatoire = Math.floor(Math.random() * metiers.length);
           const metierAleatoire = metiers[indexAleatoire].trim();
           return metierAleatoire;
    }
}

randomjobs();
junior musk
#

oh and since you're using QuickJS you don't need the static

#

so just PlaceholderAPI.setPlaceholders

ocean iron
#

Thnks u a lot !

young sphinx
#

who can helo me with this?

#

hours of the players are not showing up, and the money is only the money they have out of the bank
i want to add both in and out

austere hawk
#

Hello, is there a placeholderapi extension that could display** true or false**, with a range between 2 values?

Like :

%checkrange_[placeholder]_[min_value]_[max_value]%

austere hawk
#

I can't do a range number

ocean beacon
#

you cant do <= 30 ?

austere hawk
#

I want the value of the changeoutput to display the match only the value is between 50 and 100 for example

ocean beacon
#

or you can make a javascript

junior musk
#

%utils_parse_changeoutput_>=_input:{PLACEHOLDER}_matcher:MIN-VALUE_ifmatch:{changeoutput_<=_input:{PLACEHOLDER}_matcher:MAX-VALUE_ifmatch:yes_else:no}_else:no%

#

/papi ecloud download Utils
/papi ecloud download ChangeOutput
/papi reload

junior musk
#

right

#

thanks

ocean beacon
silk hull
#

how do i add balance to my simplescore scoreboard

vivid sparrow
#

Is it really necessary to spam FOUR CHANNELS @silk hull ?

silk hull
#

sorry i just wanna have the anwer fast

wet basinBOT
#

@silk hull Unknown expansion.

karmic basin
#

any1 know placeholders for top 10 blocks broken?

timid fox
#

Hey, i am trying to upload a new expansion to ecloud, but i forgot my password i think 💀

#

this is what i want to put on ecloud

#

nvm i didn't set the password myself i was provided one by funnycube lol 💀

#

can you verify it?

junior musk
#

isn't there Kyorify already?

timid fox
#

idk what that is but i created this to fix an issue i was facing when configuring a plugin

#

i tried to find and found none so i made my own

#

well at least replacing & isn't required anymore

junior musk
#

Kyorify does that too

nova crane
#

Hello I have the following javascript

karmic basin
#

any1 know placeholders for top 10 blocks broken?

junior musk
#

?codeblocks

tender vaporBOT
nova crane
#

`var exp = parseInt("%vault_eco_balance_fixed%");

function formatNum(num){
var suffixes = ['', 'ഫ', 'ഭ', 'മ', 'ബ'];
var decimals = 2;]
for(i=0;i<suffixes.length;i++){
if(num>=1000){
num = (num/1000);
} else {
return num.toFixed(decimals)+suffixes[i];
}
}
return (num*1000).toFixed(decimals)+suffixes[suffixes.length-1];
}

`

#

How do I make it replace the dot with a unicode?

#

`var exp = parseInt("%vault_eco_balance_fixed%");

function formatNum(num){
var suffixes = ['', 'ഫ', 'ഭ', 'മ', 'ബ'];
var decimals = 2;
for(i=0;i<suffixes.length;i++){
if(num>=1000){
num = (num/1000);
} else {
return num.toFixed(decimals)+suffixes[i];
}
}
return (num*1000).toFixed(decimals)+suffixes[suffixes.length-1];
}

formatNum(exp).replace('.', "⒑");`

#

doesn't seem to work

junior musk
#

what does it output in chat?

karmic basin
#

Someone know placeholders for top 10 blocks broken?

timid fox
junior musk
#

didn't know that was needed

timid fox
#

it's funny that due to the name i wasn't able to quickly find it

junior musk
#

well MiniMessage uses Kyori, so Kyorify seems like an adequate name

timid fox
#

yeah but Kyori (Adventure) has many serializers, not just MiniMessage

#

i didn't think of searching that

junior musk
#

🤷

vivid sparrow
junior musk
#

he wasn't using the script at all 😅

#

he did use the vault prefixes

#

the issue was that somehow, String's replaceCharacters placeholder doesn't support replacing .

nova crane
#

I forgot that the prefixes were set from vault and not from that script. Tanguygab helped me sorting it out. Thanks for all the support

hard venture
#

Not sure if a placeholder api issue or CMI, but when players use /cmi msg, they can use placeholders which return the results. Which is an issue when parse other, and data related placehodlers, like IP. Is there a permission to prevent player using placeholders?

mint fable
#

no, that sort of issue should be patched within cmi

#

it shouldn't be parsing placeholders from player input

hard venture
#

ok thanks

barren cedar
#

I downloaded the placeholderAPI plugin In TitleManager I inserted the required Placeholder I go into the Game I write /papi ecloud download OtherPlayer then /papi reload and /tm reload and nothing works

empty shadow
#

Should I modify it like that in the JSext cfg folder

sudden slate
#

Hey guys, so, I have a purchasable rank on my server where I grant it with the following command lp user <player> parent addtemp patron 10d accumulate server=survival, and I want to display the formatted time left in a DeluxeMenu, and then have it say something like "You do not have this rank. Click here to purchase" if they don't have it.

What would be the easiet way of doing so?

junior musk
#

I know lp had a placeholder for that

#

luckperms_group_expiry_time_<group>

#

for the "You don't have this rank" msg, you could make 2 items, one with a view requirement that checks if you have the group and shows you the expiry time placeholder, and another item with a lower priority that displays instead telling you to buy the rank

timid fox
mint fable
#

Does it add anything over the already existing kyorify expansion? @timid fox

timid fox
#

i did not know kyorify existed lol

warm topaz
#

kyorify also supports ampersand from what i can tell

#

we dont really want to verify this as its just a duplicate expansion

junior musk
#

just tried and it does yeah

warm topaz
#

even it didnt support ampersand, we would prefer a PR to the kyorify expansion and have that updated instead of new expansions just to add little things here and there

mint fable
#

Won't be verifying it since kyorify was already pre-existing.

echo canyon
#

how can i get
the unit time of player
playing?

mint fable
delicate pebble
#

what is the placeholder
like how many players are in queue of axepvp duels
in strike practice

plz help

#

like how many players are in queue of specified kits

timid fox
timid fox
#

Barry it was a reply

unreal relic
#

papi support skript?

radiant basalt
#

Hi! I've implemented internal expansion as showed in the wiki, but when i type /papi reload - only expansions from ecloud are loaded, mine is unloaded and placeholders aren't replaced. Is this intentional?

junior musk
#

override the persists method and make it return true

radiant basalt
#

Thanks!

oak river
#

Hi! How can i make rgb colored %player_name% to show rgb names?

#

In deluxemenus

latent arrow
#

how can i create a checkInterval the my placeholderapis?

vocal glacier
#

Lastest placeholder api work for folia

vocal glacier
#

Hello 👋

#

Why placeholder is not not working on folia server

vocal glacier
#

Why placeholder is not not working on folia server please 🥺

#

Tell it work or not

oak river
#

How can i make hex colored %player_name% to show rgb names?
In deluxemenus

ocean beacon
oak river
#

i can send u screen

#

i want it to be rgb

oak river
#

gradient color placeholder

ocean beacon
oak river
#

thx

#

can i send u screen

#

it doesnt work

#

correctly

vocal glacier
#

Hello

#

Why placeholder api not working in folia

#

Can anyone tell

oak river
#

and then /papi reload

#

if it doesnt work try to restart server

vocal glacier
#

Placeholder is not working not showing in plugins

#

/plugins command

#

I can't do papi as placeholder api is not running

#

Is there any way to fetch prefix from luck perms to Tab list

#

Even to chats

warm topaz
mellow frigate
#

hey, Is there PlaceholderAPI for folia ?

junior musk
#

your answer is in the message literally above yours

mellow frigate
#

thanks, sorry ❤️

plush dove
#

Is there a placeholder gets a list of numbers and sorts them from smallest to biggest

mint fable
#

list of numbers from where @plush dove ?

plush dove
#

Maybe something like [10, 736, 625, 84, 7]

mint fable
#

but like

#

are you the one providing them? @plush dove

#

are they returned in a placeholder?

#

where are they coming from

plush dove
#

a placeholder

mint fable
#

i don't see one, no @plush dove

#

javascript tho

#

if you want

#
var arr = JSON.parse(args[0]);
arr.sort();
arr.toString();
#

should work

plush dove
#

awesome lemme try it

#

%javascript_sortNumbers_10,254,432,2,34%

#

what would I be parsing?

#

currently returns blank if I parse that

mint fable
#

oh I did it with the []

#

@plush dove

#

or you can edit the script and add the [] in there

#

JSON.parse("["+args[0]+"]");

plush dove
#

parsed %javascript_sortNumbers_[213,213,432]%

#

returned blank

mint fable
#

hmm

#

i gotta head to bed for now

plush dove
#

👍

turbid reef
#

Please tell me how to make the statistics placeholder display in the chat not its own played time, but the played time of the person you targeted?

#

ping me pls

civic orchid
#

Is there any placeholder so that the server can calculate how many times a player has killed a certain mob?

#

Is for rankups

civic orchid
night pike
#

%statistic_deaths_%

untold nymph
#

Is there a placeholder for getting the mobs current health and mob max health?

mint fable
#

like, a mob you are fighting?

untold nymph
#

yes

turbid reef
weak robin
#

is there a placeholder for getting dd/mm/yyyy ?

junior musk
#

%server_time_<format>%

dense sequoia
#

is there any chance you can do something like %playersname_luckperms_prefix% you will enter the players name and it will tell you the value?

weak robin
dense sequoia
weak robin
#

yes

dense sequoia
junior musk
#

?imgur

tender vaporBOT
dense sequoia
#

is there any chance you can do something like %playersname_luckperms_prefix% you will enter the players name and it will tell you the value?

weak robin
dense sequoia
#

thanks :)

weak robin
junior musk
#

😐

#

you didn't use any format

#

<format> needs to be replaced by an actual format

junior musk
weak robin
#

that means dd/mm/yyyy

#

?

junior musk
#

yeah

#

I think mm is for minutes though

#

so you'll need MM

weak robin
#

is it . or /?

junior musk
#

you can use the one you want

weak robin
#

ok

#

solved

#

thank you @junior musk

plush dove
plush dove
mint fable
#

uh idrk what's going on @plush dove

#

I literally googled all 3 lines of code

#

how to parse array from string javscript

#

how to sort array javascript

#

how to turn array to string javascript (okay this one I knew already)

#

maybe try it in a function with a return value?

#

shouldn't make a difference, but

#
function parseArr(input){
  var arr = JSON.parse(input);
  arr.sort();
  return arr.toString();
}
parseArr(args[0]);

@plush dove

#

🤷‍♀️

merry jasper
#

What’s up

#

I work with js daily lol

plush dove
#

yea still returning blank

merry jasper
#

Send js code and the problem

mint fable
#

if args[0] is [24, 9787, 12, 38] (string)

merry jasper
#

What’s your full block of code? And how are you calling it

mint fable
#

that is the entire code, being used in the javascript expansion

#

%javascript_test_[24, 984, 12, 38]%

#

so args[0] gets parsed as [24, 984, 12, 38]

#

the return value for the js placeholder is the last line of the javascript

#

so in this case, parseArr(args[0]);

mint fable
#

i would debug @plush dove

merry jasper
merry jasper
merry jasper
#

array === [1, 2, 3, 4]

mint fable
#

args is an array of string arguments

merry jasper
#

Gotcha

mint fable
#

args[0] literally would be [24, 984, 12, 38] (as a string)

merry jasper
#

Ahhhh

mint fable
#

i'm trying to parse it into a number array

#

then sort it

#

then return it

merry jasper
#

Right

mint fable
#
function parseArr(input){
  return input;
  var arr = JSON.parse(input);
  arr.sort();
  return arr.toString();
}
parseArr(args[0]);

@plush dove debug each line like this (add return for each value testing one at a time)

merry jasper
#

Is there any error messages

mint fable
#

I would debug each line

#

i'll leave this to y'all

merry jasper
mint fable
#

gl, i'll be on some other time if you don't get it working

mint fable
polar knoll
#

Guys how to download this placeholder %rewardslite_playtime_short%

wet basinBOT
#

@mint fable Unknown expansion.

mint fable
#

it might be included in the plugin @polar knoll

#

/papi parse <player> %rewardslite_playtime_short%

polar knoll
#

Okay

#

Thx

mint fable
#

yep

merry jasper
#

()

polar knoll
#

Its work but i need it on sidebar

plush dove
#

I never registered the javascript in javascript_placeholders.yml

#

:l

vivid sparrow
#

Iirc args are split by comma, so this won't work 🤔

plush dove
#

yeppppp just saw that

#

pog chatgpt got it working

#

Hmm the commas going to be an issue

vivid sparrow
#

You can use another separator and then replace it within the script

turbid reef
#

I need the placeholder to display not my played time, but the player I'm targeting

polar knoll
#

@fervent spire

#

Can u help me

polar knoll
#

/papi parse <player> %rewardslite_playtime_short%

#

i want %rewardslite_playtime_short% in the scoreboard

#

But its say rewardslite_playtime_short not the placeholder

polar knoll
turbid reef
plush dove
#

do /papi parse me %parseother_{username}_{statistic_hours_played}%

turbid reef
plush dove
#

try your name in the username field

turbid reef
plush dove
#

try {{your_placeholder_for_username}}

#

double brackets

#

another thing you can trry is %parseother_unsafe_{username}_{statistic_hours_played}%

#

I have no idea what that does but it might solve your problem

turbid reef
#

if so, then it displays an error

plush dove
#

%parseother_{{your placeholder}}_{statistic_hours_played_for_username}%

junior musk
#

it's either
%parseother_{PLAYER NAME DIRECTLY}_{statistic_hours_played}%
or
%parseother_unsafe_{PLACEHOLDER RETURNING PLAYER NAME}_{statistic_hours_played}%

#

so for example: %parseother_{Tanguygab}_{statistic_hours_played}%
or %parseother_unsafe_{player_name}_{statistic_hours_played}%

#

if you're using DeluxeMenus arguments as the name, use %parseother_unsafe_{{ARGUMENT NAME}}_{statistic_hours_played}% with the doubled brackets like Dune mentioned, but that's only necessary for arguments (because they aren't PAPI placeholders)

plush dove
#

is that meant to say thank you? 🤣

junior musk
#

I think their 1st msg got deleted because of the caps 😅
so it was a "thank you" to me, and "and you" to you

polar knoll
#

@junior musk help

#

I wanna use parse placeholder but its doesn't work

junior musk
#

which placeholder?

#

and where?

polar knoll
#

plugin: Rewardslite
Placeholder: %rewardslite_playtime_short%

#

@junior musk this

junior musk
#

/papi parse me %rewardslite_playtime_short%

#

what does it say in chat?

polar knoll
#

Its work

#

But in the sidebar doesn't work

#

@junior musk he say the playtime like:
/papi parse natro %rewardslite_playtime_short%
say: 49m, 41s

junior musk
#

which scoreboard plugin are you using?

polar knoll
#

1s

polar knoll
junior musk
#

can you send a screenshot of the scoreboard?

#

?imgur

tender vaporBOT
junior musk
#

Oh

polar knoll
junior musk
polar knoll
#

Or not

junior musk
polar knoll
#

I mean use in the scoreboard%rewardslite_playtime_short%

junior musk
#

well that's what you want, no?

polar knoll
#

1s

polar knoll
#

Its work now

junior musk
#

well, you have to use placeholders for them to work ¯_(ツ)_/¯

polar knoll
junior musk
#

you forgot the %% around the placeholder

polar knoll
#

No

#

I type it right and 3 times

#

And edit them like %{player}_rewardslite_playtime_short%

#

And more

#

But its work now thonking

junior musk
#

🤷

polar knoll
#

Nah

#

I lost 7hours in this

#

Do u know how to make them pixel? @junior musk

#

Small and pixel

#

Some server do it

#

But i don't know how

junior musk
#

resource packs

#

or actually

#

I know one of the fonts there works

polar knoll
mint fable
plush dove
#

I was!

#
  var numbersArray = input.slice(1).split('|').map(Number);
  var sortedNumbersArray = numbersArray.sort(function(a, b) {
    return a - b;
  });
  return "|" + sortedNumbersArray.join('|');
}
parseArr(args[0]);```
#

that's the final code

#

super messy

#

but it's whatever 🤣

vivid sparrow
#

Cool

wispy pond
#

How can i ban a 10 year old kid?

onyx hound
#

/ban

ocean beacon
#

seem like pareother dont work with deluxemenus's meta

junior musk
#

how so?

#

if you're trying to get an offline player's meta, that won't work

ocean beacon
#

nah, my bad

#

%utils_parse_math_0_{parseother_{{player}}_{griefprevention_remainingclaims}}+{deluxemenus_meta_chuyen-block-amount_INTEGER_0}%

#

hmm...

junior musk
#

uh

ocean beacon
#

maybe utils shortcut can help

junior musk
#

I don't think you can do that with Parseother

#

yeah

#

though just use Utils' parseother feature at this point

#

uh

#

actually it might be the same thing for my parseother lol

ocean beacon
#

%value% :?

ocean beacon
junior musk
#

?

ocean beacon
junior musk
#

oh yeah, that's what I was saying

junior musk
#

though you could make a shortcut

ocean beacon
#

@junior musk thonking
%utils_shortcut_parseother:TTA_gaf_1:{griefprevention_remainingclaims}% = 132
%utils_parse_math_0_{utils_shortcut_parseother:TTA_gaf_1:{griefprevention_remainingclaims}}+0% = 80

#

ok, i fixed it

junior musk
#

not what I expected but sure

bronze shell
#

Hey Tanguy, i'm still having a bit of trouble with utils placeholder shanenigan, following our last conversation if you can remember

#

short reminder : i made a utils placeholder so that it cover the case where if a placeholder is not loaded (=appears as text instead of giving the expecting value), it replaces the whole missing placeholder text, including the % signs, into a 0

#

it looks like this
%changeoutput_equals_input:{mmocore_cooldown_bound_{0}}_matcher:\{ascii_123\}mmocore_cooldown_bound_{0}\{ascii_125\}_ifmatch:0_else:{mmocore_cooldown_bound_{0}%

#

and then i wanted to put this utils shortcut into another utils shortcut, like so
%changeoutput_equals_input:{mmocore_bound_{0}}_matcher:noskill_ifmatch:0_else:{utils_shortcut_cdfix:{0}}%
"cdfix" is the name of the first placeholder posted just above this one

#

but it doesn't work, value get stuck on 0 even after the placeholder is loaded and gives normal output value

junior musk
#

/papi parse both placeholders

bronze shell
#

any idea where i messed up?

junior musk
#

send the outputs

#

?imgur

tender vaporBOT
bronze shell
#

kk

junior musk
#

also parse %mmocore_bound_{0}% with the value you used instead of {0}

#

and maybe send your PAPI config just in case

#

?paste

tender vaporBOT
junior musk
#

and they died

#

sad

bronze shell
#

ahah no no sorry i had a quick work emergency

#

freelance life do be like that sometimes

#

the cdfix placeholder is returning me error, im trying to figure out why

#

(i changed all the {0} into 1 before parsing it ofc)

junior musk
#

send the error

bronze shell
junior musk
#

PercentSign expansion?

bronze shell
#

i have no idea what that is

#

am i supposed to have it or the other way around

junior musk
#

does it show in /papi list? might not even be a thing but it looks weird

bronze shell
#

nope

#

it looks like the ascii expansion is struggling somehow?

#

if there's any other placeholder i could use to replace an entire output by something else i guess it could work

junior musk
#

send /papi dump

#

oh wait

#

it's normal

#

the placeholder isn't being parsed in Utils anymore so the \{ & \} will break

#

%utils_parse_changeoutput_equals_input:{mmocore_cooldown_bound_1}_matcher:\{ascii_123\}mmocore_cooldown_bound_1\{ascii_125\}_ifmatch:0_else:{mmocore_cooldown_bound_1}%

bronze shell
#

ahhh alright, i knew about the {0} but not the \

#

okay it gives 0.0 which is the correct value (cooldown remaining for a skill)

#

if skill is in cooldown, value is updated (6.2 for example)

junior musk
#

didn't you say you had a shortcut for that though?

bronze shell
#

you mean the second utils shortcut? yes

junior musk
#

doesn't this have a shortcut?

bronze shell
#

this one you just pasted is just a failsafe, because when a player login, mmocore does not load the skill cooldown placeholder right away, so it returns an error

junior musk
#

yeah but why'd you parse it directly and not just /papi parse me %utils_shortcut_<name>:1%? 😅

bronze shell
#

i forgor

junior musk
bronze shell
#

does it matter ?

junior musk
#

not really

#

just a whole lot easier lol

#

anyways

#

what about the other shortcut?

bronze shell
#

yeah fair

#

gonna try now

#

output nothing

junior musk
#

also check %mmocore_bound_1%

junior musk
bronze shell
#

i guess you meant mmocore_cooldown_bound_x, which output the expected value

junior musk
bronze shell
#

it gives the name of the skill, i don't understand why you're asking me this one

junior musk
#

in case it might have returned noskill 😅

bronze shell
#

ah yeah no

junior musk
#

so this doesn't return anything ?%changeoutput_equals_input:{mmocore_bound_{0}}_matcher:noskill_ifmatch:0_else:{utils_shortcut_cdfix:{0}}%

bronze shell
#

it return noskill only if i have nothing bound of the first "skill slot" of my plugin, which is clearly not the case

#

correct

#

like nothing as in an empty line in chat

#

no error whatsoever

junior musk
#

/papi parse me %utils_shortcut_cdfix:1%

bronze shell
#

that's what i did yes

junior musk
#

uh

#

send your PAPI config

junior musk
bronze shell
#

i know, hence my struggle

bronze shell
junior musk
#

send your PAPI config.yml

#

?paste

tender vaporBOT
bronze shell
junior musk
#

/papi parse me %changeoutput_equals_input:{mmocore_cooldown_bound_1}_matcher:{ascii_123}mmocore_cooldown_bound_1{ascii_125}_ifmatch:0_else:{mmocore_cooldown_bound_1}%

bronze shell
#

expected output, 0.0

junior musk
#

when you write /papi parse me %utils_shortcut_ (don't press enter), do you see cdfix being suggested?

bronze shell
#

nope, i only have othermath suggested

junior musk
#

o

bronze shell
#

and <name>

junior musk
#

/papi reload ?

#

or wrong PAPI config.yml file maybe?

#

from a different backend server I mean

bronze shell
#

no i have only one server and one papi config file

#

reload worked with no issue

junior musk
#

does it show cdfix & noskillcd_check now?

bronze shell
#

nah

junior musk
#

O_O

bronze shell
#

i know right 🙃

junior musk
#

✝️ cursed

#

outta dis house

bronze shell
#

not sure if checking the autofill is a good way of checking for error tho

junior musk
#

if it's not showing up in there, it means the shortcut wasn't registered

bronze shell
#

utils bad

#

:^)

#

idk i can regenerate the config file perhaps

junior musk
#

yeah try that

bronze shell
#

what the fuck is going on

junior musk
#

🤷

#

does it work now?

bronze shell
#

now when i re-add my utils shortcut and reload papi, the whole config file get regenerated completely

junior musk
#

send the file before it gets regenerated

bronze shell
#

oh shall i restart the server to regenerate the config file perhaps?

#

i just deleted it and /papi reload

junior musk
#

seems fine

bronze shell
#

💀

junior musk
#

it does throw issues regarding the \

#

maybe try doubling them?

#

\\{ & \\}

bronze shell
#

ayy no wipeout now

#

shortcut are showing up

#

\ was the culprit

junior musk
#

yay

#

how the fuck did it work for me then lol

bronze shell
#

wait now i'm getting errors when parsing the two shortcut

#

the struggle aint over

#

o no i'm getting console spammed

junior musk
#

send the errors

bronze shell
#

wait im gonna update all my expansion and check if i forgot anything important from my og config file first

junior musk
#

send the error ;-;

bronze shell
#

it was a happyhud error

junior musk
#

o

bronze shell
#

(which is related to papi but it's on my side for this one)

junior musk
#

ooky

#

and do both shortcut work in /papi parse ?

bronze shell
#

they appear but gave me internal error

#

lemme update everything and do a clean server start

junior musk
#

send that error

bronze shell
#

i will once i reboot the server

junior musk
#

;-;

bronze shell
#

k im back

#

updated all the expansion i had, regenerated config.yml, and added back the utils shortcuts

#

again with the 123\

#

i do have the doubled \ in the shortcut however

#
noskillcd_check: "%changeoutput_equals_input:{mmocore_bound_{0}}_matcher:noskill_ifmatch:0_else:{utils_shortcut_cdfix:{0}}%"

cdfix: "%changeoutput_equals_input:{mmocore_cooldown_bound_{0}}_matcher:\\{ascii_123\\}mmocore_cooldown_bound_{0}\\{ascii_125\\}_ifmatch:0_else:{mmocore_cooldown_bound_{0}}%"```
junior musk
#

make a random new shortcut, call it test or smth, test: "\\"
then do /papi parse me %utils_shortcut_test%

bronze shell
#

output is test: \

junior musk
#

in chat?

bronze shell
#

yes

junior musk
#

I'm not sure what the issue is

#

okay, other idea

#

can mmocore_cooldown_bound return a number?

bronze shell
#

yes, it SHOULD return a number

junior musk
#

wtf am I saying

#

can it return a number below 0 ?

bronze shell
#

no

junior musk
#

nice

#

"%changeoutput_>=_input:{mmocore_cooldown_bound_{0}}_matcher:0_ifmatch:{mmocore_cooldown_bound_{0}}_else:0%"

bronze shell
#

for the cdfix shortcut i presume

junior musk
#

yeah

bronze shell
#

output works

#

0.0

junior musk
#

great

bronze shell
#

what did it do exactly?

junior musk
#

does the other placeholder work as well?

#

checks if the placeholder is a number >= 0

bronze shell
#

noskillcd_check works too

junior musk
#

instead of checking if the placeholder returned itself

junior musk
bronze shell
#

ahhhhh yes that's what i wanted in the first place

#

that way i don't even need the ascii expansion

junior musk
#

yeah

bronze shell
#

now i just need to be sure it actually works as a failsafe when a player login and the placeholder is not loaded

#

nope, still happening

junior musk
#

is it throwing an error?

#

if it is, then Utils can catch it fingerguns

bronze shell
#

math error yes, because basically the hud is trying to do a math calculation with the mmocore cooldown bound placeholder

junior musk
#

uh

#

but the changeoutput should return a 0

bronze shell
#

but because the placeholder aint loaded, it's not a possible math calculation

junior musk
bronze shell
#

yes, lemme doublecheck

#

the placeholder giving out the error is %math_0:_{utils_shortcut_noskillcd_check:1}+1%

junior musk
#

show the error

#

and your PAPI config

bronze shell
junior musk
#

/papi parse me %changeoutput_>=_input:{mmocore_cooldown_bound_1_matcher:0_ifmatch:{mmocore_cooldown_bound_1_else:0%

#

I removed the } on purpose (to simulate the placeholder not being loaded)

bronze shell
#

gives out {mmocore_cooldown_bound_1

junior musk
#

well that wasn't expected lol

#

okay, other idea

#

/papi parse me %changeoutput_>_input:{mmocore_cooldown_bound_1_matcher:0_ifmatch:{mmocore_cooldown_bound_1_else:0%

plush dove
#

No ending }}?

bronze shell
#

it's on purpose

plush dove
#

Ah alright

junior musk
bronze shell
#

gives out 0

junior musk
#

finally

bronze shell
#

just cuz of the equal sign?

junior musk
#

yeah

#

apparently ChangeOutput defaults the placeholder to 0 if it isn't valid instead of making the check fail

sterile cradle
#

Hey, when i use %vault_prefix% on LuckPerms it doesn't work

https://cdn.discordapp.com/attachments/1206959936123441202/1209514983101046804/2f05dfefdbdcf4186af0e57a42186d8b.png?ex=65e7339b&is=65d4be9b&hm=9a6d95c56926dfa021a0acb9f32d7efdfbb6a59591a9e111f3776bdc7f29bdfd&

This is my code:

players.sendMessage(PlaceholderAPI.setPlaceholders(player, OorlogSimulatie.instance.kgetConfig().lobby_StaffShout)
                            .replace("%player%", player.getName()).replace("%message%", (player.hasPermission("os.colorchat")) ?
                                    ChatColor.translateAlternateColorCodes('&', e.getMessage()).substring(1) : e.getMessage().substring(1)));```
bronze shell
#

sweet, i'll update that in my config

#

shortcuts works!

#

the struggle is over

junior musk
bronze shell
#

aaaaand no error when logging in

#

thank you so much! couldn't have done it without you for sure

#

and ascii expansion => 🚮

sterile cradle
# junior musk use the ChatColor.translateAlternateColorCodes outside of the PlaceholderAPI.set...

Still doesn't work or I am doing something not right:

                for (Player players : Bukkit.getOnlinePlayers()) {
                    String message = e.getMessage();
                    String format = PlaceholderAPI.setPlaceholders(player, OorlogSimulatie.instance.kgetConfig().lobby_StaffShout
                            .replace("%player%", player.getName()));
                    if (player.hasPermission("os.colorchat")) {
                        format = format.replace("%message%", message);
                    } else {
                        format = format.replace("%message%", ChatColor.translateAlternateColorCodes('&', message));
                    }
                    players.sendMessage(format);
                }```
junior musk
#

I meant have ChatColor translate the output of PlaceholderAPI.setPlaceholders

#

you're only parsing the msg right now, not the format

#
                for (Player players : Bukkit.getOnlinePlayers()) {
                    String message = e.getMessage();
                    String format = PlaceholderAPI.setPlaceholders(player, OorlogSimulatie.instance.kgetConfig().lobby_StaffShout
                            .replace("%player%", player.getName()));
                    format = ChatColor.translateAlternateColorCodes('&', format).replace("%message%", message);
                    if (player.hasPermission("os.colorchat")) {
                        format = ChatColor.translateAlternateColorCodes('&', 
                    }
                    players.sendMessage(format);
                }
#

I think that should do it

#

getting the format, parsing placeholders in it, parsing colors, replacing the %message% placeholder, checking if player has the os.colorchat permission and parsing colors again if yes

sterile cradle
#

The last line is not fully filled: format = ChatColor.translateAlternateColorCodes('&',
I think you meant this right? format = ChatColor.translateAlternateColorCodes('&', message);

junior musk
#

oh mb

sterile cradle
#

No problem man

junior musk
#

otherwise it'll yeet the entire format 😅

sterile cradle
#

Ah yes I see

#

I'll try this

#

But the weird thing is, this worked for me before

#

And since a year or so it doesn't

junior musk
#

that's because PAPI doesn't parse colors anymore

#

it used to, but that was removed in like 2.11.3 or smth

#

almost, .2

sterile cradle
#

Ahh that declares why

#

🤦‍♂️

scarlet dome
#

0

#

0

bronze shell
#

what does it do?

#

automatically replace a placeholder into something else if the placeholder is not working?

junior musk
#

yeah

#

if the placeholder returns itself, return the default value

swift grove
#

Why the %playtime% placeholder not found ?

#

Im using awesome Playtime plugins

bronze shell
#

but thanks for keeping me informed of it

cerulean marlin
#

Why does "/papi ecloud download skript" not work?

#

It just says "Failed to find an expansion named: skript".

mint fable
#

@cerulean marlin

vocal glacier
#

So when is support comming for folia

cerulean marlin
tender vaporBOT
rich glen
#

um, using Math placeholder, how do I define the precision?

#

it returns me ex. 2.000 for sum operation, instead of just 2.

#

the docs dont seem up-to-date

junior musk
#

%math_0_<expression>%

rich glen
#

%math_0_{server_online_SurvivalWorld}+{server_online_SurvivalWorld_nether}+{server_online_SurvivalWorld_the_end}%

junior musk
rich glen
#

The provided value was invalid

junior musk
#

/papi parse me %math_0_{server_online_SurvivalWorld}+{server_online_SurvivalWorld_nether}+{server_online_SurvivalWorld_the_end}%

rich glen
#

Unknown unary operator ':' at position 1

#

nvm

#

wrong err

junior musk
#

lol

rich glen
#

Too many numbers or variables

#

that's the one

junior musk
#

is there more?

rich glen
#

can't send ss

junior musk
#

?imgur

tender vaporBOT
rich glen
#

ik

junior musk
#

?paste

rich glen
#

cba

tender vaporBOT
rich glen
junior musk
rich glen
#

the fuck

junior musk
#

?paste

tender vaporBOT
rich glen
#

istg imgur

#

I literally have it open

#

but when I go to the link

#

its 404

#

the fuck

bronze shell
#

Does anyone know if a placeholder exists that detect if the player is "freezing" (through powder snow or any other mean)? I searched already but with no success

#

imgur sucks ass, use imgbb

junior musk
#

?paste

tender vaporBOT
rich glen
#

I cant paste image wat

tender vaporBOT
junior musk
bronze shell
#

crap

rich glen
#

with
/papi parse M0dii %math_0_{server_online_SurvivalWorld}+{server_online_SurvivalWorld_nether}+{server_online_SurvivalWorld_the_end}%

I get:

The provided value was invalid!
Reason: Too many numbers or variables
#

without the _0_ it works fine

junior musk
#

/papi info Math

rich glen
#

just returns with 2.000 instead of 2

junior musk
#

which version?

rich glen
#

registered
Andre_601
1 0 7

junior musk
#

outdated

#

massively outdated

rich glen
#

tf

#

I just downloaded it

#

wtv

junior musk
rich glen
#

oh

#

I have to expansions in the folder

#

its using the old one

#

ight

#

all good

#

thx

obtuse bobcat
#

I have a question, how can I put an image from a server file as a placeholder?

civic orchid
#

Is there any placeholder that shows player kills?

astral ferry
civic orchid
#

I solved it

astral ferry
#

okay

civic orchid
#

And I asked wrong question 💀

astral ferry
#

oh okay 😂

#

I have a problem with the player placeholder because every time I restart the server the version of it resets to 1.0 and then doesn't work.

mint fable
#

I've seen like 2 or 3

#

the devs clearly don't know how to properly hook into papi

#

Send a dump I can take a look

tender vaporBOT
astral ferry
mint fable
#

i believe it's animabossbar @astral ferry

astral ferry
#

Okay i try it

mint fable
#

yes it is

#

remove that, sshould be all good

astral ferry
#

Okay thank you 😄

mint fable
#

it's honestly stupid and I have no idea why they did what they did

#

but 🤷‍♀️

astral ferry
#

Nice it works 🙂

mint fable
#

nice

worldly wolf
#

hi

obtuse bobcat
#

Is there a placeholder that displays an image in the ranges?

plush dove
#

For papi checkitem, any way to check the slots of opened chests?

quaint salmon
#

Resent Message in dev channel"

slow zealot
#

Hello, I had a very stupid question..
Whats the placeholder used for custom backward countdowns timers like it starts from 59 minutes and goes all the way to 0

tender vaporBOT
slow zealot
#

Oh ok

#

am sorry

wet orbit
#

hi, i have a problem with
[18:11:29 ERROR]: [PlaceholderAPI] Failed to load expansion class ConfigExpansion - One of its properties is null which is not allowed!
who can help?

#

thats not all errors, its one of 5

#

i can give you link that can show you all the problem at host (its a website)

#

If anything, i'm sorry for my english, but I'm russian

mint fable
# slow zealot am sorry

deleting the message makes it worse fyi 😉
It just gives me a ghost ping with no message for me to find 🙁

wet orbit
#

any supports? who can help?

#

anyone?

#

@idle leaf