Compatibility
Minecraft: Java Edition
1.21.4
Platforms
Links
Creators
Details
Licensed MIT
Published 4 months ago
Updated 2 weeks ago
NBContest
NBContest is a lightweight, fast and highly customizable Minecraft plugin that allows you to host exciting server-wide contests such as farming, fishing, and mob hunting events. It encourages players to compete and earn configurable rewards.
✨ Features
- Farming Contest – Break a random crop (e.g., wheat, carrots, etc.)
- Fishing Contest – Catch as many fish as possible!
- Passive Mobs Contest – Kill cows, chickens, sheep and more!
- Hostile Mobs Contest – Kill hostile mobs like zombies and skeletons!
- Real-time HUD:
- BossBar showing time and global objective (with MiniMessage support)
- ActionBar showing individual player score (fully functional workaround)
- Top 3 Rewards system via command execution
- Automatic Event Scheduler via
config.yml:- Supports multiple times per event (e.g., start farming at 14:00, 18:30)
- Fully customizable timezone (e.g., Europe/Paris)
- Runs automatically every day, based on server clock
- Fully translatable via
messages.yml(MiniMessage ready) - Lightweight and optimized for performance
⌨️ Commands
| Command | Description | Permission |
|---|---|---|
/nbcontest start <event> |
Start a contest (farming, fishing, hostiles_mobs, passive_mobs) |
nbcontest.admin |
/nbcontest stop |
Stop the current contest | nbcontest.admin |
/nbcontest reload |
Reload config, schedule and language | nbcontest.admin |
🕒 Automatic Events
Auto-events can be scheduled using auto-events in the config. Each event can have multiple start times, and all times are based on the server's timezone.
You can configure the timezone with timezone: Europe/Paris (or any supported ID).
⚙️ Configuration (config.yml)
duration: 300 # Duration of the all event in seconds
# Timezone ID list (https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)
timezone: "Europe/Paris"
auto-events:
enabled: true
farming:
- "14:00"
- "18:30"
fishing:
- "15:00"
hostiles_mobs:
- "16:00"
passive_mobs:
- "17:00"
bossbar:
color: YELLOW # Options: PINK, BLUE, GREEN, RED, YELLOW, PURPLE, WHITE
# Contest configuration
objective:
fixed: false
amount: 100
min: 50
max: 500
# Block types for the contest
farming:
block-types:
- WHEAT
- POTATOES
- CARROTS
- BEETROOTS
- PUMPKIN
- MELON
- SUGAR_CANE
- COCOA_BEANS
- NETHER_WART
# Rewards (Max top 3 players)
rewards:
farming:
top1: 'give %player% minecraft:diamond 5'
top2: 'give %player% minecraft:emerald 10'
top3: 'give %player% minecraft:bread 32'
fishing:
top1: 'give %player% minecraft:trident 1'
top2: 'give %player% minecraft:cod 16'
top3: 'give %player% minecraft:salmon 16'
hostiles_mobs:
top1: 'give %player% minecraft:netherite_ingot 1'
top2: 'give %player% minecraft:iron_sword 1'
top3: 'give %player% minecraft:shield 1'
passive_mobs:
top1: 'give %player% minecraft:golden_apple 3'
top2: 'give %player% minecraft:cooked_beef 32'
top3: 'give %player% minecraft:leather 16'
💬 Messages (messages.yml)
contest-started: "<green>[NBContest] <yellow>The %event% <yellow>contest has started!"
contest-ended: "<red>[NBContest] The contest has ended!"
no-participants: "<gray>No players participated in this contest."
top-title: "<gold>Top 5 Players:"
top-line: "<gray>#%rank% <green>%player% <dark_gray>- <yellow>%score% %unit%"
farming-objective: "<gold>Goal: <yellow>Break %amount% %material%"
bossbar.farming: "<gold>Time: <white>%time%s <green>- <white>%remaining% %material% left"
bossbar.generic: "<gold>Time: <white>%time%s"
# Don't use MiniMessage for actionbar, it doesn't support color codes (Temporary workaround)
actionbar.farming: "&e%score% &f%material% harvested"
actionbar.fishing: "&e%score% &ffish caught"
actionbar.mobs: "&e%score% &fmobs killed"
event:
farming: "<aqua>Harvesting"
fishing: "<blue>Fishing"
hostiles_mobs: "<dark_red>Monster Hunt"
passive_mobs: "<dark_green>Culling"
unit:
fishing: fish caught
hostiles_mobs: mobs killed
passive_mobs: mobs killed
materials:
WHEAT: wheat
POTATOES: potatoes
CARROTS: carrots
BEETROOTS: beetroot
PUMPKIN: pumpkins
MELON: melons
SUGAR_CANE: sugar cane
COCOA_BEANS: cocoa beans
NETHER_WART: nether wart
🧩 Placeholder Usage
These placeholders are used across messages and rewards:
%event%– Event name (translated)%material%– Target material%amount%– Objective amount%score%– Player score%player%– Player name%unit%– Display unit (e.g., mobs killed)%time%– Time left (in seconds)%remaining%– Blocks or entities remaining to goal%rank%– Player's rank in leaderboard
🛠 Plugin Setup
- Place the
NBContest.jarin your/pluginsfolder. - Restart the server or use
/reload. - Customize
config.ymlandmessages.ymlas needed. - Use
/nbcontest start <event>to begin a contest or rely on the auto scheduler.
📸 Screenshots


❤️ Credits
Created with ❤️ by 6rius
Join our Discord for support, suggestions, or questions.



