YowsefMapBan — Clean and Lag-Free Map Banning System
Keep your Minecraft server safe from inappropriate, offensive, or game-breaking custom map art. YowsefMapBan is a high-performance plugin that lets administrators ban specific map IDs server-wide. Once a map is banned, any copy of it is automatically blocked and removed from the game, ensuring your community remains safe and clean.
Core Features
• Automatic Removal Everywhere
The plugin scans player inventories, containers (like chests, barrels, and shulker boxes), and dropped items on the ground to find and remove banned maps instantly.
• Anti-Bypass Protection
Blocks players from moving or holding banned maps in real-time. Players cannot click banned maps in menus, move them to their off-hand slot, copy them through crafting, or transfer them between containers using hoppers or droppers.
• Lag-Free Background Scanning
Built to run efficiently even on large servers. The plugin scans players and saves data in the background, ensuring it won't cause any lag or drop in your server's TPS (Ticks Per Second). It also fully supports modern multithreaded servers like Folia.
• Custom Punishment Options
Choose what happens when a player is caught carrying a banned map:
- REMOVE: Silently deletes the map (default).
- WARN_ONLY: Warns the player and alerts admins without deleting the map.
- REMOVE_AND_PUNISH: Deletes the map and automatically runs commands (like kicking or banning the player).
• Detailed Audit Logs
Keeps a clean record of every ban, warning, and removal in a dedicated
mapban-audit.log file so admins can easily keep track of incidents.• Message and Sound Customization
All chat messages support modern text colors and formatting. You can also configure sound effects to play when a banned map is detected.
Commands & Permissions
Commands:
• /mapban [reason] - Bans the map currently in your main hand (reason is optional).
• /mapban ban [reason] - Alternative command to ban the map in your hand.
• /mapban unban <id> - Unbans a specific map ID.
• /mapban list - Lists all banned maps, showing who banned them, the date, and the reason.
• /mapban info - Shows ban details for the map you are currently holding.
• /mapban scan - Manually triggers a scan of all online players' inventories.
• /mapban reload - Instantly reloads the configuration and the ban list.
Permissions:
• mapban.admin - Full access to all commands (ban, unban, list, reload, etc.). (Default: OP)
• mapban.notify - Alerts online admins whenever a banned map is detected and blocked. (Default: OP)
• mapban.bypass - Exempts players from being scanned, warned, or punished. (Default: false)
Setup Guide
1. Drop the
YowsefMapBan.jar file into your server's plugins/ folder.2. Restart your server to generate the configuration files.
3. Hold any map you want to ban in your main hand and type
/mapban <reason> to ban it instantly.Configuration File
YAML:
# ===========================================================
# YowsefMapBan — Full Configuration
# All messages support MiniMessage formatting.
# Reload with: /mapban reload
# ===========================================================
scanning:
# Background periodic scan of all online players
periodic:
enabled: true
interval-ticks: 6000 # 20 ticks = 1 sec | 6000 = 5 min
# Scan a player's inventory when they join the server
on-join:
enabled: true
delay-ticks: 2 # ticks after join before scanning (let inv load)
# Scan containers (chests, barrels, shulkers…) when a player opens them
on-container-open: true
# Block hoppers/droppers from moving banned maps between containers
block-hopper-transfer: true
# Nullify the map-copy craft result when the source map is banned
block-map-crafting: true
# Immediately sweep ALL online players when a new map is banned
sweep-on-ban: true
action:
# Types:
# REMOVE – silently remove the map (default)
# WARN_ONLY – notify the player & admins but leave the map alone
# REMOVE_AND_PUNISH – remove the map, then run punishment-commands
type: REMOVE
# Only used when type is REMOVE_AND_PUNISH.
# Placeholders: {player} {map_id}
punishment-commands:
- "kick {player} You had a banned map in your inventory."
on-ban:
# Remove the banned map from the banner's own hand
remove-from-banner: false
# Broadcast to the whole server that a map was banned
broadcast: false
# Message used when broadcast is true. Placeholders: {player} {map_id} {reason}
broadcast-message: "<gold>[MapBan] <yellow>Map ID <white>{map_id} <yellow>was banned by <white>{player}<yellow>."
notifications:
# Tell the player when a map is removed from their inventory
notify-player: true
# Alert everyone with mapban.notify when maps are found / removed
notify-admins: true
# Sound played to the player on removal
sound:
enabled: true
name: ENTITY_ITEM_BREAK
volume: 1.0
pitch: 1.0
commands:
# Refuse /mapban if no reason is given
require-reason: false
default-reason: "No reason provided"
logging:
# Print removal events to the server console
console: true
# Write an audit log file inside the plugin folder
file:
enabled: true
filename: "mapban-audit.log"
Need Support or Have Questions?
Join our official Discord server for fast support, bug reports, and feature requests!
CLICK HERE TO JOIN THE DISCORD
Join our official Discord server for fast support, bug reports, and feature requests!
CLICK HERE TO JOIN THE DISCORD
