LootManager
[General]
This plugin currently has 2 key features: handling mob loot and handling chest/inventory loot with advanced options and timer settings. I will only give a very brief description of the features in this section. Loot can consist of items and money, and is defined trough configs that allow a lot of customization. For items, this includes but is not limited to: custom item names, custom lore, enchantments and randomized quantity). Once loot is configured it can be used for mob drops, dungeon loot, ... As extra features, this plugin can also be used to fill chests once for drop parties, and to keep chests stocked forever. All messages that are sent to players can be configured in a seperate config.
Important:
- If you want to use the money features of this plugin, you need Vault (and an enconomy plugin that supports Vault).
- This plugin was previously known as ChestFiller. Because so many things have changed (config files, database structure) the old ChestFiller configs and database are incompatible. You have to relink all your chests if you want to upgrade.
Some eye candy:
Latest noteworthy additions:
- Money loot is now possible (requires vault).
- Mob loot can now be configured.
- New messages to provide feedback to the player upon loot attempts.
- All interaction with the player can now be configured.
Made a youtube video reviewing this plugin? Send me a pm. If i like it, i'll add it in the description.
[Configuration]
This section describes in detail, all that can be configured in the configs. If you run this plugin for the first time, a map named resources will be created. Inside this map you should find seperate maps for chest configs and loot configs, each containing a default example file. If you want to quickly test the plugin, take a look at the Guide section and link the default file ingame.
config.yml
- auto_update: When set to true, the plugin will connect to curse upon server startups to possibly download newer versions of this plugin.
- mob_drops
- enabled: enable or disable this feature. Default is disabled.
- links:
- mobname:
- config: specify the loot config to be used for drops.
- clear_drops: Default is false
- ...
- mobname:
- worlds: May be used to specify mob drops for specific worlds. This overrides global settings.
- wordname:
- links: Same as above
- ...
- wordname:
Loot config:
- items:
- name: [Optional] The in-game name for this item
- lore: [Optional] The lore for this item.
- id: The minecraft id of the item to spawn.
- dmg: [Optional] The damage to be applied to this item. Can also be used for special items such as a creeper eg (380:50 -> Put the 50 in dmg). The default value is 0.
- dmg_randomness: [Optional] The actual dmg is somewhere between dmg-randomness and dmg+randomness. The default value is 0.
- chance: Determines the chance for this item to spawn.
- amount: Determines the amount of this item to spawn.
- amount_randomness: [Optional] The actual amount of items is somwhere between amount - amount_randomness and amount + amount_randomness. Default value is 0.
- enchantments: [Optional] A list of enchantments that should be added to the item (Enchantments that may not be possible in standard minecraft). Take a look at the default file for the required names and values. The default is no enchantments.
- money:
- amount: The amount of money to give to a player upon looting.
- randomness: The actual amount given to the player is somewhere between amount - randomness and amount + randomness.
Chest Config:
- time: The time (in the format HH:MM:SS) that should pass to fill the chest.
- randomness: [Optional] (in the format HH:MM:SS) The actual trigger time is somewhere between time-randomness and time+randomness. In the default case, there is no randomness.
- empty_on_trigger: [Optional] Indicates whether the chest should be emptied before being filled. The default value is true.
- message: [Optional] Message that should be broadcasted when the chest is filled. The default value is "" (no message).
- players_required: [Optional] Amount of players that need to be online in order for the chest to be filled. The default value is 0.
- trigger_on_looted: [Optional] If set to true, the timer will only trigger when someone accesses the loot. The default value is false.
- Itemsets: A list of different Itemsets (names) to use for this config.
- items: Exactly the same as in loot configs (see above).
- money: Exactly the same as in loot configs (see above).
[Commands]
- /lm help: Show the list of commands and their description ingame.
- /lm configlist: Show a list of config names that are available for linking.
- /lm reload: Reload changes to config files + detect new config files.
- /lm link config: Link the inventory block you are looking at with the given config.
- /lm fill [chestconfig/lootconfig] config: Fill the inventory block you are looking at with the items and chances specified in the config file (Useful for drop parties). If both a loot config and a chest config with the same name exist, the optional parameter is mandatory.
- /lm autorefill : Link the inventory block you are looking at to autorefill mode. No need to specify a config, this command uses the items currently in the chest.
- /lm remove: Remove any links/autorefills from the inventory block you are looking at.
[permissions]
If you want to give users acces to all commands (except for the help command, which should always be available) use lootmanager.*. A server op automatically gains access to all commands.
For finer control use the following permissions:
- lootmanager.help
- lootmanager.link
- lootmanager.fill
- lootmanager.remove
- lootmanager.autorefill
- lootmanager.configlist
- lootmanager.reload
[Guide]
The parameters of config files are explained above. Hava a look at the default configs for a concrete example. This guide explains how to link chest configs ingame and how to fill a chest once with the items in either a chest config or a loot config. The configuration of the language.yml config has been omited because it is straightforward.
Full linking procedure:
First check if the chest config you want to link is available using /lm configlist. Make sure to check your console for possible errors in the config file. If there are errors fix them. After fixing the errors a simple /lm reload should do the trick.
In order to link a config to a chest, type the following command ingame: /lm link configname while looking at a chest/furnace/whathever block that holds an inventory. You should receive a message that the linking process has succeeded.
Filling a chest once
Same procedure as the linking process above, except that you should now use /lm fill config.
Making a chest that's always filled
Simply use /lm link autorefill while looking at the chest you want to maintain stocked.
[Work in progress / Planned]
- Individual chest loot! (25/100)
- Add a particle effect option to chest configs, that is played above the chest to indicate that it hasn't been looted yet (0/100)
- Allow customization of loot standardly generated in dungeons(0/100)
- Provide a more convenient/flexible way to maintain loot (Ingame with GUI?) + allow any current and future item (tipped arrows) to be added.(0/100) - should have priority if i work on this again.
[Addons]
This plugin uses an update-checker (made by Gravity) that makes a connection to Curse to inform you of plugin updates. You can disable this feature in the config.yml file in this plugin's data folder.
This plugin uses PluginMetrics, a plugin to that sends data to mcstats.org to give feedback on usage. If you wish to disable this feature, please set 'opt-out' to 'true' in the 'config.yml' file in the PluginMetrics folder.
[Donating]
If you are feeling extremely generous, you can reward me for my work on this (and possibly future) plugins by donating.
[Donator list (paypal donations)]
- jonny999999 : 7,50 euros
Nice plugin :) Realy like it!
An idea: random location after amount of time, specific place or random place inside a region.
lik CoD
@jonny999999
Hi, glad you like my plugin ;)
It is indeed only supposed to start one timer at the first event. Thanks for reporting this, i'll try to fix it as soon as possible.
Hey verry nice plugin! works fine with 1.9 for me :)
i only have one problem: Lets say i have multiple items in a chest that refills 60 seconds after it was looted, i set "trigger_on_looted: true" but when i take items out slowly or put something in: several timers start and the chest gets filled over and over again (faster than in 20 seconds)
==> So players get infinite amount of items in seconds if they take the items out of the chest all the time!
If i set "empty_on_trigger: false" for testing the chest gets completely filled up^^
Is there a way so that only 1 timer starts at the first event?
That would be verry nice!
@Capri205
I just tested my plugin on a 1.9 version. Most of the stuff seems to work, the only thing i have encountered so far is that item eggs work differently now (I will have to look into this and probably provide a new way for supporting this).
@Capri205
I'll look into updating this for 1.9 one of the following days.
Do you have plans for a 1.9 version? I have upgraded our Bungee network but one of our dungeons servers relies on this plugin.
Thanks
I tried erasing all the chests and putting only one chest with the default.yml and with the default "Config.yml"
http://pastebin.com/0xMXeqCE
http://pastebin.com/MzVykTVN
but the auto-filling after the restart doesn't work yet !!!
@afronights
Does your config work fine before restarting? Else it's likely an issue with the config.
@afronights
A last thing !!! In effect after restarted the server if i use the command to link the chest, i got a message that says "This block is already linked to a config" but after, the filling cycle, doesn't start (I set 60 seconds for every fill). !!!!
@_fantasm0_
I opened "database.db" and effectively in the "Links" table there are all my chests, but for some reason these don't wont connect at startup !!!!
Ok a command for remove autofill is appreciated, but for me first is more important fix the auto-start-linking !
Thank you for your patience !!!!
@afronights
Links should be saved in the database, so that they are maintained on server restarts and crashes. For my own testing this seemed to work fine. Are there any others that experience this issue?
You can remove the autorefill by removing and replacing the chest, would you like a command, so that you can remove links and autorefills without removing the chest?
Nice job fantasm !
All my console errors are disappeared !!!
But if i want to automate the linking process at the server starts ? (every time i have to manually link all the chest in the world !!! :-( )
There is a command to deactivate the autorefill ?
Thank you Afronights.
@Lyosha12
Do you mean linking a config to a worldguard zone, so that each chest in the zone is linked? Interesting idea.
Will it be possible to divide the chests in the zones - that each had its own set of objects? Using WorldGuard or embedded coordinates.
@Capri205
The next version is going to be released within the next hours. I have not looked into a 1.9 version, might do this later if there is a lot of demand. I guess most people are still using 1.8 for now?
I guess I have to ask the inevitable... do we get a 1.9 version before the rewrite? Right now ChestFiller is generating a lot of errors due to deprecated calls, although a temporary work around might work using the special source command:
java -jar BuildData/bin/SpecialSource-2.jar map -m CraftBukkit/deprecation-mappings.csrg -i Chestfllter.jar -o ChestFiller-fixed.jar
F45
Ok Thank you for the interest, I wait for the update !!!!
@afronights
I will be bringing out a massive update soon (Need to fix some remaining bugs). I have overhauled the storage system of this plugin, which is the relevant part for your error. This will likely be fixed in the update. If you still have encounter this error after this new update, please send me a pm.
PS: A lot of stuff has changed in the plugin, so you might have to change some things in your config files after the update.
This errors occur only at startup, if I link manually the chest with "/cf link kitpvp1" the chests starts normally !!!!
This is the console errors:
09.02 16:46:06 [Server] INFO at net.minecraft.server.v1_8_R3.MinecraftServer.s(MinecraftServer.java:414) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-5f38d38-18fbb24]
09.02 16:46:06 [Server] INFO at org.bukkit.craftbukkit.v1_8_R3.CraftServer. enablePlugins(CraftServer.java:317) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-5f38d38-18fbb24]
09.02 16:46:06 [Server] INFO at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugin (CraftServer.java:357) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-5f38d38-18fbb24]
09.02 16:46:06 [Server] INFO at org.bukkit.plugin.SimplePluginManager.enablePlugin (SimplePluginManager.java:405) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-5f38d38-18fbb24]
09.02 16:46:06 [Server] INFO at us.Myles.PWP.TransparentListeners. PerWorldPluginLoader.enablePlugin( PerWorldPluginLoader.java:145) [PerWorldPlugins_1.8.8_Java_7.jar:?]
09.02 16:46:06 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader. enablePlugin(JavaPluginLoader.java:340) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-5f38d38-18fbb24]
09.02 16:46:06 [Server] INFO at org.bukkit.plugin.java.JavaPlugin.setEnabled( JavaPlugin.java:321) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-5f38d38-18fbb24]
09.02 16:46:06 [Server] INFO at miscellaneous.ChestFiller.onEnable(ChestFiller.java:126) [?:?]
09.02 16:46:06 [Server] INFO at miscellaneous.ChestFiller.loadLinks(ChestFiller.java:171) [?:?]
09.02 16:46:06 [Server] INFO java.lang.NullPointerException
09.02 16:46:06 [Server] ERROR Error occurred while enabling ChestFiller v1.5 (Is it up to date?)
09.02 16:46:06 [Server] INFO Enabling ChestFiller v1.5
Config.yml : Link Removed: http://www.mediafire.com/download/dmamjf6zpfq5es7/config.yml
File Kit: Link Removed: http://www.mediafire.com/download/0i3ll924y4et015/kitpvp1.yml
I hope help you to find the problem.