Skip to content

PropertiesGame

Characters’ homes read in game, read only, on their citizen record: address, role, co-residents, entrance on the map. Supported scripts.

On this page06
  1. Turn it on
  2. The Properties tab
  3. Compatibility
  4. Custom script?
  5. Bridge settings
  6. Troubleshooting

With Character properties, the citizen record of a game character gets a Properties tab: their homes as the game knows them. Before a search, you know where they live, whether they own or rent, and who lives with them.

Everything is read only: SuperMDT never changes anything in game.

  1. Check that your housing script is in the compatibility table.
  2. In Settings › Game › Integrations, turn on Character properties (administrators, or a rank with Delegated administration › Set up the game). Off by default.
  3. Under the switch, SuperMDT shows the detected script.
Settings › Game › Integrations

On the server side: Config.Integrations.properties.enabled in config.lua.

The Properties tab of a citizen record

For each home:

  • the address or name of the home;
  • the type: House, Apartment or Home;
  • the character’s role: Owner, Tenant or Has the keys;
  • the co-residents: a link to their record when SuperMDT knows them, otherwise “Another character”;
  • the entrance on the map (Show on the map, then Hide the map), when the script gives it; otherwise “Unknown entrance”.

At the top, SuperMDT shows when the properties were read in game and by which script. An Experimental script is flagged: check the information in game.

At most 20 homes per character and 8 co-residents per home.

  • on every join, reconnection or character switch, on every framework, unless the character was read less than a minute ago;
  • then every 30 minutes for connected characters (Config.Integrations.properties.resyncMinutes).

The bridge reads one character at a time. An unchanged list is not sent again.

Permission What it allows Default
Properties › View properties The Properties tab of records from the game every rank, police and justice services only

It sits under the Citizens module of the permission matrix, and only shows there when the game integration is on. In a medical or custom service, give it by hand if you need it.

Tested in game tried in game on a real server. Verified in code written from the script’s source code or native API, covered by the bridge’s tests, not tried in game yet. Experimental from the publisher’s public documentation, never tried: check it on your server before relying on it.

Script Status What is read
ps-housing Verified in code properties table: owner and has_access (has the keys). Apartments have no entrance position.
qbx_properties (Qbox) Verified in code properties table: owner, tenant (home with rent), key holders (keyholders), entrance. The starter apartment (zero price, no rent) is an Apartment.
qb-houses Verified in code player_houses and houselocations tables: owner, key holders, entrance.
esx_property (ESX Legacy) Verified in code The resource’s properties.json file (read with LoadResourceFile): Owner, Keys, Entrance.
qs-housing (paid) Experimental Same tables as qb-houses.
loaf_housing Experimental loaf_properties and loaf_houses tables.
bcs_housing Experimental GetOwnedHomeKeys export. A rental is read as Tenant.
nolag_properties Experimental GetAllProperties export. The role is inferred.

If several scripts are started, the bridge takes the first in this order: ps-housing, qbx_properties or qs-housing, bcs_housing, nolag_properties, loaf_housing, esx_property, qb-houses.

Reading through oxmysql is read only: one bounded query per character, never a write. You can turn it off with Config.Integrations.properties.sql = false: only the export scripts (bcs_housing, nolag_properties) and esx_property remain.

Your housing script… Result
keeps the original tables or file of a script in the table Read.
stores homes in its own tables, or renames the owner columns Not read.

In config.lua, Config.Integrations.properties:

Setting Role Default
enabled The integration on the game server side (false: off, whatever SuperMDT says) on
resyncMinutes Re-reading of connected characters (0: never) 30
readIntervalMs At most one character read every… 2,000 ms
sql Reading tables through oxmysql on
What you see Cause What to do
No Properties tab Integration off, or missing permission Settings › Game › Integrations; Properties › View properties.
“Not read in game yet” The character has not joined since it was turned on They arrive when they next join.
“No known home” although they have one Unsupported or custom script supermdt status (“Properties” line) tells what is used.
“Unknown entrance” The script gives no position (ps-housing apartments) Expected.