How is a permanent ID assigned?
How is a permanent ID assigned?
On a character’s first login, the resource inserts a row into
vrs_permanent_ids and uses MySQL’s AUTO_INCREMENT to assign the next available number. The value is stored against the character’s identifier and read back on every subsequent login.Can an ID ever change or be reused?
Can an ID ever change or be reused?
No. IDs are tied to a character’s identifier for life. Deleted characters do not free their ID for reuse. The next character always gets
MAX(id) + 1.How is this different from the FiveM server slot ID?
How is this different from the FiveM server slot ID?
The server slot ID (
source / GetPlayerServerId) is recycled every time a player disconnects and can be reused by the next joiner. It is fine for a single session but useless for reports, clips, or historical logs. A permanent ID stays the same across every reconnect and every server restart.Which frameworks are supported?
Which frameworks are supported?
QBox, QBCore, and ESX, via vrs_bridge. The bridge auto-detects the running framework, so no configuration is required.
Do I need to import an SQL file?
Do I need to import an SQL file?
No. The
vrs_permanent_ids table is created automatically on first start.Can I start IDs at a higher number (e.g. #1000)?
Can I start IDs at a higher number (e.g. #1000)?
Yes. Set
Config.StartId in config.lua before the first boot. It only applies when the table is empty. Once IDs are being issued, changing StartId has no effect.Can I change the '#' prefix?
Can I change the '#' prefix?
Yes.
Config.DisplayPrefix controls the cosmetic prefix used in commands and above-head text. Set it to 'VRS-', '', or anything else you like.Can staff use these commands if they aren't in the framework admin group?
Can staff use these commands if they aren't in the framework admin group?
Yes. Grant the QBox/QBCore
vrs.permanentid ACE:admin/god and ESX admin groups pass without needing the ACE.How do I read a player's ID from another resource?
How do I read a player's ID from another resource?
Can I translate the player-facing text?
Can I translate the player-facing text?
Yes. Copy
locales/en.lua to locales/<code>.lua, translate the values (keep %s and %d placeholders in order), then set Config.Locale = '<code>'. Missing keys fall back to English automatically.The resource won't start. What now?
The resource won't start. What now?
Check the server console for the specific message. The most common causes are:
vrs_bridgeis not started, or is older than v1.2.0.oxmysqlis not started or cannot connect.ox_libis missing.
server.cfg:
