Quasar Store Logo

Installation

Installation guide — please follow each step carefully and exactly as described to ensure the script works correctly on your server. Skipping or modifying steps may cause the system to not function properly, so follow it step by step.

Download Script

To download the assets needed for this script, you must access the official Cfx.re portal, where all assets purchased through Tebex are managed.

1

Access the Granted Assets Page

Open the Cfx.re granted assets page: https://portal.cfx.re/assets/granted-assets.

This page contains all assets linked to your Cfx.re purchases.

2

Log In with Your Cfx.re Account

Sign in using the same Cfx.re account you used when purchasing the asset.

If you use a different account, the assets will not appear.

3

Download the Housing Assets

In the granted assets list, locate and download:

Crosshair

These two packages are required to install the full housing system.

These files include the models, materials, and visual resources required for the proper operation of the housing system.





Download Dependencies

This script requires some mandatory dependencies to function correctly. Make sure to download and extract them inside your server’s main directory, keeping their original folder structure intact.





Server.cfg Placement

Get up and running in just a few minutes. Follow the steps below to install the resource, configure the required dependencies, and verify that everything is working correctly on your server. Once completed, all features will be available in-game and ready to use.

1

Upload The Resource

Place qs-crosshair/ inside your server's resources/ directory.

resources/ └── [crosshair]/ └── qs-crosshair/
2

Configure server.cfg

Add the following lines to your server.cfg in this exact order:

ensure oxmysql ensure ox_lib ensure qs-crosshair
3

Restart The Server

Restart your server to load the resource.

4

Verify Installation

Check the server console and confirm that the qs-crosshair startup banner appears successfully, showing the resource version and status.



Database Setup

Avoid using tools like XAMPP or other non-optimized local servers, as they may cause connection errors.

This script includes an essential database required for its operation.You must import it before starting your server, preferably using HeidiSQL or any other manager compatible with MariaDB/MySQL.

ESX/QB





Configure The Script

All settings are in qs-crosshair/config/main.lua. The file uses semantic markers so you know what is safe to change:

MarkerDescription
[EDIT]Safe to modify. Intended for server owners and administrators.
[INFO]Informational content. No action required.
[ADV]Advanced configuration. Modify only if you understand the impact.
[CORE]Core functionality. Editing is not recommended.
[AUTO]Automatically managed by the system. Do not modify.

Common Settings

These are the most frequently customized options:

SettingDescription
Config.CommandChanges the command used to open the interface. Default: crosshair
Config.KeybindChanges the default key binding. Default: F4
Config.Share.RadiusMMaximum distance for the Share Nearby feature. Default: 30m (Maximum: 100m)
Config.NotificationTypeNotification system to use. Supported values: ox_lib, qs, esx, custom, builtin
Config.Admin.AceGroupACE permission required to access the admin panel. Default: group.admin





Admin Permissions

The Admin tab is visible only to players whose FiveM ace includes Config.Admin.AceGroup (default group.admin).

Grant from the server console or txAdmin:

add_principal identifier.license:XXXXXXXXXXXXXXXXXX group.admin

Replace XXXXXXXXXXXXXXXXXX with the player's FiveM license identifier. You can find it via F8 while connected, or from the txAdmin player list.

To use a different ace group (for example a custom crosshair.admin), edit Config.Admin.AceGroup in config/main.lua and grant that ace to your admin players.





Custom Hooks (Optional)

If you need to gate access, fire side-effects, or integrate with another script, use the hook files — they are not encrypted.

Location client/custom/main.lua.

-- Return false to block a specific player from opening the panel. function OnBeforeOpen() -- Example: block panel during active PvP event -- if IsInPvpZone() then return false end return true end -- Called immediately after the panel opens. function OnAfterOpen() end -- Called whenever the active crosshair build changes. -- cfg is the full CrosshairCfg table. function OnApply(cfg) end

Location server/custom/main.lua.

-- Called when a player loads and their library is hydrated. function OnPlayerLoad(src) end -- Called when a player successfully sends a build to another player. function OnShareSent(sender, recipient, build) end -- Called when an admin saves a panel setting (key/value pair). function OnAdminSave(admin, key, value) end