Skip to content

Releases: uz-scripts/uz_AutoShot

v2.1.0

Choose a tag to compare

@uzscript uzscript released this 29 Apr 08:32

The HTTP server is gone. Captures now travel as native FiveM latent events, finish faster, and run on hosts that block inbound ports.

Architecture change

The bundled Node.js HTTP listener on 127.0.0.1:3959 has been removed. Capture uploads now use TriggerLatentServerEvent and land on an onNet handler. The script no longer binds a TCP port, so it runson hosts that block
inbound ports (locked-down VPS, Docker, shared panels) without any firewall configuration.

Performance

  • Capture loops finish faster. The client used to wait for each HTTP upload to return before moving to the next frame. Now it fires a latent event and continues immediately, while the server processesthe queue in
    parallel. A full clothing batch that took several minutes before runs through quicker on the same hardware.
  • Idle resmon cost down from 0.01ms to under 0.001ms. The input thread used to poll every frame; it now sleeps when no capture, preview, or wardrobe is open.
  • No more multipart parsing on the server. Captures decode directly from a base64 payload, skipping the chunked body and boundary handling that the HTTP path required.

New Features

  • Configurable head chroma mask: Customize.HeadMask is now a list of spheres, each with its own offset, size, and optional rotation. Stack multiple shapes to mask head, jaw, and neck independentlywithout one big sphere
    clipping clothing.
  • Latent throttle config: Customize.LatentRate (default 8 MB/s) controls the upload throttle for captures. Raise it for 4K source frames if the upload queue starts to lag.
  • Server-side ACE check: when Customize.AceRestricted = true, the server rejects capture and bucket events from players who lack command.shotmaker. Closes the gap where the slash command was gatedbut the underlying
    events were not.

Fixes

  • Unsaved captures flipping 180° from the preview. The unsaved branch was using preset.defaultAngleH instead of the current orbit state and rotating the ped through ReapplyRotation, producing animage that looked
    nothing like what the user just framed. The unsaved branch now reads the current orbit state and skips the ped rotation on presets that already set defaultAngleH.
  • Players falling through the map after capture or wardrobe closes. RestoreFullAppearance now pre-streams collision around the original coords and waits for HasCollisionLoadedAroundEntity beforeunfreezing the ped.
  • attempt to compare number with nil from CreateCaptureCamera. Orbit locals (orbitDist, orbitAngleH, others) are declared at the top of the file so functions defined earlier can read them.

Breaking Changes

  • exports['uz_AutoShot']:getManifestURL() removed.
  • exports['uz_AutoShot']:getServerPort() removed.
  • Customize.BackendURL removed from Customize.lua.
  • All GET /api/* HTTP routes removed (/api/manifest, /api/exists, /api/stats).

If you were only using the cfx-nui photo URL exports (getPhotoURL, getVehiclePhotoURL, getObjectPhotoURL, getShotsBaseURL, getPhotoFormat), nothing changes for you. These are unchanged.

v2.0.0

Choose a tag to compare

@uzscript uzscript released this 04 Apr 09:44

New Features

  • Vehicle Capture: auto-detects every loaded vehicle model, groups by class, with primary/secondary color picker.
    Separate green screen and studio lighting sized for vehicles.
  • Object Capture: 30+ configurable world props (furniture, electronics, food, weapons, etc.). Add custom props in
    Customize.lua or use /shotprop <model> for one-off captures.
  • Appearance Overlays: 12 head overlay categories (facial hair, eyebrows, makeup, blemishes, lipstick, chest hair,
    and more) with correct color application per type.
  • Quick Capture Commands: /shotcar <model> and /shotprop <model> for capturing a single vehicle or object
    without opening the full UI.
  • Tabbed UI: four category tabs (Clothing, Appearance, Vehicles, Objects) with accordion group navigation.
  • Vehicle Color Picker: select primary and secondary colors from 18 presets before capturing.

Improvements

  • Orbit Camera: completely redesigned with roll (RMB), height (W/S), and FOV (Q/E) controls. Save angles per
    category with C, reset with R.
  • Head-Hide System: chroma-key sphere hides the head during body-only captures for cleaner background removal.
  • Camera Presets: expanded from 11 to 18 presets with per-category angle defaults.
  • Green Screen: separate screen dimensions for peds, vehicles, and objects. Default size increased for better
    coverage.
  • Configuration: Customize.lua expanded with overlay categories, vehicle settings, object list, and per-type
    studio lighting.
  • New Exports: getVehiclePhotoURL() and getObjectPhotoURL() for other scripts to consume vehicle and object
    photos.
  • Server: manifest now includes vehicle, object, and overlay types with proper filtering.
  • Documentation: production-ready README with camera controls, troubleshooting, and full API reference.

Breaking Changes

  • Camera preset names changed (e.g. headhair, torsotops). If you customized Customize.CameraPresets,
    update the keys.
  • Customize.Categories now requires visibleComponents field. See the updated Customize.lua for the new format.

Screenshots

Sample Outputs

clothing-1 clothing-2 clothing-3 clothing-4 clothing-5 clothing-6 clothing-7 clothing-8 clothing-9 clothing-10 clothing-11 clothing-12 clothing-13 object vehicle-1 vehicle-2 vehicle-3 vehicle-4 vehicle-5 vehicle-6 vehicle-7 clothing 14

UI

wardrobe

capture-studio

capture-preview

v1.1.2

Choose a tag to compare

@uzscript uzscript released this 30 Mar 00:29

What's new

cfx-nui photo delivery - Photos are now served through FiveM's native cfx-nui protocol instead of a local HTTP server. No port forwarding needed, works on VPS out of the box.

ACE permission system - Commands (/shotmaker, /wardrobe) now support FiveM's built-in ACE permissions. Restrict access to specific licenses, Steam IDs, or admin groups via server.cfg.

Changes

  • Removed /shots/ static file serving from Node.js server (upload & API endpoints remain)
  • Added shots/**/* to fxmanifest.lua files block for native NUI serving
  • Updated all exports (getPhotoURL, getShotsBaseURL) to return cfx-nui URLs
  • Added Customize.AceRestricted config option (default: false)

Note

After generating new photos, restart the resource (ensure uz_AutoShot) so FiveM indexes the new files.

v1.1.0

Choose a tag to compare

@uzscript uzscript released this 28 Mar 16:02

What's new

Output dimensions now workScreenshotWidth and ScreenshotHeight were defined in config but never applied. Screenshots are now resized to your configured dimensions.

Magenta chroma key — Use Customize.ChromaKeyColor = 'magenta' when clothing contains green.

Better edge quality — Soft threshold, despill, and two-pass alpha feather for clean edges.

Sharper thumbnails — Area-average downscaling + post-resize sharpen.

Preview crop overlay — Letterbox bars show the final framing before capture.

Green or Magenta Before → After

v1.0.0

Choose a tag to compare

@uzscript uzscript released this 25 Mar 15:08

First public release of uz_AutoShot