Properties
Properties in the panel (and the in-game menu) lists the houses and apartments of your housing script: owner, location on the map, key holders, price and rent. The player card has a Properties tab with the houses a character owns or holds a key to. Everything works while the owner is offline.
| Action | Permission | Notes |
|---|---|---|
| See the list and the player card tab | properties | |
| Change owner, vacate | propertyOwner | Keys are reset unless you keep them. |
| Give and take keys | propertyKeys | Only scripts that store key holders. |
| Delete | propertyDelete | Backed up first, see below. |
| Restore a deleted or vacated property | propertyRestore | Properties → Deleted. |
| Go to the door (in game) | gotoProperty |
Every action is written to the Properties log channel.
Detected scripts
Section titled “Detected scripts”| Resource | Owner | Keys | Notes |
|---|---|---|---|
ps-housing | properties.owner_citizenid | has_access (live) | Reads owners at start: owner changes show after a restart. |
qbx_properties | properties.owner | keyholders | Reads the database on every action. |
qs-housing | player_houses (through its exports) | — | Owner changes go through the script, live. Delete in game. |
qb-houses | player_houses.citizenid | keyholders | Reads owners at start: changes show after a restart. |
qb-apartments | apartments.citizenid | — | One apartment per character; delete instead of vacate. |
esx_property 1.x | owned_properties.owner | — | |
propertys (Creative vRP) | propertys.Passport | — | Access is the key item; location comes from the config. |
origen_housing | origen_housing.citizenid | — | Changes show after a restart. |
ox_property | ox_property.owner | — | Changes show after a restart. |
ND_Properties | nd_properties.owner | access |
Not supported: esx_property 2.x (keeps properties in properties.json), bcs_housing and loaf_housing (ownership
tables are not published; map them yourself if you know them) and ND_Property (properties belong to groups). The
Properties page says which one it found.
Deleting and vacating
Section titled “Deleting and vacating”Delete backs up every row of the property (and rows linked to it by foreign keys) and deletes them in one
database transaction; nothing is deleted if the backup fails. When owners live in their own table (qb-houses,
esx_property), Vacate backs up and removes the ownership row the same way. Backups stay 30 days in your
database (fiveops_deleted_properties) and come back from Properties → Deleted. A restore is refused if the
property was rebuilt or someone else owns it now.
Deleting a character takes its houses with it (the owner rows of the detected housing script go into the character backup) and restoring the character brings them back.
Your own script
Section titled “Your own script”EditableServer.propertyTables = { custom = true, fn = function() return { name = 'my_housing', table = 'houses', id = 'id', label = 'label', coords = 'entrance', -- JSON { "x", "y", "z" }; coordsKey = 'enter' for a nested key price = 'price', owner = 'owner', -- character id: citizenid / users.identifier / charId / charid / user_id keys = 'keyholders', -- JSON list of character ids (keyField for a list of objects) } end,}When owners live in their own table, use ownership = { table, property, owner, keys?, license? } instead of
owner/keys. Return a list of tables for several scripts. While the entry is on, built-in detection is off.