Electus LogoElectus Documentation

Electus Computers Installation

Step-by-step guide to install Electus Computers on your FiveM server.

Installation Steps

Please ensure you follow these steps carefully. If you are having trouble installing, please join our Discord for support.

Download the package

Download the package from Portals. Keep the folder name electus_computers: item exports and the database checker use it.

Install dependencies

Install Electus Core, ox_lib and oxmysql. You also need ESX, QBCore or Qbox and an inventory with item metadata.

Optional resourceUsed for
ox_target, qb-target or qtargetTarget interactions. Without one, markers and key prompts are used.
lb-phone, RoadPhone or YSeriesThe Phone app, SMS Dump and other phone features. Set Config.PhoneSystem, or "none" to disable them.
pma-voiceCall and radio intercepts (Config.CallIntercept.voice, Config.RadioIntercept.voice).
fmsdkFivemanage logs.

The default ESX inventory has no item metadata, so printed documents are disabled with it. Use ox_inventory on ESX.

Add script to server.cfg

Start the dependencies first, then electus_core, then electus_computers:

ensure oxmysql
ensure ox_lib
ensure es_extended      # or qb-core / qbx_core
ensure ox_inventory     # or your inventory
ensure ox_target        # optional
ensure lb-phone         # optional
ensure electus_core
ensure electus_computers

add_ace group.admin electus_computers.admin allow

Database

electus_computers.sql

You do not need to import SQL by hand. On every start, the Electus Core database checker reads electus_computers.sql, creates missing tables and adds missing columns. It never drops tables, columns or data.

To import manually, run electus_computers.sql against your database before the first start.

Add the items

Item names must match config/items.lua. Computers and devices carry a serial number or other metadata, so none of them may stack. Laptop parts may stack.

integrations/images/ has a 256x256 image for every item, named after the item. If you rename an item, rename its image too.

Copy the entries from these files into ox_inventory/data/items.lua:

FileItems
integrations/ox_inventory/laptop_items.luaLaptop and its colour variants
integrations/ox_inventory/device_items.luaDesktop computer, TV, router, USB drives and antennas, SIM card, USB cables, card terminal
integrations/ox_inventory/document_items.luaPrinter, printed document
integrations/ox_inventory/laptop_part_items.luaLaptop parts for the repair bench

Keep stack = false and consume = 0 on computers and devices. Copy the images in integrations/images/ to ox_inventory/web/images/.

Qbox uses ox_inventory, so follow these steps on Qbox too.

Add the items below to qb-core/shared/items.lua, then copy the images in integrations/images/ to qb-inventory/html/images/.

For other inventories, copy integrations/images/ into the inventory's image folder.

Configure the script

Everything lives in config/. Start with config/config.lua: framework, inventory, notifications, target, phone system and locale. See Configuration files for the rest.

Config files are sent to every client. Never put webhooks, API keys or other secrets in them. Use the convars below instead.

Set up the Digital Den job

On first start the resource creates the Digital Den business from Config.Business.presets, with its counter computer, card terminal, shop clerk and laptop repair bench. Create a digital_den job in your framework first, or change the job in config/apps/business.lua, config/apps/stores.lua and config/laptop_hardware.lua.

These positions are made for the electus_digital_den map. If you don't run it, see Digital Den without the map.

Set up image uploads

Gallery images, wallpapers and documents are uploaded through electus_core. Follow the Upload service guide to add your provider credentials.

Restart your server

Restart your server. Within about 10 seconds of starting, the resource checks its config and prints [config] warnings for things like unknown option values, missing items or jobs, missing webhooks and invalid coordinates. Fix them and restart.

Convars

ConvarPurpose
set electus_computers_logs_webhook "<url>"Discord webhook for Config.Logs when Service = "discord".
set DISCORD_LOG_WEBHOOK "<url>"Fallback webhook shared by Electus resources.
set FIVEMANAGE_MEDIA_API_KEY "<key>" / set QBOX_CDN_API_KEY "<key>"Image uploads when the upload method is "auto". Starting lb-presigned also works.
setr electus_computers-debugMode 1Extra client debug output without editing the config. Config.Debug = true also enables it.

Use set, never setr, for webhooks and API keys. setr replicates the value to every connected client.

Configuration files

FileContents
config.luaFramework, inventory, notifications, menus, help text, target, phone, locale, debug, callback rate limit and allowed image hosts
items.luaEvery item name the resource uses. Rename items here only.
laptop.lua, tv.lua, printer.luaLaptop colours, price, default apps and storage limits, TV and printer settings
computer.lua, placement.lua, laptop_animation.luaScreen resolution, replication, placement and carry controls
laptop_hardware.luaLaptop parts, wear, damage, battery and repair benches
devices/Screen layouts per prop, overlay, USB drives and cables, router, wifi and card terminal
apps/Software store, shop clerks, Boss Menu, businesses, Cloud Drive, crypto, documents, websites and real estate
hacking/Hacking apps and sessions, heat, police tools, intercepts, cell towers, SMS Dump, encrypted marketplace and wiki
system/admin.luaAdmin panel command, ACE and groups
system/logs_admin.luaLog service and categories
system/audio.luaComputer sounds
system/retention.luaBackground database cleanup
locales/Translations. Copy en.lua, translate it and set Config.Locale. Missing keys fall back to English.

UI theme

The admin panel, port manager and repair bench follow Electus Core's shared UI theme. Choose one for electus_computers with /uitheme. The laptop OS keeps its own look and its own settings.

Troubleshooting