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 directory3
Configure dependencies
Ensure required dependencies are properly configured in your
server.cfg4
Start order
Add
ensure spooni_propPlacer to your server.cfg after dependenciesDependencies
Required dependencies
Required dependencies
- oxmysql: Database system for persistent storage
- Framework: VORP Core (
vorp_core,vorp_inventory) or RSG Core (rsg-core)
Optional dependencies
Optional dependencies
- gs_gizmo: Enhanced placement gizmo for better UX (recommended)
- See: gs_gizmo repository
Recommended start order
The SQL table is automatically created on first resource start.
Configuration
The script is configured through theconfig/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 bygs_gizmo if available):
Database structure
Props are persisted in theprop_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 withgs_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
Whengs_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.StreamRadiusreasonable (100-150 units) - Check interval: Increase
Config.StreamCheckIntervalMsfor less frequent checks - Item limits: Set appropriate
maxPerPlayervalues for each placeable item - Global limits: Use
Config.MaxItemsPerPlayerto prevent excessive placement
Troubleshooting
Item not being removed
Item not being removed
Ensure
Config.Placeables[...].item exactly matches your inventory item name. Confirm your framework inventory system is running and supports getItemCount/subItem functions.Props not spawning
Props not spawning
Double-check model names are valid and loadable on RedM. Verify the prop model exists in your server’s stream files.
Duplicates after restart
Duplicates after restart
Ensure the resource is not force-stopped mid-logic. The script automatically triggers client cleanup on stop/restart to prevent duplicates.
Performance issues
Performance issues
Reduce the streaming radius, increase check intervals, lower placement limits, and ensure you’re not exceeding server entity limits.
Gizmo not working
Gizmo not working
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.