✅ DonationTrains [1.13 - 1.21] | Unique reward system for server donations ⭐ Fully configurable icon

✅ DonationTrains [1.13 - 1.21] | Unique reward system for server donations ⭐ Fully configurable -----

Reward the whole server in a new unique way for players donating!



green_overview.png

Donation Trains is the perfect plugin for 1.13 - 1.21 servers that accept donations! When a player donates, it adds to the Donation Train. You choose yourself to track the amount of donations, or money made. Create your own donation goals, and if the Donation Train reaches your goals before it ends, all online players are given the goal reward you've created!

Let's say you create two goals, one at $10 which gives a Vote Crate to all online players and one at $50 which gives an Epic Crate to all online players. If you've accumulated over $50 once the Donation Train timer expires, all players will be rewarded with an Epic Crate! If you only managed to get $15, everyone will get a Vote Crate instead.

green_images.png

donationtrain.png
dt.png
bossbar.png

green_features.png
  • PlaceholderAPI support
  • Hex color support (1.16+)
  • Everything configurable: settings & messages!
  • Reward the server for reaching the donation goals you have designed
  • Create an unlimited amount of donation goals
  • Choose to track the amount of donations or money made from donations!
  • Choose to only show the Donation Train after a certain amount is reached
  • Manually start a Donation Train with /donationtrain forcestart!

green_configuration.png
  1. Install Donation Train on the server
  2. Start the server
  3. Close the server to generate the config
  4. Change the config to your liking!
  5. Make sure the command /donationtrain add <amount> is ran when a player donates. This can be done by adding it to the Tebex / CraftingStore commands.
    The permission for the command is donationtrain.command.add

  • /donationtrain add <amount> - command to progress the Donation Train (ran by admins manually or by CraftingStore / Tebex when a player donates)
    The permission for the command is donationtrain.command.add
  • /donationtrain deduct <amount> - command to deduct from the Donation Train
    The permission for the command is donationtrain.command.deduct
  • /donationtrain toggle - command to toggle the bossbar & broadcasts
    The permission for the command is donationtrain.command.toggle
  • /donationtrain forcestart - command to manually start the Donation Train, incase it doesn't automatically start or if you configured it to not start after a certain amount is reached.
    The permission for the command is donationtrain.command.forcestart
  • /donationtrain stop - forcefully stop the Donation Train and not give any rewards
    The permission for the command is donationtrain.command.stop
  • /donationtrain reload - reload the plugin & config
    The permission for the command is donationtrain.command.reload

Code (YAML):

general-settings
:
  currency-symbol
: "$"
  ###AMOUNT (currency, money from donations), or COUNT (how many donations?)
  type
: "AMOUNT"
  ###When Donation Train is on cooldown, donations will not track and no trains will start unless manually started
  ###using /donationtrain forcestart.
  ###(in seconds)
  cooldown
: 300
  duration
: 1800
  ###Do you want the Donation Train to stop tracking donations after the last goal is reached?
  stop-tracking-when-reached
: false
  ###Do you want the Donation Train to stop the donation train when the highest goal is reached?
  early-end-when-reached
: false
  reset-on-new-donation
: true
  ###Do you want the counter to reset back to 0 after a Donation Train is started using /donationtrain forcestart
  ###and once a Donation Train starts automatically by "only-start-after" being higher than 0?
  reset-after-force-start
: true
  ###If the type is set to AMOUNT: only start the donation train after making $ X.
  ###If the type is set to COUNT: only start the donation train after getting X amount of donations.
  ###This will start the Donation Train at 0 after exceeding your amount.
  only-start-after
: 0.00
  ###If you wish to hide a goal from being shown, maybe to be fancy?
  hidden-name-format
: "&cHidden"
goals
:
  vote
:
    displayName
: "&a1 Vote Crate"
    threshold
: 5.00
    commands
:
     - "crate giveall Vote 1"
  rare
:
    displayName
: "&91 Rare Crate"
    threshold
: 10.00
    commands
:
     - "crate giveall Rare 1"
  epic
:
    displayName
: "&51 Epic Crate"
    threshold
: 20.00
    theme-color
: "PURPLE"
    hidden
: true
    commands
:
     - "crate giveall Epic 1"
    firework
:
      power
: 1
      effect
:
        trail
: true
        flicker
: true
        type
: "BALL"
        color-rgb
: 16711680
        fade-rgb
: 16711680
bossbar-settings
:
  enabled
: true
  interval
: 5
  format
:
    amount
: "&a&lDONATION TRAIN&7: &7the server has made &f%amount% &7(&f%time_remaining% &7remaining)"
    count
: "&a&lDONATION TRAIN&7: &7the server has gotten &f%amount% donation(s) &7(&f%time_remaining% &7remaining)"
  style
: "SOLID"
  color
: "GREEN"
broadcast-settings
:
  enabled
: true
  interval
: 300
  announce-on-new-donation
: true
  effects
:
    ###Sound played when a Donation Train starts or when it's auto-broadcasted
    interval-sound
: ""
    ###Sound played when a goal is surpassed
    surpassed-sound
: ""
    ###Sound played when a train ends
    completed-sound
: ""
  formats
:
    amount
:
      interval
:
       - "&7&m                                                        "
        - "&a&lDONATION TRAIN"
        - "&7The server has made &f%amount%&7 with &f%time_remaining% &7remaining."
        - " "
        - "&eCurrent Goal&7
: &f%goal_display_name% &7 ( %goal_amount%)"
        - "&eNext Goal&7
: &f%next_goal_display_name% &7 ( %next_goal_amount%)"
        - "&7&oDonate at &f&oshop.example.com"
        - "&7&m                                                        "
      goal-surpassed
:
       - "&7&m                                                        "
        - "&a&lDONATION TRAIN"
        - "&7The server has made &f%amount%&7."
        - "&7All players will receive %goal_display_name% &7in &f%time_remaining%&7."
        - " "
        - "&eNext Goal&7
: &f%next_goal_display_name% &7 ( %next_goal_amount%)"
        - "&7&oDonate at &f&oshop.example.com"
        - "&7&m                                                        "
      goal-reached
:
       - "&7&m                                                        "
        - "&a&lDONATION TRAIN"
        - "&7The server made &f%amount%&7."
        - "&7All players have received %goal_display_name%&7!"
        - "&7&m                                                        "
    count
:
      interval
:
       - "&7&m                                                        "
        - "&a&lDONATION TRAIN"
        - "&7The server has gotten &f%amount% donation(s)&7 with &f%time_remaining% &7remaining."
        - " "
        - "&eCurrent Goal&7
: &f%goal_display_name% &7 ( %goal_amount%)"
        - "&eNext Goal&7
: &f%next_goal_display_name% &7 ( %next_goal_amount%)"
        - "&7&oDonate at &f&oshop.example.com"
        - "&7&m                                                        "
      goal-surpassed
:
       - "&7&m                                                        "
        - "&a&lDONATION TRAIN"
        - "&7The server has gotten &f%amount% donation(s)&7."
        - "&7All players will receive %goal_display_name% &7in &f%time_remaining%&7."
        - " "
        - "&eNext Goal&7
: &f%next_goal_display_name% &7 ( %next_goal_amount%)"
        - "&7&oDonate at &f&oshop.example.com"
        - "&7&m                                                        "
      goal-reached
:
       - "&7&m                                                        "
        - "&a&lDONATION TRAIN"
        - "&7The server got &f%amount% donation(s)&7."
        - "&7All players have received %goal_display_name%&7!"
        - "&7&m                                                        "
 

  • %required_amount% - the minimum amount required to start the Donation Train
  • %amount% - the current donated amount (%donationtrain_amount% for PlaceholderAPI)
  • %time_elapsed% - how long ago since the Donation Train started (%donationtrain_time_elapsed% for PlaceholderAPI)
  • %time_remaining% - how long time until the Donation Train ends (%donationtrain_time_remaining% for PlaceholderAPI)
  • %goal_display_name% - the display name of the current goal reached (%donationtrain_goal_displayname% for PlaceholderAPI)
  • %goal_amount% - the threshold of the current goal reached (%donationtrain_goal_amount% for PlaceholderAPI)
  • %next_goal_display_name% - the display name of the next goal to reach (%donationtrain_nextgoal_displayname% for PlaceholderAPI)
  • %next_goal_amount% - the threshold of the next goal to reach (%donationtrain_nextgoal_amount% for PlaceholderAPI)
  • %highest_goal_display_name% - the display name of the next highestto reach (%donationtrain_highestgoal_displayname% for PlaceholderAPI)
  • %highest_goal_amount% - the threshold of the highest goal to reach (%donationtrain_highestgoal_amount% for PlaceholderAPI)

Need help?
Dm me on Discord @hostadam.
Resource Information
Author:
----------
Total Downloads: 27
First Release: Aug 31, 2023
Last Update: Jun 5, 2025
Category: ---------------
All-Time Rating:
4 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings