Search the Community
Showing results for tags 'status'.
-
Version 0.1.27
9,897 downloads
A useful API plugin that mimics in-game status bars and allows the addition of custom ones. Note: AdvancedStatus does not display any bars on its own. This is done by other plugins that work with it. An example plugin demonstrating interaction with AdvancedStatus. The ability to specify the frequency of calculating the number of bars; The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to specify custom text; The ability to customize the color, size and font of the text; No need to pass all parameters; No need to manually delete your bar when unloading your plugin. advancedstatus.admin - Grants access to the chat command(by default /bar). { "Chat command": "bar", "Is it worth enabling console notifications for the successful loading of local images?": false, "Interval(in seconds) for counting in-game status bars": 0.5, "Interval(in seconds) for counting Building Privileges status bars. Note: Calculating Building Privileges is resource-intensive": 1.0, "Is it worth counting Vehicle Privilege? Useful if you don't have a Tugboat or PlayerBoat": true, "Is it worth counting Entity Privilege? Useful if you don't have a Legacy Shelter": true, "Ui layer for displaying bars. For button bars, it is recommended to use the 'Hud' layer(https://docs.oxidemod.com/guides/developers/basic-cui/basic-cui#layers)": "Under", "Is it worth displaying bar components left to right?": true, "Vertical spacing between bars": 2, "The height of the bar by default": 26, "The background color of the bar by default": "#505F75", "The background transparency of the bar by default": 0.7, "The background material of the bar by default, leave empty to disable": "", "The image of the bar by default": "AdvancedStatus_Default", "The color of the bar image by default": "#6B7E95", "The transparency of the bar image by default": 1.0, "The outline color of the bar image by default": "#000000", "The outline transparency of the bar image by default": 1.0, "The outline distance of the bar image by default. Example '0.75 0.75'": "", "The size of the bar text by default": 12, "The color of the bar text by default": "#FFFFFF", "The transparency of the bar text by default": 1.0, "The font of the bar text by default(https://docs.oxidemod.com/guides/developers/basic-cui/basic-cui#fonts)": "RobotoCondensed-Bold.ttf", "The horizontal offset of the bar text by default": 0, "The outline color of the bar text by default": "#000000", "The outline transparency of the bar text by default": 1.0, "The outline distance of the bar text by default": "", "The size of the bar subtext by default": 12, "The color of the bar subtext by default": "#FFFFFF", "The transparency of the bar subtext by default": 1.0, "The font of the bar subtext by default": "RobotoCondensed-Bold.ttf", "The outline color of the bar subtext by default": "#000000", "The outline transparency of the bar subtext by default": 1.0, "The outline distance of the bar subtext by default": "", "The color of the bar progress by default": "#89B840", "The transparency of the bar progress by default": 0.7, "The OffsetMin of the bar progress by default": "25 2.5", "The OffsetMax of the bar progress by default": "-3.5 -3.5", "Version": { "Major": 0, "Minor": 1, "Patch": 27 } } EN: { "MsgDays": "d", "MsgHours": "h", "MsgMinutes": "m", "MsgSeconds": "s" } RU: { "MsgDays": "д", "MsgHours": "ч", "MsgMinutes": "м", "MsgSeconds": "я" } images reload *ImageName* - Reloads the specified image from the image folder; all - Reloads all local images from the image folder. Example: /bar images reload all Note: To access the commands, the player must be an admin(console or owner) or have the advancedstatus.admin permission. OnAdvancedStatusLoaded: Called after the AdvancedStatus plugin is fully loaded and ready. OnPlayerGainedBuildingPrivilege: Called after the player enters their building privilege. OnPlayerLostBuildingPrivilege: Called after the player exits their building privilege. void OnAdvancedStatusLoaded() { Puts("The AdvancedStatus plugin is loaded and ready to go!"); } void OnPlayerGainedBuildingPrivilege(BasePlayer player) { Puts($"{player.displayName} entered the authorized building privilege zone."); } void OnPlayerLostBuildingPrivilege(BasePlayer player) { Puts($"{player.displayName} exited the authorized building privilege zone."); } [PluginReference] private Plugin AdvancedStatus; There are 15 methods: IsReady CreateBar UpdateContent DeleteBar DeleteCategory DeleteAllBars GetTotalClientBars GetTotalPlayerBars LoadImages LoadImage CopyImage DeleteImages DeleteImage BarExists InBuildingPrivilege There are 5 types of bar: Default - A simple bar that displays the provided information. Does not update the value of SubText by itself; Timed - Similar to the default bar, but it automatically disappears after the specified time in the TimeStamp parameter; TimeCounter - The SubText shows the remaining time until TimeStamp. Also automatically removed upon expiration of the TimeStamp; TimeProgress - Similar to the Timed bar, but additionally features an automatically filling progress bar; TimeProgressCounter - Similar to the TimeCounter bar, but additionally features an automatically filling progress bar. IsReady: Used to check if the AdvancedStatus plugin is loaded and ready to work. The IsReady method returns true if it is ready, or null if it is not. (bool)AdvancedStatus?.Call("IsReady");//Calling the IsReady method. If the result is not null(bool true), the plugin is ready. CreateBar: Used to create a bar or update bar values for a player. To call the CreateBar method, you need to pass 2 parameters. The first one is BasePlayer or <ulong>playerID. The second one is a dictionary with the parameters you need. In the CreateBar method, all parameters are optional, except for two: Id; Plugin. Parameters not specified when creating a new bar will use the values set in the AdvancedStatus plugin's configuration file. Parameters not specified during bar update will retain the values they had before the update. Note: The plugin does not update values automatically, you need to manually send new values. Dictionary<string, object> parameters = new Dictionary<string, object> { { "Id", "AdvancedStatusDemo_1" }, //<string>Unique identifier for the bar in your plugin. ***This is a required field. { "BarType", "Default" }, //<string>Type of the bar. There are 4 types: Default, Timed, TimeCounter and TimeProgress. { "Plugin", "AdvancedStatusDemo" }, //<string>Name of your plugin. ***This is a required field. { "Category", "Default" }, //<string>Internal plugin category of the bar. { "Order", 10 }, //<int>The position of your bar relative to others. Order is determined by increasing values(ASC). { "Height", 26 }, //<int>The height of your bar. A standard bar is 26 pixels. { "Main_Color", "#505F75" }, //<string>HTML Hex color of the bar background. { "Main_Transparency", 0.7f }, //<float>Transparency of the bar background. { "Main_Material", "assets/content/ui/uibackgroundblur.mat" }, //<string>Material of the bar background(empty to disable). { "Image", "scrap" }, //<string>Name of the image saved in the ImageLibrary or a direct link to the image if ImageLibrary is not used. { "Image_Local", "AdvancedStatusDemo_Scrap" }, //<string>The name of the image file(without its extension) located in *SERVER*\data\AdvancedStatus\Images. Leave empty to use Image. { "Image_Sprite", "" }, //<string>Sprite image of the bar. Leave empty to use Image_Local or Image. { "Is_RawImage", true }, //<bool>Which type of image will be used? True - CuiRawImageComponent. False - CuiImageComponent. { "Image_Color", "#6B7E95" }, //<string>HTML Hex color of the bar image. { "Image_Transparency", 1.0f }, //<float>Transparency of the image. { "Text", "Scrap" }, //<string>Main text. { "Text_Size", 12 }, //<int>Size of the main text. { "Text_Color", "#FFFFFF" }, //<string>HTML Hex color of the main text. { "Text_Font", "RobotoCondensed-Bold.ttf" }, //<string>Font of the main text. { "Text_Offset_Horizontal", 0 }, //<int>Horizontal offset for the main text. { "SubText", "35" }, //<string>Sub text. { "SubText_Size", 12 }, //<int>Size of the sub text. { "SubText_Color", "#FFFFFF" }, //<string>HTML Hex color of the sub text. { "SubText_Font", "RobotoCondensed-Bold.ttf" }, //<string>Font of the sub text. { "TimeStampStart", Network.TimeEx.currentTimestamp }, //<double>Responsible for specifying the start point of the time reference and 0% for TimeProgress and TimeProgressCounter bars. Used if the bar type is Timed, TimeCounter, TimeProgress or TimeProgressCounter. { "TimeStamp", Network.TimeEx.currentTimestamp + 6 }, //<double>Specifies the end time point after which the bar will be destroyed and 100% for TimeProgress and TimeProgressCounter bars. Used if the bar type is Timed, TimeCounter, TimeProgress or TimeProgressCounter. { "TimeStampDestroy", Network.TimeEx.currentTimestamp + 3 }, //<double>If TimeStampDestroy is specified and it is less than TimeStamp, the bar will be destroyed by TimeStampDestroy. Used if the bar type is Timed, TimeCounter, TimeProgress or TimeProgressCounter. { "Progress", (float)35 / 100f }, //<float>Progress. From 0.0 to 1.0. { "Progress_Reverse", false }, //<bool>Progress reverse. A value of false means that the progress will increase. Used if the bar type is TimeProgress or TimeProgressCounter. { "Progress_Color", "#89B840" }, //<string>Progress color. { "Progress_Transparency", 1f }, //<float>Progress transparency. { "Progress_OffsetMin", "25 2.5" }, //<string>Progress OffsetMin: "*left* *bottom*". { "Progress_OffsetMax", "-3.5 -3.5" }, //<string>Progress OffsetMax: "*right* *top*". { "Command", "kit" } //<string>If the field is not empty, the bar becomes clickable, and the specified command is executed upon clicking. Note: the command must be covalence. }; AdvancedStatus?.Call("CreateBar", player.userID.Get(), parameters); //Calling the CreateBar method with the passing of BasePlayer/playerID and a dictionary containing the required parameters. UpdateContent: Used to update only the content of an existing status bar. To call the UpdateContent method, you need to pass 2 parameters. The first one is BasePlayer or <ulong>playerID. The second one is a dictionary with the parameters you need. In the UpdateBar method, all parameters are optional, except for two: Id; Plugin. var parameters = new Dictionary<string, object> { { "Id", "MyID" }, //<string>Unique identifier for the bar in your plugin. ***This is a required field. { "Plugin", Name }, //<string>Name of your plugin. ***This is a required field. { "Text", "MyText" }, //<string>Main text. { "SubText", "MyText" }, //<string>Sub text. { "Progress", (float)amount / 100f }, //<float>Progress. From 0.0 to 1.0. }; AdvancedStatus?.Call("UpdateContent", player.userID.Get(), parameters); //Calling the UpdateContent method with the passing of BasePlayer/playerID and a dictionary containing the required parameters. DeleteBar: Used to remove the bar for a player. There are two methods for removing a bar by ID: with specifying a particular player; To call this method, you need to pass 3 parameters. The first one is BasePlayer or <ulong>playerID. The second one is Id of your bar and the third one is name of your plugin. without specifying a particular player (which removes it for all players) To call this method, you need to pass 2 parameters. The first one is Id of your bar and the second one is name of your plugin. AdvancedStatus?.Call("DeleteBar", player.userID.Get(), barID, Name); //Calling the DeleteBar method with the passing of BasePlayer/playerID, ID of the bar and the name of your plugin. AdvancedStatus?.Call("DeleteBar", barID, Name); //Calling the DeleteBar method with the passing of ID of the bar and the name of your plugin. If you try to delete a bar that doesn't exist, nothing bad will happen. So feel free to delete the bar without checking its existence. P.S. When unloading your plugin, there is no need to manually delete bars for players, AdvancedStatus will handle it automatically. DeleteCategory: Used to remove all bars associated with the plugin's category. To call the DeleteCategory method, you need to pass 2 parameters. The first one is category and the second one is name of your plugin. AdvancedStatus?.Call("DeleteCategory", "Default", Name);//Calling the DeleteCategory method by passing the category and name of your plugin DeleteAllBars: Used to remove all bars associated with the plugin. To call the DeleteAllBars method, you need to pass only 1 parameter. It is name of your plugin. AdvancedStatus?.Call("DeleteAllBars", Name);//Calling the DeleteAllBars method, passing the name of your plugin GetTotalClientBars: Used to get the number of client bars for the player. To call the GetTotalClientBars method, you need to pass only 1 parameter. It is BasePlayer or <ulong>playerID. (int)AdvancedStatus?.Call("GetTotalClientBars", player.userID.Get());//Calling the GetTotalClientBars method, passing the name of BasePlayer/playerID GetTotalPlayerBars: Used to get the number of active custom bars for the player. To call the GetTotalPlayerBars method, you need to pass only 1 parameter. It is BasePlayer or <ulong>playerID. (int)AdvancedStatus?.Call("GetTotalPlayerBars", player.userID.Get());//Calling the GetTotalPlayerBars method, passing the name of BasePlayer/playerID LoadImages: Used to check if the local images specified in the list are loaded. If any of the images are not loaded but their files exist in the images folder, the plugin will load them. To call the LoadImages method, you need to pass only 2 parameters. The first one is the <List<string>>list of image's name and the second one(optional) is <bool>force, which, if set to true, will force reload the image even if it already exists. AdvancedStatus?.Call("LoadImages", list, false);//Calling the LoadImages method, passing a list of image names LoadImage: Used to check if the local image is loaded. If the file is not loaded and exists in the images folder, the plugin will load it. To call the LoadImage method, you need to pass 2 parameters. The first one is the <string>image's name and the second one(optional) is <bool>force, which, if set to true, will force reload the image even if it already exists. AdvancedStatus?.Call("LoadImage", imgName, false);//Calling the LoadImage method, passing an image's name CopyImage: Used to create and load a copy of an existing image. To call the CopyImage method, you need to pass 3 parameters. The first parameter is the <string>source image's name, the second parameter is the <string>new image's name and the third one(optional) is <bool>force, which, if set to true, will force copy and reload the image even if it already exists. AdvancedStatus?.Call("CopyImage", "ZoneStatus_Default", "ZoneStatus_NewZone", false);//Calling CopyImage, passing the source image name and the new image name. DeleteImages: Used to delete a list of images and their files. To call the DeleteImages method, you need to pass 2 parameters. The first one is the <List<string>>list of image's name and the second one(optional) parameter is <bool>deleteFile, which, if set to true, will delete image's file too. AdvancedStatus?.Call("DeleteImages", list, true);//Calling DeleteImages, passing a list of image names. DeleteImage: Used for removing the image and the image file. To call the DeleteImage method, you need to pass 2 parameters. The first parameter is the <string>image's name and the second one(optional) parameter is <bool>deleteFile, which, if set to true, will delete image's file too. AdvancedStatus?.Call("DeleteImage", "ZoneStatus_NewZone", true);//Calling DeleteImage, passing the image name. BarExists: Used to check if the specified bar exists. To call the BarExists method, you need to pass 3 parameters. The first one is BasePlayer or <ulong>playerID. The second one is Id of your bar. And the third one is name of your plugin. (bool)AdvancedStatus?.Call("BarExists", player.userID.Get(), barID, Name);//Calling the BarExists method with the passing of BasePlayer/playerID, ID of the bar and name of your plugin. InBuildingPrivilege: Used to check if the player has authorized building privileges. To call the InBuildingPrivilege method, you need to pass BasePlayer or <ulong>playerID. (bool)AdvancedStatus?.Call("InBuildingPrivilege", player.userID.Get());//Checking if the player has Building Privilege.$1.99 -
Version 1.3.6
11,321 downloads
Overview Provides an API for adding custom status messages that fit alongside the vanilla Rust status UI. Simple Status does not add gameplay statuses on its own; it provides an API that other plugins can use to display them. As of version 1.3.0, Simple Status supports Facepunch's native CustomVitals system. Compatible statuses are rendered using the native Rust status UI, while unsupported features automatically fall back to the Legacy CUI renderer when required. Simple Status also supports Advanced Status integration and can automatically switch between Advanced Status, native CustomVitals, and Legacy CUI depending on the server configuration and the features used by each status. Commands /ts Toggles the visibility of statuses for a player. This command can be changed in the config settings. Configuration { "ChatMessageSteamId": 0, "ToggleStatusCommand": "ts", "UseCustomVitals": true, "UseInternalCustomVitalsWrapper": true, "ForceCustomVitalsForUnsupportedStatuses": false, "IgnoreAdvancedStatus": false } UseCustomVitals - Enables the native Facepunch CustomVitals renderer when available. UseInternalCustomVitalsWrapper - Uses Simple Status' built-in Facepunch CustomVitals wrapper. This does not require Carbon. If disabled, Simple Status will attempt to use the Carbon/CarbonAliases CustomVitalManager provider instead. ForceCustomVitalsForUnsupportedStatuses - Forces statuses to remain on CustomVitals even when they use unsupported features. Unsupported features such as progress bars or asset-path icons will not be rendered. IgnoreAdvancedStatus - When enabled, Simple Status will not use Advanced Status as its renderer and will instead use CustomVitals or Legacy CUI. Custom Status Framework This plugin is a sequel to Custom Status Framework and features much better performance. They do the same thing, but are NOT compatible with each other. Do not load both on your server or you may run into issues. Plugins that require Custom Status Framework will need to be updated to support Simple Status, it is not backwards compatible. If you are a plugin developer and need help writing your plugin to use Simple Status, please reach out to me! Advanced Status Simple Status can integrate automatically with Advanced Status. When Advanced Status is installed and IgnoreAdvancedStatus is disabled, it remains the preferred renderer for traditional Simple Status statuses. If Advanced Status is not being used, Simple Status can render compatible statuses through Facepunch's native CustomVitals system and automatically fall back to Legacy CUI when required. Developers using the regular Simple Status API do not need to explicitly support each renderer. API void CreateStatus(Plugin plugin, string statusId, Dictionary<string, object> properties) // Registers a status definition. // OnSimpleStatusReady() is recommended when Simple Status may load after your plugin. // See the Properties section for supported values. void SetStatus(string userId, string statusId, int duration = int.MaxValue, bool pauseOffline = true) // Assigns a player a status with a duration. Set duration to int.MaxValue for an infinite status. Set to 0 to clear a status. void SetStatusProperty(string userId, string statusId, Dictionary<string, object> properties) // Set multiple properties for a player status with a single API call. Will minimize the number of redraws, so its better than individually setting properties. // See the properties section for a list of properties to set. int GetDuration(string userId, string statusId) // Returns the duration in seconds of a status that a player has. Returns 0 if the player does not have that status. Hooks void OnStatusSet(string userId, string statusId, int duration) // Called when a status is initially set for a player. void OnStatusEnd(string userId, string statusId, int duration) // Called when a status is removed for a player. (When the duration reaches 0). void OnStatusUpdate(string userId, string statusId, string property, string value) // Called when a status property is updated. // See the properties section for a list of properties to set. Properties // The following are valid property keys that are used in multiple API methods var properties = new Dictionary<string, object> { ["color"] = "1 1 1 1", // Background color ["title"] = "hello", // Left-side text. Localization keys are supported. ["titleColor"] = "0 0 0 1", // Left-side text color ["text"] = "subtext", // Right-side text. Set null to use the duration counter for timed statuses. ["textColor"] = "0 0 0 1", // Right-side text color ["icon"] = "star", // ImageLibrary key, direct URL, raw image key, asset path, or itemid. See Image Types. ["iconColor"] = "0 0 0 1", // Icon color ["progress"] = 0.0, // Progress value between 0.0 and 1.0. Progress bars require Legacy CUI. ["progressColor"] = "0 0 0 0.5", // Progress bar color ["rank"] = 0 // Lower ranks are rendered before higher ranks. }; Image Types Simple Status supports several icon formats: ImageLibrary key ["icon"] = "my_icon" The image must already be registered with ImageLibrary. Direct image URL ["icon"] = "https://example.com/icon.png" As of 1.3.0, direct URLs are automatically downloaded through ImageLibrary. Once the image becomes available, Simple Status automatically refreshes affected players. Raw ImageLibrary key ["icon"] = "raw:my_icon" Rust asset path ["icon"] = "assets/icons/example.png" Asset paths can be found here and item ids can be found here. Item ID ["icon"] = "itemid:123456789" Rust asset paths and itemid: icons are supported by the Legacy CUI renderer, but Facepunch CustomVitals does not currently support these formats directly. When CustomVitals is enabled and a status uses an unsupported icon type, Simple Status automatically falls back to Legacy CUI for that player's Simple Status statuses and prints a one-time compatibility warning. ImageLibrary keys and direct image URLs are recommended for plugins that want to remain compatible with native CustomVitals. Native CustomVitals Version 1.3.0 adds native support for Facepunch CustomVitals. Standard Simple Status properties map automatically to the native Rust status UI, including: background color title/left text text/right text text colors compatible icons icon color rank native countdown timers Some Simple Status features do not currently have a native CustomVitals equivalent: progress bars Rust assets/... icon paths itemid: icons By default, if any active Simple Status status for a player requires one of these features, all regular Simple Status statuses for that player are temporarily rendered through Legacy CUI. This keeps status ordering and layout consistent. A one-time console warning identifies which plugin, status, and unsupported feature caused the fallback. Setting ForceCustomVitalsForUnsupportedStatuses to true disables this automatic fallback, but unsupported features will not be displayed. Public CustomVitals API bool IsInternalCustomVitalsWrapperAvailable() bool SetCustomVital(Plugin plugin, ulong userId, string vitalId, Dictionary<string, object> properties) bool RemoveCustomVital(Plugin plugin, ulong userId, string vitalId) bool RemoveCustomVitals(Plugin plugin, ulong userId) bool RemoveAllCustomVitals(Plugin plugin) bool HasCustomVital(Plugin plugin, ulong userId, string vitalId) The Public CustomVitals API provides direct access to Simple Status' internal Facepunch CustomVitals wrapper. It is available when UseCustomVitals and UseInternalCustomVitalsWrapper are enabled and the internal wrapper is available. This API is separate from the regular Simple Status API and is intended for plugins that specifically need direct native CustomVitals access. Code Example This is an example of a plugin that utilizes Simple Status to produce the image in the thumbnail. For plugin developer reference. Download link below: SimpleStatusDemo.csFree -
Version 0.1.4.1
267 downloads
An excellent plugin for item recycling with extensive functionality. The ability to log successful recycling; The ability to create new permissions; The ability to customize permissions flexibly, including both new and existing ones; The ability to have multiple permissions at the same time, with the selection of the best limits from the available permissions; The ability to configure the recycling efficiency for each permission; The ability to configure the scrap return percentage when recycling blueprints for each permission; The ability to configure the chance to return the original item when recycling blueprints for each permission; The ability to configure forbidden items for recycling for each permission; The ability to configure the recycling speed for each permission; The ability to configure the recycling cycle limit per use for each permission; The ability to configure the recycling slot limit for each permission; The ability to configure the recycling cooldown for each permission; The ability to purchase a bypass for the recycle cooldown; The ability to configure the daily recycling limit for each permission; The ability to purchase additional recycles after reaching the daily limit; The ability to count recycling only when at least one item is successfully recycled; The ability to forbid recycling when wounded; The ability to forbid recycling while swimming; The ability to forbid recycling while mounted on certain seats; The ability to forbid recycling in specified monuments, by name or by monument type; The ability to forbid recycling in someone else's building privileges; The ability to forbid recycling when taking damage; The ability to forbid recycling during a combat block; The ability to forbid recycling during a raid block; The ability to automatically generate language files for specified languages(with content filled in English); The ability to display a status bar while waiting for a cooldown; The ability to choose between bar types(TimeCounter and TimeProgressCounter); The ability to specify the order of the bar; The ability to change the height of the bar; The ability to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The ability to set own image and customize the color and transparency of the image; The ability to set sprite instead of the image; The ability to customize the color, size and font of the text. { "Chat command": "rec", "Is it worth enabling GameTips for messages?": true, "Is it worth using Notify plugins for messages instead of the vanilla UI?": false, "Specify the regular message type for notify": 0, "Specify the warning message type for notify": 1, "Is it worth using the AdvancedStatus plugin?": true, "Is it worth saving recycling logs to a file?": true, "List of language keys for creating language files": [ "en" ], "Is it worth allowing blueprint recycling based on permissions?": true, "Price to skip 60 seconds of recycler cooldown": 10.0, "List of mount names where recycling is prohibited": [ "horsesaddle", "horsesaddlerear", "bikedriverseat", "bikepassengerseat", "motorbikedriverseat", "motorbikepassengerseat", "modularcardriverseat", "modularcarpassengerseatleft", "modularcarpassengerseatright", "modularcarpassengerseatlesslegroomleft", "modularcarpassengerseatlesslegroomright", "modularcarpassengerseatsidewayleft", "miniheliseat", "minihelipassenger", "transporthelipilot", "transporthelicopilot", "attackhelidriver", "attackheligunner", "submarinesolodriverstanding", "submarineduodriverseat", "submarineduopassengerseat", "snowmobiledriverseat", "snowmobilepassengerseat", "snowmobilepassengerseat tomaha", "workcartdriver", "locomotivedriver", "craneoperator", "batteringramseat", "ballistagun.entity" ], "Status. Bar - Display time in seconds. A value of 0 keeps it visible until the cooldown ends": 15.0, "Status. Bar - Type(TimeProgressCounter or TimeCounter)": "TimeCounter", "Status. Bar - Height": 26, "Status. Bar - Order": 10, "Status. Background - Color(Hex or RGBA)": "#EFC570", "Status. Background - Transparency": 0.7, "Status. Background - Material(empty to disable)": "", "Status. Image - Url": "https://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/AdvancedStatus_SandClock.png", "Status. Image - Local(Leave empty to use Image_Url)": "AdvancedStatus_SandClock", "Status. Image - Sprite(Leave empty to use Image_Local or Image_Url)": "", "Status. Image - Is raw image": false, "Status. Image - Color(Hex or RGBA)": "#EFC570", "Status. Image - Transparency": 1.0, "Status. Image Outline - Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Status. Image Outline - Transparency": 1.0, "Status. Image Outline - Distance(Leave empty to disable). Example '0.75 0.75'": "", "Status. Text - Size": 12, "Status. Text - Color(Hex or RGBA)": "#FFFFFF", "Status. Text - Transparency": 1.0, "Status. Text - Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Status. Text - Offset Horizontal": 0, "Status. Text Outline - Color(Hex or RGBA)": "#000000", "Status. Text Outline - Transparency": 1.0, "Status. Text Outline - Distance(Leave empty to disable)": "", "Status. SubText - Size": 12, "Status. SubText - Color(Hex or RGBA)": "#FFFFFF", "Status. SubText - Transparency": 1.0, "Status. SubText - Font": "RobotoCondensed-Bold.ttf", "Status. SubText Outline - Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "Status. SubText Outline - Transparency": 1.0, "Status. SubText Outline - Distance(Leave empty to disable)": "", "Status. Progress - Background Color(Hex or RGBA)": "1 1 1 0.15", "Status. Progress - Background Transparency": 0.15, "Status. Progress - Reverse": true, "Status. Progress - Color(Hex or RGBA)": "#EFC570", "Status. Progress - Transparency": 0.7, "Status. Progress - OffsetMin": "0 0", "Status. Progress - OffsetMax": "0 0", "List of recycling permissions": [ { "Permission Name": "advancedrecycler.default", "Item recycling time(seconds)": 8.0, "Item recycling efficiency": 0.4, "Blueprint recycling efficiency. A value of 0 disables this ability": 0.0, "Chance(0.0 – 1.0) of the original item dropping when recycling a blueprint": 0.001, "Is it worth giving scrap if the original item drops when recycling a blueprint?": false, "Number of available recycling slots": 2, "Cooldown time(in seconds) before next recycling": 600.0, "Daily recycling limit. A value of 0 disables the limit": 50, "Price to purchase a recycling after exceeding the daily limit. A value of 0 disables the purchase": 5.0, "Item recycling limit per session(per command use). A value of 0 disables the limit": 15, "Is it worth forbidding recycling if the player is in a wounded state?": true, "Is it worth forbidding recycling if the player is swimming?": true, "Is it worth forbidding recycling if the player is mounted?": true, "Is it worth forbidding recycling if the player is in someone else's building privilege area?": true, "Is it worth forbidding recycling if the player has taken damage?": true, "Is it worth forbidding recycling if the player has combat block?": true, "Is it worth forbidding recycling if the player has raid block?": true, "List of monuments where recycling is forbidden": null, "List of monument types where recycling is forbidden": [ "RadTown", "RadTownWater", "RadTownSmall", "TunnelStation", "Custom" ], "List of forbidden recycling items": [ "blood" ] }, { "Permission Name": "advancedrecycler.vip", "Item recycling time(seconds)": 5.0, "Item recycling efficiency": 0.6, "Blueprint recycling efficiency. A value of 0 disables this ability": 0.15, "Chance(0.0 – 1.0) of the original item dropping when recycling a blueprint": 0.15, "Is it worth giving scrap if the original item drops when recycling a blueprint?": true, "Number of available recycling slots": 4, "Cooldown time(in seconds) before next recycling": 450.0, "Daily recycling limit. A value of 0 disables the limit": 100, "Price to purchase a recycling after exceeding the daily limit. A value of 0 disables the purchase": 2.5, "Item recycling limit per session(per command use). A value of 0 disables the limit": 50, "Is it worth forbidding recycling if the player is in a wounded state?": true, "Is it worth forbidding recycling if the player is swimming?": true, "Is it worth forbidding recycling if the player is mounted?": true, "Is it worth forbidding recycling if the player is in someone else's building privilege area?": true, "Is it worth forbidding recycling if the player has taken damage?": true, "Is it worth forbidding recycling if the player has combat block?": true, "Is it worth forbidding recycling if the player has raid block?": true, "List of monuments where recycling is forbidden": null, "List of monument types where recycling is forbidden": [ "RadTown", "RadTownWater", "TunnelStation" ], "List of forbidden recycling items": [ "blood" ] }, { "Permission Name": "realpve.vip", "Item recycling time(seconds)": 4.0, "Item recycling efficiency": 0.65, "Blueprint recycling efficiency. A value of 0 disables this ability": 0.5, "Chance(0.0 – 1.0) of the original item dropping when recycling a blueprint": 0.3, "Is it worth giving scrap if the original item drops when recycling a blueprint?": true, "Number of available recycling slots": 6, "Cooldown time(in seconds) before next recycling": 300.0, "Daily recycling limit. A value of 0 disables the limit": 0, "Price to purchase a recycling after exceeding the daily limit. A value of 0 disables the purchase": 0.0, "Item recycling limit per session(per command use). A value of 0 disables the limit": 0, "Is it worth forbidding recycling if the player is in a wounded state?": false, "Is it worth forbidding recycling if the player is swimming?": false, "Is it worth forbidding recycling if the player is mounted?": false, "Is it worth forbidding recycling if the player is in someone else's building privilege area?": false, "Is it worth forbidding recycling if the player has taken damage?": false, "Is it worth forbidding recycling if the player has combat block?": false, "Is it worth forbidding recycling if the player has raid block?": false, "List of monuments where recycling is forbidden": [ "oilrig_1" ], "List of monument types where recycling is forbidden": null, "List of forbidden recycling items": [ "blood" ] } ], "Version": { "Major": 0, "Minor": 1, "Patch": 3 } } EN: { "CmdNotAllowed": "You do not have permission to use this command!", "CmdEconomicsNotEnough": "Not enough funds!", "CmdMain": "Available commands for the recycler:\n\n<color=#D1CBCB>/rec</color> - Request access to the remote recycler\n<color=#D1CBCB>/rec</color> <color=#D1AB9A>bars *boolValue*(optional)</color> - Toggle status bar display\n<color=#D1CBCB>/rec</color> <color=#D1AB9A>limits</color> - View your usage limits\n<color=#D1CBCB>/rec</color> <color=#D1AB9A>buy limits *amount*(optional)</color> - Purchase additional uses of the remote recycler\n<color=#D1CBCB>/rec</color> <color=#D1AB9A>buy cd *amount*(optional)</color> - Purchase a 60 second(* by amount) cooldown skip for remote recycler\n\n--------------------------------------------------", "CmdBarsEnabled": "Status bar display enabled!", "CmdBarsDisabled": "Status bar display disabled!", "CmdDailyLimitExtra": "You have exceeded the daily limit({0}) for using the remote recycler!\n<size=10>However, you can buy additional uses with the <color=#D1AB9A>/rec buy limits</color> command for <color=#D1CBCB>${1}</color></size>", "CmdDailyLimit": "You have exceeded the daily limit ({0}) for using the remote recycler!", "CmdCooldownSkip": "You must wait {0} seconds before using the remote recycler again!\n<size=10>However, you can skip the cooldown using the <color=#D1AB9A>/rec buy cd</color> command for <color=#D1CBCB>${1}</color> per 60 seconds</size>", "CmdCooldown": "You must wait {0} seconds before using the remote recycler again!", "CmdWoundBlock": "You can't use the remote recycler while wounded!", "CmdSwimming": "You can't use the remote recycler while swimming!", "CmdMountBlock": "You can't use the remote recycler while mounted here!", "CmdMonumentBlock": "You can't use the remote recycler at '{0}'!", "CmdBuildingBlock": "You can't use the remote recycler inside someone else's base!", "CmdDamageBlock": "You can't use the remote recycler while taking damage!", "CmdCombatBlock": "You can't use the remote recycler during combat block!", "CmdRaidBlock": "You can't use the remote recycler during a raid block!", "CmdAlredyHave": "You already have an active remote recycler!", "CmdPurchaseNotLimited": "You haven't reached your daily limit yet!", "CmdPurchaseHaveExtra": "You still have {0} additional remote recycler uses! Use them before purchasing more.", "CmdPurchaseLimitsNotAllowed": "Purchasing additional remote recycler uses is unavailable!", "CmdPurchasedLimits": "You have successfully purchased <color=#D1CBCB>{0}</color> remote recycler uses!\n<size=10>Now you have <color=#D1CBCB>{1}</color> additional uses</size>", "CmdPurchaseNoCooldown": "You don't have a cooldown for remote recycler usage!", "CmdPurchaseCooldownNotAllowed": "Purchasing a cooldown skip for remote recycler usage is not available!", "CmdPurchasedCooldown": "You have successfully purchased a cooldown skip for <color=#D1CBCB>{0} seconds</color> for remote recycler usage!\n<size=10>Now you need to wait <color=#D1CBCB>{1} seconds</color></size>", "CmdMyLimits": "Your remote recycler limits:\n\n<color=#D1CBCB>Efficiency</color> - <color=#D1AB9A>{0}%</color>\n<color=#D1CBCB>Blueprint efficiency</color> - <color=#D1AB9A>{1}%</color>\n<color=#D1CBCB>Blueprint original item return</color> - <color=#D1AB9A>{2}%</color>\n<color=#D1CBCB>Cycle Time</color> - <color=#D1AB9A>{3}</color>\n<color=#D1CBCB>Usage Cycles</color> - <color=#D1AB9A>{4}</color>\n<color=#D1CBCB>Cooldown</color> - <color=#D1AB9A>{5} sec</color>\n<color=#D1CBCB>Daily Limit</color> - <color=#D1AB9A>{6}</color>\n\n--------------------------------------------------", "UiRecycleEfficiency": "EFFICIENCY {0}%, {1} SEC", "UiRecycleEfficiencyBp": "EFFICIENCY {0}%, BP {2}%, {1} SEC", "UiSessionLimit": "Recycling cycles: {0}", "BarCooldown": "Recycler cooldown:", "MsgSessionLimit": "You have exceeded the limit of {0} recycling cycles per session." } RU: { "CmdNotAllowed": "У вас недостаточно прав для использования этой команды!", "CmdEconomicsNotEnough": "Не достаточно средств!", "CmdMain": "Доступные команды для переработчика:\n\n<color=#D1CBCB>/rec</color> - Запросить доступ к удалённому переработчику\n<color=#D1CBCB>/rec</color> <color=#D1AB9A>bars *булевоеЗначение*(опционально)</color> - Переключение отображения статус баров\n<color=#D1CBCB>/rec</color> <color=#D1AB9A>limits</color> - Узнать свои лимиты\n<color=#D1CBCB>/rec</color> <color=#D1AB9A>buy limits *количество*(опционально)</color> - Докупить дополнительное количество доступа к удалённому переработчику\n<color=#D1CBCB>/rec</color> <color=#D1AB9A>buy cd *количество*(опционально)</color> - Купить пропуск 60 секунд(* на количество) задержки перед повторным использованием удалённым переработчиком\n\n--------------------------------------------------", "CmdBarsEnabled": "Отображение статус баров включено!", "CmdBarsDisabled": "Отображение статус баров выключено!", "CmdDailyLimitExtra": "Вы превысили допустимую дневную норму({0}) на использование удалённого переработчика!\n<size=10>Но вы можете купить дополнительные использования удалённого переработчика с помощью команды <color=#D1AB9A>/rec buy limits</color> за <color=#D1CBCB>{1}$</color></size>", "CmdDailyLimit": "Вы превысили допустимую дневную норму({0}) на использование удалённого переработчика!", "CmdCooldownSkip": "Перед повторным использованием удалённого переработчика вам необходимо подождать {0} секунд!\n<size=10>Но вы можете купить пропуск задержки с помощью команды <color=#D1AB9A>/rec buy cd</color> за <color=#D1CBCB>{1}$</color> за каждые 60 секунд</size>", "CmdCooldown": "Перед повторным использованием удалённого переработчика вам необходимо подождать {0} секунд!", "CmdWoundBlock": "Вам запрещено пользоваться удалённым переработчиком в предсмертном состоянии!", "CmdSwimming": "Вам запрещено пользоваться удалённым переработчиком в воде!", "CmdMountBlock": "Вам запрещено пользоваться удалённым переработчиком сидя в данном месте!", "CmdMonumentBlock": "Вам запрещено пользоваться удалённым переработчиком в '{0}'!", "CmdBuildingBlock": "Вам запрещено пользоваться удалённым переработчиком в чужой базе!", "CmdDamageBlock": "Вам запрещено пользоваться удалённым переработчиком при получении урона!", "CmdCombatBlock": "Вам запрещено пользоваться удалённым переработчиком во время боя!", "CmdRaidBlock": "Вам запрещено пользоваться удалённым переработчиком во время рейда!", "CmdAlredyHave": "У вас уже имеется активный удалённый переработчик!", "CmdPurchaseNotLimited": "Вы ещё не исчерпали свой дневной лимит!", "CmdPurchaseHaveExtra": "У вас ещё есть {0} дополнительных использований удалённого переработчика! Используйте их прежде, чем покупать новые.", "CmdPurchaseLimitsNotAllowed": "Покупка дополнительных использований удалённого переработчика недоступна!", "CmdPurchasedLimits": "Вы успешно докупили <color=#D1CBCB>{0}</color> использований удалённого переработчика!\n<size=10>Теперь у вас <color=#D1CBCB>{1}</color> дополнительных использований</size>", "CmdPurchaseNoCooldown": "У вас нет задержки на использование удалённого переработчика!", "CmdPurchaseCooldownNotAllowed": "Покупка пропуска задержки на использование удалённого переработчика недоступна!", "CmdPurchasedCooldown": "Вы успешно купили пропуск на <color=#D1CBCB>{0} секунд</color> задержки для использования удалённого переработчика!\n<size=10>Теперь вам нужно подождать <color=#D1CBCB>{1} секунд</color></size>", "CmdMyLimits": "Ваши лимиты удалённого переработчика:\n\n<color=#D1CBCB>Эффективность</color> - <color=#D1AB9A>{0}%</color>\n<color=#D1CBCB>Эффективность(чертежи)</color> - <color=#D1AB9A>{1}%</color>\n<color=#D1CBCB>Шанс возврата(чертежи)</color> - <color=#D1AB9A>{2}%</color>\n<color=#D1CBCB>Время цикла</color> - <color=#D1AB9A>{3}</color>\n<color=#D1CBCB>Циклов использований</color> - <color=#D1AB9A>{4}</color>\n<color=#D1CBCB>Время задержки</color> - <color=#D1AB9A>{5} сек</color>\n<color=#D1CBCB>Дневной лимит</color> - <color=#D1AB9A>{6}</color>\n\n--------------------------------------------------", "UiRecycleEfficiency": "ЭФФЕКТИВНОСТЬ {0}%, {1} СЕК", "UiRecycleEfficiencyBp": "ЭФФЕКТИВНОСТЬ {0}%, ЧЕРТЕЖИ {2}%, {1} СЕК", "UiSessionLimit": "Циклы переработки: {0}", "BarCooldown": "Задержка переработчика:", "MsgSessionLimit": "Вы превысили лимит в {0} циклов переработки за одно использование." } /rec - Request access to the remote recycler. /rec bars *boolValue*(optional) - Toggle status bar display. /rec limits - View your usage limits. /rec buy limits *amount*(optional) - Purchase additional uses of the remote recycler. /rec buy cd *amount*(optional) - Purchase a 60 second(x by amount) cooldown skip for remote recycler. Example: /rec limits /rec buy limits 1 /rec buy limits 0.5$9.99 -
Version 1.9.0
9,954 downloads
The Offline Raid Protection plugin is a comprehensive solution that reduces or completely prevents damage to player-owned bases, vehicles, and boats when their owners are offline. Offering unparalleled control, server owners can adjust the level of damage based on real-world hours or the amount of time a player has been offline. New in version 1.6.0, you can also set customized schedules and automated wipe phases. New in version 1.7.0, optional Tax Protection lets players maintain their Tool Cupboard protection by paying with a configurable in-game currency, such as Scrap. Designed for servers seeking meaningful offline or online protection, without sacrificing server performance, this plugin provides total control over damage scales, cooldowns, team behaviour, decaying bases/boats, rentable shops, apartments and more. Highlights Flexible Damage Scaling: Set damage scales based on real-world hours and/or offline time. A scale of 0.0 blocks all damage; a scale of 1.0 allows normal, vanilla-level damage; and values above 1.0 actively increase incoming damage. Scheduled Timescales: Temporarily override standard damage scales for specific date ranges. Perfect for custom weekend rates, holiday events, wipe-day protection, or planned balance changes. Wipe Templates: Automate your wipe cycle with reusable phases (e.g., more protection immediately post-wipe, scaling down over subsequent days). Assign a default template for every wipe, or queue a specific template for the next wipe only. Tax Protection: An optional upkeep-style system for Tool Cupboards. Configure the currency, hourly cost, maximum purchased hours, reserve limit, and unused-time refunds when a Tool Cupboard is destroyed. Tax Overlay: An optional in-game panel UI shown while an authorized player loots a Tool Cupboard. It displays active, paused, or inactive Tax Protection, remaining time, costs, reserves, total available protection, and purchase buttons. Status HUD: An optional, configurable on-screen HUD that displays a building's or boat's current protection status, protection percentage, remaining time, and penalty timers. Position and visibility rules are customizable. Game Tip Messages: Displays color-coded game-tip messages to attackers, optionally restricted to specific damage types (Melee, Ranged, Explosive, and None for everything else). Admin-Only Map Markers: Equip your admins with color-coded map markers for protected Tool Cupboards and boats. Markers feature dynamic protection-state circles, live boat tracking, and detailed hover tooltips showing authorized players. Marker colors, radius, transparency, and refresh rates are configurable. ORP DDraw: An in-game F1-console inspection tool for admins. It displays the current ORP state of nearby Tool Cupboards and protected boats, including protection percentage, remaining time, Tax Protection time, and authorized-player count. Team, Clan & Code Lock Integration: Protection intelligently accounts for teams or clans, and optionally Code Lock whitelists. Boat & Vehicle Protection: Optionally extend protection to modular boats, tugboats, and vehicles, including their relevant authorization paths. Apartment & Rentable Shop Support: Protects against master-key break-ins based on the actual rental owner, ignoring team or clan status for these specific entities. Anti-Abuse Penalties: Discourage players from exploiting protection by applying configurable penalties when they leave or disband teams. Grief TC Detection: Automatically identifies and excludes later-placed, overlapping Tool Cupboards from receiving protection. Admins can manually inspect and override these classifications. Defender Raid Restriction: Discourage defenders from stopping an ongoing raid by logging off. Qualifying explosive damage starts a timer that suspends protection if all tracked defenders disconnect. Requires the included DamageDeltaObserver plugin. Cache System: The plugin uses a caching system to optimize performance and keep the impact on the server to a bare minimum. Developer API: Exposes endpoints for other plugins to query protection scales, owner IDs, remaining time, and penalty states via Plugin.Call. Scheduled Timescales & Wipe Templates Your standard configuration acts as the baseline fallback when "Enable scheduled timescales" is true and a valid scheduled profile is active, its specific damage-scale tables take absolute precedence for that date range. Once the schedule expires (or if no profile is active), the plugin seamlessly reverts to your standard configuration. Wipe Templates are reusable blueprints, not live schedules. When the server detects a new save, the plugin checks for a queued template. If there is none, it uses your designated default template to automatically generate concrete, dated schedule profiles based on the template's phases. Then, the queued selection is cleared while the default template remains ready for future wipes. Configuration & Editing Carbon Users: Type /orp.schedule to open a powerful in-game Schedule and Wipe Template editor. Oxide Users (or Carbon without Admin UI modules): Schedules and templates can be easily edited manually within their dedicated .json data files. The Documentation section describes how to edit the JSON files in detail. Using /orp.schedule will instead report the current schedule state in the chat. Tax Protection Tax Protection is an optional upkeep-style system for Tool Cupboards. When enabled, players with the Tax Protection permission must maintain active paid protection time for eligible Tool Cupboards before the configured protection scales apply. Players without the Tax Protection permission continue to use the normal protection rules. Players can use `/orp.tax` to view their Tax Protection status and purchase protection time with the configured currency item. Currency stored inside the Tool Cupboard can also act as a reserve and automatically extend protection when eligible. Set the reserve limit to -1 to disable Tool Cupboard currency reserves while retaining manual Tax Protection purchases. Server owners can configure the currency, hourly cost, maximum purchased protection time, reserve limit, unused-time refunds, and the optional Tax Overlay. Defender Raid Restriction Defender Raid Restriction is an optional system that discourages players from stopping an ongoing raid by logging off. Tracking begins when at least one defender is online. When the configured threshold for qualifying explosive damage is reached, a restriction timer starts. If all tracked defenders disconnect, their applicable protection is suspended until the timer expires. Reaching the damage threshold again resets the timer. Reconnecting stops the restriction from suspending protection while a tracked defender remains online. The countdown continues, so disconnecting again can make the restriction effective again. The tracked group includes the owner and authorized players. Team and clan members are included when team protection sharing is enabled. Damage from trusted or related players does not count. Qualifying targets include non-twig building blocks, doors, modular boats, tugboats, and additional entities you have added. Explosive rifle ammunition also counts. Flexible Protection for Every Server Offline Raid Protection supports a variety of server types, including full PvP, hybrid, and PvE. You can configure protection for bases, boats, vehicles, shops, apartments, teams, clans, and more. It also works with other plugins, such as "Raidable Bases", allowing you to customize raid protection for your server without altering the rest of your gameplay. Built with performance in mind Offline Raid Protection is designed to minimize its impact on server performance, even on busy servers. Protection data is cached and recurring updates, such as status HUD and map marker refreshes, are processed in controlled batches. Temporary data is reused where appropriate to reduce unnecessary allocations. No other raid protection plugin is built with such a focus on efficient protection checks, caching, and controlled background work. This plugin is engineered to minimize server overhead and avoid unnecessary lag or FPS drops, even on large, active servers. Development is focused on Carbon, taking advantage of its modern runtime, optimized systems, and native modules to deliver the best possible performance. Carbon generally outperforms Oxide, ensuring that Offline Raid Protection maintains efficiency and responsiveness on demanding servers. Commands All command names can be changed in the configuration. /orp or /ao <Steam ID | full name> — Check a player's offline protection status. You can type the command without a name when looking at a player's structure /raidprot — Show Offline Raid Protection information /orp.tax [hours] — Show Tax Protection status or purchase protection time for the current Tool Cupboard area /orp.fill.onlinetimes — Fill all players offline times (Chat & Console command) /orp.test.offline <Steam ID | full name> <hours> — Change a player's offline time /orp.test.online <Steam ID | full name> — Change a player's offline time to the current time /orp.test.penalty <Steam ID | full name> <hours> — Change the duration of a player's penalty. A negative value or zero would disable the penalty /orp.test.grief — Display the detected Grief-TC status of the building you are looking at /orp.test.grief <true|false|none> — Force the Grief-TC status of the looked-at building /orp.test.grief <true|false|none> <TC network ID> [...] — Set the status for one or more Tool Cupboards by network ID /orp.schedule — Open the Carbon schedule/template editor when available; otherwise show scheduling information. /orp.schedule <true|false> — Enable or disable Scheduled Timescales (admin only). orp.update.permissions — Refresh the permission status for all players (Console command) orp.update.prefabs <true> — Updates the 'Prefabs to protect' list in the configuration. Overwrites the list with the 'true' argument (Console command) orp.dump.prefabs — Clears the 'Prefabs to protect' list in the configuration (Console command) orp.ddraw [range] — Display nearby Tool Cupboards and protected boats with their current ORP state (in-game F1 console, admin only; range: 10-1000 metres) orp.ddraw off — Disable your ORP DDraw display (in-game F1 console, admin only) orp.raidrestriction status — Shows observer status, tracked restrictions, remaining time, and connected defenders orp.raidrestriction clear <player | sourceID> — Clears restrictions for a player or raid source orp.raidrestriction clearall — Clears all tracked restrictions Permissions All permissions can be configured. offlineraidprotection.protect — Allows a player to be protected from raids offlineraidprotection.tax — Allows a player to manage Tax Protection through `/orp.tax` offlineraidprotection.check — Allows a player to check the offline protection status of other players offlineraidprotection.admin — Allows use of administrative commands, including schedule controls and ORP DDraw (which also requires server-admin status) offlineraidprotection.onlineprotect — Bypasses the normal online-status restriction for players with this permission, allowing the configured protection rules to protect them while online. This is separate from the normal protection and Tax Protection permissions. Use oxide.grant / oxide.revoke or carbon.grant / carbon.revoke to manage permissions, depending on the framework in use. Configuration The configuration is to a large extent self-explanatory. Raid Protection Options Only mitigate damage caused by players: Choose whether or not to only mitigate damage caused directly by players. Enable this to prevent players from causing base damage by baiting patrol helicopters, etc. Protect players that are online: Choose whether or not to protect the bases of the players who are online. Works when "Scale of damage depending on the current hour of the real day" is configured. Enable scheduled timescales: Enable this option to allow valid profiles in `ScheduledTimescale.json` to override the normal real-time and offline-time damage-scale tables during their configured date range. When disabled, the plugin always uses the normal configuration tables. This option also enables Wipe Template materialization on a new save. As an admin, use the command /orp.schedule true or /orp.schedule false to change it in-game. On Carbon with the required UI modules, `/orp.schedule` opens the editor; on Oxide or without those modules, edit the dedicated JSON files manually. Scale of damage depending on the current hour of the real day: Defines the protection levels based on the current hour of the real day. The key is the hour of the day (0-23), and the value is the protection scale (0 — 340282300000000000000000000000000000000). Example: "0": 0.0, "1": 0.0, "2": 0.0, "3": 0.0 This means that the protection level is 100% from midnight to 3am. Scale of damage depending on the offline time in hours: Defines the protection levels based on the time since the player went offline. The key is the number of hours since the player went offline, and the value is the protection scale (0 — 340282300000000000000000000000000000000). The value of the hours can also be a decimal number. Example: "12": 0.25, "24": 0.5, "48": 1.0, "96": 2.0 This means that 12 hours after the player goes offline, the protection level will be 75%. After 24 hours it will be 50% and after 48 hours it will be 0%. After 96 hours, the damage is increased by 100%. Cooldown in minutes: During this time, damage levels will remain vanilla. Raids are possible. Set this to a positive value to discourage defenders from interrupting raids by logging off. Scale of damage between the cooldown and the first configured time: During this time, the level of damage between the cooldown and the first configured time can be set to a specific value, such as 0.0 Online time to qualify for offline raid protection in minutes: Time to qualify for offline raid protection after a player connects Set this to a positive value to discourage players from quickly logging on and back off solely to reset protection. Protect all prefabs: Choose whether to protect all prefabs or only specific ones. This will protect anything in the TC range. Protect AI (animals, NPCs, Bradley and attack helicopters etc.) if 'Protect all Prefabs' is enabled: Choose whether or not to protect AI entities if "Protect all Prefabs" is enabled. Set to false to reduce hook times, and to avoid protecting wild animals that wander by offline bases. Protect livestock animals (cows and sheep): Allows cows and sheep to receive protection Protect modular and tug boats: Choose whether to protect modular boats and tugboats and their deployables. Checks wheel authorization list, plus optionally lock authorization lists. Protect vehicles: Choose whether to protect vehicles or not. Vehicle lock authorization always has priority. If you want to exclude certain vehicles from protection, add them to the blacklist. Tugboats and modular boats are separate from this. Protect twigs: Choose whether to protect twigs or not. Protect decaying buildings: Choose whether to protect buildings that are either decaying, or have at least 50% of building blocks below 50% health. Ignore decay if due solely to twig: Choose whether to ignore decay state caused solely due to the presence of twig building blocks combined with a lack of wood in the TC. Set to true to ensure raiders cannot disable protection by building twig onto an offline base. Protect decaying modular boats: Choose whether modular boats should remain protected while they are in a decaying state. Protect grief TCs: Choose whether Tool Cupboards detected as grief TCs should receive Raid Protection. True: Grief-TC detection is disabled and Tool Cupboards are protected normally. False: The plugin detects separately placed Tool Cupboards whose buildings overlap within the configured Grief privilege distance. A later-created Tool Cupboard can be classified as a grief TC and excluded from Raid Protection. Tool Cupboards are not classified as grief TCs when they share an owner, authorized player, or other configured player relationship such as teams, clans, or Code Lock whitelist players. The default is true. Set this to false only if you want ORP to detect and exclude grief TCs. Admins can use /orp.test.grief to inspect or override individual classifications. Grief privilege distance: Sets the maximum distance, in metres, between building blocks belonging to separate Tool Cupboard buildings for them to be considered overlapping during Grief-TC detection. The distance is measured between the bounds of the building blocks, not between the Tool Cupboards themselves. A larger value allows buildings farther apart to be considered overlapping; a smaller value requires them to be closer together. Only used when Protect grief TCs is set to false. Valid range: 0 to 512 metres. Default: 16 metres. Prefabs to protect: List of prefabs that will be protected. Make sure you remove the prefabs you don't want to protect, some of them are pointless. Prefabs blacklist: List of prefabs that will not be protected. Prefabs in the blacklist will always have priority to be unprotected. Protection multipliers by prefab: Add a prefab short name and a multiplier between 0.0 and 1.0. A value of 1.0 uses the normal configured protection level. A value of 0.5 applies half of the protection strength. A value of 0.0 disables damage mitigation for that prefab. Example: "autoturret_deployed": 0.5, "wall.external.high.stone": 0.75 This keeps the normal protection rules in place, but reduces their effect for the listed prefabs. Tax Protection Options Tax Protection is optional and disabled by default. When enabled, players with the Tax Protection permission must maintain active paid protection time for eligible Tool Cupboards. Enabled: Enables or disables the Tax Protection system. When enabled, players with the tax permission need active paid Tax Protection to receive Protection within their Tool Cupboard privilege area. Enable for modular boats: Choose whether Tax Protection should also apply to eligible modular boats with a mounted Tool Cupboard. Requires "Protect modular and tug boats" to be enabled. Currency item ID: Sets the item used as Tax Protection currency. (default is Scrap) Use the Rust item ID for the currency you want players to pay with. Cost per hour: Sets how many configured currency items are required to purchase one hour of Tax Protection. Refund unused tax protection on Tool Cupboard destruction: Choose whether unused paid Tax Protection is refunded when a Tool Cupboard is destroyed by a trusted player. True: Eligible unused paid time is refunded. False: No refund is created. Maximum tax currency reserves per Tool Cupboard: Sets the maximum amount of configured currency that can be stored in a Tool Cupboard as Tax Protection reserves. Set to 0 for unlimited reserves. Set to -1 to disable Tool Cupboard currency reserves entirely: currency can remain in the Tool Cupboard, but it is not capped or automatically converted into Tax Protection time. Maximum total purchased protection hours: Sets the maximum amount of Tax Protection time that can be purchased and held for one Tool Cupboard. Group size hourly cost scaling options: Optionally increase the Tax Protection hourly cost based on the number of authorized players. Enabled — Enables group-size-based hourly pricing. Players included in the base hourly cost — Sets how many authorized players are included in the normal hourly price. Additional players in the small group tier — Sets how many players use the small-group price increase. Hourly cost increase per additional small group player — Sets the percentage added for each additional player in the small-group tier. Hourly cost increase per player above the small group tier — Sets the percentage added for players beyond the small-group tier. Maximum hourly cost multiplier — Limits how high the hourly cost can increase. The adjusted hourly cost is used consistently for Tax Protection purchases, status information, the Tax Overlay, and Tool Cupboard reserves. Tax Overlay Options: Adds an optional in-game Tax Overlay when authorized players loot a Tool Cupboard. The overlay shows Tax Protection status, remaining paid time, hourly cost, cupboard currency reserves, reserve limit, and total available protection time. Enabled — When enabled, authorized players can purchase one hour or buy the maximum currently available Tax Protection time directly from the Tool Cupboard overlay. Anchor minimum / maximum — Sets the overlay’s screen anchor position. Use these values together with the offset settings to place the overlay where you want it displayed. Offset minimum / maximum — Sets the overlay’s size and position relative to its anchors. The default values place a compact Tax Management panel in the center of the screen. Apartment Complex Protection Options Protect apartments from break-ins: Whether to protect apartments from master key break-ins when Raid Protection is active. Protect apartment even when owner absent: Whether apartments with no owner inside should remain protected. True: Apartment protection applies regardless of owner's offline location. False: Apartment protection applies only when owner is offline inside of the apartment. Protect apartment even when rent due: Whether apartments with no upkeep remaining should remain protected. True: Apartment protection applies even in Rent Due state. False: Apartment protection does not apply in Rent Due state. Protect shops from break-ins: Whether to protect rentable shops from master key break-ins when Raid Protection is active. Protect only when damage scale below: Whether to limit apartment and/or shop break-in protection based on damage scale. Example: Set to 0.2 to protect only when damage scale is between 0 and 0.2 (i.e. when protection level is between 80% and 100%). Set to 1.0 or higher to apply break-in protection regardless of damage scale. Use damage scale as break-in success chance: Whether to make a random roll on each break-in attempt, with chance of success equal to damage scale (e.g. 25% chance of success at 75% protection level, 80% chance at 20% protection level, etc.). Only applies when apartment or shop is otherwise protected. Status HUD Options The Status HUD is optional and disabled by default. It provides players with a compact, configurable view of the protection state for the privilege area they are in. Enabled — Turns the Status HUD on or off. Anchor minimum / Anchor maximum — Sets the HUD anchor position using Unity screen coordinates. The default anchors place it at the top-right of the screen. Offset minimum / Offset maximum — Sets the HUD bounds in pixels relative to its anchors. Adjust these values to move or resize the panel without changing its anchor position. Refresh interval in seconds — Controls how often the HUD refreshes. A lower value updates it more frequently. Display inside trusted privilege — Choose whether the normal HUD is shown while the player is authorized on the relevant building or boat. Display only when protection is active — Hides the normal HUD whenever no active protection is being applied. Display after status command — Shows the HUD temporarily when a player uses the check status command. Status command display duration in seconds — Sets how long the command-triggered HUD remains visible. Show protection percentage — Displays the current protection percentage. Show remaining protection time — Displays the remaining time for the current protection scale when applicable. Show penalty timer — Displays a player’s active penalty timer when applicable. Map Marker Options Map markers are optional and disabled by default. Only players with the plugin’s admin permission can use them; regular players cannot. Enabled — Turns Tool Cupboard and boat markers on or off. Refresh interval in seconds — Controls how often marker state and labels are refreshed. Use a longer interval if immediate visual updates are not required. Enable boat live circle — Updates the map-radius circle for tugboats and modular boats as they move. Visual radius in metres — Sets the radius of each marker circle. Alpha — Sets circle transparency. "0" is fully transparent, and "1" is fully opaque. Protected color — The color used for 100% protected status. Partial protection color — Color used when only partial protection applies. Vulnerable color — Color used when normal or vulnerable status applies. Decaying color — Color used for decaying building status. Grief color — Color used for a detected or forced grief tool cupboard status. Outline color — Color used for the marker circle outline. Tooltip marker text max. players — Limits how many authorized player names are shown in a marker tooltip. Defender Raid Restriction Options Disabled by default. Requires the included DamageDeltaObserver plugin. Enabled — Turns Defender Raid Restriction on or off. Damage window in seconds — Sets the rolling time window in which the damage threshold must be reached. Minimum raid damage — Sets the qualifying health loss needed to start or refresh a restriction. Restriction minutes — Sets the restriction duration. Reaching the damage threshold again refreshes the timer. Defender notice cooldown in seconds — Sets the minimum time between restriction-extension notices. Notify defenders — Sends chat messages when a restriction starts, is extended, or remains active when a defender reconnects. Notify attackers — Shows a game tip when a raid restriction suspends protection. Explosive shortnames — Sets which explosive prefabs count toward the damage threshold. The default list is generated from the server’s available explosive prefabs. Use prefab shortnames rather than item shortnames. Explosive rifle ammunition counts separately. Additional raid entity prefabs — Add prefab shortnames for additional entities whose qualifying explosive damage should count toward Defender Raid Restriction. Timezone Options The fallback timezone is UTC if you leave it blank in the configuration, or if your configured timezone doesn't exist. The timezone identifiers are different for Windows and Linux. You can check the appendices to find your preferred timezone. Developer API Other Carbon/Oxide plugins can access ORP data through `Plugin.Call`. Available API methods: bool API_IsPlayerRaidRestricted(ulong playerID) long API_GetPlayerRaidRestrictionEndUtcTicks(ulong playerID) bool API_IsEntityRaidRestricted(BaseCombatEntity entity) long API_GetEntityRaidRestrictionEndUtcTicks(BaseCombatEntity entity) float API_GetEntityDamageScale(BaseCombatEntity entity, BasePlayer attacker) ulong API_GetEntityProtectionTargetID(BaseCombatEntity entity, BasePlayer attacker) float API_GetPlayerDamageScale(ulong playerID) long API_GetRemainingTimeTicks(ulong playerID) long API_GetPenaltyEndUtcTicks(ulong playerID) bool API_EnablePenalty(ulong playerID, float durationHours) bool API_DisablePenalty(ulong playerID) int API_EnablePenalties(ICollection<ulong> playerIDs, float durationHours) int API_DisablePenalties(ICollection<ulong> playerIDs) Return conventions: Damage-scale methods return -1f when no applicable ORP scale exists API_GetEntityProtectionTargetID returns 0UL when no target is available Time methods return 0L when no active value exists Bulk methods return the number of successfully processed known players Conclusion The Offline Raid Protection plugin provides a comprehensive solution for protecting players' structures and vehicles. This plugin is essential for any Rust server owner who wants to provide a fair and enjoyable gaming experience for their players. Windows_Timezones.txt Linux_Timezones.txt Prefabs.txtFree- 175 comments
- 5 reviews
-
- 10
-
-
- #carbon
- #raid
-
(and 39 more)
Tagged with:
- #carbon
- #raid
- #raiding
- #raid protect
- #raidcontroller
- #protection
- #offline
- #raidlimit
- #raid plugin
- #plugin
- #plugin rust
- #rust
- #plugin protection
- #modular
- #boat
- #tugboat
- #modular boat
- #apartment
- #apartment complex
- #apartment complex ready
- #toolcupboard
- #antiraid
- #anti raid
- #antioffline
- #anti offline
- #griefing
- #raid time
- #raid time manager
- #raid schedule
- #raid scheduler
- #raid hours
- #wipe protect
- #wipe-protection
- #schedules
- #hud
- #hudui
- #hud panel
- #status
- #status ui
- #map marker
- #map markers
-
Version 0.1.9
436 downloads
The plugin displays the current zone or monument to the player in the status bar. Depends on ZoneManager, MonumentsWatcher and AdvancedStatus plugins. P.S. The settings for each zone or monument are located in the "*SERVER*\oxide\data\ZoneStatus\" folder. The ability to display the player's current monument; The ability to automatically change monuments names when the player switches languages; The ability to display the player's current zone; The ability to enable or disable visibility for each of the zones; The ability to customize the style for each of the zones(in the data file); The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. { "Is it worth deleting all saved Bar configs upon detecting a Wipe?": false, "Is it worth deleting all saved Monument configs upon detecting a Wipe?": false, "Is it worth deleting all saved Zone configs upon detecting a Wipe?": false, "Is it worth deleting all unused Monuments during initialization?": false, "Is it worth deleting all unused Zones during initialization?": false, "The name of the zone which has no name": "No name zone", "Is it worth enabling the bar display for new monuments?": true, "Is it worth enabling the bar display for new zones?": true, "List of prefix IDs that will share the same settings. Leave null to recreate the default list": [ "cargoship", "deepsea_floatingcity", "deepsea_island_tropical", "ghostship", "desert_military_base_", "gas_station_1", "lighthouse", "station-", "supermarket_1", "swamp_", "underwater_lab_", "warehouse", "entrance_bunker_", "ice_lake_", "power_sub_small_", "power_sub_big_", "jungle_ruins_", "water_well_" ], "Wipe ID": null, "Version": { "Major": 0, "Minor": 1, "Patch": 9 } } In the "\data\ZoneStatus\" folder, there are three files: BarsConfig.json - stores status bar settings with their unique keys. MonumentsConfig.json - contains settings for monuments. ZonesConfig.json - contains settings for zones. [PluginReference] private Plugin ZoneStatus; There is 1 method: UpdateZoneSettings UpdateZoneSettings: Used to change bar settings for zones from ZoneManager. To call the UpdateZoneSettings method, you need to pass 3 parameters, 1 of which is optional: <string>zoneID - The Id of the zone; <object[]>args - Array of objects to update; <bool>redraw - Optional. Is it worth redrawing the status bars for players? Defaults to true. Note: It is not necessary to pass all parameters, but the indices are strictly tied to the parameters. object[] args = new object[] { true, //0. Display - Is it worth displaying the status bar for this zone? "#A064A0", //1. Background_Color - Primary HEX color of the status bar. 0.8f, //2. Background_Transparency - Opacity of the primary status bar color. "https://i.imgur.com/mn8reWg.png", //3. Image_Url - Url of the status bar icon. "ZoneStatus_Default", //4. Image_Local - Name of the local image for the status bar. Note: The image must exist.(Leave empty to use Image_Url). false, //5. Image_IsRawImage - True for multicolored images, false for monochromatic images. "#A064A0", //6. Image_Color - Color of the status bar icon. For Image_IsRawImage = false. 1f, //7. Image_Transparency - Opacity of the status bar icon. For Image_IsRawImage = false. "#FFFFFF", //8. Text_Color - Primary text color. "#FFFFFF" //9. SubText_Color - Subtext color. }; ZoneStatus?.Call("UpdateZoneSettings", zoneID, args, true); //Call the API method UpdateZoneSettings with all necessary arguments for updating. Example with incomplete parameters: object[] args = new object[] { null, //0. Display - Skip index 0, as it is reserved for Display. "#A064A0", //1. Background_Color - Primary HEX color of the status bar. 0.8f, //2. Background_Transparency - Opacity of the primary status bar color. null, //3. Image_Url - Skip index 3, as it is reserved for Image_Url. null, //4. Image_Local - Skip index 4, as it is reserved for Image_Local. false, //5. Image_IsRawImage - True for multicolored images, false for monochromatic images. "#A064A0", //6. Image_Color - Color of the status bar icon. For Image_IsRawImage = false. 1f //7. Image_Transparency - Opacity of the status bar icon. For Image_IsRawImage = false. }; ZoneStatus?.Call("UpdateZoneSettings", zoneID, args, true); //Call the API method UpdateZoneSettings with all necessary arguments for updating.$3.99 -
Version 0.1.6
674 downloads
An excellent plugin for remote trading between players with extensive functionality. The ability to log successful trades; The ability to create new permissions; The ability to customize permissions flexibly, including both new and existing ones; The ability to limit slots in trade; The ability to configure the method(Personal, CommonMinimum, CommonMaximum) for limiting the number of slots; The ability to set a cooldown on sending trade requests; The ability to configure the method(InitiatorOnly, TargetOnly, Both) for applying cooldown to players; The ability to purchase a bypass for the trade request cooldown; The ability to set a daily limit on sending trade requests; The ability to purchase additional trade requests after reaching the daily limit; The ability to forbid trading when wounded; The ability to forbid trading while swimming; The ability to forbid trading while mounted on certain seats; The ability to forbid trading in specified monuments, by name or by monument type; The ability to forbid trading in someone else's building privileges; The ability to forbid trading when taking damage; The ability to forbid trading during a combat block; The ability to forbid trading during a raid block; The ability to forbid certain items from being traded; The ability to automatically generate language files for specified languages(with content filled in English); The ability to set an effect upon receiving a trade request; The ability to change the effect upon a successful trade completion; The ability to display a status bar while waiting for a trade; The ability to choose between bar types(TimeCounter and TimeProgressCounter); The ability to specify the order of the bar; The ability to change the height of the bar; The ability to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The ability to set own image and customize the color and transparency of the image; The ability to set sprite instead of the image; The ability to customize the color, size and font of the text. { "Chat command": "trade", "List of 'accept' commands": [ "accept", "yes" ], "List of 'cancel' commands": [ "cancel", "no" ], "Is it worth enabling GameTips for messages?": true, "Is it worth using Notify plugins for messages instead of the vanilla UI?": false, "Specify the regular message type for notify": 0, "Specify the warning message type for notify": 1, "Selected economic plugin(None, Economics, ServerRewards, IQEconomic, BankSystem)": "Economics", "Is it worth using the AdvancedStatus plugin?": true, "Is it worth saving trade logs to a file?": true, "List of language keys for creating language files": [ "en" ], "Slot limit calculation mode(Personal, CommonMinimum, CommonMaximum)": "CommonMaximum", "Trade cooldown apply mode(InitiatorOnly, TargetOnly, Both)": "InitiatorOnly", "Is it worth checking the target's trade cooldown?": false, "Time in seconds given to respond to a trade request": 15.0, "Price to skip 60 seconds of the trade request cooldown": 10.0, "The prefab name for the effect triggered when a trade request is received": "assets/bundled/prefabs/fx/invite_notice.prefab", "The prefab name for the effect triggered when a trade is successfully completed": "assets/prefabs/building/wall.frame.shopfront/effects/metal_transaction_complete.prefab", "List of mount names where trading is prohibited": [ "horsesaddle", "horsesaddlerear", "bikedriverseat", "bikepassengerseat", "motorbikedriverseat", "motorbikepassengerseat", "modularcardriverseat", "modularcarpassengerseatleft", "modularcarpassengerseatright", "modularcarpassengerseatlesslegroomleft", "modularcarpassengerseatlesslegroomright", "modularcarpassengerseatsidewayleft", "miniheliseat", "minihelipassenger", "transporthelipilot", "transporthelicopilot", "attackhelidriver", "attackheligunner", "submarinesolodriverstanding", "submarineduodriverseat", "submarineduopassengerseat", "snowmobiledriverseat", "snowmobilepassengerseat", "snowmobilepassengerseat tomaha", "workcartdriver", "locomotivedriver", "craneoperator", "batteringramseat", "ballistagun.entity" ], "Status. Bar - Display time in seconds. A value of 0 keeps it visible until the cooldown ends": 15.0, "Status. Bar - Type(TimeProgressCounter or TimeCounter)": "TimeCounter", "Status. Bar - Height": 26, "Status. Bar - Order": 10, "Status. Background - Color(Hex or RGBA)": "#EFC570", "Status. Background - Transparency": 0.7, "Status. Background - Material(Leave empty to disable)": "", "Status. Image - Url": "https://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/Trader_Request.png", "Status. Image - Local(Leave empty to use Image_Url)": "Trader_Request", "Status. Image - Sprite(Leave empty to use Image_Local or Image_Url)": "", "Status. Image - Is raw image": false, "Status. Image - Color(Hex or RGBA)": "#EFC570", "Status. Image - Transparency": 1.0, "Status. Image Outline - Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Status. Image Outline - Transparency": 1.0, "Status. Image Outline - Distance(Leave empty to disable). Example '0.75 0.75'": "", "Status. Text - Size": 12, "Status. Text - Color(Hex or RGBA)": "#FFFFFF", "Status. Text - Transparency": 1.0, "Status. Text - Font(https://docs.oxidemod.com/guides/developers/basic-cui/basic-cui#fonts)": "RobotoCondensed-Bold.ttf", "Status. Text - Offset Horizontal": 0, "Status. Text Outline - Color(Hex or RGBA)": "#000000", "Status. Text Outline - Transparency": 1.0, "Status. Text Outline - Distance(Leave empty to disable)": "", "Status. SubText - Size": 12, "Status. SubText - Color(Hex or RGBA)": "#FFFFFF", "Status. SubText - Transparency": 1.0, "Status. SubText - Font": "RobotoCondensed-Bold.ttf", "Status. SubText Outline - Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "Status. SubText Outline - Transparency": 1.0, "Status. SubText Outline - Distance(Leave empty to disable)": "", "Status. Progress - Background Color(Hex or RGBA)": "1 1 1 0.15", "Status. Progress - Background Transparency": 0.15, "Status. Progress - Reverse": true, "Status. Progress - Color(Hex or RGBA)": "#EFC570", "Status. Progress - Transparency": 0.7, "Status. Progress - OffsetMin": "0 0", "Status. Progress - OffsetMax": "0 0", "List of trade permissions": [ { "Permission Name": "trader.default", "Number of available trade slots": 3, "Cooldown time(in seconds) before next trade": 600.0, "Daily trade request limit. A value of 0 disables the limit": 50, "Price to purchase a trade after exceeding the daily limit. A value of 0 disables the purchase": 5.0, "Is it worth forbidding trade if the player is in a wounded state?": true, "Is it worth forbidding trade if the player is swimming?": true, "Is it worth forbidding trade if the player is mounted?": true, "Is it worth forbidding trade if the player is in someone else's building privilege area?": true, "Is it worth forbidding trade if the player has taken damage?": true, "Is it worth forbidding trade if the player has combat block?": true, "Is it worth forbidding trade if the player has raid block?": true, "List of monuments where trade is forbidden": null, "List of monument categories where trade is forbidden": [ "RadTown", "RadTownWater", "RadTownSmall", "TunnelStation", "Custom" ], "List of forbidden trade items": [ "rock" ] }, { "Permission Name": "trader.vip", "Number of available trade slots": 6, "Cooldown time(in seconds) before next trade": 450.0, "Daily trade request limit. A value of 0 disables the limit": 100, "Price to purchase a trade after exceeding the daily limit. A value of 0 disables the purchase": 2.5, "Is it worth forbidding trade if the player is in a wounded state?": true, "Is it worth forbidding trade if the player is swimming?": true, "Is it worth forbidding trade if the player is mounted?": true, "Is it worth forbidding trade if the player is in someone else's building privilege area?": true, "Is it worth forbidding trade if the player has taken damage?": true, "Is it worth forbidding trade if the player has combat block?": true, "Is it worth forbidding trade if the player has raid block?": true, "List of monuments where trade is forbidden": null, "List of monument categories where trade is forbidden": [ "RadTown", "RadTownWater", "TunnelStation" ], "List of forbidden trade items": [ "rock" ] }, { "Permission Name": "realpve.vip", "Number of available trade slots": 9, "Cooldown time(in seconds) before next trade": 300.0, "Daily trade request limit. A value of 0 disables the limit": 0, "Price to purchase a trade after exceeding the daily limit. A value of 0 disables the purchase": 0.0, "Is it worth forbidding trade if the player is in a wounded state?": false, "Is it worth forbidding trade if the player is swimming?": false, "Is it worth forbidding trade if the player is mounted?": false, "Is it worth forbidding trade if the player is in someone else's building privilege area?": false, "Is it worth forbidding trade if the player has taken damage?": false, "Is it worth forbidding trade if the player has combat block?": false, "Is it worth forbidding trade if the player has raid block?": false, "List of monuments where trade is forbidden": [ "oilrig_1" ], "List of monument categories where trade is forbidden": null, "List of forbidden trade items": [ "rock" ] } ], "Version": { "Major": 0, "Minor": 1, "Patch": 5 } } EN: { "CmdNotAllowed": "You do not have permission to use this command!", "CmdPlayerNotFound": "Player '{0}' not found! You must provide the player's name or ID.", "CmdMultiplePlayers": "Multiple players found: {0}", "CmdEconomicsNotEnough": "Not enough funds!", "CmdMain": "Available trade commands:\n\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>bars *boolValue*(optional)</color> - Toggle status bar display\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>*nameOrId*</color> - Send a trade request to the specified player\n<color=#D1CBCB>/trade</color> <color=#83BA7C>accept/yes</color> - Accept a pending trade request\n<color=#D1CBCB>/trade</color> <color=#DE5757>cancel/no</color> - Decline a pending or active trade\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>limits</color> - View your trade limits\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>buy limits *amount*(optional)</color> - Purchase additional trade requests\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>buy cd *amount*(optional)</color> - Purchase a 60 second(* by amount) cooldown skip\n\n--------------------------------------------------", "CmdBarsEnabled": "Status bar display enabled!", "CmdBarsDisabled": "Status bar display disabled!", "CmdDailyLimitExtra": "You have exceeded the daily limit({0}) for sending trade requests!\n<size=10>However, you can buy additional requests using the <color=#D1AB9A>/trade buy limits</color> command for <color=#D1CBCB>${1}</color></size>", "CmdDailyLimit": "You have exceeded the daily limit({0}) for sending trade requests!", "CmdCooldownSkip": "You must wait {0} seconds before sending another trade request!\n<size=10>However, you can skip the cooldown using the <color=#D1AB9A>/trade buy cd</color> command for <color=#D1CBCB>${1}</color> per 60 seconds</size>", "CmdCooldown": "You must wait {0} seconds before sending another trade request!", "CmdWoundBlock": "You can't trade while wounded!", "CmdSwimming": "You can't trade while swimming!", "CmdMountBlock": "You can't trade while mounted here!", "CmdBuildingBlock": "You can't trade inside someone else's base!", "CmdDamageBlock": "You can't trade while taking damage!", "CmdCombatBlock": "You can't trade during combat block!", "CmdRaidBlock": "You can't trade during a raid block!", "CmdAcceptEmpty": "You have no pending trade requests!", "CmdAcceptOngoing": "You already have an active trade with player '<color=#D1AB9A>{0}</color>'!", "CmdDeclineEmpty": "You have no pending or active trades!", "CmdDecline": "Trade between you and player '<color=#D1AB9A>{0}</color>' has been canceled!", "CmdDeclineOther": "Player '<color=#D1AB9A>{0}</color>' canceled the trade with you!", "CmdSendSelf": "You cannot send a trade request to yourself!", "CmdSendNoRespond": "Player '<color=#D1AB9A>{0}</color>' has not responded to your trade request!", "CmdSendAlredyHave": "You already have a pending or active trade with player '<color=#D1AB9A>{0}</color>'!\n<size=10><color=#83BA7C>/trade yes</color> - Accept the pending trade request\n<color=#DE5757>/trade no</color> - Decline the pending or active trade</size>", "CmdSendTargetNotAllowed": "Player '<color=#D1AB9A>{0}</color>' does not have permission to use trading!", "CmdSendTargetAlredyHave": "Player '<color=#D1AB9A>{0}</color>' already has a pending or active trade with player '<color=#D1AB9A>{1}</color>'!", "CmdSendTargetHasCooldown": "Player '<color=#D1AB9A>{0}</color>' has an active cooldown, {1} seconds remaining!", "CmdSendTo": "Trade request successfully sent to player '<color=#D1AB9A>{0}</color>'.", "CmdSendFrom": "Player '<color=#D1AB9A>{0}</color>' has sent you a trade request.\n<size=10><color=#83BA7C>/trade yes</color> - Accept the pending trade request\n<color=#DE5757>/trade no</color> - Decline the pending or active trade</size>", "CmdPurchaseNotLimited": "You haven't reached your daily limit yet!", "CmdPurchaseHaveExtra": "You still have {0} additional trade requests! Use them before purchasing more.", "CmdPurchaseLimitsNotAllowed": "Purchasing additional trade requests is unavailable!", "CmdPurchasedLimits": "You have successfully purchased <color=#D1CBCB>{0}</color> trade requests!\n<size=10>Now you have <color=#D1CBCB>{1}</color> additional trade requests</size>", "CmdPurchaseNoCooldown": "You don't have a cooldown for sending trade requests!", "CmdPurchaseCooldownNotAllowed": "Purchasing a cooldown skip for trade requests is not available!", "CmdPurchasedCooldown": "You have successfully purchased a cooldown skip for <color=#D1CBCB>{0} seconds</color> for trade requests!\n<size=10>Now you need to wait <color=#D1CBCB>{1} seconds</color></size>", "CmdMyLimits": "Your trade request limits:\n\n<color=#D1CBCB>Cooldown</color> - <color=#D1AB9A>{0} sec</color>\n<color=#D1CBCB>Daily Limit</color> - <color=#D1AB9A>{1}</color>\n\n--------------------------------------------------", "BarInitiator": "Trade to: {0}", "BarTarget": "Trade from: {0}", "BarCooldown": "Trade cooldown:", "MsgStarted": "You have started a trade with player '<color=#D1AB9A>{0}</color>'!", "MsgCompleted": "Trade with player '<color=#D1AB9A>{0}</color>' completed successfully!", "MsgCanceled": "Player '<color=#D1AB9A>{0}</color>' canceled the trade!" } RU: { "CmdNotAllowed": "У вас недостаточно прав для использования этой команды!", "CmdPlayerNotFound": "Игрок '{0}' не найден! Вы должны указать имя или ID игрока.", "CmdMultiplePlayers": "Найдено несколько игроков: {0}", "CmdEconomicsNotEnough": "Не достаточно средств!", "CmdMain": "Доступные команды для трейда:\n\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>bars *булевоеЗначение*(опционально)</color> - Переключение отображения статус баров\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>*имяИлиАйди*</color> - Отправить запрос на трейд указанному игроку\n<color=#D1CBCB>/trade</color> <color=#83BA7C>accept/yes</color> - Принять ожидающий запрос на трейд\n<color=#D1CBCB>/trade</color> <color=#DE5757>cancel/no</color> - Отклонить ожидающий или активный трейд\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>limits</color> - Узнать свои лимиты\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>buy limits *количество*(опционально)</color> - Докупить дополнительное количество трейд запросов\n<color=#D1CBCB>/trade</color> <color=#D1AB9A>buy cd *количество*(опционально)</color> - Купить пропуск 60 секунд(* на количество) задержки перед отправкой трейд запросов\n\n--------------------------------------------------", "CmdBarsEnabled": "Отображение статус баров включено!", "CmdBarsDisabled": "Отображение статус баров выключено!", "CmdDailyLimitExtra": "Вы превысили допустимую дневную норму({0}) на отправку трейд запросов!\n<size=10>Но вы можете купить дополнительные запросы с помощью команды <color=#D1AB9A>/trade buy limits</color> за <color=#D1CBCB>{1}$</color></size>", "CmdDailyLimit": "Вы превысили допустимую дневную норму({0}) на отправку трейд запросов!", "CmdCooldownSkip": "Перед отправкой нового запроса на трейд вам необходимо подождать {0} секунд!\n<size=10>Но вы можете купить пропуск задержки с помощью команды <color=#D1AB9A>/trade buy cd</color> за <color=#D1CBCB>{1}$</color> за каждые 60 секунд</size>", "CmdCooldown": "Перед отправкой нового запроса на трейд вам необходимо подождать {0} секунд!", "CmdWoundBlock": "Вам запрещено пользоваться трейдом в предсмертном состоянии!", "CmdSwimming": "Вам запрещено пользоваться трейдом в воде!", "CmdMountBlock": "Вам запрещено пользоваться трейдом сидя в данном месте!", "CmdBuildingBlock": "Вам запрещено пользоваться трейдом в чужой базе!", "CmdDamageBlock": "Вам запрещено пользоваться трейдом при получении урона!", "CmdCombatBlock": "Вам запрещено пользоваться трейдом во время боя!", "CmdRaidBlock": "Вам запрещено пользоваться трейдом во время рейда!", "CmdAcceptEmpty": "У вас нет ожидающих запросов на трейд!", "CmdAcceptOngoing": "У вас уже есть активный трейд с игроком '<color=#D1AB9A>{0}</color>'!", "CmdDeclineEmpty": "У вас нет ожидающих или активных трейдов!", "CmdDecline": "Трейд между вами и игроком '<color=#D1AB9A>{0}</color>' отменён!", "CmdDeclineOther": "Игрок '<color=#D1AB9A>{0}</color>' отменил трейд с вами!", "CmdSendSelf": "Нельзя отправить трейд запрос самому себе!", "CmdSendNoRespond": "Игрок '<color=#D1AB9A>{0}</color>' не ответил на ваш трейд запрос!", "CmdSendAlredyHave": "У вас уже есть ожидающий или активный трейд с игроком '<color=#D1AB9A>{0}</color>'!\n<size=10><color=#83BA7C>/trade yes</color> - Принять ожидающий запрос на трейд\n<color=#DE5757>/trade no</color> - Отклонить ожидающий или активный трейд</size>", "CmdSendTargetNotAllowed": "У игрока '<color=#D1AB9A>{0}</color>' недостаточно прав для использования обмена!", "CmdSendTargetAlredyHave": "У игрока '<color=#D1AB9A>{0}</color>' уже есть ожидающий или активный трейд с игроком '<color=#D1AB9A>{1}</color>'!", "CmdSendTargetHasCooldown": "У игрока '<color=#D1AB9A>{0}</color>' имеется активный кулдаун, осталось {1} секунд!", "CmdSendTo": "Игроку '<color=#D1AB9A>{0}</color>' был успешно отправлен запрос на трейд.", "CmdSendFrom": "Игрок '<color=#D1AB9A>{0}</color>' отправил вам запрос на трейд.\n<size=10><color=#83BA7C>/trade yes</color> - Принять ожидающий запрос на трейд\n<color=#DE5757>/trade no</color> - Отклонить ожидающий или активный трейд</size>", "CmdPurchaseNotLimited": "Вы ещё не исчерпали свой дневной лимит!", "CmdPurchaseHaveExtra": "У вас ещё есть {0} дополнительных трейд запросов! Используйте их прежде, чем покупать новые.", "CmdPurchaseLimitsNotAllowed": "Покупка дополнительных трейд запросов недоступна!", "CmdPurchasedLimits": "Вы успешно докупили <color=#D1CBCB>{0}</color> трейд запросов!\n<size=10>Теперь у вас <color=#D1CBCB>{1}</color> дополнительных трейд запросов</size>", "CmdPurchaseNoCooldown": "У вас нет задержки на отправку трейд запросов!", "CmdPurchaseCooldownNotAllowed": "Покупка пропуска задержки на трейд запросы недоступна!", "CmdPurchasedCooldown": "Вы успешно купили пропуск на <color=#D1CBCB>{0} секунд</color> задержки для трейд запросов!\n<size=10>Теперь вам нужно подождать <color=#D1CBCB>{1} секунд</color></size>", "CmdMyLimits": "Ваши лимиты трейд запросов:\n\n<color=#D1CBCB>Время задержки</color> - <color=#D1AB9A>{0} сек</color>\n<color=#D1CBCB>Дневной лимит</color> - <color=#D1AB9A>{1}</color>\n\n--------------------------------------------------", "BarInitiator": "Трейд с: {0}", "BarTarget": "Трейд от: {0}", "BarCooldown": "Задержка трейда:", "MsgStarted": "Вы начали трейд с игроком '<color=#D1AB9A>{0}</color>'!", "MsgCompleted": "Трейд с игроком '<color=#D1AB9A>{0}</color>' успешно завершён!", "MsgCanceled": "Игрок '<color=#D1AB9A>{0}</color>' отменил трейд!" } bars *boolValue*(optional) - Toggle status bar display. *nameOrId* - Send a trade request to the specified player. accept/yes - Accept a pending trade request. cancel/no - Decline a pending or active trade. limits - View your trade limits. buy limits *amount*(optional) - Purchase additional trade requests. buy cd *amount*(optional) - Purchase a 60 second(* by amount) cooldown skip. Example: /trade bars true /trade iiiaka /trade yes /trade limits /trade buy limits 1 /trade buy limits 0.5$9.99 -
Version 0.1.10
1,360 downloads
The plugin displays the time until the next wipe in the status bar. Depends on AdvancedStatus plugin. The ability to display the remaining time until the wipe: If there are N days left. Configurable in the configuration file; If player is in a safe zone or building privilege zone; The option to choose between a server wipe and a manually specified wipe; The ability to automatically generate language files for different languages(filled in English); The ability to customize the status bar for each of wipes; The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. wipestatus.admin - Provides the ability to set custom date of wipe. { "Chat command": "wipe", "Is it worth enabling GameTips for messages?": true, "List of language keys for creating language files": [ "en" ], "Is it worth displaying the wipe timer only when players in the safe zone or building privilege?": false, "The number of days before the wipe when the status bar will start to display. A value of 0 enables constant display": 0, "Bar settings key for a vanilla wipe": "_default", "Custom wipe dates list. Format: yyyy-MM-dd HH:mm. Example: 2025-12-25 13:30": {}, "List of status bar settings. Leave empty or null to recreate the default list": { "_default": { "Progress_Main_Color(Hex or RGBA)": "1 1 1 0.15", "Progress_Main_Transparency": 0.15, "BarType(TimeProgressCounter or TimeCounter)": "TimeCounter", "Order": 10, "Height": 26, "Main_Color(Hex or RGBA)": "#0370A4", "Main_Transparency": 0.7, "Main_Material(empty to disable)": "", "Image_Url": "https://i.imgur.com/FKrFYN5.png", "Image_Local(Leave empty to use Image_Url)": "WipeStatus_Default", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#0370A4", "Image_Transparency": 1.0, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "TextKey": "Bar_default", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#FFFFFF", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#FFFFFF", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75", "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#0370A4", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" } }, "Version": { "Major": 0, "Minor": 1, "Patch": 10 } } EN: { "CmdMainAdmin": "Available admin commands:\n\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>bar</color> <color=#D1CBCB>*booleanValue*(optional)</color> - Toggle the wipe bar display\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>time</color> - Current time based on server's timezone\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>add</color> <color=#D1CBCB>*wipeDate* *barId*(optional) *numericValue*(optional) *numericValue*(optional)</color> - Add a custom wipe date. Optionally, you can specify the style of the status bar, interval/spacing between wipes, and the number of intervals. Date format: yyyy-MM-dd HH:mm\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>add bar</color> <color=#D1CBCB>*wipeDate* *barID*(optional) *newBarId*(optional) *targetBarId*(optional)</color> - Add new status bar settings. Optionally, specify the ID of an existing bar to copy from\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>update</color> <color=#D1CBCB>*wipeDate* *newBarId*</color> - Update the status bar settings key for the specified custom wipe date. Use 'vanilla' instead of a wipe date to select the vanilla wipe\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>clear</color> - Clear all custom wipe dates\n\n--------------------------------------------------", "CmdMain": "Available commands:\n\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>bar</color> <color=#D1CBCB>*booleanValue*</color>(optional) - Toggle the wipe bar display\n\n--------------------------------------------------", "CmdServerTime": "Current real server time: '{0}'", "CmdNewDateAdded": "The new date '{0}' has been successfully added!", "CmdNewDateRangeAdded": "The list of dates was successfully added!", "CmdNewDateAddFailed": "Invalid format or the date is earlier than the current one. Example: '{0}'", "CmdUpdateFailed": "Failed to add/update status bar settings for '{0}'!", "CmdClearDates": "Custom dates list has been successfully cleared!", "CmdBarEnabled": "Displaying the wipe bar is enabled!", "CmdBarDisabled": "Displaying the wipe bar is disabled!", "Bar_default": "WIPE IN" } RU: { "CmdMainAdmin": "Доступные админ команды:\n\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>bar</color> <color=#D1CBCB>*булевоеЗначение*(опционально)</color> - Переключение отображения вайп бара\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>time</color> - Текущее время по часовому поясу сервера\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>add</color> <color=#D1CBCB>*датаВайпа* *айдиБара*(опционально) *числовоеЗначение*(опционально) *числовоеЗначение*(опционально)</color> - Добавление кастомной даты вайпа. Опционально можно указать стиль статус бара, интервал/отступ между вайпами и кол-во интервалов. Формат даты: yyyy-MM-dd HH:mm\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>add bar</color> <color=#D1CBCB>*айдиНовогоБара* *айдиЦелевогоБара*(опционально)</color> - Добавление новых настроек статус бара. Опционально можно указать айди исходного статус бара для копирования\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>update</color> <color=#D1CBCB>*датаВайпа* *новоеАйдиБара*</color> - Обновление ключа настроек статус бара для указанной даты вайпа. Используйте 'vanilla' вместо даты вайпа для выбора ванильного вайпа\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>clear</color> - Очистка всех кастомных дат вайпа\n\n--------------------------------------------------", "CmdMain": "Доступные команды:\n\n<color=#D1CBCB>/wipe</color> <color=#D1AB9A>bar</color> <color=#D1CBCB>*булевоеЗначение*</color>(опционально) - Переключение отображения вайп бара\n\n--------------------------------------------------", "CmdServerTime": "Текущее реальное серверное время: '{0}'", "CmdNewDateAdded": "Новая дата '{0}' успешно добавлена!", "CmdNewDateRangeAdded": "Список дат был успешно добавлен!", "CmdNewDateAddFailed": "Не верный формат или дата меньше текущей. Пример: '{0}'", "CmdUpdateFailed": "Не удалось добавить/обновить настройки статус бара для '{0}'!", "CmdClearDates": "Список дат был успешно очищен!", "CmdBarEnabled": "Отображение вайп бара включено!", "CmdBarDisabled": "Отображение вайп бара выключено!", "Bar_default": "ВАЙП ЧЕРЕЗ" } bar *booleanValue*(optional) - Toggle wipe bar visibility; time - Current time based on server's timezone. Permission "wipestatus.admin" required; add *wipeDate* *barID*(optional) *numberValue*(optional) *numberValue*(optional) - Add a custom wipe date. Optionally, you can specify the style of the status bar, interval/spacing between wipes, and the number of intervals. Date format: yyyy-MM-dd HH:mm. Permission "wipestatus.admin" required; add bar *wipeDate* *barID*(optional) *newBarId*(optional) *targetBarId*(optional) - Add new status bar settings. Optionally, specify the ID of an existing bar to copy from. Permission "wipestatus.admin" required; update *wipeDate* *newBarId* - Update the status bar settings key for the specified custom wipe date. Use 'vanilla' instead of a wipe date to select the vanilla wipe. Permission "wipestatus.admin" required; clear - Clear all custom wipe dates. Permission "wipestatus.admin" required. Example: /wipe add "2023-12-28 15:16" /wipe add bar "test" "_default" /wipe add "2024-07-16 19:00" "test" 7 20 - Starting from the date 2024-07-16 19:00, 7 days will be added 20 times, with "test" status bar style. /wipe update "vanilla" "test" /wipe update "2025-12-25 13:30" "test"$3.99 -
Version 0.1.7
1,008 downloads
The plugin displays the vehicle's fuel level in the status bar. Depends on AdvancedStatus plugin. The ability to display the vehicle's fuel level(gauge) in the status bar; The ability to notify when a low fuel level is reached; The ability to set a color for each percentage of fuel; The ability to specify mount poses for display; The ability to automatically generate language files for different languages(filled in English); The ability to specify the order of the bar; The ability to change the height of the bar; The ability to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder (*SERVER*\oxide\data\AdvancedStatus\Images); The ability to set own image and customize the color and transparency of the image; The ability to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. { "Is it worth enabling GameTips for messages?": true, "Is it worth using Notify plugins for messages instead of the vanilla UI?": false, "Specify the regular message type for notify": 0, "Specify the warning message type for notify": 1, "List of language keys for creating language files": [ "en" ], "Fuel stack size for fraction calculation. A value of 0 uses the actual stack size": 0, "Fuel indicator refresh interval in seconds": 5.0, "Notifications - The percentage(0.0 to 1.0) of fuel at which notifications will occur. A value of 0 disables this": 0.2, "Notifications - The effect that will be triggered upon a warning. Choose the effect carefully! An empty string disables the effect call": "assets/prefabs/locks/keypad/effects/lock.code.denied.prefab", "Status. Bar - Height": 26, "Status. Bar - Order": 1, "Status. Background - Color(Hex or RGBA)": "#FFFFFF", "Status. Background - Transparency": 0.15, "Status. Background - Material(empty to disable)": "", "Status. Image - Url": "https://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/FuelStatus_Fuel.png", "Status. Image - Local(Leave empty to use Image_Url)": "FuelStatus_Fuel", "Status. Image - Sprite(Leave empty to use Image_Local or Image_Url)": "", "Status. Image - Is raw image": false, "Status. Image - Color(Hex or RGBA)": "#E2DBD6", "Status. Image - Transparency": 0.55, "Status. Image Outline - Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Status. Image Outline - Transparency": 1.0, "Status. Image Outline - Distance(Leave empty to disable). Example '0.75 0.75'": "", "Status. Text - Size": 15, "Status. Text - Color(Hex or RGBA)": "#E2DBD6", "Status. Text - Transparency": 1.0, "Status. Text - Font(https://docs.oxidemod.com/guides/developers/basic-cui/basic-cui#fonts)": "RobotoCondensed-Bold.ttf", "Status. Text - Offset Horizontal": 7, "Status. Text Outline - Color(Hex or RGBA)": "#000000", "Status. Text Outline - Transparency": 1.0, "Status. Text Outline - Distance(Leave empty to disable)": "", "Status. Progress - Transparency": 0.8, "Status. Progress - OffsetMin": "25 2.5", "Status. Progress - OffsetMax": "-3.5 -3.5", "Status. Progress - Zero Text Size": 12, "Status. Progress - Zero Text Color(Hex or RGBA)": "#F70000", "List of mount poses for displaying fuel status": [ "Driving", "HandMotorBoat", "StandDrive", "SitMinicopter_Pilot", "Sit_Workcart", "Sit_Crane", "Driving_Snowmobile", "Sit_Locomotive", "Sit_DPV", "Sit_BatteringRam", "Steering_Boat" ], "List of Gauge Indicators": [ { "MinRange": 0.0, "MaxRange": 0.2, "Color(Hex or RGBA)": "#F70000" }, { "MinRange": 0.2, "MaxRange": 0.6, "Color(Hex or RGBA)": "#F7BB00" }, { "MinRange": 0.6, "MaxRange": 1.0, "Color(Hex or RGBA)": "#B1C06E" } ], "Version": { "Major": 0, "Minor": 1, "Patch": 7 } } The values of MaxRange and MinRange set the range of values over which the color applies. The values for MaxRange and MinRange must be between 0.0 and 1.0 (inclusive), where 0.0 equals 0%, and 1.0 equals 100%. The value of MaxRange must be equal to the value of MinRange of the previous. EN: { "MsgFuelLow": "Warning: Fuel level is low!", "BarProgressZero": "Out of fuel, refill required!" } RU: { "MsgFuelLow": "Внимание: уровень топлива низкий!", "BarProgressZero": "Нет топлива!" } Available mount poses(PlayerModel.MountPoses): public enum MountPoses { Chair = 0, Driving = 1, Horseback = 2, HeliUnarmed = 3, HeliArmed = 4, HandMotorBoat = 5, MotorBoatPassenger = 6, SitGeneric = 7, SitRaft = 8, StandDrive = 9, SitShootingGeneric = 10, SitMinicopter_Pilot = 11, SitMinicopter_Passenger = 12, ArcadeLeft = 13, ArcadeRight = 14, SitSummer_Ring = 15, SitSummer_BoogieBoard = 16, SitCarPassenger = 17, SitSummer_Chair = 18, SitRaft_NoPaddle = 19, Sit_SecretLab = 20, Sit_Workcart = 21, Sit_Cardgame = 22, Sit_Crane = 23, Sit_Snowmobile_Shooting = 24, Sit_RetroSnowmobile_Shooting = 25, Driving_Snowmobile = 26, ZiplineHold = 27, Sit_Locomotive = 28, Sit_Throne = 29, Parachute = 30, Sit_DPV = 31, Standing_Ballista = 32, Sit_BatteringRam = 33, VineSwinging = 34, Sit_Ejectorseat = 35, Sit_Beanbag = 36, Steering_Boat = 37, Standing = 128 }$3.99 -
Version 0.1.2
279 downloads
A useful plugin that displays the time until teleportation with the ability to automatically generate hooks. Depends on AdvancedStatus plugin. The ability to display status bars until teleportation; The ability to automatically generate code for teleport hooks; The ability to automatically generate language files for different languages(filled in English); The ability to customize the status bar for each teleport hook; The ability to choose between bar types(TimeCounter and TimeProgressCounter); The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. { "Is it worth generating teleport hooks? 0 - disabled, 1 - one-time activation, 2 - always enabled": 2, "List of language keys for creating language files": [ "en" ], "List of 'cancel' teleport commands": [ "tpc" ], "Limits the length of the displayed teleport name. A value of 0 disables the limitation": 10, "List of hooks for generation. Leave empty or null to recreate the default list": [ { "IsEnabled": true, "Hook method name": "OnTeleportAccepted", "Language key for the text": "BarTeleportToPlayer", "Specify the status bar Id used for this hook": "ToPlayer", "Is it worth sending the status bar for the target player?": true, "Language key for the text for the target player": "BarTeleportFromPlayer", "Specify the status bar Id used for the target player": "FromPlayer", "Specify all hook arguments(type and name) in order, separated by commas. Example: BasePlayer target, BasePlayer player, int countdown": "BasePlayer target, BasePlayer player, int countdown", "Indicates whether this hook represents a teleport cancelation event(e.g. OnTeleportInterrupted). Only InitiatorIndex is required": false, "Specify the index of the argument that contains the initiator": 1, "Specify the index of the argument that contains the target": 0, "Specify the argument index that contains the teleport countdown. Note: this index must not overlap with others, only int type is supported": 2 }, { "IsEnabled": true, "Hook method name": "OnHomeAccepted", "Language key for the text": "BarTeleportToHome", "Specify the status bar Id used for this hook": "Home", "Is it worth sending the status bar for the target player?": false, "Language key for the text for the target player": null, "Specify the status bar Id used for the target player": null, "Specify all hook arguments(type and name) in order, separated by commas. Example: BasePlayer target, BasePlayer player, int countdown": "BasePlayer player, string home, int countdown", "Indicates whether this hook represents a teleport cancelation event(e.g. OnTeleportInterrupted). Only InitiatorIndex is required": false, "Specify the index of the argument that contains the initiator": 0, "Specify the index of the argument that contains the target": 1, "Specify the argument index that contains the teleport countdown. Note: this index must not overlap with others, only int type is supported": 2 }, { "IsEnabled": true, "Hook method name": "OnHomeAccepted", "Language key for the text": "BarTeleportToHome", "Specify the status bar Id used for this hook": "Home", "Is it worth sending the status bar for the target player?": false, "Language key for the text for the target player": null, "Specify the status bar Id used for the target player": null, "Specify all hook arguments(type and name) in order, separated by commas. Example: BasePlayer target, BasePlayer player, int countdown": "BasePlayer player, string home, Vector3 pos, int countdown", "Indicates whether this hook represents a teleport cancelation event(e.g. OnTeleportInterrupted). Only InitiatorIndex is required": false, "Specify the index of the argument that contains the initiator": 0, "Specify the index of the argument that contains the target": 1, "Specify the argument index that contains the teleport countdown. Note: this index must not overlap with others, only int type is supported": 3 }, { "IsEnabled": true, "Hook method name": "OnTownAccepted", "Language key for the text": "BarTeleportToTown", "Specify the status bar Id used for this hook": "Town", "Is it worth sending the status bar for the target player?": false, "Language key for the text for the target player": null, "Specify the status bar Id used for the target player": null, "Specify all hook arguments(type and name) in order, separated by commas. Example: BasePlayer target, BasePlayer player, int countdown": "BasePlayer player, string name, int countdown", "Indicates whether this hook represents a teleport cancelation event(e.g. OnTeleportInterrupted). Only InitiatorIndex is required": false, "Specify the index of the argument that contains the initiator": 0, "Specify the index of the argument that contains the target": 1, "Specify the argument index that contains the teleport countdown. Note: this index must not overlap with others, only int type is supported": 2 }, { "IsEnabled": true, "Hook method name": "OnTeleportBackAccepted", "Language key for the text": "BarTeleportToBack", "Specify the status bar Id used for this hook": "Back", "Is it worth sending the status bar for the target player?": false, "Language key for the text for the target player": null, "Specify the status bar Id used for the target player": null, "Specify all hook arguments(type and name) in order, separated by commas. Example: BasePlayer target, BasePlayer player, int countdown": "BasePlayer player, Vector3 location, int countdown", "Indicates whether this hook represents a teleport cancelation event(e.g. OnTeleportInterrupted). Only InitiatorIndex is required": false, "Specify the index of the argument that contains the initiator": 0, "Specify the index of the argument that contains the target": 1, "Specify the argument index that contains the teleport countdown. Note: this index must not overlap with others, only int type is supported": 2 }, { "IsEnabled": true, "Hook method name": "OnWarpAccepted", "Language key for the text": "BarTeleportToWarp", "Specify the status bar Id used for this hook": "Warp", "Is it worth sending the status bar for the target player?": false, "Language key for the text for the target player": null, "Specify the status bar Id used for the target player": null, "Specify all hook arguments(type and name) in order, separated by commas. Example: BasePlayer target, BasePlayer player, int countdown": "BasePlayer player, Vector3 warpPosition, int countdown", "Indicates whether this hook represents a teleport cancelation event(e.g. OnTeleportInterrupted). Only InitiatorIndex is required": false, "Specify the index of the argument that contains the initiator": 0, "Specify the index of the argument that contains the target": 1, "Specify the argument index that contains the teleport countdown. Note: this index must not overlap with others, only int type is supported": 2 }, { "IsEnabled": true, "Hook method name": "OnTeleportInterrupted", "Language key for the text": "", "Specify the status bar Id used for this hook": "", "Is it worth sending the status bar for the target player?": false, "Language key for the text for the target player": null, "Specify the status bar Id used for the target player": null, "Specify all hook arguments(type and name) in order, separated by commas. Example: BasePlayer target, BasePlayer player, int countdown": "BasePlayer player", "Indicates whether this hook represents a teleport cancelation event(e.g. OnTeleportInterrupted). Only InitiatorIndex is required": true, "Specify the index of the argument that contains the initiator": 0, "Specify the index of the argument that contains the target": -1, "Specify the argument index that contains the teleport countdown. Note: this index must not overlap with others, only int type is supported": -1 } ], "List of status bar settings. The keys of these settings can be used for generated hooks. Leave empty or null to recreate the default list": { "ToPlayer": { "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 21, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://i.imgur.com/NuAl6T5.png", "Image_Local(Leave empty to use Image_Url)": "TeleportStatus_Player", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#15AC9D", "Image_Transparency": 1.0, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#15AC9D", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#15AC9D", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75", "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#009688", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" }, "FromPlayer": { "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 22, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://i.imgur.com/G3TrHoc.png", "Image_Local(Leave empty to use Image_Url)": "TeleportStatus_FromPlayer", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#E2DBD6", "Image_Transparency": 0.55, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#15AC9D", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 2, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#15AC9D", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75", "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#009688", "Progress_Transparency": 0.7, "Progress_OffsetMin": "25 0", "Progress_OffsetMax": "0 0" }, "Home": { "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 23, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://i.imgur.com/3xQmCKv.png", "Image_Local(Leave empty to use Image_Url)": "TeleportStatus_Home", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#E2DBD6", "Image_Transparency": 0.55, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#E2DBD6", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 2, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#E2DBD6", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75", "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#009688", "Progress_Transparency": 0.7, "Progress_OffsetMin": "25 2.5", "Progress_OffsetMax": "-3.5 -3.5" }, "Town": { "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 24, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://i.imgur.com/FswyqvJ.png", "Image_Local(Leave empty to use Image_Url)": "TeleportStatus_Town", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#E2DBD6", "Image_Transparency": 0.55, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#E2DBD6", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#E2DBD6", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75", "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#009688", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" }, "Back": { "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 25, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://i.imgur.com/I9B2joa.png", "Image_Local(Leave empty to use Image_Url)": "TeleportStatus_Back", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#E2DBD6", "Image_Transparency": 0.55, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#E2DBD6", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 2, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#E2DBD6", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75", "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#009688", "Progress_Transparency": 0.7, "Progress_OffsetMin": "25 0", "Progress_OffsetMax": "0 0" }, "Warp": { "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 26, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://i.imgur.com/sczcAdC.png", "Image_Local(Leave empty to use Image_Url)": "TeleportStatus_Warp", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#E2DBD6", "Image_Transparency": 0.55, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#E2DBD6", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#E2DBD6", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75", "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#009688", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" } }, "Version": { "Major": 0, "Minor": 1, "Patch": 2 } } EN: { "BarTeleportToPlayer": "Teleport to {0} in:", "BarTeleportFromPlayer": "{0} will be at you in:", "BarTeleportToHome": "Teleport to {0} in:", "BarTeleportToTown": "Teleport to {0} in:", "BarTeleportToBack": "Teleport to {0} in:", "BarTeleportToWarp": "Teleport to {0} in:" } RU: { "BarTeleportToPlayer": "Телепорт к {0} через:", "BarTeleportFromPlayer": "{0} будет у вас через:", "BarTeleportToHome": "Телепорт в {0} через:", "BarTeleportToTown": "Телепорт в {0} через:", "BarTeleportToBack": "Телепорт в {0} через:", "BarTeleportToWarp": "Телепорт в {0} через:" }$3.99 -
Version 1.0.2
348 downloads
The Pop Plugin is a powerful and flexible extension for Rust servers that provides players with a quick overview of the current server status. With a simple chat command, users can retrieve important information such as the number of online players, sleeping players and more. The plugin is characterized by its high level of customizability, allowing server administrators to design the appearance and content of the output according to their wishes. Das Pop Plugin ist die ideale Lösung für Serveradministratoren, die ihren Spielern einen schnellen und übersichtlichen Zugang zu Serverinformationen bieten möchten, ohne dabei auf Anpassungsmöglichkeiten oder Performance zu verzichten. Features: Easy access: Players can use the chat command /pop to call up server information at any time. Comprehensive information: Displays important server data, including: -> server name -> Number of online players -> Number of sleeping players -> Number of players joining -> Number of players in the queue -> List of names of all online players Highly configurable: Administrators can: -> Show or hide individual information components -> Customize colors for server name, labels and values Color coding: Improved readability through color highlighting of various information elements. Easy installation: Quick and uncomplicated integration into existing Rust servers. Lightweight: Minimal impact on server performance with maximum functionality. Permission: Keine Permission benötigt Config: { "Show Server Name": true, "Show Online Players Count": true, "Show Sleeping Players Count": true, "Show Joining Players Count": true, "Show Queued Players Count": true, "Show Online Player Names": true, "Server Name Color": "#ffed00", "Label Color": "#00BFFF", "Value Color": "#ffffff" } load, run, enjoy Support DiscordFree -
Version 0.1.4
439 downloads
The plugin that displays temporary permissions and groups in the status bar. Depends on AdvancedStatus plugin. The ability to display temporary and permanent permissions; The ability to display temporary and permanent groups; The ability to display temporary and permanent permissions from groups; The ability to automatically generate language files for different languages(filled in English); The ability to customize the bar for each permission and group; The ability to choose between bar types(TimeCounter and TimeProgressCounter); The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. { "Chat command": "pstatus", "Is it worth enabling GameTips for messages?": true, "List of language keys for creating language files": [ "en" ], "Is it worth clearing saved settings for permissions and groups upon detecting a wipe?": false, "Is it worth displaying the status bar only when players are in the safe zone or have building privilege?": false, "Default display mode for new permissions(Disabled, Temporary, UntilWipe, Permanent, All)": "Temporary, UntilWipe", "Default display mode for new groups(Disabled, Temporary, UntilWipe, Permanent, All)": "Temporary, UntilWipe", "Wipe ID": null, "Version": { "Major": 0, "Minor": 1, "Patch": 4 } } P.S. The default status bar configuration can be adjusted in *SERVER*\oxide\data\PermissionsStatus\BarsConfig.json under the key "_default". EN: { "CmdFailed": "The entered command is incorrect! Try '/{0} display'", "CmdDisplayEnabled": "Displaying the bar is enabled!", "CmdDisplayDisabled": "Displaying the bar is disabled!", "BarUntilWipe": "Until wipe", "BarPermanent": "Permanent" } RU: { "CmdFailed": "Введена не верная команда! Попробуйте '/{0} display'", "CmdDisplayEnabled": "Отображение бара включено!", "CmdDisplayDisabled": "Отображение бара выключено!", "BarUntilWipe": "До вайпа", "BarPermanent": "Постоянный" } The language file is generated during the plugin initialization process. Additionally, when creating a new permission or group, a key for it will be automatically added. Note: You can also specify in the configuration file the generation of language files for other languages besides en and ru. In the "\data\PermissionsStatus\" folder, there are three files: BarsConfig.json - stores status bar settings with their unique keys. GroupsConfig.json - contains settings for groups. PermissionsConfig.json - contains settings for permissions.$9.99 -
Version 1.3.5
690 downloads
This plugin provides a beautiful and convenient crafting panel for your server. Its design and mechanics are as similar as possible to the in-game Rust crafting panel. Add crafting of any custom items, commands, permissions and anything else you like. Features The design is ~90% similar to the design of Rust's in-game crafting panel. Support for any custom items and commands. Ability to unlock all DLC items in the in-game crafting menu. The plugin only registers permissions for items that you have specified to it. Thus, preventing the creation of a large number of permissions. Customizable sound effects, notifications in the status bar on the right, and text notifications in popular plugins. The plugin can take and give out items from inventory, game backpack and Backpacks plugin, depending on the fullness of any of them. Ability to add item variations (just look at the screenshots). Supports work with skill plugins. Supports work with economy plugins. The player can choose whether to craft or buy an item. Add items to favorites, built-in search, fully functional queue and more. Scrollbar support. Ability to use item crafting cooldown. *All the sections and items shown in the screenshots are an example of configuring the plugin. You will need to create sections yourself and add items there. Supported plugins: SkillTree - allows you to use bonuses such as: Craft_Speed, Craft_Refund, Craft_Duplicate. Also allows you to give bonuses when crafting and take away when crafting is canceled. Backpacks - plugin can take and give items in an additional backpack. ItemRetriever - plugin can take crafting ingredients from all containers that are connected to the player (including inventory, game backpack, Backpacks plugin, and any other plugin that uses ItemRetriever as Suppliers). Player DLC API - plugin allows you to check whether an item or skin belongs to a specific player. ZLevelsRemastered - allows you to use the craft speed bonus. Economics, ServerRewards, IQEconomic - these plugins are used to purchase items with the currency of these plugins. Notify, GUIAnnouncements, NCP - these plugins are used to display notifications. SimpleStatus, AdvancedStatus - these plugins are used to display notifications in the status bar at the bottom right of the screen. Permissions The plugin has immutable and generated permissions. The immutable ones include: craftingpanel._use – is responsible for opening the panel. If there is no permission, the panel will not open. craftingpanel._admin – give this permission only to administrators. It adds an additional "Give yourself" button to get items from the panel for free. This permission is also needed to use the givecraft command (about it below). craftingpanel._instant – all player crafts will be instant. craftingpanel._death – crafting queue will not be reset when the player dies. craftingpanel._disconnect – when a player leaves the server, the craft queue will not be reset. craftingpanel._economics – allows you to purchase items for the currency of the selected economy plugin. If the player does not have permission, the cost panel will still be displayed, but the player will not be able to make a purchase. craftingpanel._workbench - allows you to reduce crafting time by having a workbench of a higher level than necessary for crafting. craftingpanel._bonuses – allows the player to access the crafting bonuses from the "Crafting bonuses" section. craftingpanel._unlockdlc - if a player has this permission, he can craft all DLC items in the in-game crafting menu. If you revoke this permission, all DLC items will become unavailable again. craftingpanel._nocooldown - allows you to disable the cooldown of all items. The generated permissions are created by the plugin itself, here's how it works: craftingpanel.section.vehicles- this is permission for the "vehicles" section. craftingpanel.vehicles.minicopter - this is permission for the item "minicopter" in the "vehicles" section. craftingpanel.vehicles.snowmobile.tomaha - this is permission for the item "snowmobile" in the "vehicles" section and in "tomaha" variation. Commands givecraft steamid/nickname section item 5 skin steamid/nickname – steamid or nickname of your choice. section – section name from the Section permission [required] field. item – item name from the Item permission [required] field. 5 – how much of the current item to give out (craft multiplier). skin - name of the item from the Ingredients section, Item permission [required] fields. All arguments of this command are required. If your item has an empty "Variations" section or you want a default item, specify "default" in place of skin. resetcooldowns steamid/nickname section item - resets the cooldown of a specific item from a specific player. resetcooldowns steamid/nickname - resets the cooldown of all items from a specific player. resetcooldowns all section item - resets the cooldown of a specific item for all players resetcooldowns all - resets the cooldown of all items from all players steamid/nickname – steamid or nickname of your choice. section – section name from the Section permission [required] field. item – item name from the Item permission [required] field. General settings Allow panel scaling when the interface is scaled? - if this setting is enabled, the craft panel will be resized depending on the game interface scale (setting "user interface scale"). If the setting is disabled, the panel will always be the same size, regardless of the player interface scale. Remember the last selected section and item? - plugin will remember the last selected section, item and variation the next time the panel is opened by the player. Enable multilingual mode? – if your server has players from different countries, this mode allows you to customize translation for other languages. When you enable this mode, the plugin will write all the data that needs to be translated to the lang - file. These include: section names, item names, item descriptions, item properties, item variation names, and ingredient names. The lang - file consists of a pair: key - value. The key is a unique name, with the help of which the plugin understands what phrase to use. Section translation: section.*section permission* – key template for section name translation. For example: "section.favorite": "Favorite" – Favorite section. Translation of item information: *section permission*.*item permission*.name – key template for item name translation. For example: "sunburn.innertube.name": "Inner Tube" – item name. *section permission*.*item permission*.description – key template for item description translation. For example: "sunburn.innertube.description": " Inflatable lap for water fun." – item description. *section permission*.*item permission*.properties – key template for item properties translation. For example: "sunburn.innertube.properties ": "Any properties ..." – item properties. *section permission*.*item permission*.variations.*variation permission* – key template for variation name translation. For example: "sunburn.innertube.variations.zebra": "ZEBRA" – variation name. Translation of ingredient names: *ingredient shortname *.*ingredient skinId* - key template for ingredient name translation. For example: "wood.0": "Wood" – ingredient name. Use the PlayerDLCAPI plugin to check whether items and skins belong to the player? – The plugin will check each item and skin in the panel for belonging to the player (i.e. whether they are in his Steam inventory). Allow work with the Backpacks plugin? – plugin can take and give items in an additional backpack (Backpacks by WhiteThunder). Allow work with the ItemRetriever plugin? – this plugin provides advanced functionality for interacting with player containers: If the ItemRetriever plugin is enabled, the CraftingPanel will take crafting ingredients from all containers that are connected to the player (including inventory, game backpack, Backpacks plugin, and any other plugin that uses ItemRetriever as Suppliers). If the ItemRetriever plugin is disabled, the CraftingPanel will take items with the next priority (if the item is not found, it goes to the next container): Backpacks plugin (if enabled) -> game backpack -> inventory. The CraftingPanel plugin is fully in charge of giving out items (since ItemRetriever only allows you to take items from the player), it gives out items with the next priority (if the container is full, it moves on to the next one): inventory -> game backpack -> Backpacks plugin (if enabled) -> drop item. Reset cooldown on crafting items for all players during the wipe? - the plugin will reset all cooldowns when the server is wiped. Delete player data from the Data file if they have not logged into the server for so many days – this setting is added to prevent the plugin from keeping in memory the settings of all players who have ever visited your server. Effect at the start/end/canceling – game effects that will be played at the start of crafting/completion of crafting/cancellation of crafting (effects list, plugin for playing effects). Specify a plugin to work with the economy – specify one plugin from the list or leave the field empty to disable work with economy. Crafting bonuses This section allows you to customize crafting bonuses when using one of the supported plugins. Each of these plugins has its own settings. Amount of experience will depend on crafting time? – if this setting is disabled, then the given/taken experience will be the same (which are specified in the settings above). If this setting is enabled, the experience will be calculated using the following formula: calculated experience = crafting time * experience from the settings above. It should be taken into account that to calculate the experience for a crafted item, the full crafting time is taken (which is specified in the item's setting), and to calculate the experience for crafting cancellation, the time left to create the item is taken. The ZLevelsRemastered plugin does not have a full-fledged api for interaction with crafting bonuses, so the work with it is not fully implemented (no rewards are given in economy plugins, permission of this plugin is not taken into account, etc.). Notification settings Notification type (Chat, GameTips, Notify, GUIAnnouncements) – if this section is enabled, you must specify the type/plugin to notify the player of different warnings. Chat – notification to regular chat. GameTips – notification in the in-game Rust tooltips (blue or red at the bottom of the screen). Notify – notification in the Notify plugin by Mevent. GUIAnnouncements – notification in the GUIAnnouncements plugin by JoeSheep. Just below that are the customization fields for the specific type of notification. Game Status Settings Game status is a notification that is shown at the bottom right of the screen (like in-game crafting). The plugin can show 3 types of game status: Current craft – it's the blue panel with the gear. It is displayed while the crafting process is in progress. Giving item – it's the green panel with the down arrow. It is displayed when a player is given a craft item. Dropping item – it's the red panel with the cross. It is displayed when the items given by the plugin do not fit in the inventory and drop out near the player. Crafting Panel working with Rust's in-game status and two plugins (SimpleStatus, AdvancedStatus) that have slightly advanced features. Rust – is the in-game status built into the game. It does not require any additional plugins, but it cannot show the Current craft (blue panel with a gear). SimpleStatus – this plugin displays customizable statuses. It can show Current craft and Giving item. But cannot display Dropping item due to limitations in its operation. AdvancedStatus - this plugin displays customizable statuses. It works with all of the above status types. Section settings Section name – the displayed section name on the menu button. Section permission [required] – be sure to fill in these fields and make sure they are all unique. Because it is by this field that the plugin understands which section it is currently working with. If you specify "favorite" here, the plugin will use this section to display the player's favorite items (don't add items to it, the plugin will delete them anyway). Register this permission? – if enabled, the plugin will register a permission with the above name. In this case this section will be shown only to those players who have this permission. Section item settings Item name [required] – required field. The name of the item is displayed only in this plugin. If you need to create an item with the same name, you will find this setting below. Item permission [required] – required field. Make sure that each item in the section has a unique field. Because by this field the plugin understands which item in the current section it is currently working with. Register this permission? - if enabled, the plugin will register permission with the above name. Keep in mind that the current item will still be shown to all players, but they will not be able to craft it (this is also notified by the icon on the top left of the information section). Item description – item description, is not passed to the item when crafting, only displayed in the panel of this plugin. Item properties – if the item has some characteristics (e.g., damage, radiation protection, etc.) you can specify them here. This data is displayed in a separate panel in the information section of the item. Item shortname – if you are using the command as a craft result, leave this field empty. Check this item with the PlayerDLCAPI plugin? - this setting disables the verification of the item by the Player DLC API plugin. Create an item with the default name (true) or the above name (false)? – if true, the plugin will create an item with the default game name (which refers to the current shortname), otherwise it will set the name from the Item name field. Item skinId – if the item is custom, specify the required skinId, otherwise set it to 0. Item image [optional] – if as a result of craft, you have to execute some command, you can specify a link to a picture related to this command. Console commands executed after crafting (%steamid%, %username%, %amount%) [optional] – if you need to execute some commands as a result of crafting, you can list them with commas in this field. In the command you can specify %steamid% and %username%, the plugin will replace them with the data of the current player. The plugin can also replace %amount% with the amount per craft (next setting). If the command gives some custom game item and you know its shortname and skinid you can specify them in the fields above. This way you don't need to additionally save the image of this item to the hosting and specify its link. Amount per craft – number of items given out per craft. Max craft multiplier - maximum allowable craft multiplier. The craft multiplier (selected by the player in the Ingredients section) is how many times an item will be dispensed or how many times commands will be executed. If Amount per craft = 3, and the player chose multiplier = 2, he will receive 2 * 3 = 6 items. Crafting time [sec] – time to craft the item. It can be set to 0, then the item will be crafted instantly. Show notification in game status (if they are enabled)? – if a command from another plugin is used to give a custom item and that plugin displays game status, duplication of game statuses may occur. Therefore, it is possible to disable the display of game status for a particular item. Keep in mind that this only disables the Giving item status. Apply craft bonuses (if they are enabled)? – allows you to apply craft bonuses (from the "Crafting bonuses" section) to this item. Crafting cost in the economy plugin [0 - disable] – the value of the current item in your economy server currency. The customization works if you specified one of the supported economy plugins at the beginning. Item Variation settings In the in-game Rust crafting panel this section is called Skins, here it is called Variations. This is done because here it can include not only skins, but any items or commands related to the parent item. For example, you have several modular car presets, with different types of modules, but they are all related to modular cars. Therefore, you can specify them in one item - "Modular car". The settings in this section are similar to the parent item, except for the crafting ingredients. They will be the same as the parent item. Item Ingredient settings Resource name [required] – required field. Is used to display the name of the ingredient in the plugin panel (it is not taken into account when taking ingredients from the player). When canceling the craft, the plugin can set this ingredient to the specified name, you will find this setting below. Use this resource in ingredients? – enables or disables this resource for use in ingredients. Resource shortname [required] – required field. Shortname of the item that the plugin will look for from the player for crafting. Resource skinId – if it's a custom item, give its skinId, otherwise set it to 0. Return an item with the default name (true) or the above name (false)? – when the craft is canceled, if true, the plugin will create an ingredient with the default game name (which refers to the current shortname), otherwise it will set the name from the Resource name field. Plugin Config Example of plugin configuration in English: Example of plugin configuration in Russian. If you need Russian config, open it (CraftingPanel.cs) before loading the plugin, and at the top set the variable "isRus = true". Then save and upload this file to your server$30.00- 146 comments
- 2 reviews
-
- 8
-
-
-
- #craft
- #craft menu
- (and 17 more)
-
Version 0.1.6
91 downloads
Adds a reputation system, similar to the well-known Infestation Survivor Stories(The WarZ). More information on how the plugin works can be found at the bottom in the "Principle of work" section. The ability to create an unlimited number of reputations. The only condition is that their value ranges must not overlap; The ability to flexibly customize the bar for each reputation; The ability to automatically reset reputations upon detecting a wipe; The ability to set a prefix for reputations; The ability to show your reputation by waving to players; The ability to see a player's reputation when aiming at them with scope items. Unfortunately, the reputation will also be displayed if a player is in certain bushes; The ability to see the reputation of all players in the bandit zone; The ability to prohibit players with a certain reputation from entering safe zones (except for the bandit zone). Also, notifying players about it; The ability to set fake reputations to confuse players. reputationmaster.vip - Provides the ability to set a fake rank value. reputationmaster.admin - Provides the ability to set or reset reputation value to other players. { "Chat command": "rep", "Is it worth enabling GameTips for messages?": true, "Is it worth using the AdvancedStatus plugin?": true, "List of language keys for creating language files": [ "en" ], "Is it worth using ddraw to display reputation? NOTE: To use, an administrator flag is required, which is granted before rendering and revoked immediately after issuing the command": true, "Is it worth displaying reputation when aiming at a player with a scope(ddraw should be enabled)? NOTE: The player's reputation may be displayed in certain bushes": true, "Is it worth resetting reputations upon detecting a wipe?": true, "Is it worth forbidding bandits from visiting safe zones(except for Banditcamp)?": true, "The time in seconds during which a bandit can stay in the safe zone(except for Banditcamp) before being killed, making their loot available to everyone": 10.0, "The prefab name for the effect when a bandit is killed in the safe zone. An empty string disables the effect": "assets/prefabs/misc/xmas/advent_calendar/effects/open_advent.prefab", "Assigning reputation for NPCs(Disabled, ForVanilla, ForAll)": "ForAll", "Minimum random reputation value for NPCs": -1000.0, "Maximum random reputation value for NPCs": 1000.0, "Is it worth enabling self-defense for NPCs?": false, "The time in seconds during which self-defense will be active for a lawman after being attacked by another lawman": 900, "The minimum value limit for fake reputation": -10000.0, "The maximum value limit for fake reputation": 10000.0, "UI. Position - Left to Right": true, "UI. Position - AnchorMin": "1 0.9", "UI. Position - AnchorMax": "1 0.9", "UI. Position - OffsetMin": "-208 -15", "UI. Position - OffsetMax": "-16 15", "UI. Reputation Positive Value Image - URL": "https://gitlab.com/IIIaKa/images/-/raw/main/ReputationMaster/ReputationMaster_Positive.png", "UI. Reputation Negative Value Image - URL": "https://gitlab.com/IIIaKa/images/-/raw/main/ReputationMaster/ReputationMaster_Negative.png", "UI. Added Value Sound - Prefab Name. An empty string disables the effect": "assets/bundled/prefabs/fx/notice/item.select.fx.prefab", "Wipe ID": null, "Version": { "Major": 0, "Minor": 1, "Patch": 6 } } Note: To use ddraw, an administrator flag is required, which is granted before rendering and revoked immediately after issuing the command. The player's reputation may be displayed in certain bushes. [ { "Name": "Assassin", "Prefix": "⁎✧⁎ ", "MinValue": -3.40282347E+38, "MaxValue": -1000.0, "Reward": 20.0, "LawmanPenalty": 0.0, "AllowSafeZone": false, "BarSettings": { "Text_Transparency": 1.0, "SubText_Transparency": 1.0, "Order": 20, "Height": 26, "Main_Color(Hex or RGBA)": "#FF341E", "Main_Transparency": 0.6, "Main_Material": "", "Image_Url": "https://gitlab.com/IIIaKa/images/-/raw/main/ReputationMaster/ReputationMaster_Assassin.png", "Image_Local(Leave empty to use Image_Url)": "ReputationMaster_Assassin", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#FF341E", "Image_Transparency": 1.0, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 0.0, "Image_Outline_Distance(Leave empty to disable). Example '0.75 0.75'": null, "Text_Size": 14, "Text_Color(Hex or RGBA)": "#FF341E", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance(Leave empty to disable)": null, "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#FF341E", "SubText_Font": "RobotoCondensed-Bold.ttf", "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 0.0, "SubText_Outline_Distance(Leave empty to disable)": null } }, ... { "Name": "Civilian", "Prefix": "", "MinValue": -4.99, "MaxValue": 9.99, "Reward": 1.0, "LawmanPenalty": -1.0, "AllowSafeZone": true, "BarSettings": { "Text_Transparency": 1.0, "SubText_Transparency": 1.0, "Order": 20, "Height": 26, "Main_Color(Hex or RGBA)": "#5EC0CA", "Main_Transparency": 0.6, "Main_Material": "", "Image_Url": "https://gitlab.com/IIIaKa/images/-/raw/main/ReputationMaster/ReputationMaster_Civilian.png", "Image_Local(Leave empty to use Image_Url)": "ReputationMaster_Civilian", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#5EC0CA", "Image_Transparency": 1.0, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 0.0, "Image_Outline_Distance(Leave empty to disable). Example '0.75 0.75'": null, "Text_Size": 14, "Text_Color(Hex or RGBA)": "#5EC0CA", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance(Leave empty to disable)": null, "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#5EC0CA", "SubText_Font": "RobotoCondensed-Bold.ttf", "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 0.0, "SubText_Outline_Distance(Leave empty to disable)": null } }, ... { "Name": "Paragon", "Prefix": "⋆☆⋆ ", "MinValue": 1000.0, "MaxValue": 3.40282347E+38, "Reward": 20.0, "LawmanPenalty": -125.0, "AllowSafeZone": true, "BarSettings": { "Text_Transparency": 1.0, "SubText_Transparency": 1.0, "Order": 20, "Height": 26, "Main_Color(Hex or RGBA)": "#0AFBFB", "Main_Transparency": 0.6, "Main_Material": "", "Image_Url": "https://gitlab.com/IIIaKa/images/-/raw/main/ReputationMaster/ReputationMaster_Paragon.png", "Image_Local(Leave empty to use Image_Url)": "ReputationMaster_Paragon", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#0AFBFB", "Image_Transparency": 1.0, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 0.0, "Image_Outline_Distance(Leave empty to disable). Example '0.75 0.75'": null, "Text_Size": 14, "Text_Color(Hex or RGBA)": "#0AFBFB", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance(Leave empty to disable)": null, "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#0AFBFB", "SubText_Font": "RobotoCondensed-Bold.ttf", "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 0.0, "SubText_Outline_Distance(Leave empty to disable)": null } } ] MinRange, MaxRange - Range of values for the group rank; Name - Name of the rank; Reward - Reward for killing or reviving(divided by 2) a player in this rank. If the initiating player has IsLawman = true, the value will be positive, otherwise, it will be negative; LawmanPenalty - Penalty for a peaceful player of this rank, for killing another peaceful player. If the target did not initiate this pvp first; AllowSafeZone - Is this rank allowed to visit Safe Zones (except Bandit Camp)? The "Forbid bandits from visiting the SafeZone (except for Banditcamp)" config should be set to true. Path: *SERVER*\oxide\data\ReputationMaster\ReputationRanks.json EN: { "CmdNotAllowed": "You do not have permissions to use this command!", "CmdPlayerNotFound": "Player '{0}' not found! You must provide the player's name or Id.", "CmdNpcNotFound": "Npc '{0}' not found or has an invalid entity type! You must provide the npc's network Id.", "CmdEntityNotFound": "Entity not found! Try getting closer to the entity.", "CmdMultiplePlayers": "Multiple players found: {0}", "CmdAdmin": "Available admin commands:\n\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>netId</color> - Get the netId of the entity you are looking at.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>set *floatValue* *nameOrId*</color> - Set reputation for the specified player.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>set *floatValue* self</color> - Set reputation for yourself.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>set *floatValue* npc *netId* force(optional)</color> - Set reputation for the specified npc. The last argument controls forced assignment.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>fake *floatValue* *nameOrId*</color> - Set fake reputation for the specified player.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>fake *floatValue* self</color> - Set fake reputation for yourself.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>fake *floatValue* npc *netId* force(optional)</color> - Set fake reputation for the specified npc. The last argument controls forced assignment.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>info *nameOrId*</color> - Show full reputation information for the specified player.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>info self</color> - Show full reputation information for yourself.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>reset *nameOrId*</color> - Reset reputation for the specified player.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>reset self</color> - Reset your reputation.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>reset all</color> - Reset reputation for all players.\n\n--------------------------------------------------", "CmdMain": "Available commands:\n\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>fake *floatValue*</color> - Set fake reputation for yourself.\n\n--------------------------------------------------", "CmdSetNpcFailed": "Failed to set reputation for npc '{0}'! Try adding the 'force' argument for forced assignment.", "CmdSetNpc": "Npc '{0}' has received a new reputation value: {1}({2})!", "CmdSetPlayer": "Player '{0}' has received a new reputation value: {1}({2})!", "CmdFakeNpcFailed": "Failed to set fake reputation for npc '{0}'! Try adding the 'force' argument for forced assignment.", "CmdFakeNpc": "Npc '{0}' has received a new fake reputation value: {1}({2})!", "CmdFakeSelf": "A new fake reputation value has been successfully set: {0}({1})!", "CmdFakePlayer": "Player '{0}' has received a new fake reputation value: {1}({2})!", "CmdNetId": "The NetID of the entity you are looking at: '{0}'({1}).", "CmdInfoPlayer": "Player '{0}' reputation:\n<color=#D1AB9A>Reputation:</color> {1} ({2})\n<color=#D1AB9A>Fake Reputation:</color> {3} ({4})\n<color=#D1AB9A>Last Helper:</color> {5}\n\n--------------------------------------------------", "CmdInfoNPC": "NPC '{0}' reputation:\n<color=#D1AB9A>Reputation:</color> {1}({2})\n<color=#D1AB9A>Fake Reputation:</color> {3}({4})\n<color=#D1AB9A>Last Helper:</color> {5}\n\n--------------------------------------------------", "CmdResetTarget": "{0}'s reputation has been successfully reset!", "CmdResetSelf": "Your reputation has been successfully reset!", "CmdResetAll": "{0} reputations have been successfully reset!", "MsgReputation": "Reputation", "MsgShowPlayerReputation": "Player '{0}' reputation: {1}({2})", "MsgNewReputation": "Congratulations! You have received the reputation '{0}'!", "MsgSelfDefense": "You attacked a peaceful player '{0}'({1}) first. If they kill you within {2} minutes, they will not receive a penalty", "MsgSelfDefenseNoPenalty": "You killed a peaceful player '{0}'({1}). However, since they attacked you first, you will not be penalized", "MsgLawmanEnterBanditZone": "You have entered the Bandit Camp! Stay vigilant, this place is full of thugs!", "MsgLawmanLeaveBanditZone": "You have left the Bandit Camp! We recommend avoiding this area!", "MsgBanditEnterBanditZone": "Welcome to the Bandit Camp! We are glad to have you back!", "MsgBanditLeaveBanditZone": "You have left the Bandit Camp! We hope to see you again soon!", "MsgBanditEnterSafeZone": "You are not welcome here! If you do not leave this place, you will be killed in {0} seconds!", "MsgBanditLeaveSafeZone": "Do not come back here! People like you belong in the Bandit Camp!" } RU: { "CmdNotAllowed": "У вас недостаточно прав для использования этой команды!", "CmdPlayerNotFound": "Игрок '{0}' не найден! Вы должны указать имя или ID игрока.", "CmdNpcNotFound": "Нпц '{0}' не найден, либо не верный тип сущности! Вы должны указать Id нпц.", "CmdEntityNotFound": "Сущность не найдена! Попробуйте подойти ближе к объекту.", "CmdMultiplePlayers": "Найдено несколько игроков: {0}", "CmdAdmin": "Доступные админ команды:\n\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>netId</color> - Получить netId сущности, на которую вы смотрите.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>set *дробноеЗначение* *имяИлиАйди*</color> - Установить репутацию указанному игроку.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>set *дробноеЗначение* self</color> - Установить репутацию себе.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>set *дробноеЗначение* npc *netId* force(опционально)</color> - Установить репутацию указанному npc. Последний аргумент принудительно задаёт значение.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>fake *дробноеЗначение* *имяИлиАйди*</color> - Установить ложную репутацию указанному игроку.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>fake *дробноеЗначение* self</color> - Установить себе ложную репутацию.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>fake *дробноеЗначение* npc *netId* force(опционально)</color> - Установить ложную репутацию указанному npc. Последний аргумент принудительно задаёт значение.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>info *имяИлиАйди*</color> - Показать полную информацию о репутации указанного игрока.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>info self</color> - Показать полную информацию о своей репутации.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>reset *имяИлиАйди*</color> - Сбросить репутацию указанному игроку.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>reset self</color> - Сбросить свою репутацию.\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>reset all</color> - Сбросить репутацию всем игрокам.\n\n--------------------------------------------------", "CmdMain": "Доступные команды:\n\n<color=#D1CBCB>/rep</color> <color=#D1AB9A>fake *дробноеЗначение*</color> - Установить себе ложную репутацию.\n\n--------------------------------------------------", "CmdSetNpcFailed": "Не удалось установить репутацию нпц '{0}'! Попробуйте добавить аргумент 'force' для принудительной установки.", "CmdSetNpc": "Нпц '{0}' получил новое значение репутации: {1}({2})!", "CmdSetPlayer": "Игрок '{0}' получил новое значение репутации: {1}({2})!", "CmdFakeNpcFailed": "Не удалось установить ложную репутацию нпц '{0}'! Попробуйте добавить аргумент 'force' для принудительной установки.", "CmdFakeNpc": "Нпц '{0}' получил новое значение ложной репутации: {1}({2})!", "CmdFakeSelf": "Новое значение ложной репутации успешно установлено: {0}({1})!", "CmdFakePlayer": "Игрок '{0}' получил новое значение ложной репутации: {1}({2})!", "CmdNetId": "NetID сущности, на которую вы смотрите: '{0}'({1}).", "CmdInfoPlayer": "Репутация игрока '{0}':\n<color=#D1AB9A>Репутация:</color> {1}({2})\n<color=#D1AB9A>Ложная репутация:</color> {3}({4})\n<color=#D1AB9A>Последний помощник:</color> {5}\n\n--------------------------------------------------", "CmdInfoNPC": "Репутация нпц '{0}':\n<color=#D1AB9A>Репутация:</color> {1}({2})\n<color=#D1AB9A>Ложная репутация:</color> {3}({4})\n<color=#D1AB9A>Последний помощник:</color> {5}\n\n--------------------------------------------------", "CmdResetTarget": "Репутация '{0}' успешно сброшена!", "CmdResetSelf": "Ваша репутация успешно сброшена!", "CmdResetAll": "Успешно сброшено {0} репутаций!", "MsgReputation": "Репутация", "MsgShowPlayerReputation": "Репутация игрока '{0}': {1}({2})", "MsgNewReputation": "Поздравляем! Вы получили репутацию '{0}'!", "MsgSelfDefense": "Вы первым атаковали мирного игрока '{0}'({1}). Если он вас убьет в течении {2} минут, то не получит штрафа", "MsgSelfDefenseNoPenalty": "Вы убили мирного игрока '{0}'({1}). Но так как он первым вас атаковал, вас не накажут", "MsgLawmanEnterBanditZone": "Вы пришли в Лагерь Бандитов! Будьте бдительны, здесь полно разных отморозков!", "MsgLawmanLeaveBanditZone": "Вы покинули Лагерь Бандитов! Советуем обходить это место!", "MsgBanditEnterBanditZone": "Добро пожаловать в Лагерь Бандитов! Мы рады вашему возвращению!", "MsgBanditLeaveBanditZone": "Вы покинули Лагерь Бандитов! Надеемся на скорое ваше возвращение!", "MsgBanditEnterSafeZone": "Вам здесь не рады! Если вы не покинете это место, то вас убьет через {0} секунд!", "MsgBanditLeaveSafeZone": "Больше сюда не возвращайтесь! Таким как вы место в Лагере Бандитов!" } fake *floatValue* - Set a fake reputation. Permission "reputationmaster.vip" required; netId - Get the netId of the entity you are looking at. Permission "reputationmaster.admin" required; set *floatValue* *nameOrId* - Set reputation for the specified player. Permission "reputationmaster.admin" required; set *floatValue* self - Set reputation for yourself. Permission "reputationmaster.admin" required; set *floatValue* npc *netId* force(optional) - Set reputation for the specified npc. The last argument controls forced assignment. Permission "reputationmaster.admin" required; fake *floatValue* *nameOrId* - Set fake reputation for the specified player. Permission "reputationmaster.admin" required; fake *floatValue* self - Set fake reputation for yourself. Permission "reputationmaster.admin" required; fake *floatValue* npc *netId* force(optional) - Set fake reputation for the specified npc. The last argument controls forced assignment. Permission "reputationmaster.admin" required; info *nameOrId* - Show full reputation information for the specified player. Permission "reputationmaster.admin" required; info self - Show full reputation information for yourself. Permission "reputationmaster.admin" required; reset *nameOrId* - Reset reputation for the specified player. Permission "reputationmaster.admin" required; reset self - Reset your reputation. Permission "reputationmaster.admin" required; reset all - Reset reputation for all players. Permission "reputationmaster.admin" required. Example: /rep fake 150 /rep fake -40 iiiaka /rep set 23 iiiaka /rep set npc 64 4032 ReputationValueUpdated: Called after the player's reputation value has changed. Works only for players that are not NPCs. void ReputationValueUpdated(ulong userID, string repName, float repValue) { Puts($"{userID} updated a reputation value to {repValue}. Current reputation rank is {repName}."); } ReputationUpdated: Called after the player receives a new reputation rank. Works only for players that are not NPCs. void ReputationUpdated(ulong userID, string oldRep, string newRep, bool isLawman, bool allowSafeZone, float repValue) { Puts($"{userID} has updated their rank from {oldRep} to {newRep}. Is peaceful: {isLawman}\nSafe Zones: {allowSafeZone}\nReputation Value: {repValue}"); } [PluginReference] private Plugin ReputationMaster; There are 4 api methods: GetReputationValue: Used to retrieve the reputation value, real or fake. Returns null on failure. To call the GetReputationValue method, you need to pass 2 parameters: userID as a ulong; realRep as a bool. What reputation value to get, real or fake? This parameter is optional. (float)(ReputationMaster?.Call("GetReputationValue", player.userID, true) ?? 0f); GetReputationName: Used to retrieve the reputation name, real or fake. Returns an empty string on failure. To call the GetReputationName method, you need to pass 2 parameters: userID as a ulong; realRep as a bool. What reputation name to get, real or fake? This parameter is optional. (string)(ReputationMaster?.Call("GetReputationName", player.userID, true) ?? string.Empty); SetReputationValue: Used to retrieve the reputation name, real or fake. Returns a false on failure. To call the SetReputationValue method, you need to pass 3 parameters: Available options: userID as a ulong or a string; player as a BasePlayer. newValue as float; realRep as a bool. What reputation value to get, real or fake? This parameter is optional. (bool)(ReputationMaster?.Call("SetReputationValue", player.UserIDString, 150f, true) ?? false);//(string)userID (bool)(ReputationMaster?.Call("SetReputationValue", player.userID, 150f, true) ?? false);//(ulong)userID (bool)(ReputationMaster?.Call("SetReputationValue", player, 150f, true) ?? false);//(BasePlayer)player ***recommended option*** SetReputationValues: Used to retrieve the reputation name, real or fake. Returns a false on failure. To call the SetReputationValues method, you need to pass 3 parameters: Available options: userID as a ulong or a string; player as a BasePlayer. value as float; fakeValue as a float. (bool)(ReputationMaster?.Call("SetReputationValues", player.UserIDString, 150f, 50f) ?? false);//(string)userID (bool)(ReputationMaster?.Call("SetReputationValues", player.userID, 150f, 50f) ?? false);//(ulong)userID (bool)(ReputationMaster?.Call("SetReputationValues", player, 150f, 50f) ?? false);//(BasePlayer)player ***recommended option*** You can create as many reputation ranks as you want, but there are only two main groups: Lawmen(peaceful or civilians); Outlaws(bandits). Each kill has a different scores depending of the reputation rank of the victim and attacker. For exampe, if you are a Civilian, you will receive: Paragon: -20 Vigilant: -15 Guardian: -10 Lawman: -4 Deputy: -3 Constable: -2 Civillian: -1 Thug: +2 Outlaw: +3 Bandit: +4 Hitman: +10 Villain: +15 Assassin: +20 Reviving: For reviving a player, you will receive a reward divided by 2. If the target is a lawman, the reward will be positive, else if a target is a bandit, it will be negative. Also, this is the only way out of bandit rank for bandits. Outlaw: When you reach the outlaw reputation, you have no more back! Except for reviving a peaceful player. You can kill other bandits but still counting as negative reputation! So, after you reach the outlaw reputation rank, scores by killing a player of a certain reputation will be as follows(negative reward value) : Paragon: -20 Vigilant: -15 Guardian: -10 Lawman: -4 Deputy: -3 Constable: -2 Civillian: -1 Thug: -2 Outlaw: -3 Bandit: -4 Hitman: -10 Villain: -15 Assassin: -20 Lawman: The scores will be as follows for each kill a outlaw reputation ranks(positive reward value) : Assassin: +20 Villain: +15 Hitman: +10 Bandit: +4 Outlaw: +3 Thug: +2 But for killing a peaceful player, you will receive penalties based on your rank. A list of penalties for each reputation rank: Paragon: -125 Vigilante: -60 Guardian: -40 Lawman: -15 Deputy: -2 Constable: -1 Civilian: -1 There is also a self-defense system that works as follows: If a peaceful player initiates an attack on another peaceful player, a timer of 15 minutes(sets from config) is activated, during which the victim can kill the attacker without penalties. So, it's very hard to become a lawman, and it's very easy to get out from lawman.$4.99- 6 comments
-
- 1
-
-
- #rust
- #reputation
- (and 25 more)
-
Version 1.3.4
773 downloads
What kind of survival game doesn't let you break your leg? With this plugin, players can sustain injuries and become infected with diseases. Currently there are 6 status conditions, each fully customizable through the plugin's configuration file. Status Conditions /inflict <player> concussion /cure <player> concussion Periodically blurs the player's vision. Chance to occur when a player is headshot. More likely to occur with more powerful weapons. /inflict <player> foodpoisoning /cure <player> foodpoisoning Forces the player to vomit occasionally which damages their food and thirst levels. Caused by eating spoiled meat. Can be cured by drinking healing tea. /inflict <player> brokenleg /cure <player> brokenleg Prevents sprinting and causes damage when moving. Can happen when taking fall damage, chance increases the greater the height. Can also occur when being shot in the leg, this is more likely to happen the more powerful the weapon is. /inflict <player> rabies /cure <player> rabies Periodically deals damage to the victim and flashes their screen red. Can be rarely contracted from the bites of wild animals. There is no cure, it's best to put the victim out of their misery. /inflict <player> tapeworm /cure <player> tapeworm The effect of food and water consumption is greatly reduced. Can occur from consuming raw or uncooked meat. Easily treatable with anti-biotics (anti-rad pills). /inflict <player> z13virus /cure <player> z13virus Not much is known about this disease, however it is often mistaken for rabies. Something terrible occurs when the victim dies... Seems to occur when a player is bitten by a zombie (scarecrow). Customization Each status condition has properties that can be customized through the plugin config. Here is a quick description of each of the properties. Enabled - Set to false to disable this condition. Likeliness - The chance (0 - 1.0) of this condition occurring through any means. For some conditions, like concussion or broken leg, this will be the MINIMUM chance for this to occur, and it will become more likely depending on how much damage is taken. This is only relevant for some conditions, other conditions may use items/entities to inflict players. Icon - The url of the icon for this condition. From Legshots - (Broken Leg Only) Set to false to disable this from occurring when a player is shot in the leg. From Falling - (Broken Leg Only) Set to false to disable this from occurring when a player takes fall damage. Damage Scale - The damage effect multiplier for the status condition. This will modify the damage taken for all types (hunger, thirst, ect.) not just health. For example, a value of 0.5 will do half damage while a value of 2.0 will do double damage. Show Duration - Set to false if you do not want player's to see how many seconds are remaining for this condition. There is a slight performance cost for this being set to true. Show Indicator - Set to false if you do not want a custom status framework indicator to show up for this condition. Cure Items - Item short names with corresponding chances from 0-1.0. The items listed will have a chance to cure the condition when consumed/used by the player. An item skin can optionally be specified, see Item Skins section. Interval Min Seconds - The minimum amount of time in seconds between a condition's symptom from occurring. Only relevant for some conditions. Interval Max Seconds - The maximum amount of time in seconds between a condition's symptom from occurring. Only relevant for some conditions. Duration Min Seconds - The minimum number of seconds a condition will last for. Duration Max Seconds - The maximum number of seconds a condition will last for. Move Items to Zombie - (Z13 Virus Only) Set to false to disable moving items from a corpse to the newly spawned zombie. The items will instead be left in a backpack. Reanimation Seconds - (Z13 Virus Only) The number of seconds before an infected player's corpse is reanimated into a zombie. Infliction Entities - Entity short names with corresponding chance of inflictions from 0-1.0. The entities listed will have a chance to inflict the condition when dealing damage to a player. Infliction Items - Item short names with corresponding chance from 0-1.0. The items that are listed will have a chance to inflict the condition when consumed/used by the player. An item skin can optionally be specified, see Item Skins section. Infliction Damage Action - Determined the way that an infliction entity must deal damage in order to inflict a condition. The allowed values are "melee", "ranged" or "any". Item Skins You can optionally specify that only an item with a certain skin will count for Cure and Infliction items. To do so just append #<skin id here> to the end of the item shortname. If both a skinned item and a non skinned item definition are specified, then the skinned definition will take priority if applicable. For example if your config looks like this then... If Anti-Rad Pills with the Skin 12345 are consumed, then it has a 100% cure chance. Anti-Rad Pills with any other skin (including default) only have a 50% cure chance. Only Apples with the 67890 skin have a 100% cure chance. All other Apples have 0% cure chance (because they are not listed). "Cure Items": { "antiradpills": 0.5, "antiradpills#12345": 1.0, "apple#67890": 1.0 }, Creating Your Own Custom Status Conditions Please note, this is a WIP feature, there may be some bugs, please report them if you find them! As of v1.2.0 you can use the API method "CreateCondition" to create your own plugin that can register custom status conditions through Injuries and Diseases. But what if you're not a developer? No problem! I have created a plugin for you with a ton of configurable options for you to create your own status conditions. In either case, here are some guides for what you need to do to create your own status conditions. For Non-Developers If you are not a plugin developer and you would like to create your own custom status conditions then you can download this plugin file and edit the config that it generates to customize the status conditions how you like. Currently there is a limited amount of things you can do for a status condition. If there is a specific condition, trigger, or effect you would like included, please open a support ticket and make a suggestion! Or, if you want full freedom, you can see the developer section to create your own status condition plugin exactly how you would like. For Developers If you are a plugin developer and would like to create a plugin that adds some custom status conditions, then you can make use of the "CreateCondition" API method (see API section) to register any custom conditions you would like to add. To see a code example of how this will work you can refer to the plugin file download like mentioned in the "For Non-Developers" section above. That plugin contains some hints on how the plugin must operate to work with Injuries and Diseases. When creating a custom condition, there are certain aspects that Injuries and Diseases will handle, and others that your plugin will need to take care of. Here is a breakdown of some of those things: Injuries and Diseases will handle... Showing status indicators Status duration and countdowns Showing infliction, cure and diagnosis messages (they need to be in YOUR plugin's localization file though) The effect that occurs on intervals and when the condition is first inflicted (you pass these methods into the CreateCondition method) Whether your conditions duration/indicator is shown (pass this into the CreateCondition method) Your plugin should handle... Registering conditions using the API Means of inflicting your condition (entity attack, item consumed, ect) Means of curing your condition Localization (Injuries and Diseases will reference some of these) Adding images to image library Any configuration options pertaining to your custom conditions Permissions injuriesanddiseases.admin Required for admin commands injuriesanddiseases.doctor Designates a player as a doctor Required for doctor commands injuriesanddiseases.immune Player cannot be affected by any conditions Will also cure the player of any current conditions when granted Admin Commands /inflict <player> <condition> <revealed?> Inflicts the player with the specified condition (see status conditions section). Optionally, you can set if the status will be revealed or not. Default value is set in the config. /cure <player> <condition?> Cures the player from all conditions. If the condition is specified, the player will be cured of just that condition. /conditions <player> Returns a list of all the conditions a player is suffering from and includes the remaining duration. /reveal <player> <condition> Reveals the condition to the player if it has no already been revealed. Doctors (Optional) As an optional feature, you can assign a player as a doctor. Doctors can diagnose players, which will reveal to the player the condition that their are afflicted with. By default, this isn’t necessary, as players will automatically be notified of what their condition is. However, in the config, you can set it so that conditions are unknown to players until they get a doctor to diagnose them. Once they have diagnosed a player, the doctor will also be informed of how to cure the condition. Doctors can be assigned with the doctor perm, and have access to the following command: /diagnose Will diagnose any undiagnosed conditions of the player they are looking at. Will also recommend treatment if available. Supported Plugins Injuries and Diseases has built in support for the following plugins: ZombieHorde The default config values contain support for ZombieHorde zombies to inflict the Z13 Virus The keyword in the config for zombie horde entities is "zombie" WalkingDead The default config values contain support for Walking Dead zombies to inflict the Z13 Virus The Walking Dead plugin uses the "scarecrow" entity for their zombies, which is already included BotReSpawn If you want BotReSpawn entities to inflict a condition, use the keyword "botrespawn" in the infliction entities section of the condition config. Configuration Death Removes Conditions - Set to false if you want conditions to persist even when a player dies. Pause on Disconnect - Set to false if you want the condition timer to continue even when a player is sleeping. Set to true if you want it to pause when they are sleeping. Require Diagnosis - Set to false if you want conditions to be automatically revealed to player's when they are inflicted. Set to true if you want them to appear as unknown until a doctor diagnoses them. Show Doctor Indicator - Set to true if you want an indicator to appear for player's with the doctor permission. Messages Enabled - Set to false if you do not want messages to appear in the chat for player's when their conditions status is updated. Message Icon ID - The steam ID of the player portrait you want to appear for all chat messages from this plugin. Images - A list of image urls for various images used in this plugin. Status Conditions - Configuration for status conditions (see customization section). Version - Keeps track of what version your configuration was generated for, do not edit manually. Developer API With these developer API tools you can extend the functionality of existing conditions through code. You can add additional effects by making use of the various hooks for each condition. /* * Returns a list of all enabled conditions. */ List<string> GetConditions(); /* * Returns a list of conditions a player is inflicted with. */ List<string> GetPlayerConditions(ulong userId); /* * Returns true if the player has the specified condition. */ bool HasCondition(ulong userId, string conditionNameId); /* * Inflicts the player with the specified condition. */ void SetCondition(ulong userId, string conditionNameId, bool revealed); /* * Removes the condition for the player. */ void RemoveCondition(ulong userId, string conditionNameId, bool cured); /* * Removes all conditions for the player. */ void RemoveAllConditions(ulong userId, bool cured); /* * Reveals the condition to the player if it is not already revealed. */ void RevealCondition(ulong userId, string conditionNameId); /* * Create a custom condition. BETA */ void CreateCondition(Plugin plugin, string conditionNameId, string imageLibraryIconName, int minIntervalSeconds, int maxIntervalSeconds, int minDurationSeconds, int maxDurationSeconds, bool showDuration, bool showIndicator, Action<BasePlayer> beginEffect = null, Action<BasePlayer> intervalEffect = null);$19.99 -
Version 0.1.1
32 downloads
The plugin displays the fishing rod strain level in the status bar. Depends on AdvancedStatus plugin. The ability to display the strain level of the fishing rod in the status bar; The ability to notify when a high strain level is reached; The ability to set a color for each strain percentage; The ability to automatically generate language files for different languages(filled in English); The ability to specify the order of the bar; The ability to change the height of the bar; The ability to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder (*SERVER*\oxide\data\AdvancedStatus\Images); The ability to set own image and customize the color and transparency of the image; The ability to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. fishingstatus.use - Provides access to display the status bar. { "Interval in seconds to update the rod strain state": 0.3, "Strain percentage(0.0 to 1.0) threshold for player notification. A value of 0 disables this": 0.7, "The effect that will be triggered upon a warning(Choose the effect carefully). An empty string disables the effect call": "assets/prefabs/locks/keypad/effects/lock.code.denied.prefab", "List of language keys for creating language files": [ "en" ], "Status. Bar - Height": 26, "Status. Bar - Order": 2, "Status. Background - Color(Hex or RGBA)": "#FFFFFF", "Status. Background - Transparency": 0.15, "Status. Background - Material(empty to disable)": "", "Status. Image - Url": "https://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/FishingStatus_Strain.png", "Status. Image - Local(Leave empty to use Image_Url)": "FishingStatus_Strain", "Status. Image - Sprite(Leave empty to use Image_Local or Image_Url)": "", "Status. Image - Is raw image": false, "Status. Image - Color(Hex or RGBA)": "#E2DBD6", "Status. Image - Transparency": 0.55, "Status. Image Outline - Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Status. Image Outline - Transparency": 1.0, "Status. Image Outline - Distance(Leave empty to disable). Example '0.75 0.75'": "", "Status. Text - Size": 14, "Status. Text - Color(Hex or RGBA)": "#E2DBD6", "Status. Text - Transparency": 1.0, "Status. Text - Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Status. Text - Offset Horizontal": 0, "Status. Text Outline - Color(Hex or RGBA)": "#000000", "Status. Text Outline - Transparency": 1.0, "Status. Text Outline - Distance(Leave empty to disable)": "", "Status. SubText - Size": 14, "Status. SubText - Color(Hex or RGBA)": "#E2DBD6", "Status. SubText - Transparency": 1.0, "Status. SubText - Font": "RobotoCondensed-Bold.ttf", "Status. SubText Outline - Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "Status. SubText Outline - Transparency": 1.0, "Status. SubText Outline - Distance(Leave empty to disable)": "", "Status. Progress - Transparency": 0.8, "Status. Progress - OffsetMin": "0 0", "Status. Progress - OffsetMax": "0 0", "List of colors for strain levels": [ { "MinRange": 0.0, "MaxRange": 0.4, "Color(Hex or RGBA)": "#B1C06E" }, { "MinRange": 0.4, "MaxRange": 0.7, "Color(Hex or RGBA)": "#F7BB00" }, { "MinRange": 0.7, "MaxRange": 1.0, "Color(Hex or RGBA)": "#F70000" } ], "Version": { "Major": 0, "Minor": 1, "Patch": 1 } } The values of MaxRange and MinRange set the range of values over which the color applies. The values for MaxRange and MinRange must be between 0.0 and 1.0 (inclusive), where 0.0 equals 0%, and 1.0 equals 100%. The value of MaxRange must be equal to the value of MinRange of the previous. EN: { "BarWaiting": "Waiting for a bite", "BarStrain": "Strain level" } RU: { "BarWaiting": "Ожидание поклёвки", "BarStrain": "Натяжение лески" }$3.99 -
Version 0.1.4
102 downloads
The plugin displays the time until the bed cooldown ends in the status bar. Depends on AdvancedStatus plugin. The ability to set a limit on the number of displayed bars; The ability to skip sleeping bags with the same unlockTime; The ability to set the bar's deletion time for each type, earlier than the cooldown time expires; The ability to automatically generate language files for different languages(filled in English); The ability to customize the bar for each type of bed; The ability to choose between bar types(TimeCounter and TimeProgressCounter); The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. { "Is it worth skipping sleeping bags with the same UnlockTime?": true, "Limit on the simultaneously displayed bars. A value of 0 disables the limitation": 5, "Limits the length of the displayed bag name. A value of 0 disables the limitation": 20, "List of status bar settings for each bag type": { "BedStatus_SleepingBag": { "Text_Transparency": 1.0, "SubText_Transparency": 1.0, "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 21, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "http://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/BedStatus_SleepingBag.png", "Image_Local(Leave empty to use Image_Url)": "BedStatus_SleepingBag", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": true, "Image_Color(Hex or RGBA)": "#FFB200", "Image_Transparency": 1.0, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance(Leave empty to disable). Example '0.75 0.75'": "", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#F79E61", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance(Leave empty to disable)": "", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#F79E61", "SubText_Font": "RobotoCondensed-Bold.ttf", "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance(Leave empty to disable)": "", "Time in seconds after which the bar will be destroyed. Leave 0 to destroy the bar when the time expires": 0.0, "Time in seconds after which the bar will be destroyed when placing a new sleeping bag. Leave 0 to destroy the bar when the time expires": 5.0, "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#F79E61", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" }, "BedStatus_Bed": { "Text_Transparency": 1.0, "SubText_Transparency": 1.0, "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 22, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/BedStatus_Bed.png", "Image_Local(Leave empty to use Image_Url)": "BedStatus_Bed", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": true, "Image_Color(Hex or RGBA)": "#FFB200", "Image_Transparency": 1.0, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance(Leave empty to disable). Example '0.75 0.75'": "", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#F79E61", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 2, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance(Leave empty to disable)": "", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#F79E61", "SubText_Font": "RobotoCondensed-Bold.ttf", "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance(Leave empty to disable)": "", "Time in seconds after which the bar will be destroyed. Leave 0 to destroy the bar when the time expires": 0.0, "Time in seconds after which the bar will be destroyed when placing a new sleeping bag. Leave 0 to destroy the bar when the time expires": 5.0, "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#F79E61", "Progress_Transparency": 0.7, "Progress_OffsetMin": "25 0", "Progress_OffsetMax": "0 0" }, "BedStatus_BeachTowel": { "Text_Transparency": 1.0, "SubText_Transparency": 1.0, "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 23, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/BedStatus_BeachTowel.png", "Image_Local(Leave empty to use Image_Url)": "BedStatus_BeachTowel", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": true, "Image_Color(Hex or RGBA)": "#FFB200", "Image_Transparency": 1.0, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance(Leave empty to disable). Example '0.75 0.75'": "", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#E2DBD6", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 2, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance(Leave empty to disable)": "", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#E2DBD6", "SubText_Font": "RobotoCondensed-Bold.ttf", "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance(Leave empty to disable)": "", "Time in seconds after which the bar will be destroyed. Leave 0 to destroy the bar when the time expires": 0.0, "Time in seconds after which the bar will be destroyed when placing a new sleeping bag. Leave 0 to destroy the bar when the time expires": 5.0, "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#F79E61", "Progress_Transparency": 0.7, "Progress_OffsetMin": "25 2.5", "Progress_OffsetMax": "-3.5 -3.5" }, "BedStatus_Camper": { "Text_Transparency": 1.0, "SubText_Transparency": 1.0, "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 24, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/BedStatus_Camper.png", "Image_Local(Leave empty to use Image_Url)": "BedStatus_Camper", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": true, "Image_Color(Hex or RGBA)": "#FFB200", "Image_Transparency": 1.0, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance(Leave empty to disable). Example '0.75 0.75'": "", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#E2DBD6", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance(Leave empty to disable)": "", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#E2DBD6", "SubText_Font": "RobotoCondensed-Bold.ttf", "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance(Leave empty to disable)": "", "Time in seconds after which the bar will be destroyed. Leave 0 to destroy the bar when the time expires": 0.0, "Time in seconds after which the bar will be destroyed when placing a new sleeping bag. Leave 0 to destroy the bar when the time expires": 5.0, "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#F79E61", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" }, "BedStatus_Static": { "Text_Transparency": 1.0, "SubText_Transparency": 1.0, "BarType(TimeProgressCounter or TimeCounter)": "TimeProgressCounter", "Order": 25, "Height": 26, "Main_Color(Hex or RGBA)": "#FFFFFF", "Main_Transparency": 0.15, "Main_Material(empty to disable)": "", "Image_Url": "https://gitlab.com/IIIaKa/images/-/raw/main/StatusBars/BedStatus_Static.png", "Image_Local(Leave empty to use Image_Url)": "BedStatus_Static", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": true, "Image_Color(Hex or RGBA)": "#FFB200", "Image_Transparency": 1.0, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance(Leave empty to disable). Example '0.75 0.75'": "", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#E2DBD6", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance(Leave empty to disable)": "", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#E2DBD6", "SubText_Font": "RobotoCondensed-Bold.ttf", "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance(Leave empty to disable)": "", "Time in seconds after which the bar will be destroyed. Leave 0 to destroy the bar when the time expires": 0.0, "Time in seconds after which the bar will be destroyed when placing a new sleeping bag. Leave 0 to destroy the bar when the time expires": 5.0, "Progress_Reverse": false, "Progress_Color(Hex or RGBA)": "#F79E61", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" } }, "Version": { "Major": 0, "Minor": 1, "Patch": 4 } }$3.99- 1 comment
-
- 1
-
-
- #rust
- #sleepingbag
- (and 21 more)
-
Version 2.2.0
421 downloads
VIP Status is a powerful plugin that shows custom status messages for VIP players (3 different groups) on your Rust server. With the user-friendly configuration options, you can customise the colours, icons and text of the VIP status message of all 3 VIP groups to suit your individual needs. Plus, the plugin comes with a fully customizable language file, so you can translate the status message and other plugin texts into your preferred language. But that's not all: VIP Status is designed to be stable and reliable. Unlike other plugins that use countdown timers to display the remaining time of a VIP status, VIP Status simply shows the expiration date and checks it against the player's permissions file at fixed intervals. This approach ensures that the plugin operates smoothly without causing any lags or performance issues. Many other plugins that constantly perform countdown calculations can be processor-intensive and lead to performance drops. That's why we opt for static end times, eliminating the need for resource-heavy calculations every minute. If you want to enhance the VIP experience on your Rust server and offer your players a premium status that stands out, VIP Status is the plugin for you. Try it out today and see how it can elevate your server to the next level! Please note that VIP Status requires the Free TimedPermissions plugin to function, as it relies on TimedPermissions to set and track the VIP expiration time. If a player is a member of the VIP group but not listed in the TimedPermission file, the VIP status is now displayed without an expiry date. vip groups now possible for a maximum of 3 groups with different settings (pictures, colour etc.) as well as long file for all 3 groups Toggle the visibility of your VIP status. Added new configuration option to display a custom status when the player does not belong to any group, as an example: no vip Commands: /vip - List of Commands /vt - Toggle the visibility of your VIP status. /vi - Shows how long you have left on your VIP status Config: { "VIPGroups": [ { "Color": "0.66 0.66 0.66 0.8", "IconColor": "1.5 0.8 0.0 0.9", "ImageUrl": "https://i.ibb.co/hmC7s0y/vip1.png", "SubTextColor": "1 1 1 0.7", "TextColor": "1.5 0.8 0.0 0.8", "VipStatusId": "vip1" ///name of the vip group 1 }, { "Color": "0.30 0.66 0.66 0.8", "IconColor": "1.5 0.8 0.0 0.9", "ImageUrl": "https://i.ibb.co/yN18d6h/vip2.png", "SubTextColor": "1 1 1 0.7", "TextColor": "1.5 0.8 0.0 0.8", "VipStatusId": "vip2" ///name of the vip group 2 }, { "Color": "1.0 0.0 0.0 0.4", "IconColor": "1.5 0.0 0.0 0.9", "ImageUrl": "https://i.ibb.co/py0GJpj/vip3.png", "SubTextColor": "1 1 1 0.7", "TextColor": "1.5 0.8 0.0 0.8", "VipStatusId": "vip3" ///name of the vip group 3 } ], "ShowCustomStatusWhenNoGroup": false, ///set true to display a custom status when the player does not belong to any group. "NoGroupConfig": { "Color": "1.0 0.0 0.0 0.4", "TextColor": "1.5 0.8 0.0 0.8", "SubTextColor": "1 1 1 0.7", "IconColor": "1.5 0.8 0.0 0.8", "ImageUrl": "https://i.ibb.co/hmC7s0y/vip1.png" } } Lang: { "VIPStatusText_group1": "GROUP1", ///visible name of the vip group 1 "UntilText_group1": "until {0}", ///subtext for Group 1 with expire time "NoExpireText_group1": "Unlimited", ///subtext for Group 1 without an expiry date. "VIPStatusText_group2": "GROUP2", ///visible name of the vip group 2 "UntilText_group2": "until {0}", ///subtext for Group 2 with expire time "NoExpireText_group2": "Unlimited",///subtext for Group 2 without an expiry date. "VIPStatusText_group3": "GROUP3", ///visible name of the vip group 3 "UntilText_group3": "until {0}",///subtext for Group 3 with expire time "NoExpireText_group3": "Unlimited", ///subtext for Group 3 without an expiry date. "VIPStatusOn": "VIP status display turned on.", "VIPStatusOff": "VIP status display turned off.", "VIPStatusExpiration": "{0} expires on: {1}", "VIPStatusUnlimited": "{0} has unlimited VIP status.", "MessageCommandsListTitle": "List of Commands:", "MessageCommandVT": "/vt - Toggle the visibility of your VIP status.", "MessageCommandVIPInfo": "/vi - Shows how long you have left on your VIP status.", "NoGroupStatus": "No VIPs" /// text for the custom status when the player does not belong to any group. }$19.99 -
Version 0.1.1
152 downloads
The plugin displays the time until restart in the status bar. Depends on AdvancedStatus plugin. The ability to to add and modify any restart plugins; The ability to automatically generate code for restart hooks; The ability to automatically generate language files for different languages(filled in English); The ability to choose between bar types(TimeCounter and TimeProgressCounter); The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. { "Is it worth generating restart hooks? 0 - disabled, 1 - one-time activation, 2 - always enabled": 2, "List of language keys for creating language files": [ "en" ], "The type of the bar(TimeProgressCounter or TimeCounter)": "TimeCounter", "The height of the bar": 26, "The display order of the bar": 10, "The background color of the bar(HEX or RGBA)": "#E5423F", "The background transparency of the bar": 0.7, "The background material of the bar, leave empty to disable": "", "The URL of the bar image": "https://i.imgur.com/rAiHloW.png", "The local image of the bar, leave empty to use URL": "RestartStatus_Default", "The sprite image of the bar, leave empty to use local or URL": "", "Is it worth using a raw image for the bar?": false, "The color of the bar image(HEX or RGBA)": "#E5423F", "The transparency of the bar image": 1.0, "The outline color of the bar image(HEX or RGBA)": "0.1 0.3 0.8 0.9", "The outline transparency of the bar image": 1.0, "The outline distance of the bar image, leave empty to disable. Example '0.75 0.75'": "", "The size of the bar text": 12, "The color of the bar text(HEX or RGBA)": "#FFFFFF", "The transparency of the bar text": 1.0, "The font of the bar text(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "The horizontal offset of the bar text": 0, "The outline color of the bar text(HEX or RGBA)": "#000000", "The outline transparency of the bar text": 1.0, "The outline distance of the bar text, leave empty to disable": "", "The size of the bar subtext": 12, "The color of the bar subtext(HEX or RGBA)": "#FFFFFF", "The transparency of the bar subtext": 1.0, "The font of the bar subtext": "RobotoCondensed-Bold.ttf", "The outline color of the bar subtext(HEX or RGBA)": "0.5 0.6 0.7 0.5", "The outline transparency of the bar subtext": 1.0, "The outline distance of the bar subtext, leave empty to disable": "", "The background color of the progress bar(HEX or RGBA)": "1 1 1 0.15", "The background transparency of the progress bar": 0.15, "Is it worth making the progress reversible?": true, "The color of the bar progress(HEX or RGBA)": "#E5423F", "The transparency of the bar progress": 0.7, "The OffsetMin of the bar progress": "0 0", "The OffsetMax of the bar progress": "0 0", "The list of restart hooks. Note: After modifying hooks, do not forget to toggle hook generation": [ { "Hook triggered at the start of a restart": "OnSmoothRestartInit", "Argument position containing the number of seconds until restart(counting from 0)": 0, "Hook triggered at the cancellation of a restart": "OnSmoothRestartCancelled" }, { "Hook triggered at the start of a restart": "OnRestartScheduled", "Argument position containing the number of seconds until restart(counting from 0)": 0, "Hook triggered at the cancellation of a restart": "OnRestartCancelled" } ], "Version": { "Major": 0, "Minor": 1, "Patch": 1 } } EN: { "BarText": "RESTART IN" } RU: { "BarText": "РЕСТАРТ ЧЕРЕЗ" }$3.99 -
Version 0.1.8
391 downloads
The plugin displays the player's balance in the status bar. Depends on AdvancedStatus plugin. The ability to add and modify any economic plugins; The ability to automatically generate code for balance update hooks; The ability to automatically generate language files for different languages(filled in English); The ability to display the status bar to everyone or only based on permissions; The ability to display the status bar always or only in safe zones and building privileges; The ability to display the status bar via a command for a short period if permanent display is disabled; The ability to display the status bar when the balance is non-zero; The ability to display all or part of the bars simultaneously; The ability to customize the bar for each plugin; The ability to specify the currency symbol; The ability to specify the display side of the currency symbol; The ability to display text if the balance exceeds a specified value(useful for very large balances); The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color, transparency and outline of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. balancebar.use - Grants the right to display the status bar if display is enabled only for permissions. { "Chat command": "balances", "Is it worth enabling GameTips for messages?": true, "Is it worth generating update hooks? 0 - disabled, 1 - one-time activation, 2 - always enabled": 2, "Is it worth displaying the status bar only when players are in the safe zone or have building privilege?": true, "Is it worth displaying the status bar at a 0 balance?": true, "Is it worth displaying the status bar without permission?": true, "Value after which text will be displayed instead of balance": 1000000000.0, "List of language keys for creating language files": [ "en" ], "The list of economy plugins for displaying the balance bar. Note: After modifying hooks, do not forget to toggle hook generation": [ { "Plugin's name": "Economics", "Is it worth enabling the plugin for display?": true, "Language key for the main text": "BarEconomics", "Balance format": "${0}", "Language key for the subtext when the balance is high": "BarEconomicsOverLimit", "API method for retrieving the balance": "Balance", "Hook that triggers on balance update": "OnEconomicsBalanceUpdated", "List of argument types in the hook in order": [ "string", "double" ], "BarSettings": { "Order": 20, "Height": 26, "BackgroundColor(HEX or RGBA)": "#6375B3", "BackgroundTransparency": 0.8, "BackgroundMaterial(leave empty to disable)": "", "ImageUrl": "https://i.imgur.com/jKeUqSD.png", "ImageLocal(leave empty to use URL)": "BalanceBar_Default", "ImageSprite(leave empty to use local or URL)": "", "IsRawImage": false, "ImageColor": "#A1DBE6", "ImageTransparency": 1.0, "ImageOutlineColor": "0.1 0.3 0.8 0.9", "ImageOutlineTransparency": 1.0, "ImageOutlineDistance(leave empty to disable). Example '0.75 0.75'": "", "TextSize": 12, "TextColor": "#FFFFFF", "TextTransparency": 1.0, "TextFont(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "TextOffsetHorizontal": 0, "TextOutlineColor": "#000000", "TextOutlineTransparency": 1.0, "TextOutlineDistance": "", "SubTextSize": 12, "SubTextColor": "#FFFFFF", "SubTextTransparency": 1.0, "SubTextFont": "RobotoCondensed-Bold.ttf", "SubTextOutlineColor": "0.5 0.6 0.7 0.5", "SubTextOutlineTransparency": 1.0, "SubTextOutlineDistance": "" } }, { "Plugin's name": "ServerRewards", "Is it worth enabling the plugin for display?": true, "Language key for the main text": "BarServerRewards", "Balance format": "{0} RP", "Language key for the subtext when the balance is high": "BarServerRewardsOverLimit", "API method for retrieving the balance": "CheckPoints", "Hook that triggers on balance update": "OnPointsUpdated", "List of argument types in the hook in order": [ "ulong", "int" ], "BarSettings": { "Order": 20, "Height": 26, "BackgroundColor(HEX or RGBA)": "#6375B3", "BackgroundTransparency": 0.8, "BackgroundMaterial(leave empty to disable)": "", "ImageUrl": "https://i.imgur.com/jKeUqSD.png", "ImageLocal(leave empty to use URL)": "BalanceBar_Default", "ImageSprite(leave empty to use local or URL)": "", "IsRawImage": false, "ImageColor": "#A1DBE6", "ImageTransparency": 1.0, "ImageOutlineColor": "0.1 0.3 0.8 0.9", "ImageOutlineTransparency": 1.0, "ImageOutlineDistance(leave empty to disable). Example '0.75 0.75'": "", "TextSize": 12, "TextColor": "#FFFFFF", "TextTransparency": 1.0, "TextFont(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "TextOffsetHorizontal": 0, "TextOutlineColor": "#000000", "TextOutlineTransparency": 1.0, "TextOutlineDistance": "", "SubTextSize": 12, "SubTextColor": "#FFFFFF", "SubTextTransparency": 1.0, "SubTextFont": "RobotoCondensed-Bold.ttf", "SubTextOutlineColor": "0.5 0.6 0.7 0.5", "SubTextOutlineTransparency": 1.0, "SubTextOutlineDistance": "" } }, { "Plugin's name": "BankSystem", "Is it worth enabling the plugin for display?": true, "Language key for the main text": "BarBankSystem", "Balance format": "${0}", "Language key for the subtext when the balance is high": "BarBankSystemOverLimit", "API method for retrieving the balance": "Balance", "Hook that triggers on balance update": "OnBalanceChanged", "List of argument types in the hook in order": [ "ulong", "int" ], "BarSettings": { "Order": 20, "Height": 26, "BackgroundColor(HEX or RGBA)": "#6375B3", "BackgroundTransparency": 0.8, "BackgroundMaterial(leave empty to disable)": "", "ImageUrl": "https://i.imgur.com/jKeUqSD.png", "ImageLocal(leave empty to use URL)": "BalanceBar_Default", "ImageSprite(leave empty to use local or URL)": "", "IsRawImage": false, "ImageColor": "#A1DBE6", "ImageTransparency": 1.0, "ImageOutlineColor": "0.1 0.3 0.8 0.9", "ImageOutlineTransparency": 1.0, "ImageOutlineDistance(leave empty to disable). Example '0.75 0.75'": "", "TextSize": 12, "TextColor": "#FFFFFF", "TextTransparency": 1.0, "TextFont(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "TextOffsetHorizontal": 0, "TextOutlineColor": "#000000", "TextOutlineTransparency": 1.0, "TextOutlineDistance": "", "SubTextSize": 12, "SubTextColor": "#FFFFFF", "SubTextTransparency": 1.0, "SubTextFont": "RobotoCondensed-Bold.ttf", "SubTextOutlineColor": "0.5 0.6 0.7 0.5", "SubTextOutlineTransparency": 1.0, "SubTextOutlineDistance": "" } }, { "Plugin's name": "IQEconomic", "Is it worth enabling the plugin for display?": true, "Language key for the main text": "BarIQEconomic", "Balance format": "${0}", "Language key for the subtext when the balance is high": "BarIQEconomicOverLimit", "API method for retrieving the balance": "API_GET_BALANCE", "Hook that triggers on balance update": "OnBalanceUpdated", "List of argument types in the hook in order": [ "BasePlayer", "int" ], "BarSettings": { "Order": 20, "Height": 26, "BackgroundColor(HEX or RGBA)": "#6375B3", "BackgroundTransparency": 0.8, "BackgroundMaterial(leave empty to disable)": "", "ImageUrl": "https://i.imgur.com/jKeUqSD.png", "ImageLocal(leave empty to use URL)": "BalanceBar_Default", "ImageSprite(leave empty to use local or URL)": "", "IsRawImage": false, "ImageColor": "#A1DBE6", "ImageTransparency": 1.0, "ImageOutlineColor": "0.1 0.3 0.8 0.9", "ImageOutlineTransparency": 1.0, "ImageOutlineDistance(leave empty to disable). Example '0.75 0.75'": "", "TextSize": 12, "TextColor": "#FFFFFF", "TextTransparency": 1.0, "TextFont(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "TextOffsetHorizontal": 0, "TextOutlineColor": "#000000", "TextOutlineTransparency": 1.0, "TextOutlineDistance": "", "SubTextSize": 12, "SubTextColor": "#FFFFFF", "SubTextTransparency": 1.0, "SubTextFont": "RobotoCondensed-Bold.ttf", "SubTextOutlineColor": "0.5 0.6 0.7 0.5", "SubTextOutlineTransparency": 1.0, "SubTextOutlineDistance": "" } } ], "Version": { "Major": 0, "Minor": 1, "Patch": 8 } } EN: { "CmdMain": "Available commands:\n\n<color=#D1CBCB>/balances</color> <color=#D1AB9A>show *seconds*(optional)</color> - Temporarily display the balance bar with an optional duration(1-10 seconds)\n<color=#D1CBCB>/balances</color> <color=#D1AB9A>toggle</color> - Toggle the balance bar display\n<color=#D1CBCB>/balances</color> <color=#D1AB9A>ignore</color> - Toggle ignoring balance bar display zones\n\n--------------------------------------------------", "CmdDisplayEnabled": "Balance bar display enabled!", "CmdDisplayDisabled": "Balance bar display disabled!", "CmdIgnoreZonesEnabled": "Ignoring balance bar display zones enabled!", "CmdIgnoreZonesDisabled": "Ignoring balance bar display zones disabled!", "BarEconomics": "Balance", "BarEconomicsOverLimit": "> $1kkk", "BarServerRewards": "Points", "BarServerRewardsOverLimit": "> 1kkk RP", "BarBankSystem": "Balance", "BarBankSystemOverLimit": "> $1kkk", "BarIQEconomic": "Balance", "BarIQEconomicOverLimit": "> $1kkk" } RU: { "CmdMain": "Доступные команды:\n\n<color=#D1CBCB>/balances</color> <color=#D1AB9A>show *секунды*(опционально)</color> - Временно отобразить баланс бар с возможностью указать время отображения(1-10 секунд)\n<color=#D1CBCB>/balances</color> <color=#D1AB9A>toggle</color> - Переключить отображение баланс бара\n<color=#D1CBCB>/balances</color> <color=#D1AB9A>ignore</color> - Переключить игнорирование зон отображения баланс бара\n\n--------------------------------------------------", "CmdDisplayEnabled": "Отображение баланс бара включено!", "CmdDisplayDisabled": "Отображение баланс бара выключено!", "CmdIgnoreZonesEnabled": "Игнорирование зон отображения баланс бара включено!", "CmdIgnoreZonesDisabled": "Игнорирование зон отображения баланс бара выключено!", "BarEconomics": "Баланс", "BarEconomicsOverLimit": "> $1 млрд", "BarServerRewards": "Очки", "BarServerRewardsOverLimit": "> 1 млрд RP", "BarBankSystem": "Баланс", "BarBankSystemOverLimit": "> $1 млрд", "BarIQEconomic": "Баланс", "BarIQEconomicOverLimit": "> $1 млрд" } show *seconds*(optional) - Temporarily display the balance bar with an optional duration(1-10 seconds) ; toggle - Toggle the balance bar display; ignore - Toggle ignoring balance bar display zones. Example: /balances show 5 /balances toggle /balances ignore$3.99 -
Version 0.1.8
692 downloads
The plugin displays an invisibility indication in the status bar. Depends on AdvancedStatus plugin. The ability to set a sound effect for disappearance and appearance; The ability to automatically generate language files for different languages(filled in English); The ability to individually toggle the display of status bars; The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. { "Sound effect played upon disappearance, leave empty to disable": "assets/prefabs/npc/patrol helicopter/effects/rocket_fire.prefab", "Sound effect played upon appearance, leave empty to disable": "assets/prefabs/npc/patrol helicopter/effects/rocket_fire.prefab", "List of language keys for creating language files": [ "en" ], "The height of the bar": 26, "The display order of the bar": 10, "The background color of the bar(HEX or RGBA)": "#15AC9D", "The background transparency of the bar": 0.7, "The background material of the bar, leave empty to disable": "", "The URL of the bar image": "https://i.ibb.co/LzdbT8wT/Vanish-Status-Default.png", "The local image of the bar, leave empty to use URL": "VanishStatus_Default", "The sprite image of the bar, leave empty to use local or URL": "", "Is it worth using a raw image for the bar?": false, "The color of the bar image(HEX or RGBA)": "#15AC9D", "The transparency of the bar image": 1.0, "The outline color of the bar image(HEX or RGBA)": "0.1 0.3 0.8 0.9", "The outline transparency of the bar image": 1.0, "The outline distance of the bar image, leave empty to disable. Example '0.75 0.75'": "", "The size of the bar text": 12, "The color of the bar text(HEX or RGBA)": "#FFFFFF", "The transparency of the bar text": 1.0, "The font of the bar text(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "The horizontal offset of the bar text": 0, "The outline color of the bar text(HEX or RGBA)": "#000000", "The outline transparency of the bar text": 1.0, "The outline distance of the bar text, leave empty to disable": "", "The size of the bar subtext": 12, "The color of the bar subtext(HEX or RGBA)": "#FFFFFF", "The transparency of the bar subtext": 1.0, "The font of the bar subtext": "RobotoCondensed-Bold.ttf", "The outline color of the bar subtext(HEX or RGBA)": "0.5 0.6 0.7 0.5", "The outline transparency of the bar subtext": 1.0, "The outline distance of the bar subtext, leave empty to disable": "", "Version": { "Major": 0, "Minor": 1, "Patch": 8 } } EN: { "BarVanish": "You are invisible" } RU: { "BarVanish": "Вы невидимы" }$3.99 -
Version 1.0.0
9 downloads
SimplePresence SimplePresence is a lightweight, production-ready plugin built and tested for Carbon Rust servers that updates your Discord bot’s presence in real time using direct in-server data. No root access required. No third-party hosting. No Python / Node.js. No Oxide.Ext.Discord.dll Ideal for hosted environments (e.g., Pine Hosting, Shockbyte, Nitrado) where running external bots or services isn’t possible. Key Features Real-time Discord presence powered by live server events Accurate Online, Joining, and Sleeping player counts Fast updates on connect, spawn, sleep, wake, and disconnect Automatically displays "Server is restarting" during shutdown/restart Self-healing recovery logic for temporary Discord connectivity stalls Zero external plugin dependencies (no Placeholder plugins required) Platform Support Built and tested on Carbon. This plugin may function on Oxide, but Oxide compatibility is not guaranteed and is not actively tested. For best results and full support, Carbon is recommended. Discord Bot Setup (Required) SimplePresence requires a Discord bot token. If you do not already have a Discord bot, follow these steps first: Open the Discord Developer Portal: https://discord.com/developers/applications Create a new application Go to the Bot section and click Add Bot Copy the Bot Token (you will paste this into the plugin config) Enable these Privileged Gateway Intents: Presence Intent Server Members Intent Message Content Intent is not required. Save changes Visual walkthrough (official guide): https://umod.org/extensions/discord#getting-your-api-key Security Note: Never share your Discord bot token. Anyone with this token can control your bot. Plugin Installation Upload SimplePresence.cs to your server’s plugins folder Open the generated config and paste your Discord bot token Reload the plugin Configuration The config allows you to customize the presence message format. Tokens are replaced with live values: Online: currently active players Sleep: sleeping players Joining: players currently connecting/loading Scope SimplePresence focuses exclusively on Discord presence updates. It does not send messages, embeds, or logs. This keeps the plugin clean, reliable, and low maintenance. License This plugin is distributed under a proprietary license. Redistribution is not permitted. Support Support is provided for Carbon servers running the latest version. Use the Get Support button here on Codefling. Please allow 24 hours for a response. Author: Rome$4.99-
- #discord
- #discord pop bot
-
(and 3 more)
Tagged with:
-
Version 6.1.0
821 downloads
Description: A powerful yet easy-to-use plugin that displays your Rust server's live status in any Discord channel via a simple and efficient Webhook. Keep your community updated with a professional-looking status panel that requires minimal setup. Features: Live Status Updates: Displays your server name, current player count, and online/offline status in a clean embed. No Spam: Creates a single message that is continuously edited with the latest information, keeping your channel clean. Offline Notifications: Automatically updates the status to "Offline" when the server shuts down gracefully. One-Click Connect: Includes a fully configurable connect link to help players join your server instantly. Highly Customizable: Almost every aspect can be changed via the configuration file. Lightweight & Efficient: Uses webhooks directly, requiring no other plugins or dependencies. Cross-Compatible: Works flawlessly on both Oxide and Carbon frameworks. Configuration & Setup: Create a Webhook in your desired Discord channel (Server Settings -> Integrations -> Webhooks). Copy the Webhook URL and paste it into the "Discord Webhook URL" field in the plugin's config file. (Optional) To get a permanent message that edits itself, run the plugin once, let it post a message, then copy that message's ID into the "Discord Message ID" field in the config. Important Note on the Direct Connect URL: For the "Connect" link to work reliably in Discord, it is highly recommended to use a URL shortening service like TinyURL. Discord may not correctly display links that start with steam://. Example: Take your full Steam connect link: steam://run/252490//+connect 5.9.98.61:28015 Go to the website https://tinyurl.com/ and paste your link to create a short URL. It will give you a new link, for example: https://tinyurl.com/muyxtj7k Copy this new https:// link and paste it into the "Direct Connect URL" field in the configuration file.Free -
Version 0.1.5
196 downloads
The plugin displays godmode and noclip indicators in the status bar. Depends on AdvancedStatus plugin. The ability to display godmode and noclip indications in the status bar. The ability to automatically generate language files for different languages(filled in English); The ability to individually toggle the display of status bars; The ability to customize the status bar for each of types; The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. { "Chat command": "fgs", "Is it worth enabling GameTips for messages?": true, "Check interval in seconds": 1.0, "List of language keys for creating language files": [ "en" ], "Status Bar Settings for God": { "Order": 20, "Height": 26, "Main_Color(Hex or RGBA)": "#E3BA2B", "Main_Transparency": 0.8, "Main_Material": "", "Image_Url": "https://i.imgur.com/XmZBOuP.png", "Image_Local(Leave empty to use Image_Url)": "FlyingGodStatus_God", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#FFD33A", "Image_Transparency": 1.0, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Key": "BarGod", "Text_Size": 12, "Text_Color(Hex or RGBA)": "1 1 1 1", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText(Leave empty to disable)": "", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "1 1 1 1", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75" }, "Status Bar Settings for Noclip": { "Order": 20, "Height": 26, "Main_Color(Hex or RGBA)": "#66A4D2", "Main_Transparency": 0.8, "Main_Material": "", "Image_Url": "https://i.imgur.com/LY0AUMG.png", "Image_Local(Leave empty to use Image_Url)": "FlyingGodStatus_Noclip", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#31648B", "Image_Transparency": 1.0, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Key": "BarNoclip", "Text_Size": 12, "Text_Color(Hex or RGBA)": "1 1 1 1", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText(Leave empty to disable)": "", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "1 1 1 1", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75" }, "Version": { "Major": 0, "Minor": 1, "Patch": 5 } } EN: { "BarGod": "You are immortal", "BarNoclip": "You are flying", "CmdGodEnabled": "Display of Godmode bar enabled!", "CmdGodDisabled": "Display of Godmode bar disabled!", "CmdNoclipEnabled": "Display of Noclip bar enabled!", "CmdNoclipDisabled": "Display of Noclip bar disabled!" } RU: { "BarGod": "Вы неуязвимы", "BarNoclip": "Вы в полете", "CmdGodEnabled": "Отображение Godmode бара включено!", "CmdGodDisabled": "Отображение Godmode бара выключено!", "CmdNoclipEnabled": "Отображение Noclip бара включено!", "CmdNoclipDisabled": "Отображение Noclip бара выключено!" } god - toggling personal Godmode bar display. fly - toggling personal Noclip bar display. Example: /fgs god$3.99 -
Version 0.1.4
73 downloads
The plugin allows displaying promo codes in the status bar. Depends on AdvancedStatus plugin. The ability to display promo codes in the status bar; The ability to automatically generate language files for different languages(filled in English); The ability to individually toggle the display of status bars; The ability to customize the status bar for each promo; The ability to specify the order of the bar; The ability to change the height of the bar; The abillity to customize the color and transparency of the background; The ability to set a material for the background; The ability to switch between CuiRawImageComponent and CuiImageComponent for the image; The ability to get images from the local folder(*SERVER*\oxide\data\AdvancedStatus\Images); The abillity to set own image and customize the color and transparency of the image; The abillity to set sprite instead of the image; The ability to customize the color, size, font and outline of the text. promostatus.admin - Provides the ability to admin commands. { "Chat command": "promo", "Is it worth enabling GameTips for messages?": true, "List of language keys for creating language files": [ "en" ], "Default time in seconds for displaying the promo code in the status bar. A value of 0 will keep the bar visible until the promo code expires": 600.0, "List of promo codes": [], "List of status bar settings. Leave empty or null to recreate the default list": { "_default": { "Order": 20, "Height": 26, "Main_Color(Hex or RGBA)": "#FFD33A", "Main_Transparency": 0.7, "Main_Material(empty to disable)": "", "Image_Url": "https://i.imgur.com/q15Cmu5.png", "Image_Local(Leave empty to use Image_Url)": "PromoStatus_Default", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#FFD33A", "Image_Transparency": 1.0, "Is it worth enabling an outline for the image?": false, "Image_Outline_Color(Hex or RGBA)": "0.1 0.3 0.8 0.9", "Image_Outline_Transparency": 1.0, "Image_Outline_Distance": "0.75 0.75", "Text_Key": "BarDefault", "Text_Size": 12, "Text_Color(Hex or RGBA)": "#FFFFFF", "Text_Font(https://umod.org/guides/rust/basic-concepts-of-gui#fonts)": "RobotoCondensed-Bold.ttf", "Text_Offset_Horizontal": 0, "Is it worth enabling an outline for the text?": false, "Text_Outline_Color(Hex or RGBA)": "#000000", "Text_Outline_Transparency": 1.0, "Text_Outline_Distance": "0.75 0.75", "SubText_Size": 12, "SubText_Color(Hex or RGBA)": "#FFFFFF", "SubText_Font": "RobotoCondensed-Bold.ttf", "Is it worth enabling an outline for the sub text?": false, "SubText_Outline_Color(Hex or RGBA)": "0.5 0.6 0.7 0.5", "SubText_Outline_Transparency": 1.0, "SubText_Outline_Distance": "0.75 0.75" } }, "Version": { "Major": 0, "Minor": 1, "Patch": 4 } } EN: { "BarDefault": "PROMO CODE:", "CmdNotAllowed": "You do not have permissions to use this command!", "CmdWrongCommand": "You entered an incorrect command!\nExample: /{0} toggle", "CmdWrongArguments": "You have not provided enough arguments for this command!", "CmdPromoNotFound": "Promo code '{0}' not found!", "CmdAddFailed": "Failed to add promo code. Invalid format or expiration date is earlier than the current date.\nExample: /{1} add \"{0}\" \"{2}\" \"{3}\"(optional)", "CmdPromoAdded": "Promo code '{0}' has been successfully added. Valid until '{1}'.", "CmdPromoUpdated": "Promo code '{0}' has been successfully updated. Valid until '{1}'.", "CmdPromoRemoved": "Promo code '{0}' has been successfully removed!", "CmdDisplayFailed": "Failed to update promo code display time.\nExample: /{1} display \"{0}\" 600", "CmdDisplayUpdated": "A new display time({1} sec) has been set in the status bar for promo code '{0}'.", "CmdBarEnabled": "Displaying the promo bar is enabled!", "CmdBarDisabled": "Displaying the promo bar is disabled!", "CmdPromoEmpty": "No available promo codes!", "CmdPromoList": "List of available promo codes(UTC):\n{0}" } RU: { "BarDefault": "ПРОМОКОД:", "CmdNotAllowed": "У вас недостаточно прав для использования этой команды!", "CmdWrongCommand": "Вы ввели не правильную команду!\nПример: /{0} toggle", "CmdWrongArguments": "Вы ввели не достаточно аргументов для этой команды!", "CmdPromoNotFound": "Промокод '{0}' не найден!", "CmdAddFailed": "Не удалось добавить промокод. Не верный формат, либо дата истечения меньше текущей даты.\nПример: /{1} add \"{0}\" \"{2}\" \"{3}\"(опционально)", "CmdPromoAdded": "Промокод '{0}' был успешно добавлен. Действителен до '{1}'.", "CmdPromoUpdated": "Промокод '{0}' был успешно обновлен. Действителен до '{1}'.", "CmdPromoRemoved": "Промокод '{0}' был успешно удален!", "CmdDisplayFailed": "Не удалось обновить время отображения промокода.\nПример: /{1} display \"{0}\" 600", "CmdDisplayUpdated": "Установлено новое время({1} сек) отображения в статус баре для промокода '{0}'.", "CmdBarEnabled": "Отображение промо баров включено!", "CmdBarDisabled": "Отображение промо баров выключено!", "CmdPromoEmpty": "Нет доступных промокодов!", "CmdPromoList": "Список доступных промокодов(UTC):\n{0}" } bar - personal toggle for displaying promo status bars; list - displays a list of all active promo codes in the chat; list_admin - displays a list of all active promo codes in the chat, include inactive ones. Permission "promostatus.admin" required; add *code* *expireDate* *startDate*(optional) - adds a new promo code. Permission "promostatus.admin" required; remove *code* - removes a promo code. Permission "promostatus.admin" required; display *code* *seconds* - changes the display time(in seconds) of the promo code for each player. Permission "promostatus.admin" required. Example: /promo bar /promo list /promo add "test" "2024-12-23 14:06" /promo display "test" 360 There are 2 hooks that the plugin is subscribed to: OnPromoCodeAdded OnPromoCodeRemoved OnPromoCodeAdded: Used to add a new promo code. To call the OnPromoCodeAdded hook, you need to pass 3 parameters, 1 of which is optional: <string>promoCode - The promo code; <DateTime>expireDate - The expiration date; <DateTime>startDate - Optional. The start date of validity; <string>barCfgId - Optional. The key for the status bar settings. Interface.CallHook("OnPromoCodeAdded", "*Your promo*", expireDate, startDate, "_default");//Calling the OnPromoCodeAdded hook to add a new promo code. OnPromoCodeRemoved: Used to remove a promo code. To call the OnPromoCodeRemoved hook, you need to pass 1 parameter: <string>promoCode - The promo code. Interface.CallHook("OnPromoCodeRemoved", "*Your promo*");//Calling the OnPromoCodeRemoved hook to remove a promo code.$3.99 -
Version 1.0.1
7 downloads
Tired of guessing which server a staff member is on or whether they’re even active? This bot has you covered. Monitor your staff in real-time - see who’s online and what server they’re on at a glance. Quick to set up, easy to use, and built to keep your team connected. Prerequisites: - Discord Bot Token - Battlemetrics API Token Config file: { "TOKEN": "", "BM_TOKEN": "", "CHANNEL_ID": 1, "COOLDOWN": 1, "EMBED_FOOTER": "", "EMBED_FOOTER_IMAGE_URL": "", "ONLINE_EMOJI": "", "OFFLINE_EMOJI": "" } Anything to setup the bot is shown in the README when you buy the bot. For any issues please dm osesem on discord.$14.99