Please join the discord for support: https://discord.gg/zJQbHXYGWy
Requires Java 16 to use!
Or you can message me here on Spigot.
Do not report bugs in the review section!

cy8p2KQ.gif
0PCoKNj.gif
w6yW4qY.gif
How it works:

KillTracker allows players to earn rewards from killing both mobs and players.
Players can get rewards at a certain amount of kills, and also every x amount of kills.
For example, you can allow player to get a gold ingot when they kill 5 players, and also every time they kill 10 players, they get a diamond.
The kills are stored in a database, and players can view their kills in a GUI menu.
You can also define custom entity groups, which give rewards for killing specified entities in a list, for example, a zombies entity group which gives the same rewards for killing a mix of zombies, husks, and drowned.
You can send the player messages, send console commands, and give player items as rewards for killing mobs / players. There can be rewards for the general categories of mobs (Hostile, Passive, Neutral), and also rewards for specific mobs.


Versions:
It has only been tested on 1.17, it might work on versions 1.13+, untested though.


Commands:
/killtracker: Opens the main kill tracker menu
/killtracker mobs: Opens the mob kill tracker menu
/killtracker players: Opens the player kill tracker menu


Permissions:
killtracker.menu: Allows players to view their kills in the menu


Config Options:
If you ever need to reset any config files, just delete them and restart the server

To make a mob reward file, name the file the name of the mob.

Code (YAML):

use-all-tiered-rewards
: Specifies whether you want players to receive rewards for only a mob kill (if defined ), or also the category it is in. For example, if there are rewards defined for cows, and also for passive mobs, if this option is set to true, they will receive rewards for both cows and passive mobs.

delay-same-player-kills
: How long (in seconds ) players must wait to receive rewards from killing the same player

send-debug-messages
: If this option is enabled, debug messages will be sent to console, mostly used for reporting bugs.

save-interval
: How often user data should be save (in seconds ).
 


Placeholders:
- %killtracker_playerkills_{playername}% (remove brackets).
- %killtracker_mobkills_{mob}% (remove brackets).
- %killtracker_mobkills_{mobgroup}% (remove brackets).


How to use items in a config:
Items can be used both as rewards, and as items in a killtracker menu.
Items have the following options:

  • name (text)

  • amount (number)

  • material (text)

  • glowing (true/false)

  • type - Used to define the entity type, for example cow, used to display the item in a menu

  • lore (list)

  • item-flags (list)

  • texture (text - if item is a player head)

  • player-name (text - if item is a player head)

  • command (text - command executed, for menu items, executed by the player who clicks the item)

Rewards Examples:

Code (YAML):

# Rewards
1
:
  # reward type
  type
: command
  command
: give %player% diamond
2
:
  # reward type
  type
: message
  message
: You have killed 10 hostile mobs!
3
:
# reward type
  type
: items
  items
:
    1
:
      material
: DIAMOND
      amount
: 1
    2
:
      material
: IRON_SWORD
      amount
: 1
4
:
  type
: head
  # random texture
  texture
: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNGE3MTI5ZmY4OWNmZDI1MTNiZDdjODk3YzNkNmE0YjJjMWIyZDk5Y2NmOTI2NmFlZDVhZjY0NmY3ZDk2M2VlOCJ9fX0=
  item-name
: "%name%'s head"
  lore
:
   - ' '
    - "%name%'s kills"

 

Custom Entity Group Example:

Code (YAML):

# mobs in the group
mobs
:
 - SKELETON
  - WITHER_SKELETON
# Number of kills
kills
:
  1
:
    # Rewards
    1
:
      # reward type
      type
: command
      command
: give %player% wither_skeleton_skull
    2
:
      type
: message
      message
: You have killed 1 skeleton group!
    3
:
      type
: items
      items
:
        1
:
          material
: BOW
          amount
: 1
        2
:
          material
: ARROW
          amount
: 64
    4
:
      type
: head
      # random texture
      texture
: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNGE3MTI5ZmY4OWNmZDI1MTNiZDdjODk3YzNkNmE0YjJjMWIyZDk5Y2NmOTI2NmFlZDVhZjY0NmY3ZDk2M2VlOCJ9fX0=
      item-name
: "%name%'s head"
      lore
:
       - ' '
        - "%name%'s kills"
# applies every x kills
milestones
:
  5
:
    1
:
      # reward type
      type
: command
      command
: effect give %player% wither 10 10
    2
:
      type
: message
      message
: '&3You have completed a milestone of killing a skeleton group!'
    3
:
      type
: items
      items
:
        1
:
          material
: BONE
          amount
: 3
        2
:
          material
: COAL
          amount
: 1
 

Example config:

Code (YAML):

# Number of kills
kills
:
  1
:
    # Rewards
    1
:
      # reward type
      type
: command
      command
: give %player% diamond
    2
:
      type
: message
      message
: You have killed 10 hostile mobs!
    3
:
      type
: items
      items
:
        1
:
          material
: DIAMOND
          amount
: 64
        2
:
          material
: IRON_SWORD
          amount
: 1
    4
:
      type
: head
      # random texture
      texture
: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNGE3MTI5ZmY4OWNmZDI1MTNiZDdjODk3YzNkNmE0YjJjMWIyZDk5Y2NmOTI2NmFlZDVhZjY0NmY3ZDk2M2VlOCJ9fX0=
      item-name
: "%name%'s head"
      lore
:
       - ' '
        - "%name%'s kills"
# applies every x kills
milestones
:
  5
:
    1
:
      # reward type
      type
: command
      command
: effect give %player% regeneration 10 10
    2
:
      type
: message
      message
: '&3You have completed a milestone!'
    3
:
      type
: items
      items
:
       1
:
          material
: EMERALD
          amount
: 3
        2
:
          material
: BEDROCK
          amount
: 1
 

Reviews let me know what you think of the plugin, and keep me motivated, good or bad. Please avoid reporting bugs in the review section though.