About Tugboat Pirates
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." ] }