Waypoint Placeables is a framework that provides a simple mechanism to create useable items that place interactable props into the world. Each item can be configured with default options for placing/picking up props and can easily be extended by providing a set of custom actions. The framework provides default options for placing items, picking up items, as well as configuring items to be a pushable prop. It is designed to be easy to use and highly customizable, allowing you to create a wide range of placeable and useable items from the selection of GTA props as well as custom props.
Players can use the placeable props in a variety of ways to enhance their RP scenarios. Some examples include: building a construction site scene, creating a campsite in the woods with tents, chairs and campfires, blocking off roads for a crime scene, placing items in the world to push around to increase the realism of a scene, and much more.
Overview:
Player uses the item and the item placement mode is triggered
A client side only (non-networked) prop is spawned and the player chooses where to place the prop
After confirming the placement, the prop is spawned in as a networked prop so that all clients can see it and the item is removed from the playerâs inventory
Players can interact with the prop using qb-target to view the available options
Players can place down multiple props to build a unique scene to enhance their RP scenarios
When the player is done, they can clean up the scene by picking up the props (this is a default option that comes with all of the items)
If an item is pushable and/or sitable, a player can stop interacting with the item by pressing âEâ (by default).
While a player is pushing an item, a thread will run to check if something (like walking through a door, stumble animation, etc) caused them to break out of the pushing animation and will stick them back in the animation
Performance
This script was written with performance in mind and has been tested with 100+ props in the world with no noticeable performance impact.
Resource monitor results:
Idle: 0.0ms
In item placement mode: 0.09ms - 0.1ms (primarily due to raycast natives and thread to capture keypresses)
Pushing an object: 0.2ms (thread checking that push animation is still active)
For the initial release, there are just under 100 props setup. The following categories of props are included: construction, camping, homeless/hobo, chairs, tables, beach, ramps, EMS/hospital, plus a handful of miscellanious props.
Great question, props do not persist through server restarts. This was an intentional decision I made, as I want this script used as a tool to create short term / temporary scenes per session.
At this time I do not have plans to make an ESX port. In the future I may add support for ESX through bridge functions, however this wonât be for some time as I currently do not have the bandwidth to validate ESX changes work end to end.
You are more than welcome to create a fork and port it to ESX however.
Users can now use Scroll wheel click to toggle the raycast detection mode between world only vs detect everything.
Previously the raycast detection mode was set to world only. When creating a prop scene, this made it annoying to place props on top of each other, as each one had to have its height adjusted from the ground.
With this new change, placing props on top of other objects is extremly quick and easy. Simple toggle into detect everything mode and look at the object you are trying to place the prop on. The prop will now move along the surface of the object you are looking at, rather than being stuck only to the ground.
By popular demand, I have added support for OX Lib. Enjoy!
Waypoint Placeables - v1.0.5
- OX support is now added for ox-inventory, ox-target, and ox-progressbar
- Added additional Config variables to provide more granular support for the various scripts that might be used
- Added missing image for the shoppingcart