#placeholder-api

1 messages · Page 160 of 1

vast mauve
#

Yes I am I think.

#

I got it by doing /papi ecloud download server

errant iron
#

Oh yeah that's not it

vast mauve
#

Really?

errant iron
#

Yes

vast mauve
#

Did not know that. Thanks.

errant iron
#

They changed how NMS is mapped, so the code tries to look in the wrong place with the old one

#
            if (minecraftVersion() >= 17) {
                craftServer = Class.forName("net.minecraft.server.MinecraftServer").getMethod("getServer").invoke(null);
            } else {
                craftServer = Class.forName("net.minecraft.server." + version + ".MinecraftServer").getMethod("getServer").invoke(null);
            }```
#

There's the check

vast mauve
#

Ok, thanks.

#

I have this. PlaceholderAPI-2.10.10-DEV-123

errant iron
#

That

vast mauve
#

I put that in the expansion folder right?

errant iron
#

Yes and delete the old server expansion

#

This is just an expansion upgrade that isn't on the ecloud because it's 1.17 and still testing

vast mauve
#

Gotcha.

#

That worked. Thanks a bunch.

warped brook
#

Is there a way to add some tab complete to the open gui command?

ivory narwhal
#

Hello,
I would like to have my expansion verified. Who should I contact for this? expansion is staffplusplus

vast mauve
trim mist
#

It's from an expasnion, not PAPI.

vast mauve
#

Ah, ok.

#

Any way I can fix it like I did with the server expansion?

unique leaf
#

contact the expansion developer

heady heath
#

but that just lists the expansions that i got

#

not the placeholders that come with the expansion

meager vault
#

okay it worked, I just uploaded it on the wrong server x)

#

thanks a lot 😄

meager vault
#

But I'll get error for all my script with "has permission" 😦

For example this one :

var permissions = ["quete.pierre.mineur", "quete.pierre.boucher", "quete.pierre.bucheron", "quete.pierre.chasseur", "quete.pierre.terraformeur", "quete.pierre.brocanteur", "quete.pierre.fermier", "quete.pierre.maire"]
var counter = 0

var i
for (i = 0; i < permissions.length; i++) {
  if (player.hasPermission(permissions[i])) counter++
}

var counterFormated = counter.toString().split(".")
counterFormated[0]```
I get the error :
```[09:11:32 ERROR]: [PAPI] [Javascript-Expansion] An error occurred while executing the script 'quetes_pierre':
        org.graalvm.polyglot.PolyglotException: TypeError: invokeMember (hasPermission) on org.bukkit.craftbukkit.v1_16_R3.entity.CraftPlayer@6d5770b failed due to: Unknown identifier: hasPermission```

So I don't know how to fix that :/
junior musk
meager vault
junior musk
#

use the placeholders in your permissions var and use if (permissions[i] == "yes") in the loop

meager vault
junior musk
#

x)

meager vault
#

thanks

frank glacier
#

How does the "worth" placeholder work from the Essentials PAPI expansion? How do I tell it which block to check?

flat spruce
#

Hey, the checkitem_remove placeholder doesn't remove items in offhand or armour slots and players are abusing that on our server, is it possible for it to remove them?

ivory narwhal
#

Hello,
I would like to have my expansion verified. Who should I contact for this? expansion is staffplusplus

trim mist
#

Can I get a link to the GitHub source for the expansion & SpigotMC page?

ivory narwhal
#

sure

#

I don't have a separate spigot resource for the expansion alone

turbid tide
#

btw if its for a plugin you should think about moving the expansion inside your plugin. can make your and other's life easier

ivory narwhal
#

But the wiki says the ecloud is the preferred way?

turbid tide
#

ugh it still does?

#

I thought I changed that

ivory narwhal
#
You can either make a separate jar file, to upload it to the expansion-cloud (recommended) or have it as a local class inside your plugin.
errant iron
#

Oh yeah no its way better as part of your plugin

turbid tide
#

oh well I may have forgot to change it. I personally recommend inside the plugin

#

will change it later

#

if I don't forget again

#

xD

errant iron
#

Then you don't have to deal with a whole nother project and versions and stuff

#

Then people don't have the option to forget to download it etc

turbid tide
#

and people don't have to download it. it will just work with just the plugin. and that is also nice

ivory narwhal
#

I don't really mind having another project. keeps my core plugin clean from all the papi stuff.
But yeah for the users it might be inconvenient

errant iron
#

Clean from one class? Lmao

#

Plus then you can easily add placeholder support for other plugins' placeholders

warm topaz
#

personal preference

#

both options have their ups and downs

errant iron
#

What downs does integrating it have

#

The only reason a separate thing even exists is so that third parties can make expansions using an api

warm topaz
#

having to update ur whole plugin just to add/change placeholders

errant iron
#

I don't see the problem with that

#

People are more likely to update your plugin than they are to update your expansion anyways

ivory narwhal
# warm topaz having to update ur whole plugin just to add/change placeholders

This is a good reason to keep it separated. Same reason I keep all discords integrations in a separate plugin.
I don't want to release/impact my core plugin for an addition of a placeholder.
But that my background is in microservices, which I guess is a long way from any minecraft related stuff.
I like to separate different functionalities in different components.

#

I will keep it in an expansion for now, just wondering if I can get it verified?

turbid tide
errant iron
#

And your end users still have to do something

#

How much of a difference is there between updating your plugin and downloading an expansion, especially if you have a nice autoupdater

trim mist
#

Looks okay. I just verified it. Should show up in-game within the next 2 hours.

turbid tide
#

I mean yeah anyways both options are OK. but for me, Especially if the expansion is small, I Preffer to keep it inside my plugin

#

but hey its an option you have.

#

you mean vault? Not really no.

#

so you might be able to do something with the javascript expansion (as in format the number yourself) but I'm not really sure

#

and about plugins, I don't know any no

ivory narwhal
#

Thanks Waffles
Didn't know adding an expansion to the cloud would be not recommended.
I plan on having many placeholders. It won't be 1 class in my case.
But thanks for the discussion. One more thing, it doesn't need to be verified for every version update right?

turbid tide
#

well its not not recommended. its just easier for everyone if you add it in your plugin

#

that's all

warm topaz
turbid tide
#

o?

warm topaz
#

@errant iron just for the record, i do prefer having the expansions in the plugin myself, was merely stating what a downside could be

turbid tide
#

u sure you're not a verified user?

#

bcz this guy's expansion was verified before

warm topaz
#

im pretty positive im not a verified user

turbid tide
#

I Think

trim mist
#

If you are a verified user, you don't need it each time. But we also don't give that out to just anyone.

#

It's not a problem for us to go and just manually verify again.

turbid tide
#

see Kaliber. u do need it verified

warm topaz
#

ive never had rng expansion reverified and i still have the verified logo

#

unless u guys sneakily check each update without me knowing

trim mist
#

Kaliber, your author account is verified, which is why.

warm topaz
#

🤨

#

since when

trim mist
#

I don't have an exact date for that.

warm topaz
#

well uh

#

cool i guess 😂

trim mist
#

Probably when you became Support is my guess.

turbid tide
#

I don't even have an account.

trim mist
#

That is correct.

#

@warm topaz Wait, were you the one that went through and did the PR stuff for all the misc repos? I probably gave you it then just to make your life easier.

warm topaz
#

i did yeah

#

man that was like a year ago, and i still have some PRs open kekw

errant iron
ivory narwhal
# errant iron ah okay lol, just weird that people use that for their own plugin

I could understand not wanting to have a separate deployable. But to find it weird seems weird. You must have come across the concept of separating services in a professional setup. Keeping the core domain clean. It's not really about how many classes it's just about the fact that placeholders have nothing to do with the core functionality of my plugin. I'm not saying one is better than the other just stating that it is not so farfetched

errant iron
#

everything is part of it, so I do find it weird to separate placeholders when the whole reason expansions exist is to add placeholder functionality to someone else's plugin

#

if it's your own plugin, it makes everyone's lives easier to unify them including yours

ivory narwhal
#

To me there is no conceptual difference between adding placeholders to your own plugin or to someone else's

errant iron
#

ease of use, no chance of errors coming from separate things and not having one part or the other

#

don't have to get verified, stops a lot of support questions

#

easier to see where everything is since you don't have to go to a separate repo to edit them

#

you can use your own API way easier

ivory narwhal
#

Disagree with the chance of errors. Separating it minimizes impact on the rest of the system. Separate repo means other devs can easier expand the placeholder since the codebase will be small and clear. Faster releases because there is no impact on the plugin. Verification is just because I choose to use ecloud as a distribution system. I could distribute through another way. Using your own API easily just means you won't use the API and have a chance your placeholder logic will get scattered in your plugin

#

But like I said, it's not black or white. But solutions seem ok for me.

errant iron
# ivory narwhal Disagree with the chance of errors. Separating it minimizes impact on the rest o...

The chance of errors is objectively higher because people could have the wrong plugin version for the placeholder, the wrong placeholder version for the plugin, they could fail to download it and complain, etc. Separating it barely does anything. It's a single file, any competent developer can easily find it and improve it. That one class will have no impact on how quickly you release I guarantee it. Using anything other than ecloud is an absolutely horrid idea, if you're gonna be weird and make it an expansion at least use the proper distribution system. You can use your own API in your own plugin, it's usually just easier to access things from within your own plugin that having to get it via the API

jovial pecan
#

Hey! I wonder, is there a way to use our custom javascripts with the version of the plugin provided in #852317810394267708 & java 16? Or there's no replacement for nashorn yet?

turbid tide
#

not yet no

errant iron
#

The JS expansion is currently in the works, right now there's a GC issue but hopefully it will be sorted within a week

ivory narwhal
# errant iron The chance of errors is objectively higher because people could have the wrong p...

I was actually talking about errors on the dev side. Smaller marging for errors because the scope you are working in is limited. Error on user side depends imo. Placeholders should be documented so unless your documentation is also versioned there is still a chance users assume placeholders are available on an old version.

Again I don't find it weird to separate it from the core domain and I am using the cloud so not sure what you are getting at?

But I would like to stop this discussion which is leading nowhere. You obviously feel very confident in building a Monolith.

I prefer separating some parts of the application for reasons mentioned above.

Let's leave it at that

errant iron
#

a monolith lmao

#

a single class

ivory narwhal
#

Ok lmao, was talking about the entire plugin. And unless you have like 3 placeholders I really hope you don't put everything in one class

turbid tide
#

u guys still talking about that?

#

damn.

#

holly fuck you did talk a lot

errant iron
turbid tide
#

actually star

#

2 classes

#

is common

errant iron
#

ah

#

well see I think that's okay

turbid tide
#

I don't remember why xD

ivory narwhal
#

Well that's Minecraft devs for ya

errant iron
#

this guy's talking like I'm putting all my java code in a single file

turbid tide
#

some have a second util class and stuff like that

errant iron
#

it's called keeping things that do the same thing near eachother

turbid tide
#

Garagepoort, idk how many placehodlers and how your code looks but I also never made it in more than 1 class. Bcz it was never more than 100-200 linex

#

lines

#

I Don't need 100 classes for that

#

a switch statement is all I need

errant iron
#

or a whole separate project lmao

turbid tide
#

when bcz I use kotlin

ivory narwhal
#

I separate whatever placeholders don't belong functionally together

errant iron
#

but they're placeholders

#

they should be like, 10 lines max

turbid tide
#

I mean you do you but my opinion is that it doesn't really need to be in separate classes unless you have 100k placeholders or something.

errant iron
#

don't tell me mr. microservices is doing business logic in the placeholder class

ivory narwhal
#

You seem aggressive. A bit immature even.

#

But I'll let it slide

errant iron
#

Oh?

#

nice one dude

ivory narwhal
#

No but parsing logic. Like if you want to use filters or stuff in the placeholder

#

All business logic is in the domain

errant iron
#

What, a simple map function?

ivory narwhal
#

Yeah like I said parsing the placeholder to whatever the API needs. Look I'm kind of getting sick of this. You don't seem to want to have a discussion. You just want me to tell you that you are right

errant iron
#

I mean I just don't see your point is all

ivory narwhal
#

Ok that's fair. Let's leave it at that

errant iron
#

I guess it comes down to a difference in development styles but whatever\

sharp jay
#

lol

shy ridge
#

Wait what, does PAPI not support HolographicDisplays?

warm topaz
#

other way round and no.
u need to use holographic extension alongside it

shy ridge
#

I do have that

unique leaf
#

I am tryna find a way to give a permission based off of a placeholder. Like if a placeholder returns “Joe” It will give joe a permission node and if the placeholder changes to “Joemama” then Joe will loss the permission and joemama will get the permission. Any ideas?

pure nexus
#

Hello good evening, is there a way to place an expansion that is no longer on the web?

errant iron
#

To place an expansion?

pure nexus
errant iron
#

I don't understand what that means

pure nexus
#

/papi ecloud download

errant iron
#

Yea you can't do that if it's not on the ecloud

pure nexus
#

but before it was.

errant iron
#

Well you'll have to see if someone has it, since it's not there any more

pure nexus
#

I have an expansion but it doesn't work.

mint fable
#

probably why it was removed from the ecloud

austere hawk
#

Is this placeholder broken? /papi ecloud download player btw
%player_item_in_hand_level_<enchantment>%

#

Seems to work fine for unenchanted items, shits the bed if the item has any enchantment

austere hawk
errant iron
austere hawk
#

Yeah I was about to experiment with that

last zenith
#

I need an ecloud account, how can I create it?

turbid tide
#

@balmy marten ^^

balmy marten
#

dm me a username and email you want

shy ridge
austere hawk
#

If you use holographicextension, you might see a spike in your protocollib usage/holographic displays usage in a spark sample

#

Just switch to this instead, you’ll not regret it

shy ridge
primal stirrup
#

I rebooted my server to reload a plugin. And once I did papi stopped working, for "no" reason. Here is the error message: https://paste.helpch.at/heliququde.sql. I only changed some cooldowns in a config file for another plugin before restarting

tender vaporBOT
#
FAQ Answer:

Startup Log Location
Your latest startup log can be found in the logs folder of your
server directory, labeled as latest.log.
Please copy the contents and paste them to a paste service.
Type ?paste for more information.

turbid tide
primal stirrup
turbid tide
primal stirrup
turbid tide
#

yeah. so I can tell its one of your expansions

#

but I don't know which one

#

I think its an external expansion so what you can try and do is go to plugins/PlaceholderAPI/expansions and empty the folder. see if it loads fine then. If it does then you'll have to download each expansion 1 by 1 and see which one breaks it

primal stirrup
#

Ok, thanks. It works now 🙂

torpid plume
#

gives a placeholder that shows all online players

meager vault
#

Hello,

Since I switch to graalvm 16 (instead of java 16) I got many issues with javascript expansion (like theses one : )

        org.graalvm.polyglot.PolyglotException: TypeError: invokeMember (getInventory) on org.bukkit.craftbukkit.v1_16_R3.entity.CraftPlayer@56270ac5 failed due to: Unknown identifier: getInventory
[19:27:02 ERROR]: [PAPI] [Javascript-Expansion] An error occurred while executing the script 'kits_cost':
        org.graalvm.polyglot.PolyglotException: ReferenceError: Java is not defined```

Do you know if there is a way to use these javascript on graalvm ?
🙂
meager vault
#

I got a working javascript expansion, the issue comes from graalvm, but hope the new expansion will fix that

#

🙂

#

Because on java 16 it works

errant iron
#

wait wait wdym you swapped to graalvm instead of java 16

#

like you're not using the JVM?

meager vault
#

I'm using graalvm instead of JDK

errant iron
#

why?

meager vault
#

it offers more performances, and allows me to use more java flags

errant iron
#

I mean I guess

#

You're unlikely to get support using not-java for a Java game lmao

meager vault
#

graalvm works 100% like java, but not for javascript since java 16 :/

#

I'll see with the new expansion

#

Or I'll have to redevelop all my javascripts

trim mist
#

Yeah we originally attempted to design with Graal but every day was a new obstacle so we dropped it.

meager vault
#

I'll see if I can find someone to revelop my 3 little javascript to make them compatible with both graalvm and jdk

meager vault
trim mist
#

I have no idea.

errant iron
#

I mean it'll run your JS expansions with the correct JS interpreter

trim mist
#

I've never used Graal so that's kinda in the unknown territory for me.

errant iron
#

So I mean probably

earnest cradle
#

Is there a placeholder that check to see if a server is whitelisted:?

trim mist
#

Yes

earnest cradle
#

What is it?

trim mist
#

server_has_whitelist

earnest cradle
#

ok

#

Is there one for bungee. Like pinger?

trim mist
#

There's pinger.

#

Not sure about anything on bungee.

coarse carbon
#

Can anyone show me/tell me how to create a top 10 leaderboard for mcmmo? The plugin doesnt have the placeholders. Told to use leaderheads but idk what im doing. Happy to buy someone a hard earned coffee for the ffort ty

errant iron
#

ajLeaderboards

#

oh yea Leaderheads also works if you already bought it

coarse carbon
errant iron
#

lmao that's okay

warped brook
#

Is there a way to add some tab complete to the open gui command?

junior musk
gray walrus
#

hey, for some reasons placeholders are not working for me

#

any help please?

red fjord
#

Hello, any idea why PlaceholderAPI keeps removing the expansions i download?
In game i do /papi ecloud download Essentials then /papi reload but as soon as the server restarts i have to do it again.

turbid tide
turbid tide
red fjord
tender vaporBOT
#
Hey!

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

junior musk
#

check the console on server start or on /pali reload, you may get an error from another expansion which breaks the rest of the expansions not loaded yet

austere hawk
#

Anyway to make %checkitem_inhand% check main hand only? Offhand's causing some bugs for what I'm trying to do

turbid tide
austere hawk
#

I can do that

turbid tide
#

I might PR a change later as well and send you a dev build later

#

or tomorrow if I Don't forget

austere hawk
#

oh

#

I just did as well

turbid tide
#

xD

austere hawk
lost phoenix
#

any one now why the expansion pinger, It's don't working? It’s doesn’t update

pulsar cipher
#

%statistic_player_kills% is corrupt. How can I fix this? I didn't understand anything from the given link.

austere hawk
#

Just parsed it, works fine

#

Theoretically, if I fork it and remove itemsToCheck[1], it should stop checking the offhand right?

    if (wrapper.shouldCheckHand()) {
      try {
        Class.forName("org.bukkit.inventory.PlayerInventory").getMethod("getItemInMainHand", null);
        itemsToCheck = new ItemStack[2];
        itemsToCheck[0] = p.getInventory().getItem(p.getInventory().getHeldItemSlot());
        itemsToCheck[1] = p.getInventory().getItem(40);
      }```
#

Since I don't have any use for the offhand, just the held hand

turbid tide
#

yeah

#

I think so

austere hawk
#

I'll try doing that in a bit

turbid tide
austere hawk
#

Oh, awesome, let me put that on and check!

austere hawk
turbid tide
#

no problem 👍

calm kelp
#

Hey my placeholders arent working and this shows in console

#

[17:58:53 ERROR]: [PlaceholderAPI] expansion class MCoreFactionsExpansion is outdated:
Failed to load due to a [NoClassDefFoundError], attempted to use com/massivecraft/factions/RelationParticipator

#

but on other expansions it says found but it just shows like %ecp_balance_commas% and not the money amount

warm topaz
calm kelp
#

idk

#

it always worked but know not anymore

jade cove
#

Hello i use my own integration to add Placeholder and i want to use theses placeholder in javascript extension but after the restart the placeholder isn't get correctly by placeholder, how can i do that properly ?

limber ice
errant iron
limber ice
#

yes

#

I think

errant iron
#

I don't think you are

limber ice
#

let make sure I added them to the live server. I know I did on testing server

errant iron
#

Try deleting the one you have and downloading fresh

calm kelp
#

hey for no reason the placeholders dont work anymore

#

idk why

#

i didnt changed anything

errant iron
#

Wdym don't work

limber ice
#

updating server and player expansion fix it

calm kelp
errant iron
cosmic halo
#

How do you get the PAPI-Expansion-Player and Server to load on every PAPI plugin reload or server reload?

errant iron
#

Uh, don't do server reloads as they break many things

#

And they should load on startup or papi reload

cosmic halo
errant iron
#

Any errors in console?

cosmic halo
#

Nada

errant iron
#

/papi dump

#

And send it here

cosmic halo
errant iron
#

Looks like they're registered fine

#

Where are they not working?

cosmic halo
#

I have to manually do /papi register for each

#

I can see that they are not working with placeholders, such as player ping

#

As soon as I register them its all fine

#

However it is not automatic..

errant iron
#

I'm ngl I didn't even know that was a command, this might be an actual bug with the 1.17 version

cosmic halo
#

Any way to report or could you do it? ^^

calm kelp
limber ice
#

@calm kelp if you want us to help you will need to explain in more detail, like which placeholders? Do you have any errors in server logs?, what version of Papi?

turbid tide
calm kelp
#

So the log says no error
All Placeholders dont work
I use them where they’re supported (Scoreboard Revision)

tender vaporBOT
#
FAQ Answer:

Startup Log Location
Your latest startup log can be found in the logs folder of your
server directory, labeled as latest.log.
Please copy the contents and paste them to a paste service.
Type ?paste for more information.

turbid tide
#

then send the log here.

#

^^^

calm kelp
#

I‘ll send it tomorrow evening bc need to sleep and work

errant iron
snow sonnet
turbid tide
#

o h wait you are

#

and go toplugins/placeholderapi/expansions

#

delete the old one from there and put the new one

#

then do /papi reload and you should be good to go

snow sonnet
#

ok

#

thx

civic bough
#

hello. where would i download the latest papi?

#

for 1.17

junior musk
lucid forge
#

Where can I find papi 1.17?

turbid tide
lucid forge
#

Thank you didn't scroll up enough lol

turbid tide
#

no problem

civic bough
austere hawk
#

Player expansion is not working in paper's latest build

turbid tide
austere hawk
turbid tide
#

can you do /papi parse me %player_name% and tell me what it says?

austere hawk
#

yeah it shows

#

but not working in menus

turbid tide
#

what version of deluxemenus do you have and whati s your server version?

final lantern
#
[08:18:21] [Server thread/ERROR]: [PlaceholderAPI] failed to load class files of expansions
java.util.concurrent.CompletionException: java.lang.UnsupportedClassVersionError: com/andre601/formatterexpansion/FormatterExpansion$1 has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
    at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:273) ~[?:1.8.0_292]
    at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:280) ~[?:1.8.0_292]
    at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1606) ~[?:1.8.0_292]
    at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1596) ~[?:1.8.0_292]
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_292]
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) ~[?:1.8.0_292]
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) ~[?:1.8.0_292]
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175) ~[?:1.8.0_292]
Caused by: java.lang.UnsupportedClassVersionError: com/andre601/formatterexpansion/FormatterExpansion$1 has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
    at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.8.0_292]
    at java.lang.ClassLoader.defineClass(ClassLoader.java:756) ~[?:1.8.0_292]
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[?:1.8.0_292]
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:468) ~[?:1.8.0_292]
    at java.net.URLClassLoader.access$100(URLClassLoader.java:74) ~[?:1.8.0_292]
    at java.net.URLClassLoader$1.run(URLClassLoader.java:369) ~[?:1.8.0_292]
    at java.net.URLClassLoader$1.run(URLClassLoader.java:363) ~[?:1.8.0_292]
    at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_292]
    at java.net.URLClassLoader.findClass(URLClassLoader.java:362) ~[?:1.8.0_292]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_292]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_292]
    at me.clip.placeholderapi.util.FileUtil.findClass(FileUtil.java:63) ~[?:?]
    at me.clip.placeholderapi.expansion.manager.LocalExpansionManager.lambda$findExpansionInFile$4(LocalExpansionManager.java:319) ~[?:?]
    at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) ~[?:1.8.0_292]
    ... 5 more```
papi was working till yesterday but today got this error. nothing changed
austere hawk
turbid tide
turbid tide
tender vaporBOT
#
FAQ Answer:

Startup Log Location
Your latest startup log can be found in the logs folder of your
server directory, labeled as latest.log.
Please copy the contents and paste them to a paste service.
Type ?paste for more information.

final lantern
turbid tide
#

well something definetly changed or you just haven't noticed it before

final lantern
#

am the only one with access and haven't open panel in week 🤔

turbid tide
#

well idk.

#

you probably just didn't notice it

#

before

ivory brook
#

i was hoping i could get help with the API - i'm getting this error when trying to register my placeholder expansion from my plugin: https://gist.github.com/kadenscott/c03f24e74a7781c8b74109b73b4458a3
[08:00:16 INFO]: [PlaceholderAPI] Enabling PlaceholderAPI v2.10.9
[08:00:11 INFO]: This server is running Paper version git-Paper-777 (MC: 1.16.5) (Implementing API version 1.16.5-R0.1-SNAPSHOT)
i am also depending on placeholderapi in my plugin.yml

civic bough
turbid tide
#

/papi ecloud download Player /papi reload

#

should update it

civic bough
#

i try to download it but player is not one of the option

civic bough
turbid tide
#

do /papi dump then please and send over the link it generated

civic bough
trim mist
#

Alrighty, boot down the server, go in plugins/PlaceholderAPI/expansions and remove the player expansion. Boot back up and then run the /papi ecloud download player

#

And then /papi reload ofc.

#

You're still on 1.8.0 and the fixed version which we pushed to the ecloud last night is 2.0.0.

turbid tide
#

I told you to delete the old one before installing the new one

#

go in the folder Waffle King gave above and delete both PAPI-Expansion-Player.jar and Expansion-player.jar

safe gazelle
#

is there any way of getting a placeholder but with a certain number of characters removed eg. thisIsAString could be changed to thisIsAStr by removing 2 characters. I know this is a likely a stretch but was just wondering about possibility of this being a thing haha

turbid tide
#

and then do the download and reload commnads

trim mist
turbid tide
civic bough
tender vaporBOT
#
Javascript
Useful Links & Information:

An expansion that allows you to use javascript for processing
Wiki
Community Scripts
GitHub
eCloud

turbid tide
#

here are the usefull links Dave ^

safe gazelle
ivory brook
trim mist
#

That's weird.

ivory brook
#

i was having a similar issue with HolographicDisplays, where the API implementation wasn't set

trim mist
#

The only thing that I could think of off the top of my head is Guice.

ivory brook
#

i wonder if my setup is causing issues

trim mist
#

I haven't used Guice a lot though so I can't really help you there.

ivory brook
#

yea of course

#

i'll try making a plugin without guice and see if it works or not

#

thanks for the help

trim mist
#

For sure!

ivory brook
#

so so weird.. i attached a debugger, it's throwing an NPE because Bukkit.getServer() is null

#

though, printing Bukkit.getServer() shows its not...

trim mist
#

It might honestly be something with the Guice injection process.

safe gazelle
tender vaporBOT
#
Hey!

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

turbid tide
safe gazelle
#

awesome news thank you!

silver belfry
#

Any progress on the JS Extension?

trim mist
#

We are working on it. If you look around in this channel someone posted their own version of it that requires and external plugin to use. While we don't support it, you can try using it to hold you over.

austere hawk
#

Hey, when developing I have some trouble with having PlaceholderAPI detect with a config variable. And yes, it works if I have it with a simple string.

#
    public void onJoin(PlayerJoinEvent event) {
        FileConfiguration lang = YamlConfiguration.loadConfiguration(new File(plugin.getDataFolder(), "lang.yml"));
        Player player = event.getPlayer();
        String globalJoinMessage = lang.getString("JoinLeaveSystem.GlobalJoinMessage");
        event.setJoinMessage(PlaceholderAPI.setPlaceholders(event.getPlayer(), globalJoinMessage));


        List<String> welcomeMessage = lang.getStringList("JoinLeaveSystem.WelcomeMessage");
        for (String message : welcomeMessage) { player.sendMessage(Utils.color(message)); }

        String joinText = "&8[&a&l✓&8]&7 %vault_group% %player_name%";
        event.setJoinMessage(PlaceholderAPI.setPlaceholders(event.getPlayer(), joinText));
    }
}```
silver belfry
trim mist
#

Alrighty well that copy is not maintained nor supported by us so you might have to wait. I will probably release another announcement later today.

silver belfry
#

But it's alright I can wait until you guys figure something out, keep up the good work

trim mist
#

Trust me, we are really trying here. We keep hitting wall after wall, and we have a couple scenarios we are planning out right now to at least get you guys working for the time being if we have to not add support for new JS semantics.

tender vaporBOT
#
📋 Your paste, FaultySpell
https://paste.helpch.at/uvesarakip

A member of staff has requested I move your message to a paste,
Most likely beacause it contains a config/error/code snippet.

trim mist
#

Update your server expansion.

cloud mist
#

Whats that?

trim mist
#

/papi ecloud download server

#

/papi reload

cloud mist
#

Okay thank you

somber sonnet
#

%worldguard_region_members%

#

what does that return exactly?

turbid tide
#

worldguard regions can have members

#

I Don't remember how you add them but I think something like /rg addmember

#

or something

somber sonnet
#

alr

#

i wanted a placeholder for how many people within a region

turbid tide
#

I'm afraid there is no placeholder for that

ivory brook
#

glare, it was because i was using an api dependency instead of compileOnly omegalul

#

also, is there any way i can use components instead of strings for placeholders?

trim mist
#

Not currently. We're actually in the talks of using Components for PAPI 3.

#

More than in the talks actually, we actually have an Adventure branch actively being worked on.

ivory brook
#

that's hot

#

the component revolution is great

trim mist
#

Yeah! It's been great so far.

safe gazelle
#

Is there any way to put a placeholder within a placeholder?

turbid tide
#

some placeholders support that

#

you have to use the bracket placeholders

#

so basically %placeholder_{placeholder}%

#

but not all expansion support that I'm afraid

safe gazelle
#

awesome thanks!

#

i'll give it a test :)

earnest cradle
earnest cradle
#

I have vault paceholders installed

#

Here is the leaderboard:
baltop:
location: world, 23.590, 166.000, -43.390
lines:

  • '&c&lBaltop'
  • '&c#1 %vault_eco_top_player_1% has %vault_eco_top_balance_formatted_1%'
  • '&b#2 %vault_eco_top_player_2% has %vault_eco_top_balance_formatted_2%'
  • '&b#3 %vault_eco_top_player_3% has %vault_eco_top_balance_formatted_3%'
  • '&b#4 %vault_eco_top_player_4% has %vault_eco_top_balance_formatted_4%'
  • '&b#5 %vault_eco_top_player_5% has %vault_eco_top_balance_formatted_5%'
  • '&b#6 %vault_eco_top_player_6% has %vault_eco_top_balance_formatted_6%'
  • '&b#7 %vault_eco_top_player_7% has %vault_eco_top_balance_formatted_7%'
  • '&b#8 %vault_eco_top_player_8% has %vault_eco_top_balance_formatted_8%'
  • '&b#9 %vault_eco_top_player_9% has %vault_eco_top_balance_formatted_9%'
  • '&b#10 %vault_eco_top_player_10% has %vault_eco_top_balance_formatted_10%'
errant iron
#

Why would you downgrade versions, especially to 1.12?

#

I'm sure you'd have to use outdated versions of the plugins

warm topaz
#

if ur on the latest vault expansion ull have to downgrade to 1.5.2

#

the top placeholders were disabled due to them being extremely unoptimised

quartz hull
errant iron
#

Have you considered using 1.16 on your skyblock server

quartz hull
#

Yeah

errant iron
#

Alright then, problem solved

#

Use 1.16 and copy your config 🙂

quartz hull
#

I can’t switch since a lot of my plugins are locked to 1.12

errant iron
#

Such as?

quartz hull
#

The auction house plugin I’m using

#

And some custom plugins

errant iron
#

I would definitely recommend getting a new auction house plugin and paying some devs to upgrade

#

For both your and your players' sake

quartz hull
#

Ok. It was actually my players wanted the server on 1.8.8 originally lol

mint fable
#

that makes some sense though

errant iron
#

I mean I can see that for PvP at least

mint fable
#

because of combat

errant iron
#

but no reason for 1.12

mint fable
errant iron
#

You should be on latest, or 1.8 if you really care about pvp that much

#

And honestly 1.17 is pretty cool and brings some nice changes, I'm sure some devs would be much happier working with that

quartz hull
#

If I upgraded could I use via backwards?

errant iron
#

Well yea

quartz hull
#

Ok

errant iron
#

You just couldn't use any of the new features

#

I don't see why you'd want to allow any other version than 1.8 maybe

#

Especially if your other server is already 1.16 lmao

quartz hull
#

I have 1 server on 1.16 and the other on 1.12

errant iron
#

Yea so move both servers to the same version, 1.16

#

No reason for the mismatch

quartz hull
#

Ok

errant iron
#

And then players can play both with the same version

quartz hull
#

Ok

errant iron
#

I'm sure some people are interested

quartz hull
#

Ok. I’ll run a poll in my discord to see if the players would like the server to updgrade

errant iron
#

I don't see why they wouldn't

#

Better performance, lots of new features, an actually recent version so you're much more likely to find devs and good plugins

quartz hull
#

Yeah

pine fog
#

Good afternoon, do you know if the javascript update has already come out?

trim mist
#

No.

pine fog
trim mist
#

We are really trying hard to get it out soon. We keep running into problems.

#

There are other versions around it linked over the past few days here but keep in mind they require a 3rd party plugin and they aren't supported by us.

pine fog
#

I understand, keep it up guys 💪

trim mist
#

In all honestly we were about to deploy a development version on Sunday but we ran into a pretty major issue (turns out it required extra C++ binaries on your machine) and that's not something we can force.

#

So we scrapped that engine and are working with a few other libraries.

desert plover
#

Hey, so i'm trying to make use of the server expansion, and i keep ending up with this when running papi list:

A total of 8 placeholder hook(s) are active: .... player, server, .....

and when i run:

/papi parse <name> %player_server%

i get "now available in the server expansion"

errant iron
#

Whatever a placeholder starts with is its expansion

#

So any placeholder that starts with player is from the Player expansion

desert plover
#

so player_server is just a deprecated placeholder with a pointer to the new one?

errant iron
#

Yes

desert plover
#

okey, cools. Thanks!

ivory brook
#

what format can i use to return hex colours in my placeholder expansion

turbid tide
#

so the plugin in which they use the placeholder will have to do the parsing

#

but idk how PAPI 3.0 will work. I Know they're adding adventure support so that will probably help a lot

ivory brook
#

kek

#

alright that makes sense now, the plugin im using does its own parsing so i can use that

#

thank you :p

versed pond
#

what permissions do you need to give players to open the menu? plugin: deluxemenu

trim mist
#

None, unless you specifically set them in the menu requirements.

austere hawk
#

Hi

#

Why Playtime placeholder in statistics not work

turbid tide
austere hawk
#

1.17

turbid tide
#

or one of them at least

#

@trim mist am I wrong or was there a problem with the statistics in 1.17? I've seen some discussion about md5 doing something bad or something but didn't pay to much attention

austere hawk
#

%statistics_time_played%

rough iris
#

TPS placeholder for TAB plugin wont work.

turbid tide
turbid tide
rough iris
#

yea

turbid tide
#

download the latest server expansion: /papi ecloud download Server then /papi reload

austere hawk
rough iris
#

i saw that what is papi?

turbid tide
austere hawk
turbid tide
austere hawk
#

It show me empty text

turbid tide
#

we'll have to wait for Waffle King to confirm its not something to do with 1.17 and spigot

#

because I've seen some people talk about how the statistics were messed up in 1.17

#

but I am not sure

austere hawk
#

What plugin can I use?

#

For time played

rough iris
#

Thank you!

turbid tide
austere hawk
#

Tried already but I need someone with a placeholder to create a top

#

Leaderboards

austere hawk
#

This not work

#

I have autosave at 20 and not check time

zenith sun
#

hello

dusk forge
#

Hello, could you please tell me if there is placeholders for sheep sheared?

turbid tide
#

and I can't find anything sheep related

dusk forge
#

Yes me too..

safe gazelle
#
var min = 1;
var max = 25;

function example() {
   if (args.length == 2) {
       min = args[0];
       max = args[1];
   }

   var random = Math.random() * (max - min);
       random += min;

   return Math.floor(random);
}

example();

So I am using the new JSExpansion and am testing with one of the example scripts on the github wiki. However, it seems as if min and max are never being effected by the args

#

Whatever numbers I input as min and max it always outputs a number between 1 and 25

vivid sparrow
#

how do you use the placeholder? @safe gazelle ?

safe gazelle
#

/jsexpansion parse me %javascript_example_5,1000%

safe gazelle
turbid tide
#

working on testing this myself rn

#

will take a bit

#

yup I can confirm this does not work. Either it was named from args or something is broken. I've pinged the person that works on it and will wait for an answer

safe gazelle
#

Brill thank you

pine fog
turbid tide
#

placeholder for what?

frank nova
#

Javascript doesn't work anymore on 1.17 😕
[22:45:00] [Server thread/INFO]: [PlaceholderAPI] Successfully registered expansion: javascript [22:45:00] [Server thread/WARN]: [PAPI] [Javascript-Expansion] ScriptEngine type for javascript placeholder exp_points isn't initialized! Defaulting to global [22:45:00] [Server thread/WARN]: [PAPI] [Javascript-Expansion] Failed to set ScriptEngine for javascript placeholder: exp_points

turbid tide
frank nova
#

I'm using it.

#

Oh nevermind, i forgot to delete old one. 🤡

turbid tide
#

and I just tested it. I Know its not fully working yet but it at least loads xD

#

I mean what placeholder? %statistic_time_played% ?

scarlet valve
#

Is there a papi for leader board on like
Block break
Mob killed

#

...ect

turbid tide
scarlet valve
#

I want the placeholders

#

I can make make the leaderboard

#

With holograls

#

Or menu

#

I am asking is there a placeholder for the top on block break mob killed like that stuff

turbid tide
#

not really I'm afraid.

turbid tide
#

you need those plugins

#

to create the top placeholders

scarlet valve
#

Oooo

#

And they contain placeholders

#

Right K

#

?

turbid tide
#

yeah they do

#

they create top placeholders

#

ugh you can use %statistic_time_played% for that tho

scarlet valve
turbid tide
#

the statistic expansion

#

has all of that info

#

u should probably read the wiki. easier to see xD

scarlet valve
#

You are so helpful

#

You need to be an admin here

austere hawk
errant iron
#

Those placeholders have been moved to the Player and Server expansions

austere hawk
#

oh

turbid tide
#

and statistic expansion

turbid tide
austere hawk
#

oh is that instead?

turbid tide
#

well you could use that yeah

austere hawk
#

ah I see. xD

#

Is there a way just to add days to it instead of hours, minutes, and seconds?

turbid tide
#

I think there is a thing called %statisitc_time_played_days%

#

let me check

turbid tide
#

so last one for days

austere hawk
#

oh

#

That strange it still counts the other ones.

#

oh wait

#

Got it! 😄

#

oh how about for the current world?

turbid tide
#

that's not possible

#

minecraft records the statistics from a server all in the same place

austere hawk
#

oh I mean like current location

#

Isn't it like "%world_name_<world>%"?

turbid tide
#

ohh

turbid tide
austere hawk
#

oh

#

ty! ❤️

#

Is there a way to possible hide current worlds?

turbid tide
#

wdym?

austere hawk
#

So like

#

Let say if I don't want to show a current world name and want to only allow players to see certain world instead?

turbid tide
#

so if they're in worldA for example or in worldB it would show worldZ buti f they're in the worldC it would show worldC?

austere hawk
#

Like let say if they are in hub world but I don't want that to show in scoreboard. But if they were in like overworld then i want that to show up in scoreboard.

#

So like allowing players to only see certain world they are in on the scoreboard if that makes sense?

#

If is not possible then is all good, just wondering.

turbid tide
#

you can probably do it with JavaSCript expansion

tender vaporBOT
#
Javascript
Useful Links & Information:

An expansion that allows you to use javascript for processing
Wiki
Community Scripts
GitHub
eCloud

austere hawk
#

oh

turbid tide
#

you can learn more about it here ^^ all you need is some basic javascript understanding

austere hawk
#

ah I see, ty!

frozen chasm
#

Ji

#

Hi

#

I need help

tender vaporBOT
#

There is no time to wait! Ask your question @frozen chasm!

frozen chasm
#

I'm getting this error:
[PAPI] [Javascript-Expansion] Failed to set ScriptEngine for javascript placeholder

#

I'm using paper 1.16.5 + java 16

turbid tide
#

javascript expansion is broken in java 15+

#

a new one will be published there soon (I think)

trim mist
#

It's working if you don't try to pass args into it 🙂

turbid tide
#

well I Didn't say its not working. just not 100% working

trim mist
#

Yeah I know.

frozen chasm
#

Ok, so... Can I use that version with java 1.16? or?

errant iron
#

Yes!

turbid tide
#

well you techincally can.

#

but arguments don't work yet

errant iron
#

And make sure you use the 1.16 versions of Server and Player expansions

frozen chasm
#

Hmm

frozen chasm
#

ye?

turbid tide
#

dw imJouU. you're fine. all you need is the javascript expansion xd

#

he's probably tired lmao

frozen chasm
#

Ok, thank you for support

#

c:

errant iron
turbid tide
#

yeah and?

errant iron
#

the current live versions of the Player and Server expansions are the 1.17 ones

turbid tide
#

ok and?

errant iron
#

or are they backwards compatible

turbid tide
#

they work just as fine on 1.8-1.16

errant iron
#

oh okay sick

turbid tide
#

they just add 1.17 support

errant iron
#

ahhh that makes sense

turbid tide
#

they're not rewritten or anything afaik

edgy fox
#

hei

unique leaf
#

Will this work :'{medium}%parkour_topten_bar_1%{medium}&a.%parkour_leaderboard_cake_1_milliseconds%' Even tho the {medium} has a character after it before the placeholder?

austere hawk
#

🐱

trim mist
#

@safe gazelle You around?

tender vaporBOT
#
📋 Your paste, Bermine
https://paste.helpch.at/eguzijoreg

A member of staff has requested I move your message to a paste,
Most likely beacause it contains a config/error/code snippet.

trim mist
#

The error just says whatever channel it tried to register was already registered.

#

¯\_(ツ)_/¯

#

The original dev of RedisBungee stopped working on the project so we stopped working on the expansion.

austere hawk
#

🧇

blazing inlet
tender vaporBOT
#
Hey!

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

blazing inlet
#

Oh

trim mist
#

?

austere hawk
#

ban

safe gazelle
tender vaporBOT
#
Hey!

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

neon hill
#

hello, is placeholder api working 1.17?

junior musk
trim mist
tawdry saddle
#

i cant use % in AsyncPlayerChatEvent

#
        String format = ChatColor.translateAlternateColorCodes('&', "%tab_tabprefix%" + p.getDisplayName() + " &8&l»&f " + message);

        e.setFormat(PlaceholderAPI.setPlaceholders(p, format));
#

if i do this in my plugin

#

everytime i say "%" ingame it error

pine fog
#

I have this error with the new version of PAPI and Javascript

trim mist
#

CC: @thorn thunder

junior musk
turbid tide
pine fog
trim mist
#

Means carbon copy.

pine fog
#

Ouh, I speak Spanish, what does that mean 😅

trim mist
#

When you send an email to someone, you can carbon copy them to make sure they also get the message.

#

Yugi is the one working on the expansion so I CCed him to make sure he got the message too.

pine fog
trim mist
#

It's something Yugi needs to look at since we haven't gotten that error before.

toxic wolf
#

Is PlaceholderAPI compatible with 1.17?

toxic wolf
#

ok

turbid tide
mint fable
#

@cobalt pollen you can use parseother for checking items of other players

safe gazelle
tender vaporBOT
#
Hey!

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

safe gazelle
#

but yeah it's working

molten bison
#

[11:12:23 WARN]: [PAPI] [Javascript-Expansion] Failed to set ScriptEngine for javascript placeholder: playerlocation
[11:12:23 INFO]: [PAPI] [Javascript-Expansion] 0 script loaded!
[11:12:23 INFO]: [PAPI] [Javascript-Expansion] Java version: 15.0.2

#

What does this mean. And how do i fix it?

turbid tide
random thicket
#

Hello! I have one question if someone does not mind helping me with it 🙂

#

If all goes well, you should be able to just replace this jar with the current existing one in the expansions directory. 
#

Does this mean that I can use the 1.16.5 version release on Paper 1.17 and just drop the test file in as an expansion to run PAPI in 1.17?

mighty drift
#

how to throw a photo?

tender vaporBOT
#
FAQ Answer:

You won't be able to upload images here directly to avoid spam, so please use https://imgur.com/ to upload images/screenshots.
You can also use a screenshot service like gyazo or jinx and post those links here.

mighty drift
#

how to make the amount

#

?

turbid tide
#

put a number in there

#

from 1 to 64

#

that is the amount of items that will show in the gui

#

if you don't want to set it, just delete that line

#

it will set to the default 1

mighty drift
turbid tide
#

ohhh....

#

wait

#

you're trying to add a requirement?

#

that's not how you do it

mighty drift
#

I can't figure out how to make it see how much experience a person has and execute the command.

turbid tide
mighty drift
#

the player has 25 experience and to get the item

turbid tide
#

levels? or just points?

mighty drift
#

levels

turbid tide
#
    update: true
    hide_attributes: true
    lore:
      - ''
      - '&7Cooldown: &f3 Days'
      - '&7Left Click to Redeem'
    left_click_requirement:
      requirements:
        exp:
          type: has exp
          amount: 25
          level: true
    left_click_commands:
      - '[message]'
      - '[close]'```
mighty drift
#

it does not work, it executes the command when I do not have level 25

turbid tide
random thicket
mighty drift
#

DeluxeMenus-1.13.3-Release

turbid tide
tender vaporBOT
turbid tide
#

you can get it from here 2006lev ^^^

random thicket
#

There is a PAPI release for 1.17 but it appears that it is just an expansion. Looks like any other expansion but the plugin itself does not appear to be written for 1.17. My question is can I use that 1.17 expansion on a build designed for 1.16?

#

Or is that the actual Plugin release?

mighty drift
#

I downloaded it today from spigotmc

mighty drift
turbid tide
#

and yes

#

or lower

random thicket
#

Thanks for your help Blitz!

turbid tide
#

it should work on 1.7 to 1.17

#

👍

mighty drift
turbid tide
#

at least

#

you'll need to update java

random thicket
#

I am using java 16. Will it not work with 16?

#
23.06 12:14:51 [Server] INFO org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml```
trim mist
#

It goes in the expansions folder.

#

PlaceholderAPI/expansions

random thicket
#

Yeah i thought so. But..

tender vaporBOT
#
Hey!

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

trim mist
#

And?

random thicket
#

He said its not an expansion

turbid tide
#

not the javascript expansion

#

(about PAPI)

random thicket
#

Ahh okay I gotcha xD

turbid tide
#

that's my bad

random thicket
#

Hahaha all good bud 🙂

#

Thanks friends 😄

mighty drift
#

how to make to transfer bungeecord to another server

thorn thunder
twin prawn
#

why does /papi parse Zax71 hi %playername% ! return hi %playername% ! not hi Zax71 !

tender vaporBOT
#
FAQ Answer:

Player placeholder not working? If you are using a plugin which supports PlaceholderAPI, and the %player% placeholder doesn't work, then change it to %player_name% and download the player expansion.
Commands:
/papi ecloud download player
/papi reload

twin prawn
#

oh

#

wrong placeholder 🤣

turbid tide
#

yup

twin prawn
#

well then... if i use the Viaversion thing /papi parse Zax71 %player_version% (after install and reload) i get %player_version% not 1.16.5

errant iron
#

the ViaVersion placeholder is %viaversion_player_protocol_version%

twin prawn
#

ohhh, someone told me that one 😉 not the one you said, thanks

#

thanks

errant iron
safe gazelle
#

so- i am using BossShopPro and a combination of DeluxeTags placeholders from papi and a javascript extension i made and am having no success with %deluxetags_tag_{javascript_snip_%shopitemname%,6,back}% other instances I have within the same shop work where the placeholders are%deluxetags_tag_%shopitemname%% so was wondering if anyone had any ideas on whether i was using the placeholder nesting incorrectly

turbid tide
#

well deluxetags does not support nested placeholders at all I'm pretty sure

#

but another thing is

#

nested placeeholders are usually {]

#

oh wait

#

%deluxetags_tag_%shopitemname%% works/

#

ugh yeah what you're trying to do is not really the best idea x

#

if %deluxetags_tag_%shopitemname%% works then I'd recommend you do everything in the javascript placeholder

#

so %javascript_snip_%shopitemname%,6,back% and this would return %deluxetags_tag_....%

#

so it would return the whole thing

#

not just the name

junior musk
#

%deluxetags_tag_%shopitemname%%
probably works because it's BSP's placeholder which is parsed Before PAPI ones

#

which means that when it parses the deluxetag placeholder, %showitemname% would have already been translate into the correct name

safe gazelle
junior musk
#

which also means that DeluxeTags doesn't support nested PAPI placeholders

safe gazelle
turbid tide
#

^^^

safe gazelle
turbid tide
#

what do you return inside the javascript? just add %deluxetags_tag_...% to it

#

where ... is what you were returning before

safe gazelle
#

oh can i do that!?

#

that is magical

turbid tide
#

why wouldn't you be able to?

safe gazelle
#

thank you so much haha

safe gazelle
#

i didn't think about it in all honesty

junior musk
#

actually

#

you could use %nested_deluxetags_tag_{javascript_snip_%shopitemname%,6,back}%

turbid tide
#

I guess that might work. but at this point I Don't see the reason

junior musk
#

meow

safe gazelle
turbid tide
#

how?

junior musk
#

(btw you have to download the expansion manually since it isn't verified ;-;)

turbid tide
#

well you do you xd

safe gazelle
# turbid tide how?

because i need the split for multiple different plugins not just for deluxe tags

tender vaporBOT
#
Hey!

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

turbid tide
#

just make a javascript for deluxetags only

#

xD

safe gazelle
#

yeah but using the same one for multiple different situations would be more ideal as it would just be copy and pasting the same code but just adding a different placeholder around the returned output

austere hawk
#

I added a PlaceholdersAPI extention for Towny it says 2 placeholders hooks registered but nothing shows in ecloud download

junior musk
#

/papi list ?

austere hawk
#

Yeah it wasnt in there

#

Its in list but not download

junior musk
#

can you send a screen of the console on papi reload?

austere hawk
#

I cant paste images here?

tender vaporBOT
#
Uploading Images

You won't be able to upload images here directly to avoid spam, so please use https://imgur.com/ to upload images/screenshots.

austere hawk
#

this is all it shows anyways
[INFO] .... blazenoutlaws issued server command: /papi reload

[INFO] .... [PlaceholderAPI] Placeholder expansion registration initializing...

[INFO] .... [PlaceholderAPI] Fetching available expansion information...

[INFO] .... [PlaceholderAPI] Successfully registered expansion: towny

[INFO] .... [PlaceholderAPI] Successfully registered expansion: townychat

junior musk
#

no errors or anything?

austere hawk
#

When I type /papi list I see the towny extention

#

But the placeholders dont show

junior musk
#

uh

#

they don't show in /papi list

#

only the expansion name

austere hawk
#

I know I mean when I put in a placeholder

#

For my scoreboard

junior musk
#

ah

#

which placeholder did you try?

austere hawk
#

%towny_town%

#

Thats what it said on the extention site

junior musk
#

does it appear correctly in chat if you do /papi parse me %towny_town% ?

austere hawk
#

Internal error

junior musk
#

check console

turbid tide
#

check console

#

lmao

junior musk
#

first :D

austere hawk
junior musk
#

are you using Towny or TownyAdvanced?

austere hawk
#

TownyAdvanced

errant iron
#

well that's probably why

#

Caused by: java.lang.ClassNotFoundException: com.palmergames.bukkit.towny.object.TownyUniverse

junior musk
#

which version?

errant iron
#

That file probably doesn't exist in the new Towny

austere hawk
#

1.16.4

junior musk
#

I meant Towny

errant iron
junior musk
errant iron
#

ah yup, no expansion

austere hawk
#

so how am I supposed to do placeholders

#

I saw other servers with the same plugin using them

junior musk
#

what's your Towny version?

austere hawk
#

I dont remember what version I got it was like 1 month ago

junior musk
#

/ver towny

austere hawk
#

0.97.0.0

safe gazelle
#

Wait @junior musk did you update nested placeholders for me lmao

junior musk
junior musk
safe gazelle
#

ahhh ok haha

#

well it sorted my issue so thank you

austere hawk
#

the old PAPI expansion?

junior musk
#

no

safe gazelle
#

I appreciate both you and blitz for the support

junior musk
#

you can click on the arrow here

zealous arch
#

how can I create a variable that shows the amount of players with a specific permission?

junior musk
#

you can use the PlayerList expansion for PlaceholderAPI and use the %playerlist_online,perm,yes,amount,<yourPermissionHere>% placeholder

turbid tide
#

that's what happens when people don't follow rules

junior musk
#

yeah

rare tangle
#

this feels really stupid but whats the placeholder to list amount of online players

errant iron
#

%server_online%

pine fog
#

Recently the latest version of javascript has been consuming me too much performance, my server's tps drops considerably, and removing it solves this, the same thing did not happen to me before.

warm plover
#

%checkitem_give_mat:bow,enchantments:power=1;punch={player_item_in_hand_level_ARROW_KNOCKBACK}%

I'm trying to use checkitem to give a power 1 bow but if they have punch 1 on there current item it gives them power 1 and punch 1. the bow I have in my hand has punch 1 yet it is not added, %player_item_in_hand_level_ARROW_KNOCKBACK% is 1, does anyone know why this doesn't work?

#

I've been testing for like the past 30 minutes lol

eternal jackal
#

Hello friends, I have a plugin in which I have to put% superguilds_guild%, but it uses PlaceholderAPI, although my server does not detect the use of it, I am using ezchat and I am putting it like this: - '& f➣ & 7Clan: & e % superguilds_guild% '

#

What do you recommend me to do so that I can use it

errant iron
#

/papi dump

eternal jackal
mighty drift
dense thorn
#

hello

shy niche
#

hi

dense thorn
#

is there a way I can show like the disk max and disk used

#

and ram max and ram being used right now

#

and CPU too

#

anyone?

magic rock
#

cpu spark plugin

#

maybe it can so things w RAM too, nor sure

#

wait

#

im idiot

shy niche
#

me too

magic rock
dense thorn
#

ok thanks

#

any way to show disk? @magic rock

magic rock
dense thorn
#

alright, thanks

magic rock
#

oh

#

no matches

#

😔

thorn thunder
rain basin
#

Hello how to add two variables together for example : %bungee_faction% + %bungee_faction2% = %bungee_factiontotal%

turbid tide
#

@rain basin ^^^ math expansion

turbid tide
warm plover
#

It says they are available if you use {} instead of %%

turbid tide
#

yeah I Just checked the code as well

#

that's strange

warm plover
#

I tried so hard to get it to work lol

turbid tide
#

if you set it to punch=1

#

it works?

warm plover
#

Yeah

turbid tide
#

oh wait...

#

yeah it doesn't set placeholders

#

for the value

#

just the enchanment name

warm plover
#

Oof

turbid tide
#

@mint fable java NamespacedKey key = NamespacedKey .minecraft(PlaceholderAPI.setBracketPlaceholders(p, ench[0].toLowerCase())); enchantments.put(Enchantment.getByKey(key), Integer.valueOf(ench[1]));

#

you'll probably want to fix this

#

all you can do now SParxez is wait

#

for cj to fix it

warm plover
#

Eyy 2nd bug reported 😂

#

dunno if that’s a bug but lol

turbid tide
#

yeah not really a bug

#

just a mistake on cj's part

#

unless there's actually a reason he did it like that

#

but I can't see what that would be

warm plover
#

Thank you for the help tho!

turbid tide
#

👍

mint fable
#

mistake on not parsing for the int for placeholders?

turbid tide
mint fable
#

i'll add it to the list

turbid tide
#

alr 👍

thorn thunder
#

Thank you

rain basin
#

Hello how to add two variables together for example : %bungee_faction% + %bungee_faction2% = %bungee_factiontotal%

rain basin
#

Thx

#

How to remove the comma with Math expansions (placeholder)

#

Because %math_{bungee_bewards1}+{bungee_bedwars2}[precision:0]% don't work

turbid tide
#

its not [precision:0] anymore

#

its %math_0:_{bungee_bedwars1}+{bungee_bedwars2}%

rain basin
#

Okayy thx 😉

calm kelp
#

my placeholders arent working they're just showing the placeholders instead of the value any known fix for that

turbid tide
tight matrix
#

hello

#

how i get worlds player count? exeample; in word a there are 12 online and world b 5 online, what is placeholder with 17 online?

turbid tide
#

%server_online_<world-name>%

#

so for world a %server_online_a%

tight matrix
#

list off worlds

#

not 1

turbid tide
#

you can add them up with the math expansion

tight matrix
#

how .-.

turbid tide
#

%math_0:_{server_online_a}+{server_online_b}%

tight matrix
#

oke thx

honest swift
#

is there any way to show prestiges and ranks as prefix in chat?

#

im using UltraPrisonCore as plugin

#

for ranks and prestiges

errant iron
#

If it has placeholders, ya

#

Which chat plugin do you use

tender vaporBOT
#
Hey!

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

turbid tide
calm kelp
#

Server, Player, Vault, Supercredits, all of them

#

luckyperms

#

essentialsx

turbid tide
#

k then

#

/papi dump

#

and send the link

#

that got generated

calm kelp
turbid tide
#

also restart the server please and send the full startup log

tender vaporBOT
#
FAQ Answer:

Startup Log Location
Your latest startup log can be found in the logs folder of your
server directory, labeled as latest.log.
Please copy the contents and paste them to a paste service.
Type ?paste for more information.

turbid tide
#

this is where you find the log ^^

#

restart first tho