Jump to content

Search the Community

Showing results for tags 'tugboat'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Categories

  • Plugins
  • Carbon
  • Harmony
  • Maps
  • Monuments
  • Prefabs
  • Bases
  • Tools
  • Discord Bots
  • Customizations
  • Extensions

Forums

  • CF Hub
    • Announcements
  • Member Hub
    • General
    • Show Off
    • Requests
  • Member Resources
    • For Hire
  • Community Hub
    • Feedback
  • Support Hub
    • Support
    • Site Support

Product Groups

  • Creator Services
  • Host Services

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me

Found 13 results

  1. Version 1.2.7

    705 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." ] }
    $18.99
  2. Version 1.0.3

    1,300 downloads

    This plugin adds an option to purchase Tugboats from Fishing Village. The cost can be configured to include any vanilla item, as well as skinned items. Permission buyabletugboats.admin - Required to use commands. buyabletugboats.free - Bypasses requirement for materials. buyabletugboats.use - Required to see the menu from the boat seller. Commands btshowspawnpoints - Visually shows the spawn locations of tugboats around the fishing village. btaddspawnpoint - Adds a spawn point for the fishing village type, using the local position of the player to the village. Configuration { "How long should the tugboat be unmountable by other players for? [This will also repossess the tugboat if the player has not claimed it]": 30.0, "Should the boat be removed if the player does not claim it within the safe time?": true, "How much fuel should the tugboar spawn with?": 100, "Draw on the players hud after puchasing the boat, to show its spawn location?": true, "Items required to purchase the tugboat": [ { "shortname": "scrap", "skin": 0, "amount": 1000 }, { "shortname": "wood", "skin": 0, "amount": 10000 }, { "shortname": "metal.fragments", "skin": 0, "amount": 1000 }, { "shortname": "metal.refined", "skin": 0, "amount": 100 } ], "Local spawn positions": { "LargeFishingVillage": [ { "x": 17.8, "y": 1.9, "z": 33.4 }, { "x": -6.1, "y": 1.9, "z": 38.8 }, { "x": -44.6, "y": 1.9, "z": 20.5 }, { "x": 34.42638, "y": 1.51616859, "z": 31.5051727 }, { "x": 50.7044449, "y": 1.560014, "z": 11.11216 }, { "x": 52.35355, "y": 0.770243049, "z": -6.283246 }, { "x": -28.84793, "y": 0.919689536, "z": 40.055378 }, { "x": -50.8738022, "y": 0.6562301, "z": 3.206874 } ], "SmallFishingVillage": [ { "x": -12.6, "y": 1.9, "z": 40.9 }, { "x": 6.9, "y": 1.9, "z": 51.2 }, { "x": 26.8, "y": 1.9, "z": 25.3 }, { "x": -37.8010559, "y": 1.0653609, "z": -6.68541336 }, { "x": -39.1526642, "y": 0.354010642, "z": 25.42265 }, { "x": 35.0974236, "y": 0.229006067, "z": -1.37241554 } ] } }
    Free
  3. Version 1.5

    31 downloads

    A 'one grid' custom map designed for high performance. The mountain in the middle provides an awesome landscape, while also containing 2 entrances that lead to the bradley APC. This map is constantly supported and updated for the current version of the game with all updates! NOTES – If you need support, join my brand new discord server @ discord.gg/TJxwpKT2Ge – The password for the editor is included with the map. (you're allowed to edit the map for your own use) - Prefabs: 2803 (high performance) HIGHLIGHTED FEATURES > Detailed terrain work – This map was made entirely manual. > 4 islands that players can build on. > 2 custom barges that players can build on, marked with X on the map. CUSTOM MONUMENTS > Cobalt Bunker - Blue Keycard Puzzle (contains the bradley apc, has 2 entrances in the mountain) > Military Settlement - MLRS, scientists, blue keycard puzzle > Improvised Hangar - Green Keycard Puzzle > Tugboat Docks - The drivable tugboats have to be spawned manually for now, or using a plugin. > Bandit Fishing Village - Safe zone CUSTOM PREFABS > 2 bridges over the rivers. > 2 buildable barges marked with X. > Waterfalls FACEPUNCH MONUMENTS > Nuclear Missile Silo > Sunken HQM Quarry > Lighthouse > Oxum's Gas Station > Underwater Lab > Small&Large Oil Rig
    $19.90
  4. Version 1.1.0

    1 download

    Adds re-spawnable vehicles with command. About Vehicle Spawnper Plus With this plugin, you can: • Define spawn points for different vehicles anywhere in your server's world. • Set custom intervals for spawning vehicles, allowing you to control the frequency of vehicle respawns. • Specify random interval for spawning vehicles, adding an element of unpredictability to your server's spawnpoints. Whether you're looking to establish vehicle spawn zones, simulate dynamic vehicle distribution, or simply enhance the gameplay experience on your Rust server, this plugin gives you the flexibility and control to do so with ease. Commands (ONLY ADMIN); • /addvehiclespawn <name> <x> <y> <z> <vehicleName> <interval> ► You can create a spawn point with static time and vehicle. • /addvehiclespawnr <name> <x> <y> <z> <vehicleName> <intervalMin> <intervalMax> ► You can create a spawn point with random interval. • /deletevehiclespawn <name> ► You can delete spawn points with this command. • /showvehiclespawns ► Prints out spawn points in f1 console. ➡ "<name>" This defines your spawn points name which you can use in /deletevehiclespawn. ➡ "<x> <y> <z>" This is positions for vehicles to be spawned you can use console command "client.printpos" to see where you're standing at. ➡ "<vehicleName>" You need to use the short name for the item you want to be spawned, available vehicles are "minicopter", "scraptransport", "tugboat", "rowboat", "rhib", "sub1" and "sub2". ➡ "<interval>" This defines the respawn time in seconds. ➡ "<intervalMin>", "<intervalMax>" you can adjust those values for how much time later the item will be respawned for random time. Ex; 1 10, Item will respawn every 1 to 10 seconds. Here is the default config file; { "Spawn1": { "Interval": 5.0, "Position": { "x": 100.0, "y": 10.0, "z": 50.0 }, "VehicleName": "minicopter" }, "Spawn2": { "Interval": 10.0, "Position": { "x": 100.0, "y": 10.0, "z": 50.0 }, "VehicleName": "scraptransport" } }
    $4.99
  5. Adem

    Shipwreck

    Version 1.1.5

    1,119 downloads

    This plugin will allow players to visit the depths of the ocean to discover 3 new locations included in this plugin: a Sunken Cargo Ship, Submerged Ore Farm, and a Shipwrecked Barge. In the wreckage you will find a high concentration of loot. Just be careful! The COBALT group has already arrived and is exploring the site. They have submarines and divers already in the water! Patrol Submarines Subs do a LOT of damage, but they have low visibility and low accuracy. Very unreliable at Titanic depths. Subs are a serious threat if you arrive in a submarine yourself. Try to sneak up behind them and destroy them, you don't want to be the one to sink, trust me! Cobalt NPC Divers High accuracy, but not much armor and don't pack a huge punch. Almost harmless if you arrive in a submarine, but they are still a threat! Keep your eyes on these guys, it might just be you or them! Killer Sharks These sharks have smelled all the blood in the water, after being drawn to the area already by all of the disturbance. They are here, they are mad, and they are bloodthirsty and hungry! The plugin includes 3 locations: Shipwrecked Cargo Ship There are three rooms in the Sunken Cargo Ship location that are opened with a keycard. The map type can be selected within the configuration file. Sunken Barge A great place to find some Shipping Containers, as well as Killer Sharks! The Cobalt group has been busy in this area, they must have taken this Barge down recently as well. Submerged Ore Farm An ore rich location with multiple farmable ore nodes, as well as some other scattered loot including fuel barrels. Chat commands (only for administrators) /shipwreckstart – launches the event in a random configuration /shipwreckstart <shipwreckstart> – launches the event in the <eventPresetName> configuration /shipwreckstartmyloc – launches the event in a random configuration in your location /shipwreckstartmyloc<shipwreckstart> – launches the event in the <eventPresetName> configuration in your location /shipwreckstop – stops the event /screatepath– starts recording the route for the npc/shark/sub /ssavepath <npc/shark/subPresetName> – saves route for npcs/sharks/sub /scancelpath – cancels route recording Console commands (RCON only) shipwreckstart – launches the event in a random configuration shipwreckstart <shipwreckstart> – launches the event in the <eventPresetName> configuration shipwreckstop – stops the event Config plugin_en – example of plugin configuration in English location_en – example of location configuration in English plugin_ru – example of plugin configuration in Russian location_ru – example of location configuration in Russian Dependencies (optional, not required) True PVE PveMode GUI Announcements Notify DiscordMessages AlphaLoot CustomLoot Economics Server Rewards IQEconomic Hooks void OnShipwreckStart() void OnShipwreckStop() My Discord: adem9554 Join the Mad Mappers Discord here! Check out more of my work here!
    $34.99
  6. Version 1.0.4

    121 downloads

    Raidable Ships | 20+ No time to build yourself, we got you Its Time to send your raiders on water and raid some Raidable ships/water bases/underwater bases. 20+ Bases Raidable Ships 7) hard 6) expert UnderwaterBase 4) nightmare WaterBases 4) hard bases include TRAPS+ Instruction added in Readme feel free to give me some tips or suggestions Contact Discord: Shao#6610
    $35.00
  7. Version 1.0.0

    11 downloads

    Decorate the ocean with this Aircraft Carrier, although it is not necessary, this Aircraft Carrier was created for the BiPlane plugin. Aircraft Carrier contains a large space to place helicopter, or spawn points for the BiPlane plugin. It also contains NPC, helicopter respawn and a hackable box.
    $8.75
  8. Melons

    Paradise Island

    Version V1

    8 downloads

    V1 Map Size: 4250 Welcome to Paradise island! Discover a map where life slows to a leisurely pace and worries melt away amidst Paradise island. Awash with vibrant colors and lush landscape. Beautiful Beach's. Lush thick forests. Players will discover a relaxing paradise that captures the essence of 7 distinct islands. Celebrate the spirit of a "Paradise" with blissful sights and fun-filled custom monuments. This map works well with the new Tug Boat update that facepunch released. V7 6 Guest Rooms (build-able Area) 6 Crew Cabins (build-able Area) Casino Newer style elevators Swimming Pool Roof top helipad Control Room V2 2 Bradley's patrol the ship 1 on main deck 2nd in ships hull Blue card puzzle with fuse and vault in lower hull Tons of scientists 10+ 4 Sam sites V1 11 Guest Rooms (build-able Area) Newer Style Elevators Swimming Pool Top Floor Swimming Pool Lower Floor Control Room V1 No cards required for this monument Regular crates & Military crates & Elite crates Working scrappers with 6 snowmobile & 2 Cranes 50 Scrap per shredding Launch Site Airfield Military Tunnel Train Yard Power Plant Satellite Dish Outpost Bandit Camp Missile Silo Water Treatment Plant Giant Excavator Pit Sewer Branch Ferry Terminal The Dome Abandoned Supermarket x3 Oxum's Gas Station x3 Lighthouse x4 Fishing Village x3 Abandoned Military Base X4 ( MLRS's are blocked and not accessible by players) Arctic Research Base x2 Ice Lake x2 Swamp Harbor x3 Ranch Large Barn After purchasing you are free to edit the map password included. Map may not be resold privately or commercially.
    $34.99
  9. Richard Hertz

    TugID

    Version 1.0.0

    2 downloads

    Introducing the go-to Rust plugin for adding a personal touch to your tugboat in Rust. Developed by Richard Hertz, this plugin lets you show off your tugboat's name in style, adding a new layer of immersion and personalization to the game. Special thank you to Reziem for the inspiration! TugID is packed with multiple features including: Customizable Tugboat Names: TugID allows you to rename your tugboat, ensuring it stands out from the crowd. Bad Word Filter: You can enable a bad word filter to prevent the use of offensive names. Permissions-Based Cooldowns: The plugin has a cooldown feature for changing tugboat names. VIP users can enjoy shorter cooldowns. Customizable Background Image: You can set a custom image for the tugboat's information display. Chat Prefix Customization: You can customize the chat prefix for all tugID messages. Chat Steam ID Icon: You can set a specific Steam ID icon to display in chat for tugID messages. Permissions: tugid.use: Allows the player to change their tugboat's name. tugid.vip1: Reduces the cooldown to change the tugboat's name for VIP1 players. tugid.vip2: Further reduces the cooldown for VIP2 players. tugid.vip3: Offers the shortest cooldown for VIP3 players. Commands: /tugid [name]: This command allows you to change the name of your tugboat to the provided name. You can use <color=[color or #Hex]>[Tugboat Name]</color> to give your name color. /tugid_remove: If you ever feel like your tugboat should go anonymous, this command removes the custom name of your tugboat. /tugid_help: Need a quick guide on how to use TugID? This command provides help and instructions for the plugin. JSON Variables: BackgroundImageUrl: The URL of the image that will be used as the background for the tugboat's info display. FilterBadWords: A boolean value that determines whether the bad words filter is enabled. ChatPrefix: The prefix for all TugID messages in chat. ChatSteamIDIcon: The Steam ID that will have its avatar shown in chat for all TugID messages. CooldownDefault: The default cooldown time (in minutes) for changing tugboat names. CooldownVIP1: The reduced cooldown time for VIP1 users. CooldownVIP2: The even more reduced cooldown for VIP2 users. CooldownVIP3: The shortest cooldown time, reserved for VIP3 users. TugID is a remarkably customizable plugin, with extensive options housed within its JSON configuration file. In addition, it provides a language file, allowing server administrators to tailor chat messages to their liking, supporting localization and facilitating player engagement. This blend of customizable features and user-focused design ensures TugID is a robust and valuable addition to any Rust server, elevating gameplay with its unique capabilities.
    $10.00
  10. bsdinis

    Vehicles

    Version 0.1.7

    271 downloads

    Spawn any type of vehicle prefab with custom commands, permissions, cooldown, starting fuel, fuel consumption, extra seats and extra mounts. The default config contains every vehicle that currently exists in Rust. Using the default config as an example; - The chat command to spawn a Minicopter would be the SpawnCommandPrefix followed by the key in the config corresponding to the Minicopter: /mymini - The chat command to fetch the Minicopter would be the FetchCommandPrefix followed by the corresponding key: /gmini - The chat command to despawn the Minicopter would be the DespawnCommandPrefix followed by the corresponding key: /nomini Config "SpawnCommandPrefix" Prefix for the spawn chat command. "FetchCommandPrefix" Prefix for the fetch chat command. "DespawnCommandPrefix" Prefix for the despawn chat command. "AllowMultipleIdentical" Allows players to have multiple vehicles of the same type. "FetchOldVehicleInsteadOfSpawningIdentical" Fetches the old vehicle if the player attempts to spawn an identical vehicle. "AllowFetchingWhenOccupied" Allows players to fetch their vehicles when there are players mounted on it. "DismountOccupantsWhenFetching" Dismounts every occupant when the player fetches their vehicle. "AllowDespawningWhenOccupied" Allows players to despawn their vehicles when there are players mounted on it. "RefundFuelOnDespawn" Refunds any fuel left inside the fuel tank when the player despawns their vehicles using the chat command. "NotifyWhenVehicleDestroyed" Sends a chat message to the player when their vehicles are destroyed. "DestroyVehiclesOnDisconnect" Destroys every vehicle when their owner disconnects. "PreventVehiclesDecay" Prevents player spawned vehicles from taking decay damage. "ClearCooldownsOnMapWipe" Automatically clear the cooldowns from the data file when map wipes. "BlockWhenMountedOrParented" Prevents players from spawning or fetching vehicles when they are mounted or parented. "BlockWhenBuildingBlocked" Prevents players from spawning or fetching vehicles when they are building blocked. "BlockInSafeZone" Prevents players from spawning or fetching vehicles when they are in a safe zone. "BlockWhenCombatBlocked" Prevents players from spawning or fetching vehicles when they are combat blocked. (Requires NoEscape) "BlockWhenRaidBlocked" Prevents players from spawning or fetching vehicles when they are raid blocked. (Requires NoEscape) "RemoveChinookMapMarker" Removes the map marker from Chinooks. Vehicle settings: "Name" Name of the vehicle that will be shown in chat messages. "Prefab" Path of the prefab to spawn. "SpawnCooldown" A dictionary of permissions and their associated spawn cooldown. Permissions from the bottom have priority when player has multiple permission. The player must have at least one of these permissions to be able to spawn the vehicle. A permission without name means no permission needed, or the whole dictionary can be set to null. "FetchCooldown" A dictionary of permissions and their associated fetch cooldown. Permissions from the bottom have priority when player has multiple permission. The player must have at least one of these permissions to be able to fetch the vehicle. A permission without name means no permission needed, or the whole dictionary can be set to null. "MaxSpawnDistance" A dictionary of permissions and their associated max spawn distance. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, if the the whole dictionary is 'null' a maximum of 100.0 is used. "FetchDistanceLimit" A dictionary of permissions and their associated fetch distance limit. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, if the whole dictionary is 'null' there will be no fetch distance limits. "DespawnDistanceLimit" A dictionary of permissions and their associated despawn distance limit. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, if the whole dictionary is 'null' there will be no despawn distance limits. "StartingFuel" A dictionary of permissions and their associated starting fuel. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, the whole dictionary can be 'null'. "LockFuelContainer" A dictionary of permissions and their associated lock fuel container option. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, the whole dictionary can be 'null'. "FuelPerSecond" A dictionary of permissions and their associated fuel per second option. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, the whole dictionary can be 'null'. This options applies to Minicopters, Scrap Helicopters, Row Boats, RHIBs, Tug Boats and Hot Air Balloons. "IdleFuelPerSecond" A dictionary of permissions and their associated idle fuel per second option. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, the whole dictionary can be 'null'. This options applies to Submarines, Snowmobiles, Modular Cars, Magnet Cranes and Trains. "MaxFuelPerSecond" A dictionary of permissions and their associated max fuel per second option. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, the whole dictionary can be 'null'. This options applies to Submarines, Snowmobiles, Modular Cars, Magnet Cranes and Trains. "ExtraMounts" A dictionary of permissions and their associated list of extra mounts. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, the whole dictionary can be 'null'. Position and rotation are relative to the vehicle (position X, position Y, position Z, rotation X, rotation Y, rotation Z). "ExtraSeats" A dictionary of permissions and their associated list of extra seats. Permissions from the bottom have priority when player has multiple permission. A permission without name means no permission needed, the whole dictionary can be 'null'. Position and rotation are relative to the vehicle (position X, position Y, position Z, rotation X, rotation Y, rotation Z). "YRotationSpawnOffset" Vehicle spawn rotation, relative to the looking direction of the player. (-90 is 90º left, 90 is 90º right) "CanOnlySpawnOnWater" Blocks vehicle from being spawned or fetched on land. "CanNotSpawnOnWater" Blocks vehicle from being spawned or fetched on water. { "SpawnCommandPrefix": "my", "FetchCommandPrefix": "g", "DespawnCommandPrefix": "no", "AllowMultipleIdentical": false, "FetchOldVehicleInsteadOfSpawningIdentical": true, "AllowFetchingWhenOccupied": false, "DismountOccupantsWhenFetching": true, "AllowDespawningWhenOccupied": false, "RefundFuelOnDespawn": false, "NotifyWhenVehicleDestroyed": false, "DestroyVehiclesOnDisconnect": false, "PreventVehiclesDecay": false, "ClearCooldownsOnMapWipe": true, "BlockWhenMountedOrParented": true, "BlockWhenBuildingBlocked": true, "BlockInSafeZone": true, "BlockWhenCombatBlocked": true, "BlockWhenRaidBlocked": true, "RemoveChinookMapMarker": true, "Vehicles": { "ball": { "Name": "Soccer Ball", "Prefab": "assets/content/vehicles/ball/ball.entity.prefab", "SpawnCooldown": { "": 86400.0, "vehicles.ball": 3600.0, "vehicles.ball.VIP": 300.0 }, "FetchCooldown": { "": 1800.0, "vehicles.ball": 60.0, "vehicles.ball.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.ball": 20.0, "vehicles.ball.VIP": 50.0 }, "FetchDistanceLimit": { "": 0.0 }, "DespawnDistanceLimit": { "": 0.0 }, "StartingFuel": null, "LockFuelContainer": null, "FuelPerSecond": null, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": 0.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "attack": { "Name": "Attack Helicopter", "Prefab": "assets/content/vehicles/attackhelicopter/attackhelicopter.entity.prefab", "SpawnCooldown": { "vehicles.attack": 3600.0, "vehicles.attack.VIP": 300.0 }, "FetchCooldown": { "vehicles.attack": 60.0, "vehicles.attack.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.attack": 5.0, "vehicles.attack.VIP": 15.0 }, "FetchDistanceLimit": { "vehicles.attack": 50.0, "vehicles.attack.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.attack": 50.0, "vehicles.attack.VIP": 0.0 }, "StartingFuel": { "vehicles.attack": 0, "vehicles.attack.VIP": 1 }, "LockFuelContainer": { "vehicles.attack": false, "vehicles.attack.VIP": true }, "FuelPerSecond": { "vehicles.attack": 0.5, "vehicles.attack.VIP": 0.0 }, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "mini": { "Name": "Minicopter", "Prefab": "assets/content/vehicles/minicopter/minicopter.entity.prefab", "SpawnCooldown": { "vehicles.minicopter": 3600.0, "vehicles.minicopter.VIP": 300.0 }, "FetchCooldown": { "vehicles.minicopter": 60.0, "vehicles.minicopter.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.minicopter": 5.0, "vehicles.minicopter.VIP": 15.0 }, "FetchDistanceLimit": { "vehicles.minicopter": 50.0, "vehicles.minicopter.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.minicopter": 50.0, "vehicles.minicopter.VIP": 0.0 }, "StartingFuel": { "vehicles.minicopter": 0, "vehicles.minicopter.VIP": 1 }, "LockFuelContainer": { "vehicles.minicopter": false, "vehicles.minicopter.VIP": true }, "FuelPerSecond": { "vehicles.minicopter": 0.5, "vehicles.minicopter.VIP": 0.0 }, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": { "vehicles.minicopter1": [ { "pX": 0.0, "pY": 0.35, "pZ": -1.45, "rX": 0.0, "rY": 180.0, "rZ": 0.0 } ], "vehicles.minicopter2": [ { "pX": 0.6, "pY": 0.2, "pZ": -0.2, "rX": 0.0, "rY": 0.0, "rZ": 0.0 }, { "pX": -0.6, "pY": 0.2, "pZ": -0.2, "rX": 0.0, "rY": 0.0, "rZ": 0.0 } ], "vehicles.minicopter3": [ { "pX": 0.0, "pY": 0.35, "pZ": -1.45, "rX": 0.0, "rY": 180.0, "rZ": 0.0 }, { "pX": 0.6, "pY": 0.2, "pZ": -0.2, "rX": 0.0, "rY": 0.0, "rZ": 0.0 }, { "pX": -0.6, "pY": 0.2, "pZ": -0.2, "rX": 0.0, "rY": 0.0, "rZ": 0.0 } ] }, "ExtraSeats": { "vehicles.minicopter1": [ { "pX": 0.0, "pY": 0.4, "pZ": -1.1, "rX": 0.0, "rY": 180.0, "rZ": 0.0 } ], "vehicles.minicopter2": [ { "pX": 0.6, "pY": 0.2, "pZ": -0.5, "rX": 0.0, "rY": 0.0, "rZ": 0.0 }, { "pX": -0.6, "pY": 0.2, "pZ": -0.5, "rX": 0.0, "rY": 0.0, "rZ": 0.0 } ], "vehicles.minicopter3": [ { "pX": 0.0, "pY": 0.4, "pZ": -1.1, "rX": 0.0, "rY": 180.0, "rZ": 0.0 }, { "pX": 0.6, "pY": 0.2, "pZ": -0.5, "rX": 0.0, "rY": 0.0, "rZ": 0.0 }, { "pX": -0.6, "pY": 0.2, "pZ": -0.5, "rX": 0.0, "rY": 0.0, "rZ": 0.0 } ] }, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "heli": { "Name": "Scrap Transport Helicopter", "Prefab": "assets/content/vehicles/scrap heli carrier/scraptransporthelicopter.prefab", "SpawnCooldown": { "vehicles.scraphelicopter": 3600.0, "vehicles.scraphelicopter.VIP": 300.0 }, "FetchCooldown": { "vehicles.scraphelicopter": 60.0, "vehicles.scraphelicopter.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.scraphelicopter": 5.0, "vehicles.scraphelicopter.VIP": 15.0 }, "FetchDistanceLimit": { "vehicles.scraphelicopter": 50.0, "vehicles.scraphelicopter.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.scraphelicopter": 50.0, "vehicles.scraphelicopter.VIP": 0.0 }, "StartingFuel": { "vehicles.scraphelicopter": 0, "vehicles.scraphelicopter.VIP": 1 }, "LockFuelContainer": { "vehicles.scraphelicopter": false, "vehicles.scraphelicopter.VIP": true }, "FuelPerSecond": { "vehicles.scraphelicopter": 0.5, "vehicles.scraphelicopter.VIP": 0.0 }, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": { "vehicles.scraphelicopter2": [ { "pX": -1.235, "pY": 1.0, "pZ": -2.75, "rX": 0.0, "rY": 180.0, "rZ": 0.0 }, { "pX": 1.2, "pY": 1.0, "pZ": -2.75, "rX": 0.0, "rY": 180.0, "rZ": 0.0 } ] }, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "boat": { "Name": "Row Boat", "Prefab": "assets/content/vehicles/boats/rowboat/rowboat.prefab", "SpawnCooldown": { "vehicles.rowboat": 3600.0, "vehicles.rowboat.VIP": 300.0 }, "FetchCooldown": { "vehicles.rowboat": 60.0, "vehicles.rowboat.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.rowboat": 3.0, "vehicles.rowboat.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.rowboat": 50.0, "vehicles.rowboat.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.rowboat": 50.0, "vehicles.rowboat.VIP": 0.0 }, "StartingFuel": { "vehicles.rowboat": 0, "vehicles.rowboat.VIP": 1 }, "LockFuelContainer": { "vehicles.rowboat": false, "vehicles.rowboat.VIP": true }, "FuelPerSecond": { "vehicles.rowboat": 0.1, "vehicles.rowboat.VIP": 0.0 }, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": true, "CanNotSpawnOnWater": false }, "rhib": { "Name": "RHIB", "Prefab": "assets/content/vehicles/boats/rhib/rhib.prefab", "SpawnCooldown": { "vehicles.rhib": 3600.0, "vehicles.rhib.VIP": 300.0 }, "FetchCooldown": { "vehicles.rhib": 60.0, "vehicles.rhib.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.rhib": 5.0, "vehicles.rhib.VIP": 15.0 }, "FetchDistanceLimit": { "vehicles.rhib": 50.0, "vehicles.rhib.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.rhib": 50.0, "vehicles.rhib.VIP": 0.0 }, "StartingFuel": { "vehicles.rhib": 0, "vehicles.rhib.VIP": 1 }, "LockFuelContainer": { "vehicles.rhib": false, "vehicles.rhib.VIP": true }, "FuelPerSecond": { "vehicles.rhib": 0.25, "vehicles.rhib.VIP": 0.0 }, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": true, "CanNotSpawnOnWater": false }, "kayak": { "Name": "Kayak", "Prefab": "assets/content/vehicles/boats/kayak/kayak.prefab", "SpawnCooldown": { "vehicles.kayak": 3600.0, "vehicles.kayak.VIP": 300.0 }, "FetchCooldown": { "vehicles.kayak": 60.0, "vehicles.kayak.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.kayak": 3.0, "vehicles.kayak.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.kayak": 50.0, "vehicles.kayak.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.kayak": 50.0, "vehicles.kayak.VIP": 0.0 }, "StartingFuel": null, "LockFuelContainer": null, "FuelPerSecond": null, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": true, "CanNotSpawnOnWater": false }, "sub1": { "Name": "Solo Submarine", "Prefab": "assets/content/vehicles/submarine/submarinesolo.entity.prefab", "SpawnCooldown": { "vehicles.submarinesolo": 3600.0, "vehicles.submarinesolo.VIP": 300.0 }, "FetchCooldown": { "vehicles.submarinesolo": 60.0, "vehicles.submarinesolo.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.submarinesolo": 3.0, "vehicles.submarinesolo.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.submarinesolo": 50.0, "vehicles.submarinesolo.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.submarinesolo": 50.0, "vehicles.submarinesolo.VIP": 0.0 }, "StartingFuel": { "vehicles.submarinesolo": 0, "vehicles.submarinesolo.VIP": 1 }, "LockFuelContainer": { "vehicles.submarinesolo": false, "vehicles.submarinesolo.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.submarinesolo": 0.025, "vehicles.submarinesolo.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.submarinesolo": 0.13, "vehicles.submarinesolo.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": true, "CanNotSpawnOnWater": false }, "sub2": { "Name": "Duo Submarine", "Prefab": "assets/content/vehicles/submarine/submarineduo.entity.prefab", "SpawnCooldown": { "vehicles.submarineduo": 3600.0, "vehicles.submarineduo.VIP": 300.0 }, "FetchCooldown": { "vehicles.submarineduo": 60.0, "vehicles.submarineduo.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.submarineduo": 3.0, "vehicles.submarineduo.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.submarineduo": 50.0, "vehicles.submarineduo.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.submarineduo": 50.0, "vehicles.submarineduo.VIP": 0.0 }, "StartingFuel": { "vehicles.submarineduo": 0, "vehicles.submarineduo.VIP": 1 }, "LockFuelContainer": { "vehicles.submarineduo": false, "vehicles.submarineduo.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.submarineduo": 0.03, "vehicles.submarineduo.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.submarineduo": 0.15, "vehicles.submarineduo.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": true, "CanNotSpawnOnWater": false }, "tug": { "Name": "Tugboat", "Prefab": "assets/content/vehicles/boats/tugboat/tugboat.prefab", "SpawnCooldown": { "vehicles.tugboat": 3600.0, "vehicles.tugboat.VIP": 300.0 }, "FetchCooldown": { "vehicles.tugboat": 60.0, "vehicles.tugboat.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.tugboat": 10.0, "vehicles.tugboat.VIP": 25.0 }, "FetchDistanceLimit": { "vehicles.tugboat": 50.0, "vehicles.tugboat.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.tugboat": 50.0, "vehicles.tugboat.VIP": 0.0 }, "StartingFuel": { "vehicles.tugboat": 0, "vehicles.tugboat.VIP": 1 }, "LockFuelContainer": { "vehicles.tugboat": false, "vehicles.tugboat.VIP": true }, "FuelPerSecond": { "vehicles.tugboat": 0.33, "vehicles.tugboat.VIP": 0.0 }, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": true, "CanNotSpawnOnWater": false }, "hab": { "Name": "Hot Air Balloon", "Prefab": "assets/prefabs/deployable/hot air balloon/hotairballoon.prefab", "SpawnCooldown": { "vehicles.hotairballoon": 3600.0, "vehicles.hotairballoon.VIP": 300.0 }, "FetchCooldown": { "vehicles.hotairballoon": 60.0, "vehicles.hotairballoon.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.hotairballoon": 3.0, "vehicles.hotairballoon.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.hotairballoon": 50.0, "vehicles.hotairballoon.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.hotairballoon": 50.0, "vehicles.hotairballoon.VIP": 0.0 }, "StartingFuel": { "vehicles.hotairballoon": 0, "vehicles.hotairballoon.VIP": 1 }, "LockFuelContainer": { "vehicles.hotairballoon": false, "vehicles.hotairballoon.VIP": true }, "FuelPerSecond": { "vehicles.hotairballoon": 0.25, "vehicles.hotairballoon.VIP": 0.0 }, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": 180.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "horse": { "Name": "Ridable Horse", "Prefab": "assets/rust.ai/nextai/testridablehorse.prefab", "SpawnCooldown": { "vehicles.ridablehorse": 3600.0, "vehicles.ridablehorse.VIP": 300.0 }, "FetchCooldown": { "vehicles.ridablehorse": 60.0, "vehicles.ridablehorse.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.ridablehorse": 3.0, "vehicles.ridablehorse.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.ridablehorse": 50.0, "vehicles.ridablehorse.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.ridablehorse": 50.0, "vehicles.ridablehorse.VIP": 0.0 }, "StartingFuel": null, "LockFuelContainer": null, "FuelPerSecond": null, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": true }, "sled": { "Name": "Sled", "Prefab": "assets/prefabs/misc/xmas/sled/sled.deployed.prefab", "SpawnCooldown": { "vehicles.sled": 3600.0, "vehicles.sled.VIP": 300.0 }, "FetchCooldown": { "vehicles.sled": 60.0, "vehicles.sled.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.sled": 3.0, "vehicles.sled.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.sled": 50.0, "vehicles.sled.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.sled": 50.0, "vehicles.sled.VIP": 0.0 }, "StartingFuel": null, "LockFuelContainer": null, "FuelPerSecond": null, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "snow": { "Name": "Snowmobile", "Prefab": "assets/content/vehicles/snowmobiles/snowmobile.prefab", "SpawnCooldown": { "vehicles.snowmobile": 3600.0, "vehicles.snowmobile.VIP": 300.0 }, "FetchCooldown": { "vehicles.snowmobile": 60.0, "vehicles.snowmobile.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.snowmobile": 3.0, "vehicles.snowmobile.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.snowmobile": 50.0, "vehicles.snowmobile.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.snowmobile": 50.0, "vehicles.snowmobile.VIP": 0.0 }, "StartingFuel": { "vehicles.snowmobile": 0, "vehicles.snowmobile.VIP": 1 }, "LockFuelContainer": { "vehicles.snowmobile": false, "vehicles.snowmobile.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.snowmobile": 0.03, "vehicles.snowmobile.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.snowmobile": 0.15, "vehicles.snowmobile.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "tomaha": { "Name": "Tomaha Snowmobile", "Prefab": "assets/content/vehicles/snowmobiles/tomahasnowmobile.prefab", "SpawnCooldown": { "vehicles.tomaha": 3600.0, "vehicles.tomaha.VIP": 300.0 }, "FetchCooldown": { "vehicles.tomaha": 60.0, "vehicles.tomaha.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.tomaha": 3.0, "vehicles.tomaha.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.tomaha": 50.0, "vehicles.tomaha.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.tomaha": 50.0, "vehicles.tomaha.VIP": 0.0 }, "StartingFuel": { "vehicles.tomaha": 0, "vehicles.tomaha.VIP": 1 }, "LockFuelContainer": { "vehicles.tomaha": false, "vehicles.tomaha.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.tomaha": 0.03, "vehicles.tomaha.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.tomaha": 0.15, "vehicles.tomaha.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "ch47": { "Name": "Chinook", "Prefab": "assets/prefabs/npc/ch47/ch47.entity.prefab", "SpawnCooldown": { "vehicles.chinook": 3600.0, "vehicles.chinook.VIP": 300.0 }, "FetchCooldown": { "vehicles.chinook": 60.0, "vehicles.chinook.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.chinook": 3.0, "vehicles.chinook.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.chinook": 50.0, "vehicles.chinook.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.chinook": 50.0, "vehicles.chinook.VIP": 0.0 }, "StartingFuel": null, "LockFuelContainer": null, "FuelPerSecond": null, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "sedan": { "Name": "Sedan", "Prefab": "assets/content/vehicles/sedan_a/sedantest.entity.prefab", "SpawnCooldown": { "vehicles.sedan": 3600.0, "vehicles.sedan.VIP": 300.0 }, "FetchCooldown": { "vehicles.sedan": 60.0, "vehicles.sedan.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.sedan": 3.0, "vehicles.sedan.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.sedan": 50.0, "vehicles.sedan.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.sedan": 50.0, "vehicles.sedan.VIP": 0.0 }, "StartingFuel": null, "LockFuelContainer": null, "FuelPerSecond": null, "IdleFuelPerSecond": null, "MaxFuelPerSecond": null, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "4mod": { "Name": "4 Module Car", "Prefab": "assets/content/vehicles/modularcar/4module_car_spawned.entity.prefab", "SpawnCooldown": { "vehicles.4modulecar": 3600.0, "vehicles.4modulecar.VIP": 300.0 }, "FetchCooldown": { "vehicles.4modulecar": 60.0, "vehicles.4modulecar.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.4modulecar": 3.0, "vehicles.4modulecar.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.4modulecar": 50.0, "vehicles.4modulecar.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.4modulecar": 50.0, "vehicles.4modulecar.VIP": 0.0 }, "StartingFuel": { "vehicles.4modulecar": 0, "vehicles.4modulecar.VIP": 1 }, "LockFuelContainer": { "vehicles.4modulecar": false, "vehicles.4modulecar.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.4modulecar": 0.025, "vehicles.4modulecar.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.4modulecar": 0.08, "vehicles.4modulecar.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "3mod": { "Name": "3 Module Car", "Prefab": "assets/content/vehicles/modularcar/3module_car_spawned.entity.prefab", "SpawnCooldown": { "vehicles.3modulecar": 3600.0, "vehicles.3modulecar.VIP": 300.0 }, "FetchCooldown": { "vehicles.3modulecar": 60.0, "vehicles.3modulecar.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.3modulecar": 3.0, "vehicles.3modulecar.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.3modulecar": 50.0, "vehicles.3modulecar.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.3modulecar": 50.0, "vehicles.3modulecar.VIP": 0.0 }, "StartingFuel": { "vehicles.3modulecar": 0, "vehicles.3modulecar.VIP": 1 }, "LockFuelContainer": { "vehicles.3modulecar": false, "vehicles.3modulecar.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.3modulecar": 0.025, "vehicles.3modulecar.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.3modulecar": 0.08, "vehicles.3modulecar.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "2mod": { "Name": "2 Module Car", "Prefab": "assets/content/vehicles/modularcar/2module_car_spawned.entity.prefab", "SpawnCooldown": { "vehicles.2modulecar": 3600.0, "vehicles.2modulecar.VIP": 300.0 }, "FetchCooldown": { "vehicles.2modulecar": 60.0, "vehicles.2modulecar.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.2modulecar": 3.0, "vehicles.2modulecar.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.2modulecar": 50.0, "vehicles.2modulecar.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.2modulecar": 50.0, "vehicles.2modulecar.VIP": 0.0 }, "StartingFuel": { "vehicles.2modulecar": 0, "vehicles.2modulecar.VIP": 1 }, "LockFuelContainer": { "vehicles.2modulecar": false, "vehicles.2modulecar.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.2modulecar": 0.025, "vehicles.2modulecar.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.2modulecar": 0.08, "vehicles.2modulecar.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "crane": { "Name": "Magnet Crane", "Prefab": "assets/content/vehicles/crane_magnet/magnetcrane.entity.prefab", "SpawnCooldown": { "vehicles.magnetcrane": 3600.0, "vehicles.magnetcrane.VIP": 300.0 }, "FetchCooldown": { "vehicles.magnetcrane": 60.0, "vehicles.magnetcrane.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.magnetcrane": 3.0, "vehicles.magnetcrane.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.magnetcrane": 50.0, "vehicles.magnetcrane.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.magnetcrane": 50.0, "vehicles.magnetcrane.VIP": 0.0 }, "StartingFuel": { "vehicles.magnetcrane": 0, "vehicles.magnetcrane.VIP": 1 }, "LockFuelContainer": { "vehicles.magnetcrane": false, "vehicles.magnetcrane.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.magnetcrane": 0.06668, "vehicles.magnetcrane.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.magnetcrane": 0.3334, "vehicles.magnetcrane.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": false }, "cart": { "Name": "Workcart", "Prefab": "assets/content/vehicles/trains/workcart/workcart.entity.prefab", "SpawnCooldown": { "vehicles.workcart": 3600.0, "vehicles.workcart.VIP": 300.0 }, "FetchCooldown": { "vehicles.workcart": 60.0, "vehicles.workcart.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.workcart": 3.0, "vehicles.workcart.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.workcart": 50.0, "vehicles.workcart.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.workcart": 50.0, "vehicles.workcart.VIP": 0.0 }, "StartingFuel": { "vehicles.workcart": 0, "vehicles.workcart.VIP": 1 }, "LockFuelContainer": { "vehicles.workcart": false, "vehicles.workcart.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.workcart": 0.025, "vehicles.workcart.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.workcart": 0.075, "vehicles.workcart.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": true }, "agcart": { "Name": "Above Ground Workcart", "Prefab": "assets/content/vehicles/trains/workcart/workcart_aboveground.entity.prefab", "SpawnCooldown": { "vehicles.abovegroundworkcart": 3600.0, "vehicles.abovegroundworkcart.VIP": 300.0 }, "FetchCooldown": { "vehicles.abovegroundworkcart": 60.0, "vehicles.abovegroundworkcart.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.abovegroundworkcart": 3.0, "vehicles.abovegroundworkcart.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.abovegroundworkcart": 50.0, "vehicles.abovegroundworkcart.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.abovegroundworkcart": 50.0, "vehicles.abovegroundworkcart.VIP": 0.0 }, "StartingFuel": { "vehicles.abovegroundworkcart": 0, "vehicles.abovegroundworkcart.VIP": 1 }, "LockFuelContainer": { "vehicles.abovegroundworkcart": false, "vehicles.abovegroundworkcart.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.abovegroundworkcart": 0.025, "vehicles.abovegroundworkcart.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.abovegroundworkcart": 0.075, "vehicles.abovegroundworkcart.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": true }, "agcart2": { "Name": "Above Ground Workcart 2", "Prefab": "assets/content/vehicles/trains/workcart/workcart_aboveground2.entity.prefab", "SpawnCooldown": { "vehicles.abovegroundworkcart2": 3600.0, "vehicles.abovegroundworkcart2.VIP": 300.0 }, "FetchCooldown": { "vehicles.abovegroundworkcart2": 60.0, "vehicles.abovegroundworkcart2.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.abovegroundworkcart2": 3.0, "vehicles.abovegroundworkcart2.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.abovegroundworkcart2": 50.0, "vehicles.abovegroundworkcart2.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.abovegroundworkcart2": 50.0, "vehicles.abovegroundworkcart2.VIP": 0.0 }, "StartingFuel": { "vehicles.abovegroundworkcart2": 0, "vehicles.abovegroundworkcart2.VIP": 1 }, "LockFuelContainer": { "vehicles.abovegroundworkcart2": false, "vehicles.abovegroundworkcart2.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.abovegroundworkcart2": 0.025, "vehicles.abovegroundworkcart2.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.abovegroundworkcart2": 0.075, "vehicles.abovegroundworkcart2.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": true }, "locomotive": { "Name": "Locomotive", "Prefab": "assets/content/vehicles/trains/locomotive/locomotive.entity.prefab", "SpawnCooldown": { "vehicles.locomotive": 3600.0, "vehicles.locomotive.VIP": 300.0 }, "FetchCooldown": { "vehicles.locomotive": 60.0, "vehicles.locomotive.VIP": 5.0 }, "MaxSpawnDistance": { "vehicles.locomotive": 3.0, "vehicles.locomotive.VIP": 10.0 }, "FetchDistanceLimit": { "vehicles.locomotive": 50.0, "vehicles.locomotive.VIP": 0.0 }, "DespawnDistanceLimit": { "vehicles.locomotive": 50.0, "vehicles.locomotive.VIP": 0.0 }, "StartingFuel": { "vehicles.locomotive": 0, "vehicles.locomotive.VIP": 1 }, "LockFuelContainer": { "vehicles.locomotive": false, "vehicles.locomotive.VIP": true }, "FuelPerSecond": null, "IdleFuelPerSecond": { "vehicles.locomotive": 0.035, "vehicles.locomotive.VIP": 0.0 }, "MaxFuelPerSecond": { "vehicles.locomotive": 0.1, "vehicles.locomotive.VIP": 0.0 }, "ExtraMounts": null, "ExtraSeats": null, "YRotationSpawnOffset": -90.0, "CanOnlySpawnOnWater": false, "CanNotSpawnOnWater": true } }, "Version": { "Major": 0, "Minor": 1, "Patch": 4 } } Lang: { "NoPermissionSpawn": "You do not have permission to spawn {0}s.", "NoPermissionFetch": "You do not have permission to fetch {0}s.", "MountedOrParented": "You cannot spawn or fetch vehicles while mounted or parented.", "BuildingBlocked": "You cannot spawn or fetch vehicles while building blocked.", "InSafeZone": "You cannot spawn or fetch vehicles in a safe zone.", "CombatBlocked": "You cannot spawn or fetch vehicles while combat blocked.", "RaidBlocked": "You cannot spawn or fetch vehicles while raid blocked.", "NotOnWater": "You can only spawn or fetch {0}s on water.", "OnWater": "You can not spawn or fetch {0}s on water.", "TracksNotFound": "You can only spawn or fetch {0}s on train tracks.", "LookingTooFar": "You must be looking at a position closer to you to be able to spawn or fetch {0}s.", "Destroyed": "Your {0} has been destroyed.", "AlreadySpawned": "You already own a {0}.\nUse '/{1}' to fetch it or '/{2}' to despawn it.", "SpawnCooldown": "You must wait {0} before spawning another {1}.", "FetchCooldown": "You must wait {0} before fetching your {1}.", "Spawned": "Your {0} has spawned.", "NotFound": "You do not have a {0}.", "TooFarFetch": "Your {0} is too far away to be fetched.", "TooFarDespawn": "Your {0} is too far away to be despawned.", "BeingUsedFetch": "Cannot fetch your {0} as it is currently being used by another player", "BeingUsedDespawn": "Cannot despawn your {0} as it is currently being used by another player", "Fetched": "You have fetched your {0}.", "Despawned": "You have despawned your {0}.{1}", "Refunded": "\nRefunded {0} low grade fuel." } API List<Tuple<string, string, string>> GetConfig() Returns the suffix and its name and prefab for every vehicle in the config file. Example: List<Tuple<string, string, string>> suffixes = Vehicles.Call<List<Tuple<string, string, string>>>("GetConfig"); if (suffixes == null) return; for (int i = 0; i < suffixes.Count; i++) { string suffix = suffixes[i].Item1; string name = suffixes[i].Item2; string prefab = suffixes[i].Item3; } List<ulong> GetEntities(ulong playerID, string suffix) Returns a `List<ulong>` with the network ID of all available entities spawned by the player with this suffix, returns `null` if none found. Example: List<ulong> minis = Vehicles.Call<List<ulong>>("GetEntities", player.userID, "mini"); if (minis == null) return; BaseEntity newestMini = BaseNetworkable.serverEntities.Find(new NetworkableId(minis[minis.Count - 1])) as BaseEntity; BaseEntity oldestMini = BaseNetworkable.serverEntities.Find(new NetworkableId(minis[0])) as BaseEntity; Dictionary<string, List<ulong>> GetAllEntities(ulong playerID) Returns a `Dictionary<string, List<ulong>>` with the Key as the suffix and the Value as the network ID of all available entities spawned by the player, returns `null` if none found. Example: Dictionary<string, List<ulong>> entities = Vehicles.Call<Dictionary<string, List<ulong>>>("GetAllEntities", player.userID); if (entities == null) return; List<ulong> minis; if (entities.TryGetValue("mini", out minis)) { BaseEntity newestMini = BaseNetworkable.serverEntities.Find(new NetworkableId(minis[minis.Count - 1])) as BaseEntity; BaseEntity oldestMini = BaseNetworkable.serverEntities.Find(new NetworkableId(minis[0])) as BaseEntity; } List<ulong> boats; if (entities.TryGetValue("boat", out boats)) { BaseEntity newestBoat = BaseNetworkable.serverEntities.Find(new NetworkableId(boats[boats.Count - 1])) as BaseEntity; BaseEntity oldestBoat = BaseNetworkable.serverEntities.Find(new NetworkableId(boats[0])) as BaseEntity; } bool IsPlayerEntity(ulong entityID) Checks if the entity belongs to `Vehicles`. Example: bool isPlayerEntity = Vehicles.Call<bool>("IsPlayerEntity", entity.net.ID.Value); string GetSuffix(ulong entityID) Returns the suffix of the entity, returns `null` if the entity does not belong to `Vehicles`. Example: string suffix = Vehicles.Call<string>("GetSuffix", entity.net.ID.Value); if (string.IsNullOrWhiteSpace(suffix)) return; ulong GetOwnerUserID(ulong entityID) Returns the userID of the player who spawned the entity (**not the entity's OwnerID**), returns `0uL` if the entity does not belong to `Vehicles`. Example: ulong playerID = Vehicles.Call<ulong>("GetOwnerUserID", entity.net.ID.Value); if (playerID == 0uL) return; bool DespawnNewestEntity(ulong playerID, string suffix, bool refundFuel = false, bool notify = false) Despawns the newest available entity spawned by the player with this suffix, returns `false` if not found. Examples: bool success = Vehicles.Call<bool>("DespawnNewestEntity", player.userID, "mini"); bool success = Vehicles.Call<bool>("DespawnNewestEntity", player.userID, "mini", true, true); int DespawnAllEntities(ulong playerID, string suffix = "", bool refundFuel = false, bool notify = false) Despawns all the entities (optionally by suffix) spawned by the player, returns the amount of entities despawned. Examples: int despawnedAmount = Vehicles.Call<int>("DespawnAllEntities", player.userID); int despawnedAmount = Vehicles.Call<int>("DespawnAllEntities", player.userID, "", true, true); int despawnedAmount = Vehicles.Call<int>("DespawnAllEntities", player.userID, "mini"); int despawnedAmount = Vehicles.Call<int>("DespawnAllEntities", player.userID, "mini", true, true); bool AddEntity(ulong playerID, string suffix, ulong entityID) Adds the entity as the player's last spawned entity with this suffix, returns `false` if suffix does not exist. Example: bool success = Vehicles.Call<bool>("AddEntity", player.userID, "mini", entity.net.ID.Value); bool RemoveEntity(ulong entityID, string suffix = "", ulong playerID = 0uL) Removes the entity so that it no longer belongs to `Vehicles`, faster if the two optional arguments are provided, returns `false` if entity does not belong to `Vehicles` or to the player's list of entities for this suffix. Examples: bool success = RemoveEntity(entity.net.ID.Value); bool isPlayerEntity = Vehicles.Call<bool>("IsPlayerEntity", entity.net.ID.Value); if (!isPlayerEntity) return; string suffix = Vehicles.Call<string>("GetSuffix", entity.net.ID.Value); ulong playerID = Vehicles.Call<ulong>("GetOwnerUserID", entity.net.ID.Value); bool success = Vehicles.Call<bool>("RemoveEntity", entity.net.ID.Value, suffix, playerID); double GetCooldownLeft(ulong playerID, string suffix, bool fetch = false) Returns how many seconds are left for the player's cooldown to expire for this suffix, returns a negative number if the player's cooldown has expired, returns `0.0` if suffix does not exist, returns `0.0` if the player's permissions do not have a cooldown for this suffix, or returns `-1.0` if the player does not yet contain a cooldown for this suffix. Examples: double left = Vehicles.Call<double>("GetCooldownLeft", player.userID, "mini"); bool canSpawn = (left <= 0 && left != -1); bool onSpawnCooldown = (left > 0.0); bool notFound = (left == -1); double left = Vehicles.Call<double>("GetCooldownLeft", player.userID, "mini", true); bool canFetch = (left <= 0 && left != -1); bool onFetchCooldown = (left > 0.0); bool notFound = (left == -1); bool AddCooldown(ulong playerID, string suffix, bool fetch = false) Adds a cooldown to the player with the current timestamp for this suffix, returns `false` if the suffix does not exist. Examples: bool success = Vehicles.Call<bool>("AddCooldown", player.userID, "mini"); bool success = Vehicles.Call<bool>("AddCooldown", player.userID, "mini", true); bool ClearCooldowns(ulong playerID, string suffix = "", bool fetch = false) Clears the spawn or the fetch cooldowns for the player, clears for every suffix unless one is provided, returns `false` if the player does not have any cooldowns or if the player does not have a cooldown for the provided suffix. Examples: bool success = Vehicles.Call<bool>("ClearCooldowns", player.userID, "mini"); bool success = Vehicles.Call<bool>("ClearCooldowns", player.userID, "mini", true); bool success = Vehicles.Call<bool>("ClearCooldowns", player.userID); bool success = Vehicles.Call<bool>("ClearCooldowns", player.userID, "", true); string CooldownToString(double cooldown) Returns a formatted `string` with the span of time. Example: double left = Vehicles.Call<double>("GetCooldownLeft", player.userID, "mini"); if (left == -1.0 || left > 0.0) return; string duration = Vehicles.Call<string>("CooldownToString", left); bool HasPermission(string playerId, string suffix, bool fetch = false) Checks if the player has permission to spawn or fetch this suffix, returns `false` if suffix does not exist. Examples: bool canSpawn = Vehicles.Call<bool>("HasPermission", player.UserIDString, "mini"); bool canFetch = Vehicles.Call<bool>("HasPermission", player.UserIDString, "mini", true); bool CanSpawn(BasePlayer player) Checks if the player can spawn or fetch according to the config options. Example: bool canspawn = Vehicles.Call<bool>("CanSpawn", player); bool CheckSurface(string suffix, Vector3 position, out bool water) Checks if this suffix may be spawned or fetched on the surface at this position, returns `false` if suffix does not exist, `out` parameter returns `true` if checked surface is water. Example: //bool water; //bool allowedSurface = CheckSurface("mini", position, out water); //if (!allowedSurface) //{ // if (water) player.ChatMessage("Can't spawn on water."); // else player.ChatMessage("Can't spawn on land."); //} bool TryMoveToTrainTrack(TrainCar train, Vector3 position) Moves the `TrainCar` to the nearest train track at this position, returns `false` if no train tracks are found. Example: bool moved = Vehicles.Call<bool>("TryMoveToTrainTrack", train, position); Vector3 GetGroundPositionLookingAt(BasePlayer player, float maxDistance) Returns the position of the surface at up to this maximum distance at the point that the player is looking at, returns `Vector3.zero` if the distance between the position of the surface and the player's position is higher than the maximum distance. Example: Vector3 position = Vehicles.Call<Vector3>("GetGroundPositionLookingAt", player, 15.0f); if (position == Vector3.zero) return; void RemoveMapMarker(BaseEntity entity) Removes the map marker from chinooks. Example: Vehicles.Call("RemoveMapMarker", entity); bool SetFuelConsumption(BaseEntity entity) Sets the entity's fuel consumption and/or locks the fuel container as is configured for its suffix, returns `false` if entity does not belong to `Vehicles`. Example: bool success = Vehicles.Call<bool>("SetFuelConsumption", entity); bool SetModuleEngineFuelConsumption(VehicleModuleEngine moduleEngine) Sets the module engine's fuel consumption as is configured for the suffix that the engine is mounted on, returns `false` if the entity that the engine is mounted on does not belong to `Vehicles`. Example: bool success = Vehicles.Call<bool>("SetModuleEngineFuelConsumption", moduleEngine); int AddFuel(EntityFuelSystem fuelSystem) Adds starting fuel to the entity's fuel system as is configured for its suffix, returns the amount of fuel added or returns `0` if config is set to 0 or returns `-1` if entity does not belong to `Vehicles`. Example: int addedFuel = Vehicles.Call<int>("AddFuel", vehicle.GetFuelSystem()); bool success = (addedFuel >= 1); bool configNoFuel = (addedFuel == 0); bool failed = (addedFuel == -1); int RefundFuel(EntityFuelSystem fuelSystem, BasePlayer player) Refunds the player of any fuel left in the entity's fuel tank, returns the amount of fuel refunded or returns `0` if no fuel left. Example: int returnedFuel = Vehicles.Call<int>("RefundFuel", vehicle.GetFuelSystem(), player); bool success = (returnedFuel >= 1); bool empty = (returnedFuel == 0); List<BaseVehicle.MountPointInfo> AddMounts(string playerId, string suffix, BaseVehicle vehicle) Adds mount points to the vehicle according to the permissions the player has for this suffix, must be called before spawning the entity, returns a `List<BaseVehicle.MountPointInfo>` of the mount points that were added to the vehicle. Example: BaseEntity entity = Vehicles.Call("CreateEntity", player.userID, "mini", position) as BaseEntity; if (entity == null) return; BaseVehicle vehicle = entity as BaseVehicle; if (vehicle != null) { List<BaseVehicle.MountPointInfo> mounts = Vehicles.Call<List<BaseVehicle.MountPointInfo>>("AddMounts", player.UserIDString, "mini", vehicle); int mountsAdded = mounts.Count; } entity.Spawn(); List<BaseEntity> AddSeats(string playerId, string suffix, BaseEntity entity) Adds seats to the vehicle according to the permissions the player has for this suffix, returns a `List<BaseEntity>` of the seats that were added to the vehicle. Example: List<BaseEntity> seats = Vehicles.Call<List<BaseEntity>>("AddSeats", player.UserIDString, "mini", entity); int seatsAdded = seats.Count; List<BasePlayer> GetMountedOccupants(BaseEntity entity) Returns a `List<BasePlayer>` of mounted players. Example: List<BasePlayer> mounted = Vehicles.Call<List<BasePlayer>>("GetMountedOccupants", entity); int numMounted = mounted.Count; List<BasePlayer> GetParentedOccupants(BaseEntity entity) Returns a `List<BasePlayer>` of parented players. Example: List<BasePlayer> parented = Vehicles.Call<List<BasePlayer>>("GetParentedOccupants", entity); int numParented = parented.Count; void DismountOccupants(List<BasePlayer> mounted) Dismounts every player on this List from the vehicle. Example: List<BasePlayer> mounted = Vehicles.Call<List<BasePlayer>>("GetMountedOccupants", entity); Vehicles.Call("DismountOccupants", mounted); void UnparentOccupants(List<BasePlayer> parented) Unparents every player on this List from the entity. Example: List<BasePlayer> parented = Vehicles.Call<List<BasePlayer>>("GetParentedOccupants", entity); Vehicles.Call("UnparentOccupants", parented); string GetMapGrid(Vector3 position) Returns the map grid from this position. Examples: string mapGrid = Vehicles.Call<string>("GetMapGrid", entity.transform.position); string mapGrid = Vehicles.Call<string>("GetMapGrid", player.transform.position); BaseEntity CreateEntity(ulong playerID, string suffix, Vector3 position, float YrotationOffset = -90.0f) Spawns a suffix for this userID, returns the `BaseEntity` or returns `null` if suffix does not exist. Example: bool hasSpawnPerm = Vehicles.Call<bool>("HasPermission", player.UserIDString, "mini"); if (!hasSpawnPerm) return; double left = Vehicles.Call<double>("GetCooldownLeft", player.userID, "mini"); if (left > 0.0) return; bool canSpawn = Vehicles.Call<bool>("CanSpawn", player); if (!canSpawn) return; Vector3 position = Vehicles.Call<Vector3>("GetGroundPositionLookingAt", player, 15.0f); if (position == Vector3.zero) return; BaseEntity entity = Vehicles.Call("CreateEntity", player.userID, "mini", position) as BaseEntity; if (entity == null) return; entity.Spawn(); Vehicles.Call("AddEntity", player.userID, "mini", entity.net.ID.Value); BaseVehicle vehicle = entity as BaseVehicle; if (vehicle != null) { Vehicles.Call("SetFuelConsumption", entity); Vehicles.Call("AddFuel", vehicle.GetFuelSystem()); } Vehicles.Call("AddCooldown", player.userID, "mini"); BaseEntity FetchEntity(ulong playerID, string suffix, Vector3 position, float YrotationOffset = -90.0f) Fetches the last available entity spawned by the player with this suffix, returns the `BaseEntity` or returns `null` if not found. Example: bool hasFetchPerm = Vehicles.Call<bool>("HasPermission", player.UserIDString, "mini", true); if (!hasFetchPerm) return; List<ulong> minis = Vehicles.Call<List<ulong>>("GetEntities", player.userID, "mini"); if (minis == null) return; BaseEntity entity = BaseNetworkable.serverEntities.Find(new NetworkableId(minis[minis.Count - 1])) as BaseEntity; double left = Vehicles.Call<double>("GetCooldownLeft", player.userID, "mini", true); if (left > 0.0) return; bool canSpawn = Vehicles.Call<bool>("CanSpawn", player); if (!canSpawn) return; Vector3 position = Vehicles.Call<Vector3>("GetGroundPositionLookingAt", player, 15.0f); if (position == Vector3.zero) return; List<BasePlayer> mounted = Vehicles.Call<List<BasePlayer>>("GetMountedOccupants", entity); List<BasePlayer> parented = Vehicles.Call<List<BasePlayer>>("GetParentedOccupants", entity); if (!config.AllowFetchingWhenOccupied && (mounted.Count > 0 || parented.Count > 0)) return; if (config.DismountOccupantsWhenFetching) { Vehicles.Call("DismountOccupants", mounted); Vehicles.Call("UnparentOccupants", parented); } object obj = Vehicles.Call("FetchEntity", player.userID, "mini", position); .
    $12.00
  11. Version 2.0.0

    32 downloads

    Check "Updates" for more details! This prefab will receive many updates in the future! The DrugBoat was made for rpg servers, but you can use it wherever you want. Discord: andreianty Remember, if you buy this product, I would appreciate it if you could leave me a review as honest as possible!
    $1.99
  12. Version 1.0.0

    2 downloads

    Check the V.2: The DrugBoat - TugBoat (laboratory) 2.0.0 This prefab will receive many updates in the future! The DrugBoat was made for rpg servers, but you can use it wherever you want. Discord: andreianty Remember, if you buy this product, I would appreciate it if you could leave me a review as honest as possible!
    $1.50
  13. If it is possible can someone make a mod for using electricity items on tub boats, I've seen it done but it but it was a glitch and used a shelf to hold a solar panel and battery, but has been patched out of the game, see the image for proof. Would be an awesome mod for RP server like mine, I would defiantly buy it, and would make things more fun! Thanks
1.1m

Downloads

Total number of downloads.

5.6k

Customers

Total customers served.

81.4k

Files Sold

Total number of files sold.

1.6m

Payments Processed

Total payments processed.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.