- Required Dependencies
- https://chaoscode.io/resources/chaosnpc.216/
This plugin requires the ChaosNPC extension
This plugin is a mini-event where a bunch of NPCs are riding around in a helicopter and after a set amount of time need to land to refuel.
When the helicopter lands the NPCs get out of the helicopter, unload some loot boxes and stick around to protect it whilst it is refuelling.
Players can choose to attack the helicopter whilst it has landed to score some loot
Features:
- NPC's ride in the helicopter (max to 6)
- NPC's are customizable using Kits, or use default Scientist or Heavy Scientist NPCs
- Killing all the NPC's when the helicopter has landed will initiate a self destruct sequence for the helicopter
- Killing all the NPC's while the helicopter is flying will cause the helicopter to explode mid-air
- NPCs will return to the helicopter once it has refuelled to leave
- NPCs will stay in range of the helicopter to protect it from incoming threats
- Either give default loot when killing NPCs, or drop any, or all, of their current inventory
- Landing zones (LZ) are automatically generated at monuments depending on which monuments you have on your map, and which you have enabled in the config
- You can adjust monument LZ's using in-game chat commands
- You can create new LZ's using in-game chat commands
- The target LZ can either be randomly selected, or the helicopter can pick the closest LZ when it needs to refuel
- LZ's will become invalid if it is blocked by another vehicle, in which case the helicopter will choose an alternate LZ
- If players are near the LZ the helicopter will attempt to kill them prior to landing
- When the helicopter is landed it will deploy an amount of loot containers (set in config)
- These loot containers can either be default loot, or you can customize their contents in the config
- Loot containers are packed up when the helicopter is preparing to leave the LZ after refuelling
- Run events automatically
Permissions
helirefuel.admin - Required to use the chat commands
Chat Commands
/hr call - Manually start a HeliRefuel event
/hr killall - Kill any HR helicopters on the map
/hr forcerf - Force all active helicopters find a LZ to refuel
/hr cancelrf - Force all active helicopters to finish refuelling
/hr lz add <name> - Create a new LZ on your position and rotation
/hr lz remove <name> - Remove the LZ by name
/hr lz edit <name> - Edit the specified landing zone to use your position and rotation
/hr showlz - Show all LZ positions, rotations, and their name
Console Commands
hr call - Manually start a HeliRefuel event
hr killall - Kill any HR helicopters on the map
hr forcerf - Force all active helicopters find a LZ to refuel
hr cancelrf - Force all active helicopters to finish refuelling
Editing Monument LZ's
You can easily edit the local offset applied to monument LZs using the commands provided.
Simply move to the position you would like the LZ to be located, and face the direction you would like the helicopter to face. Then type /hr lz edit "Monument Name" .
The LZ local offset will be updated and saved in your config
Config
This plugin is a mini-event where a bunch of NPCs are riding around in a helicopter and after a set amount of time need to land to refuel.
When the helicopter lands the NPCs get out of the helicopter, unload some loot boxes and stick around to protect it whilst it is refuelling.
Players can choose to attack the helicopter whilst it has landed to score some loot
Features:
- NPC's ride in the helicopter (max to 6)
- NPC's are customizable using Kits, or use default Scientist or Heavy Scientist NPCs
- Killing all the NPC's when the helicopter has landed will initiate a self destruct sequence for the helicopter
- Killing all the NPC's while the helicopter is flying will cause the helicopter to explode mid-air
- NPCs will return to the helicopter once it has refuelled to leave
- NPCs will stay in range of the helicopter to protect it from incoming threats
- Either give default loot when killing NPCs, or drop any, or all, of their current inventory
- Landing zones (LZ) are automatically generated at monuments depending on which monuments you have on your map, and which you have enabled in the config
- You can adjust monument LZ's using in-game chat commands
- You can create new LZ's using in-game chat commands
- The target LZ can either be randomly selected, or the helicopter can pick the closest LZ when it needs to refuel
- LZ's will become invalid if it is blocked by another vehicle, in which case the helicopter will choose an alternate LZ
- If players are near the LZ the helicopter will attempt to kill them prior to landing
- When the helicopter is landed it will deploy an amount of loot containers (set in config)
- These loot containers can either be default loot, or you can customize their contents in the config
- Loot containers are packed up when the helicopter is preparing to leave the LZ after refuelling
- Run events automatically
Permissions
helirefuel.admin - Required to use the chat commands
Chat Commands
/hr call - Manually start a HeliRefuel event
/hr killall - Kill any HR helicopters on the map
/hr forcerf - Force all active helicopters find a LZ to refuel
/hr cancelrf - Force all active helicopters to finish refuelling
/hr lz add <name> - Create a new LZ on your position and rotation
/hr lz remove <name> - Remove the LZ by name
/hr lz edit <name> - Edit the specified landing zone to use your position and rotation
/hr showlz - Show all LZ positions, rotations, and their name
Console Commands
hr call - Manually start a HeliRefuel event
hr killall - Kill any HR helicopters on the map
hr forcerf - Force all active helicopters find a LZ to refuel
hr cancelrf - Force all active helicopters to finish refuelling
Editing Monument LZ's
You can easily edit the local offset applied to monument LZs using the commands provided.
Simply move to the position you would like the LZ to be located, and face the direction you would like the helicopter to face. Then type /hr lz edit "Monument Name" .
The LZ local offset will be updated and saved in your config
Config
C#:
{
"Helicopter Options": {
"Amount of time until helicopter self destructs when all NPCs are killed (seconds)": 300,
"The minimum amount of time the helicopter can fly before refuelling (seconds)": 450,
"The maximum amount of time the helicopter can fly before refuelling (seconds)": 900,
"Amount of time the helicopter will wait to refuel (seconds)": 180
},
"Location Options": {
"How to determine refuel point (Random, Closest)": "Closest",
"Monument Options": {
"Airfield": {
"Enabled": true,
"Local Position": {
"x": -70.0,
"y": 0.3,
"z": 34.5
},
"Local Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
"Small Harbour": {
"Enabled": true,
"Local Position": {
"x": -5.0,
"y": 4.85,
"z": -80.0
},
"Local Rotation": {
"x": 0.0,
"y": 270.0,
"z": 0.0
}
},
"Large Harbour": {
"Enabled": true,
"Local Position": {
"x": 80.0,
"y": 5.26,
"z": -43.0
},
"Local Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
},
"Launch Site": {
"Enabled": true,
"Local Position": {
"x": -20.0,
"y": 3.2,
"z": 0.0
},
"Local Rotation": {
"x": 0.0,
"y": 90.0,
"z": 0.0
}
},
"Power Plant": {
"Enabled": true,
"Local Position": {
"x": 48.0,
"y": 0.25,
"z": 87.0
},
"Local Rotation": {
"x": 0.0,
"y": 90.0,
"z": 0.0
}
},
"Large Oil Rig": {
"Enabled": true,
"Local Position": {
"x": 39.0,
"y": 31.52,
"z": -10.0
},
"Local Rotation": {
"x": 0.0,
"y": 270.0,
"z": 0.0
}
},
"Small Oil Rig": {
"Enabled": true,
"Local Position": {
"x": 29.0,
"y": 45.12,
"z": 5.0
},
"Local Rotation": {
"x": 0.0,
"y": 270.0,
"z": 0.0
}
}
},
"Custom Landing Points": [
{
"Name": "Example Custom Point",
"Enabled": false,
"Local Position": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"Local Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"NPC Options": {
"Drop inventory as loot": false,
"Include belt items in loot": false,
"Include main items in loot": false,
"Include wear items in loot": false,
"NPC Types": [
{
"NPC Display Name": "Pilot",
"NPC Kit (leave empty for default NPC)": "",
"NPC type (Normal, Heavy)": "Normal"
},
{
"NPC Display Name": "Co-Pilot",
"NPC Kit (leave empty for default NPC)": "",
"NPC type (Normal, Heavy)": "Normal"
},
{
"NPC Display Name": "Gunner",
"NPC Kit (leave empty for default NPC)": "",
"NPC type (Normal, Heavy)": "Heavy"
},
{
"NPC Display Name": "Guard",
"NPC Kit (leave empty for default NPC)": "",
"NPC type (Normal, Heavy)": "Heavy"
}
]
},
"Loot Options": {
"Minimum amount of crates to spawn": 2,
"Maximum amount of crates to spawn": 4,
"Fill crates with custom loot": false,
"Minimum amount of items to spawn": 2,
"Maximum amount of items to spawn": 6,
"Custom Loot Contents": [
{
"Shortname": "syringe.medical",
"Minimum amount of item": 2,
"Maximum amount of item": 6,
"Skin ID": 0
},
{
"Shortname": "largemedkit",
"Minimum amount of item": 1,
"Maximum amount of item": 2,
"Skin ID": 0
},
{
"Shortname": "bandage",
"Minimum amount of item": 1,
"Maximum amount of item": 4,
"Skin ID": 0
},
{
"Shortname": "antiradpills",
"Minimum amount of item": 1,
"Maximum amount of item": 3,
"Skin ID": 0
},
{
"Shortname": "ammo.rifle",
"Minimum amount of item": 10,
"Maximum amount of item": 100,
"Skin ID": 0
},
{
"Shortname": "ammo.pistol",
"Minimum amount of item": 10,
"Maximum amount of item": 100,
"Skin ID": 0
},
{
"Shortname": "ammo.rocket.basic",
"Minimum amount of item": 1,
"Maximum amount of item": 3,
"Skin ID": 0
},
{
"Shortname": "ammo.shotgun.slug",
"Minimum amount of item": 10,
"Maximum amount of item": 20,
"Skin ID": 0
},
{
"Shortname": "pistol.m92",
"Minimum amount of item": 1,
"Maximum amount of item": 1,
"Skin ID": 0
},
{
"Shortname": "rifle.ak",
"Minimum amount of item": 1,
"Maximum amount of item": 1,
"Skin ID": 0
},
{
"Shortname": "rifle.bolt",
"Minimum amount of item": 1,
"Maximum amount of item": 1,
"Skin ID": 0
},
{
"Shortname": "rocket.launcher",
"Minimum amount of item": 1,
"Maximum amount of item": 1,
"Skin ID": 0
},
{
"Shortname": "pistol.revolver",
"Minimum amount of item": 1,
"Maximum amount of item": 1,
"Skin ID": 0
}
]
},
"Automation Options": {
"Automatic events enabled": true,
"Minimum amount of time between events (seconds)": 1800,
"Maximum amount of time between events (seconds)": 3600
},
"Version": {
"Major": 2,
"Minor": 0,
"Patch": 0
}
}