Skip to content

Commands

The primary command is /monthlycrates. It also has the aliases /mcrate and /mcrates.

Command Permission Description
/monthlycrates monthlycrates.command.list Shows the available crate IDs and the give-command syntax.
/monthlycrates list monthlycrates.command.list Lists the crate IDs loaded from the crate directory.
/monthlycrates give <player> <crate> [amount] monthlycrates.command.give Gives a player an authentic MonthlyCrates key. amount defaults to 1 and must be from 1 to 2304.
/monthlycrates reload monthlycrates.command.reload Re-reads every crate YAML file and reports the result.

Examples

/monthlycrates list
/monthlycrates give MrAsf example-lotus 1
/mcrate give MrAsf april 12
/mcrates reload

<crate> is the loaded crate ID, not necessarily its visible display name. In the bundled configuration, the crate file is example-lotus.yml, so the ID is example-lotus.

Configurable command messages

All command output is generated from plugins/MonthlyCrates/messages.yml. The file is backed by MessagesConfig and every key uses lower snake_case.

Path Type Placeholders
command_help List None
command_list_empty String None
command_list_entry String {crate}
command_list_separator String None
command_list_loaded String {crates}
command_give_amount_invalid String {max_amount}
command_give_unknown_crate String {crate}
command_give_success String {amount}, {crate}, {player}
command_reload_success String {amount}

Messages support & color codes. /monthlycrates reload refreshes messages.yml before it reports the reloaded crate count.

Console use

The give and reload commands can be used from the server console. The player target in give must be online, because the crate is immediately placed in that player's inventory or dropped at their location if necessary.

What reload changes

Reload first refreshes messages.yml, clears the in-memory crate registry, refreshes each still-present crate configuration with loadAllFields(), then rescans every YAML file from disk. Added, changed, deleted, and renamed crate files are reflected immediately. Existing keys retain their embedded monthly-crate-id value and will use the newly loaded definition for that ID. If that ID no longer exists after reload, those old keys cannot be opened until a crate with the same ID is restored.

Reload does not replace a full restart after a JAR update.