CrateDrops - Random crates spawn in the wild for players to find

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
}
1 Like

A new version has been released for CrateDrops, it is available for download here.


Initial Upload

Awesome plugin so far!

Just a couple suggestions.

A command to see what crates drops where in the world with location and
maybe different tiers of crates as well? (like common, rare, mythical?)

Awesome plugin so far!

A Question

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.

Any chance we can get a spawn radius limit along with maybe and random timer to drop the crates automatically?

A new version has been released for CrateDrops, it is available for download here.


1.1 Release notes:

  • /activecrates - A command to let players (or server staff) see where undiscovered crates are.
  • Crates will now persist over server restarts
  • API 7.3.0 update
1 Like

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!

1 Like

Can a crate still be accessed if it appeared in a players grief prevention claim?

1 Like

At the moment no but I’ll get working on that problem for the next update!

A new version has been released for CrateDrops, it is available for download here.


IMPORTANT NOTE: Please regenerate your config after this update.

1.3 Release notes:

  • Added min/max range for crate spawns in config

Don’t bother with grief prevention. The plugin is no longer supported on sponge anymore. Any support and stuff like that for gp is now closed off.

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)

Apparently my server was not 7.3.0… update to fix issue… My new issue is that I get a nullpoint exception whenever I run the command now… Ideas?

Hello, if thousands of boxes are generated in the server, will it cause the server to jam?

Does the plug-in support random items in the box?
Recommended features:

  1. Command to reload the configuration file
  2. Add or delete boxes in specified or all positions

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.

Hello, what are the permission nodes for this? I cant seem to find them posted anywhere.

The permission nodes are as follows:
dropcrate.command.activecrates
dropcrate.command.dropcrate

However, I’m actually in them middle of a rewrite atm so they are subject to change

/dropecrate 1 test says I have no crates in the config. How do I add crates to the config?