Skip to main content

In-Vehicle Screen Settings

DUI screen prop — model, texture, resolution, default offsets, and required-to-use mode.

This section

In-Vehicle Screen Settings

lua
Config.Screen = {
enabled = true,
requiredToUse = false,

item = 'auto_screen',
legacyItem = 'carplay_screen',

propModel = 'mdigou_boombox_car_prop_02',
textureDict = 'mdigou_boombox_car_prop_02',
textureName = 'mdigou_screen_txd',

duiWidth = 1024,
duiHeight = 512,

defaultOffset = vector3(0.0, 0.0, 0.0),
defaultRotation = vector3(0.0, 0.0, 0.0),

jobs = {},
discordRoles = {},
}

Fields​

Core Settings​

FieldTypeDefaultDescription
enabledbooleantrueMaster toggle for the entire DUI screen feature
requiredToUsebooleanfalseIf true, players cannot open Auto without an installed screen on their current vehicle
itemstring'auto_screen'Inventory item used to install a screen
legacyItemstring'carplay_screen'Older item name, still accepted so existing installs keep working (false to disable)

Prop & Texture​

FieldTypeDefaultDescription
propModelstring'mdigou_boombox_car_prop_02'Prop model name (must be streamed)
textureDictstring'mdigou_boombox_car_prop_02'Texture dictionary name (typically same as prop)
textureNamestring'mdigou_screen_txd'Target texture inside the dictionary that gets replaced

The script uses CreateRuntimeTextureFromDuiHandle and AddReplaceTexture to swap the named texture with the live DUI render output.

DUI Resolution​

FieldTypeDefaultDescription
duiWidthnumber1024DUI render width (pixels)
duiHeightnumber512DUI render height (pixels)

Higher = sharper at distance, more GPU/VRAM. 1024 × 512 is the balanced default. For very high-quality screens (close-up cinematics) try 2048 × 1024. For lower-end servers, 512 × 256 works.

Default Spawn Position​

lua
defaultOffset = vector3(0.0, 0.0, 0.0)
defaultRotation = vector3(0.0, 0.0, 0.0)

Used as the starting position when a player first installs a screen on a new vehicle. After they fine-tune via the gizmo and confirm, the new offset/rotation is saved per-plate.

Permissions​

lua
jobs = {},
discordRoles = {},

Restrict who can install screens (e.g. only mechanics). See Permission System.

How requiredToUse Works​

lua
Config.Screen.requiredToUse = true

With this flag set, opening Auto (via command, key, or item) fails silently unless the current vehicle has an installed screen. Use cases:

  • RP servers where Auto is a paid mod / installed product
  • Mechanic shops sell + install the auto_screen item
  • Players need to invest in their car to use the tablet

Custom Props​

To use your own dashboard screen prop:

  1. Stream the prop and its texture dictionary in your resource (e.g. via stream/ folder or a separate streaming resource)
  2. Open the .ytd (texture dict) in OpenIV / CodeWalker and identify:
    • The dictionary filename (usually matches the prop name)
    • The texture name inside the dictionary you want to replace with the live UI
  3. Set:
lua
Config.Screen.propModel = 'your_prop_model'
Config.Screen.textureDict = 'your_texture_dict'
Config.Screen.textureName = 'your_texture_name'

Item Setup​

If you want screens to be tradeable items, add to your inventory:

ox_inventory​

lua
['auto_screen'] = {
label = 'Auto Screen',
weight = 500,
stack = false,
description = 'Install on your vehicle to enable Auto.',
},

qs-inventory / codem-inventory / others​

Add via your inventory's standard item registration. The item just needs to exist — the script's install UI is opened from inside the screen module, not via item use.

Module Toggle​

OptionDefaultDescription
Config.Screen.enabledtrueEnable the entire DUI screen feature