Remote Control objects by chat gpt
Key RequiredUniversal

Remote Control objects by chat gpt

Universal ScriptCavalo_4443Cavalo_4443 856 views 142 executesUpdated Jan 2, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•268 lines (7990 chars)
-- REMOTE CONTROL GUI FINAL (FULL INTEGRATED)

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local player = Players.LocalPlayer

local selected
local active = false
local mode = "CAR"
local turn, throttle = 0,0
local pedalsCreated = false

local MAX_SIZE = Vector3.new(20,20,20) -- limite de tamanho do objeto

-- ================= SCREEN GUI =================
local gui = Instance.new("ScreenGui")
gui.Name = "RemoteGUI"
gui.ResetOnSpawn = false
gui.Parent = player:WaitForChild("PlayerGui")

-- ================= MAIN FRAME =================
local frame = Instance.new("Frame")
frame.Parent = gui
frame.Size = UDim2.new(0, 140, 0, 180)
frame.Position = UDim2.new(0.75,0,0.3,0)
frame.BackgroundColor3 = Color3.fromRGB(40,40,40)
frame.BorderSizePixel = 0
frame.Active = true
frame.ClipsDescendants = false

-- ===== TITLE =====
local title = Instance.new("TextLabel")
title.Parent = frame
title.Size = UDim2.new(1,0,0,25)
title.BackgroundColor3 = Color3.fromRGB(25,25,25)
title.Text = "REMOTE CONTROL"
title.TextColor3 = Color3.new(1,1,1)
title.TextScaled = true
title.Font = Enum.Font.SourceSansBold

-- ===== LAYOUT =====
local layout = Instance.new("UIListLayout")
layout.Parent = frame
layout.Padding = UDim.new(0,4)
layout.HorizontalAlignment = Enum.HorizontalAlignment.Center

-- ===== BUTTON CREATOR =====
local function createButton(text)
	local b = Instance.new("TextButton")
	b.Parent = frame
	b.Size = UDim2.new(0.8,0,0,26)
	b.BackgroundColor3 = Color3.fromRGB(70,70,70)
	b.Text = text
	b.TextScaled = true
	b.TextColor3 = Color3.new(1,1,1)
	b.Font = Enum.Font.SourceSans
	b.BorderSizePixel = 0
	b.AutoButtonColor = true
	return b
end

-- ===== MAIN BUTTONS =====
local btnSelect   = createButton("📌 SELECT")
local btnPedals   = createButton("🎮 PEDALS")
local btnMode     = createButton("🚗 CAR")
local btnActivate = createButton("▶ ACTIVATE")
local btnDelete   = createButton("❌ DELETE TARGET")

-- ================= DRAG GUI =================
local dragging, dragInput, dragStart, startPos
frame.InputBegan:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseButton1 then
		dragging = true
		dragStart = input.Position
		startPos = frame.Position
		input.Changed:Connect(function()
			if input.UserInputState == Enum.UserInputState.End then
				dragging = false
			end
		end)
	end
end)

frame.InputChanged:Connect(function(input)
	if input.UserInputType == Enum.UserInputType.MouseMovement then
		dragInput = input
	end
end)

RunService.RenderStepped:Connect(function()
	if dragging and dragInput then
		local delta = dragInput.Position - dragStart
		frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X,
								   startPos.Y.Scale, startPos.Y.Offset + delta.Y)
	end
end)

-- ================= SECONDARY GUI (OPEN/CLOSE) =================
local secondFrame = Instance.new("Frame")
secondFrame.Parent = gui
secondFrame.Size = UDim2.new(0,36,0,36)
secondFrame.Position = UDim2.new(0,10,0.3,0)
secondFrame.BackgroundTransparency = 0.5
secondFrame.BackgroundColor3 = Color3.fromRGB(30,30,30)

local btnToggle = Instance.new("TextButton")
btnToggle.Parent = secondFrame
btnToggle.Size = UDim2.new(1,0,1,0)
btnToggle.Text = "≡"
btnToggle.TextScaled = true
btnToggle.BackgroundTransparency = 1
btnToggle.TextColor3 = Color3.new(1,1,1)
btnToggle.BorderSizePixel = 0

btnToggle.MouseButton1Click:Connect(function()
	frame.Visible = not frame.Visible
end)

-- ================= HIGHLIGHT CENTER CROSSHAIR =================
local highlight = Instance.new("Highlight")
highlight.Parent = gui
highlight.FillColor = Color3.fromRGB(0,255,255)
highlight.OutlineColor = Color3.fromRGB(255,255,255)
highlight.Adornee = nil

RunService.RenderStepped:Connect(function()
	local camera = workspace.CurrentCamera
	local center = Vector2.new(camera.ViewportSize.X/2, camera.ViewportSize.Y/2)
	local unitRay = camera:ScreenPointToRay(center.X, center.Y)
	local ray = Ray.new(unitRay.Origin, unitRay.Direction*500)
	local part = workspace:FindPartOnRayWithIgnoreList(ray, {player.Character})
	highlight.Adornee = part
end)

-- ================= BUTTON FUNCTIONS =================
local function limitSize(obj)
	if obj:IsA("BasePart") then
		local size = obj.Size
		obj.Size = Vector3.new(
			math.min(size.X, MAX_SIZE.X),
			math.min(size.Y, MAX_SIZE.Y),
			math.min(size.Z, MAX_SIZE.Z)
		)
	end
end

btnSelect.MouseButton1Click:Connect(function()
	if highlight.Adornee then
		selected = highlight.Adornee
		limitSize(selected)
	end
end)

btnDelete.MouseButton1Click:Connect(function()
	selected = nil
	highlight.Adornee = nil
end)

-- ================= CREATE PEDALS =================
btnPedals.MouseButton1Click:Connect(function()
	if pedalsCreated then return end
	pedalsCreated = true

	local turnGui = Instance.new("Frame", gui)
	turnGui.Size = UDim2.new(0.15,0,0.2,0)
	turnGui.Position = UDim2.new(0.02,0,0.65,0)
	turnGui.BackgroundTransparency = 1

	local left = Instance.new("TextButton", turnGui)
	left.Size = UDim2.new(0.45,0,1,0)
	left.Text = "⬅"
	left.TextScaled = true
	left.BackgroundColor3 = Color3.fromRGB(60,60,60)
	left.TextColor3 = Color3.new(1,1,1)
	left.BorderSizePixel = 0

	local right = Instance.new("TextButton", turnGui)
	right.Size = UDim2.new(0.45,0,1,0)
	right.Position = UDim2.new(0.55,0,0,0)
	right.Text = "➡"
	right.TextScaled = true
	right.BackgroundColor3 = Color3.fromRGB(60,60,60)
	right.TextColor3 = Color3.new(1,1,1)
	right.BorderSizePixel = 0

	left.MouseButton1Down:Connect(function() turn = 1 end)
	left.MouseButton1Up:Connect(function() turn = 0 end)
	right.MouseButton1Down:Connect(function() turn = -1 end)
	right.MouseButton1Up:Connect(function() turn = 0 end)

	local throttleGui = Instance.new("Frame", gui)
	throttleGui.Size = UDim2.new(0.15,0,0.2,0)
	throttleGui.Position = UDim2.new(0.78,0,0.65,0)
	throttleGui.BackgroundTransparency = 1

	local accel = Instance.new("TextButton", throttleGui)
	accel.Size = UDim2.new(1,0,0.45,0)
	accel.Text = "⬆"
	accel.TextScaled = true
	accel.BackgroundColor3 = Color3.fromRGB(0,170,255)
	accel.TextColor3 = Color3.new(1,1,1)
	accel.BorderSizePixel = 0

	local brake = Instance.new("TextButton", throttleGui)
	brake.Size = UDim2.new(1,0,0.45,0)
	brake.Position = UDim2.new(0,0,0.55,0)
	brake.Text = "⬇"
	brake.TextScaled = true
	brake.BackgroundColor3 = Color3.fromRGB(255,0,0)
	brake.TextColor3 = Color3.new(1,1,1)
	brake.BorderSizePixel = 0

	accel.MouseButton1Down:Connect(function() throttle = 1 end)
	accel.MouseButton1Up:Connect(function() throttle = 0 end)
	brake.MouseButton1Down:Connect(function() throttle = -1 end)
	brake.MouseButton1Up:Connect(function() throttle = 0 end)
end)

-- ================= MODE TOGGLE =================
btnMode.MouseButton1Click:Connect(function()
	if mode == "CAR" then
		mode = "PLANE"
		btnMode.Text = "✈️ PLANE"
	else
		mode = "CAR"
		btnMode.Text = "🚗 CAR"
	end
end)

-- ================= ACTIVATE =================
local vel, gyro
local function activate()
	if not selected then return end
	vel = Instance.new("BodyVelocity", selected)
	vel.MaxForce = Vector3.new(1e5,1e5,1e5) -- velocidade ilimitada
	gyro = Instance.new("BodyGyro", selected)
	gyro.MaxTorque = Vector3.new(0,1e5,0)
	gyro.CFrame = selected.CFrame
	active = true
end

local function deactivate()
	active = false
	if vel then vel:Destroy() end
	if gyro then gyro:Destroy() end
end

btnActivate.MouseButton1Click:Connect(function()
	if active then
		deactivate()
		btnActivate.Text = "▶ ACTIVATE"
	else
		activate()
		btnActivate.Text = "⏹ DEACTIVATE"
	end
end)

-- ================= MOVEMENT =================
RunService.RenderStepped:Connect(function()
	if not active or not selected then return end
	if mode == "CAR" then
		vel.Velocity = selected.CFrame.LookVector * throttle * 1e5 -- ilimitado
		gyro.CFrame *= CFrame.Angles(0, math.rad(turn*2),0)
	else
		vel.Velocity = selected.CFrame.LookVector * math.max(throttle,0) * 1e5
		gyro.CFrame *= CFrame.Angles(0, math.rad(turn*1.5), math.rad(-turn*6))
	end
end)

Features & Information

Remote Control For anything
#Car#Plane#Remote Control

Community Comments (5)

Flower_boyFlower_boyJan 2, 2026

Has this been tested???

Replying to @Flower_boy
Cavalo_4443Cavalo_4443Jan 2, 2026

@Flower_boy sim, por mim e funciona, se conseguir, o modo "avião" faz ficar rápido mas não deixa ir Para trás

Flower_boyFlower_boyJan 2, 2026

Yea it does nothing

Cesus993939Cesus993939Jan 2, 2026

Jazzghost?

Replying to @Cesus993939
Cavalo_4443Cavalo_4443Jan 2, 2026

@Cesus993939 não pô, um cavalo kkkk

More Scripts for Universal Scripts