Carpet PVP

Carpet PVP

Fork of Carpet Mod that fixes PVP-related bugs with carpet fake players and adds some new commands.

896.6K downloads
Created Apr 9, 2026
by TheobaldTheBird

About

This mod was made to be used by Theobald's PVP Practice map.

This mod fixes bugs and quirks with Carpet mod's fake players to be more consistent with real players, and adds extra commands for controlling players through a datapack.

Updated for 1.4: Do not reference this for 1.2

<details> <summary>Differences from Carpet Mod</summary> <details> <summary>Fixes</summary>
  • Fixed gliding to work with /player jump while in midair

  • Fixed fall distance not updating correctly (fixes crit and mace behavior)

  • Fixed downward motion not being saved in some cases

  • Fixed /player look yaw/pitch being reversed

  • Fixed multiple edge cases related to fake player movement and actions

</details> <details> <summary>Fake Player Changes</summary>
  • Added a toggle to allow/disallow shield stunning for players

  • Added target selector support to player commands

  • Renamed /player <name> spawn to /playerspawn <name>

    • now it is /playerspawn <name> [at <coords> [in <gamemode> [on <world>]]]
  • Added look mode options to /player <target> look upon <entity> [eyes|feet|closest]

    • eyes - looks at the entity’s eyes (default)

    • feet - looks at the entity’s feet

    • closest - looks at the closest point of the entity’s hitbox

  • Added itemCd command for item cooldown control

    • itemCd - resets all item cooldowns [returns how many items were reset]

    • itemCd <item> - shows how many ticks left on the item's cooldown, says ready if no cooldown [returns how many ticks left]

    • itemCd <item> reset - resets cooldown [returns how many players were targeted]

    • itemCd <item> set - applies the default item cooldown without using it [returns how many players were targeted]. If there is no default item cooldown, will not do anything [for example cobblestone]

    • itemCd <item> set <ticks> - applies a custom total cooldown duration without using it [returns how many players were targeted]

  • Added swing animation command for fake players

    • Swings a hand without performing an action

    • Resets attack cooldown

    • No parameters stop any ongoing swinging

  • Changed /player use (no parameters) to stop using without triggering another use

    • Previously behaved the same as /player use once
</details> <details> <summary>Distance Command Changes</summary>
  • Changed /distance to store spherical distance values into scoreboards

  • Added e argument to /distance for higher scale

    • for example: /distance from HerobaneNair to TheobaldTheBot e 4 while we're 4 blocks away will return 4000 to be stored in a scoreboard as needed
  • Added support for measuring distance between two entities

  • Added horizontal and vertical distance measurement:

    • /distance from <from> to <to> horizontal|vertical

    • Allows measuring horizontal or vertical distance between entities or positions

</details> <details> <summary>Carpet Rule Changes</summary>
  • Added carpet rule for shield stunning

  • Added carpet rule for editable player NBT

    • /carpet editablePlayerNbt
  • Added carpet rule to disable fire from anchors and beds

    • /carpet explosionNoFire
  • Changed explosion block damage rule behavior:

    • false - vanilla behavior

    • most - affects non-solid blocks except glowstone and redstone-redirecting blocks (buttons, levers, etc.)

    • true - prevents all block damage

</details> </details>

Versions

v1.21.5_1.4.0Latest
1.21.5fabricJan 16, 2026

## Changes & Fixes ### Fixes - Fixed gliding to work with `/player jump` while in midair - Fixed fall distance not updating correctly (fixes crit and mace behavior) - Fixed downward motion not being saved in some cases - Fixed `/player look` yaw/pitch being reversed - Fixed multiple edge cases related to fake player movement and actions ### Player Commands - Added target selector support to player commands - Renamed `/player <name> spawn` to `/playerspawn <name>` #### `/player look` - Added look mode options to `/player <target> look upon <entity> [eyes|feet|closest]` - `eyes` — looks at the entity’s eyes (default) - `feet` — looks at the entity’s feet - `closest` — looks at the closest point of the entity’s hitbox #### Fake Player Actions - Added swing animation command for fake players - Swings a hand without performing an action - Resets attack cooldown - No parameters stop any ongoing swinging - Changed `/player use` (no parameters) to stop using without triggering another use - Previously behaved the same as `/player use once` ### Distance Measurement - Changed `/distance` to store spherical distance values into scoreboards - Added `scale` argument to `/distance` for higher precision - Added support for measuring distance between two entities - Added horizontal and vertical distance measurement: - `/distance from <from> to <to> horizontal|vertical` - Allows measuring horizontal or vertical distance between entities or positions ### Item Cooldowns - Added `itemCd` command for item cooldown control - `itemCd` — resets all item cooldowns - `itemCd minecraft:shield` — returns the shield delay in ticks as a storable value - `itemCd minecraft:shield reset` — resets the shield delay - `itemCd minecraft:ender_pearl set` — applies the default pearl cooldown without using a pearl - `itemCd minecraft:ender_pearl set <ticks>` — applies a custom total cooldown duration - Enables custom application, retrieval, and resetting of item cooldowns

Download
v1.2.0
1.21.4fabricMay 16, 2025

- Fakeplayer no longer disconnects on death, instead respawns where it was originally spawned, making bot death way less annoying to deal with in a datapack - Added `/player disconnect` subcommand for the fakeplayer - Added Carpet setting for toggling shield stunning! usage: `/carpet shieldStunning <true/false>` - Fixed knockback issues (mainly with knockback enchanted swords during fire ticks) - Added a poor man's `@s` target selector to the `/player` command. By using `/execute as ... run player s ...`, fake players are now able to target themselves with commands. This removes the need to hard code bot names in datapacks, and allows for controlling multiple players with a single `/execute` command

Download

Download

Download v1.21.5_1.4.0

Minecraft: 1.21.5

Loaders: fabric

Tags

fabric1.211.21.11.21.41.21.5