Search the Community
Showing results for tags 'loot'.
-
Version 0.1.14
837 downloads
Plugin for Real PvE servers, featuring damage prevention, anti-griefing measures, customizable PvP zones, an automatic loot queue in radtowns and raid zones, and much more. P.S. Since the previous implementation with DynamicPVP was not correct and had some issues, I have added universal hooks(Developer API section) for general access from all PvP plugins, which are currently missing in DynamicPVP. I have requested the author to add them(3 lines), but for now, you will need to use the modified version of DynamicPVP.cs The ability to set "server.pve" to "true", which allows the server to have a "PvE" flag; Damage from NPC's are enabled when server.pve is true; The ability to inflict damage to one's own structures with "server.pve true"; The ability to destroy(including external walls) or rotate one's structures without any time constraints; The ability to force the decay of building blocks with Twigs grade, even if there is wood in the Tool Cupboard; The ability to toggle the gather resource restriction in someone else's Building Privileges; No one, except the owner or their friends, will be able to open their loot containers (chests, storages, bodies, etc.); Administrators can bypass loot restrictions; The ability to schedule the killing of players if they disconnect within someone else's Building Privilege; Disabling backpack and active item drop upon death, even if backpack is full; The ability to disable 'Give' messages; The ability to modify the items given at spawn on the beach; The ability to create an unlimited number of custom permissions; The ability to allow players to bypass the queue; The ability to set limits on sleeping bags, shelters and auto turrets for each permission; The ability to set a multiplier for the prices of monuments and events for each permission; The ability to customize the price and amount of vehicles for each of your custom permissions; The ability to assign vehicles to each player; The ability to customize the assigned price and available amount of vehicles for each of your custom permissions; An assigned vehicle can't be damaged, looted or pushed by other players, but it can be pushed if it is within someone else's Building Privilege; The ability to loot monuments through a queue system; The ability to configure monuments, setting their looting price and time, and adjusting status bars for each monument; The ability to acquire the privilege to loot events (helicopters, bradleys, and raidable bases) through a purchase; The ability to customize the price of each event types and loot attempts (lives); NPCs only aggress against players who are looting monuments, events or raidable bases; Only players who are looting monuments, events or raidable bases can inflict damage to NPCs; RaidableBases are protected from griefing(no damage, no loot and etc). Only the owner can interact with the raid; Neutral RaidableBases can be purchased; Prices for purchasing neutral raids are configurable for each difficulty level; Configurable raid limits (currently available) along with discount multipliers for purchases, for each permission. File location: *SERVER*\oxide\data\RealPVE\PermissionConfig.json Default: https://pastebin.com/5VtWZZVr All permissions are created and configured in the config file under the "List of permissions" section. You can create as many permissions as needed and customize them flexibly. It is recommended to use the prefix "realpve" in the permission's name, for example: "realpve.vip". NOTE: The first permission will serve as the default permission for those who do not have any permissions. { "List of permissions. NOTE: The first permission will be used by default for those who do not have any permissions.": [ { "Permission Name": "realpve.default", "Bypass Queue": false, "Limit of beds": 15, "Limit of shelters": 1, "Limit of auto turrets": 12, "Seconds that will be skipped when opening HackableLockedCrate": 0.0, "Monuments price multiplier": 1.0, "Events price multiplier": 1.0, "Limit of RaidableBases(at the time)": 1, "RaidableBases price multiplier": 1.0, "Vehicles settings": { "Horse": { "Limit": 1, "Price": 10.0 }, "Bike": { "Limit": 1, "Price": 5.0 }, "MotorBike": { "Limit": 1, "Price": 20.0 }, "Car": { "Limit": 1, "Price": 25.0 }, ... } }, { "Permission Name": "realpve.vip", "Bypass Queue": true, "Limit of beds": 20, "Limit of shelters": 2, "Limit of auto turrets": 15, "Seconds that will be skipped when opening HackableLockedCrate": 450.0, "Monuments price multiplier": 0.9, "Events price multiplier": 0.9, "Limit of RaidableBases(at the time)": 2, "RaidableBases price multiplier": 0.9, "Vehicles settings": { "Horse": { "Limit": 5, "Price": 9.0 }, "Bike": { "Limit": 5, "Price": 4.5 }, "MotorBike": { "Limit": 5, "Price": 18.0 }, "Car": { "Limit": 5, "Price": 22.5 }, ... } } ], "Version": { "Major": 0, "Minor": 1, "Patch": 1 } } An example of a monument/event/rb multipliers using default permissions. For example, if you set the price for the Harbor at $1000, a player with the default permission(1.0) will pay $1000 * 1 = $1000. Meanwhile, a player with a VIP permission(0.9) will pay $1000 * 0.9 = $900. However, if a player possesses a misbehaving permission with a value of 1.1, they will need to pay $1000 * 1.1 = $1100. { "Chat command": "realpve", "Chat admin command": "adminpve", "Is it worth forcibly implementing PvE for a server?": true, "Is it worth enabling GameTips for messages?": true, "Is it worth preventing the sending of 'Give' messages?": true, "Is it worth preventing resource gathering in someone else's building privilege area?": false, "Is it worth preventing the pickup of plants spawned by the server in someone else's building privilege zone?": false, "Is it worth forcibly blocking damage from the patrol helicopter to building blocks and deployables?": false, "Is it worth preventing players from handcuffing others?": true, "Is it worth assigning portals(Halloween and Christmas) to the first player?": true, "Is it worth preventing a backpack from dropping upon player death?": true, "Is it worth preventing damage to the laptop of the Hackable Crate?": true, "Is it worth removing the penalties for recyclers in safe zones?": true, "Is it worth allowing all players to pick up items dropped by others? If enabled, personal settings will be ignored": false, "The format that will be used for prices": "${0}", "Vehicles - Time in seconds to display the marker when searching for a vehicle. A value of 0 disables the marker": 15.0, "Anti-Sleeper - Time in seconds after which a player will be killed if they disconnect while inside someone else's Building Privilege. Set to 0 to disable": 1200.0, "Is it worth enabling support for the 'Npc Random Raids' plugin?": true, "Is friendly fire enabled by default when creating a new team?": false, "PvP - Is it worth adding map markers for PvP zones?": true, "PvP - Name of the map maker": "PvP Zone!", "PvP - Settings for the status bar": { "Order": 9, "Height": 26, "Main_Color(Hex or RGBA)": "1 0.39 0.28 0.7", "Main_Transparency": 0.8, "Main_Material": "", "Image_Url": "https://i.imgur.com/oi5vIkk.png", "Image_Local(Leave empty to use Image_Url)": "RealPVE_PvP", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "1 0.39 0.28 1", "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": 0.0, "Image_Outline_Distance": "0.75 0.75", "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", "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)": "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": 0.0, "SubText_Outline_Distance": "0.75 0.75" }, "PvP - Settings for the progress status bar": { "Main_Color(Hex or RGBA)": "1 1 1 0.15", "Main_Transparency": 0.15, "Progress_Reverse": true, "Progress_Color": "#FF6347", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" }, "Wipe ID": null, "Version": { "Major": 0, "Minor": 1, "Patch": 14 } } ENG: https://pastebin.com/ZMUL6pYL RUS: https://pastebin.com/Mx8cbMts Main commands(/realpve ) : autobuy - Toggle autobuy for monuments, vanilla events and raid bases with a total price greater than 0; pickup - Toggle access to pick up your items from the ground for all players; share - Manage access to looting your entities by other players(outside of the team): status *entityID*(optional) - Display information about the settings of the entity you are looking at or the one you specified; add *nameOrID* *entityID*(optional) - Add the specified player to the entity list you are looking at or the one you specified; remove *nameOrID* *entityID*(optional) - Remove the specified player from the entity list you are looking at or the one you specified; toggle *entityID*(optional) - Toggle the entity list you are looking at or the one you specified; delete *entityID*(optional) - Delete the settings for the entity you are looking at or the one you specified; clear - Delete the settings for all your entities. team - Manage your team: ff - Toggle the ability to damage your teammates. vehicle - Manage your vehicles: list - List of IDs for all your vehicles; find *vehicleID*(optional) - Help finding the vehicle you are looking at or the one you specified; unlink *vehicleID*(optional) - Unlink the vehicle you are looking at or the one you specified; clear - Unlink all your vehicles. Admin commands(/adminpve). Permission "realpve.admin" required: autobuy - Manage autobuy for monuments, vanilla events and raid bases: *nameOrId* - Toggle autobuy for the specified player; force monument/event/rb - Toggle forced autobuy. If enabled, player settings will be ignored; clear - Disable autobuy for everyone. config - Manage settings for values in the configuration file: forcepve *boolValue*(optional) - Is it worth forcibly implementing PvE for a server? gametips *boolValue*(optional) - Is it worth enabling GameTips for messages? givemsg *boolValue*(optional) - Is it worth preventing the sending of 'Give' messages? resource_privilege *boolValue*(optional) - Is it worth preventing resource gathering in someone else's building privilege area? plant_privilege *boolValue*(optional) - Is it worth preventing the pickup of plants spawned by the server in someone else's building privilege zone? heli_damage *boolValue*(optional) - Is it worth forcibly blocking damage from the patrol helicopter to building blocks and deployables? handcuffs *boolValue*(optional) - Is it worth assigning portals(Halloween and Christmas) to the first player? portals *boolValue*(optional) - Is it worth preventing players from handcuffing others? backpack_drop *boolValue*(optional) - Is it worth preventing a backpack from dropping upon player death? laptop_damage *boolValue*(optional) - Is it worth preventing damage to the laptop of the Hackable Crate? recycler_safezone *boolValue*(optional) - Is it worth removing the penalties for recyclers in safe zones? item_pickup *boolValue*(optional) - Is it worth allowing all players to pick up items dropped by others? If enabled, personal settings will be ignored; priceformat *stringValue* - The format that will be used for prices; vehicle_marker_time *floatValue* - Vehicles - Time in seconds to display the marker when searching for a vehicle. A value of 0 disables the marker; antisleeper *floatValue* - Anti-Sleeper - Time in seconds after which a player will be killed if they disconnect while inside someone else's Building Privilege. Set to 0 to disable; randomraids *boolValue*(optional) - Is it worth enabling support for the 'Npc Random Raids' plugin? teamff *boolValue*(optional) - Is friendly fire enabled by default when creating a new team? pvpmarkers *boolValue*(optional) - PvP - Is it worth adding map markers for PvP zones? pvpmarkersname *stringValue* - PvP - Name of the map maker. loot - Manage player access to entities without restrictions: *nameOrId* - Toggle unrestricted access for the specified player; self - Toggle unrestricted access for yourself; clear - Revoke unrestricted access for all players. monument - Manage monuments: list - List of available monuments; *monumentID*/this - Instead of the monumentID, you can use the word "this", but you must be inside the monument: suffix *boolValue*(optional) - Toggle the suffix display in the monument's name; broadcast *boolValue*(optional) - Toggle notifications about monument occupancy/release; time *intValue* - Set the looting time limit for the monument in seconds; price *floatValue* - Set the cost for looting rights. A value of 0 makes the monument free; offer *floatValue* - Set the offer duration for purchasing the monument in seconds; map_mode *intValue* - Set the marker display mode on the map. 0 - disabled, 1 - enabled, 2 - enabled during PvP mode; map_circle *boolValue*(optional) - Toggle the display of the monument's circle marker on the map; pvp *boolValue*(optional) - Toggle PvP mode for the monument; pvp_delay *floatValue* - Set the PvP mode duration in seconds for players after leaving the PvP monument; bar_progress *boolValue*(optional) - Toggle between TimeProgressCounter and TimeCounter bars for the monument. perm - Manage permissions: add *permName* - Adds a new permission to the list by copying values from the first(default) permission in the list. If the permission name starts with 'realpve', it will also register a new permission; add *permName* *sourcePermName* - Adds a new permission to the list by copying values from an existing permission in the list; remove *permName* - Removes an existing permission from the list; edit *permName* - Edits a permission: queue - Toggle the permission to bypass the server queue; beds *intValue* - Restriction on the number of available beds; shelters *intValue* - Restriction on the number of available shelters; turrets *intValue* - Restriction on the number of available turrets; hackable *floatValue* - Number of seconds(0-900) to skip when opening a hackable crate; monuments *floatValue* - Price multiplier for monuments; events *floatValue* - Price multiplier for vanilla events; rb_limit *intValue* - Restriction on the number of raid bases available simultaneously; rb_mult *floatValue* - Price multiplier for raid bases; vehicles *vehType* - Vehicles settings: limit *intValue* - Limit on the number of available vehicles by type; price *floatValue* - Price for registering a vehicle by type. clear - Removes all permissions from the list except the first one. pickup - Manage access to picking up another player's items from the ground: *nameOrId* - Toggle access to picking up a specific player's items from the ground; clear - Revoke access for all players to pick up items from the ground. share - Manage access to looting entities by other players(outside of the team): status *entityID*(optional) - Display information about the settings of the entity you are looking at or the one you specified; add *nameOrID* *entityID*(optional) - Add the specified player to the entity list you are looking at or the one you specified; remove *nameOrID* *entityID*(optional) - Remove the specified player from the entity list you are looking at or the one you specified; toggle *entityID*(optional) - Toggle the entity list you are looking at or the one you specified; delete *entityID*(optional) - Delete the settings for the entity you are looking at or the one you specified; clear *nameOrID*(optional) - Delete the settings for all entities or all entities of the specified player. tc - Manage building privilege: add self/*entityID* *nameOrID*(optional) - Add yourself or a specified player to the building privilege of the area you or the specified entity are in; remove self/*entityID* *nameOrID*(optional) - Remove yourself or a specified player from the building privilege of the area you or the specified entity are in; clear self/*entityID* - Clear the list of authorized players in the building privilege of the area you or the specified entity are in; info self/*entityID* - Get information about the building privilege of the area you or the specified entity are in. vehicle - List of all available vehicle types: types - List of available vehicle types. Example: /realpve pickup /realpve vehicle find *netID* /realpve team ff /adminpve perm add realpve.vip2 /adminpve perm add realpve.vip2 realpve.vip /adminpve perm edit realpve.vip2 queue true /adminpve perm edit realpve.vip2 vehicles horse limit 5 /adminpve monument list /adminpve monument *monumentID* pvp /adminpve monument *monumentID* price 7.5 /adminpve loot iiiaka /adminpve pickup iiiaka /adminpve tc info self /adminpve tc info 6959689 /adminpve vehicle types This plugin provides the ability to claim vehicles, thereby preventing theft and griefing from other players. In permissions, you can set the price and quantity restrictions for each type of vehicle, ensuring flexible customization according to your preferences. An assigned vehicle can't be damaged, looted or pushed by other players, but it can be pushed if it is within someone else's Building Privilege. File location: *SERVER*\oxide\data\RealPVE\MonumentConfig.json Default: https://pastebin.com/XY1d9YaM This plugin introduces queue system and loot purchases for monuments. You can customize the price and time for looting for each monument. Within monuments, only the "Looter" and his friends have the ability to loot, pick up items or damage entities. Additionally, NPCs and animals within monuments do not aggress against other players and do not receive damage from them. If a player dies within the monument, they will have a grace period to return. This allows players to safely loot monuments without fear of griefing. Example of monument configuration: "ferry_terminal_1": { "Type(This parameter is just a hint. Changes won’t have any effect)": "RadTown", "Is it worth displaying the suffix(if any) in the monument's name?": true, "Is it worth notifying all players about the occupation/release of the monument?": true, "The cost for the right to loot the monument. A value of 0 makes the monument free": 15.0, "The time in seconds(1-3600) given for looting the monument": 900, "The time in seconds(1-15) given to make a decision to purchase the monument": 5.0, "Map marker display mode: 0 - disabled, 1 - enabled, 2 - enabled during PvP mode": 1, "Is it worth creating a circle in the map marker?": true, "PvP - Is PvP enabled at this monument? If so, players will be able to kill each other and loot will be publicly accessible": false, "PvP - The time in seconds(0-60) during which the player retains PvP mode after leaving the PvP monument": 10.0, "Is it worth using a progress bar for bars with a counter?": true, "Settings for the status bar": { "Order": 10, "Height": 26, "Main_Color(Hex or RGBA)": "#FFBF99", "Main_Transparency": 0.8, "Main_Material": "", "Image_Url": "https://i.imgur.com/awUrIwA.png", "Image_Local(Leave empty to use Image_Url)": "RealPVE_ferry_terminal_1", "Image_Sprite(Leave empty to use Image_Local or Image_Url)": "", "Image_IsRawImage": false, "Image_Color(Hex or RGBA)": "#FFDCB6", "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": 0.0, "Image_Outline_Distance": "0.75 0.75", "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", "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)": "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": 0.0, "SubText_Outline_Distance": "0.75 0.75" }, "Settings for the progress status bar": { "Main_Color(Hex or RGBA)": "1 1 1 0.15", "Main_Transparency": 0.15, "Progress_Reverse": true, "Progress_Color": "#FFBF99", "Progress_Transparency": 0.7, "Progress_OffsetMin": "0 0", "Progress_OffsetMax": "0 0" } } Type - This field serves only as an indicator for you. The changes won't have any impact; ShowSuffix - Suffix display. Some monuments (for example Warehouses) have suffixes in the name, like "Warehouse #12"; Broadcast - Enabling or disabling broadcasts when a monument is occupied or vacated; LootingTime - Time allocated for looting the monument; Price - The price for which you can start looting the monument. 0 means looting is free; BarSettings - Settings for the Advanced Status Bar. You can also choose the types of monuments by specifying them under the "List of tracked types of monuments" section. A list of all available types can be viewed on the MonumentsWatcher's page in the "Developer API" section. "List of tracked types of monuments": [ "RadTown", "RadTownWater", "RadTownSmall", "TunnelStation", "Custom" ] Events, similar to monuments, offer the opportunity to claim events. All events are configured in the config file under the "Settings for the events" section. You can customize the price of looting and looting attempts(deaths, including friends). Just like in monuments, only the "Looter" and his friends have the ability to loot and damage entities. Additionally, in events, NPCs do not aggress against other players. If a player(including friends) exceeds the death limit, the event became free, thereby providing other players with the opportunity to claim the event. Example of event configuration: { "Is it worth enabling forced auto-buy for vanilla events where the final price is greater than 0?": false, "Settings for the PatrolHelicopter events": { "IsEnabled": true, "Time in seconds (1-15) given to respond for purchasing this event. Note: This is shown to everyone who deals damage, and the first person to buy it will claim it": 5.0, "Is it worth removing fire from crates?": true, "The price to claim the event. A value of 0 means it's free": 50.0, "The number of deaths after which the event becomes public. A value of 0 disables the limit": 5, "The time in seconds for which the event is locked to the player. A value of 0 disables the time limit": 1800.0 }, "Settings for the BradleyAPC events": { "IsEnabled": true, "Time in seconds (1-15) given to respond for purchasing this event. Note: This is shown to everyone who deals damage, and the first person to buy it will claim it": 5.0, "Is it worth removing fire from crates?": true, "The price to claim the event. A value of 0 means it's free": 50.0, "The number of deaths after which the event becomes public. A value of 0 disables the limit": 5, "The time in seconds for which the event is locked to the player. A value of 0 disables the time limit": 1800.0 }, "Version": { "Major": 0, "Minor": 1, "Patch": 0 } } Price - The price to claim the event. 0 means looting is free; DeathLimit - Limit of deaths after which the event becomes free. File location: *SERVER*\oxide\data\RealPVE\NewbieConfig.json Default: https://pastebin.com/QHZCqpji An example of an item list given for the main inventory: "List of items for the main inventory": [ { "ShortName": "note", "Slot": 0, "Amount": 1, "SkinID": 0, "Text": "MsgNoteText" } ] P.S. In the Text field, you need to specify the language key. Or, you can just write any text, but there won't be a translation of the text. File location: *SERVER*\oxide\data\RealPVE\RaidableBasesConfig.json Default: https://pastebin.com/rpDng7Fd Integration with the RaidableBases plugin does not restrict its functionality in any way. On the contrary, it adds an anti-grief system that protects bases from malicious players. In raid bases, NPCs and other entities can only receive damage from the raid owner or their friends; Turrets and traps do not aggress against outsiders; You can customize the price of claiming to each difficulty and set individual discounts for each permission. You can still purchase raid bases using the /buyraid command. Raid bases without owners(buyable, maintained, manual and scheduled) can be bought for a price set in the configuration file or assigned to the first player who enters its radius, if the final price(price * discount) less or equals to 0. Additionally, as a bonus, upon buying this plugin, you receive 5 free bases for 3 difficulty levels, along with configured loot for them. [PluginReference] private Plugin RealPVE; There are 6 universal hooks that the plugin is subscribed to, the use of which allows interaction with PVP in various PVE plugins: OnPlayerEnterPVP OnPlayerExitPVP OnEntityEnterPVP OnEntityExitPVP CreatePVPMapMarker DeletePVPMapMarker OnPlayerEnterPVP: Used to add a player to PVP mode/zone. To call the OnPlayerEnterPVP hook, you need to pass 2 parameters: <BasePlayer>player - The player to add to PVP; <string>zoneID - A unique identifier for your PVP zone. This parameter is very important because a player can be in multiple PVP zones at the same time and passing the zoneID in this case allows for correct processing of the player's location within them. Interface.CallHook("OnPlayerEnterPVP", player, "*Your unique zone identifier*");//Calling the OnPlayerEnterPVP hook to tell PVE plugins that the player needs to be added to the specified PVP zone. OnPlayerExitPVP: Used to remove a player from PVP mode/zone. Calling this hook guarantees the player’s removal from the specified PVP zone, but does not guarantee the removal from PVP mode, as there may be other zones in addition to yours. Also, when a player dies, they are automatically removed from all PVP zones. To call the OnPlayerExitPVP hook, you need to pass 3 parameters, 1 of which is optional: <BasePlayer>player - The player to remove from PVP; <string>zoneID - A unique identifier for your PVP zone; <float>pvpDelay - Optional. When the player exits your PVP zone, you can also pass the PVP delay time. However, if the player still has other active PVP zones, your PVP delay will not take effect. Interface.CallHook("OnPlayerExitPVP", player, "*Your unique zone identifier*", 10f);//Calling the OnPlayerExitPVP hook to tell PVE plugins that the player needs to be removed from the specified PVP zone, with the pvpDelay(10 seconds) specified if the player no longer has any active PVP zones. OnEntityEnterPVP: Used to add an entity to PVP mode/zone. In the case of RealPVE, this hook is only necessary to add entities with an owner(player) to a PVP, allowing other players to interact with them, such as a player's corpse after death(PlayerCorpse) or a backpack after the corpse disappears(DroppedItemContainer). To call the OnEntityEnterPVP hook, you need to pass 2 parameters: <BaseEntity>entity - The entity to add to PVP; <string>zoneID - A unique identifier for your PVP zone. Interface.CallHook("OnEntityEnterPVP", entity, "*Your unique zone identifier*");//Calling the OnEntityEnterPVP hook to tell PVE plugins that the entity needs to be added to the specified PVP zone. OnEntityExitPVP: Used to remove an entity from PVP mode/zone. When an entity dies, it is automatically removed from all PVP zones. To call the OnEntityExitPVP hook, you need to pass 3 parameters, 1 of which is optional: <BaseEntity>entity - The entity to remove from PVP; <string>zoneID - A unique identifier for your PVP zone; <float>pvpDelay - Optional. When the entity exits your PVP zone, you can also pass the PVP delay time. However, if the entity still has other active PVP zones, your PVP delay will not take effect. Interface.CallHook("OnEntityExitPVP", entity, "*Your unique zone identifier*", 10f);//Calling the OnEntityExitPVP hook to tell PVE plugins that the entity needs to be removed from the specified PVP zone, with the pvpDelay(10 seconds) specified if the entity no longer has any active PVP zones. CreatePVPMapMarker: Used to create a map marker for the PVP zone. To call the CreatePVPMapMarker hook, you need to pass 5 parameters, 2 of which is optional: <string>zoneID - A unique identifier for your PVP zone; <Vector3>pos - The position of your PVP zone; <float>radius - The radius of the circle for your PVP zone; <string>displayName - Optional. The display name for the map marker; <BaseEntity>entity - Optional. The entity to which the map marker should be attached. Interface.CallHook("CreatePVPMapMarker", "*Your unique zone identifier*", pos, 25f, "ATTENTION! This is a PVP zone!");//Calling the CreatePVPMapMarker hook to tell PVE plugins to create a map marker for the specified zone, at the specified position with the given radius, but without specifying a parent entity. DeletePVPMapMarker: Used to delete a map marker for the PVP zone. To call the DeletePVPMapMarker hook, you need to pass only 1 parameter: <string>zoneID - A unique identifier for your PVP zone. Interface.CallHook("DeletePVPMapMarker", "*Your unique zone identifier*");//Calling the DeletePVPMapMarker hook to tell PVE plugins to delete a map marker for the specified zone. There are 5 hooks that the plugin calls: OnPlayerPVPDelay OnPlayerPVPDelayed OnPlayerPVPDelayRemoved OnZoneStatusText CanRedeemKit OnPlayerPVPDelay: Called when a player exits the last active PVP zone, allowing other plugins to overwrite the value for pvpDelay. Returning a float value allows changing the pvpDelay for the player. A value less than zero disables the pvpDelay. When calling the OnPlayerPVPDelay hook, 3 parameters are passed: <BasePlayer>player - The player to whom the pvpDelay is applied; <float>pvpDelay - The initial value of pvpDelay; <string>zoneID - A unique identifier of PVP zone. object OnPlayerPVPDelay(BasePlayer player, float pvpDelay, string zoneID) { Puts($"Attempting to set a PvP delay of {pvpDelay} seconds for player {player.displayName} in zone {zoneID}!"); if (zoneID == "*Your unique zone identifier*") { return 15f;//Overriding the values for pvpDelay } return null;//Leave unchanged } OnPlayerPVPDelayed: Called after the PVP delay has been set for the player. When calling the OnPlayerPVPDelayed hook, 3 parameters are passed: <BasePlayer>player - The player to whom the pvpDelay is applied; <float>pvpDelay - The value of pvpDelay; <string>zoneID - A unique identifier of PVP zone. void OnPlayerPVPDelayed(BasePlayer player, float pvpDelay, string zoneID) { Puts($"A PvP delay of {pvpDelay} seconds has been set for player {player.displayName} in zone {zoneID}!"); } OnPlayerPVPDelayRemoved: Called when the PVP delay is removed from the player after they enter a PVP zone with an active PVP delay. When calling the OnPlayerPVPDelayRemoved hook, only 1 parameter is passed: <BasePlayer>player - The player from whom the PVP delay has been removed. void OnPlayerPVPDelayRemoved(BasePlayer player) { Puts($"PVP delay has been removed for player {player.displayName} as they entered a PVP zone!"); } OnZoneStatusText: Called when the text with the nice name for the specified zone is needed, to be displayed in the status bar. When calling the OnZoneStatusText hook, 2 parameters are passed: <BasePlayer>player - The player for whom the nice name for the zone is being requested; <string>zoneID - A unique identifier of PVP zone. object OnZoneStatusText(BasePlayer player, string zoneID) { Puts($"Text for the status bar is required for zone {zoneID}"); if (zoneID == "*Your unique zone identifier*") { return lang.GetMessage("*langKey*", this, player.UserIDString);//<string>Overriding the value for the status bar text } return null;//Leave unchanged } CanRedeemKit: Called before giving the starter kit, in the OnDefaultItemsReceive hook. A non-zero value cancels this action. When calling the CanRedeemKit hook, only 1 parameter is passed: <BasePlayer>player - The player to whom the kit is being attempted to be given. object CanRedeemKit(BasePlayer player) { Puts($"Attempting to give the kit to player {player.displayName}!"); if (player.IsAdmin) { return false;//Cancel the action } return null;//Leave unchanged }$39.99- 45 comments
- 1 review
-
- 3
-
-
- #rust
- #real
-
(and 56 more)
Tagged with:
- #rust
- #real
- #pve
- #pvp
- #solo
- #build
- #friendly
- #raid
- #npc
- #monument
- #monuments
- #loot
- #looting
- #farm
- #newbie
- #custom
- #bar
- #ui
- #cui
- #panel
- #vehicle
- #claim
- #limit
- #limits
- #sleeping
- #bag
- #sleeping bag
- #bed
- #shelter
- #permission
- #permissions
- #vip
- #economy
- #economics
- #rad
- #town
- #radtown
- #queue
- #bypass
- #vehicles
- #raidable
- #base
- #bases
- #raidablebases
- #raider
- #raiders
- #humannpc
- #event
- #events
- #copy
- #paste
- #copypaste
- #plugin
- #plugins
- #umod
- #oxide
- #carbon
- #iiiaka
-
Version 1.0.3
1,877 downloads
SkillTreeItems adds 2 item types into loot containers on your server. Research Notes: will provide the player with an injection of xp equal to the amount specified in the items name. Tome of skill points: will award the player with skill points equal to the amount specified in the items name. The plugin allows you to create your own versions of the items, and has a number of commands available that should work with other plugins. skilltreeitems.use - required to consume the items and find them in loot containers. skilltreeitems.admin - required to use the spawn commands. Command: givexpitem Type: Chat Parameters: <amount> <Skin ID> <displayName> Example: givexpitem 1500 2863540162 research notes - Generates an item that can be redeemed for 1500 experience Command: givespitem Type: Chat Parameters: <amount> <Skin ID> <displayName> Example: givespitem 2 2863540162 tome of skill points - Generates an item that can be redeemed for 2 skill points Command: givespitemto Type: Chat/Console Parameters: <target ID> <amount> <skin ID> <displayName> Example: givespitemto 76561197988695317 3 2863540162 tome of skill points - Generates an item that can be redeemed for 2 skill points and gives it to target ID. Command: givexpitemto Type: Chat/Console Parameters: <target ID> <amount> <skin ID> <displayName> Example: givexpitemto 76561197988695317 1500 2863540162 tome of skill points - Generates an item that can be redeemed for 1500 experience and gives it to target ID. Command: giverandomxpitem Type: Chat/Console Parameters: <target ID> Example: giverandomxpitem 76561197988695317 - Generates a random item from the xp items listed in the config and gives it to Target ID. Command: giverandomspitem Type: Chat/Console Parameters: <target ID> Example: giverandomspitem 76561197988695317 - Generates a random item from the skill points items listed in the config and gives it to Target ID.Free -
Version 1.0.7
207 downloads
Hardy Planters creates customizable planter boxes that do not require water, sunlight, fertilizer or temperature to grow. The plugin allows server owners to create their own profiles for planter boxes, allowing for the modification of overall quality and growth gene multiplier, directly affecting how quickly all plants will grow. This allows for some unnaturally fast plant growth, if set above the default value. The plugin works by preventing the default logic on the planter boxes, and instead adds it's own behavior to control it. It is compatible with servers that adjust the "planttick" and "planttickscale" convars as well. The following video show cases and explains how the plugin's functionality. Command (chat): giveplanters Parameters: Nil Description: Gives the user one of each planterbox from the config Command (console): givehardyplanter Parameters: <target player ID or name> <profile skin ID or display name> Description: Gives the target player a planterbox that matches the specified profile. Useful in shops etc. hardyplanters.admin - Required to use the commands. hardyplanters.use - Required to find the planter boxes in loot containers.$9.99 -
Version 2.1.0
19 downloads
LootSpawnerPlus is an advanced, performance-optimized Rust plugin designed to make loot spawning more dynamic and customizable. With this plugin, server admins can easily create and manage loot spawn points directly through a clean and intuitive user interface (UI). Whether you need random quantities, random intervals, or a combination of both, LootSpawnerPlus gives you full control with zero memory leaks and excellent performance. Key Features • Full UI Management: Manage all loot spawn configurations directly from the in-game UI. No need for complex commands or editing files manually! • Random Quantity & Interval: Choose whether your loot spawns at random quantities, random intervals, or both. Customize the behavior to suit your server's needs. • Easy Configuration: Spawn loot at specific locations and set timers and quantities, all with just a few clicks. • Performance Optimized: LootSpawnerPlus is designed with efficiency in mind, ensuring your server stays lag-free even with numerous spawn points. • Memory Leak-Free: Enjoy a smooth, stable experience with zero memory leaks. • Simple Command: Use the command /lootspawnerplus to access to the UI and manage all spawn settings. How It Works Once installed, admins can configure loot spawns using a highly intuitive UI system. Adjust settings like: • Spawn Name • Item Name • Position (X, Y, Z) • Quantity: Set a fixed amount or enable random quantities for a more dynamic loot experience. • Interval: Set a fixed spawn interval or enable random intervals for unpredictability. Why LootSpawnerPlus? • Flexibility: Control over both random intervals and quantities means you can fine-tune loot spawning to create the perfect gameplay experience. • Performance: The plugin is crafted with high performance in mind, ensuring that even with many loot spawns, server performance is never compromised. • No Memory Leaks: Say goodbye to memory leaks! LootSpawnerPlus ensures your server runs smoothly over time. Command /lootspawnerplus - Open the loot spawn UI and manage spawn points. Make loot management on your Rust server easier, more dynamic, and more efficient with LootSpawnerPlus! Example Config: { "Spawn1": { "Interval": 30.0, "IsEnabled": true, "IsRandomInterval": true, "IsRandomQuantity": false, "ItemName": "ammo.rifle", "Position": { "x": 0.0, "y": 0.0, "z": 0.0 }, "Quantity": 16, "RandomIntervalMax": 60.0, "RandomIntervalMin": 30.0, "RandomQuantityMax": 60, "RandomQuantityMin": 10, "SpawnName": "Spawn1" } }$14.99 -
Version 1.8.0
12,262 downloads
New Year Update The New Year is coming and I have prepared for you a new preset customization for the train!After installing the update, customization will be automatically applied to all cars in the configuration of the armored train. To disable this, make the "Customization preset" parameter empty in the config. You can also disable the customization of certain wagons or change the customization of the NPCs in the file oxide/data/ArmoredTrain/NewYear New Year's map from the video: Halloween Update Have you already prepared your server for Halloween? On the eve of the Halloween Rust update, I have prepared for customization of all armored train cars. After installing the update, customization will be automatically applied to all cars in the configuration of the armored train. To disable this, make the "Customization preset" parameter empty in the config. This plugin will add an armored train to your server, which can travel both in the subway and by rail. It can consist of any number of wagons. A helicopter can accompany it. Bradley, npc, turrets, simsites can be installed on the train. The plugin allows you to create any number of train presets, for which the order of wagons, the helicopter preset, the probability of spawn and the duration of patrolling can be specified. Each wagon or locomotive can be configured separately. Any speed can be set by the locomotive.If there is no spawn of trains on the surface on your custom map, read the section “Custom spawn points” Custom spawn points If you are using a custom map in which there are no spawn trains on the surface, but there is a railway, then for the train to work on the surface, you need to add custom spawn points of the train. Instruction: Stand at the point where you want the train to spawn Enter the command /atrainpoint If you receive a message that a point has been created, enable “Use custom spawn coordinates [true/false]” in config For correct operation, it is recommended to create several spawn points of the train Chat commands (only for administrators) /atrainstart– launches the event in a random configuration /atrainstartunderground - forcibly launches an event underground /atrainstartaboveground - forcibly launches an event aboveground /atrainstart <trainPresetName> – launches the event in the <trainPresetName> configuration /atrainstartunderground <trainPresetName> /atrainstartaboveground <trainPresetName> /atrainstop– stops the event /atrainpoint– creates a custom spawn point of the train in your position Console commands (RCON only) atrainstart– launches the event in a random configuration atrainstartunderground - forcibly launches an event underground atrainstartaboveground - forcibly launches an event aboveground atrainstart <trainPresetName> – launches the event in the <trainPresetName> configuration atrainstartunderground <trainPresetName> atrainstartaboveground <trainPresetName> atrainstop – stops the event Config en – example of plugin configuration in English ru – example of plugin configuration in Russian Dependencies (optional, not required) True PVE PveMode GUI Announcements Notify DiscordMessages AlphaLoot CustomLoot Economics Server Rewards IQEconomic Api bool IsArmoredTrainActive() bool StopArmoredTrain() bool StartArmoredTrainEvent() bool EndArmoredTrainEvent() bool IsTrainBradley(uint netID) bool IsTrainHeli(uint netID) bool IsTrainCrate(uint netID) bool IsTrainSamSite(uint netID) bool IsTrainWagon(uint netID) bool IsTrainTurret(uint netID) Vector3 ArmoredTrainLocomotivePosition() Hooks OnArmoredTrainEventStart OnArmoredTrainEventStop Contact me in Discord: Adem#955$29.99 -
Version 1.2.14
1,483 downloads
Experience the thrill of high-seas plunder with "Tugboat Pirates". Encounter a Tugboat, brimming with NPC pirates protecting their valuable loot. Engage in intense battles, eliminate the captain for an access code, and seize the treasure. Features Tugboat with Pirate NPCs and loot patrols the ocean Kill the captain to get access to the loot room Fully configurable boat interior Boat location marked on the map Fully customizable NPCs (you can even give them rocket launchers in their kits) Event starts automatically (configurable time, can be disabled) Announcements via gametip and/or chat NPC are turret NPC that do not move from their station on the Tugboat Door code of the loot room can be found in the captain's corpse (pirate quotes can be changed in the config) Commands All Commands require the admin permission /tugboatstart - Manually start the event /tugboatstop - Manually end the event Hooks (void) OnTugboatPiratesStarted() // Called when the event has started (void) OnTugboatPiratesEnded() // Called after the event has ended Permissions tugboatpirates.admin - Required to use admin commands Configuration { "Time between events (minutes, set to -1 to disable scheduled events)": 60, "Event duration (seconds)": 3600, "Show toast when event starts": true, "Announce event in chat": true, "Boat leave time before despawning (seconds)": 120, "Time before boat despawn when captain is killed (seconds)": 1200, "Boat configurations": [ { "Location offset (used when spawning multiple boats)": { "x": 0.0, "y": 0.0, "z": 0.0 }, "Npc profile for captain (must be a valid profile)": "captain", "Npc spawn locations and profiles": { "back_right": "pirate_lr", "back_left": "pirate_lr", "upper_front_right": "pirate_lr", "upper_front_left": "pirate_lr", "upper_back_right": "pirate_lr", "upper_back_left": "pirate_lr", "roof_back": "pirate_lr", "entrance_right": "pirate_lr", "entrance_left": "pirate_lr", "roof_right": "pirate_lr", "roof_left": "pirate_lr", "front": "pirate_lr", "right": "pirate_mp5", "left": "pirate_mp5" }, "Interior objects (crates, decoration, etc.)": [ { "Prefab path": "assets/prefabs/deployable/chinooklockedcrate/codelockedhackablecrate.prefab", "Rotation": 180.0, "Position on boat": { "x": 0.0, "y": 2.0, "z": 4.2 }, "Skin id": 1394363785, "Loot profile (only for crates, leave empty for default loot)": "" }, // Removed some lines for readability reasons ] } ], "Npc profiles": { "pirate_lr": { "name": "Pirate", "health": 200.0, "enableRadio": true, "senseRange": 50.0, "visionCone": 135.0, "damageScale": 1.0, "memoryDuration": 60.0, "lootProfile": "pirate", "kit": "", "Clothing items": [ { "shortName": "hat.boonie", "amount": 1, "skinId": 965553937 }, { "shortName": "hoodie", "amount": 1, "skinId": 2984978438 }, { "shortName": "pants", "amount": 1, "skinId": 2984977257 }, { "shortName": "attire.hide.boots", "amount": 1, "skinId": 861468674 } ], "Belt items": [ { "shortName": "rifle.lr300", "amount": 1, "skinId": 0 } ] }, "pirate_mp5": { "name": "Pirate", "health": 150.0, "enableRadio": true, "senseRange": 50.0, "visionCone": 135.0, "damageScale": 1.0, "memoryDuration": 60.0, "lootProfile": "pirate", "kit": "", "Clothing items": [ { "shortName": "hat.boonie", "amount": 1, "skinId": 965553937 }, { "shortName": "hoodie", "amount": 1, "skinId": 2984978438 }, { "shortName": "pants", "amount": 1, "skinId": 2984977257 }, { "shortName": "attire.hide.boots", "amount": 1, "skinId": 861468674 } ], "Belt items": [ { "shortName": "smg.mp5", "amount": 1, "skinId": 0 } ] }, "captain": { "name": "Captain", "health": 100.0, "enableRadio": false, "senseRange": 0.0, "visionCone": 0.0, "damageScale": 1.0, "memoryDuration": 0.0, "lootProfile": "pirate", "kit": "", "Clothing items": [ { "shortName": "hat.boonie", "amount": 1, "skinId": 965553937 }, { "shortName": "tshirt", "amount": 1, "skinId": 811762477 }, { "shortName": "pants.shorts", "amount": 1, "skinId": 849256923 }, { "shortName": "attire.hide.boots", "amount": 1, "skinId": 861468674 } ], "Belt items": [ { "shortName": "mace.baseballbat", "amount": 1, "skinId": 0 } ] } }, "Loot profiles": { "crate_2": [ { "Short name": "scrap", "Min amount": 2, "Max amount": 20, "Chance": 1.0, "Skin id": 0 }, { "Short name": "metal.refined", "Min amount": 4, "Max amount": 8, "Chance": 0.5, "Skin id": 0 }, { "Short name": "gears", "Min amount": 1, "Max amount": 3, "Chance": 0.2, "Skin id": 0 }, { "Short name": "sewingkit", "Min amount": 1, "Max amount": 3, "Chance": 0.2, "Skin id": 0 }, { "Short name": "rope", "Min amount": 1, "Max amount": 3, "Chance": 0.2, "Skin id": 0 }, { "Short name": "sheetmetal", "Min amount": 1, "Max amount": 2, "Chance": 0.2, "Skin id": 0 }, { "Short name": "grenade.molotov", "Min amount": 1, "Max amount": 2, "Chance": 0.1, "Skin id": 0 }, { "Short name": "grenade.f1", "Min amount": 1, "Max amount": 4, "Chance": 0.1, "Skin id": 0 }, { "Short name": "telephone", "Min amount": 1, "Max amount": 1, "Chance": 0.1, "Skin id": 0 }, { "Short name": "multiplegrenadelauncher", "Min amount": 1, "Max amount": 1, "Chance": 0.1, "Skin id": 0 } ], "pirate": [ { "Short name": "scrap", "Min amount": 2, "Max amount": 6, "Chance": 1.0, "Skin id": 0 }, { "Short name": "bottle.vodka", "Min amount": 1, "Max amount": 1, "Chance": 0.7, "Skin id": 0 }, { "Short name": "pistol.eoka", "Min amount": 1, "Max amount": 1, "Chance": 0.2, "Skin id": 0 }, { "Short name": "ammo.handmade.shell", "Min amount": 5, "Max amount": 10, "Chance": 0.2, "Skin id": 0 }, { "Short name": "rope", "Min amount": 1, "Max amount": 3, "Chance": 0.3, "Skin id": 0 }, { "Short name": "sewingkit", "Min amount": 1, "Max amount": 2, "Chance": 0.3, "Skin id": 0 } ] }, "Priate quotes (inluded in captain's note)": [ "If rum can’t fix it, ye are not using enough rum.", "But… why is the rum gone?", "Be who you arrrr...", "All for rum and rum for all!", "Land was created to provide a place for boats to visit.", "If ye can read this ye be stupid." ] }$21.00 -
Version 1.1.3
41 downloads
Allows you to restrict certain commands and actions for admins, monitor their activities, and prevent admin abuse. Features Command Blocking: Prevents specified commands from being executed by certain admins. Action Blocking: Disables interactions like looting, building, or interacting with vehicles, cupboards, and more. Team Management: Manage the admins team and their permissions. Anti-Abuse: Detects abusive behavior with configurable actions such as kick or ban. Action Logging: Logs movements and interactions. Permissions adminrestrictions.limitactions - limit the admin actions. adminrestrictions.ignore - ignores a specific admin. Configuration { "Commands Block": { "Enable commands blocking": false, "Commands list": [ "server.stop", "server.hostname", "server.description", "server.restart", "server.quit", "server.url", "kickall", "ownerid", "moderatorid" ], "Log without blocking": false, "Print to Console": false, "Log to File": false }, "Actions Block": { "Enable actions blocking": false, "Actions": { "Damage": { "Block Action": false, "Enable Discord Logging": false }, "Loot": { "Block Action": false, "Enable Discord Logging": false }, "Pickups": { "Block Action": false, "Enable Discord Logging": false }, "Building": { "Block Action": false, "Enable Discord Logging": false }, "Player Assist": { "Block Action": false, "Enable Discord Logging": false }, "Gathering/Farming": { "Block Action": false, "Enable Discord Logging": false }, "Locked Entity Usage": { "Block Action": false, "Enable Discord Logging": false }, "Cupboard Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Codelock Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Stash Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Vehicles Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Turret Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Hack Locked Crate": { "Block Action": false, "Enable Discord Logging": false }, "Bed/Sleeping Bag Renaming": { "Block Action": false, "Enable Discord Logging": false }, "Oven Toggle": { "Block Action": false, "Enable Discord Logging": false }, "Recycler Toggle": { "Block Action": false, "Enable Discord Logging": false }, "Mixing Table Toggle": { "Block Action": false, "Enable Discord Logging": false }, "Diesel Engine Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Excavator Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Vending Machine Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Entities Target": false, "Lift Usage": { "Block Action": false, "Enable Discord Logging": false }, "Buttons Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Switches Interaction": { "Block Action": false, "Enable Discord Logging": false }, "Explosives Usage": { "Block Action": false, "Enable Discord Logging": false }, "Ent Kill": { "Block Action": false, "Enable Discord Logging": false }, "Ent Lock": { "Block Action": false, "Enable Discord Logging": false }, "Ent Unlock": { "Block Action": false, "Enable Discord Logging": false } }, "Print to Console": false, "Log to File": false }, "Team Management": { "Enable team management": false, "Force admins to be in one team (overwrites all the below)": false, "Team Permissions": { "Can create team": false, "Can leave team": false, "Can invite to team": false, "Can be invited to team": false } }, "Anti Abuse": { "Enable anti-abuse": false, "Action on Detection (0 = None, 1 = Kick, 2 = Ban)": 0, "Teleport to building block zone": false, "Teleport to cargo": false, "Teleport Damage": false, "Print to Console": false, "Log to File": false }, "Actions Logger": { "Enable action logger": false, "Actions": { "Movements": false, "Door Interactions": { "Door Opened": false, "Door Closed": false, "Door Knocked": false }, "Box Looting": { "Loot Started": false, "Loot Ended": false, "Item Added": false, "Item Looted": false } }, "Ignore player-owned entities": false, "Print to Console": false, "Log to File": false }, "Discord Logging": { "Enable discord logging": false, "Webhook": "" } } Note: Anti-Abuse will disable damage and teleport the player back to his previous location upon detection.$19.99- 4 comments
-
- 2
-
-
- #admin
- #restrictions
- (and 14 more)
-
Version 1.2.3
8,050 downloads
Formerly NPCLoot. Populate npc corpses, containers, and barrels with custom loot. General info. Users can create as many loottables as required, and assign them to npc/container types by name. To create a new loot table, simply set the "lootTable" entry for some container type in config to a new made up name. This will create a new /data file of that name, which you can customise. The same loot table can be used for multiple corpse or container types. New categories and items are added automatically so, hopefully, data should never need to be wiped. Default loottable has all probabilities set to zero ( no loot) and will require customisation. I intend to provide some sample loottables for free download in the near future. Item choice is done by two-tier probability. For each spawned item a category is chosen first, based on your category probabilities, then an item is chosen from that category, based on your item probabilities for that category. See notes at bottom for further info on probabilities. Dec '23 1.2.2 update. Customloot now supports treating specific skinned items as if they are unique items. For example you could create skinned paper as ‘Money’, and it will be treated as unique, with totally separate settings and options from regular paper. The format for creating items is that you hold your skinned item and type /CustomLoot ExistingLootTable Category CustomName so, for example, if you want to skin paper with skin 012345 and use it as ‘Money’ in a loottable called ‘AirdropTable’, hold some paper with that money skin and type /CustomLoot AirdropTable Resources Money You can also specify “All” instead of a specific loottable /CustomLoot All Resources Money Optional dependencies - BotReSpawn Configuration. Global. corpseTypePerBotReSpawnProfile - true/false allowDuplicates - true/false Include_DM_Crates - true/false AllowSkinsFor - { "add", "items", "like", this" } NPC types. OilRig Excavator CompoundScientist BanditTown MountedScientist JunkPileScientist DungeonScarecrow ScareCrow MilitaryTunnelScientist CargoShip HeavyScientist TunnelDweller UnderwaterDweller Trainyard Airfield DesertScientist ArcticResearchBase LaunchSite Gingerbread ZombieHorde *if Global option 1 is true, this entry is replaced with one entry per existing BotReSpawn profile, by name. Eg, The Dome 0, Airfield 0, LaunchSite 0, etc. Container Types bradley_crate heli_crate supply_drop dm ammo dm c4 dm construction resources dm construction tools dm food dm medical dm res dm tier1 lootbox dm tier2 lootbox dm tier3 lootbox loot_barrel_1 loot_barrel_2 loot-barrel-1 loot-barrel-2 oil_barrel codelockedhackablecrate crate_basic crate_elite crate_mine crate_normal crate_normal_2 crate_normal_2_food crate_normal_2_medical crate_tools crate_underwater_advanced crate_underwater_basic foodbox minecart trash-pile-1 ...There may be more, as the plugin automatically adds new ones as they appear in-game. Options per type: "enabled": true/false (governs corpse loot-giving) "lootTable": "default" "minItems": 6 "maxItems": 6 "gunsWithAmmo": true/false "noGuns": true/false "MaxBps": 3 "WaterPreFillPercent": 20 "ClearContainerFirst": true/false Data: By default there is one data file : /data/CustomLoot/default.json If you specify a unique lootTable name for any corpse or container type, a new file will be created in the same folder, by name. Eg /CustomLoot/JunkPileLootTable.json Each data file contains: Blacklist : [] - These items will never spawn, and are removed from loottable. Setting to [] will repopulate with default blacklist. AlwaysSpawnList : [] - These items will always spawn, regardless of probabilities. allowChristmas = false allowHalloween = false allowKeycards = false By default all Christmas, Halloween and Keycard items are disabled. Items, grouped by category. *Each item has:* "probability": 5 "minStack": 10 "maxStack": 50 "blueprintChancePerfect": 0 - where applicable "skins": [] - where applicable "IncludeAllApprovedSkins" - false "MinConditionPercent": 90 - where applicable "MaxConditionPercent": 100 - where applicable Categories: Ammunition Attire Component Construction Electrical Food Fun Items Medical Misc Tool Traps Resources Weapon ...There may be more, as the plugin automatically adds new ones as they appear in-game. Options per category: "probability": 5 "allowBlueprints": true API. If the called config profile doesn't exist CustomLoot will create it under 'API'. Example call. [PluginReference] private Plugin CustomLoot; List<Item> lootcall = CustomLoot?.Call("MakeLoot", "Profile_Name"; if (lootcall is string) PrintWarning(string)lootcall); Object hooks are provided to prevent this plugin giving loot to your spawned npcs, or containers. Return non-null for the following. OnCustomLootNPC(uint) OnCustomLootContainer(uint) Notes. *Probability, in both cases above, is relative; There is no scale. If there were two categories with probabilities of 9 and 1, the first would have a 9 out of 10 chance of being picked. Probability of zero effectively means the item, or category is disabled. Categories with no enabled items will never be chosen. Their probability is irrelevant. Disabled categories will never be chosen. Their probability is irrelevant. Users should never have to manually add, or remove, items in the /data files. New items in Rust should be added automatically. The blacklist can be used to remove entries from the data file, if that's preferred. Reloading is not required to catch up with profile changes made in BotReSpawn.Free- 222 comments
- 4 reviews
-
- 10
-
-
-
Version 1.1.3
113 downloads
This plugin adds a luckyblock to the game, and when you try to open it, a random command (from config file) is executed on the server. It spawns randomly in place of regular loot. The player will also receive RP points for opening if you have the ServerRewards plugin. /lbtest - use for spawn luckyblock for test The visibility distance depends on player's OBJECT QUALITY settings Config: { "Chance to spawn instead of any spawnable loot [0 - 100]": 5, "LuckyBlock skin id [Check this - https://github.com/bmgjet/Spray-Decal-Creator]": 3141695693, "Occupied radius [New luckyblock won't spawn near the first one]": 50, "Server rewards RP for open lucky block [0 - disbale]": 100, "Block underwater spawn": true, "Block above ocean spawn [includes loot containers drifting on the surface of the ocean]": false, "Prefabs that will turns into the LuckyBlock [if the list is clear it applies to all LootContainer entities]": [], "Command events [it's uses server console so you can put there any command you want]": [ { "Server command": "luckyblock fake_explosion", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 10, "Description": "Explosion without causing damage" }, { "Server command": "luckyblock activate_booster supertea", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 5, "Description": "Applies item boosters by shortname" }, { "Server command": "luckyblock create_item rifle.lr300", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 5, "Description": "Creates an item and gives it to the player" }, { "Server command": "luckyblock air_drop", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 10, "Description": "Calls airdrop" }, { "Server command": "luckyblock spawn_entity car_2mod_01", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 5, "Description": "Spawns an entity by shortprefab" }, { "Server command": "luckyblock death_square", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 10, "Description": "Hides the player in a deadly cube from which there is no exit, only death." }, { "Server command": "luckyblock bears_attack", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 10, "Description": "Spawns 4 bears around the player" }, { "Server command": "luckyblock fireball_circle", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 5, "Description": "Spawns a circle of fireballs" }, { "Server command": "luckyblock full_heavy_armor", "Weight [directly affects the chance of this command being triggered | 0 - disabled]": 5, "Description": "Places heavy armor on the player without the ability to remove it for 30 seconds" } ] }$4.99- 37 comments
-
- 3
-
-
-
- #luckyblock
- #tofurahie
-
(and 3 more)
Tagged with:
-
Version 2.1.7
10,565 downloads
Say goodbye to configuration and data files. This plugin lets yo edit the loot of (almost) every lootable object directly over a custom UI. It also includes a graphical stack size editor thus making it ideal for anyone who is not familiar with editing config files. Do not use in combination with any other stack size controller or loot plugin. NEW with version 2.1.7: Direct Loot Refresh Players with the permission loottable.test can use a button to directly refresh the loot in the crate they are currently looting. Features: User friendly GUI - no need to edit config files Loot configuration for every prefab in the game Stack size controller supports individual stack sizes for every prefab Support for custom items Support for third party plugins Fully backwards compatible with version 1.x.x Default config included for every prefab Configuration for Smelting Speed, Recycler Speed and Efficiency Supply Drop configuration Supported prefabs: Crates, Barrels NPCs Trees, Ores, Animal corpses Excavator, Quarries Christmas Presents, Eggs, Loot Bags Collectables like Hemp, Corn, etc. Additional Configuration: Smelting Speed Supply Drop Recycler Speed / Efficiency Commands: loottable - Open the Loottable UI loottable reload - Manually refresh loot Permission: loottable.edit - Required to use the Loottable UI Required Dependencies (Oxide only): Image Library: https://umod.org/plugins/image-library Translations: This plugin fully supports translation. Out of the box only english is included. For item names to be translated, the plugin https://umod.org/plugins/rust-translation-api is required. English translations are located in /oxide/lang/en/Loottable.json For Developers: Loot Api: Developers can use the Loot Api to register loot profiles for custom NPCs or other plugin related loot. It is highly recommended to use one of the provided wrappers to access the api. Both wrappers offer the same functionality. Non-static (with documentation): https://gist.github.com/TheKiiiing/53a37e8bbb48d8a24c8e8b21b9da37ac Static (with documentation): https://gist.github.com/TheKiiiing/77ee60fa5d23934fd138fde58a2b147f Loot Api Example: // This example uses the non-static version of the Loot Api private LoottableApi loottableApi; void OnServerInitialized() { loottableApi = new LoottableApi(this); timer.In(5f, () => { loottableApi.ClearPresets(); loottableApi.CreatePresetCategory("Crates"); loottableApi.CreatePreset("c_locked", "Locked Crate", "crate_hackable"); loottableApi.CreatePreset("c_elite", "Elite Crate", "crate_elite"); loottableApi.CreatePreset("c_military", "Military Crate", "crate_military"); loottableApi.CreatePreset("c_normal", "Normal Crate", "crate_normal"); loottableApi.CreatePresetCategory("NPCs"); loottableApi.CreatePreset(true, "npc_cargo", "Cargo Ship NPC", "npc_militunnel"); loottableApi.CreatePreset(true, "npc_control", "Control Center NPC", "npc_militunnel"); }); } void SpawnNpc() { // Spawn NPC here ScientistNPC npc; // Assign a loot preset to the NPC loottableApi.AssignPreset(scientist, "npc_control"); } void SpawnCrate() { // Spawn crate here LootContainer crate; // Assign a preset to the crate if (loottableApi.AssignPreset(container, "c_locked")) { // The container has been filled with loot return; } else { // The container is not handled by Loottable // Default loot logic goes here } } The resulting configuration page would look like this: Custom Items API: Developers can use the Custom Items Api to add a custom item to the Loottable item list. If an item is marked as persistent it will remain in the custom item list until it is removed by ClearCustomItems. All non-persistent items will be removed after the plugin that registered them has been unloaded. (void) AddCustomItem(Plugin plugin, int itemId, ulong skinId) (void) AddCustomItem(Plugin plugin, int itemId, ulong skinId, bool persistent) //(v1.0.27 or higher) (void) AddCustomItem(Plugin plugin, int itemId, ulong skinId, string customName) (void) AddCustomItem(Plugin plugin, int itemId, ulong skinId, string customName, bool persistent) //(v1.0.27 or higher) (void) ClearCustomItems(Plugin plugin) //(v1.0.27 or higher) Hooks: (object) OnContainerPopulate(LootContainer container) This hook is called every time a loot container is about to be populated with loot. Returning a non-null value prevents the plugin from spawning loot into that crate. (object) OnCorpsePopulate(LootableCorpse corpse) This hook is called every time an npc corpse is about to be populated with loot. Returning a non-null value prevents the plugin from spawning loot into that corpse. (object) OnCustomAirdrop(SupplySignal signal) This hook is called every time a custom supply drop is about to be delivered. Returning a non-null value will cancel the custom supply drop. Outdated documentation for Version 1: New with version 1.0.27: Custom Items can now be created and edited directly in the GUI. They can be created from any existing item and modified in the Item Select menu You can now create and load backups of your configuration. Commands (F1 or Server Console): loottable.backup load <name> - Load backup with the given name from the backups folder (will wipe your current configuration) loottable.backup create <name> - Create backup of everything with the given name Backups will be created in the data/Loottable/backups folder. To load a backup, the backup file needs to be present in that folder. When creating backups in the in-game console, the permission loottable.debug is required. IMPORTANT: DO NOT LOAD BACKUPS FORM SOURCES YOU DO NOT TRUST, they might cause harm to your server New with version 1.0.16: Custom Items: Now you can add custom items used by other plugins directly to your loot table. Other plugins can can register these items using the api (documentation below). Screenshots: Overview of crates and their current loot table Stacksize Editor Commands: loottable - Open the editor loottable refresh - Manually refresh crate loot loottable flags - List available flags (explained below) loottable flags <name> <1|0> - Enable / disable a certain flag loottable reload_vanilla_profiles - Manually re-download vanilla loot profiles (only for debuging) Permission: loottable.edit - Required to use the editor Flags: There are flags to disable some limits in the editor. Only enable these flags if you really need to as they might cause unexpected behavior of the editor. There are currently 3 flags available: Debug If enabled, the Debug flag provides more detailed information about errors and other actions in the editor. Don't enable this flag unless you want your console full of spam. UnlockGatherMultiplier allows you to use gahter multipliers less than one and higher than 1000. Note that multipliers less than one might lead to unexpected results in some cases. DisableItemLimit Probably the safest flag to use is DisableItemLimit as it simply lets you set stack sizes and every other item amount in the editor as high as 2,147,483,647 which is the biggest possible value of a 32-bit integer. UnlockFurnaceMultiplier lets you use any value as the furnace speed multiplier. Don't enable this flag unless you know what you are doing, since the default value range from 0.1 to 100 should cover most use cases and larger values might impact server performance. UnlockItemMultiplier unlocks the multiplier when multiplying a loot table. DisableStackingHooks will disable all stacking related hooks. Enable if you encounter problems when stacking items. RefreshLootOnExit controls if all crates get refreshed after closing the editor or when reloading the plugin. Enable this only for testing, there might be an increase in entities. Refer to the Commands section for more information about enableing flags. Vanilla Configurations: Since version 1.0.7 there are vanilla loot profiles available for most crates and NPCs. These profiles can be loaded using the "Load default loot table" button at the top center of the editor. DISCLAIMER: The vanilla loot profiles in the editor might not exactly match the vanilla loot distribution of the game as it uses a completely different loot distribution system than Rust. These profiles rather serve as a reference point for custom loot profiles. Important for Carbon users: In order for this plugin to work with carbon, Harmony references need to be enabled. This can be done with the following command: c.harmonyreference 1 Required Dependencies (Oxide only): Image Library: https://umod.org/plugins/image-library Custom Items API: Add a custom item to the item list. If an item is marked as persistent it will remain in the custom item list until it is removed by ClearCustomItems. All non-persistent items will be removed after the plugin that registered them has been unloaded. (void) AddCustomItem(Plugin plugin, int itemId, ulong skinId) (void) AddCustomItem(Plugin plugin, int itemId, ulong skinId, bool persistent) //(v1.0.27 or higher) (void) AddCustomItem(Plugin plugin, int itemId, ulong skinId, string customName) (void) AddCustomItem(Plugin plugin, int itemId, ulong skinId, string customName, bool persistent) //(v1.0.27 or higher) (void) ClearCustomItems(Plugin plugin) //(v1.0.27 or higher) Example: Its recommended to delay the call a little bit to make sure Loottable is loaded private void Init() { timer.In(1f, () => { Loottable?.Call("AddCustomItem", this, -946369541, 2664651800, "High Quality Fuel"); }); } Hooks: (object) OnContainerPopulate(LootContainer container) This hook is called every time a loot container is about to be populated with loot. Returning a non-null value prevents the plugin from spawning loot into that crate. (object) OnCorpsePopulate(LootableCorpse corpse) This hook is called every time an npc corpse is about to be populated with loot. Returning a non-null value prevents the plugin from spawning loot into that corpse. (object) OnCustomAirdrop(SupplySignal signal) This hook is called every time a custom supply drop is about to be delivered. Returning a non-null value will cancel the custom supply drop.$40.00- 962 comments
- 29 reviews
-
- 14
-
-
-
- #loot
- #customloot
- (and 13 more)
-
Version 1.0.9
254 downloads
This plugin adds a high-risk, high-reward element to the newly introduced Radtown Monument. This dynamic event spawns a hazardous shipping container filled with valuable loot but surrounded by dangerous radioactive material. The challenge is twofold: not only must players manage the intense radiation levels, but they must also defend the container from relentless attack drones that aim to destroy it. Key Features: Valuable Loot: The container holds rare and powerful resources, making it a highly coveted prize. Multiple drone attack waves: Drones attack in mul Intense Radiation: High levels of radiation require careful planning and protective gear to approach safely. Drone Defense: As players attempt to claim the loot, AI-controlled drones will attack the container. Players must defend it until the crate unlocks. Catastrophic Explosion: If players fail to protect the container or take too long, it will trigger a massive explosion, devastating the area and killing any nearby players. Configuration options: Drone wave count, drone count per wave Drone health and damage Container health Crate Loot and much more ... This plugin enhances the Radtown Monument with intense, timed gameplay, rewarding those who can outlast both the environment and the drones—but punishing failure with explosive consequences! Permissions: radtownevent.admin - Required to run admin commands Commands: radtown start - Start the event radtown stop - Stop the event Developer Api: void OnRadtownEventContainerDelivered() // Called when the container has been delivered and the event is ready to start void OnRadtownEventStart() // Called when the locked crate inside the container has been hacked void OnRadtownEventEnd(bool success) // Called when the event is over. Success is false when the container exploded Configuration: { "Time between events (minutes)": 60, "Crate hack time (seconds; drone waves will spawn until the crate is fully hacked)": 600, "Container health": 8000, "Time before despawn after event has been completed (seconds)": 300, "Time before despawn if event is not started (minutes)": 30, "Make event zone visible": false, "Drone wave configuration": [ { "Wave number": 1, "Preparation time before drones spawn (seconds)": 5, "Maximum number of concurrent drones": 3, "Explosive drone configuration": { "Number of attack drones to spawn (0 to disable)": 20, "Drone health": 100, "Damage per shell": 40, "Target players": false }, "Kamikaze drone configuration": { "Number of kamikaze drones to spawn (0 to disable)": 0, "Drone health": 100, "Damage on explosion": 60, "Target players": false } }, { "Wave number": 2, "Preparation time before drones spawn (seconds)": 20, "Maximum number of concurrent drones": 4, "Explosive drone configuration": { "Number of attack drones to spawn (0 to disable)": 20, "Drone health": 150, "Damage per shell": 50, "Target players": false }, "Kamikaze drone configuration": { "Number of kamikaze drones to spawn (0 to disable)": 30, "Drone health": 150, "Damage on explosion": 60, "Target players": false } }, { "Wave number": 3, "Preparation time before drones spawn (seconds)": 20, "Maximum number of concurrent drones": 5, "Explosive drone configuration": { "Number of attack drones to spawn (0 to disable)": 40, "Drone health": 200, "Damage per shell": 40, "Target players": true }, "Kamikaze drone configuration": { "Number of kamikaze drones to spawn (0 to disable)": 40, "Drone health": 200, "Damage on explosion": 60, "Target players": false } }, { "Wave number": 4, "Preparation time before drones spawn (seconds)": 20, "Maximum number of concurrent drones": 8, "Explosive drone configuration": { "Number of attack drones to spawn (0 to disable)": 40, "Drone health": 250, "Damage per shell": 70, "Target players": true }, "Kamikaze drone configuration": { "Number of kamikaze drones to spawn (0 to disable)": 40, "Drone health": 250, "Damage on explosion": 80, "Target players": true } }, { "Wave number": 5, "Preparation time before drones spawn (seconds)": 20, "Maximum number of concurrent drones": 8, "Explosive drone configuration": { "Number of attack drones to spawn (0 to disable)": 40, "Drone health": 250, "Damage per shell": 70, "Target players": true }, "Kamikaze drone configuration": { "Number of kamikaze drones to spawn (0 to disable)": 40, "Drone health": 250, "Damage on explosion": 80, "Target players": true } } ], "Locked crate loot table": { "Enabled": false, "Minimum items": 4, "Maximum items": 8, "Item list": [ { "Short name": "scrap", "Min amount": 12, "Max amount": 48, "Chance (1 = 100%)": 1.0, "Skin id": 0, "Custom name": "" } ] } }$21.00- 13 comments
- 3 reviews
-
- 2
-
-
-
Version 1.5.20
1,361 downloads
New plugin for changing item stacks and their multipliers in containers with convenient customization right in the game Commands stacks - open an UI stacks sethandstack [stack size] - set the stack size for the item in hand stacks setstack [short name] [stack size] - set the stack size for the item Permissions stacks.admin - using a plugin Config { "Commands": [ "stacks" ], "Work with Notify?": true, "Changing multiplies in containers using a hammer": false, "Default Multiplier for new containers": 1.0 } Containers Data { "assets/bundled/prefabs/static/bbq.static.prefab": { "Image": "https://i.imgur.com/L28375p.png", "Multiplier": 1.0 }, "assets/bundled/prefabs/static/hobobarrel_static.prefab": { "Image": "https://i.imgur.com/v8sDTaP.png", "Multiplier": 1.0 }, "assets/bundled/prefabs/static/recycler_static.prefab": { "Image": "https://i.imgur.com/V1smQYs.png", "Multiplier": 1.0 }, "assets/bundled/prefabs/static/repairbench_static.prefab": { "Image": "https://i.imgur.com/8qV6Z10.png", "Multiplier": 1.0 } ... Items Data [ { "ShortName": "hat.wolf", "Name": "Wolf Headdress", "Default Stack Size": 10, "Custom Stack Size": 0 }, { "ShortName": "fogmachine", "Name": "Fogger-3000", "Default Stack Size": 2, "Custom Stack Size": 0 }, { "ShortName": "strobelight", "Name": "Strobe Light", "Default Stack Size": 1, "Custom Stack Size": 0 }, { "ShortName": "kayak", "Name": "Kayak", "Default Stack Size": 1, "Custom Stack Size": 0 }, { "ShortName": "minihelicopter.repair", "Name": "MC repair", "Default Stack Size": 1, "Custom Stack Size": 0 }, { "ShortName": "scraptransportheli.repair", "Name": "ScrapTransportHeliRepair", "Default Stack Size": 1, "Custom Stack Size": 0 }, ...$19.95- 67 comments
- 9 reviews
-
- 6
-
-
-
-
- #stacks
- #chest stacks
- (and 9 more)
-
Version 1.4.7
6,717 downloads
Adds a cargo plane crash event to your server. The crash site is guarded by NPCs that patrol the area and can chase players. You can also set up custom loot using the "SimpleLootTable" plugin. Features: Support for third-party plugins Great customization options in the config Console commands: callcargoplane - force the event to start crashcargoplane - force a cargo plane to crash cpc_stop - force the event to end Chat commands(need admin privileges): showcrashzone - displays the crash area setcrashzonecenter - set the center of the crash zone to where the player is callcargoplane - force the event to start crashcargoplane - force a cargo plane to crash cpc_stop - force the event to end cpc_add_crashzone - adds a new zone at the location where the player is, can be used if you use multiple zones(you can set the name and radius - /cpc_add_crashzone "name" "radius") Hooks: void CargoPlaneCrashStarted() // called when the event starts void CargoPlaneCrashCrashed() // called when a cargo plane crashes void CargoPlaneCrashEnded() // called when the event ends CargoPlaneCrash config: { "PVE mode (crates can only be looted by the player who first dealt damage to the NPC)": false, "Give event ownership to the owner's teammates if he is no longer the owner. Only if teammates are within the event radius (for PVE mode)": true, "Radius for event(for PVE mode)": 380, "Create a dome for PVE mode": false, "Dome transparency (the higher the value, the darker the dome, recommended 4)": 4, "Time after which the owner of the event will be deleted if he left the dome or left the server (for PVE mode)": 300, "Message when a player enters the event dome(only for PVE mode if there is a dome)": "You have entered the Cargo Plane Crash Event", "Message when the event owner leaves the event dome (only for PVE mode if there is a dome)": "Return to the event dome, otherwise after 300 seconds you will no longer be the owner of this event", "Do not allow other players into the event(only for PVE mode if there is a dome) Be careful, if the crash site is near the player's base and the player is not the owner of the event, he will be ejected from his base outside the dome": false, "Message when a player is ejected from the event dome(only for PVE mode if there is a dome)": "You cannot be here, you are not the owner of this event", "Allow admin to be in event dome (only for PVE mode if there is a dome)": true, "Triggering an event by timer (disable if you want to trigger the event only manually)": true, "Time to event start(in seconds)": 3600.0, "Random time to event start": false, "Minimum time to event start(in seconds)": 600, "Maximum time to event start(in seconds)": 10800, "CargoPlane speed(recommended 4 to 6)": 5.0, "Minimum amount of online players to trigger the event": 1, "Crates amount(spawn after crash)": 1, "Crate simple loot table name(plugin SimpleLootTable is required)": "", "Minimum number of items in a crate(plugin SimpleLootTable is required)": 0, "Maximum number of items in a crate(plugin SimpleLootTable is required)": 0, "Crates lifetime(in seconds). The crate will not be destroyed if it has been activated": 3600, "Crates timer(in seconds)": 900, "Remove crates after being looted by a player(in seconds)": 300, "Airdrops amount(spawn after crash)": 1, "Airdrop simple loot table name(plugin SimpleLootTable is required)": "", "Minimum number of items in an airdrop(plugin SimpleLootTable is required)": 0, "Maximum number of items in an airdrop(plugin SimpleLootTable is required)": 0, "Airdrops lifetime(in seconds)": 3600, "Fireballs amount(spawn after crash)": 5, "Passengers amount(spawn after crash)": 2, "Explosion marker on the map(spawn after crash)": true, "Explosion marker lifetime(in seconds)": 300, "Enable signal smoke(spawn after crash)": true, "Signal smoke lifetime(in seconds, max 214)": 214, "Map size(crash zone size), you can see the zone, use the chat command /showcrashzone": 4500.0, "Starting altitude, defaults to map size, can be increased if cargo plane hits high ground(no more than 10000 recommended)": 4500.0, "Crash zone center. Use chat command /setcrashzonecenter to set to player position. You can check crash zone center, use the chat command /showcrashzone": { "x": 0.0, "y": 0.0, "z": 0.0 }, "Use multiple zones": false, "Select a zone from the list sequentially(if false, then the crash zone will be chosen randomly)": false, "Zones list": [ { "name": "0", "radius": 300, "center": { "x": -300.0, "y": 0.0, "z": 0.0 } }, { "name": "1", "radius": 200, "center": { "x": 100.0, "y": 0.0, "z": 0.0 } } ], "Event message(if empty, no message will be displayed)": "CargoPlane event started", "Crash message(if empty, no message will be displayed)": "Cargo plane crashed", "Message about coordinates(will display the coordinates of the crash site. If empty, no message will be displayed)": "", "Kit name(you can use kits for passengers if you have Kits plugin)": "", "Passenger name": "Mister bot", "NPCs amount(spawn after crash)": 2, "NPCs lifetime(in seconds)": 3600, "NPCs type(NPCs prefab, experimental setting, it is not known how the NPCs will behave) 0 - tunneldweller; 1 - underwaterdweller; 2 - excavator; 3 - full_any; 4 - lr300; 5 - mp5; 6 - pistol; 7 - shotgun; 8 - heavy; 9 - junkpile_pistol; 10 - oilrig; 11 - patrol; 12 - peacekeeper; 13 - roam; 14 - roamtethered; 15 - bandit_guard; 16 - cargo; 17 - cargo_turret_any; 18 - cargo_turret_lr300; 19 - ch47_gunner": 8, "NPCs health(0 - default)": 0, "NPCs damage multiplier": 1.0, "NPCs accuracy(the lower the value, the more accurate, 0 - maximum accuracy)": 2.0, "NPCs attack range": 75.0, "Radius of chasing the player(NPCs will chase the player as soon as he comes closer than the specified radius, must be no greater than the attack range)": 60.0, "Minimum distance to NPC damage": 75.0, "Message if the player attacks far away NPCs": "NPC is too far away, he doesn't take damage", "Kit for NPCs. The NPC will use the weapon that is in the first slot of the belt(requires Kits plugin)": "", "Default displayName for NPC(for SimpleKillFeed/DeathNotes plugin)": "Crashsite NPC", "List of displayNames for each NPC(for SimpleKillFeed/DeathNotes plugin)": [ "Crashsite NPC1", "Crashsite NPC2", "Crashsite NPC3" ], "Prohibit building near the crash site": false, "How long construction is prohibited near the crash site(in seconds)": 1800, "Event marker on the map(spawn an event marker at the crash site)": false, "Event marker name": "Cargo plane crash site", "Event marker lifetime(in seconds)": 3600, "Event marker transparency(0-1)": 0.75, "Event marker radius": 0.5, "Event marker color.R(0-1)": 1.0, "Event marker color.G(0-1)": 0.0, "Event marker color.B(0-1)": 0.0, "Do not spawn crates and NPCs when a cargo plane falls under water (if the water depth is greater than)": 0.5, "Do not choose a crash site near monuments": false }$19.99- 220 comments
- 18 reviews
-
- 17
-
-
-
-
- #event
- #cargoplane
- (and 18 more)
-
-
- #small monument
- #train station
-
(and 5 more)
Tagged with:
-
Version 1.1.5
680 downloads
Adds drones to your server. Drones can attack with grenades and shoot at players, you can destroy drones, they have loot. Drones spawn near monuments, also you can add custom spawn points. Features: Easy to set up. Excellent customization options in the config. You can customize the monuments where the drones will spawn. You can customize the contents of the drone in the config file: you can set up a list of items that will be inside you can choose drop chance (1 - 100%) you can choose skins for items You can also customize the health and respawn time of the drones. Commands(admin only): dreshowpoints - displays all spawn points on the map dreshowdrones - displays all drones on the map dreshowzone - displays nearby areas with drones drerespawndrones - respawn all drones on the map forcibly dreremovedrones - removes all drones from the map dre_removepoint - removes custom spawn point (you need to be close to it) dre_addpoint - adds a custom spawn point (at the place where you are). You can also enter the command with arguments: /dre_addpoint "name" "flightRadius" "use" Developer API: (void) DroneCustomSpawn(Vector3 position, int aggressiveness, int radius, int attackRange, int health, float speed, bool grenade, float grenDmg, bool light, string turWpn, float turDmg) Spawns a drone at the coordinates "position" aggressiveness - drone aggressiveness from 0 to 100 radius - flight radius attackRange - attack range health - drone health speed - drone speed (0.5 - 1 recommended) grenade - if "true", then the drone will attack with grenades grenDmg - grenade damage scale (0-1) light - if "true", then a spotlight will be added to the drone turWpn - short name of the weapon for the turret, if empty, the turret will not be added to the drone turDmg - turret damage scale (0-1) Config file: { "Minimum respawn time(in minutes)": 15, "Maximum respawn time(in minutes)": 30, "Drone health (hits amount)": 2, "Drone speed(0.5 - 1 recommended)": 0.7, "Grenade damage scale": 1.0, "Attack range": 40, "Drone aggressiveness, from 0 to 100 (the more, the more often the drone attacks)": 10, "Adds a searchlight for drones": false, "Adds a turret for drones": false, "Turret damage scale": 1.0, "Turret weapon short name": "pistol.revolver", "The drone will throw grenades at players": true, "Do not calculate collisions while the drone is just flying (set to true if you have problems with your server performance)": false, "Monument settings": [ { "name": "gas_station", "flightRadius": 15, "offset": { "x": 17.0, "y": 30.0, "z": 0.0 }, "use": true }, { "name": "supermarket", "flightRadius": 15, "offset": { "x": 0.0, "y": 15.0, "z": 0.0 }, "use": true }, { "name": "warehouse", "flightRadius": 15, "offset": { "x": -5.0, "y": 15.0, "z": 0.0 }, "use": true }, { "name": "water_treatment", "flightRadius": 15, "offset": { "x": -60.0, "y": 20.0, "z": 0.0 }, "use": true }, { "name": "junkyard", "flightRadius": 15, "offset": { "x": 0.0, "y": 15.0, "z": 0.0 }, "use": true }, { "name": "lighthouse", "flightRadius": 15, "offset": { "x": 0.0, "y": 35.0, "z": 40.0 }, "use": true }, { "name": "sphere_tank", "flightRadius": 15, "offset": { "x": 60.0, "y": 30.0, "z": 40.0 }, "use": true }, { "name": "harbor_1", "flightRadius": 15, "offset": { "x": 20.0, "y": 15.0, "z": 90.0 }, "use": true }, { "name": "harbor_2", "flightRadius": 15, "offset": { "x": -100.0, "y": 20.0, "z": -20.0 }, "use": true }, { "name": "desert_military_base", "flightRadius": 15, "offset": { "x": -15.0, "y": 20.0, "z": -5.0 }, "use": true }, { "name": "excavator", "flightRadius": 15, "offset": { "x": 65.0, "y": 20.0, "z": -10.0 }, "use": true }, { "name": "swamp", "flightRadius": 15, "offset": { "x": -10.0, "y": 30.0, "z": -15.0 }, "use": false }, { "name": "radtown_small", "flightRadius": 15, "offset": { "x": -5.0, "y": 30.0, "z": -5.0 }, "use": true }, { "name": "water_well", "flightRadius": 15, "offset": { "x": 0.0, "y": 30.0, "z": 0.0 }, "use": true }, { "name": "mining_quarry", "flightRadius": 15, "offset": { "x": 0.0, "y": 25.0, "z": 0.0 }, "use": false }, { "name": "satellite_dish", "flightRadius": 15, "offset": { "x": -40.0, "y": 25.0, "z": -20.0 }, "use": false }, { "name": "cave_small", "flightRadius": 15, "offset": { "x": 0.0, "y": 30.0, "z": 0.0 }, "use": false }, { "name": "cave_medium", "flightRadius": 15, "offset": { "x": 0.0, "y": 30.0, "z": 0.0 }, "use": false }, { "name": "cave_large", "flightRadius": 30, "offset": { "x": 0.0, "y": 35.0, "z": 0.0 }, "use": false }, { "name": "airfield", "flightRadius": 25, "offset": { "x": -75.0, "y": 20.0, "z": 0.0 }, "use": false }, { "name": "launch_site", "flightRadius": 15, "offset": { "x": 0.0, "y": 20.0, "z": 130.0 }, "use": false }, { "name": "powerplant", "flightRadius": 25, "offset": { "x": -75.0, "y": 20.0, "z": -40.0 }, "use": false }, { "name": "trainyard", "flightRadius": 15, "offset": { "x": -70.0, "y": 20.0, "z": 0.0 }, "use": false }, { "name": "arctic_research_base", "flightRadius": 25, "offset": { "x": 10.0, "y": 15.0, "z": -25.0 }, "use": true }, { "name": "ice_lake", "flightRadius": 15, "offset": { "x": 0.0, "y": 20.0, "z": 0.0 }, "use": false }, { "name": "military_tunnel", "flightRadius": 15, "offset": { "x": 20.0, "y": 25.0, "z": -15.0 }, "use": false }, { "name": "power_sub_big", "flightRadius": 10, "offset": { "x": 0.0, "y": 20.0, "z": 0.0 }, "use": false } ], "Custom spawn points settings": [ { "name": "point1", "flightRadius": 15, "position": { "x": 0.0, "y": 100.0, "z": 0.0 }, "use": false }, { "name": "point2", "flightRadius": 15, "position": { "x": 0.0, "y": 200.0, "z": 0.0 }, "use": false } ], "Drop items list": [ { "name": "metal.fragments", "dropChance": 100, "minAmount": 50.0, "maxAmount": 300, "skinID": 0 }, { "name": "metal.refined", "dropChance": 100, "minAmount": 5.0, "maxAmount": 10, "skinID": 0 }, { "name": "scrap", "dropChance": 100, "minAmount": 10.0, "maxAmount": 20, "skinID": 0 }, { "name": "techparts", "dropChance": 50, "minAmount": 1.0, "maxAmount": 2, "skinID": 0 } ] }$14.99 -
Version 1.5.0
776 downloads
FEATURES: Friendly UI (Open command by default - /rs [you need be an admin or have a permission "gatherlootmultiplier.setup" by default]) (new) respawn rates for crates, barrels, e.t.c. and JunkPiles Set the gather for each resource, excavator, querry, pump jack Global rate Gather | Loot Personal rate for items Block loot containers Example of plugin config$14.99- 43 comments
- 3 reviews
-
- 1
-
-
Version 1.2.15
1,117 downloads
Trade allows two players to trade items from a distance and use the Shopfront UI. https://youtu.be/W92g1Wu0Af0 Key features: Rust Shop Front UI. Bug-free trading - exchange process is handled natively by Rust. Trade logs, if enabled. Individual permissions for various things. Supports NoEscape and Ignore plugins. Optimization with performance in mind. No garbage allocations. Optional features (can be configured in Trade.json config file): Disable accepting trades and/or requests in Building blocked zones. Disable trading while in air/water or while wounded. Disable trading while mounted or parented (Cargo ship, vehicles, elevators). Control how far players can walk while trading. Multiple permissions setup. Item blacklisting for each permission. Trading slot count for each permission. Max distance between players for each permission. Changing chat icon. .. and more. Configuration The settings and options for this plugin can be configured in the Trade.json file under the oxide/config directory. The use of a JSON editor or validation site such as jsonlint.com is recommended to avoid formatting issues and syntax errors. { "Disable accepting requests in Block zone": true, "Disable sending requests in Block zone": true, "Disable trading in air": true, "Disable trading in water": true, "Disable trading while wounded": true, "Disable trading in transport": false, "Enable individual trade slot count": false, "Trade request timeout (seconds)": 30.0, "Max distance from trade spot (0 - disabled)": 5.0, "Chat icon id": 0, "Allow trade logging": true, "Permissions (first one is always default)": [ { "Order": 1, "Name": "default", "Cooldown": 30.0, "MaxDist": 0.0, "TradingSlots": 6, "Banned Items": [ "note" ] }, { "Order": 2, "Name": "vip_example", "Cooldown": 10.0, "MaxDist": 0.0, "TradingSlots": 12, "Banned Items": null } ], "Config revision (do not edit)": 1 } Localization The localization for this plugin can be configured in the Trade.json file under the oxide/lang/en directory. The use of a JSON editor or validation site such as jsonlint.com is recommended to avoid formatting issues and syntax errors. { "Msg.TradeIntro": "To begin trade, type <color=#81B67A>/trade <Partial name or Steam ID></color>.", "Msg.TradeRequestSent": "You've sent a trade request to <color=#81B67A>{0}</color>.", "Msg.TradeRequestReceived": "<color=#81B67A>{0}</color> wants to trade with you!n<color=#81B67a>/trade yes</color> - Accept request.n<color=#DA5757>/trade no</color> - Deny request.", "Msg.TradeSuccessful": "Your trade with <color=#81B67A>{0}</color> succeed.", "Msg.TradeTimeoutVendor": "<color=#81B67A>{0}</color> didn't anwered to your trade request.", "Msg.TradeTimeoutCustomer": "You haven't answered to <color=#81B67A>{0}</color>'s trade request.", "Msg.TradeCancelledVendor": "<color=#81B67A>{0}</color> has cancelled a trade request.", "Msg.TradeCancelledCustomer": "You have cancelled a trade request.", "Msg.TradeInterrupted": "Trade was interrupted!", "Msg.You": "<color=#81B67A>You</color>", "Msg.YourPartner": "<color=#81B67A>Your partner</color>", "Error.NoPerm": "{0} don't have permission to trade.", "Error.NoSuchPlayer": "No such player found or he is offline.", "Error.Ignored": "That player is ignoring you.", "Error.MultiplePlayers": "Found multiple players with this name!nRefine your search please or use SteamID.", "Error.SelfTrade": "Obviously, you can't trade with yourself :)", "Error.NoPendingRequest": "You have no pending requests.", "Error.CantTradeInWater": "{0} can't trade while in water!", "Error.CantTradeInBuildingBlock": "{0} can't trade while in Building Block zone.", "Error.CantTradeInAir": "{0} can't trade while flying.", "Error.CantTradeWounded": "{0} can't trade while wounded.", "Error.CantTradeSleeping": "{0} can't trade while sleeping.", "Error.CantTradeInVehicle": "{0} can't trade in transport.", "Error.CantTradeDead": "{0} can't trade while dead.", "Error.CantTradeOffline": "{0} is offline.", "Error.CantTradeRightNow": "{0} can't trade right now.", "Error.TradeCooldown": "Trade is on cooldown. Please wait <color=#81B67A>{0:mm:ss}</color>.", "Error.TooFar": "{0} is too far away from you.", "Error.UnknownCommand": "Unrecognized command.nType either <color=#81B67a>/trade yes</color> or <color=#DA5757>/trade no</color>" } Permissions This plugin uses Oxide's permission system. To assign a permission, use oxide.grant <user or group> <name or steam id> <permission>. To remove a permission, use oxide.revoke <user or group> <name or steam id> <permission>. trade.use - allows players to use trading. Commands This plugin provides universal chat and console commands. When using a command in the chat, prefix it with a forward slash: /. trade <name or steam id> - Starts a trade request with the given player trade accept/yes/+ - Accepts trade request trade cancel/no/- - Declines trade request$9.99 -
Version 1.5.0
8,730 downloads
Adds an airfield event to your server! A cargo plane lands on the airfield and drops airdrops, boxes. Strong NPCs, Bradley and a patrol helicopter will protect the crates You can also set up custom loot using the "SimpleLootTable" plugin Features: Easy to set up. Excellent customization options in the config Commands(admin only): afestart - force the event to start afestop - cause the event to end afefast - quick landing of a cargo plane, for testing settings afe_addcustom - adds a custom landing place for a cargo plane. You must stand on level ground and look in the direction where the cargo plane will move(do not forget to set in the config file "Use a custom place to land a cargo plane": true) Hooks: void AirfieldEventStarted() // called when the event starts { } void AirfieldEventEnded() // called when the event has ended { } AirfieldEvent config: { "PVE mode (crates can only be looted by the player who first dealt damage to the NPC)": false, "Time after which the owner of the event will be deleted if he left the dome or left the server (for PVE mode)": 300, "Give event ownership to the owner's teammates if he is no longer the owner. Only if teammates are within the event radius (for PVE mode)": true, "Radius for event(for PVE mode)": 380, "Create a dome for PVE mode": false, "Dome transparency (the higher the value, the darker the dome, recommended 4)": 4, "Dome offset": { "x": 0.0, "y": 0.0, "z": 30.0 }, "Message when a player enters the event dome(only for PVE mode if there is a dome)": "You have entered the Airfield Event", "Message when the event owner leaves the event dome (only for PVE mode if there is a dome)": "Return to the event dome, otherwise after 300 seconds you will no longer be the owner of this event", "Do not allow other players into the event(only for PVE mode if there is a dome)": false, "Message when a player is ejected from the event dome(only for PVE mode if there is a dome)": "You cannot be here, you are not the owner of this event", "Allow admin to be in event dome (only for PVE mode if there is a dome)": true, "Triggering an event by timer (disable if you want to trigger the event only manually)": true, "Time to event start(in seconds, minimum 900)": 3900, "Random time to event start": false, "Minimum time to event start(in seconds, minimum 900)": 900, "Maximum time to event start(in seconds)": 10800, "Minimum number of online players to trigger an event": 1, "Drops amount(number of cargo spawns after plane landing, maximum 10)": 3, "Crates amount(spawn every cargo drop)": 1, "Crate simple loot table name(plugin SimpleLootTable is required)": "", "Minimum number of items in a crate(plugin SimpleLootTable is required)": 0, "Maximum number of items in a crate(plugin SimpleLootTable is required)": 0, "Remove crates after being looted by a player(in seconds)": 300, "Extend the duration of the event if the NPCs were attacked(if there is less time left, then increase to the set time(in seconds))": 600, "Crates lifetime(in seconds). The crate will not be destroyed if it has been activated": 3600, "Crates timer(in seconds)": 900, "Airdrops amount(spawn every cargo drop)": 1, "Airdrop simple loot table name(plugin SimpleLootTable is required)": "", "Minimum number of items in an airdrop(plugin SimpleLootTable is required)": 0, "Maximum number of items in an airdrop(plugin SimpleLootTable is required)": 0, "Airdrops lifetime(in seconds)": 3600, "NPCs amount(spawn every cargo drop)": 0, "NPCs lifetime(in seconds)": 3600, "NPCs type(NPCs prefab, experimental setting, it is not known how the NPCs will behave) 0 - tunneldweller; 1 - underwaterdweller; 2 - excavator; 3 - full_any; 4 - lr300; 5 - mp5; 6 - pistol; 7 - shotgun; 8 - heavy; 9 - junkpile_pistol; 10 - oilrig; 11 - patrol; 12 - peacekeeper; 13 - roam; 14 - roamtethered; 15 - bandit_guard; 16 - cargo; 17 - cargo_turret_any; 18 - cargo_turret_lr300; 19 - ch47_gunner": 8, "NPCs health(0 - default)": 0, "NPCs damage multiplier": 1.0, "NPCs accuracy(the lower the value, the more accurate, 0 - maximum accuracy)": 2.0, "NPCs attack range": 75.0, "Radius of chasing the player(NPCs will chase the player as soon as he comes closer than the specified radius, must be no greater than the attack range)": 60.0, "Minimum distance to NPC damage": 75.0, "Message if the player attacks far away NPCs": "NPC is too far away, he doesn't take damage", "Forcibly immobilize an NPC": false, "Method of distribution of kits for NPCs(1 - sequentially, 2 - repeating, 3 - randomly)": 1, "List of kits for NPC(requires Kits plugin)": [ "kit1", "kit2", "kit3" ], "Default displayName for NPC(for SimpleKillFeed/DeathNotes plugin)": "Airfield NPC", "List of displayNames for each NPC(for SimpleKillFeed/DeathNotes plugin)": [ "Airfield NPC1", "Airfield NPC2", "Airfield NPC3" ], "Event message(if empty, no message will be displayed)": "Airfield event started", "Event end message(if empty, no message will be displayed)": "Airfield event ended", "Landing message(displayed when the cargo plane has landed)": "Cargoplane landed at Airfield", "Patrol helicopter spawn chance (0 - 100%)": 50, "Call the helicopter only after activating the hackable crate": false, "How long the helicopter will patrol the airfield (in minutes)": 5, "Helicopter damage multiplier": 1.0, "Helicopter health": 10000.0, "Helicopter main rotor health": 900.0, "Helicopter tail rotor health": 500.0, "The patrol helicopter will not patrol the airfield if it has found a target": true, "Make helicopter fly away after end of patrol time": false, "Spawns a helicopter right on the airfield(if false, then the helicopter will arrive from afar in a few seconds)": false, "Helicopter patrol range": 150, "Event marker on the map(will spawn a marker immediately after the start of the event)": false, "If true, spawn the marker only after the plane lands": false, "Event marker name": "Airfield event", "Event marker lifetime(in seconds)": 3600, "Event marker transparency(0-1)": 0.75, "Event marker radius": 0.5, "Event marker color.R(0-1)": 1.0, "Event marker color.G(0-1)": 0.0, "Event marker color.B(0-1)": 0.0, "Use a custom place to land a cargo plane": false, "Custom place position": { "x": 0.0, "y": 0.0, "z": 0.0 }, "Custom place rotation": { "x": 0.0, "y": 0.0, "z": 0.0 }, "Use custom navmesh (enable if using custom airfield and getting NPC navmesh error)": false, "BradleyAPC spawn chance (0 - 100%)": 0, "BradleyAPC lifetime(in seconds)": 3600, "BradleyAPC bullet damage": 7.0, "BradleyAPC health": 1000.0, "Use Notify plugin for messages": false, "Type notify for 'Message when a player enters the event dome'(only for Notify plugin)": 0, "Type notify for 'Message when the event owner leaves the event dome'(only for Notify plugin)": 0, "Type notify for 'Message when a player is ejected from the event dome'(only for Notify plugin)": 0, "Type notify for 'Message if the player attacks far away NPCs'(only for Notify plugin)": 0, "Type notify for 'Event message'(only for Notify plugin)": 0, "Type notify for 'Event end message'(only for Notify plugin)": 0, "Type notify for 'Landing message'(only for Notify plugin)": 0 }$19.99 -
Version 0.1.6
636 downloads
A plugin that allows other plugins to interact with players and entities in monuments via API. The list of all monuments can be viewed in the: Default(Source of monument boundaries when changing the map or recreating boundaries) - *SERVER*\oxide\data\MonumentsWatcher\DefaultBounds.json Vanilla - *SERVER*\oxide\data\MonumentsWatcher\MonumentsBounds.json Custom - *SERVER*\oxide\data\MonumentsWatcher\CustomMonumentsBounds.json Note: MonumentsWatcher is utilized as an API for other plugins. You won't obtain any functionality beyond displaying monument boundaries without an additional plugin. The ability to automatically generate boundaries for vanilla and custom monuments; The ability to automatically regenerate boundaries for monuments on wipe; The ability to automatically adding languages for custom monuments; The ability to manually configure boundaries for monuments; The ability to track the entrance and exit of players, npcs and entities in a Monument and CargoShip; The ability to display boundaries. monumentswatcher.admin - Provides the capability to recreate or display monument boundaries. { "Chat command": "monument", "Is it worth enabling GameTips for messages?": true, "Is it worth recreating boundaries(excluding custom monuments) upon detecting a wipe?": true, "List of tracked categories of monuments. Leave blank to track all": [], "Wipe ID": null, "Version": { "Major": 0, "Minor": 1, "Patch": 7 } } Note: The list of available categories for monuments can be found in the Developer API section. ENG: https://pastebin.com/nsjBCqZe RUS: https://pastebin.com/ut2icv9T Note: After the plugin initialization, keys for custom monuments will be automatically added. show *monumentID*(optional) *floatValue*(optional) - Display the boundary of the monument you are in or specified. The display will last for the specified time or 30 seconds; list - List of available monuments; rotate *monumentID*(optional) *floatValue*(optional) - Rotate the monument you are in or specified, either in the direction you are looking or in the specified direction; recreate custom/all(optional) - Recreate the boundaries of vanilla/custom/all monuments. Note: Instead of a monumentID, you can leave it empty, but you must be inside a monument. You can also use the word 'closest' to select the nearest monument to you. Example: /monument show closest /monument show gas_station_1 /monument show gas_station_1_4 /monument rotation /monument rotation closest /monument rotation gas_station_1_0 256.5 /monument recreate void OnMonumentsWatcherLoaded() Called after the MonumentsWatcher plugin is fully loaded and ready. void OnCargoWatcherCreated(string monumentID, string type) Called when a watcher is created for a CargoShip. void OnCargoWatcherDeleted(string monumentID) Called when a watcher is removed for a CargoShip. void OnMonumentsWatcherLoaded() { Puts("MonumentsWatcher plugin is ready!"); } void OnCargoWatcherCreated(string monumentID, string type) { Puts($"Watcher for monument {monumentID}({type}) has been created!"); } void OnCargoWatcherDeleted(string monumentID) { Puts($"Watcher for monument {monumentID} has been deleted!"); } Entered hooks: void OnPlayerEnteredMonument(string monumentID, BasePlayer player, string type, string oldMonumentID) Called when a player enters any monument. void OnNpcEnteredMonument(string monumentID, BasePlayer npcPlayer, string type, string oldMonumentID) Called when an NPC player enters any monument. void OnEntityEnteredMonument(string monumentID, BaseEntity entity, string type, string oldMonumentID) Called when any other BaseEntity enters any monument. void OnPlayerEnteredMonument(string monumentID, BasePlayer player, string type, string oldMonumentID) { Puts($"{player.displayName} entered to {monumentID}({type}). His previous monument was {oldMonumentID}"); } void OnNpcEnteredMonument(string monumentID, BasePlayer npcPlayer, string type, string oldMonumentID) { Puts($"Npc({npcPlayer.displayName}) entered to {monumentID}({type}). Previous monument was {oldMonumentID}"); } void OnEntityEnteredMonument(string monumentID, BaseEntity entity, string type, string oldMonumentID) { Puts($"Entity({entity.net.ID}) entered to {monumentID}({type}). Previous monument was {oldMonumentID}"); } Exited hooks: void OnPlayerExitedMonument(string monumentID, BasePlayer player, string type, string reason, string newMonumentID) Called when a player exits any monument. void OnNpcExitedMonument(string monumentID, BasePlayer npcPlayer, string type, string reason, string newMonumentID) Called when an NPC player exits any monument. void OnEntityExitedMonument(string monumentID, BaseEntity entity, string type, string reason, string newMonumentID) Called when any other BaseEntity exits any monument. void OnPlayerExitedMonument(string monumentID, BasePlayer player, string type, string reason, string newMonumentID) { Puts($"{player.displayName} left from {monumentID}({type}). Reason: {reason}. They are now at '{newMonumentID}'."); } void OnNpcExitedMonument(string monumentID, BasePlayer npcPlayer, string type, string reason, string newMonumentID) { Puts($"Npc({npcPlayer.displayName}) left from {monumentID}({type}). Reason: {reason}. They are now in {newMonumentID}"); } void OnEntityExitedMonument(string monumentID, BaseEntity entity, string type, string reason, string newMonumentID) { Puts($"Entity({entity.net.ID}) left from {monumentID}({type}). Reason: {reason}. They are now in {newMonumentID}"); } [PluginReference] private Plugin MonumentsWatcher; There are 13 types of monuments: SafeZone(0): Bandit Camp, Outpost, Fishing Village, Ranch and Large Barn. RadTown(1): Airfield, Arctic Research Base, Abandoned Military Base, Giant Excavator Pit, Ferry Terminal, Harbor, Junkyard, Launch Site; Military Tunnel, Missile Silo, Power Plant, Sewer Branch, Satellite Dish, The Dome, Toxic Village(Legacy Radtown), Train Yard, Water Treatment Plant. RadTownWater(2): Oil Rigs, Underwater Labs and CargoShip. RadTownSmall(3): Lighthouse, Oxum's Gas Station, Abandoned Supermarket and Mining Outpost. TunnelStation(4) MiningQuarry(5): Sulfur Quarry, Stone Quarry and HQM Quarry. BunkerEntrance(6) Cave(7) Swamp(8) IceLake(9) PowerSubstation(10) WaterWell(11) Custom(12) There are 25 api methods: GetAllMonuments: Used to retrieve an array of IDs for all available monuments. (string[])(MonumentsWatcher?.Call("GetAllMonuments") ?? Array.Empty<string>()); GetAllMonumentsCategories: Used to retrieve a dictionary of IDs and categories for all available monuments. (Dictionary<string, string>)(MonumentsWatcher?.Call("GetAllMonumentsCategories") ?? new Dictionary<string, string>()); GetMonumentsByCategory: Used to retrieve all available monuments by category. To call the GetMonumentsByCategory method, you need to pass 1 parameter: monument category as a string. (string[])(MonumentsWatcher?.Call("GetMonumentsByCategory", "SafeZone") ?? Array.Empty<string>()); GetMonumentCategory: Used to retrieve the category of the specified monument. Returns an empty string on failure. To call the GetMonumentCategory method, you need to pass 1 parameter: monumentID as a string. (string)(MonumentsWatcher?.Call("GetMonumentCategory", monumentID) ?? string.Empty); GetMonumentDisplayName: Used to retrieve the nicename of a monument in the player's language. Returns an empty string on failure. To call the GetMonumentDisplayName method, you need to pass 3 parameters: monumentID as a string; Available options: userID as a ulong or a string; player as a BasePlayer or an IPlayer. displaySuffix as a bool. Should the suffix be displayed in the name if there are multiple such monuments? This parameter is optional. (string)(MonumentsWatcher?.Call("GetMonumentDisplayName", monumentID, player.userID, true) ?? string.Empty);//(ulong)userID (string)(MonumentsWatcher?.Call("GetMonumentDisplayName", monumentID, player, true) ?? string.Empty);//(BasePlayer/IPlayer)player (string)(MonumentsWatcher?.Call("GetMonumentDisplayName", monumentID, player.UserIDString, true) ?? string.Empty);//(string)userID ***recommended option*** GetMonumentDisplayNameByLang: Used to retrieve the nicename of a monument in the specified language. Returns an empty string on failure. To call the GetMonumentDisplayNameByLang method, you need to pass 3 parameters: monumentID as a string; two-char language as a string; displaySuffix as a bool. Should the suffix be displayed in the name if there are multiple such monuments? This parameter is optional. (string)(MonumentsWatcher?.Call("GetMonumentDisplayNameByLang", monumentID, "en", true) ?? string.Empty); GetMonumentPosition: Used to retrieve the Vector3 position of the specified monument. Returns Vector3.zero on failure. To call the GetMonumentPosition method, you need to pass 1 parameter: monumentID as a string. (Vector3)(MonumentsWatcher?.Call("GetMonumentPosition", monumentID) ?? Vector3.zero); GetMonumentByPos: Used to retrieve the monument at the specified position. Returns an empty string on failure. To call the GetMonumentByPos method, you need to pass 1 parameter: position as a Vector3. (string)(MonumentsWatcher?.Call("GetMonumentByPos", pos) ?? string.Empty); Note: This method returns the first encountered monument. Occasionally, there may be multiple monuments at a single point. Therefore, it is recommended to use the GetMonumentsByPos method. GetMonumentsByPos: Used to retrieve all monuments at the specified position. Returns null on failure. To call the GetMonumentsByPos method, you need to pass 1 parameter: position as a Vector3. (string[])(MonumentsWatcher?.Call("GetMonumentsByPos", pos) ?? Array.Empty<string>()); GetClosestMonument: Used to retrieve the nearest monument to the specified position. Returns an empty string on failure. To call the GetClosestMonument method, you need to pass 1 parameter: position as a Vector3. (string)(MonumentsWatcher?.Call("GetClosestMonument", pos) ?? string.Empty); IsPosInMonument: Used to check whether the specified position is within the specified monument. Returns a false on failure. To call the IsPosInMonument method, you need to pass 2 parameters: monumentID as a string; position as a Vector3. (bool)(MonumentsWatcher?.Call("IsPosInMonument", monumentID, pos) ?? false); ShowBounds: Used to display the boundaries of the specified monument to the specified player. To call the ShowBounds method, you need to pass 3 parameters: monumentID as a string; player as a BasePlayer; displayDuration as a float. Duration of displaying the monument boundaries in seconds. This parameter is optional. MonumentsWatcher?.Call("ShowBounds", monumentID, player, 20f); Note: Since an Admin flag is required for rendering, players without it will be temporarily granted an Admin flag and promptly revoked. PLAYERS API GetMonumentPlayers: Used to retrieve an array of all players located in the specified monument. Returns null on failure. To call the GetMonumentPlayers method, you need to pass 1 parameter: monumentID as a string. (BasePlayer[])(MonumentsWatcher?.Call("GetMonumentPlayers", monumentID) ?? Array.Empty<BasePlayer>()); GetPlayerMonument: Used to retrieve the monument in which the specified player is located. Returns an empty string on failure. To call the GetPlayerMonument method, you need to pass 1 parameter: Available options: player as a BasePlayer; userID as a ulong or a string. (string)(MonumentsWatcher?.Call("GetPlayerMonument", player.UserIDString) ?? string.Empty);//(string)userID (string)(MonumentsWatcher?.Call("GetPlayerMonument", player) ?? string.Empty);//(BasePlayer)player (string)(MonumentsWatcher?.Call("GetPlayerMonument", player.userID) ?? string.Empty);//(ulong)userID ***recommended option*** GetPlayerMonuments: Used to retrieve all monuments in which the specified player is located. Returns null on failure. To call the GetPlayerMonuments method, you need to pass 1 parameter: Available options: player as a BasePlayer; userID as a ulong or a string. (string[])(MonumentsWatcher?.Call("GetPlayerMonuments", player.UserIDString) ?? Array.Empty<string>());//(string)userID (string[])(MonumentsWatcher?.Call("GetPlayerMonuments", player) ?? Array.Empty<string>());//(BasePlayer)player (string[])(MonumentsWatcher?.Call("GetPlayerMonuments", player.userID) ?? Array.Empty<string>());//(ulong)userID ***recommended option*** GetPlayerClosestMonument: Used to retrieve the nearest monument to the specified player. Returns an empty string on failure. To call the GetPlayerClosestMonument method, you need to pass 1 parameter: Available options: player as a BasePlayer; userID as a ulong or a string. (string)(MonumentsWatcher?.Call("GetPlayerClosestMonument", player.UserIDString) ?? string.Empty);//(string)userID (string)(MonumentsWatcher?.Call("GetPlayerClosestMonument", player.userID) ?? string.Empty);//(ulong)userID (string)(MonumentsWatcher?.Call("GetPlayerClosestMonument", player) ?? string.Empty);//(BasePlayer)player ***recommended option*** IsPlayerInMonument: Used to check whether the specified player is in the specified monument. Returns a false on failure. To call the IsPlayerInMonument method, you need to pass 2 parameters: monumentID as a string; Available options: player as a BasePlayer; userID as a ulong or a string. (bool)(MonumentsWatcher?.Call("IsPlayerInMonument", monumentID, player.UserIDString) ?? false);//(string)userID (bool)(MonumentsWatcher?.Call("IsPlayerInMonument", monumentID, player) ?? false);//(BasePlayer)player (bool)(MonumentsWatcher?.Call("IsPlayerInMonument", monumentID, player.userID) ?? false);//(ulong)userID ***recommended option*** NPCS API GetMonumentNpcs: Used to retrieve an array of all npcs located in the specified monument. Returns null on failure. To call the GetMonumentNpcs method, you need to pass 1 parameter: monumentID as a string. (BasePlayer[])(MonumentsWatcher?.Call("GetMonumentNpcs", monumentID) ?? Array.Empty<BasePlayer>()); GetNpcMonument: Used to retrieve the monument in which the specified npc is located. Returns an empty string on failure. To call the GetNpcMonument method, you need to pass 1 parameter: Available options: npcPlayer as a BasePlayer; netID as a NetworkableId. (string)(MonumentsWatcher?.Call("GetNpcMonument", npcPlayer) ?? string.Empty);//(BasePlayer)npcPlayer (string)(MonumentsWatcher?.Call("GetNpcMonument", npcPlayer.net.ID) ?? string.Empty);//(NetworkableId)netID ***recommended option*** GetNpcMonuments: Used to retrieve all monuments in which the specified npc is located. Returns null on failure. To call the GetNpcMonuments method, you need to pass 1 parameter: Available options: npcPlayer as a BasePlayer; netID as a NetworkableId. (string[])(MonumentsWatcher?.Call("GetNpcMonuments", npcPlayer) ?? Array.Empty<string>());//(BasePlayer)npcPlayer (string[])(MonumentsWatcher?.Call("GetNpcMonuments", npcPlayer.net.ID) ?? Array.Empty<string>());//(NetworkableId)netID ***recommended option*** IsNpcInMonument: Used to check whether the specified npc is in the specified monument. Returns a false on failure. To call the IsNpcInMonument method, you need to pass 2 parameters: monumentID as a string; Available options: npcPlayer as a BasePlayer; netID as a NetworkableId. (bool)(MonumentsWatcher?.Call("IsNpcInMonument", monumentID, npcPlayer.net.ID) ?? false);//(NetworkableId)netID (bool)(MonumentsWatcher?.Call("IsNpcInMonument", monumentID, npcPlayer) ?? false);//(BasePlayer)npcPlayer ***recommended option*** ENTITIES API GetMonumentEntities: Used to retrieve an array of all entities located in the specified monument. Returns null on failure. To call the GetMonumentEntities method, you need to pass 1 parameter: monumentID as a string. (BaseEntity[])(MonumentsWatcher?.Call("GetMonumentEntities", monumentID) ?? Array.Empty<BaseEntity>()); GetEntityMonument: Used to retrieve the monument in which the specified entity is located. Returns an empty string on failure. To call the GetEntityMonument method, you need to pass 1 parameter: Available options: entity as a BaseEntity; netID as a NetworkableId. (string)(MonumentsWatcher?.Call("GetEntityMonument", entity) ?? string.Empty);//(BaseEntity)entity (string)(MonumentsWatcher?.Call("GetEntityMonument", entity.net.ID) ?? string.Empty);//(NetworkableId)netID ***recommended option*** GetEntityMonuments: Used to retrieve all monuments in which the specified entity is located. Returns null on failure. To call the GetEntityMonuments method, you need to pass 1 parameter: Available options: entity as a BaseEntity; netID as a NetworkableId. (string[])(MonumentsWatcher?.Call("GetEntityMonuments", entity) ?? Array.Empty<string>());//(BaseEntity)entity (string[])(MonumentsWatcher?.Call("GetEntityMonuments", entity.net.ID) ?? Array.Empty<string>());//(NetworkableId)netID ***recommended option*** IsEntityInMonument: Used to check whether the specified entity is in the specified monument. Returns a false on failure. To call the IsEntityInMonument method, you need to pass 2 parameters: monumentID as a string; Available options: entity as a BaseEntity; netID as a NetworkableId. (bool)(MonumentsWatcher?.Call("IsEntityInMonument", monumentID, entity.net.ID) ?? false);//(NetworkableId)netID (bool)(MonumentsWatcher?.Call("IsEntityInMonument", monumentID, entity) ?? false);//(BaseEntity)entity ***recommended option***Free -
Version 3.5.8.4
250 downloads
Our professionally configured XRUST Loot Table config for the Better Loot plugin, which we successfully use on 20 of our servers, will provide everything you need. 99% of the junk items have been filtered out from the boxes. It offers a comfortable and professional loot experience for both competitive Rust gameplay and 2x server lovers. The latest weapons added to the game, such as the Minigun, Minigun Backpack, and Military Flamethrower, are included in the config. All boxes have been meticulously shaped with the feedback of over 2000 players, taking their gaming experience into account. You can easily reconfigure the loot table boxes you do not like. The zip file contains the necessary directory information and instructions on how to modify the loot table content. Support: FULLWIPED DISCORD$10.00-
- #2x
- #2x loot
-
(and 33 more)
Tagged with:
- #2x
- #2x loot
- #2x loot table
- #2x loot table config
- #2x cfg
- #2x config
- #2x loot config
- #loot config
- #loot
- #loot x2
- #x2 loot
- #x2 loot config
- #x2 loot table
- #rust cfg
- #rust config
- #rust 2x
- #2x server
- #2x server config
- #2x server cfg
- #2x server loot table
- #rust configs
- #2x server files
- #x2 server
- #2x server settings
- #2x better
- #2x better loot
- #2x better loot config
- #alphaloot 2x
- #2x alphaloot config
- #best config
- #best 2x config
- #rust 2x server
- #2x rust server config
- #2x rust server loot
- #2x loot tables
-
Version 1.1.3
699 downloads
Heavy Oil Rig Event is a configurable plugin that allows for a new type of random event. Randomly a message will appear letting players know that there is a heavy oil rig being formed. The Oil Rig will then be equipped with extra scientists, auto turrets, and a Bradley. Players must try to clear the oil rig and find the scientist who drops the code to disable the auto turrets OR destroy all the turrets. If the code is found, it can be entered into the code lock on the second to highest floor to disable the turrets. Once the turrets and scientists are dealt with, players must defeat the Bradley which guards the hackable crates. Finally, once the Bradley is defeated, players can collect all the loot. That's if someone else doesn't get to it first! This is a great event to add to your server to give it a little more variety. It can be a fun PVP zone or a PVE event for non PVP servers. EASY OPTIONAL SETUP - NO SETUP REQUIRED You can simple drop the plugin in as-is and it will start the random event every 1 to 2 hours OR you can modify the config to your specific needs. Configuration Example - en Admin Only Commands /HeavyOilStart /HeavyOilStop Hooks void HeavyOilRigEventStarted() void HeavyOilRigEventStopped() Customization Spawn locations as well as the total number turrets, scientists, hackable crates, & APCbradleys can be modified. Simply go to the location in game you want to place the new item and use the command /HoPOS. It will message you the location. You can the add that location to the config in the appropriate section for want you want to modify. Reload the plugin and you're good to go! Discord: cahnu$19.99 -
Version 1.0.2
7 downloads
Overview: This plugin adds an additional twist to PVP within monuments by giving items within player inventories a chance to perma break on death meaning the looter might not get that shiny gun they were hoping to get. Each monument has a tier structure and the tiers break chance % can be modified to suit your playstyle , or if there are certain items you dont want to be apart of the item table you can add them to the white list. # Note - This will only affect items that have a condition/durability bar. Newly Added: Configurable option to set the Loot Breaker to the entire map rather than just Monuments! White listed: - Option to set up a white list that disregards items placed into list that have a condition (shortnames). Chat Command: - "/breakitems" - Test the plugin by breaking every item in your inventory that has a condition. Permissions: - "lootbreaker.exempt" - Use this permission if you want exemption from the plugin. Config Access: - The break chance is by % , changing these numbers below will set a new % rate for that monument tier. - Ability to set the monuments register size, currently set at 100m$4.99- 3 comments
-
- 1
-
-
- #loot
- #durability
-
(and 2 more)
Tagged with:
-
Version 2.2..2
722 downloads
Animals can drop loot and have a static health and strength profile (random HP/Str) Radtown loot does not conflict with : Barrelless Bearrels Custom Animal Spawns Rust Spawner BackToTheWild AlphaAnimals Features : Wolf , Bears and Polar bears can drop a backpack upon death with a % chance on drop (Just like in LegacyRust) Boars, Chickens, Wild Horses and Stags Can be configured aswell (New in 2.1.0) Custom container animal type prefix through configuration (New in 2.1.0) Health and Strength can be randomized using min/max values. Setup animal Profiles (Health ,Strength ,Running speed and backpack droprate) Option to print the spawns to console showing HP and Strength Permissions : radtownloot..admin : To use the /rad admin command for extended settings and animal counts info radtownloot.loot : For giving players the chance to have the animals drop a backpack radtownloot.chat : To be able to receive chat messages on backpackdrop radtownloot.command : To use the /rad animals command for animal count on the server Commands : /rad animals : Prints plugin information and animal spawns on server chat /rad admin : Prints info about animal settings and droprates on server chat Localization : English language file included to use a diffrent language just make a new file in the language folder. { "Info": "Animals can drop backpacks like in Legacy Rust.\n\n", "InvalidInput": "Please enter a valid command!", "NoPermission": "You do not have permission to use that command!", "RadTownLoot": "The {0} dropped something!", "AdminInfo": "If Change stats on spawn is false values are not changed by this plugin.\n\n" } Logging : Each succesfull drop will now be loggd in the oxide log folder 5:14:15 PM] Krungh Crow[1234567890] killed a Wolf and loot was dropped 5:14:31 PM] Krungh Crow[1234567890] killed a Bear and loot was dropped 5:59:20 PM] Krungh Crow[1234567890] killed a Polarbear and loot was dropped Console Logging : Example Console logs if set to true [Rad Town Loot] A Bear spawned with 473 HP and 35 Strength [Rad Town Loot] A Bear spawned with 374 HP and 34 Strength [Rad Town Loot] A Bear spawned with 376 HP and 32 Strength [Rad Town Loot] A Wolf spawned with 269 HP and 18 Strength [Rad Town Loot] A Bear spawned with 353 HP and 35 Strength [Rad Town Loot] A Bear spawned with 462 HP and 30 Strength [Rad Town Loot] A Wolf spawned with 191 HP and 13 Strength [Rad Town Loot] A Wolf spawned with 339 HP and 14 Strength [Rad Town Loot] A Bear spawned with 394 HP and 39 Strength [Rad Town Loot] A Wolf spawned with 151 HP and 22 Strength [Rad Town Loot] A Wolf spawned with 219 HP and 17 Strength [Rad Town Loot] A Wolf spawned with 310 HP and 16 Strength Settings : Droprate settings * Bear droprate : Any value between 0.0/100.0 (0 means it will not spawn a backpack) * Chat Steam64ID : Add your servers steampicture using the steam64ID. * Use random skins : true/false * Spawn min amount item : Minimum amount of items to spawn in the backpack. * Spawn max amount item : Maximum amount of items to spawn in the backpack. If u want the item to be a Blueprint add .bp behind the item name (eg ammo.pistol.bp) then it will spawn as a blueprint. Loottable settings * shortname : The items shortname (eg ammo.pistol). * Amount : Max amount of the item to spawn in the backpack. * skin : Add the skin ID if u want it to contain a certan skin. * AmountMin : the minimum amount of this item to spawn in the backpack You can change/add/remove lines to the lootprofile. Configuration : A example how u can configure it { "Main config": { "Debug": true, "Chat Steam64ID": 0, "Chat Prefix": "[<color=orange>RadTownLoot</color>] : ", "Animal Type Prefix": "Radtown ", "Use Random Skins": true }, "Animal config": { "Skip Alpha Animals": true, "Skip Omega Animals": true, "Bear settings": { "Change stats on spawns": false, "Show spawns in Console": false, "Droprate 0-100": 80.0, "Minimum Health": 150, "Maximum Health": 250, "Minimum Strength (Att dmg)": 20, "Maximum Strength (Att dmg": 25, "Running Speed": 6.0, "Loot settings": { "Spawn Min Amount Items": 4, "Spawn Max Amount Items": 6, "Loot Table": [ { "shortname": "black.raspberries", "amount": 0, "skin": 0, "amountMin": 5 }, { "shortname": "blue.berry", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "blueberries", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "black.berry", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "yellow.berry", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "white.berry", "amount": 5, "skin": 0, "amountMin": 5 } ] } }, "Boar settings": { "Change stats on spawns": false, "Show spawns in Console": false, "Droprate 0-100": 80.0, "Minimum Health": 150, "Maximum Health": 250, "Minimum Strength (Att dmg)": 20, "Maximum Strength (Att dmg": 25, "Running Speed": 6.0, "Loot settings": { "Spawn Min Amount Items": 1, "Spawn Max Amount Items": 3, "Loot Table": [ { "shortname": "wood", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "hatchet", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "hammer", "amount": 5, "skin": 0, "amountMin": 5 } ] } }, "Chicken settings": { "Change stats on spawns": false, "Show spawns in Console": false, "Droprate 0-100": 80.0, "Minimum Health": 150, "Maximum Health": 250, "Minimum Strength (Att dmg)": 20, "Maximum Strength (Att dmg": 25, "Running Speed": 6.0, "Loot settings": { "Spawn Min Amount Items": 1, "Spawn Max Amount Items": 3, "Loot Table": [ { "shortname": "ammo.pistol", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "wood", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "stones", "amount": 5, "skin": 0, "amountMin": 5 } ] } }, "Wild Horse settings": { "Change stats on spawns": false, "Show spawns in Console": false, "Droprate 0-100": 80.0, "Minimum Health": 150, "Maximum Health": 250, "Minimum Strength (Att dmg)": 20, "Maximum Strength (Att dmg": 25, "Running Speed": 6.0, "Loot settings": { "Spawn Min Amount Items": 1, "Spawn Max Amount Items": 3, "Loot Table": [ { "shortname": "ammo.pistol", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "ammo.pistol.fire", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "ammo.pistol.hv", "amount": 5, "skin": 0, "amountMin": 5 } ] } }, "Polarbear settings": { "Change stats on spawns": false, "Show spawns in Console": false, "Droprate 0-100": 90.0, "Minimum Health": 200, "Maximum Health": 350, "Minimum Strength (Att dmg)": 20, "Maximum Strength (Att dmg": 25, "Running Speed": 6.0, "Loot settings": { "Spawn Min Amount Items": 1, "Spawn Max Amount Items": 3, "Loot Table": [ { "shortname": "stone.pickaxe", "amount": 1, "skin": 0, "amountMin": 1 }, { "shortname": "stonehatchet", "amount": 1, "skin": 0, "amountMin": 1 }, { "shortname": "spear.stone", "amount": 1, "skin": 0, "amountMin": 1 } ] } }, "Stag settings": { "Change stats on spawns": false, "Show spawns in Console": false, "Droprate 0-100": 80.0, "Minimum Health": 150, "Maximum Health": 250, "Minimum Strength (Att dmg)": 20, "Maximum Strength (Att dmg": 25, "Running Speed": 6.0, "Loot settings": { "Spawn Min Amount Items": 1, "Spawn Max Amount Items": 10, "Loot Table": [ { "shortname": "ammo.pistol", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "ammo.pistol.fire", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "ammo.pistol.hv", "amount": 5, "skin": 0, "amountMin": 5 } ] } }, "Wolf settings": { "Change stats on spawns": false, "Show spawns in Console": true, "Droprate 0-100": 100.0, "Minimum Health": 150, "Maximum Health": 250, "Minimum Strength (Att dmg)": 20, "Maximum Strength (Att dmg": 25, "Running Speed": 6.0, "Loot settings": { "Spawn Min Amount Items": 1, "Spawn Max Amount Items": 3, "Loot Table": [ { "shortname": "ammo.pistol", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "ammo.pistol.fire", "amount": 5, "skin": 0, "amountMin": 5 }, { "shortname": "ammo.pistol.hv", "amount": 5, "skin": 0, "amountMin": 5 } ] } } } }Free- 16 comments
-
- 2
-
-
Version 1.0.6
179 downloads
Adds an exciting event to your server: a box appears at a random location on the map. Players must find it using a special compass. Whoever finds this box first will get all the loot. The plugin is easy to set up and has great customization. For the plugin to work, plugins such as ImageLibrary and SimpleLootTable are required! Commands (admin only): /sch_start - starts an event /sch_stop - ends an event Hooks: void ScavengerHuntStarted() // called when the event starts void ScavengerHuntEnded() // called when the event ends Config: { "Autostart event": true, "Minimum time to event start(in seconds)": 3000, "Maximum time to event start(in seconds)": 5000, "Minimum amount of online players to trigger the event": 1, "Crate prefab": "assets/prefabs/deployable/large wood storage/box.wooden.large.prefab", "Crate skin": 0, "Event duration": 600, "Minimum number of items in a crate": 6, "Maximum number of items in a crate": 12, "Simple loot table name": "exampleTable", "Pre-event message": "Scavenger hunt event will start in a minute", "Pre-event message time(in seconds)": 60, "Event message": "The scavenger hunt event has begun, follow the compass and find the crate first", "Find message(message when someone found the crate)": "Someone found the crate", "Not find message(event if no one found the box)": "Nobody found the box crate", "End event message": "Scavenger hunt event ended", "Icon AnchorMin": "0.02 0.92", "Icon AnchorMax": "0.07 0.994", "North icon": "https://i.imgur.com/myBNiHd.png", "South icon": "https://i.imgur.com/UsUrH80.png", "West icon": "https://i.imgur.com/QiSH0Xx.png", "East icon": "https://i.imgur.com/10RljdU.png", "NorthWest icon": "https://i.imgur.com/RC9W0rV.png", "NorthEast icon": "https://i.imgur.com/Nh6wmlo.png", "SouthWest icon": "https://i.imgur.com/KJ8YiU5.png", "SouthEast icon": "https://i.imgur.com/l6HDfzQ.png" }$9.99 -
Version 1.1.0
698 downloads
Adds an event for the Lunchsite monument to your server. A crate with valuable loot will spawn on the helipad. The crate is protected by NPC guards and a patrol helicopter. The event is completely ready for use immediately after installation, you can flexibly configure it at your discretion Features: Easy to set up. Excellent customization options in the config You can customize the contents of the box: in the config file, set up a list of items that will be inside also you can use kits (you need Kits plugin), just set the name of the kit in the config file, you can use the list of kits and choose them randomly also you can use loot tables (you need SimpleLootTable plugin) You can customize the NPCs: you can set the health of the npc you can set NPC damage multiplier on players you can give kits for NPCs (you need a Kits plugin) Commands(admin only): hpestart - force the event to start hpestop - force stop the event Hooks: void LaunchSiteHelipadEventStarted() // called when the event starts { } void LaunchSiteHelipadEventEnded() // called when the event has ended { } Config file: { "Time to event start(in seconds)": 3600, "Random time to event start": false, "Minimum time to event start(in seconds)": 900, "Maximum time to event start(in seconds)": 10800, "Box lifetime(in seconds)": 1800, "Time the box is closed(in seconds)": 900, "Box skin": 0, "NPCs lifetime(in seconds)": 3600, "NPCs amount(maximum 20)": 2, "NPCs type, 0 - tunneldweller; 1 - underwaterdweller; 2 - excavator; 3 - full_any; 4 - lr300; 5 - mp5; 6 - pistol; 7 - shotgun; 8 - heavy; 9 - junkpile_pistol; 10 - oilrig; 11 - patrol; 12 - peacekeeper; 13 - roam; 14 - roamtethered; 15 - bandit_guard; 16 - cargo; 17 - cargo_turret_any; 18 - cargo_turret_lr300; 19 - ch47_gunner": 8, "NPCs health(0 - default)": 0, "NPCs damage multiplier": 1.0, "List of kits for each NPC(requires Kits plugin)": [ "kit1", "kit2", "kit3" ], "List of displayNames for each NPC(for SimpleKillFeed/DeathNotes plugin)": [ "LaunchSite NPC1", "LaunchSite NPC2", "LaunchSite NPC3" ], "Give NPC names randomly from the list (if false, names will be assigned according to the list one by one)": true, "Event start message(if empty, no message will be displayed)": "Helipad event started", "Message when box is unlocked(if empty, no message will be displayed)": "Box on the helipad unlocked", "Spawns a helicopter right on the launchsite(if false, then the helicopter will arrive from afar in a few seconds)": false, "Patrol helicopter spawn chance (0 - 100%)": 50, "Helicopter patrol range": 150, "How long the helicopter will patrol the launchsite (in minutes)": 5, "Helicopter damage multiplier": 1.0, "Helicopter health": 10000.0, "Helicopter main rotor health": 900.0, "Helicopter tail rotor health": 500.0, "The patrol helicopter will not patrol the helipad if it has found a target": false, "Make helicopter fly away after end of patrol time": false, "Event marker on the map(will spawn a marker immediately after the start of the event)": false, "Event marker name": "Launch site event", "Event marker lifetime(in seconds)": 3600, "Event marker transparency(0-1)": 0.75, "Event marker radius": 0.5, "Event marker color.R(0-1)": 1.0, "Event marker color.G(0-1)": 0.0, "Event marker color.B(0-1)": 0.0, "Use box kit(need a plugin Kits)": false, "Messages list - messages that players will see, depending on how much time (in seconds) is left before the box is opened": [ { "message": "The box on the helipad will open in 15 minutes", "time": 900 }, { "message": "The box on the helipad will open in 10 minutes", "time": 600 }, { "message": "The box on the helipad will open in 5 minutes", "time": 300 }, { "message": "The box on the helipad will open in 3 minutes", "time": 180 }, { "message": "The box on the helipad will open in 1 minute", "time": 60 } ], "List of items in the box": [ { "shortname": "ammo.rocket.basic", "minAmount": 1, "maxAmount": 3, "skinID": 0 }, { "shortname": "explosive.timed", "minAmount": 1, "maxAmount": 3, "skinID": 0 }, { "shortname": "explosive.satchel", "minAmount": 5, "maxAmount": 10, "skinID": 0 }, { "shortname": "explosives", "minAmount": 40, "maxAmount": 100, "skinID": 0 }, { "shortname": "ammo.rifle.explosive", "minAmount": 64, "maxAmount": 128, "skinID": 0 }, { "shortname": "rocket.launcher", "minAmount": 1, "maxAmount": 1, "skinID": 0 } ], "Kit list": [ "111111111", "222222222", "333333333" ], "Use random kit(if false, then the first Kit in the list is always used": false, "Box simple loot table name(plugin SimpleLootTable is required)": "", "Minimum number of items in the box(plugin SimpleLootTable is required)": 1, "Maximum number of items in the box(plugin SimpleLootTable is required)": 3 }$11.99