Permissions
Base and administration permissions#
| Permission | Default | Description |
|---|---|---|
kafurnace.use |
All players | Use /kafurnace, /kf, and personal virtual furnaces |
kafurnace.admin |
OP | All administration; includes the three granular permissions below |
kafurnace.admin.furnace.view |
OP | Inspect upgrade state with administrator get |
kafurnace.admin.furnace.modify |
OP | Change upgrade state with administrator set/reset |
kafurnace.admin.furnace.open |
OP | Open and operate another player's virtual furnace |
kafurnace.admin bypasses every player furnace-count, upgrade, unlock, and type restriction below. Administrator set/reset operations also ignore the target player's limit permissions.
Furnace count limit#
kafurnace.limit.furnaces.<1-10>
KaFurnace selects the highest granted numeric node. Every numeric node defaults to false; when none is effective, the system limit of 10 remains in effect, preserving behavior without a permission plugin. Explicitly grant .1 to impose a one-furnace limit.
Lowering the limit does not delete, hide, or lock existing furnaces. It only prevents another purchase when the player already owns at least the new limit.
Upgrade level limits#
kafurnace.limit.upgrade.<property>.<1-6>
Supported properties:
input_slot
fuel_slot
output_slot
fuel_efficiency
smelting_speed
The highest granted numeric node is selected independently for every property. Every numeric node defaults to false; without an effective node for a property, the system limit of 6 remains in effect. An upgrade at its permission limit is rejected before charging. Lowering permissions does not downgrade an existing level; administrators can still set any value from 1..6.
Permanent unlock permissions#
| Permission | Default | Description |
|---|---|---|
kafurnace.unlock.offline_smelting |
All players | Allow purchasing offline smelting |
kafurnace.unlock.auto_output_delivery |
All players | Allow purchasing automatic output delivery |
kafurnace.unlock.completion_notification |
All players | Allow purchasing completion notifications |
Denying one of these nodes only blocks a purchase that has not completed. It does not revoke an unlock already stored on a furnace.
Furnace type permissions#
| Permission | Default | Description |
|---|---|---|
kafurnace.type.furnace |
All players | Allow switching to a regular furnace |
kafurnace.type.blast_furnace |
All players | Allow switching to a blast furnace |
kafurnace.type.smoker |
All players | Allow switching to a smoker |
Denying a target type does not change existing furnaces of that type. It only prevents later switches to it. Selecting the current type is still handled as no change required.
LuckPerms examples#
Grant the administrator group management access:
/lp group admin permission set kafurnace.admin true
Block one group from virtual furnaces:
/lp group restricted permission set kafurnace.use false
Limit the member group to three furnaces:
/lp group member permission set kafurnace.limit.furnaces.3 true
Limit the member group to smelting-speed level 3:
/lp group member permission set kafurnace.limit.upgrade.smelting_speed.3 true
Block offline smelting purchases and blast-furnace switches for member:
/lp group member permission set kafurnace.unlock.offline_smelting false
/lp group member permission set kafurnace.type.blast_furnace false
Normally, granting the intended limit node is enough and the system fallback does not need to be denied. If a group or wildcard already grants a higher numeric node, KaFurnace selects that higher effective value, so those higher grants must be denied. Permissions are read whenever a menu opens or refreshes and whenever a transaction starts, so LuckPerms changes do not require a KaFurnace reload.
Menus expose {furnace_purchase_allowed}, {<property>_permission_max_level}, {<property>_allowed}, {<unlock>_allowed}, and {type_<type>_allowed}. Display values are localized; use their _raw variants in conditions.