Giter VIP home page Giter VIP logo

playeradministration's Introduction

Player Administration provides a simple-to-use GUI that helps admins moderate users.

Features

  • Banning/unbanning users
  • Kicking users
  • Killing users
  • Muting/unmuting a player
  • Clearing the user's inventory
  • Resetting a user's blueprints
  • Resetting a user's metabolism (Identical to how a respawn sets a random metabolism)
  • Recover a user's metabolism (Gives the user a healthy metabolic state by filling their hunger, thirst, oxygen, and removing bleeding and radiation.)
  • Hurting a user
  • Healing a user
  • Teleporting yourself to a user
  • Teleporting a player to yourself
  • Spectating a player WARNING: This kills your player and makes you like a "ghost", respawn to exit spectate.
  • The ability to see a user's vitals, status and steamID64
  • Use of Economics plugin to show player's current balance
  • Use of ServerRewards plugin to show player's current reward points
  • Use of Freeze plugin to freeze/unfreeze user position (Only for English language users, Freeze uses localized commands!!!)
  • Use of PermissionsManager plugin to edit Oxide user permissions on a user
  • Use of DiscordMessages plugin to send a fancy message to Discord for each ban and kick
  • Use of BetterChatMute plugin to mute players in an improved manner
  • Use of Backpacks to view a players backpack
  • Use of Inventory Viewer to view a players inventory
  • Use of Godmode to enable/disable godmode for players
  • Filtering through users via the "search" function (Case insensitive and selects both names and IDs that contain the text written in the input)

Permissions

Hint: To easily add all protections use the RCON command: oxide.grant {user <username> | group <group name>} playeradministration.protect.*

  • playeradministration.access.show -- Required to be able to use the /padmin command and plugin
  • playeradministration.access.kick -- Allows the user to kick any player
  • playeradministration.access.ban -- Allows the user to ban and unban any player
  • playeradministration.access.kill -- Allows the user to kill any player
  • playeradministration.access.clearinventory -- Allows the user to clear any player's inventory
  • playeradministration.access.resetblueprint -- Allows the user to reset any player's blueprints
  • playeradministration.access.resetmetabolism -- Allows the user to reset any player's metabolism
  • playeradministration.access.recovermetabolism -- Allows the user to give any player a healthy metabolic state
  • playeradministration.access.hurt -- Allows the user to hurt any player
  • playeradministration.access.heal -- Allows the user to heal any player
  • playeradministration.access.mute -- Allows the user to mute/unmute any player
  • playeradministration.access.perms -- Allows the user to use the "Permissions" button for any player
  • playeradministration.access.allowfreeze -- Allows the user to freeze and unfreeze any player
  • playeradministration.access.teleport -- Allows the user to teleport to any player
  • playeradministration.access.spectate -- Allows the user to spectate any player
  • playeradministration.access.detailedinfo -- Allows the user to see more detailed player information
  • playeradministration.protect.ban -- Protect the user against banning through the panel
  • playeradministration.protect.hurt -- Protect the user against hurting through the panel
  • playeradministration.protect.kick -- Protect the user against kicking through the panel
  • playeradministration.protect.kill -- Protect the user against killing through the panel
  • playeradministration.protect.reset -- Protect the user against stat/BP/inventory resetting/clearing through the panel

Chat Commands

Binding keys and saving the keybinds:
bind p chat.say 0 /padmin
or:
bind p "chat.say 0 /padmin"
Then to save it:
writecfg

  • /padmin -- Show the player administration menu (requires playeradministration.access.show permission)

Console Commands

  • playeradministration.closeui -- Close the player administration menu
  • playeradministration.switchui -- Switch the UI to a different page (Check the code to see the types of UIPage) (requires playeradministration.show permission)
  • playeradministration.kickuser -- Kick a player (requires playeradministration.access.kick permission)
  • playeradministration.banuser -- Ban a player (requires playeradministration.access.ban permission)
  • playeradministration.mainpagebanbyid -- Ban a player (requires playeradministration.access.ban permission AND only works from the UI due to the text input field)
  • playeradministration.unbanuser -- Unban a player (requires playeradministration.access.ban permission)
  • playeradministration.perms -- Open the perms UI for a player (requires playeradministration.access.perms permission)
  • playeradministration.vmuteuser -- Mute voice for a player (requires playeradministration.access.voicemute permission)
  • playeradministration.vunmuteuser -- Unmute voice for a player (requires playeradministration.access.voicemute permission)
  • playeradministration.cmuteuser -- Mute chat for a player (requires playeradministration.access.chatmute permission)
  • playeradministration.cunmuteuser -- Unmute chat for a player (requires playeradministration.access.chatmute permission)
  • playeradministration.freeze -- Freeze a player (requires playeradministration.access.allowfreeze permission)
  • playeradministration.unfreeze -- Unfreeze a player (requires playeradministration.access.allowfreeze permission)
  • playeradministration.clearuserinventory -- Clear the inventory of a player (requires playeradministration.access.clearinventory permission)
  • playeradministration.resetuserblueprints -- Completely reset the BPs of a player (requires playeradministration.access.resetblueprint permission)
  • playeradministration.resetusermetabolism -- Reset the metabolism of a player to fresh spawn state (requires playeradministration.access.resetmetabolism permission)
  • playeradministration.recoverusermetabolism -- Recover the metabolism of a player to 100% (requires playeradministration.access.recovermetabolism permission)
  • playeradministration.hurtuser -- Hurt a player for a certain amount (requires playeradministration.access.hurt permission)
  • playeradministration.killuser -- Kill a player (requires playeradministration.access.kill permission)
  • playeradministration.healuser -- Heal a player for a certain amount (requires playeradministration.access.heal permission)
  • playeradministration.tptouser -- Teleport to a player (requires playeradministration.access.teleport permission)
  • playeradministration.tpuser -- Teleport a player to you (requires playeradministration.access.teleport permission)
  • playeradministration.spectateuser -- Spectate a player (requires playeradministration.access.spectate permission) Note: This will kill your character by the game's design!
  • playeradministration.viewbackpack -- View the backpack of a player (requires backpacks.admin permission)
  • playeradministration.viewinventory -- View the inventory of a player (requires inventoryviewer.allowed permission)
  • playeradministration.godmode -- Enable Godmode for a player (requires godmode.admin permission)
  • playeradministration.ungodmode -- Disable Godmode for a player (requires godmode.admin permission)

Configuration

  • Use Permission System -- When set to false the users with the playeradministration.access.show permission can use all actions
{
  "Use Permission System": true,
  "Discord Webhook url for ban messages": "",
  "Discord Webhook url for kick messages": "",
  "Broadcast Kicks": true,
  "Broadcast Bans": true
}

Localization

{
  "Permission Error Text": "You do not have the required permissions to use this command.",
  "Permission Error Log Text": "{0}: Tried to execute a command requiring the '{1}' permission",
  "Kick Reason Message Text": "Administrative decision",
  "Ban Reason Message Text": "Administrative decision",
  "Protection Active Text": "Unable to perform this action, protection is enabled for this user",
  "Dead Player Error Text": "Unable to perform this action, the target player is dead",

  "Kick Broadcast Message Format": "Player {0} has been kicked: {1}",
  "Ban Broadcast Message Format": "Player {0} has been banned: {1}",

  "Never Label Text": "Never",
  "Banned Label Text": " (Banned)",
  "Dev Label Text": " (Developer)",
  "Connected Label Text": "Connected",
  "Disconnected Label Text": "Disconnected",
  "Sleeping Label Text": "Sleeping",
  "Awake Label Text": "Awake",
  "Alive Label Text": "Alive",
  "Dead Label Text": "Dead",
  "Flying Label Text": " Flying",
  "Mounted Label Text": " Mounted",

  "User Button Page Title Text": "Click a username to go to the player's control page",
  "User Page Title Format": "Control page for player '{0}'{1}",

  "Ban By ID Title Text": "Ban a user by ID",
  "Ban By ID Label Text": "User ID:",
  "Search Label Text": "Search:",
  "Player Info Label Text": "Player information:",
  "Player Actions Label Text": "Player actions:",

  "Id Label Format": "ID: {0}{1}",
  "Auth Level Label Format": "Auth level: {0}",
  "Connection Label Format": "Connection: {0}",
  "Status Label Format": "Status: {0} and {1}",
  "Flags Label Format": "Flags:{0}{1}",
  "Position Label Format": "Position: {0}",
  "Rotation Label Format": "Rotation: {0}",
  "Last Admin Cheat Label Format": "Last admin cheat: {0}",
  "Idle Time Label Format": "Idle time: {0} seconds",
  "Economics Balance Label Format": "Balance: {0} coins",
  "ServerRewards Points Label Format": "Reward points: {0}",
  "Health Label Format": "Health: {0}",
  "Calories Label Format": "Calories: {0}",
  "Hydration Label Format": "Hydration: {0}",
  "Temp Label Format": "Temperature: {0}",
  "Wetness Label Format": "Wetness: {0}",
  "Comfort Label Format": "Comfort: {0}",
  "Bleeding Label Format": "Bleeding: {0}",
  "Radiation Label Format": "Radiation: {0}",
  "Radiation Protection Label Format": "Protection: {0}",
  "Godmode Status Label Format": "Godmode active: {0}",

  "Main Tab Text": "Main",
  "Online Player Tab Text": "Online Players",
  "Offline Player Tab Text": "Offline Players",
  "Banned Player Tab Text": "Banned Players",

  "Go Button Text": "Go",

  "Unban Button Text": "Unban",
  "Ban Button Text": "Ban",
  "Kick Button Text": "Kick",
  "Reason Input Label Text": "Reason:",

  "Unmute Button Text": "Unmute",
  "Mute Button Text": "Mute",
  "Mute Button Text 15": "Mute 15 Min",
  "Mute Button Text 30": "Mute 30 Min",
  "Mute Button Text 60": "Mute 60 Min",

  "UnFreeze Button Text": "UnFreeze",
  "Freeze Button Text": "Freeze",
  "Freeze Not Installed Button Text": "Freeze Not Installed",

  "Clear Inventory Button Text": "Clear Inventory",
  "Reset Blueprints Button Text": "Reset Blueprints",
  "Reset Metabolism Button Text": "Reset Metabolism",
  "Recover Metabolism Button Text": "Recover Metabolism",

  "Teleport To Player Button Text": "Teleport To Player",
  "Teleport Player Button Text": "Teleport Player",
  "Spectate Player Button Text": "Spectate Player",

  "Perms Button Text": "Permissions",
  "Perms Not Installed Button Text": "Perms Not Installed",

  "Godmode Not Installed Button Text": "Godmode Not Installed",
  "UnGodmode Button Text": "Disable Godmode",
  "Godmode Button Text": "Enable Godmode",

  "Hurt 25 Button Text": "Hurt 25",
  "Hurt 50 Button Text": "Hurt 50",
  "Hurt 75 Button Text": "Hurt 75",
  "Hurt 100 Button Text": "Hurt 100",
  "Kill Button Text": "Kill",

  "Heal 25 Button Text": "Heal 25",
  "Heal 50 Button Text": "Heal 50",
  "Heal 75 Button Text": "Heal 75",
  "Heal 100 Button Text": "Heal 100",
  "Heal Wounds Button Text": "Heal Wounds"
}

playeradministration's People

Contributors

laurarozier avatar lukespragg avatar mheetu avatar pho3nix90 avatar umod-org[bot] avatar whetethunger avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

playeradministration's Issues

Help Wounded

I'm going to hold off on creating new PRs until you complete your refactor... but another thing that might be useful is to add if (player.IsWounded()) player.StopWounded(); to the PlayerAdministrationHealUserCallback method.

I feel like if someone is trying to heal a "wounded" (downed) player, it would be expected that they'd be helped up too.

Additionally, a new button "Help Wounded" that would heal for 0 could be added to the "Heal" row and the "Kill" button could be moved down to the "Hurt" row.

Add confirmation to dangerous actions

Hello,

We just switched to your admintool and I accidentally managed to wipe BPs twice now due to 2 really inconvenient behaviors.

The tool sometimes places the mouse cursor on the center of the screen, and it just so happens that the BP reset button is right there as well, so if for example I'm trying to teleport to a player and it doesn't work, when my mouse gets reset I end up wiping BPs instead.

Second major issue is that there is no confirmation message or warning dialog either, yet the BP reset and the inventory clear actions can cause serious issues if used by accident.

mute broadcast ig game

hi, I would like to have added on your plugins to put the broadcast of the mute like ig game the ban and the kick

[IDEA] Add Ability to Disable Healing on player

be like Camomo on some video admin can troll cheater to disable recover their health.

reference function:
OnPlayerHealthChange

example:
object OnPlayerHealthChange(BasePlayer player, float oldValue, float newValue)
{
// if newValue > oldValue return oldValue
return newValue;
}

Online and offline players

From what i see, online players are also in the offline players list which doesn't seem right to me so hopefully this can be fixed

Make use of needsKeyboard / hudMenuInput for text input fields

When trying to type something in the text fields that the UI of this plugin provides, if the keys being pressed are bound to an action, it is causing unwanted things to happen in-game. For example executing a console command, making your in-game character move and/or opening up the inventory or crafting menu. These will all trigger.

A while ago Facepunch made some improvements to the CUI. A few of these improvements was adding NeedsKeyboard / needsKeyboard / hudMenuInput support which prevents keys being pressed from having effect in the game, thus eliminating the above problem when trying to type something in the text fields.

Would it be possible to add and make use of these for all the input fields in this plugin?
It would be an amazing quality of life addition and update for this plugin.

Thanks for considering.

not broadcasting kick&ban&mute message

hello
when i ban or kick a player by F1 commands its broadcast Kicking PlayerName Reason or kicking baning etc..
also when i mute some one betterchatmute broadcast mute time reason everything but when i use this plugin GUI its only ban/kick him without any broadcast system in-game can u fix this problem? thanks

sorry for my bad english

Button

We need a button to copy steam id if possible

braodcast mute

possible to broadcast mute and logs on discord such as bans and kicks

add ping of player

Hi can you look at and include this patch

it adds a player ping on the player detail page, it is a snapshot when the page is opened so that it is not running a continual ping.

trapped for player disconnected

0001-Added-ping.txt
h

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.