PlaceholderAPI 2.10.4

A resource that allows information from your favorite plugins be shown practically anywhere!

  1. clip
    Tested Minecraft Versions:
    • 1.7
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    • 1.14
    Source Code:
    https://github.com/PlaceholderAPI/PlaceholderAPI
    Contributors:
    Andre_601, funnycube, Glare, NathanG, LemmoTresto, PiggyPiglet, vk2gpz, and many more
    [​IMG]

    Logo2.png
    [​IMG][​IMG][​IMG]
    [​IMG]
    PlaceholderAPI is a plugin/library that allows servers the use of placeholders from a wide range of your favorite plugins collectively. Essentials, Factions, LuckPerms, Vault, AutoSell, GriefPrevention, etc.... You can display information from your favorite plugins in any plugin that supports PlaceholderAPI. See a full list of placeholders and supported plugins below. Through the use of the Expansion cloud, PAPI effectively and efficiently allows you to pick and choose which placeholders you want to install. The Expansion cloud allows you to receive new placeholders, updates to existing placeholder expansions, and much more directly from your server without updating the actual plugin. With over 100,000 downloads, PlaceholderAPI is a must have for a server of any type or scale.

    Placeholders2.png
    Click the link below to view placeholders
    Placeholders


    PluginsUsing2.png
    Click the link below to view plugins that hook into PlaceholderAPI
    Plugins


    configs2.png
    config.yml
    The config.yml contains the core plugin customization settings as well as a section specifically for expansions that wish to add configurable options too.

    Any settings an expansion may allow you to change will be added to the config.yml when that specific expansion is loaded.

    Code (YAML):

    # PlaceholderAPI version 2.8.1
    # Created by extended_clip

    check_updates
    : true
    cloud_enabled
    : true
    auto_install_expansions
    : true
    boolean
    :
      'true'
    : 'yes'
      'false'
    : 'no'
    date_format
    : MM/dd/yy HH:mm:ss
    expansions
    :
      pinger
    :
        offline
    : offline
        check_interval
    : 10
        online
    : online
      vault
    :
        formatting
    :
          thousands
    : k
          trillions
    : T
          quadrillions
    : Q
          billions
    : B
          millions
    : M
      bungee
    :
        check_interval
    : 30
      javascript
    :
        engine
    : javascript
     
    javascript_placeholders.yml
    If you have the javascript expansion enabled, the plugin will generate a javascript_placeholders.yml file where you can create your own placeholders.
    There are 2 ways you can create these javascript based placeholders. Either specify the javascript directly in the expression: section for each placeholder, or specify a file that the javascript will be loaded from by setting the expression to the following format -
    expression: 'file: <filename with extension>'


    When an expression starts with the "file: " keyword, a file will be created in the /plugins/PlaceholderAPI/javascripts folder with the name and file format specified if it does not exist.

    These placeholders are reloaded on /placeholderapi reload so no need to restart your server to make changes.
    Code (YAML):
    # javascript_placeholders.yml
    # You can create custom placeholders which utilize javascript to determine the result of the custom placeholder you create.
    # You can specify if the result is based on a boolean or the actual javascript.
    #
    # If you do not specify a type: the placeholder will default to a boolean type
    # A boolean type must contain a true_result: and false_result:
    #
    # A string type only requires the expression: entry
    #
    # Javascript placeholders can contain normal placeholders in the expression, true_result, or false_result
    # These placeholders will be parsed to the correct values before the expression is evaluated.
    #
    # Your javascript placeholders will be identified by: %javascript_<identifier>%
    #
    # Javascript placeholder format:
    #
    #     BOOLEAN TYPE
    # <identifier>:
    #   expression: <expression>
    #   type: 'boolean'
    #   true_result: <result if expression is true>
    #   false_result: <result if expression is false>
    #
    #     STRING TYPE
    # <identifier>:
    #   expression: <expression>
    #   type: 'string'
    #
    #
    #  ==== ADVANCED VARIABLES ====
    # DO NOT USE THESE VARIABLES UNLESS YOU KNOW WHAT YOU ARE DOING!
    #
    # You can access a few Bukkit API classes and methods using certain keywords:
    #
    # Using "BukkitServer" in your javascript will return Bukkit.getServer()
    # You can use any methods inside of the Server class:
    #
    # Example: BukkitServer.getBannedPlayers().size().toFixed()
    # Will return how many players are banned
    #
    # This variable is handy if you want to iterate through all online players.'
    #
    # Using "BukkitPlayer" in your javascript will return the Player object you are setting placeholders for.
    # You can use any methods inside of the Player class:
    #
    # Example: BukkitPlayer.hasPermission("some.permission")
    # Will return if the player has a specific permission
    # This variable is handy if you want to check a players permission node, or access other methods inside of
    # the player class for the specified player.
    #
    # More advanced variables are coming soon! Only use these variables if you know what you are doing!
    #
    #  ==================
    #
    #
    # Javascript placeholder examples:
    #
    # millionaire:
    #   expression: '%vaulteco_balance% >= 1000000'
    #   type: 'boolean'
    #   true_result: '&aMillionaire'
    #   false_result: '&cbroke'
    # is_staff:
    #   expression: '"%vault_group%" == "Moderator" || "%vault_group%" == "Admin" || "%vault_group%" == "Owner"'
    #   type: 'boolean'
    #   true_result: '&bStaff'
    #   false_result: '&ePlayer'
    # health_rounded:
    #   expression: 'Math.round(%player_health%)'
    #   type: 'string'
    # staff_online:
    #   expression: 'var i = 0; for (var p in BukkitServer.getOnlinePlayers()) { if (BukkitServer.getOnlinePlayers()[p].hasPermission("staff.online")) {i = i+1;};} i.toFixed();'
    #   type: 'string'
    #
    #
    # You can optionally specify a file that the javascript expression will be loaded from if your expression
    # is bigger than 1 line. To specify javascript be loaded from a file, follow this format:
    #
    # is_op:
    #   expression: 'file: is_op.js'
    #   type: 'string'
    #
    # The following placeholder will attempt to load javascript from the /plugins/PlaceholderAPI/javascripts/is_op.js file
    # if the folder/file exists. If the folder/file does not exist it will be created.
    # You must specify the file extension with the file name. Any file extension is accepted.

    millionaire
    :
      expression
    : '%vaulteco_balance% >= 1000000'
      type
    : boolean
      true_result
    : '&aMillionaire'
      false_result
    : '&cbroke'
    is_staff
    :
      expression
    : '"%vault_group%" == "Moderator" || "%vault_group%" == "Admin" || "%vault_group%"
        == "Owner"'
      type
    : boolean
      true_result
    : '&bStaff'
      false_result
    : '&ePlayer'
    staff_online
    :
      type
    : string

     


    Permissions2.png
    Code (YAML):
    permissions:
        placeholderapi.admin
    :
            description
    : ability to use admin commands
            default
    : op

    Commands2.png
    [​IMG]


    API_Usage2.png
    click the link below to view how to use this API
    API USAGE



    If you enjoy this completely free and powerful resource,
    please be kind enough to leave a like and review!
    :)

    This plugin utilizes bStats to collect anonymous statistics
    [​IMG]
    https://bstats.org/plugin/bukkit/PlaceholderAPI

    Images

    1. icon2.png
    _IceFire_, Top, sian2005 and 88 others like this.

Recent Reviews

  1. Turbotailz
    Turbotailz
    5/5,
    Version: 2.10.4
    Thanks for the super easy extension API! Was able to add my own placeholder in minutes :)
  2. HerobrineProazo
    HerobrineProazo
    5/5,
    Version: 2.10.4
    08.12 02:31:03 [Server] INFO at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:56)
    08.12 02:31:03 [Server] INFO at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    08.12 02:31:03 [Server] INFO at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    08.12 02:31:03 [Server] INFO at java.lang.Thread.run(Thread.java:748)
    08.12 02:31:03 [Server] INFO Caused by: java.lang.NullPointerException
    08.12 02:31:03 [Server] INFO at me.clip.placeholderapi.expansion.cloud.ExpansionCloudManager.lambda$fetch$4(ExpansionCloudManager.java:172)
    08.12 02:31:03 [Server] INFO at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71)
    08.12 02:31:03 [Server] INFO at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53)
    08.12 02:31:03 [Server] INFO ... 3 more





    It only gives me that error and the PAPI and the / daddy ecloud ... stop working, but the integrated expansions don't stop working. Some help? because without daddy I can't finish my server ...
  3. herobine117
    herobine117
    4/5,
    Version: 2.10.4
    Very good plugin, but it would be nice if it had offline player support :/

    If you add offline player support I will rate it 5 stars.
  4. _IceFire_
    _IceFire_
    5/5,
    Version: 2.10.4
    Great plugin, I'm using it more than 1 year and I haven't any issues with it, nice.... No more words just nice.
  5. mine_lauritsen
    mine_lauritsen
    5/5,
    Version: 2.10.4
    This plugin is amazing! It works almost when ever I need it, needs more support for mini-game plugins.
  6. AeonDX
    AeonDX
    5/5,
    Version: 2.10.4
    Just perfect... You can customize your server however you like. String manipulation ? Ohhh yes! Even your own placeholders ? Ohhh damn i need it...
  7. Jadiction
    Jadiction
    5/5,
    Version: 2.10.4
    An absolute need for any server. Never once had an issue with the plugin itself.
  8. Ithirul
    Ithirul
    5/5,
    Version: 2.10.4
    Key element on any server that wants customization and uniqueness. It's always being updated, there's really no reason not to use it.
  9. 1vomarek1
    1vomarek1
    5/5,
    Version: 2.10.4
    I absolutely love placeholderapi plugin! None of my plugins would have possibility to show placeholders like player prefix etc. Thanks for creating it
  10. jonnycp9
    jonnycp9
    3/5,
    Version: 2.10.3
    Add support for placeholders of plotsquared4, thank
    .............................................................................................