Sit

Sit lets players sit on supported chairs, benches, walls, steps, and ledges, or lie down on supported beds and furniture. Players can also sit on the ground. It works standalone, with optional targeting and proximity prompts.

{:links-list}

INSTALLATION

  1. Open the downloaded ZIP product file.
  2. Copy the complete BigDaddy-Sit folder into your server's resources folder. Use the resource folder containing fxmanifest.lua, not the outer source-project folder.
  3. Enter your product key from your Big Daddy Scripts account after key1= in settings.ini.
  4. Review the [presets] section and enable only the location groups that match the interiors installed on your server.
  5. Stop any other sitting resource that uses /sit, /lay, or the same get-up key bindings.
  6. Add the following to server.cfg, then start or restart the resource:
ensure BigDaddy-Sit

DO NOT RENAME THE FOLDER.

Keep the resource folder named BigDaddy-Sit and keep all supplied DLLs, JavaScript, data, and HTML files together.

{:is-danger}

No framework, database, inventory, or money system is required. If you use a target resource, start it before BigDaddy-Sit. Supported targets are detected in this order: ox_target, qb-target, then qtarget. Commands still work without a target resource.

CONFIGURATION

LICENSING AND GENERAL SETTINGS

SETTING DEFAULT DESCRIPTION
[licensing]
key1 Your product key Enter your Big Daddy Scripts product key.
[settings]
debug false General debug setting. Seat diagnostics are controlled separately under [diagnostics].
DesyncKey Supplied value Internal license synchronization setting. Leave unchanged.

INTERACTION AND MOVEMENT

SETTING DEFAULT DESCRIPTION
[interaction]
SearchDistance 2.0 Distance used to find nearby supported furniture and preset seats. Accepted range: 0.1 to 20.
ProximityPrompts false Shows nearby sit/lie prompts and registers the corresponding keyboard and controller bindings. Commands and targeting remain available when disabled.
PromptDistance 1.8 Distance used to find nearby seats for proximity prompts. Accepted range: 0.1 to 20.
[movement]
InstantEntry false Forces instant entry instead of the normal approach. Individual seats or animation profiles can still use instant entry when this is false.
InstantExit false Forces instant exit. Individual seats or animation profiles can still use instant exit when this is false.
ReturnAfterBlockedEntry false Returns to a saved starting position on get-up when sitting required a fallback teleport. Does not bypass reachability checks or apply to ground sitting.
MaximumTilt 20.0 Maximum allowed combined absolute X/Y rotation of furniture. Furniture tilted beyond this amount is rejected. Accepted range: 0 to 180.

DISPLAY AND TARGETING

SETTING DEFAULT DESCRIPTION
[display]
ShowExitPrompt true Shows the get-up prompt while seated or lying down.
ChatSuggestions true Adds chat suggestions for /sit and /lay.
DisableIdleCamera true Suppresses the idle camera while resting.
[targeting]
Enabled true Registers interactions with the first available supported target resource. Set to false to use commands and optional proximity prompts alone.
SelectAimedSeat true Uses the aimed position to choose a seat on furniture with multiple seats.
ZoneSprites true Enables zone sprites for preset locations when using ox_target.
SitIcon fas fa-chair Target icon for sitting.
LayIcon fas fa-bed Target icon for lying down.
SitLabel Sit Down Target option text for sitting.
LayLabel Lie Down Target option text for lying down.

KEYS

All settings below belong to [keys]. Sit and lie bindings are registered only when ProximityPrompts=true; get-up bindings are registered independently. Players can change registered bindings in FiveM settings. Changing a default in this file does not replace a player's saved binding.

SETTING DEFAULT DESCRIPTION
Sit E Keyboard default for sitting at a proximity prompt.
LieDown G Keyboard default for lying down at a proximity prompt.
StandUp X Keyboard default for getting up or canceling entry.
ControllerSit LLEFT_INDEX Controller input identifier for sitting.
ControllerLieDown LRIGHT_INDEX Controller input identifier for lying down.
ControllerStandUp RRIGHT_INDEX Controller input identifier for getting up or canceling entry.

INTEGRATION, DIAGNOSTICS, AND PERMISSIONS

SETTING DEFAULT DESCRIPTION
[integration]
RestEvents false Emits the local client resting event described below. Does not automatically reduce stress.
[diagnostics]
Enabled false Registers seat diagnostic commands and the diagnostic toggle key. Requires the configured ACE permission.
ShowTargetZones false Enables target-provider zone visualization for troubleshooting placement.
[permissions]
DebugAce command Server-checked ACE permission for diagnostic commands. Ordinary sitting and lying down do not require this permission.

LOCATION PRESETS

Each setting below belongs to [presets] and overrides the corresponding group's enabled value in data/locations.json.

ENABLE ONLY THE INTERIORS YOU USE.

Presets provide seat positions, not map interiors. Many Gabz groups are enabled in the supplied settings. Disable groups for interiors you do not have, and avoid enabling conflicting versions of the same interior.

{:is-warning}

SETTING DEFAULT LOCATION GROUP
mrpd false Mission Row Police Department
sandy_so false Sandy Shores sheriff's office
paleto_so false Paleto sheriff's office
vanilla_unicorn false Vanilla Unicorn
tequilala true Tequi-la-la
coroner true Coroner
tattoo_shops true Tattoo shops
trevors_trailer true Trevor's trailer
paleto_bank false Paleto bank
pacific_standard false Pacific Standard
pdm false Premium Deluxe Motorsport
lscustoms false Los Santos Customs
wall true Preset wall seats
steps true Preset step seats
ledge true Preset ledge seats
gabz_pillbox true Gabz Pillbox
gabz_mrpd true Gabz MRPD
gabz_sandy_so true Gabz Sandy Shores sheriff's office
gabz_diner true Gabz diner
gabz_pacific_standard_old false Gabz Pacific Standard, old version
gabz_pacific_standard true Gabz Pacific Standard
gabz_park_ranger true Gabz park ranger
gabz_records true Gabz records
gabz_tuners true Gabz tuners
gabz_paleto_so true Gabz Paleto sheriff's office
gabz_lamesa_pd true Gabz La Mesa police department
gabz_hayes true Gabz Hayes
gabz_import true Gabz import
gabz_prison true Gabz prison
gabz_pdm true Gabz Premium Deluxe Motorsport
gabz_harmony true Gabz Harmony
gabz_lscustoms true Gabz Los Santos Customs
gabz_pizzeria true Gabz pizzeria
gabz_haters true Gabz Haters
gabz_catcafe true Gabz cat cafe
gabz_vanilla_unicorn true Gabz Vanilla Unicorn
gabz_townhall true Gabz town hall
gabz_ottos true Gabz Otto's
gabz_paleto_bank true Gabz Paleto bank
gabz_el_burro_fire_station true Gabz El Burro fire station
gabz_davis_fire_station true Gabz Davis fire station
gabz_families true Gabz Families
gabz_ballas true Gabz Ballas
gabz_vagos true Gabz Vagos
gabz_triads true Gabz Triads
gabz_marabunta true Gabz Marabunta
gabz_aztecas true Gabz Aztecas
gabz_lostsc true Gabz Lost SC
gabz_bobcat true Gabz Bobcat
gabz_altruists true Gabz Altruists

HOW TO USE

COMMANDS AND CONTROLS

COMMAND / CONTROL ACTION
/sit Finds a nearby supported seat and sits down.
/sit ground Sits on the ground at your current position and heading.
/lay Finds nearby supported furniture for lying down.
/getup or /standup Gets up, or cancels an entry attempt.
X Default keyboard get-up/cancel binding.
E Default proximity-prompt sit binding when enabled.
G Default proximity-prompt lie-down binding when enabled.
Target options Select Sit Down or Lie Down on supported furniture or preset locations. Labels are configurable.

Walk close to a supported seat, then use the command, target option, or enabled proximity prompt. Your character normally approaches the selected position before sitting or lying down. Entry and exit behavior varies with the seat's animation profile.

Only models and preset positions defined in the resource are supported. /lay requires furniture with a lying-down definition; it does not make every chair into a bed. Occupied, obstructed, unreachable, or excessively tilted furniture may be rejected.

Ground sitting requires dry, solid ground. It is rejected while in a vehicle, dead, falling, airborne, ragdolling, in water, or attached to another entity. Use X, /getup, or /standup to stand again.

FRAMEWORKS AND OPTIONAL RESTING EVENT

Framework detection uses this priority: Qbox (qbx_core), QBCore (qb-core), ESX (es_extended), then standalone. Sitting itself does not require framework player data, jobs, inventory, or money.

With [integration] RestEvents=true, the resource emits this local client event approximately every 500 milliseconds after entry completes, while sitting or lying down:

BigDaddy-Sit:Resting(action, framework)

action is sit or lie. Framework identifiers are qbox, qbcore, esx, or standalone; unavailable can be reported when a detected framework's API cannot be accessed.

This hook does not change stress or grant any other effect by itself. A custom integration must handle the event. Any server-side rewards or effects must independently validate the player and request.

ADVANCED DATA CONFIGURATION

Back up the data folder before editing. Keep JSON formatting valid and restart the resource after changes.

FILE PURPOSE
data/models.json Supported furniture model hashes, sitting/lying definitions, relative seat offsets, and headings.
data/locations.json Named preset groups, absolute world seat positions, headings, and target zones. [presets] settings override group defaults.
data/animations.json Named sitting and lying animation/scenario profiles, approach rules, entry timeouts, and exit behavior.
data/localization.json Notifications, prompt text, chat descriptions, and keybinding descriptions. Preserve %s placeholders in prompt text.

Model seat coordinates are relative to the furniture. Preset location coordinates are absolute world positions. Seat points use x, y, and z for position and w for heading. A seat definition's type must match a profile in the corresponding sit or lay section of animations.json.

Profiles inherit missing values from their section's default profile. Explicit false values remain in effect. Global InstantEntry and InstantExit settings force those behaviors when enabled; disabling them leaves individual seat/profile rules in effect.

PROFILE SETTING DESCRIPTION
skipApproach Skips the normal approach task for that profile.
instantEntry Uses instant entry for the profile.
instantExit Uses instant exit for the profile.
entryTimeoutSeconds Timeout for each entry phase. Accepted range: 0.5 to 60 seconds.
playExitAnimation Plays the supported exit animation when leaving a lying-down action.
exitSide Lying exit direction: 0 follows camera direction, 1 uses the left exit animation, and 2 uses the right exit animation.

Custom sitting-animation offsets are world-relative; reclining-animation offsets are heading-relative. Test new definitions in game to check alignment and entry/exit clearance.

DIAGNOSTICS AND ACE PERMISSIONS

Enable [diagnostics] Enabled=true and grant the permission named by [permissions] DebugAce. The default permission can be granted in server.cfg with:

add_ace group.admin command allow

Change group.admin to the intended group or principal. To give seat diagnostics a separate permission, set DebugAce=bigdaddy.sit.debug and grant:

add_ace group.admin bigdaddy.sit.debug allow

See the ACE Permissions guide for group setup. These permissions restrict diagnostics; ordinary sitting and lying down remain available to players.

COMMAND ACTION
/sit:debug Toggles nearby seat diagnostics. Default diagnostic key: G.
/sit:getcenter <group> Prints a preset group's calculated center to the client console.
/sit:getfarthestdist <group> Prints the farthest preset entry's distance from the group's configured center, where available.
/sit:loadGroup <group> Enables a preset group for your current session.
/sit:unloadGroup <group> Disables a preset group for your current session.

Use a group name from [presets], such as gabz_mrpd. Session changes do not update settings.ini or affect other players. For persistent changes, edit [presets] and restart the resource.

The diagnostic toggle and the proximity lie-down binding both default to G. Rebind one in FiveM settings when using both features. Leave diagnostics disabled during normal play.

TROUBLESHOOTING

THE RESOURCE DOES NOT START OR COMMANDS DO NOTHING

  • Confirm the resource folder is named exactly BigDaddy-Sit and contains fxmanifest.lua.
  • Check your product key in [licensing] key1 and leave the supplied DesyncKey unchanged.
  • Check the server console and client F8 console for license, synchronization, or initialization errors. Gameplay starts only after successful license synchronization.
  • Stop other sitting resources that register the same commands or bindings.
  • If you edited JSON files, restore the backup or correct the reported data error, then restart the resource.

NO SEAT IS FOUND OR A LOCATION IS MISALIGNED

  • Move closer and try /sit or /lay again. The default search distance is 2.0 metres.
  • Confirm the model has the required sitting or lying definition, or enable the matching preset group.
  • Confirm your installed interior matches the enabled preset. Disable groups for absent or conflicting interiors.
  • Try an unoccupied seat with a clear approach. Tilt and obstruction checks may reject furniture.
  • Use /sit ground when no supported furniture is available.

TARGET OPTIONS OR PROXIMITY KEYS ARE MISSING

  • For target options, confirm [targeting] Enabled=true and start ox_target, qb-target, or qtarget. The first running supported provider is used.
  • Target providers that start later or restart are detected automatically. Check the client console if registration fails.
  • For proximity keys and prompts, set [interaction] ProximityPrompts=true and stand within PromptDistance of a supported seat.
  • Check the player's saved FiveM key bindings. INI values provide defaults and do not overwrite saved bindings.

RESTING DOES NOT REDUCE STRESS

Stress reduction is not automatic. RestEvents=true only enables the local client hook; your own integration must apply the intended effect.

DIAGNOSTIC COMMANDS ARE DENIED

Confirm [diagnostics] Enabled=true, grant the exact ACE named by DebugAce, and restart the resource after configuration changes. A valid product key does not grant diagnostic permission.