Installation
Install and start Nexra Overwatch on your FiveM server.
Installation
- Ensure ox_lib is installed and started.
- Ensure OneSync is enabled on your server.
- Place
nexra_overwatchin your resources folder. - Add the Overwatch convars from Panel convars to
server.cfg. - Add the following to
server.cfg:
ensure ox_lib
ensure nexra_overwatch- Restart the server (or start the resource), then open the panel in a browser:
http://YOUR_SERVER_IP:3848Panel convars
Add this to server.cfg and change the password before going live:
setr overwatch_bind_host "0.0.0.0"
setr overwatch_port "3848"
setr overwatch_trust_proxy "false"
set overwatch_allowed_ips ""
set overwatch_user "admin"
set overwatch_pass "your-strong-password"
setr overwatch_admin_username "admin"
setr overwatch_admin_local_only "true"
setr overwatch_rate_limit_max_attempts "3"
setr overwatch_max_streams "16"
setr overwatch_signal_poll_ms "300"
setr overwatch_default_quality "medium"
setr overwatch_max_viewers_per_target "3"set overwatch_allowed_ips "" controls who can access the browser panel by IP address.
- Leave it empty (
"") to allow the panel login page from any IP that can reach the panel port. - Add a comma-separated list to only allow specific public IPs.
- Do not add spaces between IPs.
- Localhost (
127.0.0.1) is always allowed.
Example:
set overwatch_allowed_ips "XXX.XXX.XXX.10,XXX.XXX.XXX.25"With the default overwatch_admin_local_only "true", the built-in admin account can only be used from the VPS itself at:
http://127.0.0.1:3848Use that local admin session to create staff users, or set overwatch_admin_local_only "false" if you want the built-in admin account available remotely.
Creating staff accounts
The built-in admin account from server.cfg is used to create normal staff logins.
- Open the panel from the VPS browser:
http://127.0.0.1:3848- Log in with:
Username: admin
Password: your-strong-passwordUse the username from overwatch_user and the password from overwatch_pass if you changed them.
- Click Manage Users.
- Enter a staff username, password, and max stream count.
- Click Create User.
The new staff account can then log in to the panel from an allowed IP. Staff accounts are saved in:
data/users.jsonUsernames can use letters, numbers, underscores, and hyphens. The max stream count controls how many players that staff account can watch at once, up to overwatch_max_streams.
Firewall
The panel runs on TCP port 3848 by default. Open that port on your VPS firewall if staff will connect directly.
Linux
Run as root or with sudo:
sudo bash nexra_overwatch/install/linux_setup_firewall_overwatch.sh 3848Windows
Run Command Prompt as Administrator:
nexra_overwatch\install\windows_setup_firewall_overwatch.bat 3848If you use a domain with a reverse proxy, keep overwatch_bind_host as 0.0.0.0, set overwatch_trust_proxy "true", and proxy traffic to the configured panel port.
Dependencies
Required
| Requirement | Notes |
|---|---|
| ox_lib | Required by fxmanifest.lua |
| OneSync | Required by fxmanifest.lua |
| Open TCP panel port | Default 3848, unless the panel is only accessed locally or through a reverse proxy |
Auto-detected
Framework bridging is used for character names and player data when available.
| Integration | Supported |
|---|---|
| Framework | qbx_core, qb-core, es_extended, custom, or none |
For other frameworks, edit framework/custom/.
Locales
Locale files live in locales/. Set Config.Locale in config.lua.
Included: en, de, es, fr, nl, pt-br, tr, cs
Branding
The shipped panel build includes editable branding assets:
| File | Purpose |
|---|---|
web-site/build/logo.png | Browser panel logo |
web-site/build/theme.css | Browser panel theme variables |
Replace the logo file with your own image, or edit theme.css to adjust the panel theme. The UI source is not required and is not part of the install workflow.
Data files
Overwatch stores panel data as JSON / text files. No SQL install is required.
| File | Purpose |
|---|---|
data/users.json | Staff users created from the admin panel |
data/blocked_ips.json | IPs blocked after too many failed login attempts |
data/watch_log.txt | Optional watch activity log when enabled |
Editable files
These remain open for customization (escrow ignore):
config.lualocales/*.jsonserver/*.luaframework/**/*.luashared/map_coords.luaweb-site/build/logo.pngweb-site/build/theme.css
