LotusBBR
Shared block-breaking challenges with rewards
LotusBBR


LotusBBR is a shared block-breaking event plugin where players contribute to a global goal.
Each block tracks total progress and individual contributions. When the goal is reached, the top contributor wins the reward. The block then enters a cooldown and automatically resets, creating a repeating server-wide event.
Fully configurable with support for multiple blocks, rewards, and optional holograms.

Core Mechanics
- Global break counter shared across all players - Configurable break target per block - Top contributor receives the reward - Console commands with `%player%` support - Block is replaced with Bedrock during cooldown - Automatic restore after cooldown
Multiple Blocks
- Define multiple blocks in `blocks.yml` - Each block has its own settings (location, target, cooldown, rewards, etc.) - Optional hologram toggle per block
Holograms
- Requires DecentHolograms to display holograms - Displays progress, cooldown, and top players - Fully configurable - Optimized updates to reduce performance impact
Inactivity System
- Resets individual progress after inactivity - Configurable timeout or can be disabled
Database Support
- YAML, JSON, SQLite, MySQL
Performance
- Fast block lookup for break events - Cached progress and leaderboards - Async handling for heavy tasks



| Command | Permission | Description | |--------|-----------|------------| | /lbbr reload | lbbr.reload | Reload plugin configuration | | /lbbr list | lbbr.list | View block list and progress | | /lbbr tp `<id>` | lbbr.tp | Teleport to a block | | /lbbr reset `<id>` | lbbr.reset | Reset block progress and cooldown | | /lbbr set `<id>` | lbbr.set | Move/set a block in-game | | /lbbr cleanholo | lbbr.cleanholo | Rebuild all holograms | | /lbbr status | lbbr.admin | View plugin status | | /lbbr debug | lbbr.debug | Toggle debug mode | | - | lbbr.* | Full access to all commands |

config.yml
```yaml
============================================================
LotusBBR v1.0.0 | Configuration File
Author: JaoXu | Discord: jaoxu_
============================================================
-----------------------------------------------------------
DATABASE
-----------------------------------------------------------
Database: type: "SQLITE" # YAML | JSON | SQLITE | MYSQL
mysql: host: "localhost" port: 3306 database: "minecraft" username: "root" password: "password" useSSL: false autoReconnect: true maximumPoolSize: 10 minimumIdle: 2 connectionTimeout: 30000 idleTimeout: 600000 maxLifetime: 1800000
sqlite: filename: "lbbr_data.db"
-----------------------------------------------------------
OPTIMIZATION
-----------------------------------------------------------
Optimization: tasks: hologramUpdateInterval: 5 # Cooldown check & hologram refresh interval (seconds) inactivityCheckInterval: 60 # How often inactive players are checked (seconds) autoSaveInterval: 300 # How often data is saved automatically (seconds) progressMessageInterval: 5 # How often progress messages are sent to players (seconds)
performance: maxConcurrentUpdates: 5 # Max holograms updating at the same time asyncOperations: true # Use async DB saves (recommended: true)
-----------------------------------------------------------
SOUND
-----------------------------------------------------------
Sound: enabled: true name: "FIREWORK" volume: 1.0 pitch: 1.0
-----------------------------------------------------------
HOLOGRAMS
Requires DecentHolograms (optional).
The plugin works normally without it — holograms are simply
skipped if DecentHolograms is not installed.
#
Variables: %name_block% %timereset% %block_break% %blocks%
%top1% %top1b% %top2% %top2b% %top3% %top3b%
-----------------------------------------------------------
Holograms: height: 4.5 updateOnlyWhenChanged: true hologram: - "%name_block%" - "&6Reset time: &e%timereset%" - "&6Blocks mined: &e%block_break%&7/&e%blocks%" - "&f" - "&e» &6&lTOP MINERS &e«" - "&e1. &a%top1% &7(&e%top1b%&7)" - "&e2. &a%top2% &7(&e%top2b%&7)" - "&e3. &a%top3% &7(&e%top3b%&7)" - "&7&o(Progress is reset after 10 minutes of inactivity)" - "&f"
-----------------------------------------------------------
GENERAL
-----------------------------------------------------------
General:
Seconds of inactivity before a player's progress is reset.
Set to -1 to disable inactivity resets entirely.
Examples: 300 = 5 min | 600 = 10 min | 3600 = 1h | -1 = disabled
inactive-reset: 600
debug: false # Set to true to print detailed debug logs to console ```
blocks.yml
```yaml
============================================================
LotusBBR v1.0.0 | Block Definitions (blocks.yml)
Author: JaoXu | Discord: jaoxu_
============================================================
#
Each entry in "BlockRewards" is a reward block.
The key (e.g. "epic_diamond") is the internal ID used in
commands like /lbbr tp <id> or /lbbr reset <id>.
#
──────────────────────────────────────────────────────────
Name → Display name shown in holograms & messages.
Supports color codes (&6, &l, &c…)
Cooldown → Seconds before the block resets. During
cooldown it becomes BEDROCK (unbreakable).
900 = 15min | 3600 = 1h | 86400 = 24h
Block → Minecraft material name.
e.g. DIAMOND_BLOCK, EMERALD_BLOCK, GOLD_BLOCK
Blockbreak → Total breaks needed across ALL players to
complete the block.
Hologram → true/false — requires DecentHolograms.
Coords → [x, y, z] — use /lbbr set <id> in-game
instead of editing this field manually.
World → Exact world name (case-sensitive).
e.g. world, world_nether, world_the_end
Commands → Console commands on completion. The player
with the most breaks wins.
Available variable: %player%
#
Command examples:
- "give %player% diamond 10"
- "eco give %player% 5000"
- "broadcast &6%player% &awon the challenge!"
============================================================
BlockRewards: epic_diamond: Name: "&6&lEpic Diamond" Cooldown: 3600 Block: DIAMOND_BLOCK Blockbreak: 1000 Hologram: true Coords: [0, 64, 0] World: "world" Commands: - "give %player% diamond_sword 1" - "broadcast &6%player% &acompleted the &6&lEpic Diamond &achallenge!"
legendary_emerald: Name: "&2&lLegendary Emerald" Cooldown: 7200 Block: EMERALD_BLOCK Blockbreak: 2500 Hologram: true Coords: [100, 70, 100] World: "world" Commands: - "give %player% emerald 64" - "give %player% elytra 1"
golden_rush: Name: "&e&lGolden Rush" Cooldown: 1800 Block: GOLD_BLOCK Blockbreak: 500 Hologram: true Coords: [-50, 65, -50] World: "world" Commands: - "give %player% golden_apple 5" - "give %player% gold_ingot 32"
iron_fortress: Name: "&7&lIron Fortress" Cooldown: 900 Block: IRON_BLOCK Blockbreak: 250 Hologram: true Coords: [25, 63, 25] World: "world" Commands: - "give %player% iron_sword 1" - "give %player% iron_pickaxe 1" - "give %player% iron_ingot 16" ```

No servers are currently listed. Running LotusBBR on your server? Message me on Discord and I’ll add you here.

If you need support for the plugin, want to report bugs, suggest features, or access a test server, contact me on Discord.