Home
Overview
Kothar is a next-generation King of the Hill plugin with multiple capture modes, built-in economy, ranks, leaderboards, and more.
Features
- 🎯 Multiple Capture Modes: Classic Time, Points, and OVERLOAD multi-zone mode
- 📊 Leaderboards: GUI-based top wins/captures/XP viewer
- 🎨 Visual Displays: BossBar, Scoreboard, Hologram, and Waypoints support
- 🔗 Linked Arenas: Connect multiple KOTHs to share scores
- 🛡️ Anti-Randy System: Playtime requirements to prevent alts
- 📢 Discord Integration: Webhook notifications for events
- 🔄 Auto-Update: One-click updates from GitHub releases
- 🌍 Multi-Language: English, Spanish, French, Portuguese, Russian
Requirements
Server
- Type: Spigot or Paper (Paper recommended)
- Version: 1.20+
Dependencies
- Hard:
Apollo-Bukkit(required)
Optional Integrations (Soft Dependencies)
- PlaceholderAPI - Placeholders support
- ProtocolLib - Packet enhancements
- packetevents - Packet handling
- TAB - Tab list integration
- Clan Plugins - Team support:
- ClansX - Clan-based teams
- SimpleClans - Clan-based teams
- UltimateClans - Clan-based teams
- BetterTeams - Team support
- Factions - Faction support
- FactionsUUID - Faction support
- GangsPlus - Gang support
- Guilds - Guild support
- KingdomsX - Kingdom support
Quick Start
1. Installation
- Install Apollo-Bukkit (required dependency)
- Put
Kothar-<version>.jarinto yourplugins/folder - Start the server
2. Initial Configuration
Edit the generated configuration files:
plugins/Kothar/config.yml- Main settingsplugins/Kothar/database.yml- Database connectionplugins/Kothar/webhook.yml- Discord notifications (optional)
Commands
Player Commands
/kothar help- Show help menu/kothar list- List all KOTHs with coordinates/kothar info <name>- View KOTH details/kothar top- Open leaderboard GUI/kothar playtime [player]- Check Anti-Randy status/kothar shop- Open shop GUI/kothar rank- View rank info/kothar balance- View balance/kothar pay <player> <amount>- Transfer coins
Admin Commands
/kothar create <name>- Create a new KOTH/kothar delete <name>- Delete a KOTH/kothar start <name>- Start a KOTH event/kothar stop <name>- Stop a KOTH event/kothar select <name>- Enter zone selection mode/kothar setzone <name> <color>- Set overload zone color/kothar reload- Reload all configurations/kothar update- Check/download updates/kothar gui- Open admin GUI/kothar coins <give|take|set> <player> <amount>- Manage coins
Permissions
Admin Permissions
kothar.admin- All admin permissionskothar.admin.create- Create KOTH arenaskothar.admin.delete- Delete KOTH arenaskothar.admin.start- Start KOTH eventskothar.admin.stop- Stop KOTH eventskothar.admin.select- Zone selection modekothar.admin.setzone- Set overload zone colorskothar.admin.reload- Reload configurationskothar.admin.gui- Access admin GUIkothar.admin.update- Update pluginkothar.admin.coins- Manage coins
Player Permissions
kothar.list- View KOTH list with coordinateskothar.top- Open leaderboard GUIkothar.playtime- Check playtime statuskothar.info- View KOTH infokothar.command.shop- Use shopkothar.command.rank- View rankkothar.command.balance- View balancekothar.command.pay- Transfer coins
Bypass Permissions
kothar.bypass.antirandys- Bypass Anti-Randy check
Configuration
File Structure
plugins/Kothar/
+-- config.yml # Main configuration
+-- database.yml # Database settings
+-- webhook.yml # Discord webhook
+-- ranks.yml # Ranks configuration
+-- shops.yml # Shop items
+-- langs/
� +-- messages_en.yml # English
� +-- messages_es.yml # Spanish
� +-- messages_fr.yml # French
� +-- messages_pt.yml # Portuguese
� +-- messages_ru.yml # Russian
+-- koths/
+-- <kothName>.yml # Individual KOTH files
KOTH Setup
Classic KOTH (Time Mode)
- Create:
/kothar create ArenaName - Select Zone:
/kothar select ArenaName- Left-click = pos1
- Right-click = pos2
- Save Zone:
/kothar select ArenaName(run again to save) - Start:
/kothar start ArenaName
Points Mode KOTH
- Create KOTH (same as classic)
- Set mode via GUI or editor
- Configure capture-points value
- Players earn points per second in zone
- First to reach points limit wins
OVERLOAD Mode (4 Zones)
OVERLOAD requires 4 colored zones: RED, BLUE, GREEN, YELLOW
- Create and set mode to OVERLOAD:
/kothar create OverloadArena- Set mode to OVERLOAD via GUI
- Enter selection mode:
/kothar select OverloadArena - Set each zone color:
/kothar setzone OverloadArena RED/kothar setzone OverloadArena BLUE/kothar setzone OverloadArena GREEN/kothar setzone OverloadArena YELLOW
- Start:
/kothar start OverloadArena
Display Features
BossBar
- Shows at top of screen during active KOTH
- Displays: KOTH name, capturer, time remaining, progress
Placeholders:
{koth}- KOTH name{capturer}- Current capturer{time}- Time remaining{progress}- Capture progress bar
Scoreboard
- Sidebar display during events
- Two modes:
lines-activeandlines-overload
Hologram
- Floating text at KOTH center
- Shows real-time status from distance
- Configured in
config.ymlunderdisplay.hologram
Waypoints
- Client-side waypoints (Lunar, Badlion, Feather clients)
- Guides players to KOTH location
Leaderboard GUI
The /kothar top command opens a visual GUI showing:
- ?? Top Wins - Players with most victories
- ?? Top Captures - Players with most captures
- ? Top XP - Players with most XP earned
Linked Arenas
Link multiple KOTHs together to share scores:
- Open admin GUI:
/kothar gui - Click "Links" ? Select source KOTH
- Add target arena to link
- Enable "Share score with clan/team" if desired
Use Cases:
- Multiple arenas counting toward same score
- Clan/faction competitions across zones
- Tournament brackets
Discord Webhook
Configure in webhook.yml:
enabled: true
url: "https://discord.com/api/webhooks/..."
features:
event-start: true
event-end: true
winner-announce: true
Available Placeholders
{koth}- Arena name{winner}- Winner name{duration}- Event duration{points}- Final points{mode}- Capture mode
Update System
Check for Updates
/kothar update
Automatically downloads the latest .jar from GitHub releases.
Placeholders
Global Placeholders
{player}- Player name{koth}- KOTH name{time}- Time remaining{location}- Formatted X, Z coordinates{capturer}- Current capturer name{winner}- Winner name{progress}- Progress percentage{points}- Current points{team}- Team/clan name
Kothar List Placeholders
{koth}- KOTH name{status}- Active/Inactive/Scheduled{coords}- Center X, Z coordinates
Troubleshooting
"This command can only be executed by a player"
Cause: You ran a player-only command from console.
Fix: Execute the command in-game.
"Not enough players online�"
Cause: min-players setting > current online players.
Fix: Lower min-players in config or wait for more players.
"KOTH is not properly configured"
Cause: Missing zone, spawn point, or settings.
Fix:
- Use
/kothar select <name>to set zone - Set spawn point via GUI or
/kothar setcommand - Check all required settings in editor
"Shop purchases do nothing"
- Check console for command errors from
shops.yml - Validate material names and command syntax
"Update command returns 404 / fails"
- Verify repo settings and that a release exists
- If private repo: set
GITHUB_TOKEN
"Coins command fails for offline players"
If you run an offline-mode server, UUID resolution may differ from Mojang UUIDs.
Developer API
Events
Subscribe to Kothar events using Bukkit listeners:
@EventHandler
public void onKothStart(KotharStartEvent event) {
String kothName = event.getKoth().getName();
Bukkit.broadcastMessage("KOTH " + kothName + " has started!");
}
@EventHandler
public void onKothWin(KotharWinEvent event) {
Player winner = event.getWinner();
String kothName = event.getKoth().getName();
// Reward logic here
}
Available Events
KotharStartEvent- KOTH startsKotharEndEvent- KOTH endsKotharStopEvent- KOTH stopped manuallyKotharCaptureEvent- Player captures zoneKotharWinEvent- Player/team wins
API Access
// Get plugin instance
Kothar plugin = Kothar.getInstance();
// Access managers
KothManager kothManager = plugin.getKothManager();
DatabaseManager database = plugin.getDatabaseManager();
Made with ?? by marwannull