TheDragonessesLair's Wishlist
-
KeyCrates
The Key Crates plugin introduces a captivating gameplay feature centered around locked loot crates and colored keys. Players must gather these keys to access the valuable rewards hidden within the crates. Each key color corresponds to a unique crate type, offering different levels of rarity and rewards
Keys
The keys spawn in world loot containers listed in the config. Each container has a probability field that can be customized to set the probabilities for each key type to spawn in the container. Normal cards CANNOT be used at the loot crates and loot keys cannot be used in monuments. Upon collection 10 Green loot keys they will be upgraded to one Blue key. The same for Blue to Red
Loot Crates
The three loot crates all have their own configurable reward lists that even allows you to specify skinID and names to allow custom rewards to be given when the key is claimed. Each item added must be given a probability %. This will determine how likely a player is to receive the item.
Admin Commands
There are a few admin commands:
/addcustomloc - This will allow you to set the coords for a custom set of crates to spawn at. You MAY need to alter the coords to best fit your needs in the config. Just stand where you want them to spawn, face the way you want the readers to face, and run the command. Within 5 seconds a set of crates will spawn and be ready for use.
/gk - This will give you, the admin, one of each key. This can be used for testing rewards and handing out randomly.
/givekey <color> - This is a console command. It can be used to give keys through shops, rewards, or anything that allows commands as a reward.
/givekey <player> <color> <qty> - This admin command allows you to give a specific color and quantity of key to a specific player.
Monument Spawning
The three loot crates will spawn in default positions. These can be changed by altering the config position and rotation values for the crates at a specific monument OR by using the /addcustomloc command mentioned above.
Example Config:
{ "Custom Crate Location": [ { "enabled": true, "pos": { "x": -1785.229, "y": 3.521712, "z": 1480.33313 }, "rot": { "x": 0.0, "y": 150.63768, "z": 0.0 } } ], "Crates that Keys will spawn in": [ { "crateName": "heli_crate", "enabled": true, "gKeyChance": 0, "bKeyChance": 0, "rKeyChance": 5 }, { "crateName": "bradley_crate", "enabled": true, "gKeyChance": 0, "bKeyChance": 0, "rKeyChance": 5 }, { "crateName": "codelockedhackablecrate_oilrig", "enabled": true, "gKeyChance": 0, "bKeyChance": 0, "rKeyChance": 5 }, { "crateName": "codelockedhackablecrate", "enabled": true, "gKeyChance": 0, "bKeyChance": 0, "rKeyChance": 5 }, { "crateName": "wagon_crate_normal_2", "enabled": true, "gKeyChance": 5, "bKeyChance": 1, "rKeyChance": 0 }, { "crateName": "wagon_crate_normal", "enabled": true, "gKeyChance": 0, "bKeyChance": 5, "rKeyChance": 0 }, { "crateName": "crate_tools", "enabled": true, "gKeyChance": 5, "bKeyChance": 1, "rKeyChance": 0 }, { "crateName": "crate_underwater_advanced", "enabled": true, "gKeyChance": 0, "bKeyChance": 5, "rKeyChance": 0 }, { "crateName": "crate_normal_2", "enabled": true, "gKeyChance": 5, "bKeyChance": 1, "rKeyChance": 0 }, { "crateName": "crate_normal", "enabled": true, "gKeyChance": 0, "bKeyChance": 5, "rKeyChance": 0 }, { "crateName": "supply_drop", "enabled": true, "gKeyChance": 0, "bKeyChance": 0, "rKeyChance": 5 }, { "crateName": "crate_elite", "enabled": true, "gKeyChance": 0, "bKeyChance": 5, "rKeyChance": 0 } ], "Green Loot Rewards": [ { "itemShortname": "wood", "skin": 0, "itemName": "", "minQuantity": 500, "maxQuantity": 500, "probability": 100 }, { "itemShortname": "stones", "skin": 0, "itemName": "", "minQuantity": 500, "maxQuantity": 500, "probability": 100 }, { "itemShortname": "lowgradefuel", "skin": 0, "itemName": "", "minQuantity": 250, "maxQuantity": 250, "probability": 100 }, { "itemShortname": "metal.fragments", "skin": 0, "itemName": "", "minQuantity": 250, "maxQuantity": 250, "probability": 100 }, { "itemShortname": "metal.refined", "skin": 0, "itemName": "", "minQuantity": 50, "maxQuantity": 50, "probability": 100 }, { "itemShortname": "scrap", "skin": 0, "itemName": "", "minQuantity": 100, "maxQuantity": 100, "probability": 100 }, { "itemShortname": "ammo.pistol", "skin": 0, "itemName": "", "minQuantity": 50, "maxQuantity": 50, "probability": 100 }, { "itemShortname": "wood", "skin": 0, "itemName": "", "minQuantity": 500, "maxQuantity": 500, "probability": 100 }, { "itemShortname": "stones", "skin": 0, "itemName": "", "minQuantity": 500, "maxQuantity": 500, "probability": 100 }, { "itemShortname": "lowgradefuel", "skin": 0, "itemName": "", "minQuantity": 250, "maxQuantity": 250, "probability": 100 }, { "itemShortname": "metal.fragments", "skin": 0, "itemName": "", "minQuantity": 250, "maxQuantity": 250, "probability": 100 }, { "itemShortname": "metal.refined", "skin": 0, "itemName": "", "minQuantity": 50, "maxQuantity": 50, "probability": 100 }, { "itemShortname": "scrap", "skin": 0, "itemName": "", "minQuantity": 100, "maxQuantity": 100, "probability": 100 }, { "itemShortname": "ammo.pistol", "skin": 0, "itemName": "", "minQuantity": 50, "maxQuantity": 50, "probability": 100 } ], "Give Green rewards through commands?": true, "Green Command (use %steamid% where player ID would be)": [ { "Command": "givekey %steamid% blue", "Command Chat Message": "", "Enabled": true } ], "Blue Loot Rewards": [ { "itemShortname": "rifle.ak", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "explosive.satchel", "skin": 0, "itemName": "", "minQuantity": 2, "maxQuantity": 2, "probability": 100 }, { "itemShortname": "largebackpack", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "grenade.f1", "skin": 0, "itemName": "", "minQuantity": 10, "maxQuantity": 10, "probability": 100 }, { "itemShortname": "rifle.lr300", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "metal.facemask", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "metal.plate.torso", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "electric.generator.small", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "black.raspberries", "skin": 0, "itemName": "", "minQuantity": 10, "maxQuantity": 10, "probability": 100 }, { "itemShortname": "rifle.ak", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "explosive.satchel", "skin": 0, "itemName": "", "minQuantity": 2, "maxQuantity": 2, "probability": 100 }, { "itemShortname": "grenade.f1", "skin": 0, "itemName": "", "minQuantity": 10, "maxQuantity": 10, "probability": 100 }, { "itemShortname": "rifle.lr300", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "metal.facemask", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "metal.plate.torso", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "electric.generator.small", "skin": 0, "itemName": "", "minQuantity": 1, "maxQuantity": 1, "probability": 100 }, { "itemShortname": "black.raspberries", "skin": 0, "itemName": "", "minQuantity": 10, "maxQuantity": 10, "probability": 100 } ], "Give Blue rewards through commands?": false, "Blue Command (use %steamid% where player ID would be)": [ { "Command": "givekey %steamid% red", "Command Chat Message": "", "Enabled": true } ], "Red Loot Rewards": [], "Give Red rewards through commands?": true, "Red Command (use %steamid% where player ID would be)": [ { "Command": "sr add %steamid% 3", "Command Chat Message": "<color=white>%steamid%</color> <color=red> received <color=white>3 RP</color> from the Red Key Crate!</color>", "Enabled": true }, { "Command": "opl %steamid%", "Command Chat Message": "<color=white>%steamid%</color> <color=red> received a <color=white>RP Rocket Launcher</color> from the Red Key Crate!</color>", "Enabled": true }, { "Command": "inventory.giveto %steamid% supply.signal 3", "Command Chat Message": "<color=white>%steamid%</color> <color=red> received <color=white>3 Supply Signals</color> from the Red Key Crate!</color>", "Enabled": true }, { "Command": "recycler.give %steamid%", "Command Chat Message": "<color=white>%steamid%</color> <color=red> received a <color=white>Recycler</color> from the Red Key Crate!</color>", "Enabled": true }, { "Command": "inventory.giveto %steamid% blood 3", "Command Chat Message": "<color=white>%steamid%</color> <color=red> received <color=white>3 Blood</color> from the Red Key Crate!</color>", "Enabled": true }, { "Command": "addrolls %steamid% free 3", "Command Chat Message": "<color=white>%steamid%</color> <color=red> received <color=white>3 Free Rerolls for today</color> from the Red Key Crate!</color>", "Enabled": true } ], "Broadcast when Red Key used?": true, "Monument Info": [ { "name": "assets/bundled/prefabs/autospawn/monument/medium/bandit_town.prefab", "enabled": false, "pos": { "x": 9.0, "y": 2.8, "z": 0.7 }, "rot": { "x": 0.0, "y": -90.0, "z": 0.0 } }, { "name": "assets/bundled/prefabs/autospawn/monument/medium/compound.prefab", "enabled": false, "pos": { "x": -24.1, "y": 0.2, "z": 12.1 }, "rot": { "x": 0.0, "y": 90.0, "z": 0.0 } } ] }
-
Loot Reroll
Dive into a world of enhanced gameplay with the Loot Reroll plugin, which introduces a dynamic element to looting crates. This plugin empowers players with the appropriate permissions to exercise a unique gameplay mechanic—rerolling the contents of crates. By leveraging this innovative feature, players can potentially uncover better rewards and loot items, elevating their experience within the game.
Limits
Tailor your server's experience by configuring the frequency at which players can reroll crates. This allows for fine-tuning of daily reroll limits, providing an avenue for players to strategically manage their loot rerolls. If desired, you can also set up a tantalizing incentive: daily free rerolls. By specifying an allotted number of free rerolls, you can encourage players to engage with the feature without spending currency. If a more controlled environment suits your server better, you have the flexibility to disable free rerolls entirely.
Cost
Currency takes center stage in the Loot Reroll plugin, with each crate's reroll operation entailing a specific cost. Both regular players and VIPs are catered to, as the plugin supports distinct costs for each group. VIPs can access a unique pricing structure, fostering a sense of exclusivity and incentivizing player engagement.
Crates
Each container is assigned its own reroll costs. The possibility to enable or disable specific containers for rerolls offers complete control over the gameplay experience. With the power to shape the availability of rerolls on a container-by-container basis, you can curate a diverse and engaging looting environment that aligns with your server's theme and objectives.
Commands
/rerolls - This will show the player the amount of free/daily rerolls available.
Admin/Console Commands
Chat - /addrolls playername daily/free quantity (example: /addrolls sinkohh daily 5 will give me 5 daily rolls)
Console - addrolls playername daily/free quantity (example: addrolls sinkohh free 5 will give me 5 daily rolls)
Notes:
- A crate can only be rerolled ONE time.
- If you exit the container prior to rerolling it you CANNOT reroll if afterwards.
- If you move an item in the container you CANNOT reroll it.
- Only the FIRST player to loot the container can reroll it.
Default Config
{ "Currency type": "ServerRewards", "Free Rerolls (Daily)": 3, "Daily Reroll Limit": 20, "Free Rerolls VIP (Daily)": 5, "Daily Reroll Limit VIP": 20, "Crates that can be rerolled": [ { "crateName": "crate_elite", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "supply_drop", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "heli_crate", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "bradley_crate", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "codelockedhackablecrate_oilrig", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "codelockedhackablecrate", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "wagon_crate_normal_2", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "wagon_crate_normal", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_tools", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_underwater_advanced", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_normal_2", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_normal", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_normal_2_food", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_food_1", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_food_2", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "wagon_crate_normal_2_food", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_normal_2_medical", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_medical", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "wagon_crate_normal_2_medical", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_underwater_basic", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_basic", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_mine", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_ammunition", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "crate_fuel", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 }, { "crateName": "wooden_crate_gingerbread", "enabled": true, "rerollCost": 10, "rerollCostVIP": 5 } ] }
-
Headlight
Allows players to activate Headlight (Miner's Hat) without taking up any wearable slots, and does not conflict with any headwear.
This is useful for having better vision at night without compromising armor or taking off hazmat suit, especially when farming ore/wood.
Auto Equip
You can define whether you would the headlight to auto equip at Sunset and unequip at Sunrise by setting default state to NightOnly, and define game times in config. If set to Always instead, it will always equip a headlight to players with permission (light will be turned off, they can turn it on/off like any other worn miner's hat while equipped).
Permissions
headlight.use Chat Commands
/headlight - Shows available commands (can be changed in config) Console Commands
giveheadlight %steamid% - Equips a headlight on a target player headlight toggle - For easier key binding (e.g. bind p headlight toggle)
Config
{ "Command": "headlight", "Auto Equip Settings": { "Default State (Always|NightOnly|Off)": "NightOnly" }, "Night Time Settings": { "Sunset InGame Time (00:00)": "22:00", "Sunrise InGame Time (00:00)": "07:00" }, "Alert Settings": { "Send in Chat": false, "Send as Game Tip": true }, "Version": { "Major": 1, "Minor": 0, "Patch": 2 } }- #headlight
- #rust
- (and 6 more)
-
Safe Kick
Teleports players that are kicked for particular reasons to a safe place
Avoids players getting frustrated with random disconnections and loss of loot
Use /getmonumentpos in a monument in order to get the correct position & add it to the config
if there are more than one monument added the safe place will be randomized, same mechanism applies to multiple positions
The plugin allows you to set a list of positions for any monument you desire once, even if the map wipes and monument's positions changes the plugin will still teleport the player to the same position within the monument
Configuration:
{ "Kick Reasons": [ "auth", "packet flooding: player tick", "unresponsive", "steam" ], "Monuments & positions to teleport (Randomized if more than one monument)": { "assets/bundled/prefabs/autospawn/monument/medium/compound.prefab": [ { "x": 0.0, "y": 0.0, "z": 0.0 }, { "x": 0.0, "y": 0.0, "z": 0.0 } ], "assets/bundled/prefabs/autospawn/monument/medium/bandit_town.prefab": [ { "x": 0.0, "y": 0.0, "z": 0.0 }, { "x": 0.0, "y": 0.0, "z": 0.0 } ] } } Permissions:
safekick.use
Commands:
/getmonumentpos (Requires admin access)
-
Survival Arena
By imthenewguy in Plugins
Survival Arena is a plugin that spawns a Battle-royal style game, where players must scavenge for equipment and fight to the death, all while staying inside of a shrinking, non-radiated zone.
The plugin spawns a large play area high in the sky and inherits the biome type from the ground below. This means that if the area is suspended above an arctic biome, all of the rocks, trees, logs and bushes will be spawned mirroring that biome type.
Players are teleported into the center building when they join, and once the game begins, they must loot containers to gear up to survive. Players are returned to their original locations when they leave the event or respawn after dying at the event.
Server owners can change or add loot profiles via the config. The plugin will select a random profile when the arena begins and fill the loot containers based on your specifications.
It comes with 2 default loot profiles:
Primitive - spears, melee weapons, bows, crossbows, burlap equipment, revolvers etc GunLoot - more modern weapons.
The plugin uses EventHelper to run automatically, handle joining and leaving, and will allow players to vote to start the game.
Admins can also add additional trees, bushes, logs and loot spawns to the arena via command.
Type: Chat Command: survivalarena Function: Sends the user the UI to start up the game. Loot profiles, spawn height and lobby time can be adjusted here before starting the game. Type: Chat/Console Command: startarena <heightMod> <lobbytime> <arenaName> <lootProfile> Function: Spawns and starts the game using the specified heightmod and lobbytime parameters. You can simply use the command with no parameters to start it using the default settings and a random arena/lootprofile. Type: Chat/Console Command: endarena Function: Ends any active games and despawns the arena. Type: Chat Command: spawnarena <name> Function: Spawns the arena, but does not start the game. Useful for debugging and development. Type: Chat Command: setcentrepoint Function: Sets the arena's new center point at the players location. Useful if you want to move the spawn so it has more biome variety. Be sure not to make it too high or too close to the ground. Type: Chat Command: survival Function: Used to join the game when the lobby is active. Type: Chat Command: saremove Function: Removes the tree, loot container, log or bush that the player is looking at. This will no longer spawn in future games. Type: Chat Command: addtree Function: adds a tree spawn at the players position. Type: Chat Command: addbush Function: adds a bush spawn at the players position. Type: Chat Command: addlog Function: adds a log spawn at the players position. Type: Chat Command: addloot Function: adds a loot spawn at the players position. Type: Chat Command: saleave Function: Leaves the event Type: Console/Chat Command: wipeoldarena Function: Wipes any entities that are at the same height or higher than the arena.
survivalarena.admin
survivalarena.autojoin
If you wish to create your own arena, you may follow this tutorial here: https://youtu.be/BxmcjHjIJDU
Please note that the map file name needs to contain survivalarena or it will not allow the getarena command to work. Also I will not be offering support for this, so use at your own risk.
API
Hook Calls
void OnSurvivalArenaStart() - Called when the lobby starts. void OnSurvivalArenaEnd() - Called when the game is ending. void OnSurvivalArenaWin(BasePlayer player) - Called when a player wins the game. void OnEventLeave(BasePlayer player, string pluginName) - Called when a player leaves the event. object OnEventJoin(BasePlayer player, string pluginName) - Called when a player is attempting to join the event. Returning a string will prevent the player from joining and will print the string to them. void OnEventJoined(BasePlayer player, string pluginName) - Called when a player has successfully joined the arena. void OnPlayerItemsRestored(BasePlayer player) - called when a players items have been restored.
Hook Methods
bool IsEventPlayer(BasePlayer player) - returns true or null if the player is an EventPlayer.