Funcional
Basic Script
Código del script
Lua
local p = game:GetService("Players")
local ws = game:GetService("Workspace")
local vim = game:GetService("VirtualInputManager")
local uis = game:GetService("UserInputService")
local rs = game:GetService("RunService")
local lp = p.LocalPlayer
local gui = Instance.new("ScreenGui")
gui.Name = "ChulFarm"
gui.ResetOnSpawn = false
if lp.PlayerGui:FindFirstChild("ChulFarm") then
lp.PlayerGui:FindFirstChild("ChulFarm"):Destroy()
end
gui.Parent = lp.PlayerGui
local function drag(btn)
local dragging = false
local dragStart = nil
local btnStart = nil
btn.MouseButton1Down:Connect(function()
dragging = true
dragStart = uis:GetMouseLocation()
btnStart = btn.Position
end)
uis.InputChanged:Connect(function(input)
if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
local delta = input.Position - dragStart
btn.Position = UDim2.new(btnStart.X.Scale, btnStart.X.Offset + delta.X, btnStart.Y.Scale, btnStart.Y.Offset + delta.Y)
end
end)
uis.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = false
end
end)
end
local farmBtn = Instance.new("TextButton")
farmBtn.Size = UDim2.new(0, 80, 0, 30)
farmBtn.Position = UDim2.new(0.02, 0, 0.80, 0)
farmBtn.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
farmBtn.Text = "Temp V"
farmBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
farmBtn.TextSize = 12
farmBtn.Font = Enum.Font.SourceSansBold
farmBtn.Parent = gui
Instance.new("UICorner").Parent = farmBtn
drag(farmBtn)
local espBtn = Instance.new("TextButton")
espBtn.Size = UDim2.new(0, 80, 0, 30)
espBtn.Position = UDim2.new(0.02, 0, 0.87, 0)
espBtn.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
espBtn.Text = "ESP: ON"
espBtn.TextColor3 = Color3.fromRGB(0, 255, 0)
espBtn.TextSize = 12
espBtn.Font = Enum.Font.SourceSansBold
espBtn.Parent = gui
Instance.new("UICorner").Parent = espBtn
drag(espBtn)
local playerESP = {}
local tempVESP = {}
local espEnabled = true
local function createPlayerESP(character)
local highlight = Instance.new("Highlight")
highlight.FillTransparency = 1
highlight.OutlineTransparency = 0.2
highlight.OutlineColor = Color3.fromRGB(173, 216, 230)
highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop
highlight.Enabled = espEnabled
highlight.Parent = character
local conn
conn = rs.RenderStepped:Connect(function()
if not character or not character.Parent then
if highlight then highlight:Destroy() end
if conn then conn:Disconnect() end
end
end)
return {highlight = highlight, conn = conn}
end
local function createTempVESP(part)
local box = Instance.new("SelectionBox")
box.Adornee = part
box.Color3 = Color3.fromRGB(0, 255, 0)
box.LineThickness = 0.08
box.Transparency = 0.2
box.Visible = espEnabled
box.Parent = part
local bill = Instance.new("BillboardGui")
bill.Size = UDim2.new(0, 50, 0, 15)
bill.StudsOffset = Vector3.new(0, 1.5, 0)
bill.AlwaysOnTop = true
bill.Enabled = espEnabled
bill.Parent = part
local label = Instance.new("TextLabel")
label.Size = UDim2.new(1, 0, 1, 0)
label.BackgroundTransparency = 1
label.TextColor3 = Color3.fromRGB(0, 255, 0)
label.TextStrokeTransparency = 0.2
label.TextStrokeColor3 = Color3.fromRGB(0, 0, 0)
label.TextScaled = true
label.Font = Enum.Font.GothamBold
label.Text = "V"
label.Parent = bill
local conn
conn = rs.RenderStepped:Connect(function()
if not part or not part.Parent then
box:Destroy()
bill:Destroy()
if conn then conn:Disconnect() end
end
end)
return {box = box, bill = bill, conn = conn}
end
local function updateTempV()
local folder = ws:FindFirstChild("_TempVPickups")
if not folder then return end
for _, obj in ipairs(folder:GetDescendants()) do
if obj:IsA("ProximityPrompt") and obj.Name == "TempVPickupPrompt" then
local parent = obj.Parent
if parent and parent:IsA("BasePart") and not tempVESP[parent] then
tempVESP[parent] = createTempVESP(parent)
end
end
end
for obj, data in pairs(tempVESP) do
if not obj or not obj.Parent then
if data.box then data.box:Destroy() end
if data.bill then data.bill:Destroy() end
if data.conn then data.conn:Disconnect() end
tempVESP[obj] = nil
end
end
end
local function addPlayerESP(player)
if player == lp then return end
if playerESP[player] then
local old = playerESP[player]
if old.highlight then old.highlight:Destroy() end
if old.conn then old.conn:Disconnect() end
playerESP[player] = nil
end
local char = player.Character
if char then
local esp = createPlayerESP(char)
if esp then playerESP[player] = esp end
end
end
local function updatePlayers()
for _, player in ipairs(p:GetPlayers()) do
if player ~= lp then addPlayerESP(player) end
end
for player, data in pairs(playerESP) do
if not player or not player.Parent then
if data.highlight then data.highlight:Destroy() end
if data.conn then data.conn:Disconnect() end
playerESP[player] = nil
end
end
end
local function toggleESP()
espEnabled = not espEnabled
for _, data in pairs(playerESP) do
if data.highlight then data.highlight.Enabled = espEnabled end
end
for _, data in pairs(tempVESP) do
if data.box then data.box.Visible = espEnabled end
if data.bill then data.bill.Enabled = espEnabled end
end
if espEnabled then
updatePlayers()
updateTempV()
end
espBtn.Text = espEnabled and "ESP: ON" or "ESP: OFF"
espBtn.TextColor3 = espEnabled and Color3.fromRGB(0, 255, 0) or Color3.fromRGB(255, 0, 0)
end
local function getClosestPrompt()
local char = lp.Character
if not char or not char:FindFirstChild("HumanoidRootPart") then return nil end
local hrp = char.HumanoidRootPart
local folder = ws:FindFirstChild("_TempVPickups")
if not folder then return nil end
local minDist = math.huge
local closest = nil
for _, obj in ipairs(folder:GetDescendants()) do
if obj:IsA("ProximityPrompt") and obj.Name == "TempVPickupPrompt" then
local parent = obj.Parent
if parent and parent:IsA("BasePart") then
local dist = (hrp.Position - parent.Position).Magnitude
if dist < minDist then
minDist = dist
closest = obj
end
end
end
end
return closest
end
local function activatePrompt(prompt)
prompt.HoldDuration = 0
local success = pcall(function()
fireproximityprompt(prompt, 1)
end)
if not success then
local key = Enum.KeyCode.E
pcall(function()
if prompt.KeyboardKeyCode then
key = prompt.KeyboardKeyCode
end
end)
vim:SendKeyEvent(true, key, false, game)
task.wait(0.05)
vim:SendKeyEvent(false, key, false, game)
end
end
local function onCharacterAdded(player, character)
task.wait(0.2)
if espEnabled and player ~= lp then
addPlayerESP(player)
end
end
for _, player in ipairs(p:GetPlayers()) do
if player ~= lp then
player.CharacterAdded:Connect(function(character)
onCharacterAdded(player, character)
end)
end
end
p.PlayerAdded:Connect(function(player)
if player ~= lp then
task.wait(0.5)
if espEnabled then addPlayerESP(player) end
player.CharacterAdded:Connect(function(character)
onCharacterAdded(player, character)
end)
end
end)
p.PlayerRemoving:Connect(function(player)
if playerESP[player] then
local data = playerESP[player]
if data.highlight then data.highlight:Destroy() end
if data.conn then data.conn:Disconnect() end
playerESP[player] = nil
end
end)
task.wait(0.5)
updatePlayers()
updateTempV()
spawn(function()
while true do
task.wait(2)
if espEnabled then
updatePlayers()
updateTempV()
end
end
end)
farmBtn.MouseButton1Click:Connect(function()
local char = lp.Character
local hrp = char and char:FindFirstChild("HumanoidRootPart")
if not hrp then
farmBtn.Text = "Wait"
task.wait(1)
farmBtn.Text = "Temp V"
return
end
local target = getClosestPrompt()
if target and target.Parent then
local part = target.Parent
local originalColor = part.Color or Color3.fromRGB(255, 255, 255)
part.Color = Color3.fromRGB(255, 200, 0)
local originalPos = hrp.CFrame
hrp.Velocity = Vector3.new(0, 0, 0)
hrp.CFrame = part.CFrame * CFrame.new(0, 3, 0)
task.wait(0.15)
activatePrompt(target)
task.wait(0.25)
hrp.Velocity = Vector3.new(0, 0, 0)
hrp.CFrame = originalPos
task.wait(0.1)
part.Color = originalColor
farmBtn.Text = "Got!"
task.wait(0.5)
farmBtn.Text = "Temp V"
else
farmBtn.Text = "No item"
task.wait(1)
farmBtn.Text = "Temp V"
end
end)
espBtn.MouseButton1Click:Connect(function()
toggleESP()
end)
print("idk")Comentarios (0)
Inicia sesión para unirte a la conversación
- Sé el primero en comentar.
Preguntas frecuentes
- ¿Cómo uso el script Basic Script?
- Copia el código de arriba, abre tu executor de Roblox, pega el código y presiona ejecutar mientras estés en el juego. Las funciones se activan instantáneamente una vez que el script se ejecuta.
- ¿El script Basic Script es gratuito?
- Sí. Este script es gratuito para copiar y usar. Si usa un sistema de claves, sigue el enlace «Obtener clave» para desbloquearlo sin costo.
- ¿Es seguro usar el script Basic Script?
- El código fuente completo se muestra en esta página para que puedas leer exactamente qué hace antes de ejecutarlo. Usa siempre un executor de confianza, y recuerda que usar scripts va en contra de los términos de servicio de Roblox — úsalos bajo tu propio riesgo.
- ¿Qué executor funciona con Basic Script?
- Este script funciona con la mayoría de los executores populares de Roblox. Consulta nuestra página de executores para encontrar un executor gratuito o de pago confiable para tu dispositivo.