GangstaPichu's Wishlist
-
PNPC Helicopter AI
Let your Personal NPCs fly helicopters for you with the Heli AI Addon! This addon for Personal NPC enables your bots to take control of helicopters, allowing you to sit back and enjoy the flight while they fly to the destination.
Features:
🚁 Fully Automated AI Pilots
• Spawn a Personal NPC bot
• Select a point on the in-game map, and the bot will fly there.
• Works perfect with all helicopters in Rust.
🎯 Smooth Flight Controls
• Adjustable altitude, flight speed, and maneuverability.
• Setup pitch, throttle, and rotation for better control.
• Automatically adjusts height above the ground to avoid obstacles.
⚙ Other Customization
• Set minimum and maximum flight altitude.
• Adjust landing speed, flight slope, and pitch strength.
• Optimize rotation and throttle power for smoother navigation.
How to Use:
1️⃣ Spawn a bot using the PersonalNPC plugin.
2️⃣ Enter the helicopter as a passenger.
3️⃣ Mark your destination on the in-game map.
4️⃣ Sit back and let your AI pilot handle the flight!
📜 Requirements:
✔️ PersonalNPC Plugin (must be installed & enabled).
✔️ Addon must be activated in bot settings.
📸 See It in Action! Watch the Video
📃 Configuration:
{ "Max height above the ground": 25.0, "Minimum height to fly forward/backward": 15.0, "Max slope by forward axis": 0.3, "Pitch strength": 0.2, "Throttle strength": 1.0, "Land throttle strength": 0.5, "YAW strength (rotation around its axis)": 1.0 }
-
Heli Signals
Heli Signals allows players with permission to call an Attack Helicopter to their location with a custom Supply Signal, where it will engage players and patrol, allowing players to fight it to win the valuable Heli crates.
The plugin comes with 8 default heli profiles, Easy, Medium, Hard and Elite, with a duplicate profile of each set up for calling multiple helis at once for each tier. In addition there is also 2 Wave Heli profiles, which will call in a wave of different helis one after the other. Each default profile has it's own custom supply signal skin (below). Server owners can add as many profiles as they like in the config by copying and pasting an existing profile within the config and editing to suit. This may require the server owner to create their own custom skin for the inventory item.
If you are setting up Multi heli signals, set the global and player limit in the config accordingly to accommodate higher numbers of helicopters per player.
There is also an option to have a BotReSpawn profile spawn at the crash site, just set the BotReSpawn profile name in the config.
IMPORTANT:
Each heli profile or wave profile in the config MUST have its own unique name and skin ID, otherwise you will have issues.
NOTE ABOUT SHOPS:
The profile name in the config should match the Custom Supply Signal name which the shop gives the player. The Helicopter Name is separate and can be set independently from the Signal item. Also, when giving players items from shop plugins, if available, I always recommend adding the item to the shop using custom name, skinID etc, rather than the console command, but either will work.
Plugin default Supply Signal Skin ID's to add items to various shops, loot plugins, kits etc are:
Heli Signal (Easy) : 2920175997
Heli Signal (Medium) : 2920176079
Heli Signal (Hard) : 2920176050
Heli Signal (Elite) : 2920176024
Heli Signal (Expert) : 3099117081
Heli Signal (Nightmare) : 3099117372
Multi Heli (Easy) : 3083234542
Multi Heli (Medium) : 3083234833
Multi Heli (Hard) : 3083234755
Multi Heli (Elite) : 3083234647
Multi Heli (Expert) : 3099124338
Multi Heli (Nightmare) : 3099124426
Heli Wave Signal : 3099117224
Heli Wave Signal (Normal): 3104667036
Heli Wave Signal (Hard): 3104666951
Default Permissions:
helisignals.admin (to use give|hsclearcd command) helisignals.buy (to use /hsbuy command) helisignals.bypasscooldown helisignals.easy helisignals.medium helisignals.hard helisignals.elite helisignals.easy_multi helisignals.medium_multi helisignals.hard_multi helisignals.elite_multi helisignals.wave_normal helisignals.wave_hard Please note: Permissions above are with default config, permission for each Heli profile can be customised in the config.
Commands (Prefix with / to use in game):
hsgive <Profile ShortName> <Steam64ID> <Amount> hsbuy list hsbuy <Profile Shortname> hsreport (Get details of all active helis) hsretire (Retire all a player or their teams called Helis, no refunds) hsclearcd (clear all cooldowns) hsclearcd <SteamID|Name> (clear cooldown for player) (Buy and Retire command customisable in config)
Please note correct usage for Supply Signal name and Helicopter display name. These values CAN be different if you wish:
Loot Options:
Use the loot item example entries in the default config to create custom loot tables for crates.
How to Add Loot Table Items (Example):
Default Config:
For Other Developers:
The following hook is available to use in your plugins to check custom Supply Signals or Patrol Helicopters to avoid conflict with your plugins:
object IsHeliSignalObject(ulong skinID)
This will return true if the item is a Bradley Drop item/entity, or null if not.
Call it directly without referencing the plugin:
if (Interface.CallHook("IsHeliSignalObject", skinID) != null) return true; // IsHeliSignalObject Or reference my plugin and call like this:
[PluginReference] Plugin HeliSignals; if (HeliSignals.CallHook("IsHeliSignalObject", skinID) != null) return true; // IsHeliSignalObject- #helicopter
- #helicopters
- (and 17 more)
-
Priority Queue
By Whispers88 in Plugins
Priority Queue redefines the vanilla queue skip with a brand new permission based system. Previously queue skips would allow players to bypass the max player limit of a server. Priority queue gives you full control of which players move to the front of the queue or can skip the queue. You can also offer players a new system of saving their spot when they disconnect from the queue or the server.
Priority Queue - Skip Players to the front of the queue Bypass Queue - Skip the entire queue Hold Queue Position - Holds your position in queue if you disconnect Bypass Queue on Disconnect - Allows you to bypass the queue if you just dc'ed Noob Bypass or Priority - Allows first time players to skip or priority queue
priorityqueue.bypass - permission for queue skip priorityqueue.priority - permission to skip all non-priority players in the current queue priorityqueue.bypassDC - permission to bypass the queue if you have recently disconnected priorityqueue.hold - permission to hold your position in the queue if recently disconnected
{ "Bypass Queue on Disconnect Timeout (minutes)": 5, "Hold Queue Position on Disconnect Timeout (minutes)": 5, "Disable native slot reservation": true, "Noob Queue Priority": false, "Noob Bypass Priority": false }
- #priorityqueue
- #priority queue
- (and 14 more)
-
Custom Crops
Create some new items for players to get while farming, Create Drug Farms, Ammo Farms, Weapon Farms, Whatever you set in Configuration for your players to harvest.
MONEY SEED IN IMAGE IS AN EXAMPLE OF A CUSTOMERS CUSTOM CONFIG
ADMIN PERMISSION - customcrops.admin
CANCLONE PERMISSION - customcrops.canclone
HERE IS A SEED PACK TEMPLATE I USED TO CREATE THE PACKS ON DEFAULT CONFIG
CC Template.zip
Developer API
IsCustomCropSeedPack - Will return true if the item is a custom crop seed pack - Takes an Item as an argument
IsCustomCrop - Will return true if the growable is a custom crop - Takes a GrowableEntity as an argument
IsCustomCropSeed - Will return true if the item is a custom crop seed - Takes a Ulong as an argument
The config comes Preset with a seed pack, and seeds to harvest weapons and ammo.
Create as many Seed Packs, and seeds as you like.
Seed packs must be an openable like a loot bag, Seeds must be seeds.
Config comes with a setting to only harvest at ripe, or turn off and set lesser rewards for players that want to harvest early.
Cloning is disabled but can be enabled per seed.
Eating is disabled and will block upon attempt.
Admin Commands
/giveseeds – gives seeds to players inv.
/giveseedpacks - gives seed packs to players inv.
/c.spawnpacks - spawns all packs into a container in front of you, useful if you have alot of custom packs
/c.spawnseeds- spawns all seeds into a container in front of you, useful if you have alot of custom seeds
/c.spawnproduct - spawns all seed final product into a container in front of you
VIDEO DEMO - CONFIG AND LANG BELOW
Config
{ "Settings": { "Only Allow Gather At Ripe State?": true, "Allow Planting in Specified Zones?": false, "Zones": [ "ENTERIDHERE", "ENTERANOTHERHERE" ] }, "Seed Packs": [ { "Seed Pack Shortname": "halloween.lootbag.small", "Seed Pack Name": "Weapons Seed Pack", "Seed Pack SkinID": 3336282159, "Minimum Amount of Seeds": 1, "Maximum Amount of Seeds": 5, "Seed Pack Loot Table": [ { "Shortname": "seed.hemp", "SkinID": 3336288267, "Probability (0-1)": 0.2, "Custom Name": "Rifle Seeds", "Minimum Amount": 1, "Maximum Amount": 5 }, { "Shortname": "seed.hemp", "SkinID": 3336288376, "Probability (0-1)": 0.5, "Custom Name": "Pistol Seeds", "Minimum Amount": 1, "Maximum Amount": 3 }, { "Shortname": "seed.hemp", "SkinID": 3336288463, "Probability (0-1)": 0.3, "Custom Name": "Shotgun Seeds", "Minimum Amount": 1, "Maximum Amount": 3 }, { "Shortname": "seed.yellow.berry", "SkinID": 3336288567, "Probability (0-1)": 0.3, "Custom Name": "Rifle Ammo Seeds", "Minimum Amount": 1, "Maximum Amount": 3 }, { "Shortname": "seed.red.berry", "SkinID": 3336288676, "Probability (0-1)": 0.3, "Custom Name": "Shotgun Ammo Seeds", "Minimum Amount": 1, "Maximum Amount": 3 }, { "Shortname": "seed.blue.berry", "SkinID": 3336288759, "Probability (0-1)": 0.3, "Custom Name": "Pistol Ammo Seeds", "Minimum Amount": 1, "Maximum Amount": 3 } ] } ], "Seeds": [ { "Seed Shortname (Must Be a Seed)": "seed.hemp", "Seed Name": "Rifle Seeds", "Seed SkinID": 3336288267, "Enable Yield Bonus?": false, "Allow Cloning?": false, "Clone Minimum": 1, "Clone Maximum": 2, "Yield Bonus Item Amount Per Yield Gene": 1, "Seed Harvest States": { "Sapling": { "Minimum Amount": 0, "Maximum Amount": 1 }, "Crossbreed": { "Minimum Amount": 2, "Maximum Amount": 4 }, "Mature": { "Minimum Amount": 3, "Maximum Amount": 6 }, "Fruiting": { "Minimum Amount": 5, "Maximum Amount": 8 }, "Ripe": { "Minimum Amount": 7, "Maximum Amount": 10 }, "Dying": { "Minimum Amount": 0, "Maximum Amount": 1 } }, "Seed Loot Table": [ { "Shortname": "rifle.ak", "SkinID": 3335692326, "Probability (0-1)": 0.5, "Custom Name": "", "Minimum Amount": 1, "Maximum Amount": 1 }, { "Shortname": "rifle.lr300", "SkinID": 3312482754, "Probability (0-1)": 0.5, "Custom Name": "", "Minimum Amount": 1, "Maximum Amount": 1 } ] }, { "Seed Shortname (Must Be a Seed)": "seed.hemp", "Seed Name": "Pistol Seeds", "Seed SkinID": 3336288376, "Enable Yield Bonus?": false, "Allow Cloning?": false, "Clone Minimum": 1, "Clone Maximum": 2, "Yield Bonus Item Amount Per Yield Gene": 1, "Seed Harvest States": { "Sapling": { "Minimum Amount": 0, "Maximum Amount": 1 }, "Crossbreed": { "Minimum Amount": 1, "Maximum Amount": 2 }, "Mature": { "Minimum Amount": 3, "Maximum Amount": 5 }, "Fruiting": { "Minimum Amount": 4, "Maximum Amount": 7 }, "Ripe": { "Minimum Amount": 5, "Maximum Amount": 9 }, "Dying": { "Minimum Amount": 0, "Maximum Amount": 1 } }, "Seed Loot Table": [ { "Shortname": "pistol.m92", "SkinID": 0, "Probability (0-1)": 0.4, "Custom Name": "", "Minimum Amount": 1, "Maximum Amount": 1 }, { "Shortname": "pistol.prototype17", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 1, "Maximum Amount": 1 }, { "Shortname": "pistol.revolver", "SkinID": 0, "Probability (0-1)": 0.6, "Custom Name": "", "Minimum Amount": 1, "Maximum Amount": 1 }, { "Shortname": "pistol.water", "SkinID": 0, "Probability (0-1)": 0.6, "Custom Name": "", "Minimum Amount": 1, "Maximum Amount": 1 } ] }, { "Seed Shortname (Must Be a Seed)": "seed.hemp", "Seed Name": "Shotgun Seeds", "Seed SkinID": 3336288463, "Enable Yield Bonus?": false, "Allow Cloning?": false, "Clone Minimum": 1, "Clone Maximum": 2, "Yield Bonus Item Amount Per Yield Gene": 1, "Seed Harvest States": { "Sapling": { "Minimum Amount": 0, "Maximum Amount": 1 }, "Crossbreed": { "Minimum Amount": 1, "Maximum Amount": 3 }, "Mature": { "Minimum Amount": 4, "Maximum Amount": 6 }, "Fruiting": { "Minimum Amount": 5, "Maximum Amount": 7 }, "Ripe": { "Minimum Amount": 6, "Maximum Amount": 10 }, "Dying": { "Minimum Amount": 1, "Maximum Amount": 2 } }, "Seed Loot Table": [ { "Shortname": "shotgun.double", "SkinID": 1426115707, "Probability (0-1)": 0.3, "Custom Name": "", "Minimum Amount": 10, "Maximum Amount": 20 }, { "Shortname": "shotgun.m4", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 1, "Maximum Amount": 1 }, { "Shortname": "shotgun.pump", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 1, "Maximum Amount": 1 } ] }, { "Seed Shortname (Must Be a Seed)": "seed.yellow.berry", "Seed Name": "Rifle Ammo Seeds", "Seed SkinID": 3336288567, "Enable Yield Bonus?": false, "Allow Cloning?": false, "Clone Minimum": 1, "Clone Maximum": 2, "Yield Bonus Item Amount Per Yield Gene": 1, "Seed Harvest States": { "Sapling": { "Minimum Amount": 0, "Maximum Amount": 1 }, "Crossbreed": { "Minimum Amount": 1, "Maximum Amount": 3 }, "Mature": { "Minimum Amount": 4, "Maximum Amount": 6 }, "Fruiting": { "Minimum Amount": 5, "Maximum Amount": 7 }, "Ripe": { "Minimum Amount": 6, "Maximum Amount": 10 }, "Dying": { "Minimum Amount": 1, "Maximum Amount": 2 } }, "Seed Loot Table": [ { "Shortname": "ammo.rifle", "SkinID": 0, "Probability (0-1)": 0.3, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 }, { "Shortname": "ammo.rifle.hv", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 }, { "Shortname": "ammo.rifle.incendiary", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 } ] }, { "Seed Shortname (Must Be a Seed)": "seed.red.berry", "Seed Name": "Shotgun Ammo Seeds", "Seed SkinID": 3336288676, "Enable Yield Bonus?": false, "Allow Cloning?": false, "Clone Minimum": 1, "Clone Maximum": 2, "Yield Bonus Item Amount Per Yield Gene": 1, "Seed Harvest States": { "Sapling": { "Minimum Amount": 0, "Maximum Amount": 1 }, "Crossbreed": { "Minimum Amount": 1, "Maximum Amount": 3 }, "Mature": { "Minimum Amount": 4, "Maximum Amount": 6 }, "Fruiting": { "Minimum Amount": 5, "Maximum Amount": 7 }, "Ripe": { "Minimum Amount": 6, "Maximum Amount": 10 }, "Dying": { "Minimum Amount": 1, "Maximum Amount": 2 } }, "Seed Loot Table": [ { "Shortname": "ammo.shotgun", "SkinID": 0, "Probability (0-1)": 0.3, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 }, { "Shortname": "ammo.shotgun.fire", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 }, { "Shortname": "ammo.shotgun.slug", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 } ] }, { "Seed Shortname (Must Be a Seed)": "seed.blue.berry", "Seed Name": "Pistol Ammo Seeds", "Seed SkinID": 3336288759, "Enable Yield Bonus?": false, "Allow Cloning?": false, "Clone Minimum": 1, "Clone Maximum": 2, "Yield Bonus Item Amount Per Yield Gene": 1, "Seed Harvest States": { "Sapling": { "Minimum Amount": 0, "Maximum Amount": 1 }, "Crossbreed": { "Minimum Amount": 1, "Maximum Amount": 3 }, "Mature": { "Minimum Amount": 4, "Maximum Amount": 6 }, "Fruiting": { "Minimum Amount": 5, "Maximum Amount": 7 }, "Ripe": { "Minimum Amount": 6, "Maximum Amount": 10 }, "Dying": { "Minimum Amount": 1, "Maximum Amount": 2 } }, "Seed Loot Table": [ { "Shortname": "ammo.pistol.hv", "SkinID": 0, "Probability (0-1)": 0.3, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 }, { "Shortname": "ammo.pistol.fire", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 }, { "Shortname": "ammo.pistol", "SkinID": 0, "Probability (0-1)": 0.2, "Custom Name": "", "Minimum Amount": 64, "Maximum Amount": 128 } ] } ] }
Lang
{ "CropCannotBeCloned": "[<color=green>Crops</color>] This <color=green>{0}</color> crop cannot be cloned.", "CropItemsGiven": "[<color=green>Crops</color>] You have received <color=yellow>{0}</color> items from your <color=green>{1}</color> crop at the <color=green>{2}</color> state.", "CropNotRipe": "[<color=green>Crops</color>] This <color=green>{0}</color> crop is Not Ripe." }
VIDEO ATTRIBUTION https://www.vecteezy.com/free-videos/plant Plant Stock Videos by Vecteezy
- #customizable crops
- #farming
-
(and 1 more)
Tagged with:
-
Limit Entities
The purpose of this plugin is to restrict the entities that players can build. You can limit any entity based on its prefab. To get the full list of supported prefabs, use the limitentities.list console command.
There are three types of limits available: global, building, and radius. For building limit checks, if a cupboard is placed, the limits of the cupboard owner will apply. If no cupboard is present, the restrictions of the first block's owner will be used. When you run the plugin for the first time, no players will be restricted. To apply limits, you must assign one or more permissions from your config file to a player or group. The plugin also tracks permission changes, so you won't need to restart it after granting a player new permissions or adding them to a VIP group, for example. This plugin is designed to be efficient and performant, even on heavily loaded servers.
The plugin now supports Entity Groups, and group names are translatable. All newly created groups are automatically added to the language files when the plugin loads. You can create as many groups as you like or remove them entirely. Just keep in mind that if you add an entity to a group, you cannot also add it to Limits Entities — you must use the Group name instead.
Extended Power Lights (Deluxe Christmas Lights) support has been added: a new group of limits is now included in the config. The default values are set to -1, meaning no limits. Adjust them according to your needs.
Radius Limits allow you to restrict the number of specific entities within a certain radius. This feature is designed for static deployable entities (like turrets or lights) and helps prevent spam placement in concentrated areas.
Note: Radius limits only work for static entities (entities that don't move after placement). This feature can be resource-intensive if used with very large radius values or too many entities, so use it judiciously. Note: If you want to have "beautiful" names even on English only, please, install Rust Translation API plugin or you will have short prefab names only. ## Permissions
limitentities.immunity -- Allows player to not being limited by this plugin limitentities.admin -- Allows player to check other player limits and execute console command
More permissions with limits are created in config file (see Configuration section below) ## Commands
/limits <player name | steamid> (optional) -- Get current limits list for a player. If player doesn't have admin permission or player name/id is empty - current player limit will be shown limitentities.list (console only) - print all tracked prefabs list into log file. Requires admin rights (can be used in server console/RCON) ## Configuration
You can remove unnecessary default permissions and also add as many permissions as you want. For cases where the player has more than one, the permission with the higher priority will be applied. Note: For better performance, grant permissions only to players you want to limit, or use an immunity permission to disable limits entirely. Enable or disable notifications and logging. Set the Building Detection Range to be used when a building is not specified (e.g., not a decay entity). Do not set this value too high — it may significantly impact performance! Enable or disable tracking (and limiting) for Power Lights (Deluxe Christmas Lights). Enable or disable tracking (and limiting) for Growable Entities. Set the SteamIDIcon to a specific SteamID to customize the account icon in chat messages. Define the commands list (defaults are limits and limit). Set the percentage (%) at which limit notifications appear. If set to 0, notifications will only show when the limit is reached. Add entity prefab names to the Excluded List to make the plugin completely ignore those prefabs. Enabling Prevent Excessive Merging of buildings may affect performance, so use it at your own risk! Use Entity Groups to combine entities and set a shared limit for the entire group. Note: The same entity cannot be listed in both Group Entities and Limits Entities at the same time.
## Localization
Plugins phrases are available on 3 languages out of the box: English, Ukrainian and Russian Plugin supports Rust Translation API which allows you to have entities names on any language Rust supports There is a free version on uMod, why do you even need this plugin?
First of all, this plugin was designed to be efficient and performant. It uses unique caching system that should not consume no additional server resources Much more efficient building limit control system even without cupboard placed More accurate mechanism for notification messages Allows you to prevent entities placement if limit is set to 0 Supports Rust Translation API so you can have full support of any language Rust supports Supports Entity Groups ! Supports checks to prevent excessive merging of buildings Supports Abandoned Bases plugin Supports advanced limits for Power Lights (Deluxe Christmas Lights) Supports setting advanced building detection range Advanced radius-based limiting system for area control