Description
Create a Traps that build a configurable box around the player or paste a schematic, apply effects to victims/creator/clan, auto-protect with WorldGuard, restore all blocks after time, and prevent traps from even touching each other.
Features
- Trap types defined in config (infinite amount)
- schematic: false → hollow box (random block palette)
- schematic: true → paste .schem centered on player (schematics folder auto-created)
- Effects per type: multi-target (CREATOR/VICTIM/BOTH), amplifier, duration, apply_on_clanmates
- WorldGuard region for each trap (owner set, pvp flag supported)
- Active timer with DecentHolograms
- Block restoration (orientation, waterlogged, etc.)
- Global cooldown + per-player max traps
- Zero touching: traps won’t overlap or even touch each other
- Full localization via messages.yml
- Item display name and lore from config (non-italic by default)
Requirements
- Java 17+ (Paper 1.20+), Java 8+ for older Paper
- DecentHolograms (required)
Installation
- Drop GGTraps.jar into plugins/
- Start server once (creates folders: plugins/GGTraps/, schematics/, messages.yml)
- Place your .schem files into plugins/GGTraps/schematics/
- Configure traps in plugins/GGTraps/config.yml
- (Optional) Edit plugins/GGTraps/messages.yml
- /trap reload
Config
Code (Text):
# plugins/GGTraps/config.yml
hologram:
name-format: "&6&lTrap &7- &e{type}"
timer-format: "&a{seconds}s"
traps:
example_trap:
display-name: "&x&E&F&0&0&0&0Example Trap"
lore:
- "&7RMB to activate"
- ""
item: "NETHERITE_SCRAP"
schematic: false
size: { x: 7, y: 5, z: 6 }
duration_seconds: 30
cooldown_seconds: 10
worldguard:
protect: true
pvp: true
blocks:
- "OBSIDIAN"
- "CRYING_OBSIDIAN"
- "BLACKSTONE_SLAB"
effects:
effect1:
type: "SLOWNESS"
amplifier: 1
duration_seconds: 30
apply_on_clanmates: true
target: "VICTIM"
effect2:
type: "STRENGTH"
amplifier: 1
duration_seconds: 30
apply_on_clanmates: true
target: "CREATOR"
fancy_schematic:
display-name: "&dFancy Trap"
lore:
- "&7RMB to activate"
- ""
item: "BLAZE_ROD"
schematic: true
schematic-file: "fancy-trap.schem"
duration_seconds: 20
worldguard:
protect: true
pvp: true
effects:
effect1:
type: "SLOWNESS"
amplifier: 1
duration_seconds: 30
apply_on_clanmates: true
target: "VICTIM"
# no blocks needed (schematic mode)
global:
trap_use_delay_seconds: 2
max_traps_per_player: 5
Commands
- /trap give <player> <trapId> [amount]
- /trap clan <create|disband|invite|add|accept|deny|leave|kick|promote|demote|list|info>
Permissions
- ggtraps.command.use (true)
- ggtraps.command.give (op)
- ggtraps.command.reload (op)
- ggtraps.command.clan.create (true)
- ggtraps.command.clan.disband (op)
- ggtraps.command.clan.invite / ggtraps.command.clan.add (true)
- ggtraps.command.clan.accept / deny / leave / list / info (true)
- ggtraps.command.clan.kick / promote / demote (op)