This is a discussion topic for the Ore project, CrateDrops. View the full project on Ore for downloads and more information.
CrateDrops
This plugin is designed for server administrators to spawn in random crates in a configurable world. The crates will spawn in somewhere inside of that world’s border on the surface. You can specify the quantity of crates and what kit will be inside of it with the command /dropcrate.
Commands:
/activecrates will return a list of crates that are active in the world. Players with the permission node dropcrate.admin.warptext will have the ability to click on each of the crates in the list to teleport directly to it.
/clearactivecrates will expire all the crates that are currently in the world.
/dropcrate [amount] [crate name] Drops crates randomly in the wild. The default amount of crates is 1 and the default crate is randomly selected.
Config:
Announcement when the crate is dropped and picked up.
World crate will spawn in.
Kits that will be randomly selected when dropping the crate.
Percent chance that a crate will be chosen.
Custom drop messages per individual crate
Automatic timer for dropping new crates. Can be random or set kit.
Spawn radius protection from crates dropping
Buffer: Number of crates that are allowed to be present at the same time
Restriction radius for crate dropping
Dependencies:
Nucleus
Permission Nodes:
dropcrate.command.activecrates
dropcrate.command.dropcrate
dropcrate.command.clearactivecrates
dropcrate.admin.debug
dropcrate.admin.warptext
#Example Crate Configuration
mycratename {
# Nucleus kit name for the command to give the user
kit-name="mykit"
# Chance the crate will spawn, calculated by chance / (sum of chances)
chance=50
# Custom message when this crate spawn?
# NOTE: using {CRATE} will take the name of the node, replace the dashes with spaces, and capitalize each word
custom-message="&a[CrateDrops] &eA &6{CRATE} &eCrate has arrived at &k||&e[&c{X}&e, &c{Y}&e, &c{Z}&e]&k||"
broadcast-custom=true
}
You could make sure that when a server closes and opens the CrateDrops they do not remain as normal chests that are registered even as CrateDrops after the server has closed and opened.
A new version has been released for CrateDrops, it is available for download here.
IMPORTANT NOTE: Please regenerate your config after this update as I’ve rewritten the structure.
1.2 Release notes:
Crates are now organized into tiers
Crates are now configured to drop by set chances
Individual crates can have their own broadcast message
Timed crate drops are now possible
Added spawn protection radius
Added buffer for crates to expire
Thank you all for your suggestions! I’ve implemented everything people have been asking for so if you want to see an idea in this plugin leave a comment!
Does anyone know how to properly use this plugin? I only changed the test kit and the world and get some bizarre error every time I try to summon the test crate (/dropcrate 1 test). The error is: ninja.leaping.configurate.ConfigurationNode.isEmpty()Z.
In my many years of admining servers, I have never seen this error. Any help or ideas would be appreciated!
(CrateDrops version 1.2, SpongeForge 1.12.2-2838-7.3.0, and Nucleus-1.14.5-S7.1-MC1.12.2)
If the previous information is anything to go off of, I would wager that you either deleted part of the config that needs to exist or you modified the file in an incorrect way. Try deleting the config and regenerating it.
You can test out your desired crate output to see if it will lag your server. It depends on the quantity of crates spawned at a single time and performance power of the computer that is running the command.
You can use the builtin sponge plugin reload command to reload the config from in game.
As for deleting crates in specific locations, I think that’s a good idea. I’ll make a note of that when I plan my next update.