VoidInteract v2.0.0
Bring your builds to life.
Custom elevators, draggable props and connected interactions for Roblox Studio
Hi everyone!
VoidInteract 2.0.0 expands from individual interactions into connected systems. Build an elevator, give an object several named positions, create a button puzzle or let players pull a drawer themselves.
Use your own Parts, MeshParts, Models, buttons and switches. Set up movement and controls visually without writing scripts. You choose the shapes and layout. The plugin adds the behavior.
A custom five-floor elevator alongside moving props, a draggable drawer and a button puzzle.
Watch the 2.0.0 walkthrough
The walkthrough builds and configures the elevator, then covers motion routes, named states, player dragging, connected mechanisms, triggers and feedback. Construction sections are sped up.
Build an elevator around your design
Use your own cabin, door leaves, floor buttons and display. A round button, a square button or a control you model yourself can call a floor and visibly move when pressed.
- Place and name the stops using viewport handles.
- Connect cabin doors and the landing doors for each floor.
- Choose each button’s destination, moving piece and pressed position.
- Set indicator colors for active, waiting and unavailable controls.
- Add your own sounds and connect a TextLabel to show the floor, direction or status.
Requests wait in a queue, closing doors reopen when obstructed, and the cabin waits for its doors to close before travelling. Players can walk inside the moving cabin.
Choose the moving cap and its pressed position while keeping the housing fixed.
Go beyond a single start and end pose
Multi-step motion combines positions, rotations, timing and pauses into a route. Raise a display, rotate it into place and return it when needed.
Build and preview a route with several motion steps.
Multiple states gives each destination a name. An adjustable desk can have Seated, Standing and Presentation positions, with your own buttons selecting each one.
Connect custom controls to the positions you create.
Let players move objects directly
Create objects players can slide or rotate within a defined range. Players can pull a drawer open, stop halfway and push it closed using mouse, touch or gamepad.
One player controls a drag at a time. Releasing the object lets another player take over.
A player-controlled drawer with its cabinet kept separate from the moving geometry.
Connect mechanisms, puzzles and triggers
Activate saved mechanisms together or in sequence. A single control can move a display and raise a desk, or connect an existing door or light to a new system.
Choose a prompt, proximity, region, pressure plate, timer or another mechanism’s completion as the trigger. Add key, team or state conditions, or require buttons to be pressed in a particular order.
An ordered button puzzle opens the gate when the correct sequence is entered.
Give each interaction feedback
Animate custom buttons with Press or Toggle motion. Add your own sounds and use events to change a part’s color, material or transparency, a light’s properties, or text on a display.
Connect system events to your own lights, parts and displays.
Reuse and manage your setup
Save behavior templates, load them onto another model and reconnect its controls and references. Use Manage saved interactions to find and reopen your work.
The interface groups movement, buttons, access and feedback into focused sections. Preview the result before applying and use Undo or Redo while editing.
Optional scripting for developers
The features above are configured through the plugin interface. The server API is optional. It lets your own server scripts activate a saved system, for example after a quest is completed.
Apply an Elevator system first, then use a normal Script in ServerScriptService. This example requests its fifth configured floor:
local ServerScriptService = game:GetService("ServerScriptService")
local API = require(ServerScriptService.VoidInteractSystems.SystemAPI)
local cabin = workspace.MyCabin
local accepted, reason = API.activate(cabin, "5")
if not accepted then
warn("Elevator request declined:", reason)
end
Use the same API calls, but change the model path and action to match your place. MyCabin is an example name, and "5" is the floor’s position in your configured floor list. For a named-state system, the action can be its exact state name, such as "Standing".
The example does not create a system. Put the activation call inside the server event that should trigger it. If your integration receives requests from a client, validate them on the server before calling the API.
API examples and copyable code
Documentation
The documentation includes setup guides, screenshots, motion demonstrations and the complete walkthrough.
Before you start
- Use anchored moving assemblies and keep fixed frames and supports separate.
- A combined mesh must be separated if only part of it should move.
- Basic Hinge, Slide and Move & rotate still use two poses. Use Systems for multi-step routes, named states and elevators.
- Your experience needs permission to use the sounds you assign.
- Saved interactions run in your experience. Players do not need to own the plugin.
Get VoidInteract and support
Get VoidInteract on the Creator Store
Need help? Join VOID HUB on Discord and open a ticket from the support channel. Include your plugin version, what you tried and a screenshot or relevant Output error.
Tried it in your own build? I’d appreciate your honest feedback. A review on the Creator Store is welcome too.
Earlier release and tutorial
v1.0.0 | Interactive Doors, Lights & Moving Props
The original walkthrough covers the workshop interactions, a sliding gate, a rising display and a moving presentation arm. Open the section below for its guide and screenshots. Some controls have changed in 2.0.0.
v1.0.0: original guide and screenshots
Original release: v1.0.0.
VoidInteract is a Roblox Studio plugin for creating interactive doors, windows, drawers, lights and moving props. Set up the movement visually, connect controls, preview the result and apply it to your place.
Use your own Parts, MeshParts and Models, including buttons and switches you designed yourself. Version 1.0.0 also included optional starter assets. The Assets gallery was removed in 2.0.0, which starts with your own models.
Doors, a window, a chest, a drawer and a light in the example workshop.
Set the movement visually
- Hinge: position the pivot and set the opening angle for doors, windows and lids.
- Slide: set the direction and travel for drawers, panels and gates.
- Move & rotate: combine a change in position and orientation in one end pose.
- Light: switch PointLights, SpotLights and SurfaceLights on and off.
Place the hinge and adjust the opening angle using the viewport controls.
Drag the colored handles, use snapping for precise adjustments or hold Alt for free movement. Set the duration and easing, then preview before applying.
Set a destination and orientation for a prop with Move & rotate.
Connect your own buttons and switches
Link a separate control to a saved mechanism. A wall switch can control a lamp, a button can open a door, or a control you built can activate a moving display.
You can also animate the control itself with Press or Toggle motion, keeping the housing fixed while its cap, rocker or lever moves.
A separate wall switch linked to the lamp, with its own rocker motion.
Choose how players interact
Choose Minimal, White bar or Badge, then adjust colors, backgrounds, labels and hold progress. Configure keyboard and gamepad bindings, with touch interaction for mobile players.
Player-use settings include activation distance, hold duration, keycard or team access, auto-close and action sounds.
Three prompt styles with appearance and input controls.
Start with your own build
- Select the moving part or assembly, keeping the fixed frame separate.
- Load the selection and choose its behavior.
- Adjust the movement and preview it.
- Apply, then test the interaction in Play.
Original scope
Motion uses anchored assemblies with moving geometry separate from the fixed frame. The original movement tools use a start and end pose. Multi-step routes, named states and elevators were added in 2.0.0.
Saved interactions run in your experience. Players do not need to own the plugin.













