Added player inventory and position backup system for the lobby. When players enter the lobby, their current position and inventory are automatically saved. Upon leaving the lobby (via command or walking out), they are teleported back to their original position with their inventory restored. Saved data persists through disconnects and expires after a configurable duration.
Join command now blocked while in arena or already in lobby.
Added gm.lobby radius and gm.lobby position commands to adjust lobby zone size and location without editing data files.
Added proximity-based spawn point removal. Run remove command without ID to delete nearest spawn.
Added ability to block specific commands in the lobby. Blocks both chat and F1 console commands. To configure: gm.lobby blockcmd add/remove/list <command>.
Added new gamemodecore.bypass permission to separate lobby/gameplay restrictions from admin commands.
Added spawn point validation for arenas. Players can no longer join arenas with no spawn points configured.
Added a NoDecay rule for the lobby and arenas which prevents decay damage on all entities inside zones where the rule is enabled.
Spawn points now support a Leash Radius that prevents players from leaving the area until allowed by the game mode. This is useful for controlling movement during warmup or setup phases.
Player presence is now regularly verified inside zones.
Added new rule NoHeldGunDrop that removes the weapon a player was actively holding when they die, preventing it from being dropped into the world.
Players are now told why they can't join an arena, whether it's disabled, full, or the round is already in progress.
Kills and deaths during warmup no longer count toward player stats.
Added a new NoItemWear rule that prevents any item (including weapon attachments) from losing condition in the lobby or arenas where this rule is enabled.
Added new rules to block metabolism effects like bleeding, hunger, and thirst in the lobby or arenas that have them enabled.
Fixed attachments dropped from weapon slots not being blocked by NoItemDropping.
Chat commands start with a /, while console commands can be entered directly in the F1 console or server console. Use find <keyword> in console to search for available commands related to the plugin. Parameters in < > are required, while [ ] are optional.
This plugin uses Oxide's permission system. Grant or revoke permissions using oxide.grant and oxide.revoke. You can assign them to individual players or groups using their Steam id or group name.
Settings are stored in the config file found under the config/ directory. You can edit this file manually, then reload the plugin to apply your changes.
Persistent data is saved in the data/ directory. This includes things like saved settings, usage stats, or player progress depending on the plugin. Deleting a data file will reset stored progress or customizations.
Language files are located in the lang/ folder. To translate messages, copy the en.json file into your target language folder (e.g. fr, de) and edit the values. Reload the plugin after changes to apply new messages.
This section lists public methods exposed by the plugin for use in other plugins. You can call these via the CallHook method. Ensure the plugin is loaded before calling its API to avoid null reference errors.
These are custom hooks that other plugins can listen for. Simply define a method with the same name and expected parameters in your plugin to handle the event. Hooks are triggered at key moments and are useful for extending or reacting to plugin behavior.
These hooks are injected into the game's code using Harmony. They let the plugin run code at key points in the game's internal logic. You can return values to block or modify behavior. Use with caution — these are powerful and can affect core mechanics.