
mCraft
Custom items and exact shaped or shapeless recipes for Paper, Purpur, and Folia.
mCraft
Custom items and exact shaped or shapeless recipes for Paper, Purpur, and Folia.
What it does
- Defines custom items with stable PDC IDs, versions, MiniMessage names/lore, enchantments, unbreakable state, and modern
item_modelcomponents. - Creates shaped and shapeless recipes with exact custom-item ingredients.
- Indexes recipe candidates by material instead of scanning every recipe on each grid update.
- Provides a localized in-game browser and virtual recipe editor. Editor previews never consume or duplicate player-owned items.
- Supports recipe permission, minimum-level, world allow-list, and automation conditions.
- Adds item tags and item flags, plus automatic version upgrades that preserve stack amount and durability.
- Exposes
MCraftAPIthrough Bukkit Services Manager, including tag queries and overflow-safe item grants.
mCraft uses modern item_model components but does not generate or distribute resource packs.
Requirements
- Java 25
- Paper, Purpur, or Folia 26.2
Install
- Put
mCraft-1.1.0.jarinplugins. - Start the server.
- Add item definitions under
plugins/mCraft/itemsor use the GUI recipe editor.
Items use stable mcraft:item_id and mcraft:item_version PDC tags. Increment an item's version after changing its definition; old copies upgrade on join, pickup, or hotbar selection without repairing their durability.
English is the default language. Set language: ru_RU in config.yml and run /mcraft reload to switch to Russian. Existing language files receive new default keys automatically.
Item example
id: ruby_sword
material: DIAMOND_SWORD
display-name: "<red>Ruby Sword"
lore:
- "<gray>Forged from ruby"
version: 2
item-model: "my_pack:ruby_sword"
unbreakable: false
tags: [weapon, ruby]
item-flags: [hide_attributes]
enchantments:
sharpness: 6
IDs must match a-z0-9{0,63}. Files with invalid IDs or malformed values are skipped with a focused warning instead of disabling the plugin.
Recipe conditions
The in-game editor creates shaped and shapeless recipes. Advanced conditions can be added to the generated recipe YAML:
conditions:
permission: "mcraft.craft.ruby_sword"
minimum-level: 15
worlds: [world, world_nether]
allow-automation: false
Custom ingredients are matched by stable PDC ID, not display name or base material. Vanilla ingredients deliberately reject mCraft custom items made from the same material.
Commands and permissions
/mcraft— GUI,mcraft.command.mcraft/mcraft item <id>— open an item directly/mcraft recipe <id>— open a recipe directly/mcraft give <id> [amount] [player]—mcraft.command.give/mcraft reload—mcraft.command.reloadmcraft.admingrants all permissions.
API
Obtain MCraftAPI from Bukkit's Services Manager. It supports item lookup, tag lookup, ID lookup, overflow-safe giving, and upgrading older item versions without direct storage access.
Telemetry and updates
mCraft uses anonymous bStats metrics. Disable them with metrics.enabled: false. No item contents or player identifiers are collected. Disable public version checks separately with updates.enabled: false.
Build
./gradlew clean build
Licensed under the MIT License.
Сервер для плагина mCraft - как у профи
Плагин mCraft создан для серверов: на своём сервере вы настраиваете его под себя и решаете, кому играть. Создать сервер с плагином mCraft для друзей можно за пару минут - BungeeHost всё уже подготовил.
