Browse docs
Doorlock
Doorlock is an optional Job Creator feature. It ships disabled by default. Your jobs can run with a different door system or with Doorlock disabled.
Enable Doorlock
- Open
/jobcreatorwith your normal Creator administration permission. - Open Doorlock → Settings.
- Enable the feature and save. Set the interaction and streaming distances as needed.
The package default in sky_jobcreator/config/config.lua is Config.DoorLocks.enabled = false. Once saved in the editor, its saved settings take precedence over the file default. Turn the feature off in the same settings page to release its door locks without deleting the saved definitions.
Creator disables its Doorlock when it detects an active ox_doorlock, rcore_doorlock,
doors_creator, hex_doorcreator, qb-doorlock or nui_doorlock. This also applies when
another provider starts later. Recognized provider aliases and provider metadata are checked;
Rcore's asset-only resource is not a Doorlock writer. Creator never stops the other resource.
After stopping the other provider, explicitly enable Creator Doorlock again. Stopping the
other provider does not automatically switch Creator back on.
Run one door system at a time. Creator does not activate its doors while a supported competing door resource is starting or running. Stop the previous door runtime before enabling Creator; keep its data until you have checked the replacement.
Create or edit a door
Choose Add door, then follow the steps for door type, selection in the world, access and settings. Single doors, double doors, garage doors, barriers and sliding doors have matching presets. Select movable door objects; a static wall or decorative object cannot work as a door.
Click a door to select it, confirm the selection with Enter, or cancel to return to your draft. A double-door preset requires two selected doors. Existing doors can be edited under General, including their door type, automatic locking and interaction distance.
Choose access
| Method | What to configure |
|---|---|
| Jobs | One or more technical job names, a minimum rank or selected specific ranks, and optional on-duty requirement |
| PIN | A numeric code of 4–12 digits; players enter it using the keypad |
| Password | A text password; players use the compact password prompt |
| Items | Inventory item name, required quantity and whether to consume it |
| Players | A supported character/account identifier and optional display label |
| ACE | An existing ACE permission name; the editor includes a server.cfg example |
| Public | Anyone nearby can operate the door |
Multiple jobs are alternatives within the Jobs method. When combining different methods, Advanced settings lets you require any one method or every configured method. Separate access-hour rules are available for Job, PIN/password and Item access.
There is no owner-job assignment. The list shows the configured access rules. Assigning a job for access grants door access under those rules; it does not grant permission to edit the door.
Keep the code field blank when retaining a saved code. Changing between PIN and password, or changing the PIN length, requires a new code. Existing codes are not automatically converted to numeric PINs.
Access hours and ranks
Under Allowed jobs, choose Minimum rank to allow that rank and higher ones, or Specific ranks to allow only the ranks you select. A higher rank is not automatically allowed when using a specific list.
Under Access hours, add separate windows for job, PIN/password and item access. Leave a method without windows to make it available at any time. Select the weekdays on which each window starts, or enable All day for entire selected days.
A Monday window from 22:00 to 02:00 allows access on Monday night and Tuesday morning, ending at 02:00. The start is included and the end is excluded. At least one weekday must remain selected.
Leave Time zone empty to use the server's local time. Enter an IANA zone such as Europe/Berlin, America/New_York or UTC to use that zone instead. Daylight-saving changes follow the selected zone automatically; players' computer clocks are not used. An invalid zone cannot be saved.
These windows restrict the selected access method. They do not automatically close an already open door at the end of a window, and they do not add time restrictions to separate player or ACE grants. Use automatic locking for a delay after opening.
Allow forced entry
Open a door's Lockpick section and enable Allow lockpicking. Use Add method for each alternative, then select it under Configured methods. Each method has its own enable switch, tool and minigame settings. Players choose one alternative before starting; they do not have to complete every method in sequence.
The settings are grouped into Method, Tool, Minigame and Attempt. Enter the tool's inventory item name. The item must already exist in your inventory; selecting a method does not install an item pack.
| Available integration | Methods |
|---|---|
ox_lib | Shared difficulty or individually ordered rounds with presets, custom target areas, pointer speeds and key selection |
sky_crimesystem | Mechanical lockpick, six Heist hack variants, pressure drill, GTA vault drill, explosives, keycard and manual opening |
lation_ui | Configurable skill-check rounds |
ps_lib / legacy ps-ui | Circle, Maze, Thermite and Scrambler |
qb-minigames | Lockpick, Hacking and Skillbar |
bl_ui | CircleProgress and Progress |
rm_minigames | Angled, Timed and Multiple Lockpick |
Crime methods appear only while sky_crimesystem is running. Its GTA minigame implementations also currently run through Crime. Without Crime, the OX skill check remains available when ox_lib is running. A saved offline method stays in the editor so its settings are retained; it is unavailable for gameplay. Existing offline methods do not block unrelated edits to a door.
For OX skill check, enable Individual rounds to set up 1–32 rounds in order. Choose Easy, Medium, Hard or Custom for each round; use the arrows to change their order. Custom rounds let you adjust the target area in degrees and the pointer-speed multiplier. A larger area is easier; a larger speed multiplier is faster. Select 1–16 different letters or digits under Possible keys. OX chooses a key for each round, and the player must pass every round. Individual rounds replace the shared difficulty and round-count settings. Each forced-entry method and security level retains its own settings.
External libraries also appear only while their resource is running. Install the library separately and meet its own dependencies/licence requirements; Creator does not bundle it. Select the library, then choose its game in Variant. Only settings used by that game are shown. QBCore Lockpick uses the rounds value as allowed attempts. RAINMAD Timed Lockpick has a fixed speed.
Lation provides a programmatic skill-check cancellation. The included PS, QB, BL and RAINMAD adapters discard a cancelled door result but keep the library reserved until its original game really ends. Close those games with their own controls before starting another. Their visible game can remain open after the door-attempt deadline; a late success cannot open the door.
Start optional providers before Job Creator. Keep Creator and Crime on versions that include these integrations. You can also add a provider through the optional developer API.
| Setting | Effect |
|---|---|
| Tool amount | Items required for one attempt |
| Difficulty | Difficulty offered by the selected integration; the OX field explains its target area and pointer speed |
| Pins / rounds | Number of rounds for OX or the mechanical lockpick |
| Time limit | Maximum attempt time; an unfinished attempt is cancelled |
| Minimum attempt time | The tool action lasts at least this long, even if the minigame ends sooner; moving out of range or cancelling still ends the attempt |
| Break chance | Chance of losing the tool after a failed attempt |
| Attempt cooldown | Minimum wait before the same player can try again |
| Consume tool | Consume the configured quantity after a completed attempt |
| Detonation countdown | Separate delay after a charge is successfully planted |
Use the configured tool from your inventory while standing near the door. There is no forced-entry hotkey or direct target action. Normal door operation still uses E.
Only methods using that item are offered. One matching method starts directly; several matching methods open a choice before the attempt begins. Required quantities, consumption, break chance and the player-wide attempt cooldown still apply.
Create the configured tools in your inventory; Creator registers their usable actions while Doorlock is enabled. The inventory must close when an item is used. With ox_inventory/Qbox, use consume = 0 and close = true and remove old doorlock client events/exports from that item definition. Creator handles tool consumption itself. Use a dedicated tool name when another script already uses the same item. Custom server-side inventory callbacks can use the item integration API.
Aborted attempts reported as cancelled do not consume the tool. Some providers, including OX, report manual exit and failed play with the same false result; such an outcome follows the failed-attempt tool rules. A completed keycard/manual action is an opening action, not a skill-check puzzle.
Dispatch alarms
Under Lockpick → Alarm, enable the alarm and set a separate chance for each trigger:
| Trigger | When it can send an alarm |
|---|---|
| Attempt starts | A valid attempt has been accepted with its required tool |
| Attempt fails | A completed attempt fails; cancelled or rejected results do not count |
| Door forced open | The door has actually been unlocked by forced entry |
| Explosive planted | A charge has been accepted and its countdown has started |
0% disables a trigger; 100% alarms on every valid matching event, subject to the cooldown. The alarm ships disabled. Enabling it initially uses a 100% failed-attempt chance, 0% for the other triggers and a 120-second alarm cooldown.
The Alarm cooldown is shared by all players, methods and triggers at that door. For example, if an attempt-start alarm is sent, its failed-attempt alarm is suppressed until that door's alarm cooldown expires. An explosive's forced-open trigger happens after the countdown, only if the door actually unlocks.
Leave Recipient jobs empty to use the police jobs registered with Sky Jobs Base. To use a custom list, select its jobs and ensure the dispatch configuration covers them. One enabled dispatch center must cover every selected job. Dispatch center optionally selects that center by its configuration key; leave it empty for automatic selection. Priority 1 is highest and 5 is lowest.
Alarms create incidents through the existing Jobs Base dispatch system. A queued or uncertain dispatch outcome still uses the alarm cooldown and is not automatically sent again. Check server diagnostics if a center does not cover the recipients or dispatch is unavailable. Use Dispatch to turn incident submission on or off independently of phone alerts.
Employee phone alerts
Enable Phone alerts in the alarm section and add the jobs or organisations that should be notified. Each recipient rule has its own minimum grade and optional on-duty requirement. These recipients are separate from the door’s normal access rules and from dispatch recipients.
Enter the phone app identifier expected by your configured Sky Base phone integration. Messages is the initial value. Only currently online, matching members receive an attempt. Offline delivery and extra secondary-job matching are not provided here.
The optional screen fallback is used only when the phone integration explicitly rejects the notification. An uncertain result is not resent. Alarm chances and the shared door cooldown apply to both channels, including when dispatch is disabled.
Three security levels
Open a door’s Security section and enable installed security equipment. Choose who may install, upgrade, repair or remove equipment using explicit job/organisation, minimum-grade, duty or ACE rules. These management rights do not grant normal access to the door.
Configure all three levels. Each has its own installation item and amount, installation time, repair item and amount, repair time, forced-entry methods and alarm settings. Create the configured items in your inventory separately; Creator does not register inventory items automatically.
Near the door, an authorised member uses /doorsecurity to select an available action:
- Install level 1, then upgrade in order to levels 2 and 3.
- Repair damaged installed equipment using that level’s repair item.
- Remove equipment when removal is enabled. Removal does not refund items.
A successful forced entry damages installed equipment. The door stays unlocked and cannot be locked again until it is repaired. Repair restores intact equipment; normal E operation can then lock the door. A door without intact equipment uses its basic Lockpick profile. Installed level and damage survive a normal resource restart.
Installation and repair use your existing Sky Base progress integration. If that provider cannot cancel its visible progress, the door attempt is cancelled but another equipment action waits until the original progress callback finishes. An unconfirmed completion must not be repeated automatically.
Presentation and existing doors
Choose a lock-icon style, hide the icon if desired, and select separate lock/unlock sounds under Advanced settings. Sound previews play in the game.
Clone and teleport
Use the Clone door action beside a saved door to create a new draft with its settings. Select the new physical door or doors before saving. The original stays unchanged, and an already registered physical door cannot be duplicated. Enter a new PIN or password if the copy uses one. Installed security equipment and its damage state are not copied.
Use Teleport to door from the list or editor while on foot. You need Creator administration permission and must already be in the door's instance. The action waits for collision loading; it does not change your routing instance.
Share Doorlock packages
Open Community Hub → Doorlock to inspect reviewed packages and their location maps. To share a package, enter a name, select up to 100 saved doors, add a description and author, and submit it for staff review. Optional images use public HTTPS links.
Doors with a PIN/password, personal player grants or a non-default instance cannot be shared. Live lock state, installed security equipment and internal door IDs are excluded. A package contains saved settings, not an inventory of items or installed map assets.
Choose Use template, assign its job names to existing local jobs and load the preview. The mapping also applies to security management and alarm recipients. Review rank and duty requirements against your own jobs; they are preserved. Required maps, models, inventory items and optional minigame integrations must already exist. Keep Creator Doorlock disabled while importing, then inspect the imported rules before enabling it.
Package imports use the same saved progress and unchanged-door undo controls described below. An uncertain import must be checked before another attempt; it is never repeated automatically.
Migrate existing doors
- Back up your database and existing Doorlock resource. Keep Creator Doorlock disabled and save that setting. Stop other Doorlock providers before importing.
- Open Doorlock → Settings → Migrate, select
ox_doorlock,rcore_doorlockor Jaksamdoors_creator, and load the preview. Creator saves a source snapshot before any door is imported. Check the result for each door; incompatible entries are skipped. - Import the ready doors. Existing Creator doors and original provider rows are preserved. If automatic SQL setup is disabled, apply the updated package's
import.sqlbefore using migration. - After closing the window or restarting Creator, select the run under Saved imports and use Check saved status. This reads the actual saved doors. An unconfirmed import is not automatically repeated, and a door edited since import is marked changed.
Check imported doors compares the tracked doors with their confirmed import snapshots. It is a read-only inspection; it does not undo an import. Older doors imported before tracking was available remain existing references and are not claimed by a new run.
To undo a tracked import, keep Creator Doorlock disabled and other providers stopped, then use Check imported doors. Choose Undo doors and confirm the displayed count. Only unchanged doors newly created by the selected import are removed. Changed doors, pre-existing doors, original provider rows and the source backup are preserved.
If the response is lost, use Check saved status. Missing targets are marked removed; an unchanged target can be inspected again before confirming a new attempt. A changed target stays protected. Checking never repeats a removal automatically. Undo does not switch doorlock providers or automatically import those doors again.
Source snapshots contain original settings, including any saved passcodes. Keep database backups private. The snapshot covers the imported source rows, not unrelated provider configuration, scripts or custom audio files. The supported source limit is 2000 physical door rows; unsupported access or presentation settings remain explicitly blocked.
For Rcore and Jaksam, you can explicitly choose Import without vendor forced-entry features and Replace vendor sounds with SKY defaults. These choices change only the target settings; source data stays intact. Without a choice, unsupported forced-entry settings or sounds block the affected entry. This does not convert vendor minigames, reader props or audio assets.
The supported Rcore format is based on 1.17.4: ordinary doors and compatible reciprocal pairs with job, identifier or PIN access. Gates/vault movement, attached reader props, metadata-bound keys/cards, gangs and unclear mixed access rules remain blocked.
The Jaksam format is based on 5.11.6: standalone doors with one verified job, item, identifier or credential access method. Job minimum/exact ranks and item consumption are retained. Building inheritance, sliding/vault movement, scheduled state changes, gangs and unclear combined rules remain blocked. Review these entries manually instead of assuming full parity with the original system. Unknown schemas and malformed rules cannot be imported.
Check the imported access rules before enabling Creator. Existing third-party OX calls can use the separate, optional OX compatibility setting.
Use the Doorlock API to connect your own inventory, target, alarm or other resource.