Zenith Sandbox Engine
Key Required

Zenith Sandbox Engine

Fling Things and PeopleKanschkovRobloxAcc1KanschkovRobloxAcc1 286 views 338 executesUpdated Jul 10, 2026
Unrated
00
Lua Script•3116 lines (101822 chars)
-- =============================================================
-- ZENITH SANDBOX ENGINE (MAXIMUM EDITION - CURVED PATH UPDATE)
-- =============================================================


-- GLOBAL BROADCAST SYSTEM
task.spawn(function()
    local maxAttempts = 10
    local attempt = 0
    while not game:IsLoaded() and attempt < maxAttempts do
        task.wait(1)
        attempt = attempt + 1
    end
    
    -- Services
    local textChatService = game:GetService("TextChatService")
    local replicatedStorage = game:GetService("ReplicatedStorage")
    
    -- Helper function to send messages to either Modern or Legacy chat
    local function sendChatMessage(message)
        -- Mode 1: TextChatService (Modern)
        if textChatService and textChatService.ChatVersion == Enum.ChatVersion.TextChatService then
            local generalChannel = textChatService:FindFirstChild("RBXGeneral", true)
            if generalChannel and generalChannel:IsA("TextChannel") then
                generalChannel:SendAsync(message)
            else
                local defaultChannels = textChatService:FindFirstChild("TextChannels")
                if defaultChannels then
                    local chan = defaultChannels:FindFirstChildOfClass("TextChannel")
                    if chan then chan:SendAsync(message) end
                end
            end
        end
        
        -- Mode 2: Legacy ChatService (Older)
        local defaultChatSystemChatEvents = replicatedStorage:FindFirstChild("DefaultChatSystemChatEvents")
        if defaultChatSystemChatEvents then
            local sayMessageRequest = defaultChatSystemChatEvents:FindFirstChild("SayMessageRequest")
            if sayMessageRequest and sayMessageRequest:IsA("RemoteEvent") then
                sayMessageRequest:FireServer(message, "All")
            end
        end
    end

    -- Expanded sequence of loading messages
    sendChatMessage("Zenith Sandbox Object Modder (BETA) v3.1 by Kanschkov. Have fun! :3")
    task.wait(1) -- First wait: 1 second
    
    sendChatMessage("Loading GUI...")
    task.wait(3) -- Second wait: 3 seconds
    
    sendChatMessage("Loading Features...")
    task.wait(0.7) -- Third wait: 0.7 seconds
    
    sendChatMessage("Done! have fun")
    task.wait(1.2)
    end)
    

local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))()

-- ------------------------------------------------------------
-- CORE ROBLOX SYSTEM SERVICES
-- ------------------------------------------------------------
local Workspace = game:GetService("Workspace")
local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local runServiceRef = game:GetService("RunService")
local lPlayer = Players.LocalPlayer or Players.PlayerAdded:Wait()
local mouse = lPlayer:GetMouse()
local camera = Workspace.CurrentCamera

-- ------------------------------------------------------------
-- GLOBAL CONFIGURATION REGISTERS
-- ------------------------------------------------------------
local currentGravityValue = 196.2
local negativeGravityValue = 0
local keepOriginalGravity = false

local northGravity = 0
local southGravity = 0
local eastGravity = 0
local westGravity = 0
local keepDirectionalOriginalGravity = false

-- SAFETY & LOGGING REGISTERS
local keybindsDisabled = false
local chatModeEnabled = false
local consoleModeEnabled = false
local lastChatSent = 0
local chatCooldown = 0.5 

-- ADVANCED OBJECT MODIFICATION STATE REGISTERS
local masterPhysicsScanActive = false
local currentBouncinessValue = 0.5
local currentFrictionValue = 0.5
local autoOwnershipActive = false
local currentAuraPattern = "None"
local bouncinessPickerMode = "Static"
local objectZeroGActive = false
local objectTransmuteMaterial = "Default"
local kineticPulseForce = 0
local kineticPulseDirection = "Outward"
local forcefullyUnanchorObjects = false
local freezeNearbyObjectsActive = false
local objectAffectedFilter = "All Dynamic Parts"
local objectTargetTransparency = 0
local continuousObjectDampening = 0
local environmentalScanRadius = 250
local enableOrbitSatellites = false

-- NEW OBJECT INTEGRATIONS
local objectVacuumActive = false
-- INTERNAL CONFIGURATION CONSTANTS
local SKELETON_BONES = {
	{"Head", "UpperTorso"}, {"UpperTorso", "LowerTorso"}, 
	{"UpperTorso", "LeftUpperArm"}, {"LeftUpperArm", "LeftLowerArm"}, {"LeftLowerArm", "LeftHand"},
	{"UpperTorso", "RightUpperArm"}, {"RightUpperArm", "RightLowerArm"}, {"RightLowerArm", "RightHand"},
	{"LowerTorso", "LeftUpperLeg"}, {"LeftUpperLeg", "LeftLowerLeg"}, {"LeftLowerLeg", "LeftFoot"},
	{"LowerTorso", "RightUpperLeg"}, {"RightUpperLeg", "RightLowerLeg"}, {"RightLowerLeg", "RightFoot"}
}
local explosiveCollisionsActive = false
local networkOwnershipClaimAuraActive = false

-- NEW PATHFINDER & PERSISTENT TELEMETRY REGISTERS
local objectPathfinderActive = false
local lastTrackedPart = nil

-- OBJECT MODIFICATION SLIDERS/TOGGLES
local objectCanCollideOverride = true
local enableCanCollideModification = false
local objectMasslessOverride = false
local enableMasslessModification = false
local continuousSpinSpeedX = 0
local continuousSpinSpeedY = 12
local continuousSpinSpeedZ = 0

-- CUSTOM CONFIGURATION REGISTERS
local objectVelocityMultiplier = 1.0
local continuousSpinActive = false
local antiGravityActive = false

-- BASIC FE MATRIX REGISTERS
local glitchJitterActive = false
local sizeFlickerActive = false
local timeBombActive = false
local timeBombDelay = 3.0

-- ADVANCED TELEKINESIS STATE VARIABLES
local tkActive = false
local tkTargetPart = nil
local tkTargetDistance = 30 
local tkConnection = nil
local currentRotation = CFrame.new()
local rotationKeyHeld = false
local lastMousePos = Vector2.new(mouse.X, mouse.Y)

-- Advanced Telekinesis Toggles
local tkSpinX = 0
local tkSpinY = 0
local tkSpinZ = 0
local tkWaveMotion = false
local tkWaveAmplitude = 5
local tkWaveSpeed = 5
local tkFlingOnRelease = false
local tkFlingForce = 500

-- VEHICLE CHAOS REGISTERS
local vehicleSpeedHackActive = false
local targetVehicleSpeedValue = 100
local vehicleMovementMode = "Hold"
local vehicleTurnSpeed = 4
local customVehicleGravity = 196.2
local vehicleJumpForce = 50
local vehicleMovingStates = {W = false, A = false, S = false, D = false}

-- NEW VEHICLE CONFIGURATIONS
local autoFlipMatrixActive = false
local infiniteTorqueActive = false
local vehicleRainbowActive = false

-- NEW VEHICLE VISUALS & DRIFT REGISTERS
local vehicleDriftModeActive = false
local vehicleStaticColorActive = false
local vehicleStaticColor = Color3.fromRGB(255, 255, 255)
local vehicleCustomImageActive = false
local vehicleCustomImageId = ""
local vehicleFlyMode = "Static"

-- VEHICLE FLY REGISTERS
local vehicleFlyActive = false
local vehicleFlySpeed = 100
local flyUpHeld = false
local flyDownHeld = false

-- PLAYER UTILITY REGISTERS
local customWalkSpeed = 16
local customJumpPower = 50
local enableCustomPlayerSpeed = false
local enableCustomPlayerJump = false
local playerFlyActive = false
local playerFlySpeed = 50
local infiniteJumpActive = false
local noclipActive = false
local thirdPersonActive = false

-- NEW PLAYER INTEGRATIONS
local invisibleSeatingActive = false
local clickTeleportActive = false

-- ADVANCED CHAOS REGISTERS
local objectTargetSizeMultiplier = 1.0
local sliderMultiplier = 1.0
local objectCustomDensityValue = 0.7
local overrideObjectDensityActive = false
local objectColorMode = "Static"
local objectStaticColor3 = Color3.fromRGB(255, 255, 255)
local collisionVaporizerActive = false
local visualHighlightsActive = false

local physicsUpdateInterval = 0.03
local lastPhysicsUpdate = 0

local localForceInstance = nil
local localDirectionalForceInstance = nil

-- ADDED UTILITY STATES
local aiBotActive = false

-- ------------------------------------------------------------
-- ESP REGISTER VARIABLES
-- ------------------------------------------------------------
local EspConfig = {
	Enabled = false,
	Boxes = false,
	Tracers = false,
	Skeletons = false,
	Distance = false,
	Name = false,
	Health = false,
	CircleHeads = false,
	Thickness = 1.5,
	ColorMode = "Static",
	StaticColor = Color3.fromRGB(130, 0, 255)
}

local EspCache = {}

-- ------------------------------------------------------------
-- UNIFIED SYSTEM BROADCASTER (REUSABLE CHAT ROUTER)
-- ------------------------------------------------------------
local function UniversalChatBroadcast(messageString)
	local textChatService = game:GetService("TextChatService")
	if textChatService and textChatService.ChatVersion == Enum.ChatVersion.TextChatService then
		local generalChannel = textChatService:FindFirstChild("RBXGeneral", true)
		if generalChannel and generalChannel:IsA("TextChannel") then
			generalChannel:SendAsync(messageString)
		else
			local defaultChannels = textChatService:FindFirstChild("TextChannels")
			if defaultChannels then
				local chan = defaultChannels:FindFirstChildOfClass("TextChannel")
				if chan then chan:SendAsync(messageString) end
			end
		end
	end
	
	local replicatedStorage = game:GetService("ReplicatedStorage")
	local defaultChatSystemChatEvents = replicatedStorage:FindFirstChild("DefaultChatSystemChatEvents")
	if defaultChatSystemChatEvents then
		local sayMessageRequest = defaultChatSystemChatEvents:FindFirstChild("SayMessageRequest")
		if sayMessageRequest and sayMessageRequest:IsA("RemoteEvent") then
			sayMessageRequest:FireServer(messageString, "All")
		end
	end
end

-- ------------------------------------------------------------
-- UNIFIED LOGGING INFRASTRUCTURE
-- ------------------------------------------------------------
local function handleSliderLogging(sliderName, displayValue)
	local message = "[Zenith Systems]: " .. sliderName .. " set to " .. tostring(displayValue)
	
	if consoleModeEnabled then
		print("[CONSOLE LOG]: " .. message)
	end
	
	if chatModeEnabled then
		local currentTime = tick()
		if currentTime - lastChatSent >= chatCooldown then
			lastChatSent = currentTime
			task.spawn(function()
				UniversalChatBroadcast(message)
			end)
		end
	end
end

-- ------------------------------------------------------------
-- CHARACTER LOCAL GRAVITY MANAGEMENT
-- ------------------------------------------------------------
local function SynchronizeLocalPlayerGravityRig()
	if not lPlayer then return end
	local character = lPlayer.Character
	if not character then return end
	local rootPart = character:FindFirstChild("HumanoidRootPart")
	
	if rootPart then
		if keepOriginalGravity and negativeGravityValue > 0 then
			if not localForceInstance or localForceInstance.Parent ~= rootPart then
				if localForceInstance then localForceInstance:Destroy() end
				
				localForceInstance = Instance.new("VectorForce")
				localForceInstance.Name = "ZenithGravityAnchorForce"
				localForceInstance.ApplyAtCenterOfMass = true
				
				local attach = rootPart:FindFirstChild("ZenithGravityAttachment")
				if not attach then
					attach = Instance.new("Attachment")
					attach.Name = "ZenithGravityAttachment"
					attach.Parent = rootPart
				end
				
				localForceInstance.Attachment0 = attach
				localForceInstance.RelativeTo = Enum.ActuatorRelativeTo.World
				localForceInstance.Parent = rootPart
			end
			
			local calculatedMass = 0
			for _, object in ipairs(character:GetDescendants()) do
				if object:IsA("BasePart") then
					calculatedMass = calculatedMass + object:GetMass()
				end
			end
			
			local worldGravityConstant = Workspace.Gravity
			localForceInstance.Force = Vector3.new(0, calculatedMass * worldGravityConstant, 0)
		else
			if localForceInstance then
				localForceInstance:Destroy()
				localForceInstance = nil
			end
		end

		if keepDirectionalOriginalGravity and (northGravity > 0 or southGravity > 0 or eastGravity > 0 or westGravity > 0) then
			if not localDirectionalForceInstance or localDirectionalForceInstance.Parent ~= rootPart then
				if localDirectionalForceInstance then localDirectionalForceInstance:Destroy() end
				
				localDirectionalForceInstance = Instance.new("VectorForce")
				localDirectionalForceInstance.Name = "ZenithDirectionalGravityForce"
				localDirectionalForceInstance.ApplyAtCenterOfMass = true
				
				local attach = rootPart:FindFirstChild("ZenithGravityAttachment")
				if not attach then
					attach = Instance.new("Attachment")
					attach.Name = "ZenithGravityAttachment"
					attach.Parent = rootPart
				end
				
				localDirectionalForceInstance.Attachment0 = attach
				localDirectionalForceInstance.RelativeTo = Enum.ActuatorRelativeTo.World
				localDirectionalForceInstance.Parent = rootPart
			end
			
			local calculatedMass = 0
			for _, object in ipairs(character:GetDescendants()) do
				if object:IsA("BasePart") then
					calculatedMass = calculatedMass + object:GetMass()
				end
			end
			
			local combinedWindVectorX = eastGravity - westGravity
			local combinedWindVectorZ = southGravity - northGravity
			localDirectionalForceInstance.Force = Vector3.new(calculatedMass * combinedWindVectorX, 0, calculatedMass * combinedWindVectorZ)
		else
			if localDirectionalForceInstance then
				localDirectionalForceInstance:Destroy()
				localDirectionalForceInstance = nil
			end
		end
	end
end

-- ------------------------------------------------------------
-- RAYCAST TARGET FILTER CORE
-- ------------------------------------------------------------
local function PerformRaycastTargetScan()
	if not lPlayer or not lPlayer.Character then return nil end
	
	local raycastParams = RaycastParams.new()
	raycastParams.FilterType = Enum.RaycastFilterType.Exclude
	raycastParams.FilterDescendantsInstances = {lPlayer.Character}
	raycastParams.IgnoreWater = true
	
	local CurrentCamera = Workspace.CurrentCamera
	local viewportRay = CurrentCamera:ViewportPointToRay(CurrentCamera.ViewportSize.X / 2, CurrentCamera.ViewportSize.Y / 2)
	local scanResult = Workspace:Raycast(viewportRay.Origin, viewportRay.Direction * 250, raycastParams)
	
	if scanResult and scanResult.Instance and scanResult.Instance:IsA("BasePart") and scanResult.Instance.Name ~= "Terrain" then
		local targetPart = scanResult.Instance
		local partNameLower = targetPart.Name:lower()
		local spatialSize = targetPart.Size
		
		local isFloorStructure = partNameLower:find("floor") 
			or partNameLower:find("baseplate") 
			or partNameLower:find("ground") 
			or partNameLower:find("spawn")
			or (spatialSize.X > 45 and spatialSize.Z > 45)
			
		if not isFloorStructure then
			return targetPart
		end
	end
	return nil
end

-- ------------------------------------------------------------
-- MOUSE TARGET SCANNER
-- ------------------------------------------------------------
local function GetPartUnderMouse()
	local target = mouse.Target
	if target and target:IsA("BasePart") and target.Name ~= "Terrain" then
		local partNameLower = target.Name:lower()
		local isFloorStructure = partNameLower:find("floor") or partNameLower:find("baseplate") or partNameLower:find("ground")
		if not isFloorStructure then
			return target
		end
	end
	return nil
end

-- ------------------------------------------------------------
-- ESP SYSTEM MANAGEMENT FUNCTIONS
-- ------------------------------------------------------------
local function CreateEspObjects(player)
	if EspCache[player] then return end
	
	local container = {
		Box = Drawing.new("Square"),
		Tracer = Drawing.new("Line"),
		HeadCircle = Drawing.new("Circle"),
		TextLabel = Drawing.new("Text"),
		HealthBarOutline = Drawing.new("Square"),
		HealthBar = Drawing.new("Square"),
		Bones = {}
	}
	
	container.Box.Visible = false
	container.Box.Filled = false
	
	container.Tracer.Visible = false
	
	container.HeadCircle.Visible = false
	container.HeadCircle.Filled = false
	
	container.TextLabel.Visible = false
	container.TextLabel.Center = true
	container.TextLabel.Size = 13
	container.TextLabel.Font = 2
	
	container.HealthBarOutline.Visible = false
	container.HealthBarOutline.Filled = true
	container.HealthBarOutline.Color = Color3.fromRGB(0, 0, 0)
	
	container.HealthBar.Visible = false
	container.HealthBar.Filled = true
	
	for i = 1, #SKELETON_BONES do
		local boneLine = Drawing.new("Line")
		boneLine.Visible = false
		table.insert(container.Bones, boneLine)
	end
	
	EspCache[player] = container
end

local function RemoveEspObjects(player)
	if not EspCache[player] then return end
	local container = EspCache[player]
	
	container.Box:Remove()
	container.Tracer:Remove()
	container.HeadCircle:Remove()
	container.TextLabel:Remove()
	container.HealthBarOutline:Remove()
	container.HealthBar:Remove()
	
	for _, bone in ipairs(container.Bones) do
		bone:Remove()
	end
	
	EspCache[player] = nil
end

local function GetEspColor()
	if EspConfig.ColorMode == "Rainbow" then
		return Color3.fromHSV(tick() % 4 / 4, 1, 1)
	elseif EspConfig.ColorMode == "Blinking" then
		return (math.floor(tick() * 3) % 2 == 0) and EspConfig.StaticColor or Color3.fromRGB(0, 0, 0)
	end
	return EspConfig.StaticColor
end

-- ------------------------------------------------------------
-- BACKGROUND MODULES (AUTOMATION ENGINE)
-- ------------------------------------------------------------

-- AUTO OBJECT OWNERSHIP LOOP
task.spawn(function()
	while task.wait(0.1) do
		if autoOwnershipActive and lPlayer.Character and lPlayer.Character:FindFirstChild("HumanoidRootPart") then
			local rootPart = lPlayer.Character.HumanoidRootPart
			local targetParts = {}
			
			for _, obj in ipairs(Workspace:GetDescendants()) do
				if obj:IsA("BasePart") and not obj.Anchored and not obj:IsDescendantOf(lPlayer.Character) and obj.Name ~= "Terrain" then
					table.insert(targetParts, obj)
				end
			end
			
			if #targetParts > 0 then
				local selectedPart = targetParts[math.random(1, #targetParts)]
				local initialPosition = rootPart.CFrame
				
				pcall(function()
					rootPart.CFrame = selectedPart.CFrame + Vector3.new(0, 3, 0)
					
					local detector = selectedPart:FindFirstChildOfClass("ClickDetector")
					if detector then
						fireclickdetector(detector, 1)
						fireclickdetector(detector, 0)
					end
					
					selectedPart.AssemblyLinearVelocity = Vector3.new(0, 0.5, 0)
				end)
				
				task.wait(0.04)
				rootPart.CFrame = initialPosition
			end
		end
	end
end)

-- AUTOMATED BACKGROUND SYSTEM: AI BROADCAST ENGINE
task.spawn(function()
	local aiPhrases = {
		"Spacetime matrix evaluation optimized completely.",
		"Kinetic vectors inside this server sandbox are within fun limits.",
		"Zenith AI Diagnostic: Gravitational constraints bypassed successfully.",
		"Analysis complete: Object density values tweaked for peak velocity.",
		"Core Status: Zenith engine running smoothly. Enjoy the chaos! :3"
	}
	while task.wait(45) do
		if aiBotActive then
			local selectedSpeech = aiPhrases[math.random(1, #aiPhrases)]
			UniversalChatBroadcast("[Zenith AI System]: " .. selectedSpeech)
		end
	end
end)

-- INFINITE JUMP CONNECTION
UIS.JumpRequest:Connect(function()
	if infiniteJumpActive and lPlayer.Character then
		local humanoid = lPlayer.Character:FindFirstChildOfClass("Humanoid")
		if humanoid then
			humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
		end
	end
end)

-- NOCLIP LOOP
runServiceRef.Stepped:Connect(function()
	if noclipActive and lPlayer.Character then
		for _, component in ipairs(lPlayer.Character:GetDescendants()) do
			if component:IsA("BasePart") then
				component.CanCollide = false
			end
		end
	end
end)

-- THIRD PERSON MODE REFRESHER
runServiceRef.RenderStepped:Connect(function()
	if thirdPersonActive then
		lPlayer.CameraMaxZoomDistance = 120
		lPlayer.CameraMinZoomDistance = 25
	end
end)

-- ------------------------------------------------------------
-- ADDED: PLAYER TWEAKS (CLICK TELEPORT HOOK)
-- ------------------------------------------------------------
UIS.InputBegan:Connect(function(input, processed)
	if processed or keybindsDisabled or not clickTeleportActive then return end
	if input.UserInputType == Enum.UserInputType.MouseButton1 and UIS:IsKeyDown(Enum.KeyCode.LeftControl) then
		if lPlayer.Character and lPlayer.Character:FindFirstChild("HumanoidRootPart") then
			local hitPos = mouse.Hit
			if hitPos then
				lPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(hitPos.Position + Vector3.new(0, 3, 0))
			end
		end
	end
end)

-- ------------------------------------------------------------
-- NETWORK CLAIM CONTROL INPUT
-- ------------------------------------------------------------
UIS.InputBegan:Connect(function(input, processed)
	if processed or keybindsDisabled then return end
	if input.UserInputType == Enum.UserInputType.MouseButton1 and UIS:IsKeyDown(Enum.KeyCode.LeftControl) then
		local target = GetPartUnderMouse()
		if target and not target.Anchored then
			pcall(function()
				local camLook = Workspace.CurrentCamera.CFrame.LookVector
				target.AssemblyLinearVelocity = camLook * 5
				task.wait(0.01)
				target.AssemblyLinearVelocity = Vector3.new(0, 0, 0)
			end)
			Rayfield:Notify({ Title = "Item Claimed", Content = "Network synced on: " .. target.Name, Duration = 1.5 })
		end
	end
end)

-- ------------------------------------------------------------
-- TELEKINESIS DRAGGER CONTEXT HOOK
-- ------------------------------------------------------------
UIS.InputBegan:Connect(function(input, processed)
	if processed or keybindsDisabled then return end
	
	if input.KeyCode == Enum.KeyCode.Q then
		local target = PerformRaycastTargetScan()
		if target and not target.Anchored then
			tkActive = true
			tkTargetPart = target
			
			currentRotation = target.CFrame.Rotation
			lastMousePos = Vector2.new(mouse.X, mouse.Y)
			
			if tkConnection then tkConnection:Disconnect() end
			tkConnection = runServiceRef.RenderStepped:Connect(function()
				local currentMousePos = Vector2.new(mouse.X, mouse.Y)
				local delta = currentMousePos - lastMousePos
				lastMousePos = currentMousePos

				if tkActive and tkTargetPart and tkTargetPart.Parent and not tkTargetPart.Anchored then
					pcall(function()
						local currentCamera = Workspace.CurrentCamera
						
						if Rayfield.Flags["TK_RotationToggle"] and Rayfield.Flags["TK_RotationToggle"].CurrentValue and rotationKeyHeld then
							local sensitivity = 0.4
							currentRotation = currentRotation * CFrame.Angles(math.rad(-delta.Y * sensitivity), math.rad(-delta.X * sensitivity), 0)
						end

						local targetPos = currentCamera.CFrame.Position + (currentCamera.CFrame.LookVector * tkTargetDistance)
						
						if tkWaveMotion then
							local waveOffset = math.sin(tick() * tkWaveSpeed) * tkWaveAmplitude
							targetPos = targetPos + Vector3.new(0, waveOffset, 0)
						end
						
						local velocityVector = (targetPos - tkTargetPart.Position) * 18
						tkTargetPart.AssemblyLinearVelocity = velocityVector
						
						if tkSpinX ~= 0 or tkSpinY ~= 0 or tkSpinZ ~= 0 then
							currentRotation = currentRotation * CFrame.Angles(math.rad(tkSpinX), math.rad(tkSpinY), math.rad(tkSpinZ))
						end
						
						tkTargetPart.CFrame = CFrame.new(tkTargetPart.Position) * currentRotation
						tkTargetPart.AssemblyAngularVelocity = Vector3.new(0, 0, 0)
					end)
				else
					if tkConnection then
						tkConnection:Disconnect()
						tkConnection = nil
					end
				end
			end)
			Rayfield:Notify({ Title = "Telekinesis", Content = "Holding: " .. tkTargetPart.Name, Duration = 1.5 })
		end
	end

	if Rayfield.Flags["TK_RotateKey"] and input.KeyCode.Name == Rayfield.Flags["TK_RotateKey"].CurrentKeybind then
		rotationKeyHeld = true
	end
end)

UIS.InputEnded:Connect(function(input)
	if input.KeyCode == Enum.KeyCode.Q then
		if tkActive then
			tkActive = false
			if tkTargetPart and tkTargetPart.Parent and not tkTargetPart.Anchored then
				if tkFlingOnRelease then
					pcall(function()
						local currentCamera = Workspace.CurrentCamera
						tkTargetPart.AssemblyLinearVelocity = currentCamera.CFrame.LookVector * tkFlingForce
					end)
					Rayfield:Notify({ Title = "Telekinesis", Content = "Target Flung!", Duration = 1.5 })
				else
					Rayfield:Notify({ Title = "Telekinesis", Content = "Target released.", Duration = 1 })
				end
			end
			tkTargetPart = nil
			if tkConnection then
				tkConnection:Disconnect()
				tkConnection = nil
			end
		end
	end
	
	if Rayfield.Flags["TK_RotateKey"] and input.KeyCode.Name == Rayfield.Flags["TK_RotateKey"].CurrentKeybind then
		rotationKeyHeld = false
	end
end)

-- VEHICLE DRIVING CONTROLS
UIS.InputBegan:Connect(function(input, processed)
	if processed or keybindsDisabled then return end
	
	local key = input.KeyCode.Name
	if vehicleMovingStates[key] ~= nil then
		if vehicleMovementMode == "Hold" then
			vehicleMovingStates[key] = true
		elseif vehicleMovementMode == "Toggle" then
			vehicleMovingStates[key] = not vehicleMovingStates[key]
		end
	end

	if Rayfield.Flags["VehicleFlyUpKey"] and input.KeyCode.Name == Rayfield.Flags["VehicleFlyUpKey"].CurrentKeybind then
		flyUpHeld = true
	end
	if Rayfield.Flags["VehicleFlyDownKey"] and input.KeyCode.Name == Rayfield.Flags["VehicleFlyDownKey"].CurrentKeybind then
		flyDownHeld = true
	end

	-- ADDED: INSTANT VEHICLE BRAKE HOTKEY BOUND TO 'Z'
	if input.KeyCode == Enum.KeyCode.Z then
		if lPlayer and lPlayer.Character then
			local humanoid = lPlayer.Character:FindFirstChildOfClass("Humanoid")
			local seatPart = humanoid and humanoid.SeatPart
			if seatPart then
				local vehicle = seatPart.Parent
				local mainPart = vehicle:IsA("Model") and vehicle.PrimaryPart or seatPart
				pcall(function()
					mainPart.AssemblyLinearVelocity = Vector3.new(0, 0, 0)
					mainPart.AssemblyAngularVelocity = Vector3.new(0, 0, 0)
				end)
				Rayfield:Notify({ Title = "Vehicle Mods", Content = "Emergency Braking Engaged!", Duration = 1 })
			end
		end
	end

	if input.KeyCode == Enum.KeyCode.Space and not vehicleFlyActive then
		if lPlayer and lPlayer.Character then
			local humanoid = lPlayer.Character:FindFirstChildOfClass("Humanoid")
			if humanoid and humanoid.SeatPart then
				local seatPart = humanoid.SeatPart
				local vehicle = seatPart.Parent
				local mainPart = vehicle:IsA("Model") and vehicle.PrimaryPart or seatPart
				pcall(function()
					mainPart.AssemblyLinearVelocity = mainPart.AssemblyLinearVelocity + Vector3.new(0, vehicleJumpForce, 0)
				end)
			end
		end
	end
end)

UIS.InputEnded:Connect(function(input, processed)
	local key = input.KeyCode.Name
	if vehicleMovementMode == "Hold" and vehicleMovingStates[key] ~= nil then
		vehicleMovingStates[key] = false
	end

	if Rayfield.Flags["VehicleFlyUpKey"] and input.KeyCode.Name == Rayfield.Flags["VehicleFlyUpKey"].CurrentKeybind then
		flyUpHeld = false
	end
	if Rayfield.Flags["VehicleFlyDownKey"] and input.KeyCode.Name == Rayfield.Flags["VehicleFlyDownKey"].CurrentKeybind then
		flyDownHeld = false
	end
end)

-- ------------------------------------------------------------
-- RENDER LOOP PIPELINE WITH SMOOTH NEON CURVABLE LINES
-- ------------------------------------------------------------
runServiceRef:BindToRenderStep("ZenithSystemPhysicsLoop", Enum.RenderPriority.Camera.Value + 1, function(deltaTime)
	local currentTimestamp = tick()
	
	local combinedWindVectorX = eastGravity - westGravity
	local combinedWindVectorZ = southGravity - northGravity
	local combinedWindVectorY = negativeGravityValue

	-- ------------------------------------------------------------
	-- ESP PROCESSING PIPELINE
	-- ------------------------------------------------------------
	local dynamicColor = GetEspColor()
	
	for _, player in ipairs(Players:GetPlayers()) do
		if player == lPlayer then continue end
		
		if EspConfig.Enabled then
			CreateEspObjects(player)
			local objects = EspCache[player]
			local character = player.Character
			local root = character and character:FindFirstChild("HumanoidRootPart")
			local head = character and character:FindFirstChild("Head")
			local humanoid = character and character:FindFirstChildOfClass("Humanoid")
			
			if root and head and humanoid and humanoid.Health > 0 then
				local rootCFrame = root.CFrame
				local camPos = camera.CFrame.Position
				local distance = (rootCFrame.Position - camPos).Magnitude
				
				local rootScreenPos, rootOnScreen = camera:WorldToViewportPoint(rootCFrame.Position)
				
				if rootOnScreen then
					local sizeOffset = (camera:WorldToViewportPoint(rootCFrame.Position + Vector3.new(0, 3, 0)).Y - camera:WorldToViewportPoint(rootCFrame.Position - Vector3.new(0, 3, 0)).Y)
					local boxHeight = math.abs(sizeOffset)
					local boxWidth = boxHeight * 0.6
					
					-- 2D Box ESP
					if EspConfig.Boxes then
						objects.Box.Size = Vector2.new(boxWidth, boxHeight)
						objects.Box.Position = Vector2.new(rootScreenPos.X - boxWidth / 2, rootScreenPos.Y - boxHeight / 2)
						objects.Box.Thickness = EspConfig.Thickness
						objects.Box.Color = dynamicColor
						objects.Box.Visible = true
					else
						objects.Box.Visible = false
					end
					
					-- Tracers (Snaplines)
					if EspConfig.Tracers then
						objects.Tracer.From = Vector2.new(camera.ViewportSize.X / 2, camera.ViewportSize.Y)
						objects.Tracer.To = Vector2.new(rootScreenPos.X, rootScreenPos.Y + boxHeight / 2)
						objects.Tracer.Thickness = EspConfig.Thickness
						objects.Tracer.Color = dynamicColor
						objects.Tracer.Visible = true
					else
						objects.Tracer.Visible = false
					end
					
					-- Circle Head ESP
					if EspConfig.CircleHeads then
						local headScreenPos, headOnScreen = camera:WorldToViewportPoint(head.Position)
						if headOnScreen then
							objects.HeadCircle.Position = Vector2.new(headScreenPos.X, headScreenPos.Y)
							objects.HeadCircle.Radius = boxHeight / 11
							objects.HeadCircle.Thickness = EspConfig.Thickness
							objects.HeadCircle.Color = dynamicColor
							objects.HeadCircle.Visible = true
						else
							objects.HeadCircle.Visible = false
						end
					else
						objects.HeadCircle.Visible = false
					end
					
					-- Health Bars
					if EspConfig.Health then
						local healthPercent = humanoid.Health / humanoid.MaxHealth
						local barHeight = boxHeight
						local barWidth = 3
						local barPosX = rootScreenPos.X - (boxWidth / 2) - 6
						local barPosY = rootScreenPos.Y - (boxHeight / 2)
						
						objects.HealthBarOutline.Size = Vector2.new(barWidth + 2, barHeight + 2)
						objects.HealthBarOutline.Position = Vector2.new(barPosX - 1, barPosY - 1)
						objects.HealthBarOutline.Visible = true
						
						objects.HealthBar.Size = Vector2.new(barWidth, barHeight * healthPercent)
						objects.HealthBar.Position = Vector2.new(barPosX, barPosY + (barHeight * (1 - healthPercent)))
						objects.HealthBar.Color = Color3.fromRGB(255 - (255 * healthPercent), 255 * healthPercent, 0)
						objects.HealthBar.Visible = true
					else
						objects.HealthBarOutline.Visible = false
						objects.HealthBar.Visible = false
					end
					
					-- Dynamic Metadata Labels (Name & Distance)
					if EspConfig.Name or EspConfig.Distance then
						local outputStr = ""
						if EspConfig.Name then outputStr = outputStr .. player.Name end
						if EspConfig.Distance then outputStr = outputStr .. string.format(" [%d Studs]", math.round(distance)) end
						
						objects.TextLabel.Text = outputStr
						objects.TextLabel.Position = Vector2.new(rootScreenPos.X, rootScreenPos.Y - (boxHeight / 2) - 17)
						objects.TextLabel.Color = dynamicColor
						objects.TextLabel.Visible = true
					else
						objects.TextLabel.Visible = false
					end
					
					-- R15 Skeleton Matrix Line Engine
					if EspConfig.Skeletons then
						for i, joint in ipairs(SKELETON_BONES) do
							local p1 = character:FindFirstChild(joint[1])
							local p2 = character:FindFirstChild(joint[2])
							local boneDraw = objects.Bones[i]
							
							if p1 and p2 and boneDraw then
								local sPos1, onScreen1 = camera:WorldToViewportPoint(p1.Position)
								local sPos2, onScreen2 = camera:WorldToViewportPoint(p2.Position)
								
								if onScreen1 and onScreen2 then
									boneDraw.From = Vector2.new(sPos1.X, sPos1.Y)
									boneDraw.To = Vector2.new(sPos2.X, sPos2.Y)
									boneDraw.Thickness = EspConfig.Thickness
									boneDraw.Color = dynamicColor
									boneDraw.Visible = true
								else
									boneDraw.Visible = false
								end
							elseif boneDraw then
								boneDraw.Visible = false
							end
						end
					else
						for _, bone in ipairs(objects.Bones) do bone.Visible = false end
					end
				else
					objects.Box.Visible = false
					objects.Tracer.Visible = false
					objects.HeadCircle.Visible = false
					objects.TextLabel.Visible = false
					objects.HealthBarOutline.Visible = false
					objects.HealthBar.Visible = false
					for _, bone in ipairs(objects.Bones) do bone.Visible = false end
				end
			else
				objects.Box.Visible = false
				objects.Tracer.Visible = false
				objects.HeadCircle.Visible = false
				objects.TextLabel.Visible = false
				objects.HealthBarOutline.Visible = false
				objects.HealthBar.Visible = false
				for _, bone in ipairs(objects.Bones) do bone.Visible = false end
			end
		else
			RemoveEspObjects(player)
		end
	end

	-- DYNAMIC PATHFINDER PREDICTION RENDERER (CURVABLE NEON UPDATED)
	local pathFolder = Workspace:FindFirstChild("ZenithPathfinderFolder")
	if not pathFolder then
		pathFolder = Instance.new("Folder")
		pathFolder.Name = "ZenithPathfinderFolder"
		pathFolder.Parent = Workspace
	end

	if objectPathfinderActive then
		local trackPart = tkTargetPart
		if not trackPart and lPlayer.Character and lPlayer.Character:FindFirstChild("HumanoidRootPart") then
			local closestPart = nil
			local minDist = math.huge
			local rootPos = lPlayer.Character.HumanoidRootPart.Position
			local scanParts = Workspace:GetPartBoundsInRadius(rootPos, environmentalScanRadius)
			
			for i = 1, #scanParts do
				local p = scanParts[i]
				if p:IsA("BasePart") and not p.Anchored and p.Name ~= "Terrain" and not p:IsDescendantOf(lPlayer.Character) then
					local dist = (p.Position - rootPos).Magnitude
					if dist < minDist and p.AssemblyLinearVelocity.Magnitude > 1.5 then
						minDist = dist
						closestPart = p
					end
				end
			end
			trackPart = closestPart
		end

		pathFolder:ClearAllChildren()

		if lastTrackedPart and lastTrackedPart ~= trackPart then
			pcall(function()
				local oldTag = lastTrackedPart:FindFirstChild("ZenithObjectTag")
				if oldTag then oldTag:Destroy() end
			end)
		end
		lastTrackedPart = trackPart

		if trackPart and trackPart.Parent then
			local p0 = trackPart.Position
			local v0 = trackPart.AssemblyLinearVelocity
			
			local gY = -currentGravityValue + combinedWindVectorY
			if objectZeroGActive or antiGravityActive then gY = combinedWindVectorY end
			local simulatedGravVector = Vector3.new(combinedWindVectorX, gY, combinedWindVectorZ)

			local maxSteps = 16
			local timeStep = 0.06
			local generatedPoints = {}

			-- Pre-calculate all kinematic path positions
			for step = 1, maxSteps do
				local timeInterval = step * timeStep
				local projectedPosition = p0 + (v0 * timeInterval) + (0.5 * simulatedGravVector * (timeInterval * timeInterval))
				table.insert(generatedPoints, projectedPosition)
			end

			local finalProjectedPosition = generatedPoints[#generatedPoints]

			-- Draw seamless connected line blocks to build an authentic curvy vector wireframe
			for i = 1, #generatedPoints - 1 do
				local startPos = generatedPoints[i]
				local endPos = generatedPoints[i + 1]
				local segmentVector = endPos - startPos
				local distance = segmentVector.Magnitude

				if distance > 0.01 then
					local lineSegment = Instance.new("Part")
					lineSegment.Size = Vector3.new(0.3, 0.3, distance)
					lineSegment.Material = Enum.Material.Neon
					lineSegment.Color = (i % 2 == 0) and Color3.fromRGB(130, 0, 255) or Color3.fromRGB(0, 255, 230)
					lineSegment.Anchored = true
					lineSegment.CanCollide = false
					lineSegment.CFrame = CFrame.lookAt(startPos + (segmentVector * 0.5), endPos)
					lineSegment.Parent = pathFolder
				end
			end

			-- LIVE TELEMETRY FLOATING HUD DESIGN
			local telemetryTag = trackPart:FindFirstChild("ZenithObjectTag")
			if not telemetryTag then
				telemetryTag = Instance.new("BillboardGui")
				telemetryTag.Name = "ZenithObjectTag"
				telemetryTag.Size = UDim2.new(0, 230, 0, 115)
				telemetryTag.AlwaysOnTop = true
				telemetryTag.ExtentsOffset = Vector3.new(0, 3.5, 0)
				
				local frame = Instance.new("Frame")
				frame.Size = UDim2.new(1, 0, 1, 0)
				frame.BackgroundColor3 = Color3.fromRGB(10, 10, 14)
				frame.BackgroundTransparency = 0.25
				frame.BorderSizePixel = 1
				frame.BorderColor3 = Color3.fromRGB(0, 255, 230)
				frame.Parent = telemetryTag
				
				local corner = Instance.new("UICorner")
				corner.CornerRadius = UDim.new(0, 6)
				corner.Parent = frame
				
				local txt = Instance.new("TextLabel")
				txt.Name = "DataField"
				txt.Size = UDim2.new(1, -14, 1, -14)
				txt.Position = UDim2.new(0, 7, 0, 7)
				txt.BackgroundTransparency = 1
				txt.TextColor3 = Color3.fromRGB(255, 255, 255)
				txt.TextSize = 12
				txt.Font = Enum.Font.RobotoMono
				txt.TextXAlignment = Enum.TextXAlignment.Left
				txt.TextYAlignment = Enum.TextYAlignment.Top
				txt.RichText = true
				txt.Parent = frame
				
				telemetryTag.Parent = trackPart
			end

			local activeVelocity = math.round(v0.Magnitude)
			local dataField = telemetryTag.Frame.DataField
			dataField.Text = string.format(
				"<font color='#00FFE6'><b>TARGET: %s</b></font>\n" ..
				"<font color='#FFFFFF'><b>VEL:</b> %d studs/s</font>\n" ..
				"<font color='#FFFFFF'><b>POS:</b> X:%.1f Y:%.1f Z:%.1f</font>\n" ..
				"<font color='#8200FF'><b>EST DEST:</b> X:%.1f Y:%.1f Z:%.1f</font>\n" ..
				"<font color='#666666'><b>MASS:</b> %.2f</font>",
				string.upper(trackPart.Name),
				activeVelocity,
				p0.X, p0.Y, p0.Z,
				finalProjectedPosition.X, finalProjectedPosition.Y, finalProjectedPosition.Z,
				trackPart:GetMass()
			)
		end
	else
		pathFolder:ClearAllChildren()
		if lastTrackedPart then
			pcall(function()
				local oldTag = lastTrackedPart:FindFirstChild("ZenithObjectTag")
				if oldTag then oldTag:Destroy() end
			end)
			lastTrackedPart = nil
		end
	end

	if lPlayer and lPlayer.Character and lPlayer.Character:FindFirstChild("HumanoidRootPart") then
		local rootPart = lPlayer.Character.HumanoidRootPart
		local humanoid = lPlayer.Character:FindFirstChildOfClass("Humanoid")
		local seatPart = humanoid and humanoid.SeatPart
		
		if humanoid then
			if enableCustomPlayerSpeed then
				humanoid.WalkSpeed = customWalkSpeed
			end
			if enableCustomPlayerJump then
				if humanoid.UseJumpPower then
					humanoid.JumpPower = customJumpPower
				else
					humanoid.JumpHeight = customJumpPower / 3.7
				end
			end
			
			-- ADDED: INVISIBLE SEATING MECHANIC
			if seatPart then
				seatPart.Transparency = invisibleSeatingActive and 1 or 0
			end
		end

		if playerFlyActive and rootPart then
			local currentCamera = Workspace.CurrentCamera
			local flyVector = Vector3.new(0,0,0)
			if UIS:IsKeyDown(Enum.KeyCode.W) then flyVector = flyVector + currentCamera.CFrame.LookVector end
			if UIS:IsKeyDown(Enum.KeyCode.S) then flyVector = flyVector - currentCamera.CFrame.LookVector end
			if UIS:IsKeyDown(Enum.KeyCode.A) then flyVector = flyVector - currentCamera.CFrame.RightVector end
			if UIS:IsKeyDown(Enum.KeyCode.D) then flyVector = flyVector + currentCamera.CFrame.RightVector end
			if UIS:IsKeyDown(Enum.KeyCode.Space) then flyVector = flyVector + Vector3.new(0, 1, 0) end
			if UIS:IsKeyDown(Enum.KeyCode.LeftShift) then flyVector = flyVector - Vector3.new(0, 1, 0) end
			
			if flyVector.Magnitude > 0 then
				rootPart.AssemblyLinearVelocity = flyVector.Unit * playerFlySpeed
			else
				rootPart.AssemblyLinearVelocity = Vector3.new(0, 0.1, 0)
			end
		end
		
		if seatPart then
			pcall(function()
				local vehicle = seatPart.Parent
				local mainPart = vehicle:IsA("Model") and vehicle.PrimaryPart or seatPart
				
				if mainPart and mainPart:IsA("BasePart") then
					-- ADDED: AUTO FLIP MATRIX SYSTEM
					if autoFlipMatrixActive then
						local upVector = mainPart.CFrame.UpVector
						if upVector.Y < 0.2 then
							mainPart.AssemblyAngularVelocity = Vector3.new(0, 0, 5)
						end
					end

					-- ADDED: INFINITE ENGINE TORQUE FORCE OVERRIDE
					if infiniteTorqueActive then
						for _, child in ipairs(vehicle:GetDescendants()) do
							if child:IsA("HingeConstraint") or child:IsA("CylindricalConstraint") then
								child.MotorMaxTorque = math.huge
								child.MotorMaxAngularAcceleration = math.huge
							end
						end
					end

					-- ADDED: VEHICLE RAINBOW COLOR GRADIENT
					if vehicleRainbowActive then
						local rainbowColor = Color3.fromHSV(tick() % 5 / 5, 1, 1)
						for _, child in ipairs(vehicle:GetDescendants()) do
							if child:IsA("BasePart") then
								child.Color = rainbowColor
							end
						end
					end

					-- ADDED: DRIFT MODE (0 FRICTION)
					if vehicleDriftModeActive then
						for _, child in ipairs(vehicle:GetDescendants()) do
							if child:IsA("BasePart") then
								local currentProps = child.CurrentPhysicalProperties or PhysicalProperties.new(child.Material)
								child.CustomPhysicalProperties = PhysicalProperties.new(
									currentProps.Density,
									0, -- 0 Friction for drifting
									currentProps.Elasticity,
									currentProps.FrictionWeight,
									currentProps.ElasticityWeight
								)
							end
						end
					end

					-- ADDED: STATIC COLOR PICKER
					if vehicleStaticColorActive and not vehicleRainbowActive then
						for _, child in ipairs(vehicle:GetDescendants()) do
							if child:IsA("BasePart") then
								child.Color = vehicleStaticColor
							end
						end
					end

					-- ADDED: CUSTOM IMAGE DECAL
					if vehicleCustomImageActive and vehicleCustomImageId ~= "" then
						local parsedId = vehicleCustomImageId
						if tonumber(parsedId) then parsedId = "rbxassetid://" .. parsedId end
						
						for _, child in ipairs(vehicle:GetDescendants()) do
							if child:IsA("BasePart") then
								local decal = child:FindFirstChild("ZenithCustomDecal")
								if not decal then
									decal = Instance.new("Decal")
									decal.Name = "ZenithCustomDecal"
									decal.Face = Enum.NormalId.Top
									decal.Parent = child
								end
								decal.Texture = parsedId
							end
						end
					else
						for _, child in ipairs(vehicle:GetDescendants()) do
							if child:IsA("BasePart") then
								local decal = child:FindFirstChild("ZenithCustomDecal")
								if decal then decal:Destroy() end
							end
						end
					end

					-- UPDATED: VEHICLE FLY SYSTEM (STATIC, TWEEN, VFLY)
					if vehicleFlyActive then
						local currentCamera = Workspace.CurrentCamera
						local moveDir = Vector3.new(0,0,0)
						
						if vehicleMovingStates.W then moveDir = moveDir + currentCamera.CFrame.LookVector end
						if vehicleMovingStates.S then moveDir = moveDir - currentCamera.CFrame.LookVector end
						if vehicleMovingStates.A then moveDir = moveDir - currentCamera.CFrame.RightVector end
						if vehicleMovingStates.D then moveDir = moveDir + currentCamera.CFrame.RightVector end
						if flyUpHeld then moveDir = moveDir + Vector3.new(0, 1, 0) end
						if flyDownHeld then moveDir = moveDir - Vector3.new(0, 1, 0) end

						if moveDir.Magnitude > 0 then
							moveDir = moveDir.Unit
						end

						if vehicleFlyMode == "Static" then
							-- Clean up VFly movers if they exist
							if mainPart:FindFirstChild("ZenithVFlyBV") then mainPart.ZenithVFlyBV:Destroy() end
							if mainPart:FindFirstChild("ZenithVFlyBG") then mainPart.ZenithVFlyBG:Destroy() end
							
							local cGrav = mainPart:FindFirstChild("ZenithVehicleGrav") or Instance.new("BodyForce")
							cGrav.Name = "ZenithVehicleGrav"
							cGrav.Force = Vector3.new(0, 196.2 * mainPart.AssemblyMass, 0)
							cGrav.Parent = mainPart

							if moveDir.Magnitude > 0 then
								mainPart.AssemblyLinearVelocity = moveDir * vehicleFlySpeed
								local planarLook = Vector3.new(moveDir.X, 0, moveDir.Z)
								if planarLook.Magnitude > 0 then
									local targetRot = CFrame.lookAt(mainPart.Position, mainPart.Position + planarLook)
									mainPart.CFrame = mainPart.CFrame:Lerp(targetRot, vehicleTurnSpeed * 0.01)
								end
							else
								mainPart.AssemblyLinearVelocity = Vector3.new(0,0,0)
								mainPart.AssemblyAngularVelocity = Vector3.new(0,0,0)
							end

						elseif vehicleFlyMode == "VFly" then
							if mainPart:FindFirstChild("ZenithVehicleGrav") then mainPart.ZenithVehicleGrav:Destroy() end
							
							local bv = mainPart:FindFirstChild("ZenithVFlyBV") or Instance.new("BodyVelocity")
							bv.Name = "ZenithVFlyBV"
							bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
							bv.Velocity = moveDir * vehicleFlySpeed
							bv.Parent = mainPart

							local bg = mainPart:FindFirstChild("ZenithVFlyBG") or Instance.new("BodyGyro")
							bg.Name = "ZenithVFlyBG"
							bg.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
							bg.P = 9000
							
							if moveDir.Magnitude > 0 then
								bg.CFrame = CFrame.lookAt(mainPart.Position, mainPart.Position + moveDir)
							else
								bg.CFrame = mainPart.CFrame
							end
							bg.Parent = mainPart

						elseif vehicleFlyMode == "Tween" then
							if mainPart:FindFirstChild("ZenithVehicleGrav") then mainPart.ZenithVehicleGrav:Destroy() end
							if mainPart:FindFirstChild("ZenithVFlyBV") then mainPart.ZenithVFlyBV:Destroy() end
							if mainPart:FindFirstChild("ZenithVFlyBG") then mainPart.ZenithVFlyBG:Destroy() end
							
							mainPart.AssemblyLinearVelocity = Vector3.new(0,0,0)
							mainPart.AssemblyAngularVelocity = Vector3.new(0,0,0)
							
							if moveDir.Magnitude > 0 then
								local targetPos = mainPart.Position + (moveDir * (vehicleFlySpeed * deltaTime))
								local targetRot = CFrame.lookAt(targetPos, targetPos + moveDir)
								mainPart.CFrame = mainPart.CFrame:Lerp(targetRot, 0.4)
							end
						end

					elseif vehicleSpeedHackActive then
						if mainPart:FindFirstChild("ZenithVFlyBV") then mainPart.ZenithVFlyBV:Destroy() end
						if mainPart:FindFirstChild("ZenithVFlyBG") then mainPart.ZenithVFlyBG:Destroy() end
						
						if customVehicleGravity ~= 196.2 then
							local cGrav = mainPart:FindFirstChild("ZenithVehicleGrav") or Instance.new("BodyForce")
							cGrav.Name = "ZenithVehicleGrav"
							cGrav.Force = Vector3.new(0, (196.2 - customVehicleGravity) * mainPart.AssemblyMass, 0)
							cGrav.Parent = mainPart
						else
							if mainPart:FindFirstChild("ZenithVehicleGrav") then mainPart.ZenithVehicleGrav:Destroy() end
						end

						local currentCamera = Workspace.CurrentCamera
						local moveDir = Vector3.new(0,0,0)
						local camLook = Vector3.new(currentCamera.CFrame.LookVector.X, 0, currentCamera.CFrame.LookVector.Z)
						if camLook.Magnitude > 0 then camLook = camLook.Unit end
						local camRight = Vector3.new(currentCamera.CFrame.RightVector.X, 0, currentCamera.CFrame.RightVector.Z)
						if camRight.Magnitude > 0 then camRight = camRight.Unit end
						
						if vehicleMovingStates.W then moveDir = moveDir + camLook end
						if vehicleMovingStates.S then moveDir = moveDir - camLook end
						if vehicleMovingStates.A then moveDir = moveDir - camRight end
						if vehicleMovingStates.D then moveDir = moveDir + camRight end
						
						if moveDir.Magnitude > 0 then
							moveDir = moveDir.Unit
							mainPart.AssemblyLinearVelocity = Vector3.new(moveDir.X * targetVehicleSpeedValue, mainPart.AssemblyLinearVelocity.Y, moveDir.Z * targetVehicleSpeedValue)
							local targetRot = CFrame.lookAt(mainPart.Position, mainPart.Position + moveDir)
							mainPart.CFrame = mainPart.CFrame:Lerp(targetRot, vehicleTurnSpeed * 0.01)
						end
					else
						if mainPart:FindFirstChild("ZenithVehicleGrav") then mainPart.ZenithVehicleGrav:Destroy() end
						if mainPart:FindFirstChild("ZenithVFlyBV") then mainPart.ZenithVFlyBV:Destroy() end
						if mainPart:FindFirstChild("ZenithVFlyBG") then mainPart.ZenithVFlyBG:Destroy() end
					end
				end
			end)
		end

		if (masterPhysicsScanActive or currentAuraPattern ~= "None" or objectVacuumActive or networkOwnershipClaimAuraActive) and (currentTimestamp - lastPhysicsUpdate >= physicsUpdateInterval) then
			lastPhysicsUpdate = currentTimestamp
			pcall(SynchronizeLocalPlayerGravityRig)
			
			Workspace.Gravity = currentGravityValue
			
			local boundaryOverlapParams = OverlapParams.new()
			boundaryOverlapParams.FilterType = Enum.RaycastFilterType.Exclude
			boundaryOverlapParams.FilterDescendantsInstances = {lPlayer.Character}
			
			local detectedSpatialParts = Workspace:GetPartBoundsInRadius(rootPart.Position, environmentalScanRadius, boundaryOverlapParams)
			
			local dynamicObjectCount = 0
			if currentAuraPattern ~= "None" then
				for i = 1, #detectedSpatialParts do
					local testPart = detectedSpatialParts[i]
					if testPart:IsA("BasePart") and testPart.Name ~= "Terrain" and not testPart.Anchored then
						dynamicObjectCount = dynamicObjectCount + 1
					end
				end
			end
			
			local currentAuraIndex = 0
			for index = 1, #detectedSpatialParts do
				local targetPart = detectedSpatialParts[index]
				
				if targetPart:IsA("BasePart") and targetPart.Name ~= "Terrain" then
					local spatialSize = targetPart.Size
					local partNameLower = targetPart.Name:lower()
					local isFloorStructure = partNameLower:find("floor") 
						or partNameLower:find("baseplate") 
						or partNameLower:find("ground") 
						or partNameLower:find("spawn")
						or partNameLower:find("platform")
						or partNameLower:find("road")
						or (spatialSize.X > 32 and spatialSize.Z > 32)
						or (spatialSize.X > 32 and spatialSize.Y > 32)
						or (spatialSize.Y > 32 and spatialSize.Z > 32)
					
					if masterPhysicsScanActive and freezeNearbyObjectsActive and not isFloorStructure then
						pcall(function() targetPart.Anchored = true end)
						continue
					end
					
					if masterPhysicsScanActive and forcefullyUnanchorObjects and targetPart.Anchored and not isFloorStructure then
						pcall(function() targetPart.Anchored = false end)
					end

					local passFilterScope = true
					if objectAffectedFilter == "Only Unanchored Parts" and targetPart.Anchored then
						passFilterScope = false
					elseif objectAffectedFilter == "Only Heavy Parts (>15 Mass)" and targetPart:GetMass() < 15 then
						passFilterScope = false
					elseif objectAffectedFilter == "Only Light Parts (<15 Mass)" and targetPart:GetMass() >= 15 then
						passFilterScope = false
					end

					if not targetPart.Anchored and not isFloorStructure and passFilterScope then
						
						-- ADDED: NETWORK OWNERSHIP CLAIM AURA优先执行
						if networkOwnershipClaimAuraActive then
							pcall(function()
								targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity + Vector3.new(0, 0.01, 0)
							end)
						end

						-- ADDED: OBJECT VACUUM POINT TO OVERHEAD HOVER
						if objectVacuumActive and targetPart ~= tkTargetPart then
							pcall(function()
								local overheadPosition = rootPart.Position + Vector3.new(0, 8, 0)
								targetPart.CFrame = CFrame.new(overheadPosition)
								targetPart.AssemblyLinearVelocity = Vector3.new(0, 0, 0)
							end)
						end

						-- ADDED: EXPLOSIVE IMPACT LISTENERS
						if explosiveCollisionsActive and not targetPart:FindFirstChild("ZenithExplosionHook") then
							pcall(function()
								local expHook = Instance.new("BoolValue")
								expHook.Name = "ZenithExplosionHook"
								expHook.Parent = targetPart
								
								targetPart.Touched:Connect(function(hit)
									if hit and not hit:IsDescendantOf(lPlayer.Character) and targetPart.AssemblyLinearVelocity.Magnitude > 5 then
										local visualExp = Instance.new("Explosion")
										visualExp.BlastRadius = 0
										visualExp.Position = targetPart.Position
										visualExp.Parent = Workspace
									end
								end)
							end)
						end

						if currentAuraPattern ~= "None" and targetPart ~= tkTargetPart and not objectVacuumActive then
							currentAuraIndex = currentAuraIndex + 1
							local coreCenter = rootPart.CFrame
							local offsetRadius = 9
							local mathAngle = (currentAuraIndex / math.max(1, dynamicObjectCount)) * math.pi * 2
							local computedDestCFrame = coreCenter
							
							if currentAuraPattern == "Circle" then
								computedDestCFrame = coreCenter * CFrame.new(math.cos(mathAngle) * offsetRadius, 0, math.sin(mathAngle) * offsetRadius)
							elseif currentAuraPattern == "Box" then
								local perimeterSide = currentAuraIndex % 4
								if perimeterSide == 0 then computedDestCFrame = coreCenter * CFrame.new(-offsetRadius, 0, (mathAngle/math.pi)*offsetRadius)
								elseif perimeterSide == 1 then computedDestCFrame = coreCenter * CFrame.new(offsetRadius, 0, (mathAngle/math.pi)*offsetRadius)
								elseif perimeterSide == 2 then computedDestCFrame = coreCenter * CFrame.new((mathAngle/math.pi)*offsetRadius, 0, -offsetRadius)
								else computedDestCFrame = coreCenter * CFrame.new((mathAngle/math.pi)*offsetRadius, 0, offsetRadius) end
							elseif currentAuraPattern == "Heart" then
								local variableT = mathAngle
								local coordX = 16 * math.sin(variableT)^3
								local coordY = 13 * math.cos(variableT) - 5 * math.cos(2*variableT) - 2 * math.cos(3*variableT) - math.cos(4*variableT)
								computedDestCFrame = coreCenter * CFrame.new(coordX * 0.45, coordY * 0.45, -2)
							elseif currentAuraPattern == "Wings" then
								local separationSide = (currentAuraIndex % 2 == 0) and 1 or -1
								computedDestCFrame = coreCenter * CFrame.new(separationSide * (4 + math.sin(mathAngle) * 2.5), mathAngle * 1.5, separationSide * math.cos(mathAngle))
							elseif currentAuraPattern == "Pet" then
								computedDestCFrame = coreCenter * CFrame.new(math.sin(tick() + mathAngle) * 6, -2, 6)
							elseif currentAuraPattern == "Text" then
								computedDestCFrame = coreCenter * CFrame.new(math.sin(mathAngle) * 11, 5 + math.cos(tick()), math.cos(mathAngle) * 11)
							end
							
							pcall(function()
								targetPart.CFrame = computedDestCFrame
								targetPart.AssemblyLinearVelocity = Vector3.new(0,0,0)
								targetPart.AssemblyAngularVelocity = Vector3.new(0,0,0)
							end)
						end

						if masterPhysicsScanActive then
							if enableCanCollideModification then
								pcall(function() targetPart.CanCollide = objectCanCollideOverride end)
							end

							if enableMasslessModification then
								pcall(function() targetPart.Massless = objectMasslessOverride end)
							end

							if antiGravityActive then
								pcall(function()
									targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity + Vector3.new(0, Workspace.Gravity * 1.05 * physicsUpdateInterval, 0)
								end)
							end

							if objectVelocityMultiplier ~= 1.0 then
								pcall(function()
									targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity * objectVelocityMultiplier
								end)
							end

							if continuousSpinActive and targetPart ~= tkTargetPart then
								pcall(function()
									targetPart.AssemblyAngularVelocity = Vector3.new(continuousSpinSpeedX, continuousSpinSpeedY, continuousSpinSpeedZ)
								end)
							end

							if glitchJitterActive then
								pcall(function()
									local shakeX = math.random(-45, 45)
									local shakeY = math.random(-45, 45)
									local shakeZ = math.random(-45, 45)
									targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity + Vector3.new(shakeX, shakeY, shakeZ)
								end)
							end

							if sizeFlickerActive then
								pcall(function()
									if not targetPart:FindFirstChild("ZenithOriginalSize") then
										local orig = Instance.new("Vector3Value")
										orig.Name = "ZenithOriginalSize"
										orig.Value = targetPart.Size
										orig.Parent = targetPart
									end
									local pulseScale = (math.sin(tick() * 12) > 0) and 2.2 or 0.4
									targetPart.Size = targetPart.ZenithOriginalSize.Value * pulseScale
								end)
							end

							if timeBombActive and not targetPart:FindFirstChild("ZenithBombArmed") then
								pcall(function()
									local armMark = Instance.new("BoolValue")
									armMark.Name = "ZenithBombArmed"
									armMark.Parent = targetPart
									
									task.delay(timeBombDelay, function()
										if targetPart and targetPart.Parent and not targetPart.Anchored then
											targetPart.AssemblyLinearVelocity = Vector3.new(math.random(-250, 250), math.random(150, 350), math.random(-250, 250))
											local expInstance = Instance.new("Explosion")
											expInstance.BlastRadius = 0
											expInstance.Position = targetPart.Position
											expInstance.Parent = Workspace
											
											task.wait(0.5)
											if targetPart and targetPart:FindFirstChild("ZenithBombArmed") then
												targetPart.ZenithBombArmed:Destroy()
											end
										end
									end)
								end)
							end

							if vehicleSpeedHackActive and not seatPart and not vehicleFlyActive then
								local modelParent = targetPart:FindFirstAncestorOfClass("Model")
								if modelParent then
									local seat = modelParent:FindFirstChildOfClass("VehicleSeat")
									if seat or targetPart.Name:lower():find("wheel") or targetPart.Name:lower():find("tire") then
										pcall(function()
											if seat and seat.Throttle ~= 0 then
												targetPart.AssemblyLinearVelocity = seat.CFrame.LookVector * targetVehicleSpeedValue * seat.Throttle
											elseif targetPart.AssemblyLinearVelocity.Magnitude > 2 then
												targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity.Unit * targetVehicleSpeedValue
											end
										end)
									end
								end
							end

							if (objectTargetSizeMultiplier ~= 1.0 or sliderMultiplier ~= 1.0) and not sizeFlickerActive then
								pcall(function()
									if not targetPart:FindFirstChild("ZenithOriginalSize") then
										local orig = Instance.new("Vector3Value")
										orig.Name = "ZenithOriginalSize"
										orig.Value = targetPart.Size
										orig.Parent = targetPart
									end
									targetPart.Size = targetPart.ZenithOriginalSize.Value * (objectTargetSizeMultiplier * sliderMultiplier)
								end)
							end

							if visualHighlightsActive then
								pcall(function()
									if not targetPart:FindFirstChildOfClass("Highlight") then
										local hl = Instance.new("Highlight")
										hl.Name = "ZenithOutlineGlow"
										hl.FillColor = Color3.fromRGB(130, 0, 255)
										hl.OutlineColor = Color3.fromRGB(0, 255, 230)
										hl.FillTransparency = 0.6
										hl.OutlineTransparency = 0
										hl.Adornee = targetPart
										hl.Parent = targetPart
									end
								end)
							else
								local existingGlow = targetPart:FindFirstChild("ZenithOutlineGlow")
								if existingGlow then pcall(function() existingGlow:Destroy() end) end
							end

							pcall(function()
								local targetDensity = currentFrictionValue
								if overrideObjectDensityActive then
									targetDensity = objectCustomDensityValue
								else
									local fallbackProps = targetPart.CurrentPhysicalProperties or PhysicalProperties.new(targetPart.Material)
									targetDensity = fallbackProps.Density
								end
								
								targetPart.CustomPhysicalProperties = PhysicalProperties.new(
									targetDensity,
									currentFrictionValue,
									currentBouncinessValue,
									100,
									100
								)
							end)

							if objectColorMode ~= "Static" or objectStaticColor3 ~= Color3.fromRGB(255,255,255) then
								pcall(function()
									if objectColorMode == "Static" then
										targetPart.Color = objectStaticColor3
									elseif objectColorMode == "Rainbow" then
										targetPart.Color = Color3.fromHSV(tick() % 4 / 4, 1, 1)
									elseif objectColorMode == "Disco" then
										targetPart.Color = Color3.fromRGB(math.random(0,255), math.random(0,255), math.random(0,255))
									end
								end)
							end

							if collisionVaporizerActive and not targetPart:FindFirstChild("ZenithKillHook") then
								pcall(function()
									local hook = Instance.new("BoolValue")
									hook.Name = "ZenithKillHook"
									hook.Parent = targetPart
									
									local connection
									connection = targetPart.Touched:Connect(function(hit)
										if hit and hit ~= targetPart and not hit:IsDescendantOf(lPlayer.Character) then
											pcall(function() targetPart:Destroy() end)
											connection:Disconnect()
										end
									end)
								end)
							end

							if objectTargetTransparency > 0 then
								pcall(function() targetPart.Transparency = objectTargetTransparency end)
							end

							if objectZeroGActive and targetPart ~= tkTargetPart then
								targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity + Vector3.new(0, Workspace.Gravity * 0.98 * physicsUpdateInterval, 0)
							end
							
							if (combinedWindVectorY > 0 or combinedWindVectorX > 0 or combinedWindVectorZ > 0) and targetPart ~= tkTargetPart then
								targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity + Vector3.new(
									combinedWindVectorX * physicsUpdateInterval, 
									combinedWindVectorY * physicsUpdateInterval, 
									combinedWindVectorZ * physicsUpdateInterval
								)
							end
							
							if objectTransmuteMaterial ~= "Default" then
								pcall(function() targetPart.Material = Enum.Material[objectTransmuteMaterial] end)
							end
							
							if continuousObjectDampening > 0 and targetPart ~= tkTargetPart then
								local dampeningScaleFactor = 1 - (continuousObjectDampening / 100)
								targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity * dampeningScaleFactor
								targetPart.AssemblyAngularVelocity = targetPart.AssemblyAngularVelocity * dampeningScaleFactor
							end

							if enableOrbitSatellites and targetPart ~= tkTargetPart then
								local diffVector = (targetPart.Position - rootPart.Position)
								local dist2D = Vector3.new(diffVector.X, 0, diffVector.Z).Magnitude
								if dist2D > 2 then
									local speedMultiplier = 25
									local orbitForceVector = Vector3.new(-diffVector.Z, 0, diffVector.X).Unit * speedMultiplier
									local pullingForceVector = -diffVector.Unit * 8
									targetPart.AssemblyLinearVelocity = Vector3.new(orbitForceVector.X + pullingForceVector.X, targetPart.AssemblyLinearVelocity.Y + 2, orbitForceVector.Z + pullingForceVector.Z)
								end
							end
							
							if kineticPulseForce ~= 0 and targetPart ~= tkTargetPart then
								local directionalPulseVector = Vector3.new(0, 0, 0)
								
								if kineticPulseDirection == "Outward" then
									directionalPulseVector = (targetPart.Position - rootPart.Position).Unit
								elseif kineticPulseDirection == "Inward" then
									directionalPulseVector = (rootPart.Position - targetPart.Position).Unit
								elseif kineticPulseDirection == "Skyward Absolute" then
									directionalPulseVector = Vector3.new(0, 1, 0)
								elseif kineticPulseDirection == "Chaotic Random" then
									directionalPulseVector = Vector3.new(math.random(-10,10), math.random(-5,10), math.random(-10,10)).Unit
								elseif kineticPulseDirection == "Seismic Tremor" then
									local waveFreq = tick() * 4
									local dist = (targetPart.Position - rootPart.Position).Magnitude
									local sinWave = math.sin(waveFreq - (dist * 0.25)) * 15
									directionalPulseVector = (targetPart.Position - rootPart.Position).Unit + Vector3.new(0, sinWave, 0)
								end
								
								if targetPart.Position == rootPart.Position then
									directionalPulseVector = Vector3.new(0, 1, 0)
								end
								targetPart.AssemblyLinearVelocity = targetPart.AssemblyLinearVelocity + (directionalPulseVector * kineticPulseForce * 15 * physicsUpdateInterval)
							end
						end
					end
				end
			end
		end
	end
end)

-- BOUNCINESS ENGINE
runServiceRef.RenderStepped:Connect(function()
	local clockTime = tick()
	if bouncinessPickerMode == "Wave Oscillation" then
		currentBouncinessValue = ((math.sin(clockTime * 2.5) + 1) / 2) * 2
	elseif bouncinessPickerMode == "Glitch Chaos" then
		currentBouncinessValue = math.random(0, 200) / 100
	end
end)

-- CLEANUP PLAYER LEAVE LISTENERS
Players.PlayerRemoving:Connect(function(player)
	RemoveEspObjects(player)
end)


-- =============================================================
-- RAYFIELD INTERFACE LAYERS (COMPLETE 9-TAB FRAMEWORK)
-- =============================================================
local Window = Rayfield:CreateWindow({
	Name = "Zenith Sandbox Engine",
	LoadingTitle = "Zenith Engine Systems",
	LoadingSubtitle = "Maximum Utility Suite Loaded",
	ConfigurationSaving = { Enabled = true },
	KeySystem = false
})

local TabInfo = Window:CreateTab("Information")
local TabPlayerMods = Window:CreateTab("Player Tweaks")
local TabEsp = Window:CreateTab("ESP")
local TabObjectMods = Window:CreateTab("Object Tweaks")
local TabFE = Window:CreateTab("FE Matrix")
local TabVehicles = Window:CreateTab("Vehicle Mods") 
local TabTelekinesis = Window:CreateTab("Telekinesis Advanced")
local TabGravity = Window:CreateTab("Gravity Settings")
local TabSafety = Window:CreateTab("Safety Settings")

-- =============================================================
-- TAB CONFIGURATION: INFORMATION
-- =============================================================
TabInfo:CreateSection("Script Status")
TabInfo:CreateLabel("Welcome to Zenith Sandbox Engine v3.1")
TabInfo:CreateLabel("All modifications execute locally through advanced network simulation mechanics.")

TabInfo:CreateSection("Control Shortcuts")
TabInfo:CreateLabel("Telekinesis: Hold [Q] while looking at an object to grab and drag it!")
TabInfo:CreateLabel("Item Claim: Hold [Ctrl] + Left Click on any unanchored part to sync control!")

-- ADDED INTERACTIVE SECTION: AI & SERVER AUTOMATION METRICS
TabInfo:CreateSection("AI & Server Automation")

TabInfo:CreateButton({
	Name = "💬 Tell Server Runtime on Chat",
	Callback = function()
		local totalSeconds = math.floor(Workspace.DistributedGameTime)
		local hours = math.floor(totalSeconds / 3600)
		local minutes = math.floor((totalSeconds % 3600) / 60)
		local seconds = totalSeconds % 60
		local formattedTime = string.format("%dh %dm %ds", hours, minutes, seconds)
		
		UniversalChatBroadcast("[Zenith Systems Telemetry]: Current Instance Runtime: " .. formattedTime)
	end
})

TabInfo:CreateToggle({
	Name = "🤖 Enable Automated AI Bot Broadcaster",
	CurrentValue = false,
	Callback = function(val)
		aiBotActive = val
		Rayfield:Notify({ Title = "AI Bot Systems", Content = "Automated environment status analysis is now " .. (val and "ACTIVE" or "OFF"), Duration = 2 })
	end
})

TabInfo:CreateButton({
	Name = "🧠 Request AI Hack Strategy Recommendation",
	Callback = function()
		local strategies = {
			"Tip: Couple 'Glitch Jitter' with high gravity to build quick dynamic launchpads.",
			"Strategy: Turn on Network Claim Aura prior to deploying Telekinesis to avoid latency drops.",
			"Tip: Zero Friction drift mode acts best when local directional wind vectors are cleared.",
			"Strategy: Toggle Invisible Seating while driving vehicle flight models for clean aesthetic views."
		}
		local pick = strategies[math.random(1, #strategies)]
		Rayfield:Notify({ Title = "AI Strategy Module", Content = pick, Duration = 4.5 })
	end
})

TabInfo:CreateButton({
	Name = "⚡ Client FPS Optimization Matrix",
	Callback = function()
		local counter = 0
		for _, object in ipairs(Workspace:GetDescendants()) do
			if object:IsA("Decal") or object:IsA("Texture") then
				object:Destroy()
				counter = counter + 1
			elseif object:IsA("ParticleEmitter") or object:IsA("Trail") or object:IsA("Sparkles") then
				object.Enabled = false
				counter = counter + 1
			end
		end
		Rayfield:Notify({ Title = "Performance Cleaned", Content = "Purged or optimized " .. tostring(counter) .. " graphic rendering resources successfully.", Duration = 3 })
	end
})

TabInfo:CreateButton({
	Name = "🔄 Instant Server Rejoin Instance",
	Callback = function()
		pcall(function()
			game:GetService("TeleportService"):Teleport(game.PlaceId, lPlayer)
		end)
	end
})

TabInfo:CreateButton({
	Name = "🌌 Hyperdimensional Public Server Hop",
	Callback = function()
		local teleportService = game:GetService("TeleportService")
		local httpService = game:GetService("HttpService")
		pcall(function()
			local rawData = game:HttpGet("https://games.roblox.com/v1/games/" .. game.PlaceId .. "/servers/Public?sortOrder=Asc&limit=100")
			local converted = httpService:JSONDecode(rawData)
			for _, instance in ipairs(converted.data) do
				if instance.playing < instance.maxPlayers and instance.id ~= game.JobId then
					teleportService:TeleportToPlaceInstance(game.PlaceId, instance.id, lPlayer)
					break
				end
			end
		end)
	end
})

TabInfo:CreateSection("Credits & Framework")
TabInfo:CreateLabel("Engine Pipeline: Developed by Zenith Infrastructure")
TabInfo:CreateLabel("Interface Suite: Rendered using Sirius Rayfield Matrix")

-- =============================================================
-- TAB CONFIGURATION: PLAYER TWEAKS
-- =============================================================
TabPlayerMods:CreateSection("Character Enhancements")

TabPlayerMods:CreateToggle({
	Name = "Enable Custom Walk Speed",
	CurrentValue = false,
	Callback = function(val) 
		enableCustomPlayerSpeed = val 
	end
})

TabPlayerMods:CreateSlider({
	Name = "Custom Walk Speed Velocity",
	Range = {16, 500},
	Increment = 2,
	CurrentValue = 16,
	Callback = function(val)
		customWalkSpeed = val
		handleSliderLogging("WalkSpeed", val)
	end
})

TabPlayerMods:CreateToggle({
	Name = "Enable Custom Jump Power",
	CurrentValue = false,
	Callback = function(val) 
		enableCustomPlayerJump = val 
	end
})

TabPlayerMods:CreateSlider({
	Name = "Custom Jump Power Strength",
	Range = {0, 600},
	Increment = 5,
	CurrentValue = 50,
	Callback = function(val)
		customJumpPower = val
		handleSliderLogging("JumpPower", val)
	end
})

TabPlayerMods:CreateSection("Advanced Mechanics")

TabPlayerMods:CreateToggle({
	Name = "Enable Invisible Seating (Float Over Seats)",
	CurrentValue = false,
	Callback = function(val)
		invisibleSeatingActive = val
	end
})

TabPlayerMods:CreateToggle({
	Name = "Enable Click Teleport (Ctrl + Left Click To Snap)",
	CurrentValue = false,
	Callback = function(val)
		clickTeleportActive = val
	end
})

TabPlayerMods:CreateToggle({
	Name = "Enable Infinite Jump",
	CurrentValue = false,
	Callback = function(val)
		infiniteJumpActive = val
	end
})

TabPlayerMods:CreateToggle({
	Name = "Enable Character Noclip Mode",
	CurrentValue = false,
	Callback = function(val)
		noclipActive = val
	end
})

TabPlayerMods:CreateToggle({
	Name = "Force Custom Third Person Camera View",
	CurrentValue = false,
	Callback = function(val)
		thirdPersonActive = val
		if not val then
			lPlayer.CameraMaxZoomDistance = 400
			lPlayer.CameraMinZoomDistance = 0.5
		end
	end
})

TabPlayerMods:CreateSection("Flight Framework")

TabPlayerMods:CreateToggle({
	Name = "Enable Local Player Flight Mode",
	CurrentValue = false,
	Callback = function(val) 
		playerFlyActive = val
		if not val and lPlayer.Character and lPlayer.Character:FindFirstChild("HumanoidRootPart") then
			lPlayer.Character.HumanoidRootPart.AssemblyLinearVelocity = Vector3.new(0,0,0)
		end
	end
})

TabPlayerMods:CreateSlider({
	Name = "Player Flight Cruise Speed",
	Range = {10, 500},
	Increment = 5,
	CurrentValue = 50,
	Callback = function(val) 
		playerFlySpeed = val 
	end
})

-- =============================================================
-- TAB CONFIGURATION: ESP (NEW TAB)
-- =============================================================
TabEsp:CreateSection("Master Switch")

TabEsp:CreateToggle({
	Name = "Enable Sensory ESP Master Switch",
	CurrentValue = false,
	Callback = function(val)
		EspConfig.Enabled = val
		if not val then
			for _, player in ipairs(Players:GetPlayers()) do
				RemoveEspObjects(player)
			end
		end
	end
})

TabEsp:CreateSection("Visual Features")

TabEsp:CreateToggle({
	Name = "Show 2D Bounding Boxes",
	CurrentValue = false,
	Callback = function(val) EspConfig.Boxes = val end
})

TabEsp:CreateToggle({
	Name = "Show Screen Snap Tracers",
	CurrentValue = false,
	Callback = function(val) EspConfig.Tracers = val end
})

TabEsp:CreateToggle({
	Name = "Show R15 Joint Skeletons",
	CurrentValue = false,
	Callback = function(val) EspConfig.Skeletons = val end
})

TabEsp:CreateToggle({
	Name = "Show Circular Head Rings",
	CurrentValue = false,
	Callback = function(val) EspConfig.CircleHeads = val end
})

TabEsp:CreateSection("Metadata & Statistics")

TabEsp:CreateToggle({
	Name = "Display Target Name Fields",
	CurrentValue = false,
	Callback = function(val) EspConfig.Name = val end
})

TabEsp:CreateToggle({
	Name = "Display Calculated Vector Distance",
	CurrentValue = false,
	Callback = function(val) EspConfig.Distance = val end
})

TabEsp:CreateToggle({
	Name = "Display Dynamic Health Value Bars",
	CurrentValue = false,
	Callback = function(val) EspConfig.Health = val end
})

TabEsp:CreateSection("Render Configurations")

TabEsp:CreateSlider({
	Name = "Line Vector Thickness",
	Range = {1, 5},
	Increment = 0.5,
	CurrentValue = 1.5,
	Callback = function(val) EspConfig.Thickness = val end
})

TabEsp:CreateDropdown({
	Name = "Render Color Mode Profile",
	Options = {"Static", "Rainbow", "Blinking"},
	CurrentOption = {"Static"},
	Callback = function(selection) EspConfig.ColorMode = selection[1] end
})

TabEsp:CreateColorPicker({
	Name = "Custom Base Static Color",
	Color = Color3.fromRGB(130, 0, 255),
	Callback = function(color) EspConfig.StaticColor = color end
})

-- =============================================================
-- TAB CONFIGURATION: OBJECT TWEAKS
-- =============================================================
TabObjectMods:CreateSection("Quick Actions")

TabObjectMods:CreateToggle({
	Name = "Enable Automated Object Ownership Spammer",
	CurrentValue = false,
	Callback = function(val)
		autoOwnershipActive = val
	end
})

TabObjectMods:CreateButton({
	Name = "⚡ Bring All Nearby Objects to Me",
	Callback = function()
		if lPlayer and lPlayer.Character and lPlayer.Character:FindFirstChild("HumanoidRootPart") then
			local rootPart = lPlayer.Character.HumanoidRootPart
			local boundaryOverlapParams = OverlapParams.new()
			boundaryOverlapParams.FilterType = Enum.RaycastFilterType.Exclude
			boundaryOverlapParams.FilterDescendantsInstances = {lPlayer.Character}
			local detectedSpatialParts = Workspace:GetPartBoundsInRadius(rootPart.Position, environmentalScanRadius, boundaryOverlapParams)
			local count = 0
			for _, targetPart in ipairs(detectedSpatialParts) do
				if targetPart:IsA("BasePart") and not targetPart.Anchored and targetPart.Name ~= "Terrain" then
					local partNameLower = targetPart.Name:lower()
					local isFloorStructure = partNameLower:find("floor") or partNameLower:find("baseplate") or partNameLower:find("ground")
					if not isFloorStructure then
						pcall(function()
							targetPart.CFrame = rootPart.CFrame * CFrame.new(0, 0, -4)
							count = count + 1
						end)
					end
				end
			end
			Rayfield:Notify({ Title = "Objects Pulled", Content = "Pulled " .. tostring(count) .. " unanchored objects.", Duration = 3 })
		end
	end
})

TabObjectMods:CreateButton({
	Name = "❌ Destroy All Nearby Objects",
	Callback = function()
		if lPlayer and lPlayer.Character and lPlayer.Character:FindFirstChild("HumanoidRootPart") then
			local rootPart = lPlayer.Character.HumanoidRootPart
			local boundaryOverlapParams = OverlapParams.new()
			boundaryOverlapParams.FilterType = Enum.RaycastFilterType.Exclude
			boundaryOverlapParams.FilterDescendantsInstances = {lPlayer.Character}
			local detectedSpatialParts = Workspace:GetPartBoundsInRadius(rootPart.Position, environmentalScanRadius, boundaryOverlapParams)
			local count = 0
			for _, targetPart in ipairs(detectedSpatialParts) do
				if targetPart:IsA("BasePart") and targetPart.Name ~= "Terrain" then
					local partNameLower = targetPart.Name:lower()
					local isFloorStructure = partNameLower:find("floor") or partNameLower:find("baseplate") or partNameLower:find("ground")
					if not isFloorStructure and not targetPart.Anchored then
						pcall(function()
							targetPart:Destroy()
							count = count + 1
						end)
					end
				end
			end
			Rayfield:Notify({ Title = "Objects Destroyed", Content = "Removed " .. tostring(count) .. " parts from the game.", Duration = 3 })
		end
	end
})

TabObjectMods:CreateSection("Experimental Gravitation Physics")

TabObjectMods:CreateToggle({
	Name = "Enable Object Vacuum (Lock to Overhead Hover)",
	CurrentValue = false,
	Callback = function(val)
		objectVacuumActive = val
	end
})

TabObjectMods:CreateToggle({
	Name = "Enable Explosive Collisions (Cosmetic Blast on Impact)",
	CurrentValue = false,
	Callback = function(val)
		explosiveCollisionsActive = val
	end
})

TabObjectMods:CreateToggle({
	Name = "Enable Permanent Network Ownership Claim Aura",
	CurrentValue = false,
	Callback = function(val)
		networkOwnershipClaimAuraActive = val
	end
})

TabObjectMods:CreateSection("Object Trajectory Pathfinder")

TabObjectMods:CreateToggle({
	Name = "Enable Future Trajectory Pathfinder Lines",
	CurrentValue = false,
	Callback = function(val)
		objectPathfinderActive = val
		if not val then
			if Workspace:FindFirstChild("ZenithPathfinderFolder") then
				Workspace.ZenithPathfinderFolder:ClearAllChildren()
			end
			if lastTrackedPart then
				pcall(function()
					local oldTag = lastTrackedPart:FindFirstChild("ZenithObjectTag")
					if oldTag then oldTag:Destroy() end
				end)
				lastTrackedPart = nil
			end
		end
	end
})

TabObjectMods:CreateSection("Toys Drawing Aura Suite")

TabObjectMods:CreateDropdown({
	Name = "Active Visual Aura Template",
	Options = {"None", "Heart", "Box", "Circle", "Text", "Pet", "Wings"},
	CurrentOption = {"None"},
	Callback = function(selection)
		currentAuraPattern = selection[1]
	end
})

TabObjectMods:CreateSection("Global Object Settings")

TabObjectMods:CreateToggle({
	Name = "Enable Object Modding Loop",
	CurrentValue = false,
	Callback = function(val) 
		masterPhysicsScanActive = val 
	end
})

TabObjectMods:CreateToggle({
	Name = "Enable Object Highlights (Purple/Teal Glow)",
	CurrentValue = false,
	Callback = function(val) 
		visualHighlightsActive = val 
	end
})

TabObjectMods:CreateSlider({
	Name = "Modding Radius Size",
	Range = {5, 1000},
	Increment = 5,
	CurrentValue = 250,
	Callback = function(val) 
		environmentalScanRadius = val 
	end
})

TabObjectMods:CreateToggle({
	Name = "Make Objects Orbit Around You",
	CurrentValue = false,
	Callback = function(val) 
		enableOrbitSatellites = val 
	end
})

TabObjectMods:CreateDropdown({
	Name = "Target Selection Filter",
	Options = {"All Dynamic Parts", "Only Unanchored Parts", "Only Heavy Parts (>15 Mass)", "Only Light Parts (<15 Mass)"},
	CurrentOption = {"All Dynamic Parts"},
	Callback = function(selection) 
		objectAffectedFilter = selection[1] 
	end
})

TabObjectMods:CreateToggle({
	Name = "Enable 10x Slider Max Range Overdrive",
	CurrentValue = false,
	Callback = function(val)
		if val then
			sliderMultiplier = 10.0
		else
			sliderMultiplier = 1.0
		end
		Rayfield:Notify({Title = "System Update", Content = "Overdrive Multiplier set to " .. tostring(sliderMultiplier) .. "x", Duration = 2})
	end
})

TabObjectMods:CreateSlider({
	Name = "Object Size Multiplier",
	Range = {1, 25},
	Increment = 1,
	CurrentValue = 1,
	Callback = function(val) 
		objectTargetSizeMultiplier = val 
	end
})

TabObjectMods:CreateSection("Physical Constant Material Overrides")

TabObjectMods:CreateToggle({
	Name = "Override Object Density Settings",
	CurrentValue = false,
	Callback = function(val) 
		overrideObjectDensityActive = val 
	end
})

TabObjectMods:CreateSlider({
	Name = "Custom Object Density Weight",
	Range = {0, 100},
	Increment = 1,
	CurrentValue = 7,
	Callback = function(val) 
		objectCustomDensityValue = val / 10 
		handleSliderLogging("Density Weight", val / 10)
	end
})

TabObjectMods:CreateSlider({
	Name = "Custom Object Friction Coefficient",
	Range = {0, 200},
	Increment = 1,
	CurrentValue = 50,
	Callback = function(val) 
		currentFrictionValue = val / 100 
		handleSliderLogging("Friction Coefficient", val / 100)
	end
})

TabObjectMods:CreateDropdown({
	Name = "Bounciness Calculation Profile",
	Options = {"Static", "Wave Oscillation", "Glitch Chaos"},
	CurrentOption = {"Static"},
	Callback = function(selection) 
		bouncinessPickerMode = selection[1] 
	end
})

TabObjectMods:CreateSlider({
	Name = "Custom Object Elastic Bounciness",
	Range = {0, 200},
	Increment = 1,
	CurrentValue = 50,
	Callback = function(val) 
		currentBouncinessValue = val / 100 
		handleSliderLogging("Bounciness Value", val / 100)
	end
})

TabObjectMods:CreateToggle({
	Name = "Enable Absolute Zero-G Float State",
	CurrentValue = false,
	Callback = function(val) 
		objectZeroGActive = val 
	end
})

TabObjectMods:CreateDropdown({
	Name = "Transmute Base Material Property",
	Options = {"Default", "Neon", "Plastic", "Glass", "DiamondPlate", "Wood", "Metal", "SmoothPlastic"},
	CurrentOption = {"Default"},
	Callback = function(selection) 
		objectTransmuteMaterial = selection[1] 
	end
})

TabObjectMods:CreateSection("Visual Enhancements & Collision Rules")

TabObjectMods:CreateDropdown({
	Name = "Object Color Mode",
	Options = {"Static", "Rainbow", "Disco"},
	CurrentOption = {"Static"},
	Callback = function(selection) 
		objectColorMode = selection[1] 
	end
})

TabObjectMods:CreateColorPicker({
	Name = "Custom Object Static Color",
	Color = Color3.fromRGB(255,255,255),
	Callback = function(color) 
		objectStaticColor3 = color 
	end
})

TabObjectMods:CreateToggle({
	Name = "Enable Touch to Destroy (Instant Killer Mode)",
	CurrentValue = false,
	Callback = function(val) 
		collisionVaporizerActive = val 
	end
})

TabObjectMods:CreateToggle({
	Name = "Modify Nearby Object CanCollide Status",
	CurrentValue = false,
	Callback = function(val) 
		enableCanCollideModification = val 
	end
})

TabObjectMods:CreateToggle({
	Name = "Target Object Solid Collision (CanCollide)",
	CurrentValue = true,
	Callback = function(val) 
		objectCanCollideOverride = val 
	end
})

TabObjectMods:CreateToggle({
	Name = "Modify Nearby Object Massless Property",
	CurrentValue = false,
	Callback = function(val) 
		enableMasslessModification = val 
	end
})

TabObjectMods:CreateToggle({
	Name = "Target Object Massless State",
	CurrentValue = false,
	Callback = function(val) 
		objectMasslessOverride = val 
	end
})

TabObjectMods:CreateSlider({
	Name = "Object Transparency Alpha Rendering",
	Range = {0, 1},
	Increment = 0.05,
	CurrentValue = 0,
	Callback = function(val) 
		objectTargetTransparency = val 
	end
})

TabObjectMods:CreateSection("Continuous Spin & Forces")

TabObjectMods:CreateToggle({
	Name = "Enable Continuous Spin on Objects",
	CurrentValue = false,
	Callback = function(val) 
		continuousSpinActive = val 
	end
})

TabObjectMods:CreateSlider({
	Name = "Continuous Spin Speed X Axis",
	Range = {-100, 100},
	Increment = 1,
	CurrentValue = 0,
	Callback = function(val) 
		continuousSpinSpeedX = val 
	end
})

TabObjectMods:CreateSlider({
	Name = "Continuous Spin Speed Y Axis",
	Range = {-100, 100},
	Increment = 1,
	CurrentValue = 12,
	Callback = function(val) 
		continuousSpinSpeedY = val 
	end
})

TabObjectMods:CreateSlider({
	Name = "Continuous Spin Speed Z Axis",
	Range = {-100, 100},
	Increment = 1,
	CurrentValue = 0,
	Callback = function(val) 
		continuousSpinSpeedZ = val 
	end
})

TabObjectMods:CreateSlider({
	Name = "Object Velocity Multiplier Factor",
	Range = {0, 10},
	Increment = 0.1,
	CurrentValue = 1,
	Callback = function(val) 
		objectVelocityMultiplier = val 
	end
})

TabObjectMods:CreateSlider({
	Name = "Continuous Object Dampening Matrix",
	Range = {0, 100},
	Increment = 1,
	CurrentValue = 0,
	Callback = function(val) 
		continuousObjectDampening = val 
	end
})

TabObjectMods:CreateToggle({
	Name = "Forcefully Unanchor Surrounding Objects",
	CurrentValue = false,
	Callback = function(val) 
		forcefullyUnanchorObjects = val 
	end
})

TabObjectMods:CreateToggle({
	Name = "Freeze Nearby Objects In Place",
	CurrentValue = false,
	Callback = function(val) 
		freezeNearbyObjectsActive = val 
	end
})

TabObjectMods:CreateSection("Kinetic Shockwave Impulse")

TabObjectMods:CreateSlider({
	Name = "Kinetic Shockwave Pulse Force",
	Range = {-500, 500},
	Increment = 5,
	CurrentValue = 0,
	Callback = function(val) 
		kineticPulseForce = val 
	end
})

TabObjectMods:CreateDropdown({
	Name = "Kinetic Shockwave Direction Profile",
	Options = {"Outward", "Inward", "Skyward Absolute", "Chaotic Random", "Seismic Tremor"},
	CurrentOption = {"Outward"},
	Callback = function(selection) 
		kineticPulseDirection = selection[1] 
	end
})

TabObjectMods:CreateSection("Target Scanner Custom Hotkeys")

TabObjectMods:CreateKeybind({
	Name = "Anchor Object You are Looking At",
	CurrentKeybind = "F",
	HoldToInteract = false,
	Flag = "Keybind_AnchorOne",
	Callback = function()
		if keybindsDisabled then return end
		local spottedPart = PerformRaycastTargetScan()
		if spottedPart then
			pcall(function() spottedPart.Anchored = true end)
			Rayfield:Notify({ Title = "Object Anchored", Content = "Locked: " .. spottedPart.Name, Duration = 2 })
		end
	end
})

TabObjectMods:CreateKeybind({
	Name = "Unanchor Object You are Looking At",
	CurrentKeybind = "G",
	HoldToInteract = false,
	Flag = "Keybind_UnanchorOne",
	Callback = function()
		if keybindsDisabled then return end
		local spottedPart = PerformRaycastTargetScan()
		if spottedPart then
			pcall(function() spottedPart.Anchored = false end)
			Rayfield:Notify({ Title = "Object Unanchor", Content = "Released: " .. spottedPart.Name, Duration = 2 })
		end
	end
})

TabObjectMods:CreateKeybind({
	Name = "Launch Target Object Skyward",
	CurrentKeybind = "B",
	HoldToInteract = false,
	Flag = "Keybind_LaunchOne",
	Callback = function()
		if keybindsDisabled then return end
		local spottedPart = PerformRaycastTargetScan()
		if spottedPart then
			pcall(function()
				spottedPart.Anchored = false
				spottedPart.AssemblyLinearVelocity = Vector3.new(0, 350, 0)
			end)
			Rayfield:Notify({ Title = "Object Launched", Content = "Sent " .. spottedPart.Name .. " straight up!", Duration = 2 })
		end
	end
})

TabObjectMods:CreateKeybind({
	Name = "Delete Object You are Looking At",
	CurrentKeybind = "X",
	HoldToInteract = false,
	Flag = "Keybind_DeleteTargetCrosshair",
	Callback = function()
		if keybindsDisabled then return end
		local spottedPart = PerformRaycastTargetScan()
		if spottedPart then
			pcall(function()
				local structuralModel = spottedPart:FindFirstAncestorOfClass("Model")
				if structuralModel and not Players:GetPlayerFromCharacter(structuralModel) and structuralModel ~= Workspace then
					structuralModel:Destroy()
				else
					spottedPart:Destroy()
				end
			end)
			Rayfield:Notify({ Title = "Object Destroyed", Content = "Purged target structural node safely.", Duration = 2 })
		end
	end
})

TabObjectMods:CreateKeybind({
	Name = "Fling Object in Camera Direction",
	CurrentKeybind = "Z",
	HoldToInteract = false,
	Flag = "Keybind_FlingCameraRelative",
	Callback = function()
		if keybindsDisabled then return end
		local spottedPart = PerformRaycastTargetScan()
		if spottedPart then
			pcall(function()
				spottedPart.Anchored = false
				local cameraLook = Workspace.CurrentCamera.CFrame.LookVector
				spottedPart.AssemblyLinearVelocity = cameraLook * 450
			end)
			Rayfield:Notify({ Title = "Object Flung", Content = "Shot " .. spottedPart.Name .. " forward!", Duration = 2 })
		end
	end
})

TabObjectMods:CreateKeybind({
	Name = "Turn Target Object to Neon",
	CurrentKeybind = "V",
	HoldToInteract = false,
	Flag = "Keybind_TransmuteOne",
	Callback = function()
		if keybindsDisabled then return end
		local spottedPart = PerformRaycastTargetScan()
		if spottedPart then
			pcall(function()
				spottedPart.Material = Enum.Material.Neon
			end)
			Rayfield:Notify({ Title = "Object Transmuted", Content = "Set " .. spottedPart.Name .. " to Neon!", Duration = 2 })
		end
	end
})

-- =============================================================
-- TAB CONFIGURATION: FE MATRIX
-- =============================================================
TabFE:CreateSection("Network Exploitation Simulation")

TabFE:CreateToggle({
	Name = "Enable Glitch Jitter Vibration",
	CurrentValue = false,
	Callback = function(val) 
		glitchJitterActive = val 
	end
})

TabFE:CreateToggle({
	Name = "Enable Size Flicker Oscillation",
	CurrentValue = false,
	Callback = function(val) 
		sizeFlickerActive = val 
	end
})

TabFE:CreateToggle({
	Name = "Enable Object Time Bomb Delays",
	CurrentValue = false,
	Callback = function(val) 
		timeBombActive = val 
	end
})

TabFE:CreateSlider({
	Name = "Time Bomb Countdown Timer",
	Range = {1, 30},
	Increment = 1,
	CurrentValue = 3,
	Callback = function(val) 
		timeBombDelay = val 
	end
})

-- =============================================================
-- TAB CONFIGURATION: VEHICLE MODS
-- =============================================================
TabVehicles:CreateSection("Vehicle Handling Subsystems")

TabVehicles:CreateToggle({
	Name = "Enable Auto-Flip Matrix (Never Stay Upside Down)",
	CurrentValue = false,
	Callback = function(val)
		autoFlipMatrixActive = val
	end
})

TabVehicles:CreateToggle({
	Name = "Enable Infinitely High Engine Torque",
	CurrentValue = false,
	Callback = function(val)
		infiniteTorqueActive = val
	end
})

TabVehicles:CreateToggle({
	Name = "Enable Vehicle Rainbow Gradient Changer",
	CurrentValue = false,
	Callback = function(val)
		vehicleRainbowActive = val
	end
})

TabVehicles:CreateLabel("💡 Hotkey Notice: Press [Z] to Emergency Brake and stop instantly.")

TabVehicles:CreateSection("Custom Visuals & Aesthetics")

TabVehicles:CreateToggle({
	Name = "Enable Static Vehicle Color",
	CurrentValue = false,
	Callback = function(val) 
		vehicleStaticColorActive = val 
	end
})

TabVehicles:CreateColorPicker({
	Name = "Custom Vehicle Color",
	Color = Color3.fromRGB(255, 255, 255),
	Callback = function(color) 
		vehicleStaticColor = color 
	end
})

TabVehicles:CreateToggle({
	Name = "Enable Custom Image/Decal Override",
	CurrentValue = false,
	Callback = function(val) 
		vehicleCustomImageActive = val 
	end
})

TabVehicles:CreateInput({
	Name = "Custom Image ID",
	PlaceholderText = "Paste Asset ID here...",
	RemoveTextAfterFocusLost = false,
	Callback = function(text) 
		vehicleCustomImageId = text 
	end
})

TabVehicles:CreateSection("Advanced Drift Mechanics")

TabVehicles:CreateToggle({
	Name = "Enable Drift Mode (Zero Friction)",
	CurrentValue = false,
	Callback = function(val) 
		vehicleDriftModeActive = val 
	end
})

TabVehicles:CreateSection("Vehicle Speed Hack Framework")

TabVehicles:CreateToggle({
	Name = "Enable Vehicle Speed Overrides",
	CurrentValue = false,
	Callback = function(val) 
		vehicleSpeedHackActive = val 
	end
})

TabVehicles:CreateSlider({
	Name = "Target Vehicle Cruise Velocity",
	Range = {10, 1000},
	Increment = 10,
	CurrentValue = 100,
	Callback = function(val) 
		targetVehicleSpeedValue = val 
	end
})

TabVehicles:CreateDropdown({
	Name = "Vehicle Input Drive Mode",
	Options = {"Hold", "Toggle"},
	CurrentOption = {"Hold"},
	Callback = function(selection) 
		vehicleMovementMode = selection[1] 
	end
})

TabVehicles:CreateSlider({
	Name = "Vehicle Turning Sensitivity Matrix",
	Range = {1, 20},
	Increment = 1,
	CurrentValue = 4,
	Callback = function(val) 
		vehicleTurnSpeed = val 
	end
})

TabVehicles:CreateSlider({
	Name = "Vehicle Structural Gravity Modifier",
	Range = {0, 500},
	Increment = 5,
	CurrentValue = 196,
	Callback = function(val) 
		customVehicleGravity = val 
	end
})

TabVehicles:CreateSlider({
	Name = "Vehicle Upward Jump Impulse",
	Range = {0, 300},
	Increment = 5,
	CurrentValue = 50,
	Callback = function(val) 
		vehicleJumpForce = val 
	end
})

TabVehicles:CreateSection("Vehicle Flight Subsystem")

TabVehicles:CreateDropdown({
	Name = "Vehicle Fly Engine Profile",
	Options = {"Static", "Tween", "VFly"},
	CurrentOption = {"Static"},
	Callback = function(selection) 
		vehicleFlyMode = selection[1] 
	end
})

TabVehicles:CreateToggle({
	Name = "Enable Full Vehicle Flight Mode",
	CurrentValue = false,
	Callback = function(val) 
		vehicleFlyActive = val 
	end
})

TabVehicles:CreateSlider({
	Name = "Vehicle Flight Cruise Velocity",
	Range = {10, 1000},
	Increment = 10,
	CurrentValue = 100,
	Callback = function(val) 
		vehicleFlySpeed = val 
	end
})

TabVehicles:CreateKeybind({
	Name = "Vehicle Fly Ascend Trigger",
	CurrentKeybind = "E",
	HoldToInteract = false,
	Flag = "VehicleFlyUpKey",
	Callback = function() end
})

TabVehicles:CreateKeybind({
	Name = "Vehicle Fly Descend Trigger",
	CurrentKeybind = "Q",
	HoldToInteract = false,
	Flag = "VehicleFlyDownKey",
	Callback = function() end
})

-- =============================================================
-- TAB CONFIGURATION: TELEKINESIS ADVANCED
-- =============================================================
TabTelekinesis:CreateSection("Core Telekinesis Configurations")

TabTelekinesis:CreateSlider({
	Name = "Hold Distance Offset Vector",
	Range = {5, 150},
	Increment = 5,
	CurrentValue = 30,
	Callback = function(val) 
		tkTargetDistance = val 
	end
})

TabTelekinesis:CreateToggle({
	Name = "Enable Mouse Guided Orbit Rotation",
	CurrentValue = false,
	Flag = "TK_RotationToggle",
	Callback = function() end
})

TabTelekinesis:CreateKeybind({
	Name = "Rotation Activation Modifier Key",
	CurrentKeybind = "LeftAlt",
	HoldToInteract = false,
	Flag = "TK_RotateKey",
	Callback = function() end
})

TabTelekinesis:CreateSection("Spinning & Kinetic Dynamics")

TabTelekinesis:CreateSlider({
	Name = "Continuous Rotation Spin X Axis",
	Range = {-20, 20},
	Increment = 1,
	CurrentValue = 0,
	Callback = function(val) 
		tkSpinX = val 
	end
})

TabTelekinesis:CreateSlider({
	Name = "Continuous Rotation Spin Y Axis",
	Range = {-20, 20},
	Increment = 1,
	CurrentValue = 0,
	Callback = function(val) 
		tkSpinY = val 
	end
})

TabTelekinesis:CreateSlider({
	Name = "Continuous Rotation Spin Z Axis",
	Range = {-20, 20},
	Increment = 1,
	CurrentValue = 0,
	Callback = function(val) 
		tkSpinZ = val 
	end
})

TabTelekinesis:CreateSection("Wave Form Fluctuations")

TabTelekinesis:CreateToggle({
	Name = "Enable Floating Wave Form Motion",
	CurrentValue = false,
	Callback = function(val) 
		tkWaveMotion = val 
	end
})

TabTelekinesis:CreateSlider({
	Name = "Wave Form Amplitude Scale",
	Range = {1, 50},
	Increment = 1,
	CurrentValue = 5,
	Callback = function(val) 
		tkWaveAmplitude = val 
	end
})

TabTelekinesis:CreateSlider({
	Name = "Wave Form Frequency Speed",
	Range = {1, 20},
	Increment = 1,
	CurrentValue = 5,
	Callback = function(val) 
		tkWaveSpeed = val 
	end
})

TabTelekinesis:CreateSection("Fling Mechanics")

TabTelekinesis:CreateToggle({
	Name = "Fling Held Objects On Release",
	CurrentValue = false,
	Callback = function(val) 
		tkFlingOnRelease = val 
	end
})

TabTelekinesis:CreateSlider({
	Name = "Object Fling Launch Impulse Force",
	Range = {100, 5000},
	Increment = 50,
	CurrentValue = 500,
	Callback = function(val) 
		tkFlingForce = val 
	end
})

-- =============================================================
-- TAB CONFIGURATION: GRAVITY SETTINGS
-- =============================================================
TabGravity:CreateSection("Global Environmental Vector Overrides")

TabGravity:CreateSlider({
	Name = "Global Base Workspace Gravity Index",
	Range = {0, 1000},
	Increment = 5,
	CurrentValue = 196,
	Callback = function(val) 
		currentGravityValue = val 
		handleSliderLogging("Global Gravity", val)
	end
})

TabGravity:CreateSlider({
	Name = "Upward/Downward External Velocity Vector",
	Range = {-500, 500},
	Increment = 5,
	CurrentValue = 0,
	Callback = function(val) 
		negativeGravityValue = val 
		handleSliderLogging("Y-Axis Velocity Vector", val)
	end
})

TabGravity:CreateToggle({
	Name = "Lock Character Local Gravity to Normal",
	CurrentValue = false,
	Callback = function(val) 
		keepOriginalGravity = val 
		SynchronizeLocalPlayerGravityRig()
	end
})

TabGravity:CreateSection("Asymmetric Directional Wind & Vector Forces")

TabGravity:CreateToggle({
	Name = "Maintain Character Lateral Stability State",
	CurrentValue = false,
	Callback = function(val) 
		keepDirectionalOriginalGravity = val 
		SynchronizeLocalPlayerGravityRig()
	end
})

TabGravity:CreateSlider({
	Name = "North Force Vector Strength",
	Range = {0, 600},
	Increment = 5,
	CurrentValue = 0,
	Callback = function(val) 
		northGravity = val 
		SynchronizeLocalPlayerGravityRig()
		handleSliderLogging("North Gravity Vector", val)
	end
})

TabGravity:CreateSlider({
	Name = "South Force Vector Strength",
	Range = {0, 600},
	Increment = 5,
	CurrentValue = 0,
	Callback = function(val) 
		southGravity = val 
		SynchronizeLocalPlayerGravityRig()
		handleSliderLogging("South Gravity Vector", val)
	end
})

TabGravity:CreateSlider({
	Name = "East Force Vector Strength",
	Range = {0, 600},
	Increment = 5,
	CurrentValue = 0,
	Callback = function(val) 
		eastGravity = val 
		SynchronizeLocalPlayerGravityRig()
		handleSliderLogging("East Gravity Vector", val)
	end
})

TabGravity:CreateSlider({
	Name = "West Force Vector Strength",
	Range = {0, 600},
	Increment = 5,
	CurrentValue = 0,
	Callback = function(val) 
		westGravity = val 
		SynchronizeLocalPlayerGravityRig()
		handleSliderLogging("West Gravity Vector", val)
	end
})

-- =============================================================
-- TAB CONFIGURATION: SAFETY SETTINGS
-- =============================================================
TabSafety:CreateSection("Input Safety Protocols")

TabSafety:CreateToggle({
	Name = "Temporarily Disable All Macro Keybinds",
	CurrentValue = false,
	Callback = function(val) 
		keybindsDisabled = val 
	end
})

TabSafety:CreateSection("Feedback & Logging Modes")

TabSafety:CreateToggle({
	Name = "Chat Mode (Broadcast Changes to Public Chat)",
	CurrentValue = false,
	Callback = function(val)
		chatModeEnabled = val
		Rayfield:Notify({ Title = "Mode Toggled", Content = "Chat Logging Mode is now " .. (val and "ON" or "OFF"), Duration = 1.5 })
	end
})

TabSafety:CreateToggle({
	Name = "Console Mode (Instant Debug Console Output)",
	CurrentValue = false,
	Callback = function(val)
		consoleModeEnabled = val
		Rayfield:Notify({ Title = "Mode Toggled", Content = "Console Debug Mode is now " .. (val and "ON" or "OFF"), Duration = 1.5 })
	end
})

-- =============================================================
-- EMERGENCY core shutdown & Script Unload
-- =============================================================
TabSafety:CreateButton({
	Name = "🔴 Emergency Core Shutdown & Script Unload",
	Callback = function()
		pcall(function()
			runServiceRef:UnbindFromRenderStep("ZenithSystemPhysicsLoop")
			if localForceInstance then localForceInstance:Destroy() end
			if localDirectionalForceInstance then localDirectionalForceInstance:Destroy() end
			if tkConnection then tkConnection:Disconnect() end
			if Workspace:FindFirstChild("ZenithPathfinderFolder") then Workspace.ZenithPathfinderFolder:Destroy() end
			if lastTrackedPart then
				local oldTag = lastTrackedPart:FindFirstChild("ZenithObjectTag")
				if oldTag then oldTag:Destroy() end
			end
			for _, player in ipairs(Players:GetPlayers()) do
				RemoveEspObjects(player)
			end
			Workspace.Gravity = 196.2
			Rayfield:Destroy()
		end)
	end
})
-- =============================================================
-- CUSTOM CHAT LOADING SETTINGS (20 Textboxes)
-- =============================================================
TabSafety:CreateSection("Custom Chat Broadcast Configuration")

-- Default message list
local CustomChatMessages = {
    [1] = "Zenith Sandbox Object Modder...",
    [2] = "Loading GUI...",
    [3] = "Loading Features...",
    [4] = "Fetching assets and modules...",
    [5] = "Finishing loading...",
    [6] = "Applying last touches...",
    [7] = "Bypassing sandbox restrictions...",
    [8] = "Done!",
    [9] = "Load finished! have fun.",
    [10] = "System fully operational!"
}

-- Default delay list
local CustomChatDelays = {
    [1] = 1,
    [2] = 3,
    [3] = 0.7,
    [4] = 1.2,
    [5] = 3,
    [6] = 1.5,
    [7] = 0.5,
    [8] = 0.5,
    [9] = 1.0,
    [10] = 1.0
}

-- Generate 10 Textboxes for Chat Loading Messages
for i = 1, 10 do
    TabSafety:CreateInput({
        Name = "Loading Message " .. i,
        PlaceholderText = CustomChatMessages[i],
        RemoveTextAfterFocusLost = false,
        Callback = function(Text)
            if Text and Text ~= "" then
                CustomChatMessages[i] = Text
            end
        end,
    })
end

-- Generate 10 Textboxes for Delays until next message
for i = 1, 10 do
    TabSafety:CreateInput({
        Name = "Message Delay " .. i .. " (Seconds)",
        PlaceholderText = tostring(CustomChatDelays[i]),
        RemoveTextAfterFocusLost = false,
        Callback = function(Text)
            local targetDelay = tonumber(Text)
            if targetDelay then
                CustomChatDelays[i] = targetDelay
            end
        end,
    })
end
TabSafety:CreateToggle({
	Name = "Auto Feature Saving",
	CurrentValue = _G.AutoSaveFeatures,
	Callback = function(val)
		_G.AutoSaveFeatures = val
		
		-- Notify the user of the change
		Rayfield:Notify({ 
			Title = "Configuration Update", 
			Content = "Auto-saving features is now " .. (val and "ENABLED ✅" or "DISABLED ❌"), 
			Duration = 2 
		})
		
		-- Instantly save configuration if enabled
		if val then
			Rayfield:SaveConfiguration()
		end
	end
})

Features & Information

an object modder
#objectModder#keyless#hub

Community Comments (0)

No comments yet for this script.

More Scripts for Fling Things and People