Skip to content

Installation

This guide will walk you through installing prp-outposts on your FiveM server.

Installation steps

1
Download the resources
Download both prp-outposts and prp-outposts-assets from the CFX portal and place them in your resources folder.
2
Add to server.cfg
Add the resources to your server.cfg.
ensure ox_lib
ensure ox_doorlock
ensure prp-bridge
ensure prp-outposts-assets
ensure prp-outposts
prp-outposts-assets must be started before prp-outposts.
3
Configure ox_doorlock
Configure ox_doorlock with the outpost door entries — see Doors below. Add the doorlock entries from the SQL block below.
4
Add items
Add all required items to your inventory resource — see Items below.
5
Disable debug
Set Config.Debug to false in configs/main.lua before going live.
6
Configure outposts
Configure outpost locations, dealer profiles, and server rules in configs/outposts.lua, configs/ped_profiles.lua, and configs/server.lua.
7
Optional: inventory icons
Custom inventory icons are included in the installation/inventory icons folder. Copy them to your inventory resource's image directory if you'd like to use them.
8
Optional: access card
To give players access to an outpost, you either need to give them the outposts_exchange_card item or obtaining it via a shop, it will grant them access to the nearest outpost, where the item was given.

WARNING

prp-outposts-assets must be started before prp-outposts. It streams the custom interior models, doors, and collision files required by the script.

sql
INSERT INTO `ox_doorlock` (`name`, `data`) VALUES ('outpost_1', '{"model":-549572034,"autolock":30,"doors":false,"state":1,"maxDistance":2,"heading":149,"coords":{"x":882.59521484375,"y":-160.88124084472657,"z":77.27613067626953},"hideUi":true}');
INSERT INTO `ox_doorlock` (`name`, `data`) VALUES ('outpost_2', '{"model":-549572034,"autolock":30,"doors":false,"state":1,"maxDistance":2,"heading":121,"coords":{"x":-893.3160400390625,"y":-1140.37353515625,"z":6.02081251144409},"hideUi":true}');
INSERT INTO `ox_doorlock` (`name`, `data`) VALUES ('outpost_3', '{"autolock":30,"model":-549572034,"doors":false,"state":1,"coords":{"x":81.50341796875,"y":-1614.6998291015626,"z":29.93463134765625},"maxDistance":2,"heading":320,"hideUi":true}');

Database

prp-outposts does not require any manual SQL setup. No tables need to be created or seeded.

Doors

Each outpost has one or more locked doors managed by ox_doorlock. Add a door entry to your ox_doorlock configuration for each door defined in configs/outposts.lua. Use the model hash and coords from the outpost config.

The ToggleOutpostDoor(doorName, doorState) function in server/editable.lua calls exports.ox_doorlock:setDoorState to lock/unlock doors - ensure your door names in ox_doorlock match those passed by the script.

Items

Add all required items to your inventory resource using the format appropriate for your setup.

Add the items below to your ox_inventory into data/items.lua.

lua
['outposts_exchange_card'] = {
    label = 'Exchange Access Card',
    weight = 10,
    stack = false,
    close = true,
},
['outposts_clue_taxi'] = {
    label = 'Taxi Receipt',
    weight = 10,
},
['outposts_clue_delivery'] = {
    label = 'Delivery Note',
    weight = 10,
},
['outposts_clue_washing'] = {
    label = 'Laundry Slip',
    weight = 10,
},

INFO

The outposts_exchange_card item requires an outpost metadata field to identify which outpost it grants access to. Ensure your distribution method sets this metadata when giving the card to players.

Minimum Players Convar

The KingPin takeover interaction is gated by a server convar. Set it in your server.cfg:

set sv_minPlayersForExchange 3

This requires at least 3 players online before any player can take control of an outpost. Set to 0 to disable the requirement.