Skip to content

Examples

Maxime Tonie edited this page Apr 11, 2026 · 1 revision

Real World Examples

BattlePass XP notification

What the plugin sends: $bp 14 ! 350 (14 XP gained, 350 total XP)

battlepass-xp:
  enabled: true
  placeholder: "$bp"
  delimiter: "!"
  packet-source: SYSTEM
  cooldown: 2
  conditions:
    - "{1} > 0"
  actions:
    - type: SEND_TITLE
      title: "&6+{1} XP"
      subtitle: "&7Total: &e{2} XP"
      fade-in: 5
      stay: 40
      fade-out: 10
    - type: SEND_ACTIONBAR
      message: "&eBattlePass &7— &a{2} XP total"
      delay: 60
    - type: PLAY_SOUND
      sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
      pitch: 1.2

Quest completion with reward

What the plugin sends: $qc daily_hunt ! 500 (quest "daily_hunt" completed, 500 coins reward)

quest-complete:
  enabled: true
  placeholder: "$qc"
  delimiter: "!"
  packet-source: SYSTEM
  cooldown: 3
  actions:
    - type: SEND_TITLE
      title: "&6Quest Complete!"
      subtitle: "&e{1}"
      stay: 60
    - type: SEND_MESSAGE
      message: "&7Reward: &a+{2} coins"
      delay: 10
    - type: CONSOLE_COMMAND
      command: "eco give %player% {2}"
      delay: 5
    - type: PLAY_SOUND
      sound: "UI_TOAST_CHALLENGE_COMPLETE"
    - type: PLAY_PARTICLE
      particle: "VILLAGER_HAPPY"
      count: 30
      offset-x: 0.8
      offset-y: 1.2
      offset-z: 0.8

Level up with fireworks

What the plugin sends: $lvl (no data needed)

level-up:
  enabled: true
  placeholder: "$lvl"
  delimiter: "!"
  packet-source: SYSTEM
  cooldown: 5
  actions:
    - type: SEND_TITLE
      title: "&6⬆ Level Up!"
      subtitle: "&7You are now level &e%player_level%"
    - type: BROADCAST
      message: "&e%player% &6just reached level &e%player_level%&6!"
    - type: PLAY_SOUND
      sound: "ENTITY_PLAYER_LEVELUP"
    - type: REPEAT
      times: 4
      interval: 8
      actions:
        - type: PLAY_PARTICLE
          particle: "FIREWORKS_SPARK"
          count: 20
          offset-x: 0.6
          offset-y: 1.5
          offset-z: 0.6

Random mystery reward

What the plugin sends: $mystery

mystery-box:
  enabled: true
  placeholder: "$mystery"
  delimiter: "!"
  packet-source: SYSTEM
  cooldown: 10
  actions:
    - type: SEND_TITLE
      title: "&5Mystery Box!"
      subtitle: "&7Opening..."
    - type: PLAY_SOUND
      sound: "BLOCK_CHEST_OPEN"
    - type: RANDOM
      delay: 40
      actions:
        - type: CONSOLE_COMMAND
          command: "eco give %player% 100"
        - type: CONSOLE_COMMAND
          command: "eco give %player% 500"
        - type: CONSOLE_COMMAND
          command: "eco give %player% 1000"
        - type: CONSOLE_COMMAND
          command: "item give %player% diamond 3"
        - type: CONSOLE_COMMAND
          command: "item give %player% netherite_ingot 1"

VIP-only trigger with permission check

Only fires for players with myserver.vip:

vip-bonus:
  enabled: true
  placeholder: "$vipbonus"
  delimiter: "!"
  packet-source: SYSTEM
  permission: "myserver.vip"
  cooldown: 60
  actions:
    - type: SEND_MESSAGE
      message: "&6[VIP] &aYou received your VIP bonus!"
    - type: CONSOLE_COMMAND
      command: "eco give %player% 250"

Math in actions

The plugin sends $trade 50 (50 items traded). You want to give 2 coins per item:

trade-reward:
  enabled: true
  placeholder: "$trade"
  delimiter: "!"
  conditions:
    - "{1} > 0"
  actions:
    - type: CONSOLE_COMMAND
      command: "eco give %player% {math:{1}*2}"
    - type: SEND_MESSAGE
      message: "&aTrade complete! You earned &e{math:{1}*2} coins &7({1} items × 2)"

Debugging — finding out what a plugin sends

You don't know what string your plugin sends? Turn on debug mode:

/pt debug YourName

Then trigger the action in-game. You'll see something like:

[PacketDebug] YourName [SYSTEM] $bp 14 ! 82

That $bp 14 ! 82 is exactly what goes in your config. Use $bp as the placeholder and ! as the delimiter.

Turn debug off when done:

/pt debug YourName

Clone this wiki locally