ModsJava
ChaosPVP
A PVP plugin with 13 unique character classes for Minecraft Paper 1.21.11 servers
⬇ Download on HangarOpen in MCModsHubGet it on Google Play →# ChaosPVP
A PVP plugin with 16 unique character classes for Minecraft Paper 1.21.11 servers.
## Features
- 16 Unique Professions: Inspector, Scientist, Plaguebringer, Shield Soldier, Critical Cutter, Navigator, Captain, Creature, Juggler, Dragonwrath, Undead, Stamper, Time Marker, Horseman, Vitality Cutter, Marathoner
- Class-Specific Abilities: Each class has unique items, abilities, and passive effects
- Resource Collection System: Collect resources to unlock powerful ultimate abilities (Swordsman, Scientist, etc.)
- Cooldown Management: Balanced ability cooldowns displayed via action bar and chat
- Team & Solo Modes: Supports both draft pick team mode and solo free-for-all
- Practice Mode: Test classes individually for 5 minutes (same mechanics as real game)
- Auto-Save Data: All map and lobby settings are automatically saved in real-time
- Game Duration: 10-minute matches
## Class Overview
### Swordsman
A melee combat specialist using various swords.
- Passive: +1 bonus damage with stone sword attacks
- Diamond Sword: Right-click for forward attack - 8 damage (4 hearts), 12.5s cooldown, grants netherite scrap on hit
- Ultimate: Netherite Sword - 4 base + 16 instant damage (collect 3 netherite scraps, max 1, single use)
### Scientist
A support class with random potion abilities and mobility.
- Passive: Speed I (0.5s) when throwing items
- Ability: Generate random splash potion every 7.5s (max 3)
- Ultimate: Lingering area potion - 7 block diameter, 8s duration, heals self + damages enemies (collect 9 ultimate materials)
### Plague Spreader
Controls areas with poison immunity and toxic fields.
- Passive: Immune to poison damage
- Poison Engine: Generated every 20s (max 2), creates poison field for 10s (6 block diameter)
- Extreme Poison Engine: Generated every 100s (max 1), creates enhanced poison field for 10s (8 block diameter)
- Special: Speed buff in field, instant damage + weakness + poison to enemies
### Shield Soldier
A tank class with defensive abilities and absorption mechanics.
- Passive: Gain 2 absorption hearts after 12s without taking damage (lasts 60s)
- Red Shield: Deal 6 damage to attacker when blocking, 6s cooldown
- Blue Shield: Gain 2 absorption hearts when blocking (lasts 10s), 11s cooldown
- Basic Shield: Apply weakness I (1.5s) to attacker when blocking, 4s cooldown
- Golden Shield: Auto-obtained at 12 HP or below, grants strength II + speed I + 6 absorption hearts (8s) when blocking, single use
### Critical Cutter
A burst damage class with escalating critical hit mechanics.
- Passive: 5% base critical chance (increases by 1% per non-critical hit)
- Weapon: Critical Cutter Sword (5.0 damage = 2.5 hearts, same as stone sword)
- Special: Critical hits deal 2x damage + heal 2 HP (1 heart)
- Guaranteed Critical: Right-click for forward attack - 6 base + 6 instant damage + heal 6 HP, 25s cooldown
### Navigator
A mobility class specialized in knockback and position control.
- Passive: Knockback I on sword
- Naval Weapon: Generated every 20s (max 3, durability 1) - 1 base + 4 instant damage, knockback II
- Wave Riding: Speed IV (1s), knockback + slowness V (1s) on collision, 12s cooldown
- Harpoon Throw: 6 damage + slowness V (1s), 15s cooldown (50% reduction on miss)
### Captain
A team supporter who strengthens and assists teammates.
- Passive: Grant random teammate strength I (2s) when attacking enemies (self in solo mode)
- Captain's Command: Give teammates naval weapon + strength I (5s), 15s cooldown
- Captain's Harpoon: 4 damage, on hit: teammates get strength I (3s) + enemy gets weakness I (3s) + 3s cooldown reduction, 9s cooldown
### Shapeshifter
A transformation class that evolves over time.
- Evolution Stages: Ocelot (0-1min) → Cow (1-2min) → Sniffer (2-4min) → Ravager (4min+)
- Ocelot: 5 hearts, speed III, weakness III
- Cow: 15 hearts, regenerate 1 heart every 3s, stone sword
- Sniffer: 25 hearts, resistance I, iron sword
- Ravager: 35 hearts, resistance II, strength I
- Charge: Available at all stages - speed V (0.4s), slowness V (0.5s) on collision, 7s cooldown
### Juggler
A throwing specialist using various projectiles.
- Passive: No stone sword at start, gain 1 "Throw Time" every 60s (max 1)
- Light Thing: Throw snowball - 1 damage (0.5 hearts), no knockback, 4s cooldown (resets on hit)
- Heavy Thing: Throw wind charge - 8 damage (4 hearts), slowness V (1s) + blindness (1s), 13s cooldown
- Throw Time: Slowness V (2.5s) to all enemies within 10 blocks + reset light thing cooldown (consumable)
### Dragon Fury
A class that collects fury to unleash powerful counterattacks.
- Passive: +1 fury when taking damage (max 30), auto-generate +1 every 8s
- Resistance by Fury: 0-10 fury = resistance I, 11-20 = resistance II, 21-30 = resistance III
- Fury Counterattack: Deal damage equal to fury count to nearest enemy within 5 blocks, heal fury/2 HP on kill, 30s cooldown
- Starting Items: Full iron armor set, permanent strength I + resistance I
### Undead
A special class that overcomes death.
- Passive: Instantly revive on first death (once per game)
- Revival Effect: Revive with max health, gain speed I + strength II + resistance V
- Revival Penalty: Take 1 damage (0.5 hearts) every 0.25s starting 3s after revival (until second death)
### Stamper
A class specialized in aerial mobility and fall attacks.
- Passive: No fall damage, deal 6 damage to enemies within 4 blocks when falling 3+ blocks (12 damage if hitbox overlaps)
- Stamp: Right-click heavy core - launch 10 blocks high, 20s cooldown
- Dive: Right-click heavy core - launch 40 blocks high, deal 16 damage to enemies within 20 blocks on landing (32 damage if hitbox overlaps), obtained every 200s (max 1, consumable)
### Time Engraver
A class that manipulates time to control enemies.
- Passive: Immune to slowness
- Time Engraving: Completely freeze all enemies within 8 blocks for 2s + weakness I (1.5s), gain time capsules equal to hit count, 16s cooldown
- Clockhand Piercing: Throw arrow - 6 damage (3 hearts), 8 damage (4 hearts) + darkness/blindness (3s) to slowed targets, 12s cooldown (1s during eternal clock)
- Eternal Clock: Completely freeze all players and mobs for 8s + slowness V + darkness + blindness, freeze all projectiles (collect 7 time capsules, consumable)
### Cavalry
A mobile class that rides a horse and roams the battlefield.
- **Passive**: Permanent Slow I Effect
- **Horseback & Hippocampus**: Summons a horse (shares health with the player). When mounted, restores 6 health (3 hearts), 22-second cooldown
- **Sweep**: Attacks a 3-block area in front - deals 6 damage (8 damage when mounted), 6-second cooldown (reduced by 1 second per hit, minimum 1 second)
- **Special**: When a horse takes damage, the player also takes half damage. When the horse dies, the player is automatically eliminated.
### Marathoner
An endurance class that increases speed by running. - **Passive**: 5 seconds of sprinting → Swiftness I, 3.5 seconds more → Swiftness II, 3.5 seconds more → Swiftness III, 3.5 seconds more → Swiftness IV + Strength II
- **Passive Remove**: All buffs are removed upon stopping sprinting, taking damage, or jumping.
- **Crouching Start**: Swiftness III (0.5 seconds), 5 second cooldown.
### Vitality Cutter
A life-sucking class that drains the life of enemies.
- **Passive**: No Stone Sword at start.
- **Vitality Cutter**: Left-click attacks inflict 1/6 of the target's current health as instant damage.
- **Life Drain**: Restores 1 HP (0.5 hearts) upon attack.
- **Special**: In team battles, the passive is not applied when attacking a teammate.
## Installation
1. Download the latest release
2. Place the JAR file in your server's `plugins` folder
3. **Install Required Plugins**:
- LibsDisguises (required for Shapeshifter class)
- ProtocolLib (LibsDisguises dependency)
4. **Install Optional Plugins** (recommended):
- Multiverse-Core (for automatic world reset after games)
5. Restart the server
6. Check settings in `plugins/ChaosPVP/data.yml`
## Commands
### Game Commands
- `/게임시작` - Open class selection GUI
- `/게임종료` - End game and reset all players (admin)
- `/게임모드 <팀전|개인전>` - Set game mode (admin)
### Practice Mode
- `/연습모드시작` - Start practice mode (class selection)
- `/연습모드종료` - End practice mode
- `/연습클래스` - Change class in practice mode
- `/연습모드 맵 <맵이름>` - Set practice mode map (admin)
- `/연습모드` - Teleport to practice mode map
### Map Management
- `/로비` - Teleport to lobby
- `/로비 지정` - Set current location as lobby (admin)
- `/로비제거` - Remove lobby location (admin)
- `/맵지정 [맵이름]` - Set map spawn location (admin)
- `/맵제거 <번호>` - Remove map (admin)
### Player Management
- `/인원제외 <플레이어명>` - Exclude player from game (admin)
- `/인원추가 <플레이어명>` - Re-add excluded player (admin)
### Other
- `/도움말` - Display help message
- `/입자끄기` - Remove all poison fields (admin)
- `/chaospvp` - ChaosPVP main command (aliases: /cpvp, /cp)
## Permissions
- chaospvp.use - Allow basic command usage (default: true)
- chaospvp.admin - Allow admin command usage (default: op)
## Requirements
- Minecraft Server: Paper 1.21.11
- Java: 21 or higher
- Required Plugins:
- LibsDisguises (for Shapeshifter class)
- ProtocolLib (LibsDisguises dependency)
- Optional Plugins:
- Multiverse-Core (for automatic world reset after games)
## Gameplay
### Starting a Game
1. Select mode with `/게임모드 팀전` or `/게임모드 개인전`
2. Start class selection with `/게임시작`
3. For team mode, select team in team selection GUI (draft pick system)
4. Game starts automatically when all players are ready
### During Game
- Game duration: 10 minutes
- Use each class's abilities to fight
- Collect resources to unlock ultimate abilities
- Last survivor or team wins
### Practice Mode
- Start with `/연습모드시작` or `/연습모드`
- Test classes individually
- Same mechanics as real game
- Change class anytime with `/연습클래스`
- 5-minute cooldown (until next practice mode start)
## Development
This plugin uses:
- Paper API 1.21.11 - Minecraft server integration
- LibsDisguises - Shapeshifter transformation feature
- Gradle 8.5 - Build automation
- Java 21 - Programming language
- JUnit 5 - Unit testing framework
- Mockito 5.8 - Mocking framework
- jqwik 1.8 - Property-based testing
## Data Storage
All map and lobby settings are automatically saved to `plugins/ChaosPVP/data.yml`.
- Lobby location and name
- General map list (locations and names)
- Practice mode map (location and name)
Settings are automatically saved in real-time when changed and automatically loaded on server restart.
## Balance Changes
### v3.0.2(Latest)
### Bug Fixes
- **Fixed Swordsman Passive**: Fixed an issue where +1 additional damage was not applied to Stone Sword attacks.
- Changed `ignoreCancelled = false` to apply to cancelled events.
- Manually check whether an event was canceled to apply only to normal attacks.
- **Fixed Critical Cutter Base Weapon Damage**: Fixed the base weapon to deal 5 damage instead of 6.
- Use an Iron Sword, but manually set the damage to 5.0 (same as Stone Sword).
- Additional damage is now applied immediately based on the adjusted 5.0 damage when a critical hit occurs.
- **Default Game Mode Change**: Changed the default game mode from Team Match to Solo Match.
- Fixed an issue where a team selection message would appear when starting Solo Match.
- The Team Match Draft Pick system now functions properly.
- **Fixed Practice Mode Death Handling**: Practice mode now automatically ends upon death.
- **Fixed Sky Island Map Effect System**:
- Set the time to 13000. Changed to Tick (Sunset/Twilight)
- Completely remove lightning effects (user request)
- Remove night vision effect particles (maintain effect, only hide particles)
#### Features Added
- **Sky Island Map Special Effects System**:
- Fixed sunset/twilight time to 13000 ticks
- Disabled rain/thunder weather
- Automatically detects map names containing "Sky Island", "sky", or "skyisland" (case-insensitive)
- **Setting a Single Spawn for a Map Slot**:
- Existing spawn points are automatically deleted when `/setmap1` or `/setmap2` are executed.
- The current location is automatically set to the map center and the first spawn point.
- Additional spawn points can be added using `/addspawn1` or `/addspawn2`.
- Added a notification message indicating the number of existing spawn points.
### v3.0 (Latest)
- Bug Fix: Fixed OP permission not being restored after game end (removed duplicate OP save logic)
- Bug Fix: Fixed practice mode items not being removed when starting game during practice mode
- Bug Fix: Added random team assignment feature to team selection GUI
### v2.0
- Stamper: Stamp cooldown 12s → 20s
- Stamper: Dive acquisition time 120s → 200s
- Stamper: Stamp height 20 blocks → 10 blocks
- Stamper: Dive height 80 blocks → 40 blocks
- Stamper: Dive damage 12 (6 blocks) → 16 (8 blocks)
- Stamper: Passive landing damage 4 (2 blocks) → 6 (3 blocks)
- Stamper: Stamp item feather → heavy core
- Time Engraver: Time engraving range 5 blocks → 8 blocks
- Time Engraver: Time engraving slowness 1s → 2s (complete position freeze)
- Time Engraver: Clockhand base damage 10 → 6
- Time Engraver: Clockhand bonus damage 6 → 8
- Time Engraver: Added clockhand piercing (arrow throw, darkness/blindness effect)
- Time Engraver: Added complete position freeze to eternal clock
- Navigator: Wave riding changed from complete position freeze → simple slowness V effect
- Team Selection: Added draft pick system
- Bug Fix: Fixed team glowing effect not being removed after game end
- Bug Fix: Fixed team display errors
### v1.0
- Swordsman: Copper sword cooldown 15s → 24s, gold sword 14s → 22s, diamond sword 13s → 20s
- Swordsman: Netherite sword limited to max 1
- Swordsman: Changed cooldown display from boss bar to chat
- Critical Cutter: Fixed critical cutter sword damage (same as stone sword → 5.0 damage)
- Critical Cutter: Guaranteed critical cooldown 6s → 25s
- Shapeshifter: Added charge ability (all evolution stages)
- Practice Mode: Redesigned with same mechanics as real game
- Practice Mode: Return to practice map and auto-end on death
### Github
https://github.com/Dangel165/ChaosPVP
## Credits
- Plugin Development: Dangel
- Map Creation: 145wir, ssadw1348, gyangsongsanghyeoninde,galaxy0596
- Balance Adjustment: 145wir
- Planning: 145wir, ssadw1348
ChaosPVP is a free Minecraft Java mod. Compatible with Minecraft 1.21.11. Downloaded 12 times (via Hangar). Download it and open it directly in the game.
Explore more