An extension for Carpet that adds a bundle of optional, toggleable rules, commands and a logger — mostly aimed at server management, redstone/technical building, and item logistics.
Every feature is a normal Carpet rule: nothing is forced on, everything is
toggled with /carpet <rule> true|false (or via the Carpet settings GUI).
| Minecraft | 26.2 |
| Fabric Loader | ≥ 0.16.10 |
| Fabric API | required |
| Carpet | required |
| Java | 25+ |
| Environment | Server-side rules (a few client-side UI bits) |
Optional integrations:
nonWhitelistedPlayerNeedAuth
(auth is skipped for players outside the whitelist).| Rule | Default | Description |
|---|---|---|
whitelistedPlayerGameType |
UNSET |
Game mode applied to whitelisted players on join. |
nonWhitelistedPlayerGameType |
REJECT |
Apply a game mode to non-whitelisted players instead of kicking them. |
nonWhitelistedPlayerNeedAuth |
true |
EasyAuth integration: non-whitelisted players may skip authentication. |
rejectNonWhitelistedPlayerAttackBlock |
false |
Block breaking by non-whitelisted players. |
rejectNonWhitelistedPlayerInteractBlock |
false |
Block interaction by non-whitelisted players. |
rejectNonWhitelistedPlayerAttackEntity |
false |
Entity attacking by non-whitelisted players. |
rejectNonWhitelistedPlayerInteractEntity |
false |
Entity interaction by non-whitelisted players. |
rejectNonWhitelistedPlayerMoveContainerItem |
false |
Moving items inside containers. |
rejectNonWhitelistedPlayerDropOrPickItem |
false |
Dropping / picking up items. |
rejectNonWhitelistedPlayerEditSign |
false |
Sign editing. |
rejectNonWhitelistedPlayerExecuteServerCommand |
false |
Executing server commands (pair with /commandallow). |
nonWhitelistRejectionIgnoreFakePlayers |
false |
Carpet fake players bypass all non-whitelist rejections. |
playerListUsesUUID |
true |
Match whitelist/blacklist entries by UUID (off = by name). |
playerListIgnoreCase |
true |
Case-insensitive player-name lookup. |
forceOfflineUUIDOnOfflineMode |
false |
Resolve names/UUIDs locally on offline servers — no Mojang requests, instant /whitelist refresh. |
| Rule | Default | Description |
|---|---|---|
survivalAnvilLimit |
40 |
Change the survival "Too Expensive" limit (negative = no limit). |
anvilKeepHigherLevels |
false |
Keep levels higher than the anvil cap, from either the item or the material. |
disableAnvilPunishment |
false |
Disable anvil prior-work penalty. |
modifyUnbreakingFunction |
false |
Change Unbreaking's multiplier from n + 1 to n + 1 + n(n-1)(n-2)(n-3)/24 (non-armor items). |
| Rule | Default | Description |
|---|---|---|
comparatorGetsRealTime |
false |
Read the seconds-accurate UTC time (hex digits) from a clock in an item frame, based on the clock's rotation. |
furnaceClear |
false |
Automatically handle a clogged furnace input slot. |
furnaceClearMode |
SMELT_PASS |
direct_destroy / direct_pass / smelt_destroy / smelt_pass. |
shelfPipe |
false |
A row of same-facing, powered shelves becomes a pipe; items flow toward one end and can be fed/ejected from both ends. |
shelfPipeMoveTicks |
4 |
Ticks between item movements inside a shelf pipe. |
fakePlayerExperienceDuplicationFix |
false |
Fixes Carpet fake players not clearing XP on death (XP duplication). |
loveGhastling |
0 |
1 removes dried ghasts from piglin barter loot; -1 makes them edible. |
| Rule | Default | Description |
|---|---|---|
hopperBundleInteraction |
false |
Hoppers push items into a bundle in the target slot and pull items out of a bundle they hold; a non-full bundle no longer counts as a full slot. |
dispenserBundleInteraction |
false |
Dispensers/droppers dispense items taken from inside a bundle instead of the bundle itself. |
comparatorBundleContents |
false |
Comparator reads a bundle slot by its actual fill level (0–15) instead of vanilla's constant "full slot". |
comparatorBundleContentsIncludeSelf |
false |
Also count the bundle's own 1/16 weight, so an empty bundle still outputs the minimum signal. |
| Rule | Default | Description |
|---|---|---|
phantomSpawnMonsterCapped |
false |
Phantom spawning respects global and per-player local monster caps. |
phantomSpawnMonsterCappedGlobalExtra |
64 |
Extra allowance on top of the vanilla global monster cap. |
phantomSpawnMonsterCappedLocalExtra |
8 |
Extra allowance on top of the vanilla local monster cap. |
phantomsCountAsMonster |
true |
Whether phantoms count in the MONSTER category (off = move to MISC). |
/head (rule commandHead) — convert the blank skull / your own head in your
main hand to the other. Usable by non-OP players when the rule is on./qsetblock — like /setblock, but suppresses command feedback. Handy for
command blocks and scripts./enchantment limit — override max enchantment levels per enchantment and per
limit type (anvil, single_random_enchantment, multi_random_enchantments,
enchant_command), with set / remove / remove all / list / reload./interactallow — when block interaction is rejected for non-whitelisted players,
allow specific blocks or tags (#minecraft:buttons) while not sneaking./commandallow — allow specific root commands (and their subcommands) for
non-whitelisted players./whitelistpermit — allow specific non-OP players to run /whitelist./whitelist refresh — re-resolve every whitelist entry, updating stale names/UUIDs
(on offline servers with forceOfflineUUIDOnOfflineMode, it regenerates offline UUIDs
locally with no network lookup).All list-type commands support add / remove / remove all / list / reload and persist to
world/data/lpcCarpetAddition/*.json.
ender_pearl — via /log ender_pearl: logs the landing position and tick of ender
pearls, with a hoverable owner name.world/data/lpcCarpetAddition/.Last updated: 2026-09-11 · v0.0.19+mc26.2 (Minecraft 26.2)