Cody M. Sommer

AKA Codisimus

PROGRAMMER | AUTHOR | REALLY NEAT GUY

Highly configurable loot for all

Main Page

Description

This plugin allows Players to receive loot (money/items/exp/etc...) from Chests, Mobs, and more. This is much like the dungeon Chests in the vanilla game except admins can set which items may appear as loot.

Why do I want this plugin?

PhatLoots is the perfect plugin for an RPG server. It allows you to modify which items are dropped by animals and monsters. It can even be used to have monsters spawn with armor and weapons. PhatLoots is also perfect for a minigames server. Chests can be placed around the world and be configured to spawn randomized loot which respawns after time. No matter the server style, PhatLoots can make it more exciting.

Features:

Supports nearly all Bukkit plugins
Supports all major Economies (Requires Vault)
Supports all major Permission Plugins
MythicDrops support for easily balancing MythicDrops loot as well as generating Gems and Unidentified Items
Citizens Support to control loot for NPCs
Votifier support to give a Player loot when they vote
MultiWorld support (Different loot per World)
Supports custom items made from any plugin that uses the Bukkit API (Plugins accessing NMS may cause conflicts)
Simple API for plugin compatibility
Fully configurable
Loot tables may be setup using a Chest GUI to reduce the amount of commands needed
Loots can include money, items, experience, running a command, or a combination of all of these
Chests can be a one time loot, hourly, daily, or reset after any amount of time down to the second
All messages seen by player's are customizable and can even be turned off
Each chest can have it's own loot tables to provide more random loot
Chests may have various reset times so they aren't all refilled at once
Optionally display to Players how much longer they must wait to retrieve more loot
Chest Loot
Any Block may act like a chest (EnderChest, FlowerPot, Crate (Piston), Bookshelf, CakeBlock, etc.)
Dispenser support (punch or activate the dispenser and it will dispense your loot)
Ninjaing loot can be prevented by providing each Player with their own share of loot (global vs. individual)
Chests can be linked to multiple loot tables at once
PhatLoots may be set to autoloot for quicker looting
Chests may be set to break once they are looted and then respawn when they have reset
Mob Loot
Have full control over what items are dropped by mobs
Allow mobs to spawn with weapons, armor, and even potion effects
Allow mobs to drop money
Modify how much experience mobs drop
Modify how often mobs drop loot
Optionally prevent mobs from dropping items unless they are killed by a Player
Mob Loot may replace or include the default Minecraft mob loot
Each type of mob may be linked to a different loot table
Baby Zombies, Zombie Villagers, and Normal Zombies may each have their own loot tables
Villagers may be linked to a loot table based on their Profession (e.g. Blacksmith, Priest, etc.)
EpicBoss mob support (requires EpicBossLoot addon)
Citizens support, create loot tables for NPCs
Command Loot
PhatLoots can be looted using the command /loot <PhatLoot Name>
A Player can be forced to loot a PhatLoot by using the command /loot give <Player> <PhatLoot Name> [Title]
Plugins which support executing a command can use the loot command to give Players loot
Loot Bags
Items can be linked to a PhatLoot
Loot bags can be right clicked while holding them to get the loot from inside of it
Loot bags are a one time use
Loot bags can even be added as loot themselves
Custom Loot
Commands, money, and exp may be added as loot
Loot collections allow for more control over how many of what type of items are looted
Supports items with custom names and descriptions (Such as items modified with the plugin Lores)
Auto Enchant weapons and armors
Auto name items based on their enchantments
Calculate item tiers based on enchantments
Add automatic damage estimations to items (e.g. +1-4 holy damage)
Items may have a random amount or durability

Addons:

Addons are separate jars which may be installed to enhance this plugin

  1. SwapLoot - Randomizes which PhatLoot a chest is linked to
  2. MonsterNearby - Prevents Players from looting chests when a monster is nearby
  3. PlayerNearby - Prevents chests from respawning when a Player is nearby
  4. EpicBossLoot - Allows bosses from EpicBoss to drop Mundane loot
  5. RandomizedLore - Generate random numbers within the lore of your loot
  6. AntiCamp - Prevent Players from camping chests until they cooldown

Note:

Use a plugin such as Lores with this plugin to create more interesting loot.

Commands

Commands may be typed in console or in game. When entering commands in console omit the slash. i.e. perm give Codisimus minecraft.command.tp

Notation Description
Text without brackets Items you must type as shown
<Text inside angle brackets> Placeholder for which you must supply a value
[Text inside square brackets] Optional items
Vertical bar (|) Separator for mutually exclusive items; choose one
Ellipsis (…) Items that can be repeated
  • /loot help - Display the PhatLoots Help Page
    /loot help <command> - Display a command's usage
    /loot help time - Displays the usage details of the time command
  • /loot make <Name> - Create a PhatLoot with the given name
    /loot make Epic - Creates a new PhatLoot of the name Epic
    PhatLoot names are case sensitive and cannot include spaces (use underscore instead)
    /loot link <Name> - Link the target Chest with a PhatLoot
    /loot link Epic - Links the Chest that you are currently looking at to the Epic PhatLoot
    Chest may also refer to a dispenser or any other block supported in the config file
    /loot link hand <Name> - Link the item in hand with a PhatLoot
    /loot link hand Epic - Links the item that you are currently holding to the Epic PhatLoot
    The linked item is known as a Loot Bag
    Only that specific itemstack is linked and not any other items of the same type
    /loot rename <PhatLoot> <Collection> <NewName> - Rename a PhatLoot Collection
    /loot rename Epic Weapons Melee_Weapons - Renames the Weapons Loot Collection of to Melee_Weapons for the Epic PhatLoot
    This command only renames Loot Collections, A PhatLoot can be renamed by renaming the YAML save file
    /loot unlink [Name] - Unlink the target Block from a PhatLoot
    /loot unlink - Unlinks the Chest that you are currently looking at from all PhatLoots
    /loot unlink Epic - Removes the Epic PhatLoot as linked with the Chest that you are currently looking at (all other linked PhatLoots remain present)
    /loot delete <Name> - Delete a PhatLoot
    /loot delete Epic - Deletes the PhatLoot which is named Epic
    Deleting a PhatLoot also unlinks it from all Chests deletes all Loot Collections associated with it
  • If Name is not specified then all PhatLoots that are linked to the target Block will be affected. Amount may be a number (100) or range (100-500)

    /loot time <Name> <Days> <Hrs> <Mins> <Secs> - Set the cooldown time for the specified PhatLoot
    /loot time 0 1 30 0 - Sets the cooldown time to 1 hour and 30 minutes
    Once looted, Players must wait this amount of time to receive more loot from the same Chest
    /loot time <Name> never - Set the PhatLoot to only be lootable once per chest
    /loot time never - Sets the PhatLoot to never cooldown
    Once looted, Players will never be able to receive more loot from the same Chest
    /loot global <Name> <true|false> - Configure cooldown type of the specified PhatLoot
    /loot global true - Sets the PhatLoot to a global cooldown (early bird gets the worm)
    /loot global false - Sets the PhatLoot to an individual cooldown (worms for everyone)
    If you want every Player to share the loot within a Chest then set global to true. If you want each Player to have their own loot then set global to false
    /loot autoloot <Name> <true|false> - Configure whether Players will need to manually remove items from chests of the specified PhatLoot
    /loot autoloot true - Sets the PhatLoot to have loot items automatically added to the Player's inventory
    /loot autoloot false - Sets the PhatLoot to require Players to manually take items from the PhatLoot chest
    When autolooted, items which don't fit in the Player's inventory will stay in the chest (or will spawn on the ground if there is no chest)
    The chest inventory view will not be shown if all items were autolooted
    /loot round <Name> <true|false> - Configure whether the specified PhatLoot will round down cooldown times
    /loot round true - Sets the PhatLoot to round down cooldown times to the closest value
    /loot round false - Sets the PhatLoot to take the entire cooldown time to reset
    Setting round to true is used to create hourly or daily loots
    /loot cost <Name> <Amount> - Set the cost of looting the specified PhatLoot
    /loot cost 10 - Players will be charged $10 whenever they loot a chest of the specified PhatLoot
    /loot money 0-3 - Players will be charged a random amount of money between $0 and $3 (inclusive) whenever they loot the specified PhatLoot
    Players are not charged if the chest is currently on cooldown
    If the Player cannot afford the payment then they do not receive loot
    This feature requires an economy plugin as well as Vault
    /loot money <Name> <Amount> - Set the amount of money to be gained upon looting the specified PhatLoot
    /loot money 50 - Players will be given $50 whenever they loot the specified PhatLoot
    /loot money 10-100 - Players will be given a random amount of money between $10 and $100 (inclusive) whenever they loot the specified PhatLoot
    Players are not given money if the chest is currently on cooldown
    This feature requires an economy plugin as well as Vault
    /loot exp <Name> <Amount> - Set the amount of experience to be gained upon looting the specified PhatLoot
    /loot exp 1000 - Players will be given 1000 experience whenever they loot the specified PhatLoot
    /loot exp 100-500 - Players will be given a random amount of experience between 100 and 500 (inclusive) whenever they loot the specified PhatLoot
    Players are not given experience if the chest is currently on cooldown
  • /loot gui [Name] - Opens the info GUI of the specified PhatLoot
    If Name is not specified then all PhatLoots that are linked to the target Block will be affected
    /loot reset [Name] - Resets the loot history for the specified PhatLoot
    /loot reset Epic - Resets all chests of the Epic PhatLoot
    /loot reset - Resets the target PhatLoot chest
    /loot reset all - Resets all PhatLoot chests
    Resetting a PhatLoot chest will cancel the cooldown allowing it to be looted immediately
    /loot clean [Name] - Cleans the loot history for the specified PhatLoot
    /loot reset Epic - Cleans all chests of the Epic PhatLoot
    /loot reset - Cleans the target PhatLoot chest
    /loot reset all - Cleans all PhatLoot chests
    Cleaning a PhatLoot chest will remove all outdated data which is no longer relevant
    PhatLoot chests are automattically cleaned before being saved
  • /loot list - Lists all existing PhatLoots
    /loot give <Player> <PhatLoot> [Title] - Forces a Play to loot the specified PhatLoot
    If Title is specified then the chest GUI will be renamed to the title provided
    /loot rl - Reloads the PhatLoots plugin, configuration file, and add-ons
  • /loot <add|remove> <Item|ID|hand> [Parameter]...: Add/Remove an item as loot
    /loot add hand #1-16 %32 - 32% of the time, 1 to 16 of the item you are holding will be generated
    /loot add bow earrow_fire(2) earrow_infinite %5 - 5% of the time, a bow with level 2 Flame and Infinity will be generated
    The item may be referenced by it's name, ID, or hand to indicated the item you are holding
    /loot <add|remove> coll <Name> [Parameter]...: Add/Remove a collection as loot
    /loot add coll Weapon %25 #2 - 25% of the time, 2 loot from the Weapon collection will be generated
    /loot add coll Armor %10 #0 - 10% of the time, each loot within the Armor collection will be rolled for
    /loot <add|remove> cmd [Parameter]... /<Command>: Add/Remove a command which will be executed if generated
    /loot add cmd /say <player> has found a chest! - Announces the message Codisimus has found a chest! if Codisimus loots the PhatLoot
    /loot <add|remove> msg [Parameter]... -<Message>: Add/Remove a message which will be sent to the looter if generated
    /loot add msg cWeapon %50 -§5Here, take this weapon with you in your travels! - Assumming the Weapon collection is set to roll for each item individually, the message §5Here, take this weapon with you in your travels! will be shown to the looter 50% of the time that the Weapon collection is generated

    Each Parameter begins with a single character id as follows:

    p: The name of the PhatLoot to modify
    pEpic - Indicates the Epic PhatLoot
    If the PhatLoot parameter is not specified then all PhatLoots linked to the target Block will be affected
    %: The probability (or chance) of spawning the loot
    %50 - Indicates the loot will be spawned 50% (half) of the time
    %0.01 - Indicates the loot will be spawned about once in every 10,000 loots
    If the probability parameter is not specified then the loot will be spawned 100% (all) of the time
    c: The id of the loot collection to specify
    cWeapons - Indicates the loot will be modified within the Weapons collection
    cFood - Indicates the loot will be modified within the Food collection
    If the collection parameter is not specified then the loot will be modified in the top level of the PhatLoot, outside of all collections
    #: The amount of the item to be spawned
    #10 - Indicates that 10 of the loot will be spawned
    #1-64 - Indicates that the amount of loot which will be spawned will fall between 1 and 64 (inclusive)
    For collections, this number indicates the amount of loot which will be spawned from the collection
    #0 - When the loot type is coll, this indicates that each loot within a collection will be rolled for individually
    #0-3 - When the loot type is coll, this indicates that each a maximum of 3 loot will be spawned from the collection
    If the amount parameter is not specified then the amount of loot spawned will be 1 (or the amount you are holding if using the hand command
    d: The data or durability value of the item
    d1 - Indicates the data value of the item
    • If the item is Sand, it will be Red Sand
    • If the item is Golden Apple then it will be Enchanted Golden Apple
    • If the item is Flower, it will be Blue Orchid
    • If the item is armor or a tool, it will be have 1 use remaining
    t: Display the calculated Tier of the item
    t - Calculates and displays the tier of the item when generated based on the material and enchantments
    l: Display randomized lore on the item
    l - Displays a custom name as well as lore for the item when generated based on the material and enchantments
    e: Add enchantments to the item
    earrow_infinite - Enchants the item (bow) to provide unlimited arrows
    eprotection_fire(3) - Enchants the item to provide protection from fire at level 3
    eauto - Enchants the item with random applicable enchantments at varying levels
    auto enchanting has the possibility of generating items with no enchantments

Permissions

Permission nodes may be given to Players or permission groups using any permissions plugin such as CodsPerms.

phatloots.loot.* - Needed to receive loots from all restricted PhatLoots
phatloots.loot.EpicLoot - Needed to receive loot from the PhatLoot named EpicLoot
  • Any PhatLoot name may be substituted in place of EpicLoot
  • This permission node is only required for PhatLoots which are set as restricted within the config file
phatloots.moneyfrommobs - Needed to receive money from mobs
This permission node is set to true by default
phatloots.commandloot - Needed to receive loots through command
phatloots.rl - Needed to reload the PhatLoots plugin
Explicitly allows for use of the /loot rl command
phatloots.reset - Needed to reset the list of users who looted PhatLoots
Explicitly allows for use of the /loot reset command
phatloots.clean - Needed to remove loot times that are no longer relevant
Explicitly allows for use of the /loot clean command
phatloots.list - Needed to list all current PhatLoots
Explicitly allows for use of the /loot list command
phatloots.info - Needed to see loot information of a given PhatLoot and modify it with the loot gui
Explicitly allows for use of the /loot gui command
phatloots.give - Needed to force a Player to loot a PhatLoot
Explicitly allows for use of the /loot give command
phatloots.admin - Needed to break linked Blocks
Broken blocks will be automatically unlinked
phatloots.make - Needed to create a new PhatLoot
Explicitly allows for use of the /loot make command
phatloots.delete - Needed to delete a PhatLoot
Explicitly allows for use of the /loot delete command
phatloots.link - Needed to link a PhatLoot to a chest
Explicitly allows for use of the /loot link command
phatloots.unlink - Needed to unlink a PhatLoot from a chest
Explicitly allows for use of the /loot unlink command
phatloots.manage - Needed to add or remove loot for a PhatLoot
Explicitly allows for use of the /loot add command
Explicitly allows for use of the /loot remove command
phatloots.time - Needed to set the reset time of a PhatLoot
Explicitly allows for use of the /loot time command
phatloots.global - Needed to set whether a PhatLoot has a global cooldown
Explicitly allows for use of the /loot global command
phatloots.autoloot - Needed to set whether a PhatLoot is autolooted
Explicitly allows for use of the /loot autoloot command
phatloots.round - Needed to set whether a PhatLoot's reset time is rounded down
Explicitly allows for use of the /loot round command
phatloots.cost - Needed to set the cost to loot a PhatLoot
Explicitly allows for use of the /loot cost command
phatloots.money - Needed to set how much money is looted from a PhatLoot
Explicitly allows for use of the /loot money command
phatloots.exp - Needed to set how much experience is looted from a PhatLoot
Explicitly allows for use of the /loot exp command
phatloots.create - Parent node for the following permission nodes:
  1. phatloots.make: true
  2. phatloots.delete: true
  3. phatloots.link: true
  4. phatloots.unlink: true
  5. phatloots.manage: true
  6. phatloots.time: true
  7. phatloots.global: true
  8. phatloots.autoloot: true
  9. phatloots.round: true
  10. phatloots.cost: true
  11. phatloots.money: true
  12. phatloots.exp: true

Use Cases

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

  • Description to come...

Tutorials

Request a tutorial
  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

  • Tutorial to come...

FAQ

Ask a question
  • Loot is a gaming term which refers to the items/gear that can be acquired throughout a game. It is very common in RPGs. Loot can refer to items, experience, or currency. In PhatLoots, commands and messages can also be loot. Loot is often dropped by killing mobs and can be found within chests. In Minecraft, you can find loot in dungeon chests and when you kill a mob. PhatLoots allows for the configuration of loot for both mobs and chests. It also allows for creating loot for other things such as NPCs, fishing, and voting.

  • Another name for a PhatLoot is a loot table. This is the same idea as the upcoming loot table feature in vanilla Minecraft. A loot table essentially defines which items might appear as loot. The whole point of loot is that you never know what you will get. A loot table defines how often certain loot will be handed out. Rare loot won't be generated as often as common loot. A PhatLoot is linked to chests, mobs, or something else. The PhatLoot also defines who has access to the loot and when which is determined by the reset type (global or individual) and reset time.

  • PhatLoots supports custom items that are generated by other plugins. As long as the plugin follows the rules of the Bukkit/Spigot API, then PhatLoots will be able to store and generate these items. You can add these custom items as loot by using the /loot add hand [Parameter]... command while holding the item. You can also add the item by using the /loot gui command. Some plugins have special items that are randomly generated and therefore different each time. An example of this is MythicDrops. These plugins must be explicitly supported. PhatLoots supports MythicDrops items and the commands/GUI buttons become available if the MythicDrops plugin is detected. You can read more about this in the Tutorials section.

  • All minigames are handled differently. If the minigame world is in its own World, then you can use the autolink setting in the config file. You set the name of the world along with the type of block to link and the name of the PhatLoot to link the block to. This will link all blocks of that type to the specified PhatLoot. If the minigame is in an arena within a world, you can manually link all of the chests or add them to the PhatLoot's YAML save file. If you do use PhatLoots for a minigame, be sure to reset the loot history at the beginning of the match.

  • Currently, you cannot automattically link dungeon chests to PhatLoots. There is no efficient way to find the chests scattered throughout the world. And even if there was, we cannot reliably determine if the chest was generated for a dungeon. You would have to use some sort of x-ray tool in order to manually find all of the chests and link them yourself.

  • A Loot Collection is a type of Loot that can be placed inside of a PhatLoot. However, the Loot Collection isn't exactly given to the looting Player. The Loot Collection will instead give the Player some of the Loot which is inside of it. Collections are typically used to group similar items together or to limit the amount of items looted. For some specific examples, read the next few FAQs. You can read more about Loot Collections in the Tutorials section.

  • You can do this by using a Loot Collection as described above. For example, if you wish for a PhatLoot to only give 5 items then you should put all of the items within a collection and set the collection amount to 5.

  • Yes you can, this is very similar to the previous question and is also accomplished by using a Loot Collection. If you want the PhatLoot to limit the amount of items given to 5 then you can put the items inside of a collection and then set the amount of the collection to a range. i.e. 1-5.

  • Once again, this behavior is accomplished using a Loot Collection. Let's assume that you want a PhatLoot to give a weapon as loot. The weapon will either be a sword or a bow. To do this we will first create a Loot Collection within the PhatLoot. We can name the collection Weapon so that we will understand what it is for the next time we see it. We will set the probability of the collection 100% unless you want a weapon to be given only some of the time. The amount of the collection will be 1 to specify that only 1 item will be produced from the collection. Inside of the collection we will add a sword and a bow. Looting the PhatLoot should result in either a sword or a bow every time.

  • There are a few reasons why this could happen but they usually have to do with Loot Collections. Loot with probability 100% that is within a collection will not always be spawned. The simplest cause of this is the probability of the collection itself. If the collection has a probabilty of 50% then you will only ever see the Loot within it half of the time. The rest of the causes have to do with the collection amount. If the amount of a collection is set to -1, then the 100% Loots will be spawned everytime that the collection is looted. However, if the amount is anything else, the probability of the Loot inside of the collection acts more like a weight. For example, if you have 2 items each with 100% probability but the collection amount is set to 1 then both items cannot be spawned. because of the collection limiting to a single Loot. If your loot is not in a collection then it may have a range for the amount. If the lower bound of the range is 0 then there is a possibility of 0 of that Loot being spawned which would result as nothing for the looter.

  • This can be done by using the /loot reset never command.

  • Each PhatLoot contains a reset time. The reset time determines how long until a Player can receive additional loot from a chest/mob/etc. This is also known as the cooldown time or period. The reset time is broken down into the amount of days, hours, minutes, and seconds and are entered in that order. The loot GUI only allows you to change certain values but the /loot time command allows setting the reset time down to the second. Assuming the following command has been executed: /loot time 0 0 5 30, When a Player loots a linked chest, they will have to wait 5 minutes and 30 seconds until they can loot the chest again. They will be able to open the chest to see their old loot but new loot will not spawn until that cooldown period has expired.

  • You can prevent Players from stealing loot by configuring the reset type and setting global to false.

  • A global reset type refers to the sharing of loot. If the PhatLoot is set to global, all Players will share the loot of a chest. If global is set to false, then each individual Player will have their own copy of the loot. Each Player's loot will likely differ. Multiple Players could then be looting a chest at the same time and be presented with different loot that they can add to their inventory. The reset time will not apply between Players. Meaning, if the reset time for a chest is 1 day and the reset type is individual, if Steve loots the chest, Bob will be able to loot it minutes later and need not wait for a day.

  • The round down setting for a PhatLoot is used to create daily, or hourly loots. This option technically rounds down the loot history time to the nearest unit of measurement. For example, let's imagine that there is a chest with a reset time of one hour and a round down is set to true. If Steve loots the chest at 9:26pm and 18 seconds then the loot history would not store that exact time. Instead, the second and minute values will be rounded down to 0 each. The hour will not be rounded down because the reset time includes a value in the hours place. The loot time stored will be 9:00 and 0 seconds rather than 9:26 and 18 seconds. Therefore, Steve will be able to loot the chest again at 10:00 which is an hour after 9:00 even though it is actually less than 34 minutes later. This setting provides to option to give loot each hour, day, week, or more.

  • A history of loot times is stored by PhatLoots. These loot times ensure that a Player does not receive additional loot from a chest until after the cooldown period. The /loot reset command clears the loot history. Executing the command allows all Players to receive more loot from the chest. The /loot clean command clears irrelevant loot history. Loot history is irrelevant if it is already past the cooldown period. Executing the command will not effect gameplay and only remove extra data which is no longer needed. Loot history is automatically cleaned before data is saved. The only reason you will want to use the clean command is if your server does not shut down for long periods of time and You have turned off the autosave feature in PhatLoots.

  • The loot GUI is a chest interface that is used to easily modify a PhatLoot. You can drag, drop, and click to configure the the loot table. This is much quicker and more user friendly than typing in commands. The loot GUI is the recommended method of setting up loot tables and managing the loot within them. The corresponding commands are intended to be a backup solution.

    The loot GUI can be opened using the /loot gui command.

  • PhatLoots has a lot of features. Most of these features you will never use. However, this should not deter you from using the plugin. All of the features that would have a performance impact on the server are able to be turned off. The top of the config file has the option to turn these features on or off. If you are concerned with performance, you should go through these settings and set each unused feature to false. I dare you to compare timing reports of this plugin against others on your server. If PhatLoots is hogging any resources then let me know and I will fix it.

  • An addon is a JAR file that contains an additional PhatLoots feature. This keeps the configuration settings seperate and easier to manage. Instead of turn a feature on by setting a value to true in config.yml, you turn the feature on by installing the addon. The concept of addons also allows other developers to add features to Phatloots without the need to modify the plugins code.