Installation
1. Pre-flight
Plugin | Required | Notes |
|---|---|---|
AstralCore | Yes | Must load before AstralItems. Provides menus, registries, item wrappers. |
AstralSync | Yes |
|
CraftEngine | Yes | The plugin registers an item stack supplier and hooks |
PacketEvents | Yes | Used by |
Java 25 | Yes | The shaded JAR is compiled to |
2. Drop the JAR
Place AstralItems-<version>.jar in your server's plugins/ directory alongside AstralCore and CraftEngine.
3. First start
On first start the plugin creates:
4. Add your content
Rarities go in
plugins/AstralItems/rarities/— see Rarity YAML Reference.Blueprints go in
plugins/AstralItems/blueprints/— see Blueprint YAML Reference. Sub-folders are scanned recursively.Menus go in
plugins/AstralItems/menus/— standard AstralCore menus (see Menu System). The built-initems-raritiesmenu is the entry point opened by/items; supply your ownitems-itemsmenu with%parameters_rarity_*%placeholders to render the per-rarity blueprint list.
Reload at runtime with /items reload — no restart required.
5. Hand out items
Items are exposed through CraftEngine's stack supplier system under the namespace astralitems. Any place that resolves a CraftEngine key works — the AstralCore action framework, menus, shops, custom commands:
The resolved key format is astralitems:<rarity-namespace>/<blueprint-id> — the rarity namespace is part of the key because ItemBlueprint.id is built as Key.key(rarity.namespace(), id).
Permissions
Node | Default | Description |
|---|---|---|
| op | Required to use any |
| op | Reload rarities, blueprints, messages, and menus with |
The /items no-arg form (open rarities menu) and /items anvil (open the custom anvil) need only items.command. Right-clicking a vanilla anvil block is intercepted by AnvilListener and opens the same custom anvil — there's no separate permission for that path.