NullSect
Systems nominal

Scripts / tools · v1.0.0

Scenes

Aim a laser and place styled text on walls, floors or in the air.

  • Qbox
  • QBCore
  • ESX
$9.99

Features

  1. 01

    Laser placement

    A laser from your hand and a live ghost of your text where you look.

  2. 02

    Surface, 3D or facing you

    Flat on walls and floors like paint, standing in the air, or turning to whoever looks at it.

  3. 03

    17 local fonts, 7 backgrounds

    Graffiti, typewriter, neon, caution tape, sticky notes and more, Turkish letters included.

  4. 04

    Moderation and limits

    Blocked words, per-player and server-wide limits, ACE or job permissions, and admins see who placed a scene by aiming at it.

  5. 05

    Routing buckets

    Text placed inside an instance or apartment stays there. Nothing runs per frame when no scene is near.

Requirements

Frameworks
Qbox, QBCore, ESX
Requires
oxmysql
Works with
ox_lib
Version
1.0.0

Recent changes

Read the docs →

1.0.0

  • Routing buckets (Config.Scenes.separateBuckets, on by default): a scene belongs to the bucket it was placed in. Players only receive the scenes of their bucket and get the new set within about 2 seconds after their bucket changes. Scenes in another bucket cannot be moved from here, and /scenepurge only clears the admin's bucket. Database migration 2 adds the bucket column (existing scenes: bucket 0). See INSTALLATION "Updating from 0.x".
  • Blocked words (Config.Moderation.blockedWords): matched anywhere in the text, ignoring case and Turkish capitals. The editor refuses before sending; the server checks every create and edit.
  • Who placed it (Config.Features.OwnerInfo): admins aiming the laser at a scene see the owner's name, identifier and how long ago it was placed. The new scenes:info request answers admins only.

0.2.1

  • Performance: each scene is drawn once instead of twice (the game only shows one triangle side; tested in game), scenes behind the camera are skipped, atlas texture coordinates are cached.

0.2.0

  • Fix: pressing E in /scene did nothing and left the laser frozen. The client used os.time(), which does not exist in the FiveM client (attempt to index a nil value (global 'os')); the scene list sync failed the same way. The client now uses the cloud time.
  • New 3D mode (free): the text stands in the air in front of you, no wall needed, and stays where you put it, so you can walk around it. Wheel turns it, Ctrl + wheel tilts it forward / back, Alt + wheel moves it nearer / farther, Shift + wheel sizes it. It is a two-sided sign: from behind it still reads left to right. It stops in front of walls instead of going through them.
  • G now cycles surface -> 3D -> turns-to-viewer; the editor offers all enabled placements.
  • Config: Config.Features.FreeMode, Config.Laser.freeReach.

Related

Cart

Your cart is empty.