⚠️ Early Development Notice
PlayerDummies is currently in early development.
While fully functional, you may encounter bugs or missing features.
Please do NOT leave negative reviews for bugs.
Instead:
• Open an issue on GitHub
• Or join the Discord Server
Your feedback helps improve the plugin <3
Overview
PlayerDummies is a lightweight plugin that adds realistic combat training dummies to your Minecraft server.
Perfect for:
• PvP servers
• Practice arenas
• Damage testing zones
• Combat tutorials
• Minigame lobbies
Unlike basic armor stands, PlayerDummies creates fully interactive NPCs (if Citizens is present) that:
• Accurately track damage
• Support all armor, weapons, and enchantments
• Provide real-time combat feedback
• Never die or get knocked back
Train smarter. Test faster. Improve combat performance.
Key Features
Realistic Combat Dummies
- NPCs simulate real player damage behavior
- Instant hit detection — no lag or delay
- Supports all weapons, armor, enchantments, and potions
- Works with Citizens or standalone ArmorStands
Real-Time Damage Tracking
- Live damage display in action bar or chat
- Accurate DPS (Damage Per Second) calculation
- Perfect for testing builds and weapon combinations
Full Customization
- Equip dummies with any armor or weapon
- Custom player skins via Citizens integration
- Configurable dummy names and visibility
- Place dummies anywhere
️ User-Friendly Controls
- Right-click to retrieve equipped items
- Shift + Right-click to remove dummy
- Automatic orientation on placement
- Owner protection support
How It Works
For Server Owners
1. Installation
- Place the JAR into your plugins/ folder
- (Optional) Install Citizens for advanced NPC features
- Restart your server
- Configure settings in config.yml
2. Configuration
Spoiler: config.yml
# PlayerDummies configuration
#
# This file uses top-level keys for clarity. Each option includes a short
# description above it — change values as needed and reload with
# "/dummies reload".
#######################################################################
# Item / gameplay
#######################################################################
item:
# Material of the item you get when using /dummies give or picking up a dummy.
# Use any valid Bukkit material name (e.g. ARMOR_STAND, PLAYER_HEAD).
material: ARMOR_STAND
removal:
# Require the player to be sneaking (shift) when right-clicking the NPC to pick it up.
require-sneak: true
notifications:
# Number of decimal places to show for damage values in messages/action bar.
precision: 1
#######################################################################
# NPC / Skin / Name settings
#######################################################################
# Display name shown above NPCs and ArmorStands. Supports color codes (&).
# Example: "&ePlayer Dummy" -> yellow name "Player Dummy".
npc-name: "&ePlayer Dummy"
# Whether the NPC's name is visible above their head.
# For Citizens the name appears like a real player nametag.
# For ArmorStands the name appears as a floating label.
npc-name-visible: true
# Default Minecraft username / skin identifier used by NPC plugins.
# Leave empty for no specific skin. Works only with Citizens.
# Example: npc-skin: "Notch"
npc-skin: "P3tar_mc"
# If true, the plugin will prefer using real NPC plugins (Citizens)
# when available; if false the plugin always uses ArmorStands as dummies.
npc-use-npcs: true
# NPC selection mode. AUTO: Citizens -> ArmorStand.
# Other values: CITIZENS, ARMORSTAND
npc-mode: "AUTO"
#######################################################################
# WorldGuard integration
# TEMPORARILY DISABLED - will be reworked in a future update. For now, the plugin ignores WorldGuard flags.
#######################################################################
#worldguard:
# # Enable/disable WorldGuard integration (if WG is installed)
# enabled: true
# # Respect flags when placing dummies (requires WG installed)
# enforce-place: true
# # Respect flags when picking up dummies
# enforce-break: true
# # Respect flags when damaging dummies
# enforce-damage: true
#######################################################################
# Messaging, debug, permissions
#######################################################################
# If true the plugin will send messages to chat instead of
# the action bar when reporting damages (controlled in code).
use-chat-for-messages: false
# Enable verbose debug logging to console (developer use)
debug: false
# Debug level: 0 = off, 1 = normal debug, 2 = verbose / development-only
# Setting this to 2 will enable extra logs intended for development.
# DO NOT TURN THIS ON UNLESS YOU ARE A DEVELOPER OR HAVE BEEN ASKED TO BY THE AUTHOR, AS IT WILL GENERATE A LOT OF LOGS!
debug-level: 1
# If false, only the owner/placer of a dummy can pick it up.
allow-non-owners-break: false
#######################################################################
# Storage / persistence
#######################################################################
# Saved NPCs are stored as YAML files under the plugin data 'data/' folder.
# Each file is named <uuid>.yml and contains position, owner, type and skin.
Code (Text):
# PlayerDummies configuration
#
# This file uses top-level keys for clarity. Each option includes a short
# description above it — change values as needed and reload with
# "/dummies reload".
#######################################################################
# Item / gameplay
#######################################################################
item:
# Material of the item you get when using /dummies give or picking up a dummy.
# Use any valid Bukkit material name (e.g. ARMOR_STAND, PLAYER_HEAD).
material: ARMOR_STAND
removal:
# Require the player to be sneaking (shift) when right-clicking the NPC to pick it up.
require-sneak: true
notifications:
# Number of decimal places to show for damage values in messages/action bar.
precision: 1
#######################################################################
# NPC / Skin / Name settings
#######################################################################
# Display name shown above NPCs and ArmorStands. Supports color codes (&).
# Example: "&ePlayer Dummy" -> yellow name "Player Dummy".
npc-name: "&ePlayer Dummy"
# Whether the NPC's name is visible above their head.
# For Citizens the name appears like a real player nametag.
# For ArmorStands the name appears as a floating label.
npc-name-visible: true
# Default Minecraft username / skin identifier used by NPC plugins.
# Leave empty for no specific skin. Works only with Citizens.
# Example: npc-skin: "Notch"
npc-skin: "P3tar_mc"
# If true, the plugin will prefer using real NPC plugins (Citizens)
# when available; if false the plugin always uses ArmorStands as dummies.
npc-use-npcs: true
# NPC selection mode. AUTO: Citizens -> ArmorStand.
# Other values: CITIZENS, ARMORSTAND
npc-mode: "AUTO"
#######################################################################
# WorldGuard integration
# TEMPORARILY DISABLED - will be reworked in a future update. For now, the plugin ignores WorldGuard flags.
#######################################################################
#worldguard:
# # Enable/disable WorldGuard integration (if WG is installed)
# enabled: true
# # Respect flags when placing dummies (requires WG installed)
# enforce-place: true
# # Respect flags when picking up dummies
# enforce-break: true
# # Respect flags when damaging dummies
# enforce-damage: true
#######################################################################
# Messaging, debug, permissions
#######################################################################
# If true the plugin will send messages to chat instead of
# the action bar when reporting damages (controlled in code).
use-chat-for-messages: false
# Enable verbose debug logging to console (developer use)
debug: false
# Debug level: 0 = off, 1 = normal debug, 2 = verbose / development-only
# Setting this to 2 will enable extra logs intended for development.
# DO NOT TURN THIS ON UNLESS YOU ARE A DEVELOPER OR HAVE BEEN ASKED TO BY THE AUTHOR, AS IT WILL GENERATE A LOT OF LOGS!
debug-level: 1
# If false, only the owner/placer of a dummy can pick it up.
allow-non-owners-break: false
#######################################################################
# Storage / persistence
#######################################################################
# Saved NPCs are stored as YAML files under the plugin data 'data/' folder.
# Each file is named <uuid>.yml and contains position, owner, type and skin.
3. Permissions
- playerdummies.give - allows players to execute /dummy give
- playerdummies.reload - Allows reloading plugin config and messages
- playerdummies.list - Allows admin management commands (provider, list, remove, info)
For Players
Step 1 — Get a Dummy
- Use /dummy give (with permission)
- Receive a Training Dummy item
Step 2 — Place It
- Right-click a block
- Dummy automatically faces correct direction
Step 3 — Customize
- Right-click with armor to equip
- Right-click with weapons to place in hands
Step 4 — Test Damage
- Attack normally
- View live damage & DPS
- Test enchantments, crits, combos
- Dummy never dies or moves
Step 5 — Manage
- Right-click (empty hand) → Retrieve gear
- Shift + Right-click → Remove dummy
Use Cases
⚔ PvP Practice Arenas
Train before entering competitive zones.
Damage Testing Labs
Optimize builds, enchantments, and strategies.
Minigame Lobbies
Keep players engaged while waiting.
Combat Tutorials
Teach new players mechanics safely.
Commands
Code (Text):
/dummy give <player> [amount]
/dummy reload
/dummy list
/dummy remove <id>
/dummy info
API for Developers
An official API is currently in development.
Stay tuned for integration features.
Why Choose PlayerDummies?
- ✅ Lightweight & optimized
- ✅ Built for modern Minecraft
- ✅ Persistent storage
- ✅ Simple and intuitive
Requirements
Minimum:
- Minecraft 1.18.2+
- Spigot or Paper
- Java 17+
Optional:
- Citizens (for skins & advanced NPC features)
Support & Updates
Found a bug?
Report it here: GitHub Issue Tracker
Want a feature?
Suggest it in the Discord Server
⭐ If you enjoy this plugin, please leave a review! ⭐
Constructive feedback is always appreciated ❤️
Screenshots
Spoiler: Action Bar Damage Display
Spoiler: Custom Skins (Citizens Integration)
Thank you for using PlayerDummies! ⚔️
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.18, 1.19, 1.20
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
[1.18.2 - 1.21.11] PlayerDummies - Combat Training Dummies is a free Minecraft Java mod. Compatible with Minecraft 1.18, 1.19, 1.20, 1.20.6 and newer. Downloaded 211 times (via Spigot). Download it and open it directly in the game.