Description:
OPModifier is the ultimate Spigot plugin for managing operator privileges with precision and style. Designed for serious server admins, this plugin provides unparalleled control over what OP players can and cannot do. Safeguard your server by restricting commands, actions, and item interactions—all while receiving real-time notifications of violations. OPModifier ensures a secure, streamlined, and premium experience for managing your server's operations.
Key Features:
- ✨ Command Restrictions: Block critical commands like /op, /deop, and more to protect server integrity.
- Action Limitations: Control block placement, breaking, teleportation, chatting, and item usage by operators.
- Item Management: Customize restrictions to block the pickup, usage, dropping, or movement of specific items in inventories.
- Admin Alerts: Stay informed with detailed notifications whenever violations occur.
- Punishments: Automatically kick, ban, or mute players who attempt restricted actions, ensuring swift enforcement.
- Console Protection: Prevent restricted commands from being executed via the server console for added security.
Commands:
- /opmodifier
- Permission: opmodify.admin
- Description: The main command to configure and manage OPModifier settings.
- /opmodifier <add/remove> <property>
- Permission: opmodify.admin
- Description: Modify the plugin's settings by adding or removing restrictions for specific items or actions.
- Example Usage:
1️⃣ Add an Item to the Blocked Use List
- Command: /opmodifier add blocked_items_use <item>
- Example: /opmodifier add blocked_items_use DIAMOND_SWORD
- Description: Prevents the usage of specified items (e.g., Diamond Sword). Players cannot activate or right-click with this item.
2️⃣ Remove an Item from the Blocked Use List
- Command: /opmodifier remove blocked_items_use <item>
- Example: /opmodifier remove blocked_items_use DIAMOND_SWORD
- Description: Lifts restrictions on the specified item, allowing players to use it again.
3️⃣ Add an Item to the Blocked Pickup List
- Command: /opmodifier add blocked_items_pickup <item>
- Example: /opmodifier add blocked_items_pickup GOLDEN_APPLE
- Description: Stops players from picking up specific items (e.g., Golden Apple), even if they are nearby.
- g up the specified item even if it is dropped nearby.
Permissions:
- opmodify.admin: Allows a player to execute the /opmodifier command and configure the plugin's settings.
Blocked Actions (Events):
- BlockPlaceEvent: Prevents players from placing blocks.
- ⛏️ BlockBreakEvent: Stops players from breaking blocks.
- CommandEvent: Prevents players from executing specific commands.
- ItemUse: ❌ Blocks the usage of certain items.
- ItemPickUp: Prevents players from picking up specific items.
- ItemDrop: ❌ Stops players from dropping restricted items.
- ️ InventoryClick: Restricts interactions with the inventory.
- PlayerTeleport: ✋ Prevents teleportation by OPed players.
- PlayerChat: Stops players from sending chat messages.
Why Choose OPModifier?
- Customizable: Tailor restrictions to suit your server's needs.
- Efficient: Lightweight and optimized for seamless performance.
- Secure: Protects against misuse by operators and console commands.
- Insightful: Real-time admin notifications for complete awareness.
Notes:
- The plugin provides flexibility by allowing customization of the blocked actions and items.
- The console command restrictions and detailed admin notifications help maintain control over server activities.
- Use the opmodify.admin permission to configure the plugin and manage its settings.
Config:
Code (YAML):
# Messages Section:
# These messages are used to notify players, admins, and the console when certain actions or commands are blocked.
configVersion
: 3
messages
:
# This is the prefix used for all messages in the plugin. It adds a consistent identifier to each message sent.
plugin_prefix
:
"&e&oᴼᴾᴹᴼᴰᴵᶠᴵᴱᴿ &7» &c"
# Message displayed when the plugin is successfully reloaded.
plugin_reload
:
"&bPlugin has been successfully reloaded !"
# Message displayed when an invalid category is provided by the user. This informs them of the valid options.
invalid_category
:
"&cInvalid category. Use one of the following: blocked_items_use, blocked_items_pickup, blocked_items_drop, blocked_items_move."
# Message displayed when a non-player (console or command block) tries to execute a command intended for players.
not_player
:
"&cThis command can only be executed by a player."
# Message shown when the player is not holding any item in their hand, which is required for certain commands.
not_holding_item
:
"&cYou are not holding any item in your hand."
# Message displayed when an item is successfully added to the blocked category.
item_added
:
"&e%item% has been added to the %category%."
# Message displayed when the item is already in the specified category.
item_already_in_category
:
"&c%item% is already in %category%."
# Message displayed when an item is successfully removed from the blocked category.
item_removed
:
"&e%item% has been removed from the %category%."
# Message shown when the item is not found in the specified category for removal.
item_not_in_category
:
"&c%item% is not in %category%."
# Message sent to the player when they try to execute a blocked command.
command_not_allowed
:
"&c%player% , this command is not allowed !"
# Message displayed when a console command is blocked (not allowed to execute certain commands from the console).
console_command_not_allowed
:
"&cthis console command (%command%) is not allowed !"
# Notification message sent to admins when a player tries to execute a blocked command.
admin_notification
:
"&cPlayer %player% tried to execute non allowed command : &e %command% !"
# Console log message when a player tries to execute a blocked command. This helps in tracking blocked actions.
console_notification
:
"%player% tried to execute non allowed command : %command%"
# Message displayed to the player when they try to place blocks but don't have the necessary permission.
not_allowed_to_place_blocks
:
"&c%player% , you are not allowed to place blocks !"
# Message displayed to the player when they try to break blocks but don't have the necessary permission.
not_allowed_to_break_blocks
:
"&c%player% , you are not allowed to break blocks !"
# Message displayed to the player when they try to use an item that's blocked for them.
not_allowed_to_use_item
:
"&c%player% , you are not allowed to use %item% !"
# Message displayed to the player when they try to pick up an item that's blocked for them.
not_allowed_to_pickup_item
:
"&c%player% , you are not allowed to pick up %item% !"
# Message displayed to the player when they try to drop an item that's blocked for them.
not_allowed_to_drop_item
:
"&c%player% , you are not allowed to drop %item% !"
# Message displayed to the player when they try to move an item in their inventory that's blocked for them.
not_allowed_to_move_item
:
"&c%player% , you are not allowed to move %item% !"
# Message displayed to the player when they try to teleport without permission.
not_allowed_to_teleport
:
"&c%player% , you are not allowed to teleport !"
# Message displayed to the player when they try to chat without permission.
not_allowed_to_chat
:
"&c%player% , you are not allowed to chat !"
# Message displayed when an error occurs while executing the plugin.
plugin_exception
:
"&cAn error occurred while executing the plugin. Please check the console for more details."
# Configuration for the logger module of the plugin. This section controls
# how violations are logged and whether logging is enabled for specific violation types.
logger
:
# Messages section contains templates for logging specific violation events.
# Use placeholders to dynamically insert event-specific data into the log messages.
messages
:
# Logs when a player attempts to execute a blocked command.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
# - %command%: The command the player attempted to execute.
VIOLATION_COMMAND
:
"[%date%] %player% tried to execute non allowed command : %command%"
# Logs when a player attempts to teleport while restricted.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
VIOLATION_TELEPORT
:
"[%date%] %player% tried to teleport"
# Logs when a player attempts to place a blocked block.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
# - %block%: The block type the player attempted to place.
VIOLATION_BLOCK_PLACE
:
"[%date%] %player% tried to place %block%"
# Logs when a player attempts to break a blocked block.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
# - %block%: The block type the player attempted to break.
VIOLATION_BLOCK_BREAK
:
"[%date%] %player% tried to break %block%"
# Logs when a player sends a blocked chat message.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
# - %message%: The content of the blocked chat message.
VIOLATION_CHAT
:
"[%date%] %player% tried to send a message to the chat (%message%)"
# Logs when a player attempts to pick up a blocked item.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
# - %item%: The item type the player attempted to pick up.
VIOLATION_PICKUP
:
"[%date%] %player% tried to pick up %item%"
# Logs when a player attempts to drop a blocked item.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
# - %item%: The item type the player attempted to drop.
VIOLATION_DROP
:
"[%date%] %player% tried to drop %item%"
# Logs when a player attempts to use a blocked item.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
# - %item%: The item type the player attempted to use.
VIOLATION_USE
:
"[%date%] %player% tried to use %item%"
# Logs when a player interacts with their inventory using a blocked item.
# Placeholders:
# - %date%: Current date and time of the event.
# - %player%: Name of the player triggering the event.
VIOLATION_INVENTORY_INTERACT
:
"[%date%] %player% tried to interact with their inventory with disabled item"
# Status section determines whether logging is enabled for each violation type.
# Set to `true` to enable logging or `false` to disable it for the corresponding violation.
status:
VIOLATION_COMMAND
: true
# Log command execution violations
VIOLATION_TELEPORT
: false
# Log teleportation violations
VIOLATION_BLOCK_PLACE
: false
# Log block placement violations
VIOLATION_BLOCK_BREAK
: false
# Log block breaking violations
VIOLATION_CHAT
: true
# Log chat message violations
VIOLATION_PICKUP
: false
# Log item pickup violations
VIOLATION_DROP
: true
# Log item drop violations
VIOLATION_USE
: false
# Log item use violations
VIOLATION_INVENTORY_INTERACT
: true
# Log inventory interaction violations
# Settings Section:
# These are global settings that configure how the plugin behaves.
settings
:
# Whether to notify admins when a blocked action is attempted by a player. If true, admins will receive a message.
notify_admins
: true
# Whether to log blocked actions to the console. If true, each blocked action will be logged.
log_console
: true
# Blocked Commands Section:
# Lists all commands that are blocked for players to execute.
blocked_commands
:
# List of commands that players are not allowed to execute.
# If a player tries to run any of these commands, it will be blocked.
- /op
# Blocks the /op command which grants operator privileges
- /deop
# Blocks the /deop command which removes operator privileges
- /stop
# Blocks the /stop command which stops the server
- /reload
# Blocks the /reload command which reloads the server configuration
- /say
# Blocks the /say command which sends a message to all players
# Blocked Actions Section:
# Defines the types of events or actions that should be blocked when executed by a player.
blocked_actions
:
# List of events that should be blocked, preventing players from performing these actions.
# Each entry represents a specific event type that will be canceled if a player attempts to perform the action.
#- BlockPlaceEvent # Blocks players from placing blocks.
#- BlockBreakEvent # Blocks players from breaking blocks.
- CommandEvent
# Blocks players from running certain commands.
- ItemUse
# Blocks players from using specific items.
- ItemPickUp
# Blocks players from picking up specific items.
- ItemDrop
# Blocks players from dropping specific items.
- InventoryClick
# Blocks players from interacting with their inventory.
#- PlayerTeleport # Blocks players from teleporting.
#- PlayerChat # Blocks players from chatting.
# Blocked Items Section:
# These lists define the specific items that are blocked in various player interactions.
blocked_items_use
:
# List of items that players are not allowed to use (e.g., consuming).
- GOLDEN_APPLE
# Players cannot eat or use golden apples.
blocked_items_pickup
:
# List of items that players are not allowed to pick up from the ground.
- GOLDEN_APPLE
# Players cannot pick up golden apples.
blocked_items_drop
:
# List of items that players are not allowed to drop from their inventory.
- GOLDEN_APPLE
# Players cannot drop golden apples.
blocked_items_move
:
# List of items that players are not allowed to move within their inventory.
- GOLDEN_APPLE
# Players cannot move golden apples in their inventory.
# Whitelisted Players Section:
# This section allows you to specify players who are exempt from all plugin restrictions.
# Players listed here will not be checked or blocked for any restricted actions, commands, or item usage.
# Use this to ensure trusted players or staff members have unrestricted access without needing to remove OP restrictions globally.
whitelisted_players
:
- player1
# Example: player1 will bypass all checks and restrictions set by OPModifier.
- player2
# Add more players as needed to exempt them from plugin checks.
# Violations Section:
# Each blocked action has a potential punishment tied to it, specifying whether a punishment should be applied and the command to execute if so.
violations:
BlockPlaceEvent:
punishment
: false
# Enable punishment for this action
punish_command
:
"/kick %player% You are not allowed to place blocks."
# Command to execute when punishment is applied
BlockBreakEvent:
punishment
: false
punish_command
:
"/kick %player% You are not allowed to break blocks."
CommandEvent:
punishment
: true
punish_command
:
"/kick %player% You are not allowed to use commands."
ItemUse:
punishment
: false
punish_command
:
"/ban %player% You are not allowed to use items."
ItemPickUp:
punishment
: false
# No punishment for picking up blocked items
punish_command
:
""
# No command to execute
ItemDrop:
punishment
: false
punish_command
:
"/tempban %player% You are not allowed to drop items."
InventoryClick:
punishment
: false
# No punishment for clicking in inventory
punish_command
:
""
# No command to execute
PlayerTeleport:
punishment
: false
punish_command
:
"/kick %player% You are not allowed to teleport."
PlayerChat:
punishment
: false
punish_command
:
"/mute %player% You are not allowed to chat."
[ATTACH
]868222
[/ATTACH
]
[ATTACH
]868223
[/ATTACH
]
[ATTACH
]868224
[/ATTACH
]
[ATTACH
]868225
[/ATTACH
]
[ATTACH
]868226
[/ATTACH
]
[ATTACH
]868227
[/ATTACH
]
[ATTACH=full
]868222
[/ATTACH
]
[ATTACH=full
]868223
[/ATTACH
]
[ATTACH=full
]868224
[/ATTACH
]
[ATTACH=full
]868225
[/ATTACH
]
[ATTACH=full
]868226
[/ATTACH
]
[ATTACH=full
]868227
[/ATTACH
]
[ATTACH
]868222
[/ATTACH
]
[ATTACH
]868223
[/ATTACH
]
[ATTACH
]868224
[/ATTACH
]
[ATTACH
]868225
[/ATTACH
]
[ATTACH
]868226
[/ATTACH
]
[ATTACH
]868227
[/ATTACH
]
Screenshots: