Skip to main content

Installation

1

Download

Get the latest release from our Tebex store and download it from your Keymaster
2

Extract

Extract the spooni_propPlacer folder to your server’s resources directory
3

Configure dependencies

Ensure required dependencies are properly configured in your server.cfg
4

Start order

Add ensure spooni_propPlacer to your server.cfg after dependencies

Dependencies

  • oxmysql: Database system for persistent storage
  • Framework: VORP Core (vorp_core, vorp_inventory) or RSG Core (rsg-core)
The SQL table is automatically created on first resource start.

Configuration

The script is configured through the config/config.lua file. Here are the main configuration options:

Streaming settings

Removal settings

Limits configuration

Placeable items

Define which items can be placed as props:

Gizmo configuration

Settings for the placement gizmo (used by gs_gizmo if available):

Database structure

Props are persisted in the prop_placer table with the following structure:
The table is automatically created on first resource start. No manual database setup required.

Gizmo integration

The script automatically integrates with gs_gizmo when available:
When gs_gizmo is running, the script provides a polished placement experience with advanced controls and visual feedback.

Gizmo features

  • Intuitive controls: Mouse and keyboard controls for precise placement
  • Visual feedback: Real-time preview with proper lighting and shadows
  • Distance limits: Configurable placement and camera distance limits
  • Smooth movement: Adjustable movement speed for fine-tuning

Fallback mode

When gs_gizmo is not available, the script falls back to a simpler placement system:
  • Translucent ghost: Visual preview of the prop
  • Basic controls: Simple movement and rotation controls
  • Functional placement: All core features remain available
While the fallback mode works well, using gs_gizmo provides a significantly better user experience.

Performance optimization

The script is optimized for performance with several key features:
  • Client-side streaming: Props only load when players are nearby
  • Configurable radii: Adjust streaming and despawn distances based on your server needs
  • Entity limits: Prevent excessive prop placement with per-player and per-item limits
  • Safe restarts: Automatic cleanup prevents duplicate entities after restarts

Performance tips

  • Stream radius: Keep Config.StreamRadius reasonable (100-150 units)
  • Check interval: Increase Config.StreamCheckIntervalMs for less frequent checks
  • Item limits: Set appropriate maxPerPlayer values for each placeable item
  • Global limits: Use Config.MaxItemsPerPlayer to prevent excessive placement

Troubleshooting

Ensure Config.Placeables[...].item exactly matches your inventory item name. Confirm your framework inventory system is running and supports getItemCount/subItem functions.
Double-check model names are valid and loadable on RedM. Verify the prop model exists in your server’s stream files.
Ensure the resource is not force-stopped mid-logic. The script automatically triggers client cleanup on stop/restart to prevent duplicates.
Reduce the streaming radius, increase check intervals, lower placement limits, and ensure you’re not exceeding server entity limits.
Verify gs_gizmo is properly installed and started before spooni_propPlacer. Check that the resource is running without errors.

Framework integration

The script includes built-in support for multiple frameworks:

Support

If you encounter issues or need assistance:

Discord support

Join our Discord community for support and updates.

Documentation

Docs home - installation basics and links to every script.