Skip to content

General Settings, Controls and Interactions

Change the command, key, work timeouts and world interaction sizes.

Edit the files inside the 0r-restaurant folder. Keep Lua strings, booleans and numbers in their original types. Restart the main resource during maintenance after a file change; a panel Save or Publish does not reload these files.

Open command and default key#

File: config/panel.lua.

Exact keyType / unitDefaultExample change
Config.panel.commandString, without slash'restaurant''foodpanel'
Config.panel.defaultMapperFiveM mapper string'keyboard'Keep keyboard for a keyboard binding
Config.panel.defaultKeyKey string'F7''F6'

After changing the command to foodpanel, restart main and test /foodpanel as an authorized player. A changed default key does not replace a player's saved FiveM keybind override. Check their Settings > Key Bindings > FiveM separately. Command or key changes grant no ACE permissions.

Target or TextUI#

Choose the interaction type in the restaurant profile, apply the form, Save draft, then Publish. Supported fixed points can use TextUI through ox_lib; Target needs a started target provider1. This is a per-restaurant saved setting, so it needs publication rather than a file restart.

Mobile Hotdog/Sandwich carts and Ice Cream vehicles still need target interactions. Ice Cream also needs vehicle keys. See Mobile Setup and Standard Providers.

Point dimensions and object reach#

File: config/kitchen.lua. All dimensions below are metres.

Exact keyDefaultEffect / example
Config.kitchen.pointZoneSizes.default{ x = 0.9, y = 0.9, z = 1.5 }Model-free interaction box; for example change x to 1.0
Config.kitchen.pointZoneSizes.pizza.place_dough{ x = 0.9, y = 0.9, z = 1.5 }Override for that point step
Config.kitchen.pointZoneSizes.hamburger.cook_patty{ x = 0.9, y = 0.9, z = 1.5 }Override for that point step
Config.kitchen.modelZoneSizing.scale2.0Multiplier on measured model bounds; example 1.8
Config.kitchen.modelZoneSizing.minimum{ x = 0.6, y = 0.6, z = 0.8 }Minimum model-backed box on each axis
Config.kitchen.modelZoneSizing.maximum{ x = 2.0, y = 2.0, z = 2.5 }Maximum model-backed box on each axis

Restart main and approach one published Point and one Object station. Check where the interaction appears. Larger boxes do not bypass the server's distance or staff checks. If an option appears but is denied, check the player's standing position and saved placement.

Inactivity and temporary work#

File: config/kitchen.lua.

Exact keyType / accepted unitDefaultExample
Config.kitchen.inactivityTimeoutSecondsNumber, seconds, 1–864006090
Config.kitchen.manualCollectionTimeoutSecondsNumber, seconds, 1–86400120180

The first setting limits idle recipe work. Accepted progress renews it; simply viewing work does not. The second limits how long a ready custom device batch can wait for collection. It is separate from the recipe's cooking duration.

Restart main after changing these values. Finish active preparation first: restarting clears unfinished work. See Shared Work for leaving, collection and expiry. Saved recipes and finished inventory products remain.

Map markers and visual distances#

The restaurant profile owns its blip state and position. Marker presentation defaults are in config/map_blips.lua. A blip does not place a station.

File: config/kitchen.lua.

Exact keyType / unitDefaultExample
Config.kitchen.publicObjectRenderDistancePositive number, metres50.060.0
Config.kitchen.stationObjectRenderDistancePositive number, metres50.060.0
Config.kitchen.stationObjectCleanupHysteresisNumber, metres, 0–100010.015.0

The first range concerns shared food scenes. The second controls local published station objects. An already visible station remains until it exceeds the spawn range plus the cleanup margin; zero removes that extra margin. These settings load on main restart and affect existing published stations without rewriting their locations.

Approach a placed station and walk away to check when it appears and disappears. Larger ranges show more objects at once. If a station remains missing when you are nearby, check its saved placement and publication.

World picker#

File: config/panel.lua. These change selection presentation/range, not already saved positions.

Exact keyType / unitDefaultExample
Config.panel.pointPicker.surfaceRangePositive number, metres from camera20.025.0
Config.panel.pointPicker.surfaceRangeToleranceNon-negative number, metres1.00.5
Config.panel.pointPicker.markerTypeInteger GTA marker type26Keep 26 to retain the direction arrow
Config.panel.pointPicker.markerScaleNumber, uniform scale0.220.3
Config.panel.pointPicker.markerZOffsetNumber, metres0.0Keep zero to show the saved surface height
Config.panel.pointPicker.markerHeadingOffsetNumber, degrees0.0Keep zero to show the saved heading

Restart main, reopen the world picker and inspect the marker. Accepting placement, applying the form, Save draft and Publish are still required to change a live station.

Debug and normal operation#

File: config/settings.lua.

Exact keyTypeDefaultExample / activation
Config.debugCommandsBoolean; only true enablestrueSet false for normal production, then restart main
Config.localeLanguage-code string'en'Set 'tr', then restart main; see Language
Config.authorization.manageACE capability string'0r-restaurant.manage'Keep this name unless you also change the ACE grant in server.cfg

Set Config.debugCommands to false when you do not need administrator diagnostic commands. Normal management remains available to authorized users. See Diagnostics before using a command that adds items or changes a restaurant.

Verification after a change#

Test the changed command/key, one fixed point and one object target. If you use mobile service, check it separately. Confirm the panel closes normally and read the first F8/server error. Record the file and resource restarted when asking for support.

Footnotes

  1. An installed framework, inventory or interaction system used by Restaurant. Read the definition. ↩