Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local Players = game:GetService("Players")
- local RunService = game:GetService("RunService")
- local player = Players.LocalPlayer
- local character = player.Character or player.CharacterAdded:Wait()
- local function setupCharacter(char)
- -- Desactivar colisión con otros jugadores
- local function updateCollision()
- for _, otherPlayer in ipairs(Players:GetPlayers()) do
- if otherPlayer ~= player and otherPlayer.Character then
- local otherHumanoidRootPart = otherPlayer.Character:FindFirstChild("HumanoidRootPart")
- if otherHumanoidRootPart then
- otherHumanoidRootPart.CanCollide = false
- end
- end
- end
- end
- -- Prevenir caídas
- local function preventFalling()
- local humanoid = char:FindFirstChild("Humanoid")
- if humanoid then
- humanoid.PlatformStand = false
- humanoid:SetStateEnabled(Enum.HumanoidStateType.FallingDown, false)
- humanoid:SetStateEnabled(Enum.HumanoidStateType.Ragdoll, false)
- end
- local humanoidRootPart = char:FindFirstChild("HumanoidRootPart")
- if humanoidRootPart then
- humanoidRootPart.CanCollide = true
- if humanoidRootPart.Position.Y < 0 then
- humanoidRootPart.CFrame = CFrame.new(humanoidRootPart.Position.X, 0, humanoidRootPart.Position.Z)
- end
- end
- end
- RunService.Heartbeat:Connect(function()
- updateCollision()
- preventFalling()
- end)
- end
- setupCharacter(character)
- player.CharacterAdded:Connect(function(newCharacter)
- character = newCharacter
- setupCharacter(character)
- end)
- print("Script de no colisión y anti-caída activado")
- _G.KEY = "q"
- _G.PART = "HumanoidRootPart"
- _G.PRED = 0.1
- _G.USE_PING = true
- _G.SMOOTH = 0.1
- _G.MIN_DISTANCE = 5
- _G.MAX_VELOCITY_ADJUSTMENT = 50 -- Limitar la velocidad máxima de predicción
- local Players = game:GetService("Players")
- local RunService = game:GetService("RunService")
- local camera = game.Workspace.CurrentCamera
- local localPlayer = Players.LocalPlayer
- local targetPlayer
- local isTracking = false
- local pingPrediction = _G.PRED
- local mouse = localPlayer:GetMouse()
- local markerPart = Instance.new("Part", game.Workspace)
- markerPart.Anchored = true
- markerPart.CanCollide = false
- markerPart.Transparency = 1 -- Invisible
- markerPart.Size = Vector3.new(0.2, 0.2, 0.2)
- -- Obtener ping y calcular predicción
- RunService.Heartbeat:Connect(function()
- if _G.USE_PING then
- local pingValue = tonumber(game:GetService("Stats").Network.ServerStatsItem["Data Ping"]:GetValueString():match("%d+"))
- pingPrediction = (pingValue / 1000) + _G.PRED
- else
- pingPrediction = _G.PRED
- end
- end)
- -- Anti-Antilocks
- RunService.Heartbeat:Connect(function()
- pcall(function()
- for _, player in ipairs(Players:GetPlayers()) do
- if player ~= localPlayer and player.Character and player.Character:FindFirstChild(_G.PART) then
- local hrp = player.Character[_G.PART]
- local velocityAdjustment = hrp.Velocity * pingPrediction
- -- Limitar velocidad máxima
- if velocityAdjustment.Magnitude > _G.MAX_VELOCITY_ADJUSTMENT then
- velocityAdjustment = velocityAdjustment.Unit * _G.MAX_VELOCITY_ADJUSTMENT
- end
- hrp.Velocity = hrp.Velocity + velocityAdjustment
- end
- end
- end)
- end)
- -- Predicción segura sin colisiones
- function getPredictedPosition(targetPart)
- local velocity = targetPart.Velocity
- local adjustedVelocity = velocity * pingPrediction
- if adjustedVelocity.Magnitude > _G.MAX_VELOCITY_ADJUSTMENT then
- adjustedVelocity = adjustedVelocity.Unit * _G.MAX_VELOCITY_ADJUSTMENT
- end
- return targetPart.Position + adjustedVelocity
- end
- -- Ajustar rotación de la cámara
- function adjustCameraRotation(predictedPosition)
- local cameraPosition = camera.CFrame.Position
- local directionToTarget = (predictedPosition - cameraPosition).Unit
- local targetCFrame = CFrame.new(cameraPosition, cameraPosition + directionToTarget)
- local distanceToTarget = (cameraPosition - predictedPosition).Magnitude
- if distanceToTarget < _G.MIN_DISTANCE then
- predictedPosition = cameraPosition + directionToTarget * _G.MIN_DISTANCE
- end
- camera.CFrame = camera.CFrame:Lerp(targetCFrame, _G.SMOOTH)
- end
- -- Actualizar marcador y cámara
- RunService.RenderStepped:Connect(function()
- if isTracking and targetPlayer and targetPlayer.Character then
- local humanoid = targetPlayer.Character:FindFirstChild("Humanoid")
- if not humanoid or humanoid.Health < 10 then
- isTracking = false
- targetPlayer = nil
- print("Seguimiento desactivado: objetivo muerto o con poca vida")
- return
- end
- local targetPart = targetPlayer.Character:FindFirstChild(_G.PART)
- if targetPart then
- local predictedPosition = getPredictedPosition(targetPart)
- markerPart.Position = predictedPosition
- adjustCameraRotation(predictedPosition)
- else
- isTracking = false
- targetPlayer = nil
- print("Seguimiento desactivado: parte objetivo no encontrada")
- end
- else
- markerPart.Position = Vector3.new(0, -1000, 0)
- end
- end)
- -- Alternar seguimiento con la tecla asignada
- mouse.KeyDown:Connect(function(key)
- if key:lower() == _G.KEY then
- if isTracking then
- isTracking = false
- targetPlayer = nil
- print("Seguimiento desactivado")
- else
- targetPlayer = getClosestPlayer()
- if targetPlayer then
- isTracking = true
- print("Siguiendo a:", targetPlayer.Name)
- else
- print("No se encontró ningún jugador cercano")
- end
- end
- end
- end)
- -- Obtener el jugador más cercano
- function getClosestPlayer()
- local closestPlayer = nil
- local shortestDistance = math.huge
- for _, player in ipairs(Players:GetPlayers()) do
- if player ~= localPlayer and player.Character and
- player.Character:FindFirstChild("Humanoid") and player.Character.Humanoid.Health > 10 and
- player.Character:FindFirstChild(_G.PART) then
- local targetPart = player.Character[_G.PART]
- local screenPoint = camera:WorldToViewportPoint(targetPart.Position)
- local distance = (Vector2.new(screenPoint.X, screenPoint.Y) - Vector2.new(mouse.X, mouse.Y)).Magnitude
- if distance < shortestDistance then
- closestPlayer = player
- shortestDistance = distance
- end
- end
- end
- return closestPlayer
- end
- -- Configuración inicial
- _G.PRED = 0.1
- _G.SMOOTH = 0.1
- _G.PART = "HumanoidRootPart"
- -- Variables locales
- local player = game.Players.LocalPlayer
- local playerGui = player:WaitForChild("PlayerGui")
- local randomActive = false
- local randomConnection
- local gui
- -- Lista de partes válidas en modelos R15
- local parts = {
- "HumanoidRootPart", "Head", "UpperTorso", "LowerTorso",
- "LeftUpperArm", "RightUpperArm", "LeftLowerArm", "RightLowerArm",
- "LeftHand", "RightHand", "LeftUpperLeg", "RightUpperLeg",
- "LeftLowerLeg", "RightLowerLeg", "LeftFoot", "RightFoot"
- }
- -- Crear GUI
- local function createGui()
- if gui then return gui end -- Evitar crear múltiples GUIs
- local screenGui = Instance.new("ScreenGui", playerGui)
- screenGui.Name = "CustomGUI"
- local frame = Instance.new("Frame", screenGui)
- frame.Size = UDim2.new(0.4, 0, 0.6, 0)
- frame.Position = UDim2.new(0.3, 0, 0.2, 0)
- frame.BackgroundColor3 = Color3.new(0.2, 0.2, 0.2)
- -- Botón de cierre
- local closeButton = Instance.new("TextButton", frame)
- closeButton.Size = UDim2.new(0, 30, 0, 30)
- closeButton.Position = UDim2.new(1, -35, 0, 5)
- closeButton.Text = "X"
- closeButton.BackgroundColor3 = Color3.new(1, 0, 0)
- closeButton.MouseButton1Click:Connect(function()
- frame.Visible = false
- end)
- -- Slider PRED
- local function createSlider(parent, label, varName, step, positionY)
- local container = Instance.new("Frame", parent)
- container.Size = UDim2.new(1, 0, 0, 50)
- container.Position = UDim2.new(0, 0, 0, positionY)
- container.BackgroundTransparency = 1
- local textLabel = Instance.new("TextLabel", container)
- textLabel.Size = UDim2.new(0.4, 0, 1, 0)
- textLabel.Text = label
- textLabel.TextColor3 = Color3.new(1, 1, 1)
- textLabel.BackgroundTransparency = 1
- local minusButton = Instance.new("TextButton", container)
- minusButton.Size = UDim2.new(0, 50, 0, 50)
- minusButton.Position = UDim2.new(0.4, 0, 0, 0)
- minusButton.Text = "-"
- minusButton.MouseButton1Click:Connect(function()
- _G[varName] = math.max(0, _G[varName] - step)
- valueLabel.Text = string.format("%.2f", _G[varName])
- end)
- local valueLabel = Instance.new("TextLabel", container)
- valueLabel.Size = UDim2.new(0.2, 0, 1, 0)
- valueLabel.Position = UDim2.new(0.5, 0, 0, 0)
- valueLabel.Text = string.format("%.2f", _G[varName])
- valueLabel.TextColor3 = Color3.new(1, 1, 1)
- valueLabel.BackgroundTransparency = 1
- local plusButton = Instance.new("TextButton", container)
- plusButton.Size = UDim2.new(0, 50, 0, 50)
- plusButton.Position = UDim2.new(0.7, 0, 0, 0)
- plusButton.Text = "+"
- plusButton.MouseButton1Click:Connect(function()
- _G[varName] = _G[varName] + step
- valueLabel.Text = string.format("%.2f", _G[varName])
- end)
- return container
- end
- createSlider(frame, "PRED", "PRED", 0.01, 50)
- createSlider(frame, "SMOOTH", "SMOOTH", 0.1, 110)
- return screenGui
- end
- -- Mostrar/Ocultar GUI con chat
- local function setupChatToggle()
- player.Chatted:Connect(function(msg)
- if msg:lower() == "x" then
- if not gui then
- gui = createGui()
- end
- gui.Enabled = not gui.Enabled
- end
- end)
- end
- -- Asegurar visibilidad de GUI tras la muerte
- player.CharacterAdded:Connect(function()
- if gui then
- gui.Enabled = true
- end
- setupChatToggle() -- Reasignar evento de chat
- end)
- -- Inicialización
- gui = createGui()
- setupChatToggle()
- print("Script cargado exitosamente")
- -- Crear corutinas para ambos scripts
- local script1 = coroutine.create(function()
- loadstring(game:HttpGet("https://raw.githubusercontent.com/scripthubekitten/qtoolv3/main/qtoolv3", true))()
- end)
- local script2 = coroutine.create(function()
- loadstring(game:HttpGet("https://raw.githubusercontent.com/Topcoldgaming/loadstring-scritps-/main/Encoded%20FAKE%20macro%20script"))()
- end)
- -- Ejecutar ambas corutinas
- coroutine.resume(script1)
- coroutine.resume(script2)
- local player = game.Players.LocalPlayer
- local function onCharacterAdded(character)
- loadstring(game:HttpGet("https://raw.githubusercontent.com/DHBCommunity/DHBOfficialScript/main/macromobbyballigusapo"))()
- end
- -- Conectar el evento al reaparecer
- player.CharacterAdded:Connect(onCharacterAdded)
- -- Ejecutar el código también si el personaje ya existe al iniciar el script
- if player.Character then
- onCharacterAdded(player.Character)
- end
- loadstring(game:HttpGet("https://raw.githubusercontent.com/DHBCommunity/DHBOfficialScript/main/macromobbyballigusapo"))()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement