Search the Community
Showing results for tags 'controller'.
-
Version 4.0.7
556 downloads
The plugin allows to define opening and closing times for raids for each day of the week, with the ability to block damage outside of those hours. The configuration is customizable with many options, #FEATURES Defined schedules raids are allowed during the day. Blocks damage or execute console command outside the allowed period. Displaying an UI or use CustomStatusFramework. Everything is customizable, configurable with many options. Protects the player if he has recently joined the server Prevents raids if not enough time to play #INFO Bypass allows you to destroy if is not the raid time (only if block damage is enabled). All options are optional and can be configured The plugin is compatible with players languages The times displayed can be configured for the players, in order to adapt to the format of their country /craid (for open panel) #API private bool API_IsRaidTime() => _mainController.currentSchedule.isRaidTime; private List<int> API_StartSchedule() { return new List<int> { (int)_mainController.currentSchedule.start.day, _mainController.currentSchedule.start.hour, _mainController.currentSchedule.start.minute }; } private List<int> API_EndSchedule() { return new List<int> { (int)_mainController.currentSchedule.end.day, _mainController.currentSchedule.end.hour, _mainController.currentSchedule.end.minute }; }$23.00- 250 comments
- 11 reviews
-
- 9
-
Version 0.1.1
176 downloads
Useful plugin for managing temporary permissions, temporary groups and temporary permissions for groups. This is done through chat commands, built-in Oxide commands, and API methods. This is an alternative to the well-known TimedPermissions plugin, which was abandoned about three years ago, and it offers more advanced features. Note: The dates is in UTC format. The ability to grant players temporary permissions by specifying either the number of seconds, an exact expiration date or until the wipe occurs; The ability to add players to temporary groups by specifying either the number of seconds, an exact expiration date or until the wipe occurs; The ability to grant groups temporary permissions by specifying either the number of seconds, an exact expiration date or until the wipe occurs; The ability to revoke temporary permissions from players and groups prematurely; The ability to remove players from groups prematurely; The ability to perform all the above actions using existing and familiar console commands(e.g., o.grant), simply by adding the number of seconds, the expiration date or the word "wipe" at the end; The ability to perform all the above actions using a chat command (by default /tperm); The ability to perform all the above actions using API methods; The ability to remove all temporary permissions and groups upon wipe detection. temporarypermissions.admin - Grants access to the chat command(by default /tperm). { "Chat command": "tperm", "Interval in seconds for expiration check": 1.0, "Interval in seconds for checking the presence of temporary permissions and temporary groups. There are cases where removal cannot be tracked in the usual way. A value of 0 disables the check": 600.0, "Is it worth restoring removed temporary permissions and temporary groups if the timer hasn't expired?": true, "Is it worth removing temporary permissions and temporary groups when unloading the plugin?": true, "Is it worth using console logging?": true, "Is it worth clearing all temporary permissions upon detecting a wipe?": false, "Wipe ID": null, "Version": { "Major": 0, "Minor": 1, "Patch": 1 } } EN: { "MsgPermissionNotFound": "Permission not found!", "MsgPlayerNotFound": "Player not found!", "MsgGroupNotFound": "Group not found!", "MsgGrantWrongFormat": "Invalid command format! Example: /tperm grant user/group *NameOrId* realpve.vip *secondsOrDateTime*", "MsgRevokeWrongFormat": "Invalid command format! Example: /tperm revoke user/group *NameOrId* realpve.vip", "MsgUserGroupWrongFormat": "Invalid command format! Example: /tperm group add/remove *NameOrId* *groupName*", "MsgUserGranted": "Permission {0} granted to player {1}", "MsgGroupGranted": "Permission {0} granted to group {1}", "MsgUserGroupAdded": "Player {0} has been added to group {1}", "MsgUserRevoked": "Permission {0} has been removed for player {1}", "MsgGroupRevoked": "Permission {0} has been removed for group {1}", "MsgUserGroupRemoved": "Player {0} has been removed from group {1}" } RU: { "MsgPermissionNotFound": "Пермишен не найден!", "MsgPlayerNotFound": "Игрок не найден!", "MsgGroupNotFound": "Группа не найдена!", "MsgGrantWrongFormat": "Не верный формат команды! Пример: /tperm grant user/group *NameOrId* realpve.vip *secondsOrDateTime*", "MsgRevokeWrongFormat": "Не верный формат команды! Пример: /tperm revoke user/group *NameOrId* realpve.vip", "MsgUserGroupWrongFormat": "Не верный формат команды! Пример: /tperm group add/remove *NameOrId* *groupName*", "MsgUserGranted": "Пермишен {0} выдан игроку {1}", "MsgGroupGranted": "Пермишен {0} выдан группе {1}", "MsgUserGroupAdded": "Игрок {0} был добавлен в группу {1}", "MsgUserRevoked": "Пермишен {0} был удален для игрока {1}", "MsgGroupRevoked": "Пермишен {0} был удален для группы {1}", "MsgUserGroupRemoved": "Игрок {0} был удален из группы {1}" } grant - Grants a temporary permission to a player or group. user *NameOrId* realpve.vip wipe - Grants a temporary permission to a player until the next wipe by specifying the player's name or Id, the permission name and the word "wipe"; *NameOrId* realpve.vip 3600 true/false - Grants a temporary permission to a player by specifying the player's name or Id, the permission name, the number of seconds and true/false(optional). If true, the specified seconds will count from the current moment, otherwise(default), they will be added to the existing time; *NameOrId* realpve.vip "2024-08-19 17:57" "2024-08-19 16:57" - Grants a temporary permission to a player by specifying the player's name or Id, the permission name, the expiration date and the assigned date(optional). If not specified, the assigned date will default to the current date, otherwise, it will be set to the provided date. group *GroupName* realpve.vip wipe - Grants a temporary permission to a group until the next wipe by specifying the group's name, the permission name and the word "wipe"; *GroupName* realpve.vip 3600 true/false - Grants a temporary permission to a group by specifying the group's name, the permission name, the number of seconds, and true/false(optional). If true, the specified seconds will count from the current moment, otherwise(default), they will be added to the existing time; *GroupName* realpve.vip "2024-08-19 17:57" "2024-08-19 16:57" - Grants a temporary permission to a group by specifying the group's name, the permission name, the expiration date and the assigned date(optional). If not specified, the assigned date will default to the current date, otherwise, it will be set to the provided date. revoke - Revokes a temporary permission from a player or group. user *NameOrId* realpve.vip - Revokes a temporary permission from a player by specifying the player's name or Id and the permission name; group *GroupName* realpve.vip - Revokes a temporary permission from a group by specifying the group's name and the permission name. add - Temporary addition of a player to a group. *NameOrId* *GroupName* wipe - Temporary addition of a player to a group until the next wipe by specifying the player's name or Id, the group name and the word "wipe"; *NameOrId* *GroupName* 3600 true/false - Temporary addition of a player to a group by specifying the player's name or Id, the group name, the number of seconds, and true/false(optional). If true, the specified seconds will count from the current moment, otherwise(default), they will be added to the existing time; *NameOrId* *GroupName* "2024-08-19 17:57" "2024-08-19 16:57" - Temporary addition of a player to a group by specifying the player's name or Id, the group name, the expiration date and the assigned date(optional). If not specified, the assigned date will default to the current date, otherwise, it will be set to the provided date. remove *NameOrId* *GroupName* - Removal of a player from a temporary group by specifying the player's name or Id and the group name. Example: /tperm grant user iiiaka realpve.vip wipe /tperm grant user iiiaka realpve.vip 3600 true /tperm grant user iiiaka realpve.vip "2024-08-19 17:57" "2024-08-19 16:57" Note: To access the commands, the player must be an admin(console or owner) or have the temporarypermissions.admin permission. P.S. Templates for the commands above can also be used with existing console commands. For example: o.grant user iiiaka realpve.vip 3600 true OnTemporaryPermissionsLoaded: Called after the TemporaryPermissions plugin is fully loaded and ready. OnTemporaryPermissionGranted: Called after the player has been granted a temporary permission. OnTemporaryPermissionUpdated: Called after the player's temporary permission has been updated. OnTemporaryPermissionRevoked: Called after the player's temporary permission has expired or been revoked. OnTemporaryGroupAdded: Called after the player has been temporarily added to the group. OnTemporaryGroupUpdated: Called after the player's temporary group has been updated. OnTemporaryGroupRemoved: Called after the player's temporary group has expired or been removed. OnGroupTemporaryPermissionGranted: Called after the group has been granted a temporary permission. OnGroupTemporaryPermissionUpdated: Called after the group's temporary permission has been updated. OnGroupTemporaryPermissionRevoked: alled after the group's temporary permission has expired or been revoked. void OnTemporaryPermissionsLoaded(VersionNumber version = default) { Puts("The TemporaryPermissions plugin is loaded and ready to go!"); } void OnTemporaryPermissionGranted(string userID, string perm, DateTime expireDate, DateTime assignedDate) { Puts($"Player {userID} has been granted the temporary permission {perm} from {assignedDate} until {expireDate}."); } void OnTemporaryPermissionUpdated(string userID, string perm, DateTime expireDate, DateTime assignedDate) { Puts($"Player {userID}'s temporary permission {perm} has been updated. New expiration date: {expireDate}. Assigned date: {assignedDate}."); } void OnTemporaryPermissionRevoked(string userID, string perm, bool isExpired) { Puts($"Player {userID} has had the temporary permission {perm} revoked. Permission expired: {isExpired}."); } void OnTemporaryGroupAdded(string userID, string groupName, DateTime expireDate, DateTime assignedDate) { Puts($"Player {userID} has been added to the temporary group {groupName} from {assignedDate} until {expireDate}."); } void OnTemporaryGroupUpdated(string userID, string groupName, DateTime expireDate, DateTime assignedDate) { Puts($"Player {userID}'s temporary group {groupName} has been updated. New expiration date: {expireDate}. Assigned date: {assignedDate}."); } void OnTemporaryGroupRemoved(string userID, string groupName, bool isExpired) { Puts($"Player {userID} has had the temporary group {groupName} revoked. Group expired: {isExpired}."); } void OnGroupTemporaryPermissionGranted(string groupName, string perm, DateTime expireDate, DateTime assignedDate) { Puts($"Group {groupName} has been granted the temporary permission {perm}, valid from {assignedDate} until {expireDate}."); } void OnGroupTemporaryPermissionUpdated(string groupName, string perm, DateTime expireDate, DateTime assignedDate) { Puts($"Group {groupName}'s temporary permission {perm} has been updated. New expiration date: {expireDate}. Assigned date: {assignedDate}."); } void OnGroupTemporaryPermissionRevoked(string groupName, string perm, bool isExpired) { Puts($"Group {groupName} has had the temporary permission {perm} revoked. Permission expired: {isExpired}."); } [PluginReference] private Plugin TemporaryPermissions; There are 28 methods: IsReady User's Permissions: GrantUserPermission RevokeUserPermission UserHasPermission GrantActiveUsersPermission GrantAllUsersPermission RevokeActiveUsersPermission RevokeAllUsersPermission UserGetAllPermissions ActiveUsersGetAllPermissions AllUsersGetAllPermissions User's Groups: AddUserGroup RemoveUserGroup UserHasGroup AddActiveUsersGroup AddAllUsersGroup RemoveActiveUsersGroup RemoveAllUsersGroup UserGetAllGroups ActiveUsersGetAllGroups AllUsersGetAllGroups Group's Permissions: GrantGroupPermission RevokeGroupPermission GroupHasPermission GrantAllGroupsPermission RevokeAllGroupsPermission GroupGetAllPermissions AllGroupsGetAllPermissions IsReady: Used to check if the TemporaryPermissions plugin is loaded and ready to work. The IsReady method returns true if it is ready, or null if it is not. (bool)TemporaryPermissions?.Call("IsReady");//Calling the IsReady method. If the result is not null(bool true), the plugin is ready. GrantUserPermission: Used to grant a temporary permission to a player. Returns true if the grant was successful. To call the GrantUserPermission method, you need to pass 5 parameters, 3 of which are optional: IPlayer or BasePlayer or <string>playerID - The player object or their Id; <string>permName - The name of the permission; <int>secondsToAdd or <DateTime>expireDate - Optional. The time in seconds to add, or the end date. If a number less than 1 is specified, or if this parameter is not specified, the permission will be valid until the wipe; <bool>fromNow or <DateTime>assignedDate - Optional. true/false to specify whether the seconds should be added to the current date or to the existing time, or an exact assignment date. Defaults to the current date; <bool>checkExistence - Optional. Whether to check for the existence of the permission. (bool)TemporaryPermissions?.Call("GrantUserPermission", player.UserIDString, "realpve.vip");//Calling the GrantUserPermission method without specifying the third parameter, to grant temporary permission until the wipe. (bool)TemporaryPermissions?.Call("GrantUserPermission", player.UserIDString, "realpve.vip", 0);//Calling the GrantUserPermission method with the specified number less than 1, to grant temporary permission until the wipe. (bool)TemporaryPermissions?.Call("GrantUserPermission", player.UserIDString, "realpve.vip", 3600, true, true);//Calling the GrantUserPermission method with the specified number of seconds to add. (bool)TemporaryPermissions?.Call("GrantUserPermission", player.UserIDString, "realpve.vip", expireDate, assignedDate, true);//Calling the GrantUserPermission method with the specified DateTime for the end and start of the temporary permission. RevokeUserPermission: Used to revoke a temporary permission from a player. Returns true if the revoke was successful. To call the RevokeUserPermission method, you need to pass 2 parameters: IPlayer or BasePlayer or <string>playerID - The player object or their Id; <string>permName - The name of the permission. (bool)TemporaryPermissions?.Call("RevokeUserPermission", player.UserIDString, "realpve.vip"); UserHasPermission: Used to check if a player has a temporary permission. Returns true if the player has the specified temporary permission. To call the UserHasPermission method, you need to pass 2 parameters: IPlayer or BasePlayer or <string>playerID - The player object or their Id; <string>permName - The name of the permission. (bool)TemporaryPermissions?.Call("UserHasPermission", player.UserIDString, "realpve.vip"); GrantActiveUsersPermission: Used to temporarily grant a permission to all online players. Returns the <int>number of successful grants of temporary permissions to players. To call the GrantActiveUsersPermission method, you need to pass 3 parameters, 2 of which is optional: <string>permName - The name of the permission; <int>secondsToAdd or <DateTime>expireDate - Optional. The time in seconds to add, or the end date. If a number less than 1 is specified, or if this parameter is not specified, the permission will be valid until the wipe; <bool>fromNow or <DateTime>assignedDate - Optional. true/false to specify whether the seconds should be added to the current date or to the existing time, or an exact assignment date. Defaults to the current date. (int)TemporaryPermissions?.Call("GrantActiveUsersPermission", "realpve.vip");// Calling the GrantActiveUsersPermission method without specifying the second parameter, to grant all online players temporary permission until the wipe. (int)TemporaryPermissions?.Call("GrantActiveUsersPermission", "realpve.vip", 0);//Calling the GrantActiveUsersPermission method with the specified number less than 1, to grant all online players temporary permission until the wipe. (int)TemporaryPermissions?.Call("GrantActiveUsersPermission", "realpve.vip", 3600, true);//Calling the GrantActiveUsersPermission method with the specified number of seconds to add. (int)TemporaryPermissions?.Call("GrantActiveUsersPermission", "realpve.vip", expireDate, assignedDate);//Calling the GrantActiveUsersPermission method with the specified DateTime for the end and start of the temporary permission. GrantAllUsersPermission: Used to grant a temporary permission to all players. Returns the <int>number of successful grants of temporary permissions to players. To call the GrantAllUsersPermission method, you need to pass 3 parameters, 2 of which is optional: <string>permName - The name of the permission; <int>secondsToAdd or <DateTime>expireDate - Optional. The time in seconds to add, or the end date. If a number less than 1 is specified, or if this parameter is not specified, the permission will be valid until the wipe; <bool>fromNow or <DateTime>assignedDate - Optional. true/false to specify whether the seconds should be added to the current date or to the existing time, or an exact assignment date. Defaults to the current date. (int)TemporaryPermissions?.Call("GrantAllUsersPermission", "realpve.vip");//Calling the GrantAllUsersPermission method without specifying the second parameter, to grant all players temporary permission until the wipe. (int)TemporaryPermissions?.Call("GrantAllUsersPermission", "realpve.vip", 0);//Calling the GrantAllUsersPermission method with the specified number less than 1, to grant all players temporary permission until the wipe. (int)TemporaryPermissions?.Call("GrantAllUsersPermission", "realpve.vip", 3600, true);//Calling the GrantAllUsersPermission method with the specified number of seconds to add. (int)TemporaryPermissions?.Call("GrantAllUsersPermission", "realpve.vip", expireDate, assignedDate);//Calling the GrantAllUsersPermission method with the specified DateTime for the end and start of the temporary permission. RevokeActiveUsersPermission: Used to revoke a temporary permission from all online players. Returns the <int>number of successful revokes of temporary permissions to players. To call the RevokeActiveUsersPermission method, you need to pass 1 parameter: <string>permName - The name of the permission. (int)TemporaryPermissions?.Call("RevokeActiveUsersPermission", "realpve.vip"); RevokeAllUsersPermission: Used to revoke a temporary permission from all players. Returns the <int>number of successful revokes of temporary permissions to players. To call the RevokeAllUsersPermission method, you need to pass 1 parameter: <string>permName - The name of the permission. (int)TemporaryPermissions?.Call("RevokeAllUsersPermission", "realpve.vip"); UserGetAllPermissions: Used to retrieve all temporary permissions of a player. Returns a Dictionary<string, DateTime[]> where the key is the permission name and the value is an array of 2 DateTimes: the first date is the assignment date and the second date is the expiration date of the permission. If the expiration date is set to default, it means the permission is valid until the wipe. To call the UserGetAllPermissions method, you need to pass 1 parameter: <string>playerID - The player's Id. (Dictionary<string, DateTime[]>)TemporaryPermissions?.Call("UserGetAllPermissions", player.UserIDString); ActiveUsersGetAllPermissions: Used to retrieve all temporary permissions of all online players who have temporary permissions. Returns a Dictionary<string, Dictionary<string, DateTime[]>> where the key is userID and the value is another Dictionary<string, DateTime[]>, where the key is the permission name and the value is an array of 2 DateTimes: the first date is the assignment date and the second date is the expiration date of the permission. If the expiration date is set to default, it means the permission is valid until the wipe. (Dictionary<string, Dictionary<string, DateTime[]>>)TemporaryPermissions?.Call("ActiveUsersGetAllPermissions"); AllUsersGetAllPermissions: Used to retrieve all temporary permissions of all players who have temporary permissions. Returns a Dictionary<string, Dictionary<string, DateTime[]>> where the key is userID and the value is another Dictionary<string, DateTime[]>, where the key is the permission name and the value is an array of 2 DateTimes: the first date is the assignment date and the second date is the expiration date of the permission. If the expiration date is set to default, it means the permission is valid until the wipe. (Dictionary<string, Dictionary<string, DateTime[]>>)TemporaryPermissions?.Call("AllUsersGetAllPermissions"); AddUserGroup: Used to temporarily add a player to a group. Returns true if the addition was successful. To call the AddUserGroup method, you need to pass 5 parameters, 3 of which are optional: IPlayer or BasePlayer or <string>playerID - The player object or their Id; <string>groupName - The name of the group; <int>secondsToAdd or <DateTime>expireDate - Optional. The time in seconds to add, or the end date. If a number less than 1 is specified, or if this parameter is not specified, the group will be valid until the wipe; <bool>fromNow or <DateTime>assignedDate - Optional. true/false to specify whether the seconds should be added to the current date or to the existing time, or an exact assignment date. Defaults to the current date; <bool>checkExistence - Optional. Whether to check for the existence of the group. (bool)TemporaryPermissions?.Call("AddUserGroup", player.UserIDString, "vip");//Calling the AddUserGroup method without specifying the third parameter to temporarily add a player, to a group until the wipe. (bool)TemporaryPermissions?.Call("AddUserGroup", player.UserIDString, "vip", 0);//Calling the AddUserGroup method with the specified number less than 1, to temporarily add a player to a group until the wipe. (bool)TemporaryPermissions?.Call("AddUserGroup", player.UserIDString, "vip", 3600, true, true);//Calling the AddUserGroup method with the specified number of seconds to add. (bool)TemporaryPermissions?.Call("AddUserGroup", player.UserIDString, "vip", expireDate, assignedDate, true);//Calling the AddUserGroup method with the specified DateTime for the end and start of the temporary permission. RemoveUserGroup: Used to remove a temporary group from a player. Returns true if the removal was successful. To call the RemoveUserGroup method, you need to pass 2 parameters: IPlayer or BasePlayer or <string>playerID - The player object or their Id; <string>groupName - The name of the group. (bool)TemporaryPermissions?.Call("RemoveUserGroup", player.UserIDString, "vip"); UserHasGroup: Used to check if a player has a temporary group. Returns true if the player has the specified temporary group. To call the UserHasGroup method, you need to pass 2 parameters: IPlayer or BasePlayer or <string>playerID - The player object or their Id; <string>groupName - The name of the group. (bool)TemporaryPermissions?.Call("UserHasGroup", player.UserIDString, "vip"); AddActiveUsersGroup: Used to temporarily add a group to all online players. Returns the <int>number of successful additions of the temporary group to players. To call the AddActiveUsersGroup method, you need to pass 3 parameters, 2 of which is optional: <string>groupName - The name of the group; <int>secondsToAdd or <DateTime>expireDate - Optional. The time in seconds to add, or the end date. If a number less than 1 is specified, or if this parameter is not specified, the group will be valid until the wipe; <bool>fromNow or <DateTime>assignedDate - Optional. true/false to specify whether the seconds should be added to the current date or to the existing time, or an exact assignment date. Defaults to the current date. (int)TemporaryPermissions?.Call("AddActiveUsersGroup", "vip");//Calling the AddActiveUsersGroup method without specifying the second parameter to temporarily add all online players to a group until the wipe. (int)TemporaryPermissions?.Call("AddActiveUsersGroup", "vip", 0);//Calling the AddActiveUsersGroup method with the specified number less than 1, to temporarily add all online players to a group until the wipe. (int)TemporaryPermissions?.Call("AddActiveUsersGroup", "vip", 3600, true);//Calling the AddActiveUsersGroup method with the specified number of seconds to add. (int)TemporaryPermissions?.Call("AddActiveUsersGroup", "vip", expireDate, assignedDate);//Calling the AddActiveUsersGroup method with the specified DateTime for the end and start of the temporary permission. AddAllUsersGroup: Used to temporarily add a group to all players. Returns the <int>number of successful additions of the temporary group to players. To call the AddAllUsersGroup method, you need to pass 3 parameters, 2 of which is optional: <string>groupName - The name of the group; <int>secondsToAdd or <DateTime>expireDate - Optional. The time in seconds to add, or the end date. If a number less than 1 is specified, or if this parameter is not specified, the group will be valid until the wipe; <bool>fromNow or <DateTime>assignedDate - Optional. true/false to specify whether the seconds should be added to the current date or to the existing time, or an exact assignment date. Defaults to the current date. (int)TemporaryPermissions?.Call("AddAllUsersGroup", "vip");//Calling the AddAllUsersGroup method without specifying the second parameter to temporarily add all players to a group until the wipe. (int)TemporaryPermissions?.Call("AddAllUsersGroup", "vip", 0);//Calling the AddAllUsersGroup method with the specified number less than 1, to temporarily add all players to a group until the wipe. (int)TemporaryPermissions?.Call("AddAllUsersGroup", "vip", 3600, true);//Calling the AddAllUsersGroup method with the specified number of seconds to add. (int)TemporaryPermissions?.Call("AddAllUsersGroup", "vip", expireDate, assignedDate);//Calling the AddAllUsersGroup method with the specified DateTime for the end and start of the temporary permission. RemoveActiveUsersGroup: Used to remove a temporary group from all online players. Returns the <int>number of successful removals of temporary groups from players. To call the RemoveActiveUsersGroup method, you need to pass 1 parameter: <string>groupName - The name of the group. (int)TemporaryPermissions?.Call("RemoveActiveUsersGroup", "vip"); RemoveAllUsersGroup: Used to remove a temporary group from all players. Returns the <int>number of successful removals of temporary groups from players. To call the RemoveAllUsersGroup method, you need to pass 1 parameter: <string>permName - The name of the permission. (int)TemporaryPermissions?.Call("RemoveAllUsersGroup", "vip"); UserGetAllGroups: Used to retrieve all temporary groups of a player. Returns a Dictionary<string, DateTime[]> where the key is the group name and the value is an array of 2 DateTimes: the first date is the assignment date and the second date is the expiration date of the group. If the expiration date is set to default, it means the group is valid until the wipe. To call the UserGetAllGroups method, you need to pass 1 parameter: <string>permName - The name of the permission. (Dictionary<string, DateTime[]>)TemporaryPermissions?.Call("UserGetAllGroups", player.UserIDString); ActiveUsersGetAllGroups: Used to retrieve all temporary groups of all online players who have temporary groups. Returns a Dictionary<string, Dictionary<string, DateTime[]>> where the key is userID and the value is another Dictionary<string, DateTime[]>, where the key is the group name and the value is an array of 2 DateTimes: the first date is the assignment date and the second date is the expiration date of the group. If the expiration date is set to default, it means the group is valid until the wipe. (Dictionary<string, Dictionary<string, DateTime[]>>)TemporaryPermissions?.Call("ActiveUsersGetAllGroups"); AllUsersGetAllGroups: Used to retrieve all temporary groups of all players who have temporary groups. Returns a Dictionary<string, Dictionary<string, DateTime[]>> where the key is userID and the value is another Dictionary<string, DateTime[]>, where the key is the group name and the value is an array of 2 DateTimes: the first date is the assignment date and the second date is the expiration date of the group. If the expiration date is set to default, it means the group is valid until the wipe. (Dictionary<string, Dictionary<string, DateTime[]>>)TemporaryPermissions?.Call("AllUsersGetAllGroups"); GrantGroupPermission: Used to grant a temporary permission to a group. Returns true if the grant was successful. To call the GrantGroupPermission method, you need to pass 5 parameters, 3 of which are optional: <string>groupName - The name of the group; <string>permName - The name of the permission; <int>secondsToAdd or <DateTime>expireDate - Optional. The time in seconds to add, or the end date. If a number less than 1 is specified, or if this parameter is not specified, the permission will be valid until the wipe; <bool>fromNow or <DateTime>assignedDate - Optional. true/false to specify whether the seconds should be added to the current date or to the existing time, or an exact assignment date. Defaults to the current date; <bool>checkExistence - Optional. Whether to check for the existence of the permission. (bool)TemporaryPermissions?.Call("GrantGroupPermission", "vip", "realpve.vip");//Calling the GrantGroupPermission method without specifying the third parameter, to grant temporary permission until the wipe. (bool)TemporaryPermissions?.Call("GrantGroupPermission", "vip", "realpve.vip", 0);//Calling the GrantGroupPermission method with the specified number less than 1, to grant temporary permission until the wipe. (bool)TemporaryPermissions?.Call("GrantGroupPermission", "vip", "realpve.vip", 3600, true, true);//Calling the GrantGroupPermission method with the specified number of seconds to add. (bool)TemporaryPermissions?.Call("GrantGroupPermission", "vip", "realpve.vip", expireDate, assignedDate, true);//Calling the GrantGroupPermission method with the specified DateTime for the end and start of the temporary permission. RevokeGroupPermission: Used to revoke a temporary permission from a group. Returns true if the revoke was successful. To call the RevokeGroupPermission method, you need to pass 2 parameters: <string>groupName - The name of the group; <string>permName - The name of the permission. (bool)TemporaryPermissions?.Call("RevokeGroupPermission", "vip", "realpve.vip"); GroupHasPermission: Used to check if a group has a temporary permission. Returns true if the group has the specified temporary permission. To call the GroupHasPermission method, you need to pass 2 parameters: <string>groupName - The name of the group; <string>permName - The name of the permission. (bool)TemporaryPermissions?.Call("GroupHasPermission", "vip", "realpve.vip"); GrantAllGroupsPermission: Used to temporarily grant a permission to all groups. Returns the <int>number of successful grants of temporary permissions to groups. To call the GrantAllGroupsPermission method, you need to pass 3 parameters, 2 of which is optional: <string>permName - The name of the permission; <int>secondsToAdd or <DateTime>expireDate - Optional. The time in seconds to add, or the end date. If a number less than 1 is specified, or if this parameter is not specified, the permission will be valid until the wipe; <bool>fromNow or <DateTime>assignedDate - Optional. true/false to specify whether the seconds should be added to the current date or to the existing time, or an exact assignment date. Defaults to the current date. (int)TemporaryPermissions?.Call("GrantAllGroupsPermission", "realpve.vip");//Calling the GrantAllGroupsPermission method without specifying the second parameter, to grant all groups temporary permission until the wipe. (int)TemporaryPermissions?.Call("GrantAllGroupsPermission", "realpve.vip", 0);//Calling the GrantAllGroupsPermission method with the specified number less than 1, to grant all groups temporary permission until the wipe. (int)TemporaryPermissions?.Call("GrantAllGroupsPermission", "realpve.vip", 3600, true);//Calling the GrantAllGroupsPermission method with the specified number of seconds to add. (int)TemporaryPermissions?.Call("GrantAllGroupsPermission", "realpve.vip", expireDate, assignedDate);//Calling the GrantAllGroupsPermission method with the specified DateTime for the end and start of the temporary permission. RevokeAllGroupsPermission: Used to revoke a temporary permission from all groups. Returns the <int>number of successful revokes of temporary permissions to groups. To call the RevokeAllGroupsPermission method, you need to pass 1 parameter: <string>permName - The name of the permission. (int)TemporaryPermissions?.Call("RevokeAllGroupsPermission", "realpve.vip"); GroupGetAllPermissions: Used to retrieve all temporary permissions of a group. Returns a Dictionary<string, DateTime[]> where the key is the permission name and the value is an array of 2 DateTimes: the first date is the assignment date and the second date is the expiration date of the permission. If the expiration date is set to default, it means the permission is valid until the wipe. To call the GroupGetAllPermissions method, you need to pass 1 parameter: <string>groupName - The name of the group. (Dictionary<string, DateTime[]>)TemporaryPermissions?.Call("GroupGetAllPermissions", "vip"); AllGroupsGetAllPermissions: Used to retrieve all temporary permissions of all groups that have temporary permissions. Returns a Dictionary<string, Dictionary<string, DateTime[]>> where the key is the group name and the value is another Dictionary<string, DateTime[]>, where the key is the permission name and the value is an array of 2 DateTimes: the first date is the assignment date and the second date is the expiration date of the permission. If the expiration date is set to default, it means the permission is valid until the wipe. (Dictionary<string, Dictionary<string, DateTime[]>>)TemporaryPermissions?.Call("AllGroupsGetAllPermissions");Free -
Version 1.0.9
110 downloads
Admin Tools is an all-in-one plugin designed to make your job as a server owner/admin easier. This plugin has a wide range of features and commands that allow you to control your server easily, both in-game and via Discord. It also adds custom quality of life features exclusive to this plugin! ★ Inventory Viewing System - View an NPC or player's inventory in Discord and in-game ★ Custom Combatlog System - View a player's combatlog in Discord and in-game ★ Backpack Viewing System - View a player's backpack (uMod plugin) in Discord ★ Custom ID System - Get the ID of players on your server quick and easy, copy directly from chat ★ Warn System - Inform players of their wrongdoings and keep track of them (Warn Visuals: UI, Chat, Chat + Toast/Gametip) ★ Watchlist System - Lets you put suspicious players on a list for you to monitor, logs in-game and to discord ★ Server Command System - Reload/load/unload plugins and other console commands in Discord and in-game ★ F7 Report Logging System - Log F7 reports to discord with their combat log attached (if enabled) ★ and more! (Rest of features below) (Changed/Exclusive): * Timestamps for video in video's description - Make sure to up video quality if watching from this site. * Timestamps for video in video's description - Make sure to up video quality if watching from this site. ★ Permission System - Grant/revoke permissions to groups and players from Discord and in-game ★ Minecraft Creative System - While enabled, hold middle click to get the item you're looking at ★ Rename System - Rename the players who think they are funny (toggle in config) ★ Tempban System - Tempban players with no database required ★ Unique ID System - Find players even when they have the same or similar names -- Thanks to nivex ★ Kill, Wound, Revive & Respawn System - Kill, wound (down), revive and respawn players from Discord and in-game ★ Team Viewing System - View a player's team members from Discord and in-game Q: How do I set up the bot? A: Set Up Instructions - If you miss any permissions, can always add them to the Admin Tools role in discord after you invite the bot. Q: Does this plugin link players to Rust? A: No. You can use the free plugin DiscordCore by MJSU if you would like to link your players. Q: Does this plugin log kills/PMs/F1 Spawn/chat? A: No. Admin Tools only logs the following if enabled: F7 Reports, Bans, commands from this plugin, and players who are watchlisted. You can always view a player's combatlog from discord though. You can use the free logging plugins DiscordLogger by MONoH or DiscordChat by MJSU depending on your goal. However, personally, I recommend against using logging functionality that would be occurring very frequently due to Discord's rate limiting. Though, DIscordLogger is made in a way that combines messages if possible to prevent limiting. Q: Can this log to multiple Discord servers? A: YES. All you need to put for logging to multiple servers is the channel ID you want to log to in the list of channel IDs in the config. Q: Does this plugin ONLY work with Discord Extension 3.0.0+? A: YES. You need to download the 3.0.0+ version from GitHub, it is linked at the top (and right here) as a required dependency. Any version prior to 3.0.0 will not work with this plugin, but any version 3.0.0 and later will. Q: Will this work on a shared hosting server? A: Yes, BUT you will not be able to take advantage of the threading done within the plugin. It should still work fine, but when you're on a shared host, you may only have access to a single core/thread (not positive on which) and as a result the threading I am doing in the plugin will just be ran on the main thread. As a result some of the discord functionality (ie: image generation) may affect the server as its now running on the main thread (what the server uses to run the game on) instead of a separate thread which would normally not affect the server. The image generation stuff (backpack and inventory) is normally pretty quick depending on number of items and pictures being used/sent, and can be between 100-250ms to generate on my server, however that was while no players were on. Q: How do I fix this error Response Code: Forbidden Discord Error Code: 50001 Discord Error: Missing Access ? A: All you need to fix this issue is MFA/2FA on the account used to create the bot. This issue is caused by Discord requiring your account to have either MFA or 2FA due to the bot being in a Community Discord server. After you add 2FA/MFA this error will go away. Q: Renaming isn't working, how do I fix this? A: The issue is likely that you don't have it enabled in the config, make sure to enable it in the config, its above the warning options and the discord API options. Q: My commands aren't appearing, how do I fix this? A: You can do the following in an attempt to try and force the bot to update its commands: Discord > Server Settings > Integrations > Admin Tools Bot > Toggle one of the checkboxes it shows in either Roles & Members or Channels > Save > Undo toggle > Save again. Q: Does this work with Rustcord? A: Yes, however you need this version here by MJSU as it has been updated to work with DiscordExtension 3.0.0+ versions. Special thanks to Nivex for creating the method used to generate unique IDs. For support, please make a support ticket or join the Cobalt Studios Discord.$29.99- 11 comments
- 3 reviews
-
- 8
-
- #admin
- #tools
-
(and 36 more)
Tagged with:
- #admin
- #tools
- #admin tools
- #moderation
- #discord
- #inventory
- #watchlist
- #warn
- #rename
- #backpacks
- #combatlog
- #custom
- #discord tools
- #id
- #ban
- #tempban
- #report
- #configurable
- #owner
- #discord bot
- #controller
- #team
- #team view
- #f7
- #f7 report
- #cobalt
- #cobalt studios
- #system
- #copy paste
- #copypaste
- #backpack
- #creative
- #permission
- #violationhandler.exe
- #violationhandler
- #admintools
- #clans
- #essentials
-
Version 2.2.1
1,435 downloads
Kit Controller is a simple, amazing kit system! Easily create kits, redeem kits, and edit kits all within the amazing UI! FEATURES - Instantly import your old kits data from the UMod Rust Kits plugin with the /convertkits command! - Effortlessly design kits directly within the user interface, streamlining the creation process. - Experience convenience with automatic kit allocation upon player spawn, ensuring immediate readiness. - Organize kits into distinct categories for easy navigation and selection. - Change the quantity of an item in a kit right from the kit edit page - Put a price on kits to allow them to be purchased (Supports RP, Economics, and Items for currency) - Kit admin commands for giving kits, deleting kits, and clearing user data. - Edit kits without the hassle of keybind adjustments or movement interruptions. - Automatically purge player data with each server wipe, maintaining optimal performance. - Customize kit accessibility with cooldowns, maximum redemption limits, and permission-based controls. - Choose to display kits universally or exclusively to players with specific permissions. - Utilize the Kit Viewer for comprehensive insights into each kit's contents. - Easily identify weapon attachments included in each kit. - Personalize the kits panel with an image slot at the bottom, perfect for promotional material like VIP kit discounts. COMMANDS AND PERMISSIONS /kit or /kits - Configurable in the config /kitadmin /kitadmin give /kitadmin delete /kitadmin reset - kitcontroller.admin - kitcontroller.<> - You can set permissions for auto kits and normal kits, these permissions will be what you set them to Need support or want updates about what is coming to the plugin? Join the support discord here https://discord.gg/RVePam7pd7$19.99 -
Version 1.0.3
551 downloads
Welcome Controller Additions is exactly what it sounds like. Some QOL addons for Welcome Controller! MORE FEATURES COMING VERY SOON! FEATURES - Q&A Dropdowns - VIP Rank display - Social links How to add into Welcome Controller... To add in one of the add-ons you need to do the following Firstly, if you want to use the social links, there is a toggle for it in Welcome Controllers config, enable that and fill out the info in the additions plugin and that's good to go. Second, vip ranks. Go to the addons section in the Welcome Controller config, where it says "Plugin Addon Name" You'll need to add "WUIAttachments_VipRanks" Third, Q&A's. Go to the addons section in the Welcome Controller config, where it says "Plugin Addon Name" You'll need to add "WUIAttachments_IdentiferYouSetForTheQ&A" of course replacing "IdentiferYouSetForTheQ&A" with the actual identifier you set in the additions plugin. Need support or want updates about what is coming to the plugin? Join the support discord here https://discord.gg/RVePam7pd7$9.99- 13 comments
- 1 review
-
- 3
-
- #welcome
- #controller
-
(and 9 more)
Tagged with:
-
Version 1.0.1
110 downloads
Easily display all your servers within a very clean a simple UI. Even put a quick connect button for people to instantly connect to the server! FEATURES - Simple setup - Very clean UI - Auto receives server info to display to your players - Instant connect buttons - Little to no performance impact - Easy integration with Welcome Controller To get your battlemetrics server ID, all you need to do is view your server on Battlemetrics, and it's the little number at the end of the URL. https://www.battlemetrics.com/servers/rust/6803740 Support? Questions? Comments? Concerns? Message me in my Discord! https://discord.gg/RVePam7pd7 { "Servers Commands": [ "servers", "sv" ], "Servers": [ { "Server ID's (BattleMetrics Id's)": "6803740", "PlaceholderBanner": "https://i.ibb.co/c6Y58gQ/Placeholder-Banner.png" }, { "Server ID's (BattleMetrics Id's)": "12747928", "PlaceholderBanner": "https://i.ibb.co/c6Y58gQ/Placeholder-Banner.png" }, { "Server ID's (BattleMetrics Id's)": "7482472", "PlaceholderBanner": "https://i.ibb.co/c6Y58gQ/Placeholder-Banner.png" }, { "Server ID's (BattleMetrics Id's)": "10519728", "PlaceholderBanner": "https://i.ibb.co/c6Y58gQ/Placeholder-Banner.png" }, { "Server ID's (BattleMetrics Id's)": "16741517", "PlaceholderBanner": "https://i.ibb.co/c6Y58gQ/Placeholder-Banner.png" }, { "Server ID's (BattleMetrics Id's)": "15532055", "PlaceholderBanner": "https://i.ibb.co/c6Y58gQ/Placeholder-Banner.png" }, { "Server ID's (BattleMetrics Id's)": "8113880", "PlaceholderBanner": "https://i.ibb.co/c6Y58gQ/Placeholder-Banner.png" }, { "Server ID's (BattleMetrics Id's)": "9929204", "PlaceholderBanner": "https://i.ibb.co/c6Y58gQ/Placeholder-Banner.png" } ], "UI Colors": { "BlurBackgroundColor": "0 0 0 .4", "MainUIColor": "0 0 0 .4", "MultiMainPanelColor": "0 0 0 .5", "MultiServerTitlePanelColor": "0 0 0 .4", "MultiServerTitleTextColor": "1 1 1 1", "MultiPlayerPanelColor": "0 0 0 .5", "MultiPlayerPanelFillColor": "0.17 0.68 1 .5", "MultiPlayerPanelTextColor": "1 1 1 .6", "MultiPlayerConnectPanelColor": ".25 .31 .16 .8", "MultiPlayerConnectTextColor": ".66 .86 .30 .8", "SingleMainBlurColor": "0 0 0 .4", "SingleMainPanelColor": ".17 .17 .17 1", "SingleServerTitlePanelColor": "1 1 1 .1", "SingleServerTitleTextColor": "1 1 1 1", "SinglePlayerPanelColor": "1 1 1 .1", "SinglePlayerPanelFillColor": "0.17 0.68 1 .7", "SinglePlayerPanelTextColor": "1 1 1 .7", "SinglePlayerConfirmPanelColor": ".25 .31 .16 1", "SinglePlayerConfirmTextColor": ".66 .86 .30 1", "SinglePlayerCancelPanelColor": "0.76 0.14 0.14 .4", "SinglePlayerCancelTextColor": "0.93 0.18 0.18 .75", "SingleDescPanelColor": "1 1 1 .1", "SingleDescTextColor": "1 1 1 .7" } }$14.99 -
Version 2.0.7
272 downloads
Loadout controller is made to assist in allowing your battlefield or even PVE community to thrive with customizable loadouts. FEATURES - Multiple permission groups - You can set different saveable items for each permission group - You can set different default loadouts for each permission group - You can set the amount of saveable personal loadouts for each permission group - You can limit the amount of items that are able to be saved in each permission group - Very nice UI that tells you what can and cannot be saved and if a partial bit of a stack can be saved - You can view what is in your loadout right in the UI - Supports multiple loadouts for each player - Admins can set new loadouts for each permission group right in the UI - Automatically applies loadout on respawn$19.99- 45 comments
- 3 reviews
-
- #loadout
- #controller
-
(and 5 more)
Tagged with:
-
Version 1.0.8
828 downloads
Shop Controller is an advanced shop UI system. Offers selling of items and commands as well as an in-game item editor. FEATURES • UI Cart system (Optional) • In-game item editor • In-game command editor • Item cooldowns • Command cooldowns • Custom item skins • Sell back to shop (Optional) • Easy color editing of the UI • Multi currency support (RP, Economics, any item) • Custom shop commands PERMISSIONS shopcontroller.use shopcontroller.admin SETUP The setup is very easy! - Set the commands you want the shop to be opened with - Set your currency. It supports RP, Economics, or any item (use the shortname)! - Set if you want to use the cart system or not - Plugin images, change if you want to use images other than the default ones. - UI Elements, all of these are color, "Rust Format" > https://tools.rustplugins.io/colors Support? Questions? Comments? Concerns? Message me in my Discord! https://discord.gg/RVePam7pd7$29.99- 30 comments
- 2 reviews
-
- 3
-
Version 1.0.3
25 downloads
Change the speed, fuel time and resource gained from all quarries and the giant excavator with a simple config. Works with GatherManager. Chat commands (admin only): /qc.data - Displays in chat the values for each of the quarries Config: You can easily configure each quarry type separately: Fuel time - How long does a diesel last (in seconds) Resource tickrate - How often resources are added to the output container (in seconds) Amount of resources - Total amount of resources from each diesel. A value of 1000 means it makes the same amount as vanilla. Changing this value to 2000 means it makes 2 times as much as vanilla, or 500 means half as much as vanilla. (example: in vanilla 1 diesel = 50 hqm at the HQM quarry. Setting the value to 2000 gives you 100 hqm for each diesel, and a value of 500 gives 25 hqm for each diesel. Note: Any GatherManager multipliers are multiplied on top of this setting Excavator fuel time - How long a diesel last for the giant excavator (in seconds) Excavator resource tickrate - How often resources are added to the output container for the giant excavator (in seconds) Excavator resource multiplier - Multiplies the output resource with this value. Note: This multiplier and GatherManager multiplier will stack (if "Use excavator settings if GatherManager exists" is set to true) Use excavator settings if GatherManager exists - If GatherManager is loaded (or reloaded) and this setting is true, it will override GatherManager excavator settings. Note: GatherManager still modifies the output as normal Default config (vanilla values): { "Stone Quarry": { "Fuel time per diesel (seconds)": 120.0, "Resource tickrate (seconds)": 5.0, "Amount of resources per diesel (1000 = vanilla)": 1000.0 }, "Sulfur Quarry": { "Fuel time per diesel (seconds)": 120.0, "Resource tickrate (seconds)": 5.0, "Amount of resources per diesel (1000 = vanilla)": 1000.0 }, "High quality metal Quarry": { "Fuel time per diesel (seconds)": 120.0, "Resource tickrate (seconds)": 5.0, "Amount of resources per diesel (1000 = vanilla)": 1000.0 }, "Pumpjack": { "Fuel time per diesel (seconds)": 120.0, "Resource tickrate (seconds)": 5.0, "Amount of resources per diesel (1000 = vanilla)": 1000.0 }, "Excavator": { "Excavator fuel time per diesel (seconds)": 120.0, "Excavator resource tickrate": 3.0, "Excavator resource multiplier": { "Stone": 1.0, "Sulfur": 1.0, "Metal fragments": 1.0, "High quality metal": 1.0 } }, "Use excavator settings if GatherManager exists": true }$7.99- 8 comments
- 1 review
-
- 1
-
- #quarry
- #controller
- (and 7 more)
-
Version 1.2.3
158 downloads
Open UI - /craftcontrole (craftcontroller.use) FEATURES: Changing the minimum required workbench for item crafting Craft time is adjustable For items with a certain skinID Block crafting Block explore a blueprint Block explore at the workbench P.s - (My Discord - tofurahie#4144) Config: { "Craft Rate in %": 50, "Item Settings": { "ammo.shotgun.slug": { "Default Skin": 0, "Block craft": false, "Block to explore a blueprint": false, "Block to explore at the workbench": false, "Craft time (-1 => Default)": -1.0, "WorkbenchLevel (-1 => Default)": -1 }, "ammo.rifle": { "Default Skin": 0, "Block craft": true, "Block to explore a blueprint": true, "Block to explore at the workbench": false, "Craft time (-1 => Default)": 15.0, "WorkbenchLevel (-1 => Default)": 1 } } }$8.49- 2 comments
- 1 review
-
- #craft
- #workbench
- (and 9 more)
-
Version 1.0.2
155 downloads
Extremely easy and dynamic Calendar system for your server! In just a few seconds you could inform players about the next few months of wipes, events, etc! FEATURES - Built in editor - Auto schedule events and wipe info - Click one button to add the next needed month - Auto generates the new month if you forget to - Page with all months listed - Schedule based on week day - Schedule based on x amount of days - Built in legend editor to alter your legends - Built in day editor if you just want to edit one day at a time - Support for Welcome Controller - Add images on specific days - Add larger images within the info of that day - Editable commands - All UI colors are easily editable - Full lang file - ETC!!**** EXTRA INFO ADMIN PERMISSION: calendarcontroller.admin Default commands: /calendar & /wipe Support? Questions? Comments? Concerns? Message me in my Discord! https://discord.gg/RVePam7pd7$19.99