Plugin Ideas

Explore what you can build. Copy a prompt, paste it in the chat, and get a working plugin.

35 ideas

👋

Custom Join Messages

beginnerReady to Use
CommandsEventsSQLiteBeginnerReady to Use
Create a plugin where players can set a custom join message with /joinmsg <message>. When they join the server, their custom message is broadcast instead of the default "Player joined the game." Support color codes with & symbols. Save messages so they survive restarts. Admins can reset a player's message with /joinmsg reset <player>.

Custom per-player join messages, legacy color code parsing, SQLite persistence, admin override

📊

Player Stats Tracker

advancedNeeds Java Knowledge
SQLitePlaceholderAPIGUIEventsSoft DependencyAdvancedNeeds Java Knowledge
🔧 This prompt references Java plugin APIs and is intended for developers.
Create a plugin called ServerStats that tracks player statistics and integrates deeply with PlaceholderAPI. Tracked stats (per player, saved to SQLite): - Total kills (PvP only — exclude NPC kills if Citizens is present) - Total deaths - Kill/death ratio (calculated, not stored) - Total blocks mined - Total playtime in minutes (tracked while online, accumulated across sessions) - Current kill streak (resets on death) - Best kill streak ever PlaceholderAPI integration — expose these placeholders: - %serverstats_kills% - %serverstats_deaths% - %serverstats_kdr% - %serverstats_blocks_mined% - %serverstats_playtime% - %serverstats_streak% - %serverstats_best_streak% - %serverstats_rank% — the player's position on the kills leaderboard (e.g. "#3") Also consume placeholders from other plugins in config messages. For example, the kill message in config.yml should support placeholders like %player_name% and %vault_eco_balance% so server owners can customize messages with data from any plugin. Commands: - /stats — show your own stats - /stats <player> — show another player's stats (even if offline) - /stats top — show top 10 players by kills in a paginated GUI with player heads Config messages should all be customizable in config.yml using MiniMessage formatting AND support PlaceholderAPI placeholders from other plugins. Requirements: - PlaceholderAPI is a soft dependency — if not installed, the plugin works normally but doesn't register placeholders - The PlaceholderExpansion must survive /reload - The expansion's onRequest must handle null player (return "0" or "N/A") - The expansion must return cached data — it must never query the database from onRequest - Playtime tracking must use a repeating task that increments every minute - Kill tracking must check if the killed entity is a Citizens NPC and skip it - All PlaceholderAPI imports must be isolated so the plugin loads without PAPI present

PlaceholderAPI integration with custom placeholders, SQLite persistence, cached data for scoreboard/tab/hologram display

💰

Bounty Hunter (Detailed)

advancedNeeds Java Knowledge
SQLiteGUIVaultEventsCommandsSoft DependencyAdvancedNeeds Java Knowledge
🔧 This prompt references Java plugin APIs and is intended for developers.
Create a Minecraft plugin called "BountyHunter" with the following features: Core mechanic: Players can place bounties on other players using in-game currency. When a bounty target is killed by another player, the killer collects the bounty reward. Multiple bounties on the same target merge into a single total — the killer receives the full merged amount. Bounties persist until the target is killed; placers cannot cancel bounties. Commands: /bounty set <player> <amount> — place a bounty on a player (minimum 100 coins) /bounty list — opens a paginated GUI showing all active bounties sorted by reward amount /bounty top — shows the top 5 bounty hunters by total bounties collected /bounty check <player> — shows the current bounty on a specific player /bounty balance — shows the player's current balance GUI: The bounty list should be a chest inventory GUI with player heads showing the target's name, bounty amount, and who placed it. Clicking a head shows more details. If there are more than 45 active bounties, paginate with forward/back navigation buttons. Economy: Use Vault as a soft dependency. If Vault and an economy provider are installed, use them for all balance operations. If Vault is not present, fall back to a built-in SQLite-backed coin system where new players start with 0 coins. The plugin must work in both modes without any configuration — detect Vault on startup and choose automatically. Events: When a player with a bounty is killed, broadcast a server-wide message. When a bounty is placed, notify the target. Play an ender dragon death sound to the killer when they collect a bounty. Config options: minimum bounty amount, maximum bounty amount, bounty tax percentage (deducted at placement, removed from economy), whether to allow self-bounties Messages: All player-facing messages should be configurable in a messages section in config.yml. Permissions: bounty.set, bounty.list, bounty.top, bounty.admin Data storage: SQLite for persistent bounty data and leaderboard stats. Coin balances stored in SQLite only when Vault is not available.

Bounty system with Vault soft dependency, SQLite fallback economy, paginated chest GUI, bounty stacking, configurable tax and messages

Source
💰

Bounty Hunter (Simple)

intermediateReady to Use
SQLiteGUICommandsIntermediateReady to Use
Create a Bounty Hunter plugin with a built-in coin system. Players earn coins from killing mobs (10 coins per mob) and can place bounties on other players using /bounty set <player> <amount>. The player must have enough coins and the amount must be at least 100. Multiple bounties on the same target stack into one total. When a player kills someone who has a bounty, they collect the full reward. Commands: /bounty set <player> <amount> — place a bounty /bounty list — show all active bounties in a GUI /bounty balance — check your coin balance Track kills and bounty earnings per player in SQLite. Include a config.yml with a minimum bounty amount and customizable messages.

Bounty system with built-in coin economy, SQLite persistence, kill tracking, configurable messages

💎

Cosmetic Rank Perks

intermediateReady to Use
LuckPermsCommandsEventsSoft DependencyIntermediateReady to Use
Create a cosmetic rank perks plugin. I have 3 donation ranks on my server (VIP, MVP, Legend) managed by LuckPerms. I need a plugin that gives each rank cosmetic perks: VIP: colored chat name (green), particle trail when walking (happy villager particles), /nick command to set a nickname with color codes MVP: everything VIP gets plus a golden particle ring around the player every 3 seconds, /hat command to wear any block as a helmet, join message "★ MVP PlayerName has arrived!" Legend: everything MVP gets plus /fly in lobby world only (disable in survival worlds), end rod particle trail instead of happy villager, custom join message with firework sound effect Check permissions (e.g. ranks.vip, ranks.mvp, ranks.legend) to determine which perks a player gets. All perks should be toggleable per player with /perks toggle <perk>. Particle trails should only show to nearby players within 16 blocks to avoid lag. Clean up all particle tasks when a player logs out.

Permission-based cosmetic perks — particle trails, /nick, /hat, /fly (world-restricted), custom join messages, per-player toggles

🎁

Crate & Key System

intermediateReady to Use
GUIEventsCommandsSQLiteIntermediateReady to Use
Build a crate and key system for my server store. Admins place a crate at a location with /crate create <name>. Players right-click the crate while holding a key item (a tripwire hook named after the crate) to open it. When opened, show an animated GUI — cycle through random items in the center slot for 3 seconds, slowing down, then land on the reward. Play sounds during the animation (note block clicks speeding up, then a level-up sound on the final reward). Rewards are configured per crate in config.yml with weighted chances: - Common items (60%): iron ingots, food, arrows - Rare items (30%): diamonds, enchanted tools - Legendary items (10%): custom-named items with enchantments, large coin rewards Admins give keys with /crate givekey <player> <crate> <amount>. Track total crates opened per player in SQLite. /crate preview <name> shows the possible rewards without opening. The crate block should have floating text above it showing the crate name and a particle effect (end rod particles circling above it). Config for all reward items, chances, and messages.

Animated crate opening GUI with weighted rewards, key items, floating text, particle effects, SQLite tracking, admin key distribution

🗳️

Vote Rewards

intermediateReady to Use
CommandsEventsSQLiteGUIIntermediateReady to Use
⚠️ Requires NuVotifier plugin installed on the server to receive vote events.
Create a vote reward plugin. When a player votes (detected via the Votifier/NuVotifier vote event), they receive rewards and their vote streak is tracked. Rewards per vote: 5 diamonds, 500 coins (built-in economy), and 1 crate key (a named tripwire hook item). Broadcast a thank-you message to the server when someone votes. Vote streaks: track consecutive daily votes. At 7-day streak, give a bonus reward (32 diamonds). At 30-day streak, give a special named item. If a player misses a day, reset the streak to 0. Commands: - /vote — shows a link to the voting site (configurable in config.yml) and your current streak - /vote top — GUI showing top 10 voters this month with player heads - /vote rewards — GUI showing the streak milestones and what you get Store vote counts and streaks in SQLite. Config for reward items, streak milestones, vote site URL, and all messages.

Votifier integration, daily vote streaks with milestone rewards, built-in economy, leaderboard GUI, configurable rewards

🏆

Seasonal Battle Pass

advancedReady to Use
SQLiteGUIEventsCommandsScheduled TasksAdvancedReady to Use
Create a battle pass plugin with a free track and a premium track. Players earn XP from playing (mining, killing mobs, PvP kills, completing daily challenges). XP fills a progress bar across 30 tiers. Free track rewards (every tier): small amounts of items (iron, food, arrows). Premium track rewards (every tier): better items, custom-named gear, cosmetic items, coins. Players unlock premium track with /battlepass upgrade (checks for permission battlepass.premium — server owner grants this through their store/LuckPerms). /battlepass — opens the main GUI showing all 30 tiers in a scrollable view. Each tier shows the free reward on top and premium reward on bottom. Completed tiers glow (enchanted). Current tier is highlighted. Click a completed tier to claim the reward. /battlepass challenges — shows 3 daily challenges that refresh every 24 hours (e.g., "Mine 100 blocks", "Kill 20 mobs", "Catch 5 fish"). Each completed challenge gives bonus XP. XP sources (configurable in config.yml): blocks mined, mobs killed, players killed, fish caught, distance walked. Season lasts 30 days (configurable). When the season ends, unclaimed rewards are lost and everything resets. Store all progress in SQLite. Cache active player data in memory.

Battle pass with free/premium tracks, 30 tiers, daily challenges, multiple XP sources, seasonal reset, scrollable GUI

🛍️

Cosmetic Shop

intermediateReady to Use
GUIEventsCommandsSQLiteIntermediateReady to Use
Create a cosmetic shop where players spend in-game coins on visual effects. /shop opens a GUI with categories: Particle Trails (show behind the player when walking): - Flame trail — 100 coins - Heart trail — 200 coins - End rod trail — 500 coins Kill Effects (play when the player kills another player): - Lightning strike on kill — 300 coins - Firework burst on kill — 500 coins Chat Prefixes (shown before the player name in chat): - ★ prefix — 150 coins - ♦ prefix — 300 coins - ✦ prefix — 500 coins Players can only have one active item per category. Purchased items are permanent — buy once, equip/unequip anytime. /shop opens the main menu, clicking a category shows items with buy/equip buttons. Already-owned items show "Equip" instead of the price. The currently equipped item has an enchant glow. Built-in coin system with SQLite. Players earn coins from mob kills (5 per mob) and PvP kills (25 per kill). /coins shows balance. /coins pay <player> <amount> to transfer coins. All prices, coin rewards, and messages configurable in config.yml.

Cosmetic shop GUI with particle trails, kill effects, chat prefixes — built-in coin economy, permanent purchases, equip/unequip system

❄️

Spleef Arena

intermediateReady to Use
EventsCommandsScheduled TasksIntermediateReady to Use
I want a spleef plugin. Players join an arena, stand on a snow floor, and try to break the blocks under each other to make them fall into lava below. Last player standing wins. It needs a lobby where players wait until enough people join (at least 2), then a 10 second countdown starts. During the countdown show a boss bar with the time left and big title numbers (3, 2, 1, GO!). If someone leaves during countdown and we drop below 2 players, cancel it and go back to waiting. During the game players can only break snow blocks, no PvP damage, no fall damage. When a player falls below y=50 they're eliminated — put them in spectator mode so they can watch. When only one player is left, announce the winner with a title, wait 5 seconds, then send everyone back to the lobby. The arena floor needs to reset after each game so the snow blocks come back. Players should keep their real inventory — save it when they join and give it back when the game ends. Commands: /spleef join, /spleef leave, /spleef setlobby, /spleef setarena (sets the two corners of the arena region). Config for min/max players, countdown time.

Arena state machine, BossBar countdown, spectator mode, inventory save/restore, snow floor reset, configurable lobby

❄️

Spleef Arena with FAWE Reset

advancedReady to Use
FAWEEventsCommandsScheduled TasksAdvancedReady to Use
⚡ Uses FastAsyncWorldEdit for instant arena resets — no TPS impact even on large arenas. FAWE must be installed on the server.
Create a spleef plugin that saves the arena floor as a schematic and resets it between rounds using FAWE. Setup: Admin defines the arena floor region with /spleef setcorner1 and /spleef setcorner2, sets a lobby spawn with /spleef setlobby, then saves the floor with /spleef save. The save captures the current blocks as a FAWE schematic file stored in the plugin folder. Gameplay: Players join with /spleef join. When enough players are in the lobby, a countdown starts with a BossBar timer. During the game, players break blocks under each other — only shovels can break arena blocks. When a player falls below the floor they're eliminated and put in spectator mode. Last player standing wins. Arena reset: After each round ends, the plugin pastes the saved schematic back asynchronously using FAWE — no server lag, no TPS drop, even for large arenas. Players are teleported to the lobby before the paste starts. Once the paste completes, the arena is ready for the next round. The schematic should be cached in memory after the first load so repeated resets don't read from disk every time. All FAWE operations must run on an async thread — the main thread should never block. Commands: /spleef join, /spleef leave, /spleef setcorner1, /spleef setcorner2, /spleef setlobby, /spleef save, /spleef reload. Config for min/max players, countdown seconds, fall threshold.

FAWE schematic save/restore for lag-free arena resets, async paste with in-memory clipboard caching, full arena state machine

⚔️

Team Deathmatch

intermediateReady to Use
SQLiteEventsCommandsScheduled TasksPer-PlayerIntermediateReady to Use
Build me a team deathmatch minigame. Two teams (red and blue), first team to 25 kills wins. Players get auto-assigned to the smaller team when they join. Each team has their own spawn point. When you die you respawn at your team's spawn after 3 seconds. No death screen — skip it and go straight to respawn. During the 3 second respawn wait, put the player in spectator mode. I want a scoreboard sidebar showing: game time, your kills, your deaths, red team score, blue team score. It should update live without flickering. Team members should have colored name tags (red/blue) and no friendly fire. Show a boss bar with the score difference. When a team hits 25 kills: announce winners with a big title, play a sound, wait 5 seconds, then teleport everyone to lobby and restore their stuff. Commands: /tdm join, /tdm leave, /tdm setspawn red/blue, /tdm setlobby. Config for kills to win, respawn delay, max players per team.

Team assignment, flicker-free scoreboard sidebar, colored name tags, friendly fire prevention, instant respawn, kill tracking with SQLite

🏹

Hunger Games

advancedReady to Use
SQLiteGUIEventsCommandsScheduled TasksAdvancedReady to Use
I want a hunger games / survival games plugin. Players join a lobby, when we have 8+ players a 30 second countdown starts. Everyone gets teleported to spawn points around the map in a circle. There's a 10 second grace period where you can't take damage, then it's free for all — PvP, environment damage, everything. The map should have chests scattered around that get filled with random loot from a configurable loot table when the game starts. After 10 minutes if there's still more than 1 player alive, a border starts shrinking (just damage players outside a radius from center, don't need worldborder). When you die you become a spectator. Spectators can watch but shouldn't be able to teleport to players by clicking them in tab. Last player alive wins. The arena needs to fully reset after each game — blocks broken/placed during the game should go back to how they were, and chests need to be refilled. Track kills and wins in a database. Show a scoreboard with alive players count, kills, and time remaining. Commands: /hg join, /hg leave, /hg start (force start), /hg addspawn (add a spawn point at current location), /hg addchest (mark a chest as a loot chest), /hg setlobby, /hg stats [player]. Permissions for admin commands.

Full survival games with arena state machine, loot chests, border shrink, block change tracking and restoration, SQLite stats, spectator mode

🎯

Bingo Board

intermediateReady to Use
GUIEventsCommandsIntermediateReady to Use
💡 This is a brainstorming prompt. Instead of building directly, the agent will refine your idea and suggest improvements before generating code.
Review and improve the following plugin idea. Suggest better mechanics, missing edge cases, and a clearer structure. Then rewrite it as a ready-to-build prompt. My plugin idea: --- Bingo plugin that creates a GUI with a bingo board in the size of 5x5 slots. Each slot has a random item and an amount of that item. To collect the bingo slots you need to have that item in the required amount in your inventory. Each bingo slot gives the bingo player one bingo point. ---

Uses the "Improve My Plugin Idea" workflow — agent refines a rough concept into a build-ready prompt

🚩

Team Walls (CTF)

advancedReady to Use
ProtocolLibPer-PlayerCommandsAdvancedReady to Use
I'm building a capture-the-flag minigame and I need team-colored walls. Admins select a wall region with /ctf wall1 and /ctf wall2 for the corners. When the game starts with /ctf start, the server places barrier blocks in the wall region (so nobody can see through), then sends per-player block change packets — red team players see red stained glass and blue team sees blue stained glass. The actual server-side blocks are barriers; the colored glass is client-side only via packets. When the game ends with /ctf stop, revert the barriers to whatever was there before. Assign teams with /ctf team red <player>. Use MULTI_BLOCK_CHANGE packets for large walls to avoid lag.

Per-player BLOCK_CHANGE packets, MULTI_BLOCK_CHANGE for performance, team assignment, region selection

📜

NPC Quest System

advancedNeeds Java Knowledge
CitizensSQLiteEventsSoft DependencyCommandsAdvancedNeeds Java Knowledge
🔧 This prompt references Java plugin APIs and is intended for developers.
Create a quest system plugin called VillageQuests that uses Citizens NPCs. The plugin should have 3 quest NPCs that admins place with commands: 1. A "Lumberjack" quest giver NPC: - Wears leather armor and holds an iron axe - Has floating text above saying "Lumberjack" and "Right-click for a quest" - Looks at nearby players - When right-clicked, gives the player a quest to chop 20 oak logs - When the player returns with 20 oak logs, the NPC takes the logs and rewards 5 diamonds - Shows quest progress in the action bar when the player breaks oak logs 2. A "Hunter" quest giver NPC: - Wears chainmail armor and holds a bow - Quest: kill 10 zombies. On completion, rewards a diamond sword named "Zombie Slayer" in red 3. A "Miner" quest giver NPC: - Wears iron armor and holds an iron pickaxe - Quest: mine 30 stone blocks. Rewards 10 gold ingots Admin commands: - /vq place <lumberjack|hunter|miner> - /vq remove <lumberjack|hunter|miner> - /vq reset <player> Player commands: - /vq status — shows current active quests and progress Requirements: - Players can only have one active quest at a time - Quest progress saved to SQLite - If Citizens is not installed, the plugin should still load but disable NPC features - NPCs should be cleaned up if the plugin is disabled - Players who disconnect mid-quest keep their progress when they rejoin

Citizens NPC integration with click handlers, SQLite quest persistence, progress tracking, item turn-in, configurable rewards

🗡️

Guard NPCs with AI

advancedNeeds Java Knowledge
CitizensEventsSoft DependencyCommandsAdvancedNeeds Java Knowledge
🔧 This prompt references Java plugin APIs and is intended for developers.
Create a plugin called TownGuards that spawns NPC guards automatically when the server starts. Core mechanic: - Admins define guard posts with /guard addpost <name> at their current location. Posts are saved to config. - When the server starts, the plugin spawns a guard NPC at every saved post with custom skins. - Each guard NPC has a custom Trait called GuardTrait that stores the post name and a kill counter that persists across restarts. - Guards look at nearby players and have floating text showing their post name and kill count. Guard behavior: - Guards patrol in a 10-block radius around their post - When a hostile mob enters within 8 blocks, the guard pathfinds to it and deals damage - Guards should be invulnerable to player damage Player interaction: - Right-clicking a guard shows post name, total kills, and uptime - The click handler must be inside the GuardTrait Important requirements: - Guards must spawn AFTER Citizens is fully loaded - If Citizens is not installed, the plugin should load but skip NPC spawning - If a guard is killed externally, respawn it within 5 seconds - Handle /reload correctly - All guard NPCs cleaned up on disable - Event handlers must check if entities are NPCs before treating them as real mobs

Citizens custom traits, pathfinder AI, hologram text, watchdog respawn, CitizensEnableEvent timing

🏰

Guild System

advancedNeeds Java Knowledge
SQLiteCitizensLuckPermsVaultPlaceholderAPIGUISoft DependencyAdvancedNeeds Java Knowledge
🔧 This prompt references Java plugin APIs and is intended for developers.
Create a guild plugin for an RPG server. Players can create guilds, invite friends, and level up their guild by playing together. Mining ores, killing mobs, and PvP kills all give the guild XP. There are 5 guild levels — each requires double the XP of the previous level (Level 1: 500 XP, Level 2: 1000, Level 3: 2000, Level 4: 4000, Level 5: 8000). Higher levels unlock perks: Level 2 increases max members from 5 to 10, Level 3 adds a gold chat prefix, Level 4 unlocks guild home teleport, Level 5 increases max members to 20. Commands: - /guild create <name> — create a guild (costs 1000 coins via Vault if available, free otherwise). Names max 16 characters, alphanumeric only. - /guild invite <player>, /guild accept, /guild leave, /guild kick <player>, /guild disband - /guild info — show guild details - /guild list — show all guilds in a GUI sorted by level - /guild chat — toggle private guild-only chat - /guild home and /guild sethome — teleport to guild base (unlocked at level 4, 5 second warmup that cancels on movement) Optional integrations (all soft dependencies — plugin works without any of them): - Citizens: a Guild Master NPC that players right-click to see guild info - PlaceholderAPI: expose %guildsystem_name% and %guildsystem_level% - LuckPerms: set guild name as a meta tag on join/leave for chat formatting - Vault: charge for guild creation Data storage: SQLite. Cache guild data in memory and write changes asynchronously.

Guild system with leveling, perks, and optional Citizens/PlaceholderAPI/LuckPerms/Vault integration — all as soft dependencies

🧟

Pet Zombies & Dungeon Boss

intermediateReady to Use
Custom Mob AIEventsCommandsIntermediateReady to Use
Create a plugin with two features: 1. Pet Zombies — Right-clicking a zombie with a golden apple tames it. The zombie stops attacking players, follows its owner within 16 blocks, and fights hostile mobs that attack the owner. It should still swim and look around naturally. Store the owner so it persists. When the owner logs off, the pet stands still. /pet list shows your pets. 2. Dungeon Boss — /boss spawn creates a zombie boss with 200 HP at the player's location. The boss has two phases: - Phase 1 (above 50% health): chases and melees the nearest player at 1.5x speed - Phase 2 (below 50% health): runs away from players and spawns 2 zombie minions every 10 seconds The boss should have zero vanilla zombie behavior — only the custom phase goals. /boss remove despawns it. All custom mobs must be cleaned up when the plugin disables. Config for boss health, phase threshold, pet follow distance, and summon interval.

Custom mob AI with goal manipulation — pet follow/defend behavior, two-phase boss with pathfinding and minion summoning

👥

Friend System

advancedNeeds Java Knowledge
SQLitePlaceholderAPICommandsSoft DependencyAdvancedNeeds Java Knowledge
🔧 This prompt references Java plugin APIs and is intended for developers.
Create a plugin called FriendSystem that lets players add friends, and integrates with PlaceholderAPI to expose both regular and relational placeholders. Core features: - /friend add <player> — send a friend request - /friend accept — accept the most recent pending request - /friend deny — deny the most recent pending request - /friend remove <player> — remove a friend - /friend list — show your friends list with online/offline status - /friend count — show how many friends you have PlaceholderAPI — regular placeholders: - %friendsystem_count%, %friendsystem_online%, %friendsystem_list% - %friendsystem_top_1%, %friendsystem_top_2%, %friendsystem_top_3% - %friendsystem_top_1_count% - %friendsystem_status_<playername>% PlaceholderAPI — relational placeholders: - %rel_friendsystem_are_friends% — "Friends" or "Not Friends" - %rel_friendsystem_mutual% — count of mutual friends Config messages must support external PlaceholderAPI placeholders. The raw config string must go through PlaceholderAPI resolution before MiniMessage parsing. Requirements: - PlaceholderAPI is a soft dependency - The expansion must override persist() returning true - onRequest must return cached data only - All PlaceholderAPI imports isolated in a separate class

PlaceholderAPI with relational placeholders, sub-parameter parsing, SQLite bidirectional friendships

🎥

Minecraft But... Challenge

beginnerReady to Use
EventsCommandsBeginnerReady to Use
Create a challenge plugin: every time you break a block, a random mob spawns at that location. /mobspawn start to activate, /mobspawn stop to deactivate. Show the mob name and a running count in the action bar. Play a sound when each mob spawns.

Lightweight challenge mechanic, toggle command, action bar feedback, sound effects — built in under 3 minutes

👹

Boss Fight Event

intermediateReady to Use
Display EntitiesEventsScheduled TasksCommandsIntermediateReady to Use
Create a plugin called BossShowdown for my server's boss fight events. When an admin runs /boss start, a boss fight event begins at the admin's location: - A floating title appears 3 blocks above the ground saying "⚔ BOSS FIGHT ⚔" in bold red that all nearby players can see. It should always face the player looking at it. No dark background behind the text. - Below the title, show a health bar as a second line of floating text that updates as the boss takes damage: "████████░░ 80%" — green when above 50%, yellow 25-50%, red below 25%. - The boss itself is a Wither Skeleton with custom name "Dark Knight" and increased health (100 HP). - Place a decorative beacon block underneath the boss spawn point, floating 0.5 blocks off the ground, slowly rotating. When players deal damage to the boss: - Show floating damage numbers at the hit location that drift upward and disappear after a second. Red text, something like "-12.5 ❤" When the boss dies: - The floating title changes to "✦ VICTORY ✦" in gold for 5 seconds, then everything despawns - Drop a reward chest at the boss location /boss stop — cancels the event and cleans up all the floating text and decorations Everything should be cleaned up properly if the server restarts or the plugin is disabled — no leftover floating text or ghost blocks.

Display entities for floating text and health bars, damage event tracking, animated visual effects, boss state management

⚔️

Combat Kit

intermediateNeeds Java Knowledge
EventsCommandsScheduled TasksIntermediateNeeds Java Knowledge
🔧 This prompt references Java plugin APIs and is intended for developers.
Create a plugin called CombatKit for PvP servers. Custom weapon abilities: - Diamond sword named "Frost Blade" — when you right-click while holding it, all players within 5 blocks get Slowness II for 3 seconds. 10 second cooldown per player. - Golden axe named "Thunder Strike" — when you right-click, lightning strikes the block you're looking at (up to 30 blocks away). 15 second cooldown. - The item is identified by its display name, not material alone. Cooldown commands: - /heal — heals the player to full health. 60 second cooldown. Ops bypass the cooldown. - /feed — fills the player's hunger bar. 30 second cooldown. Arena countdown: - /arena start — begins a 10 second countdown visible to all players. Each second shows a title with the number. At 3 seconds, play a note block sound. At 0, broadcast "FIGHT!" in red and give all players Speed I for 5 seconds. - /arena stop — cancels the countdown if running. All cooldowns should use a per-player map that tracks the last usage timestamp.

Custom item abilities, per-player cooldowns, arena countdown timer, title animations, sound effects

🛡️

Staff Tools Suite

advancedNeeds Java Knowledge
ProtocolLibCommandsPer-PlayerSoft DependencyAdvancedNeeds Java Knowledge
🔧 This prompt references Java plugin APIs and is intended for developers.
Create a plugin called StaffTools for server moderators. Features: - /disguise <mob> — disguise yourself as any mob type. Other players see you as that mob. You can still move, chat, and use commands normally. /undisguise to revert. - /vanish — completely hide from other players. Remove from tab list, hide entity, no join/quit message. Staff with permission can still see vanished players. /unvanish to revert. - /fakesign <player> — open a sign editor for the target player. When they submit, you see what they typed. - /staffboard — toggle a per-player sidebar scoreboard showing: online players, TPS, your current disguise status, and number of vanished staff. Requirements: - ProtocolLib is a soft dependency — if not installed, all commands tell the user "ProtocolLib required" - Disguises must handle: spawn packets, metadata packets, and entity destroy/respawn on world change - Vanish must remove the player from the tab list (PLAYER_INFO packet) and hide their entity (ENTITY_DESTROY) from non-staff - The scoreboard must be packet-based (not Bukkit Scoreboard API) so each player has independent content - All packet listeners must be cleaned up on plugin disable - Fake entity IDs must not collide with real entity IDs

Packet-level disguises, vanish with tab list removal, per-player scoreboard, fake sign editor, ProtocolLib soft dependency

👻

Ghost Pets

advancedReady to Use
ProtocolLibPer-PlayerCommandsAdvancedReady to Use
I want a cosmetic pet plugin. Players run /pet to get a glowing ghost pet that follows them around. The pet should be invisible but have the glowing outline effect so you can see it through walls. It should have the player's name floating above it in green. Only the pet owner can see their own pet. /pet off to dismiss it. Pets don't need to survive restarts.

Fake entity via packets with WrappedDataWatcher metadata — invisibility flag, glowing effect, custom name, per-player visibility

💫

Packet Holograms

advancedReady to Use
ProtocolLibPer-PlayerSQLiteCommandsAdvancedReady to Use
I need a hologram plugin for my server. Admins place floating text in the world with /holo create <text> and it stays there permanently. Support multiple lines with \n. Players walking nearby should see them, players far away shouldn't get the packets. /holo list, /holo remove <id>, /holo edit <id> <new text>. Save to config so they survive restarts. Don't use armor stands — use packets so they don't lag the server.

Packet-based holograms with SPAWN_ENTITY + ENTITY_METADATA, view range tracking, persistent storage

📋

Per-Player Scoreboard

advancedReady to Use
ProtocolLibPer-PlayerScheduled TasksEventsAdvancedReady to Use
I want a sidebar scoreboard that shows each player their own stats. It should update every second and show: server name at the top, online player count, server TPS, the player's kills and deaths (tracked by the plugin), their K/D ratio, their ping, and the server IP at the bottom. Players can toggle it off with /board. Don't use the Bukkit scoreboard API — I've heard it causes conflicts with other plugins. Use packets instead so each player gets their own board.

Packet-based per-player scoreboards via SCOREBOARD_OBJECTIVE + SCOREBOARD_SCORE + SCOREBOARD_DISPLAY_OBJECTIVE

📑

Custom Tab List

advancedReady to Use
ProtocolLibPer-PlayerScheduled TasksAdvancedReady to Use
Make my tab list look professional. I want a gold header with my server name and a footer showing player count and TPS that updates every 5 seconds. Sort players by rank: players with the permission tablist.admin show at the top in red, tablist.mod in yellow, and everyone else in white. Also add a few fake entries at the top of the list showing server info like online count and TPS. Use ProtocolLib for this.

PLAYER_INFO and PLAYER_LIST_HEADER_FOOTER packets, fake entries, per-player rank-based formatting

✏️

Sign Text Input

advancedReady to Use
ProtocolLibCommandsAdvancedReady to Use
I need a way to get text input from players without using chat. When a player runs /rename, open a sign editor where they can type a name — but don't actually place a sign in the world. When they submit, use what they typed to rename the item they're holding. Also make /search that opens a sign editor, and whatever they type gets used to search through a list of warps and show matching results. If they submit blank, show all warps.

Fake sign editor via BLOCK_CHANGE + OPEN_SIGN_EDITOR packets, UPDATE_SIGN interception, item rename

🔍

Anti-Cheat Monitor

advancedReady to Use
EventsScheduled TasksPer-PlayerCommandsAdvancedReady to Use
Build me a basic anti-cheat that catches the obvious stuff. I want it to detect speed hacking (moving way too fast), fly hacking (floating in survival mode), and no-fall (taking no damage from big falls). It should account for legitimate stuff like speed potions, creative mode, and elytra so it doesn't false flag. When it catches someone, alert my staff and auto-kick after repeated violations. /watchdog status to see how many flags, /watchdog reset <player> to clear someone's record.

Behavioral detection for blatant speed, flight, and no-fall hacks — false-positive mitigation, staff alerts, escalating punishment

Floating Holograms (Display Entities)

intermediateReady to Use
Display EntitiesCommandsSQLiteIntermediateReady to Use
I need a hologram plugin. Admins place floating text in the world with /holo create <text>. Support multiple lines. /holo list, /holo remove <id>, /holo edit <id> <new text>. Save to config so they survive restarts.

Display entities for floating text, persistent storage, admin commands — no ProtocolLib needed

🔒

Region Protection

intermediateReady to Use
SQLiteCommandsEventsIntermediateReady to Use
Build a region protection plugin. Players select two corners with /region pos1 and /region pos2, then claim the area with /region claim <name>. Inside their region, other players can't break or place blocks. /region trust <player> lets specific players build. /region untrust <player> removes access. /region info shows the owner, trusted players, and region size. /region unclaim removes the region. Regions are saved to SQLite. Limit each player to 3 regions with a max size of 50x50 blocks.

SQLite region storage, two-point selection, block break/place event cancellation, trust system, size limits

🛡️

Anti-Cheat Suite

advancedReady to Use
EventsCommandsScheduled TasksSQLiteAdvancedReady to Use
Make me an anti-cheat plugin. I want it to detect flying, x-ray mining patterns, kill aura, speed hacking, and auto clicker. Detect if someone has hacked client mods installed. Kick on first offense, ban for 3 hours on second offense. Staff should get alerts when someone is caught.

Behavioral anti-cheat with flight, x-ray mining patterns, kill-aura, speed, auto-clicker detection — hacked client brand/channel detection, escalating kick/ban, SQLite persistence, staff alerts. For ore hiding, the agent will recommend Paper's built-in anti-xray instead.

⛏️

Prison Mines & Prestige

advancedReady to Use
SQLiteVaultGUICommandsEventsScheduled TasksSoft DependencyAdvancedReady to Use
I need a prison mines plugin. Players should be able to rank up from A to Z by mining and selling ores. Each rank unlocks a new mine with better blocks. There should be an auto-sell toggle so you don't have to manually sell, and a prestige system once you hit rank Z that gives you a sell multiplier. Admins need commands to create and configure mines (set the region, block composition, reset timer). Oh and mines should reset automatically and not lag the server when they do.

Prison core with mine reset system, rank progression A-Z, auto-sell with Vault economy, prestige multipliers, admin mine management

🏝️

Skyblock Islands

advancedReady to Use
SQLiteGUICommandsEventsScheduled TasksAdvancedReady to Use
Make me a skyblock plugin where players can create their own island in a void world, invite friends to it, and have an island level based on what blocks they've placed. There should be a /is command with subcommands for create, home, invite, accept, kick, and level. Islands should start from a basic template (grass platform with a tree and a chest with starter items). I want a GUI for managing island settings and seeing the top islands leaderboard. Players shouldn't be able to reach other people's islands by bridging.

Skyblock core with void world generation, island templates, co-op invites, block-based leveling, leaderboard GUI, bridge prevention