Adding a New Corner
Adding a New Corner
This guide will walk you through modifying the configuration file to add a new corner. Follow the steps below to update your configuration and test your changes in-game.
Prerequisites
Access to the File: Ensure you have access to the file at
rm_illegalcorners/cfg.lua
.Basic Understanding: Familiarity with editing Lua files and using your script’s commands in-game.
1. Open the Configuration File
Locate and open the file:
rm_illegalcorners/cfg.lua
2. Understand the Configuration Tables
The configuration file contains two primary sections: the Items Table and the Corners Table.
Items Table
This table defines the items that can be selled at any corner. For example:
cfg.items = {
['bandage'] = {
label = 'Bandage',
unitPrice = { 1, 10 }, -- A random price between 1 and 10 will be selected.
qty = { 1, 15 }, -- A random quantity between 1 and 15 will be selected.
-- image = 'bandage.png', -- Defaults to 'itemname.png' if no image is provided.
},
}
Corners Table
This table specifies the corner locations and the items available at each corner. Each corner includes a zoneData
property that defines its active area.
3. Add Your New Corner
To add a new corner, simply append a new configuration object to the cfg.corners
table. Below are examples for each zone type.
Example: Sphere Zone
{
name = 'drug_corner',
label = 'Drugs Corner',
zoneData = {
coords = vec3(201.62, -1020.74, 29.0),
radius = 250, -- Defines the active area as a sphere.
-- debug = true, -- Uncomment to enable debugging.
},
items = { 'bandage' },
}
Example: Box Zone
{
name = 'new_corner_box',
label = 'New Corner Box',
zoneData = {
coords = vec3(100.0, 200.0, 300.0), -- Center coordinates of the box.
size = vec3(100.0, 100.0, 50.0), -- Dimensions of the box.
-- debug = true, -- Uncomment to enable debugging.
},
items = { 'bandage' },
}
Example: Polygon Zone
{
name = 'new_corner_poly',
label = 'New Corner Polygon',
zoneData = {
points = {
vec3(150.0, 250.0, 300.0),
vec3(160.0, 260.0, 300.0),
vec3(155.0, 270.0, 300.0),
},
thickness = 5, -- Defines the thickness of the polygon zone.
-- debug = true, -- Uncomment to enable debugging.
},
items = { 'bandage' },
}
Your final configuration might look like this:
cfg.disableCorners = false -- If set to true, items will appear on random peds with no location restrictions.
cfg.corners = {
-- Sphere Zone Example
{
name = 'drug_corner',
label = 'Drugs Corner',
zoneData = {
coords = vec3(201.62, -1020.74, 29.0),
radius = 250,
-- debug = true,
},
items = { 'bandage' },
},
-- Box Zone Example
{
name = 'new_corner_box',
label = 'New Corner Box',
zoneData = {
coords = vec3(100.0, 200.0, 300.0),
size = vec3(100.0, 100.0, 50.0),
-- debug = true,
},
items = { 'bandage' },
},
-- Polygon Zone Example
{
name = 'new_corner_poly',
label = 'New Corner Polygon',
zoneData = {
points = {
vec3(150.0, 250.0, 300.0),
vec3(160.0, 260.0, 300.0),
vec3(155.0, 270.0, 300.0),
},
thickness = 5,
-- debug = true,
},
items = { 'bandage' },
},
}
4. Save and Restart
Save the File: Save your changes to
cfg.lua
.Restart the Script: Restart your script or resource to load the new configuration.
5. Test Your New Corner
Launch the Game: Start the game and connect to your server.
Navigate to Your Corner: Head to the coordinates you specified for your new corner.
Start Interaction: Once you're in the zone, open the chat or console and type:
/takecorner
6. Troubleshooting
Incorrect Zone Data: Verify that you are using the correct properties for each zone type:
Polygon: Use
points
andthickness
.Box: Use
coords
andsize
.Sphere: Use
coords
andradius
.
Coordinate Errors: Check that all coordinates, sizes, and radius values are correct.
Item Key Mistakes: Confirm that every item referenced in the
items
array exists incfg.items
.Script Not Reloading: Ensure you have properly restarted the resource after making changes.
Conclusion
By following these steps, you have successfully added a new corner using the updated zone configurations. Customize the items, zone types, and coordinates as needed to create a dynamic and flexible experience with your script.
Happy Scripting!
Last updated