Add more locations
Here are explanations on how to add new Processing and Trucking Locations!
Plane Delivery Locations
In the config file, you'll find a table called PlaneLocations
. This section explains how to add new plane delivery locations for coke transportation and how to modify existing ones.
1. Understand the Structure:
Each plane delivery location has several key components:
planeModel: The model of the plane used for the delivery.
target: The interaction point where players can start the delivery.
coords: The coordinates of the delivery start location (vector4 format).
label/icon: Details for displaying the interaction label and icon.
blip: The visual map marker for the delivery start location.
enabled: Set to true or false to show/hide the blip.
name/sprite/scale/col: Customize the appearance of the blip on the map.
ped: A non-player character (NPC) that can spawn at the delivery start location.
enabled: True to spawn a ped, false to disable.
coords: The coordinates where the ped spawns.
model: The model of the ped.
flightLocations: Contains start and finish points for the plane delivery route. Multiple routes can be added.
start: The plane's starting point, including the coke table location and plane spawn point.
finish: The delivery point, including where the ped is to receive the delivery and where to park the plane.
receive: Specifies the rewards (e.g., coke bricks) for successfully completing a delivery.
Customize the items and the amount received per delivery.
policeAlert: Police alert settings for the delivery.
enabled: Set to true to enable police alerts during deliveries.
onPlaneAltitude: The altitude of the plane at which police alerts are triggered.
time: How often police are notified of the vehicle's location (in seconds).
cooldown: Cooldown settings to prevent immediate re-use of the location after a delivery.
enabled: Set to true to enable the cooldown.
time: Time in minutes before the location can be used again.
2. Adding a New Plane Delivery Location:
To add a new delivery location, copy the structure of an existing location and modify it with new coordinates, flight locations, and other details.
Example: Adding a New Plane Delivery Location
PlaneLocations = {
-- Existing Plane Delivery Location
{
planeModel = "dodo", -- Model of plane
target = {
label = Loc[Config.Locale].target["StartPlaneDelivery"],
icon = "fas fa-plane",
coords = vector4(456.11, 5566.4, 781.18, 92.37),
width = 2.0,
length = 2.0,
},
blip = {
enabled = true,
name = "Coke Delivery",
sprite = 51,
scale = 0.7,
col = 30,
},
ped = {
enabled = true,
coords = vector4(456.11, 5566.4, 781.18, 92.37),
model = "s_m_m_doctor_01",
},
flightLocations = {
{
start = {
cokeTable = vector4(2128.97, 4778.26, 40.97, 132.32),
plane = vector4(2133.0, 4785.41, 40.78, 26.4),
},
finish = {
ped = vector4(1700.72, 3286.77, 41.15, 201.88),
plane = vector4(1702.45, 3273.56, 41.16, 238.97),
}
},
},
receive = {
["coke_brick"] = math.random(1, 2),
},
policeAlert = {
enabled = true,
onPlaneAltitude = 70,
time = 30,
},
cooldown = {
enabled = true,
time = 30,
},
},
-- New Plane Delivery Location Example
{
planeModel = "mammatus", -- Model of plane for new delivery
target = {
label = Loc[Config.Locale].target["StartPlaneDelivery"],
icon = "fas fa-plane",
coords = vector4(400.0, 5200.0, 800.0, 180.0), -- New start location coordinates
width = 2.5,
length = 2.5,
},
blip = {
enabled = true,
name = "New Coke Delivery",
sprite = 51,
scale = 0.7,
col = 30,
},
ped = {
enabled = true,
coords = vector4(400.0, 5200.0, 800.0, 180.0),
model = "s_m_m_pilot_02",
},
flightLocations = {
{
start = {
cokeTable = vector4(2300.0, 4700.0, 50.0, 90.0), -- New starting point for plane
plane = vector4(2305.0, 4710.0, 50.0, 100.0),
},
finish = {
ped = vector4(2500.0, 4800.0, 40.0, 180.0), -- New delivery point
plane = vector4(2502.0, 4795.0, 40.0, 190.0),
}
},
},
receive = {
["coke_brick"] = math.random(2, 3), -- Customize the delivery reward
},
policeAlert = {
enabled = true,
onPlaneAltitude = 80, -- Customize alert altitude
time = 40,
},
cooldown = {
enabled = true,
time = 45, -- New cooldown time in minutes
},
}
Processing Locations
Within the config file, you'll find a table called ProcessingLocations
. This section will guide you on how to add new processing locations to the script.
1. Understand the Structure:
Each processing location has several key components:
target: The in-game interaction point where players can process items.
coords: The coordinates of the processing location (vector4 format).
width/length: The size of the interaction area.
icon/label: Details for displaying interaction icons and labels.
blip: The map marker that shows the location on the map.
enabled: Set to true or false to show/hide the marker.
name: The name that appears on the map.
sprite, scale, col: Customize the appearance of the blip on the map.
crafting: Contains information about the crafting process, including the required items and animations.
Items: Specifies the items needed for crafting and the result of crafting.
Menu: Sets the header of the crafting menu.
Progress: Details about the progress bar, including time, labels, and animations used during crafting.
2. Adding a New Processing Location:
To add a new processing location, copy the structure of an existing location and customize it with the new coordinates, crafting details, and other parameters.
Example: Adding a New Processing Location
Add the new location inside the ProcessingLocations
table as shown below:
ProcessingLocations = {
-- Existing Processing Location
{
target = {
label = "Cocaine Processing",
icon = "fas fa-flask",
coords = vector4(1093.21, -3195.64, -38.93, 0),
width = 2.0,
length = 2.0,
},
blip = {
enabled = true,
name = "Cocaine Processing",
sprite = 51,
scale = 0.7,
col = 30,
},
requiredItem = "coke_blueprint",
crafting = {
Items = {
{ item = "coke_1oz", recipe = { ["coke_brick"] = 1 }, amount = math.random(25, 30) },
{ item = "coke_1oz", recipe = { ["coke_brick"] = 3 }, amount = math.random(60, 85) },
},
Menu = {
header = Loc[Config.Locale].menu["Cocaine"],
},
Progress = {
label = Loc[Config.Locale].progress["Processing"],
time = 15,
animation = { animDict = "anim@amb@business@coc@coc_unpack_cut_left@", anim = "coke_cut_v5_coccutter" },
}
}
},
-- New Processing Location Example
{
target = {
label = "Meth Processing",
icon = "fas fa-flask",
coords = vector4(1200.0, -3200.0, -50.0, 90), -- New processing location coordinates
width = 2.5,
length = 2.5,
},
blip = {
enabled = true,
name = "Meth Processing",
sprite = 51,
scale = 0.8,
col = 38,
},
requiredItem = "meth_blueprint", -- Adjust the required item for processing, or set to false if no item is needed
crafting = {
Items = {
{ item = "meth_baggy", recipe = { ["meth_brick"] = 1 }, amount = math.random(10, 15) }, -- Customize item requirements
},
Menu = {
header = Loc[Config.Locale].menu["MethProcessing"], -- Header for the crafting menu
},
Progress = {
label = Loc[Config.Locale].progress["Processing"], -- Label for the progress bar
time = 20, -- Time taken for processing
animation = { animDict = "anim@amb@business@meth@meth_unpack_cut@", anim = "meth_cut_v1_methcutter" }, -- Custom animation for processing
}
}
}
}
Last updated
Was this helpful?