Перейти к содержимому
Mineforgian

VanguardRanks

⭕ Unlimited Ranks 👑️ Prestige System ✅ GUI Based ✨ PAPI Support

Загрузки
177
Подписчики
2
Обновлён
6 июля 2026 г.
Лицензия
All-Rights-Reserved

Опубликован 8 июня 2025 г.

VR Logo

VanguardRanks

The most powerful ranking plugin

VanguardRanks with Placeholder API integration enables server managers to use custom placeholders to set specific requirements for rank progression. Define conditions such as balance, level, and more using placeholders, enabling dynamic and personalized ranking criteria.

GUI Based

VanguardRanks is the most intuitive ranking plugin. Instead of forcing your players to navigate tedious commands and chat messages, they can use the GUI to easily check available ranks and track their progress.

Unlimited Ranks

VanguardRanks allows you to create unlimited ranks for your players. The GUI is automatically paginated, offering an extensive and seamless progression system for your players to achieve.

Localization

VanguardRanks supports multiple languages, ensuring that players from around the world can enjoy the plugin in their native language. Easily configure the language messages to provide a personalized experience for your community.

Highly Configurable

VanguardRanks offers extensive customization options, allowing you to tailor the ranking system to fit your server's unique needs. Modify rank requirements, rewards, and permissions with ease to create the perfect progression system for your players.

Discord Hook

Stay connected with your community through the built-in Discord hook. Automatically send rank-up notifications directly to your Discord server, keeping your players informed and engaged.

Commands

  • /rank - Opens the GUI
  • /rank gui - Opens the GUI
  • /rank gui [player] - Opens the GUI of a specified player
  • /rank check - Check your own rank
  • /rank check [player] - Check another player’s rank
  • /rank reload - Reload the plugin
  • /rank list - List all ranks, with pagination
  • /rank players - List all player’s ranks, with pagination
  • /rank up - Rank yourself up, if possible
  • /rank up [player] - Rank another player up, if possible
  • /rank set [player] [rank] - Assign a rank to a player
  • /rank help - Display a list of all commands
  • /rank version - Check plugin version

Permissions

  • vanguardranks.gui - Allows to open the rank GUI with /rank and /rank gui
  • vanguardranks.gui.other - Allows to open another player's rank GUI with /rank gui [player]
  • vanguardranks.gui.set - Allows to set their own rank using the rank GUI
  • vanguardranks.gui.set.other - Allows to set another player's rank using the rank GUI
  • vanguardranks.reload - Allows to reload the plugin with /rank reload
  • vanguardranks.version - Allows to check the plugin version with /rank version
  • vanguardranks.help - Allows to view the list of commands with /rank help
  • vanguardranks.save - Allows to save the plugin's data with /rank save
  • vanguardranks.list - Allows to list all ranks with /rank list
  • vanguardranks.up - Allows to rank themselves up with /rank up
  • vanguardranks.up.other - Allows the player to rank another player up with /rank up [player]
  • vanguardranks.check - Allows to check their own rank with /rank check
  • vanguardranks.set - Allows to assign a specific rank to a player with /rank set [player] [rank]
  • vanguardranks.players - Allows the player to list all players' ranks with /rank players

Placeholders

Ranks Placeholders

  • %rank% - The rank displayname
  • %display_name% - The rank displayname
  • %prefix% - The rank prefix
  • %order% - The rank order
  • %name% - The rank name
  • %player% - The player username

Requirements Placeholders

%current% - The current value of the requirement %required% - The required value of the requirement %status% - The status of the requirement, if true or false

PlaceholderAPI Placeholders

  • %rank_prefix% - The prefix of the player's current rank
  • %rank_next_prefix% - The prefix of the next rank
  • %rank_previous_prefix% - The prefix of the previous rank
  • %rank_display_name% - The display name of the player's current rank
  • %rank_next_display_name% - The display name of the next rank
  • %rank_previous_display_name% - The display name of the previous rank
  • %rank_name% - The name of the player's current rank
  • %rank_next_name% - The name of the next rank
  • %rank_previous_name% - The name of the previous rank
  • %rank_order% - The order of the player's current rank
  • %rank_next_order% - The order of the next rank
  • %rank_previous_order% - The order of the previous rank
  • %rank_status% - The status of the player's current rank
  • %prestige_name% — Internal name of the prestige.
  • %prestige_next_name% — Internal name of the next prestige.
  • %prestige_previous_name% — Internal name of the previous prestige.
  • %prestige_display_name% — Formatted display name of the prestige.
  • %prestige_next_display_name% — Formatted display name of the next prestige.
  • %prestige_previous_display_name% — Formatted display name of the previous prestige.
  • %prestige_prefix% — Styled prefix of the prestige.
  • %prestige_next_prefix% — Styled prefix of the next prestige.
  • %prestige_previous_prefix% — Styled prefix of the previous prestige.
  • %prestige_level% — Numeric level of the prestige.
  • %prestige_next_level% — Numeric level of the next prestige.
  • %prestige_previous_level% — Numeric level of the previous prestige.
  • %prestige_var_<variable_name>% — Value of a custom variable configured for the current prestige level.

Default Files Configuration

config.yml

rank_checker: 300 # The amount of ticks between each rank check. Default is 300 (15 seconds), -1 to disable.
rank_on_join: true # If true, players will automatically receive the first rank when they join the server.
rank_up_message: true # If true, players will receive a message when they rank up. You can customize the message in the ranks.yml file with the "message:" command.

prestige: 
  enabled: true
  first_prestige_message: true # If true, players will receive a message when they prestige for the first time. You can customize the message in the prestiges.yml file with the "message:" command.
  # Default values you can check in the ranks.yml file, you can override for each prestige level in the prestiges.yml file.
  variables: 
    check_money: 1
    check_xp: 1
    xp_multiplier: 1
 
storage:
  adapter: yaml # yaml | mysql

  prefix: vanguard_ranks
  address: localhost:3306
  database: minecraft
  username: root
  password: ''

discord:
  enabled: true
  avatar_url: 'https://minotar.net/helm/%player%/64.png'
  username: '%player%'
  webhooks:
    default: 'https://discord.com/api/webhooks/1234567890/abcdefghijklmnopqrstuvwxyz'
    rank: 'https://discord.com/api/webhooks/1234567890/abcdefghijklmnopqrstuvwxyz'
    prestige: 'https://discord.com/api/webhooks/1234567890/abcdefghijklmnopqrstuvwxyz'

menu:
  open_on_current_rank: true
  gui:
    flow: SNAKE # SNAKE, HORIZONTAL, VERTICAL
    structure:
      - "B A B A * A B A P"
      - ". . . . . . . . ."
      - ". . . . . . . . ."
      - "B B B < X > B B B"
    recipe:
      "*":
        icon: PLAYER_HEAD
        icon_amount: 1
        icon_model_data: 3
        function: PLAYER
        display_name: '<gray>%player%'
        lore:
          - "Current rank %rank%"
          - "Prestige %prestige_name%"
          - "..."
      # Fill the empty space with a material
      ".":
        icon: AIR
        function: RANK
      # Prestige advance button
      "P":
        icon: GOLDEN_INGOT
        function: PRESTIGE
        display_name: '<gold>Prestige'
        lore:
          - "Current rank %rank%"
          - "Prestige %prestige_name%"
          - "..."
      # You can use as a material
      "A":
        icon: BLACK_STAINED_GLASS_PANE
        function: DECORATIVE
      # You can also not define a function, default will be DECORATIVE
      "B": WHITE_STAINED_GLASS_PANE
      "X":
        icon: REDSTONE
        function: CLOSE
      # You can use as an item with model data
      "<":
        icon: RED_STAINED_GLASS_PANE
        icon_model_data: 10
        function: BACK
      ">":
        icon: LIME_STAINED_GLASS_PANE
        icon_model_data: 0
        function: FORWARD
  status:
    completed:
      display_name: '%rank% <gray>- <green><bold>COMPLETED'
      icon: AIR
      icon_amount: 1
      display_lore: true
      prepend_lore:
        - " "
      append_lore:
        - " "
        - "<green>You have completed this rank!"
    current:
      display_name: '%rank% <gray>- <dark_green><bold>CURRENT RANK'
      icon: AIR
      icon_amount: 1
      display_lore: true
      prepend_lore:
        - " "
      append_lore:
        - " "
        - "<green>Click you rank up if all satisfied"
    in_progress:
      display_name: '%rank% <gray>- <yellow><bold>IN PROGRESS'
      icon: AIR
      icon_amount: 1
      display_lore: true
      prepend_lore:
        - " "
      append_lore:
        - " "
        - "<gold>You are currently working on this rank!"
    ready:
      display_name: '%rank% <gray>- <aqua><bold>READY TO RANK UP'
      icon: AIR
      icon_amount: 1
      display_lore: true
      prepend_lore:
          - " "
      append_lore:
          - " "
          - "<aqua>You can rank up now!"
    locked:
      display_name: '%rank% <gray>- <red><bold>LOCKED'
      icon: AIR
      icon_amount: 1
      display_lore: false
      prepend_lore:
        - " "
      append_lore:
        - " "
        - "<red>You need to complete the previous rank!"

# https://bstats.org/plugin/bukkit/VanguardRanks/22582
metrics: true

ranks.yml

rookie:
  prefix: "<dark_gray>[<yellow>ROOKIE<dark_gray>]"
  display_name: '<yellow>Rookie'
  icon: COBBLESTONE
  icon_amount: 1
  icon_model_data: 0
  lore:
    - '<yellow>Rewards'
    - ' '
    - '<gray>- <white>Access to %display_name% <gray>kit'
  commands:
    - 'lp user %player% permission set essentials.kits.%name% true'
    - 'discord: :medal: %player% has reached %display_name%!'
    # Has either of the permissions
    - 'perm_rank.vip1;rank.vip2: eco give %player% 1000'

explorer:
  prefix: "<dark_gray>[<green>EXPLORER<dark_gray>]"
  display_name: '<green>Explorer'
  icon: head:eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGFhNmMyZDFiZDgwZmRkNmE2MzJjYzdjYWZkMjVmMDllZjIwM2VlYzJhNjkzYjdjYmEwM2QxNzZiMmNjMDcxYiJ9fX0=
  icon_amount: 2
  icon_model_data: 10
  requirements:
    '%vault_eco_balance%':
      type: NUMBER
      eval: GREATER
      value: '%math_1000*{prestige_var_check_money}%'
      gui_message: '<gray>Money <green>%formatter_number_shorten_{current}%<gray>/<yellow>%formatter_number_shorten_{required}% <reset>%status%'
      deny_message: '<gray>You need to have more money than <red>$%formatter_number_shorten_{required}%'
    '%statistic_walk_one_cm%':
      type: NUMBER
      eval: GREATER
      value: 10000
      gui_message: '<gray>Distance Walked <green>%formatter_number_shorten_{current}%<gray>/<yellow>%formatter_number_shorten_{required}% <reset>%status%'
      deny_message: '<gray>You need to walk at least <red>%formatter_number_shorten_{required}% <gray>blocks'
  lore:
    - '<red>Requirements:'
    - ' '
    - '<gray>- %requirement_0%'
    - '<gray>- %requirement_1%'
    - ' '
    - '<yellow>Rewards'
    - ' '
    - '<gray>- <white>$1000'
    - '<gray>- <white>Access to %display_name% <gray>kit'
  commands:
    - 'eco give %player% 1000'
    - 'lp user %player% permission set essentials.kits.%name% true'
    - 'title %player% title "<gray>You are now %display_name%!"'
    - 'discord: :medal: %player% has reached %display_name%!'
    - 'message: <green>Congratulations! You are now %display_name%!'
    # Has both permissions
    - 'perm_rank.vip1,rank.vip2: eco give %player% 2000'
    # Has either of the permissions
    - 'perm_rank.vip1;rank.vip2: eco give %player% 1000'

prestiges.yml

rookie:
  prefix: "<dark_gray>[<yellow>ROOKIE<dark_gray>]"
  display_name: '<yellow>Rookie'
  icon: GOLD_INGOT
  icon_amount: 1
  icon_model_data: 0
  lore:
    - '<yellow>Rewards'
    - ' '
    - '<gray>- Nothing special yet, but you can start your journey!'
expert:
  prefix: "<dark_gray>[<cyan>EXPERT<dark_gray>]"
  display_name: '<cyan>Expert'
  icon: DIAMOND
  icon_amount: 1
  icon_model_data: 0
  lore:
    - '<yellow>Rewards'
    - ' '
    - '<gray>- <white>Gain %prestige_var_xp_multiplier%x more XP'
    - '<gray>- <white>Access to %prestige_prefix% <gray>kit'
  variables:
    check_money: 2
    check_xp: 2
    xp_multiplier: 1.5
  commands:
    - 'message: <green>Congratulations! You are now %prestige_display_name%!'
    - 'title %player% title "<gray>You are now %prestige_display_name%!"'
    - 'exp give %player% 1000'

Ченджлог

2.0.1Релиз26.1.1, 26.1.2, 26.2 · 6 июля 2026 г.

Added the metrics for answering the following topics.

  • Is prestige enabled
  • What's the amount of prestiges setup
  • What's the type of storage most used
2.0.0Релиз26.1.1, 26.1.2, 26.2 · 5 июля 2026 г.

👑 Prestige System

Now, upon reaching the maximum rank on the server, you can reset your rank progress to increase your Prestige level.

  • Continuous Journey: Reset back to the first rank (e.g., Rookie) with new goals and accumulated multipliers.
  • Simple Commands:
    • /rank prestige — Initiates the prestige process and displays a confirmation message with details.
    • /rank prestige confirm — Confirms and executes the rank reset and prestige level up.
    • /rank prestige <player> [confirm] — Allows administrators to manage the prestige of other players.

📊 Interactive Graphical User Interface (/rank or /rank gui)

The plugin's main GUI has been redesigned to display information about the player's current prestige.

  • Prestige Icon: The menu renders your current prestige icon (supporting standard Minecraft materials or custom textured player heads/skins).
  • GUI Interaction: You can click directly on the prestige icon in the GUI to initiate the prestige action without having to type commands in chat.

📈 Dynamic Rank Requirements (Scaling)

Rank upgrade requirements can now be dynamically evaluated based on your current prestige level variables!

  • Auto-Scaling: Server admins can set rank requirements to scale up depending on the player's prestige (e.g., value: '%math_1000*{prestige_var_check_money}%').
  • This establishes a dynamic and balanced economy that automatically adjusts to each player's progress.

🔧 Information for Server Administrators

📝 New Prestige Configuration (prestiges.yml)

A dedicated configuration file has been introduced to fully customize the prestige tree of your server:

  • Icon Customization: Supports any Minecraft material or custom textured skull Base64 values (e.g., icon: "head:<base64>").
  • Automated Rewards: Configure console commands to execute when a player prestiges.
  • Prestige Variables: Define unique custom variables per prestige level to use in rank requirements or placeholders.
rookie:
  prefix: "<dark_gray>[<yellow>ROOKIE<dark_gray>]"
  display_name: '<yellow>Rookie'
  icon: GOLD_INGOT
  icon_amount: 1
  icon_model_data: 0
  lore:
    - '<yellow>Rewards'
    - ' '
    - '<gray>- Start your journey to the top!'
expert:
  prefix: "<dark_gray>[<cyan>EXPERT<dark_gray>]"
  display_name: '<cyan>Expert'
  icon: DIAMOND
  icon_amount: 1
  icon_model_data: 0
  lore:
    - '<yellow>Rewards'
    - ' '
    - '<gray>- Gain %prestige_var_xp_multiplier%x more XP'
  variables:
    check_money: 2
    check_xp: 2
    xp_multiplier: 1.5
  commands:
    - 'message: <green>Congratulations! You reached prestige %prestige_display_name%!'
    - 'exp give %player% 1000'

📢 Discord Integration (Webhooks)

The Discord integration manager has been updated to support multiple dedicated webhooks within config.yml:

  • Send custom rank advancement and prestige milestone announcements directly to distinct Discord channels.
  • Full support for native and PlaceholderAPI placeholders in Discord messages.

🧩 Expanded PlaceholderAPI Support

The plugin now registers three dedicated PlaceholderAPI expansion identifiers to query information:

  1. %prestige_<param>%: Dedicated prestige placeholders.
  2. %rank_<param>%: Dedicated rank placeholders.
  3. %vanguardranks_<param>%: Legacy/global placeholders (supports both rank and prestige keys).

Available Prestige Placeholders

  • %prestige_name% — Internal name of the prestige.
  • %prestige_next_name% — Internal name of the next prestige.
  • %prestige_previous_name% — Internal name of the previous prestige.
  • %prestige_display_name% — Formatted display name of the prestige.
  • %prestige_next_display_name% — Formatted display name of the next prestige.
  • %prestige_previous_display_name% — Formatted display name of the previous prestige.
  • %prestige_prefix% — Styled prefix of the prestige.
  • %prestige_next_prefix% — Styled prefix of the next prestige.
  • %prestige_previous_prefix% — Styled prefix of the previous prestige.
  • %prestige_level% — Numeric level of the prestige.
  • %prestige_next_level% — Numeric level of the next prestige.
  • %prestige_previous_level% — Numeric level of the previous prestige.
  • %prestige_var_<variable_name>% — Value of a custom variable configured for the current prestige level.
1.9.9Релиз26.1.1, 26.1.2, 26.2 · 5 июля 2026 г.
  • Fixed not setting custom-model-data from ranks.yml, only from config.yml were a applied.
  • Added a configuration for toggling metrics for bstats. Update the config.yml with metrics section
config.yml metrics: true
1.9.3Релиз26.1.1, 26.1.2, 26.2 · 7 января 2026 г.
  • Fixed an error when checking player's rank and it doesn't have a Rank yet
  • Fixed a bug where clicking another inventory would trigger events on the VR inventory
  • Fixed some commands not working when the command had the character ":" in the text
  • Fixed a bug introduced in the last version where the player head appear with the "gui_close" locale

Комментарии

Загружаем…