ActionPoints | The ULTIMATE Rewards Plugin! | Reward Players for Actions! | 1.16 - 1.21.x icon

ActionPoints | The ULTIMATE Rewards Plugin! | Reward Players for Actions! | 1.16 - 1.21.x -----

Level up your player's experience with ActionPoints - Rewarding players for every action they take!



7.png

ActionPoints requires Java 17 or higher! Please ask your hosting service to upgrade if you are on a lower version.



AP-Header.png

Support will only be provided on my discord server. If you really don't want to use discord for support, feel free to send me a PM. Do not use the discussion or reviews for support.

AP-About.png
ActionPoints is the ULTIMATE rewards plugin for Minecraft servers that lets you reward your players for every action they take in the game. Whether it's mining, crafting, eating, or even chatting, players earn points for every action they perform. These points can be converted into rewards that you configure, making playing Minecraft more rewarding and engaging than ever before.


AP-Features.png
Points
This is ActionPoints' main feature. Players will be awarded points for most of the actions you can think of!
It even supports actions from some other plugins. Please look at the compatibility section for this.

Rewards
Rewards are commands that are executed when reaching a specific amount of points specified by you.
You can create multiple rewards at any amount of points.
Points will be reset when you reach the maximum amount of points.
You have full control over all reward specific settings.

GUI Shop
ActionPoints has a fully customizable shop where players can purchase rewards with their ActionPoints.

MySQL Support
ActionPoints has support for MySQL, so you can sync data to other servers. This is really useful for bungeecord networks.

Highly Customizable
ActionPoints lets you configure almost every aspect of the plugin.
You can enable or disable every action, you can change the number of points per action, edit every message, customize the shop, and much more!
The spoiler below contains all default configuration files:
settings.yml
Code (YAML):
Settings:
  General
:
    Prefix
: "&aActionPoints >> &f"
    # Player data gets saved in memory until the player leaves so the database does not get overloaded.
    # As a safety measure, data gets saved to the database periodically to minimize data loss on a crash.
    # The value below specifies how often this happens in minutes. (Default: 15 minutes).
    # Lower values minimize data loss, but may overload the database, especially on bigger servers.
    SaveInterval
: 15
    # If set to false, the player's balance will never go below 0.
    AllowNegativeBalance
: false
    OnReward
:
      Message
:
        # When enabled, the player will receive the specified message when they get rewarded for an action they did.
        Enabled
: true
        # %amount% will be replaced by the amount of points rewarded.
        Message
: "You have been awarded %amount% points for completing an action."
      Actionbar
:
        # When enabled, the player will receive an actionbar above their hotbar when they get rewarded for an action they did.
        Enabled
: false
        # %amount% will be replaced by the amount of points rewarded.
        Message
: "&aYou have been awarded %amount% points for completing an action."
      Title
:
        # When enabled, the player will receive a title in the middle of their screen when they get rewarded for an action they did.
        Enabled
: false
        # The title to send(top line).
        # %amount% will be replaced by the amount of points rewarded.
        Title
: "&a&lActionPoints"
        # The subtitle to send(second line).
        # %surprise% will be replaced by the executed surprise. The names of the surprises are currently hardcoded.
        Subtitle
: "&aYou have been awarded %amount% points for completing an action."
        # Fade in effect in seconds.
        FadeIn
: 1
        # How long the title will stay on screen in seconds.
        Duration
: 2
        # Fade out effect in seconds.
        FadeOut
: 1
  Database
:
    # Valid modes:
    # mysql - Requires a connection to a MySQL server (used to synchronize between multiple servers).
    # sqlite - Stores all data on the filesystem in ActionPoints.db
    Mode
: "sqlite"
    # Only required for MySQL
    Connection
:
      Host
: "localhost"
      Port
: 3306
      Username
: "root"
      Password
: "admin123"
      Database
: "actionpoints"
      PoolSize
: 20
  Economy
:
    # Setting this to true will register ActionPoints as an economy provider in Vault, making it your "primary currency" and making it usable in other plugins that hook into Vault.
    # NOTE: This feature REQUIRES Vault!
    EnablePrimaryCurrency
: false
Rewards
:
  # When true, players will receive rewards when reaching a certain amount of points.
  Enabled
: false
  # When true, the player's balance will be reset when reaching the final reward amount.
  ResetBalance
: false
  # The milestones at which the player should be rewarded. You can add an unlimited amount of milestones.
  Rewards
:
    500
:
      Commands
:
       - "eco give %player% 100"
      Message
: "You are just getting started %player%..."
    1000
:
      Commands
:
       - "eco give %player% 250"
        - "give %player% 5 iron_ingot"
    1500
:
      Commands
:
       - "eco give %player% 350"
        - "give %player% 5 gold_ingot"
    2000
:
      Commands
:
       - "eco give %player% 500"
        - "give %player% 7 diamond"
      Message
: "Your points balance has been reset and you earned the highest reward!"
Actions
:
  Anvil
:
    # Awards points when a player modifies an item with an anvil.
    Enabled
: true
    Points
: 5
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
  # Awards the specified amount of points when one of the specified blocks has been broken.
  BlockBreak
:
    Enabled
: true
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
    # Format: BLOCK_NAME:points
    # Block names: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
    Blocks
:
     - STONE:1
      - IRON_ORE:3
      - GOLD_ORE:3
      - DIAMOND_ORE:5
  # Awards points when any of the specified blocks is placed by a player.
  BlockPlace
:
    Enabled
: true
    # When false, the player will not get points if the block they broke was placed by any player.
    AllowPlacedBlocks
: false
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
    # Format: BLOCK_NAME:points
    # Block names: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
    Blocks
:
     - DIAMOND_BLOCK:20
      - IRON_BLOCK:10
      - GOLD_BLOCK:15
      - OBSIDIAN:5
  # Awards the specified amount of points for any chat message that ISN'T blocked by any other plugin.
  Chat
:
    Enabled
: false
    Points
: 1
    # Requires the specified amount of characters in the message to get points.
    # Set to 1 to disable.
    MinimumChars
: 10
    Similarity
:
      # When false, messages similar to the previous ones will be ignored. Players won't get points for similar messages.
      Allow
: false
      # If the similarity of the message is equal to or higher than the specified percentage, it will be ignored.
      Percentage
: 80
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
  # Awards the specified amount of points when any of the commands are executed.
  # It is not recommended to enable this unless you have a reason to. You can easily abuse this.
  Command
:
    Enabled
: false
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
    # Format: /command:points
    # Include the /.
    Commands
:
     - /msg:1
      - /r:1
      - /tpaccept:2
      - /tpa:2
  # Awards points when any of the specified items are crafted.
  Crafting
:
    Enabled
: true
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
    # Format: ITEM_NAME:points
    # Item names: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
    Items
:
     - DIAMOND_SWORD:10
      - DIAMOND_PICKAXE:8
      - DIAMOND_AXE:8
      - DIAMOND_CHESTPLATE:9
  # Awards points for every enchantment added to a player's item with the enchantment table.
  Enchanting
:
    Enabled
: true
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
    Points
: 5
  # Awards points when a player kills a mob.
  MobKill
:
    Enabled
: true
    Points
: 25
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
  # Removes points when a player dies.
  PlayerDeath
:
    Enabled
: true
    PointsToTake
: 25
  # Awards points when a player kills another player.
  PlayerKill
:
    Enabled
: true
    Points
: 50
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
  # Awards points when a player consumes an item.
  ItemConsume
:
    Enabled
: true
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 30
    Points
: 5
  # Awards points when the player catches a fish.
  Fishing
:
    Enabled
: true
    Points
: 2
    # The amount of seconds between rewards given by this action. Set to 0 to disable.
    Timeout
: 10
  Plugins
:
    Votifier
:
      Vote
:
        Enabled
: false
        Points
: 50
        Timeout
: 0
    # FactionsUUID only
    Factions
:
      FactionCreate
:
        Enabled
: false
        Points
: 250
        Timeout
: 0
      LandClaim
:
        Enabled
: false
        Points
: 50
        Timeout
: 60
    SuperLuckyBlock
:
      # Awards points when a player breaks a luckyblock.
      LuckyBlockBreak
:
        Enabled
: false
        Points
: 10
        Timeout
: 0
shop.yml
Code (YAML):
Settings:
  Shop
:
    Enabled
: true
    Title
: "&aActionPoints &fShop"
  Categories
:
    Rows
: 3
  Items
:
    Rows
: 6
  FillEmptySlots
:
    Enabled
: false
    Material
: "GRAY_STAINED_GLASS_PANE"
    DisplayName
: "&7"

Categories
:
  Example
:
    DisplayName
: "Example Category"
    Material
: "CHEST"
    Lore
: [ ]
    Slot
: 10
  Color
:
    DisplayName
: "&4Colored &2Category"
    Material
: "GREEN_DYE"
    Lore
: [ ]
    Slot
: 11
  Other
:
    DisplayName
: "&8Some Other Category"
    Material
: "ENDER_CHEST"
    Lore
: [ ]
    Slot
: 12
  Lore
:
    DisplayName
: "Category with Lore"
    Material
: "DIAMOND_SWORD"
    Lore
:
     - "&fExample Lore"
      - "&1You &2Can &3Even &4Use &5Colors &6Here&7!"
    Slot
: 13
  Lorem
:
    DisplayName
: "&cLorem Ipsum"
    Material
: "BOOK"
    Lore
:
     - "&fLorem ipsum dolor sit amet."
    Slot
: 14
  AnotherExample
:
    DisplayName
: "Another Example!"
    Material
: "BARRIER"
    Lore
: [ ]
    Slot
: 15
  Final
:
    DisplayName
: "Final Category!"
    Material
: "BEDROCK"
    Lore
: [ ]
    Slot
: 16
Items
:
  DiamondSword
:
    Category
: "Example"
    Material
: "DIAMOND_SWORD"
    Slot
: 0
    DisplayName
: "&b&lDiamond Sword"
    Cost
: 1250
    Lore
:
     - "&fThe best sword ever made!"
      - ""
      - "&f&lPrice
: &f%cost% Points "
    Commands:
      - "
give %player% diamond_sword 1"
  NamedDiamondSword
:
    Category
: "Example"
    Material
: "DIAMOND_SWORD"
    Slot
: 1
    DisplayName
: "&b&lDiamond Sword with Name!"
    Cost
: 2000
    Lore
:
     - "&fThe best sword ever made!"
      - "&fAlso includes a cool name!"
      - ""
      - "&f&lPrice
: &f%cost% Points "
    Commands:
      - "
give %player% diamond_sword 1 {display:{Name:'[{\"text\":\"Cool Diamond Sword\",\"italic\":false,\"bold\":true,\"color\":\"aqua\"}]'}}"
  DoNothingItem
:
    Category
: "Example"
    Material
: "DIAMOND"
    Slot
: 2
    DisplayName
: "&c&lThis Item Does Nothing"
    Lore
:
     - "&fYou could put info here!"
    DoNothing
: true
  1000Money
:
    Category
: "Other"
    Material
: "GOLD_INGOT"
    Slot
: 0
    DisplayName
: "&a$1000"
    Cost
: 1000
    Lore
:
      - "&f&lPrice
: &f%cost% Points "
    Commands:
      - "
eco give %player% 1000"
  2500Money
:
    Category
: "Other"
    Material
: "GOLD_BLOCK"
    Slot
: 1
    DisplayName
: "&a$2500"
    Cost
: 2500
    Lore
:
      - "&f&lPrice
: &f%cost% Points "
    Commands:
      - "
eco give %player% 2500"
  Sand
:
    Category
: "Final"
    Material
: "SAND"
    Slot
: 5
    DisplayName
: "&e64x Sand"
    Cost
: 2500
    Lore
:
      - "&f&lPrice
: &f%cost% Points "
    Commands:
      - "
give %player% sand 64"
 
messages.yml
Code (YAML):
Messages:
  AddedToBalance
: "%amount% Points have been added to %target%'s balance."
  Balance
: "%target% has a balance of %amount% points."
  CommandNotFound
: "Unknown command. Please use /ap help for help."
  InvalidPlayer
: "The player you specified is offline or does not exist."
  InvalidUsage
: "Invalid command usage. See /ap help for help."
  MustSpecifyPlayer
: "You have to specify a player when using this command as console."
  NoPermission
: "&cYou don't have permission to run this command."
  NotANumber
: "The argument you supplied is not a number."
  NotEnoughPoints
: "You don't have enough points for this action."
  RemovedFromBalance
: "%amount% Points have been removed from %target%'s balance."
  SetBalance
: "Set %target%'s balance to %amount%."
  ShopDisabled
: "The shop has been disabled!"

Multiple ways to earn points
There are multiple ways to earn points.
Of course, you can gain them by playing, but you can also claim a reward every 24 hours, beg for points every 15 minutes, and play trivia.
You can also use other plugins that support commands to give players points.

Abuse Protection
ActionPoints contains several options to prevent players from gaining points too quickly by abusing mechanics.
Spamming the chat won't help for example because the plugin checks similarity between messages and messages require a minimum amount of characters specified by you.
Actions like placing blocks and breaking blocks contain a timeout feature that you can enable if you need to.

Vault Integration (EXPERIMENTAL)
ActionPoints can optionally hook into Vault to provide a currency for your server that can be used in other plugins that hook into Vault. See the compatibility section for more details.


AP-Compat.png
Minecraft
Spigot or Paper 1.16 or higher are supported

Java
Java 17 or newer required. If your host uses an older version, please ask for it to be updated.

SuperLuckyBlock
This plugin has support for my other plugin named SuperLuckyBlock.
Supported actions:
- Get points when you break a luckyblock.

NuVotifier
Supported actions:
- Get points when you vote for your server.

FactionsUUID
Supported actions:
- Get points when creating a faction.
- Get points when claiming land.

PlaceholderAPI
ActionPoints contains three placeholders for PlaceholderAPI:
- %actionpoints_balance% - Displays a point balance of a player.

Vault (EXPERIMENTAL)
ActionPoints has the option to integrate with Vault. When enabled, ActionPoints will act as the primary currency of your server, allowing you to use ActionPoints with any plugin that hooks into vault (like more advanced shop GUIs). This feature is disabled by default and must be enabled in the config.

AP-Actions.png
ActionPoints contains the following actions:
- Get points when modifying your item in an anvil.
- Get points when breaking blocks specified by you.
- Get points when placing blocks specified by you.
- Get points when executing commands specified by you.
- Get points when crafting items specified by you.
- Get points when enchanting items specified by you.
- Get points by chatting.
- Get points when consuming an item.
- Get points when killing a mob.
- Get points when killing a player.
- Lose points by dying.


AP-FAQ.png
Q: Could you implement actions for plugin X?
A: I may be able to! Please contact me, and I will look into it.

Q: Am I able to sync data to multiple servers?
A: Yes, you can use the MySQL function for this.

AP-Commands.png
<> = required, [] = optional
/ap balance [player] - Displays your or another player's balance.
/ap give <player> <amount> - Add the specified amount of points to a player's balance.
/ap take <player> <amount> - Remove the specified amount of points to a player's balance.
/ap set <player> <amount> - Set a player's balance.
/ap help - Displays this page.
/ap shop - Opens the ActionPoints shop.
/ap debug - Creates a debug report.

AP-Permissions.png
actionpoints.help - Gives access to /actionpoints help.
actionpoints.give - Gives access to /actionpoints give.
actionpoints.take - Gives access to /actionpoints take.
actionpoints.set - Gives access to /actionpoints set
actionpoints.balance - Gives access to /actionpoints balance
actionpoints.shop - Gives access to /actionpoints shop



AP-Contact.png
If you have any questions, want to report a bug, tell your suggestion or anything like that, feel free to contact me in the following ways:
On my discord server: https://discord.gg/MW9EFbe

Bug reports in reviews will be ignored! I don't monitor the discussion!
Resource Information
Author:
----------
Total Downloads: 132
First Release: Nov 21, 2018
Last Update: Sep 15, 2024
Category: ---------------
All-Time Rating:
14 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings