ModsJava
[1.21.4] NBContest - Competitive Event
⚔ NBContest ⚔ Lightweight & Customizable Contest Plugin Host exciting server-wide contests! Farming • Fishing • Mob Hunting • Real-time Leaderboards ✨…
⬇ Download on Spigot
⚔ NBContest ⚔
Lightweight & Customizable Contest Plugin
Host exciting server-wide contests!
Farming • Fishing • Mob Hunting • Real-time Leaderboards
Lightweight & Customizable Contest Plugin
Host exciting server-wide contests!
Farming • Fishing • Mob Hunting • Real-time Leaderboards
✨ Features
Contest Types
- Farming Contest – Break random crops (wheat, carrots, potatoes, 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 Display System
- Boss Bar (can be enabled/disabled)
- Shows time remaining and global objective
- Customizable color (PINK, BLUE, GREEN, RED, YELLOW, PURPLE, WHITE)
- Full MiniMessage support for rich formatting
- Shows time remaining and global objective
- Scoreboard (can be enabled/disabled) - NEW!
- Live display of contest information
- Event name with custom formatting
- Time remaining (MM:SS format)
- Objective progress (for farming events)
- Real-time Top 3 leaderboard
- Shows only active participants
- Fully customizable via messages.yml
- Live display of contest information
- Action Bar
- Individual player score display
- Updates in real-time
- Legacy color code support for compatibility
- Individual player score display
Rewards System
- Top 3 players receive configurable rewards
- Execute any console command as reward
- Support for multiple commands per rank
- Placeholder support (%player%)
⏰ Automatic Event Scheduler
- Schedule multiple events per day
- Supports multiple times per event type
- Fully customizable timezone (e.g., Europe/Paris)
- Runs automatically based on server clock
- Enable/disable individual events
Customization
- MiniMessage Support for rich text formatting
- Gradients, hex colors, formatting tags
- Hover and click events support
- Gradients, hex colors, formatting tags
- Fully translatable via messages.yml
- Configurable objectives (fixed or random)
- Custom material names for better localization
- Organized configuration with detailed comments
️ Technical Features
- Lightweight and optimized for performance
- Adventure API integration for modern text components
- Paper/Purpur optimized
- No dependencies required (standalone)
- Automatic cleanup on server shutdown
⌨️ Commands
• /nbcontest start <event>
Start a contest (farming, fishing, hostiles_mobs, passive_mobs)
Permission: nbcontest.admin
Permission: nbcontest.admin
• /nbcontest stop
Stop the current contest
Permission: nbcontest.admin
Permission: nbcontest.admin
• /nbcontest reload
Reload config, schedule and language
Permission: nbcontest.admin
Permission: nbcontest.admin
Event Types:
- farming - Harvesting contest
- fishing - Fishing contest
- hostiles_mobs - Monster hunt
- passive_mobs - Animal culling
Automatic Events
Auto-events can be scheduled using auto-events in the config. The scheduling system is highly flexible:
- Schedule events on specific days (e.g., MONDAY, TUESDAY, DAILY)
- Multiple times per day
- Farming Specifics: Define exactly which crop to farm for a specific time slot!
Advanced Schedule Example:
Code (YAML):
auto-events:
enabled : true
farming:
DAILY :
- "18:30" # Random crop at 6:30 PM every day
SATURDAY:
- time : "14:00"
type : POTATOES # Potato contest at 2:00 PM
- time : "16:00"
type : CARROTS # Carrot contest at 4:00 PM
SUNDAY :
- "10:00"
fishing:
DAILY :
- "15:00"
enabled : true
farming:
DAILY :
- "18:30" # Random crop at 6:30 PM every day
SATURDAY:
- time : "14:00"
type : POTATOES # Potato contest at 2:00 PM
- time : "16:00"
type : CARROTS # Carrot contest at 4:00 PM
SUNDAY :
- "10:00"
fishing:
DAILY :
- "15:00"
⚙️ Configuration
Spoiler: config.yml
Code (YAML):
# ========================================
# NBContest Configuration
# ========================================
# Plugin for managing competitive events on your Minecraft server
# Discord: https://discord.nb.studio/
# ========================================
# ========================================
# General Settings
# ========================================
# Duration of all events in seconds (default: 300 = 5 minutes)
duration : 300
# Timezone for auto-events scheduling
timezone : "Europe/Paris"
# ========================================
# Display Settings
# ========================================
# Boss Bar Configuration
bossbar:
enabled : true
color : YELLOW # Options: PINK, BLUE, GREEN, RED, YELLOW, PURPLE, WHITE
# Scoreboard Configuration
scoreboard:
enabled : true # Shows: event name, time, top 3 players, objective
# ========================================
# Contest Objective
# ========================================
objective:
fixed : false # If true, use 'amount'. If false, random between min-max
amount : 100
min : 50
max : 500
# ========================================
# Auto-Events Scheduler
# ========================================
auto-events:
enabled : true
farming:
DAILY :
- "18:30"
SATURDAY:
- time : "14:00"
type : POTATOES
- time : "16:00"
type : CARROTS
SUNDAY:
- time : "14:00"
type : WHEAT
- "18:00"
fishing:
DAILY :
- "15:00"
hostiles_mobs:
DAILY :
- "21:00"
FRIDAY :
- "16:00"
passive_mobs:
DAILY :
- "17:00"
# ========================================
# Event-Specific Settings
# ========================================
farming:
block-types :
- WHEAT
- POTATOES
- CARROTS
- BEETROOTS
- PUMPKIN
- MELON
- SUGAR_CANE
- COCOA_BEANS
- NETHER_WART
# ========================================
# Rewards Configuration
# ========================================
rewards:
farming:
top1 :
- "give %player% minecraft:diamond 5"
- "eco give %player% 250"
- "say Congratulations %player%, you won the Farming Contest!"
top2 :
- "give %player% minecraft:emerald 10"
- "eco give %player% 150"
top3 :
- "give %player% minecraft:bread 32"
fishing:
top1 :
- "give %player% minecraft:trident 1"
- "eco give %player% 200"
top2 :
- "give %player% minecraft:cod 16"
top3 :
- "give %player% minecraft:salmon 16"
hostiles_mobs:
top1 :
- "give %player% minecraft:netherite_ingot 1"
- "effect give %player% strength 30 1"
top2 :
- "give %player% minecraft:iron_sword 1"
top3 :
- "give %player% minecraft:shield 1"
passive_mobs:
top1 :
- "give %player% minecraft:golden_apple 3"
- "eco give %player% 200"
top2 :
- "give %player% minecraft:cooked_beef 32"
top3 :
- "give %player% minecraft:leather 16"
# NBContest Configuration
# ========================================
# Plugin for managing competitive events on your Minecraft server
# Discord: https://discord.nb.studio/
# ========================================
# ========================================
# General Settings
# ========================================
# Duration of all events in seconds (default: 300 = 5 minutes)
duration : 300
# Timezone for auto-events scheduling
timezone : "Europe/Paris"
# ========================================
# Display Settings
# ========================================
# Boss Bar Configuration
bossbar:
enabled : true
color : YELLOW # Options: PINK, BLUE, GREEN, RED, YELLOW, PURPLE, WHITE
# Scoreboard Configuration
scoreboard:
enabled : true # Shows: event name, time, top 3 players, objective
# ========================================
# Contest Objective
# ========================================
objective:
fixed : false # If true, use 'amount'. If false, random between min-max
amount : 100
min : 50
max : 500
# ========================================
# Auto-Events Scheduler
# ========================================
auto-events:
enabled : true
farming:
DAILY :
- "18:30"
SATURDAY:
- time : "14:00"
type : POTATOES
- time : "16:00"
type : CARROTS
SUNDAY:
- time : "14:00"
type : WHEAT
- "18:00"
fishing:
DAILY :
- "15:00"
hostiles_mobs:
DAILY :
- "21:00"
FRIDAY :
- "16:00"
passive_mobs:
DAILY :
- "17:00"
# ========================================
# Event-Specific Settings
# ========================================
farming:
block-types :
- WHEAT
- POTATOES
- CARROTS
- BEETROOTS
- PUMPKIN
- MELON
- SUGAR_CANE
- COCOA_BEANS
- NETHER_WART
# ========================================
# Rewards Configuration
# ========================================
rewards:
farming:
top1 :
- "give %player% minecraft:diamond 5"
- "eco give %player% 250"
- "say Congratulations %player%, you won the Farming Contest!"
top2 :
- "give %player% minecraft:emerald 10"
- "eco give %player% 150"
top3 :
- "give %player% minecraft:bread 32"
fishing:
top1 :
- "give %player% minecraft:trident 1"
- "eco give %player% 200"
top2 :
- "give %player% minecraft:cod 16"
top3 :
- "give %player% minecraft:salmon 16"
hostiles_mobs:
top1 :
- "give %player% minecraft:netherite_ingot 1"
- "effect give %player% strength 30 1"
top2 :
- "give %player% minecraft:iron_sword 1"
top3 :
- "give %player% minecraft:shield 1"
passive_mobs:
top1 :
- "give %player% minecraft:golden_apple 3"
- "eco give %player% 200"
top2 :
- "give %player% minecraft:cooked_beef 32"
top3 :
- "give %player% minecraft:leather 16"
Messages & Customization
All messages support MiniMessage format for rich text formatting!
Available MiniMessage Tags:
- Colors: <red>, <green>, <blue>, <yellow>, <gold>, <aqua>, etc.
- Formatting: <bold>, <italic>, <underlined>, <strikethrough>
- Gradients: <gradient:color1:color2>text</gradient>
- Hex colors: <#FF5555>text</#FF5555>
Spoiler: messages.yml Example
Code (YAML):
# Contest Messages
contest-started : "<green>[NBContest] <yellow>The %event% contest has started!"
contest-ended : "<red>[NBContest] The contest has ended!"
farming-objective : "<gold>Goal: <yellow>Break %amount% %material%"
# Boss Bar
bossbar.farming : "<gold>Time: <white>%time%s <green>- <white>%remaining% %material% left"
bossbar.generic : "<gold>Time: <white>%time%s"
# Action Bar (uses legacy codes: &e, &f, etc.)
actionbar.farming : "&e%score% &f%material% harvested"
actionbar.fishing : "&e%score% &ffish caught"
actionbar.mobs : "&e%score% &fmobs killed"
# Scoreboard (Live Display)
scoreboard.title : "<gold><bold>CONTEST"
scoreboard.event : "<yellow>Event: <white>%event%"
scoreboard.time : "<aqua>Time: <white>%minutes%:%seconds%"
scoreboard.remaining : "<green>Remaining: <white>%remaining% %material%"
scoreboard.top-title : "<gold>Top Players:"
scoreboard.top-line : "<gray>#%rank% <green>%player%<dark_gray>: <yellow>%score%"
scoreboard.top-empty : "<gray>#%rank% <dark_gray>---"
# Leaderboard (End of Contest)
top-title : "<gold>Top 5 Players:"
top-line : "<gray>#%rank% <green>%player% <dark_gray>- <yellow>%score% %unit%"
# Event Names
event:
farming : "<aqua>Harvesting"
fishing : "<blue>Fishing"
hostiles_mobs : "<dark_red>Monster Hunt"
passive_mobs : "<dark_green>Culling"
contest-started : "<green>[NBContest] <yellow>The %event% contest has started!"
contest-ended : "<red>[NBContest] The contest has ended!"
farming-objective : "<gold>Goal: <yellow>Break %amount% %material%"
# Boss Bar
bossbar.farming : "<gold>Time: <white>%time%s <green>- <white>%remaining% %material% left"
bossbar.generic : "<gold>Time: <white>%time%s"
# Action Bar (uses legacy codes: &e, &f, etc.)
actionbar.farming : "&e%score% &f%material% harvested"
actionbar.fishing : "&e%score% &ffish caught"
actionbar.mobs : "&e%score% &fmobs killed"
# Scoreboard (Live Display)
scoreboard.title : "<gold><bold>CONTEST"
scoreboard.event : "<yellow>Event: <white>%event%"
scoreboard.time : "<aqua>Time: <white>%minutes%:%seconds%"
scoreboard.remaining : "<green>Remaining: <white>%remaining% %material%"
scoreboard.top-title : "<gold>Top Players:"
scoreboard.top-line : "<gray>#%rank% <green>%player%<dark_gray>: <yellow>%score%"
scoreboard.top-empty : "<gray>#%rank% <dark_gray>---"
# Leaderboard (End of Contest)
top-title : "<gold>Top 5 Players:"
top-line : "<gray>#%rank% <green>%player% <dark_gray>- <yellow>%score% %unit%"
# Event Names
event:
farming : "<aqua>Harvesting"
fishing : "<blue>Fishing"
hostiles_mobs : "<dark_red>Monster Hunt"
passive_mobs : "<dark_green>Culling"
Placeholders
• %event% - Event name (translated) - Example: "Harvesting"
• %material% - Target material - Example: "wheat"
• %amount% - Objective amount - Example: "100"
• %score% - Player score - Example: "45"
• %player% - Player name - Example: "Steve"
• %time% - Time left (seconds) - Example: "180"
• %minutes% - Minutes remaining - Example: "3"
• %seconds% - Seconds remaining - Example: "00"
• %remaining% - Items remaining to goal - Example: "55"
• %rank% - Player's rank - Example: "1"
Customization Examples
Gradient Titles:
Code (YAML):
scoreboard.title
:
"<gradient:gold:yellow>⚔ CONTEST ⚔</gradient>"
Code (YAML):
scoreboard.top-line
:
"<#FFD700>#%rank% <#00FF00>%player% <#FFFF00>%score%"
Code (YAML):
scoreboard.title
:
"<gold> CONTEST "
scoreboard.time : "⏱️ %minutes%:%seconds%"
scoreboard.remaining : " %remaining% %material%"
scoreboard.time : "⏱️ %minutes%:%seconds%"
scoreboard.remaining : " %remaining% %material%"
You can enable/disable each display element independently:
• Boss Bar - bossbar.enabled: true
Shows time and objective at the top
• Scoreboard - scoreboard.enabled: true
Shows live leaderboard on the side
• Action Bar - Always enabled
Shows personal score above hotbar
Minimal Configuration (Action Bar only):
Code (YAML):
bossbar:
enabled : false
scoreboard:
enabled : false
enabled : false
scoreboard:
enabled : false
Code (YAML):
bossbar:
enabled : true
scoreboard:
enabled : true
enabled : true
scoreboard:
enabled : true
Contest starting with boss bar and scoreboard
Real-time scoreboard showing top 3 players
Scoreboard with live updates and player rankings
⚡ Performance
- Lightweight design with minimal overhead
- Efficient scoreboard updates (1 per second)
- Optimized player score tracking
- Automatic cleanup on contest end
Known Issues
- Action Bar: Due to Minecraft limitations, action bar only supports legacy color codes (&e, &f, etc.) instead of MiniMessage format.
- Scoreboard: Text is limited to 40 characters per line (Minecraft limitation).
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft version listed: 1.21
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
[1.21.4] NBContest - Competitive Event is a free Minecraft Java mod. Compatible with Minecraft 1.21. Downloaded 232 times (via Spigot). Download it and open it directly in the game.