AntiLavaCast
Prevents high altitude lava placement to stop lava casting on Paper 1.21.x. Uses CoreProtect history (when available) to detect player-placed blocks.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
AntiLavaCast
AntiLavaCast

Prevents high altitude lava placement to stop lava casting on Paper 1.21.x.
Features
- Cancels lava bucket placement, flow or both if it is more than the configured height above natural ground. - Uses CoreProtect history (when available) to identify player-placed blocks for accurate ground detection. - Logs a server alert when a placement is blocked. - Supports live config reload and runtime toggling. - Lava casting attribution, optional logs will tell you who tried to place lava and where. - Maintains natural world lava flow.
```[AntiLavaCast] Blocked lava placement by CevAPI at -85,164,-29 (heightAboveGround=96, groundY=68)```
Requirements
- Paper 1.21.x - Java 21+
Install
1. Download the jar. 2. Drop the jar into your server `plugins` folder. 3. Start the server to generate the config.
Commands
- `/lavacast reload` - `/lavacast enable` - `/lavacast disable` - `/lavacast setheight <blocks>` - `/lavacast drop <on|off>` on allows dropping - `/lavacast flow <on|off>` on allows flowing - `/lavacast logs <on|off>` on logs blocked placements - `/lavacast coreprotect <on|off>` toggles CoreProtect integration - `/lavacast coreprotectlookback <seconds|1m|2h|7d|4w>` sets how far back CoreProtect history is searched - `/lavacast mark <radius>` marks nearby blocks as player-placed for height checks (max radius 100)
Permissions
`lavacast.admin` (default: op)
Config
`plugins/AntiLavaCast/config.yml` ```yaml max-height-above-ground: 20 enabled: true allow-lava-drop: false allow-lava-flow: false log-blocked-placements: true coreprotect-enabled: true coreprotect-lookback-seconds: 31536000 ```
Notes
- The ground scan ignores player-placed blocks; when CoreProtect is available it will also treat historical placements as player-placed. - Use `/lavacast mark <radius>` around old builds to mark them as player-placed if CoreProtect is not available. - Marked blocks are stored on disk in `plugins/AntiLavaCast/marks` and persist across restarts. - When CoreProtect is enabled and detected, mark storage is disabled and lookups rely on CoreProtect instead.