if not game:IsLoaded() then game.Loaded:Wait() end repeat task.wait() until game.Players.LocalPlayer local Rayfield = loadstring(game:HttpGet("https://sirius.menu/rayfield"))() local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local Lighting = game:GetService("Lighting") local TeleportService = game:GetService("TeleportService") local VirtualUser = game:GetService("VirtualUser") local ReplicatedStorage = game:GetService("ReplicatedStorage") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") local Camera = workspace.CurrentCamera --================================================== -- WINDOW --================================================== local Window = Rayfield:CreateWindow({ Name = "BRP Helper v3", LoadingTitle = "BRP Helper v3", LoadingSubtitle = "Enhanced", Theme = "Amethyst", ConfigurationSaving = { Enabled = false }, Discord = { Enabled = false, Invite = "noinvitelink", RememberJoins = false }, KeySystem = false }) local InfoTab = Window:CreateTab("Info", nil) local SchutzTab = Window:CreateTab("Schutz", nil) local MoveTab = Window:CreateTab("Bewegung", nil) local AutoTab = Window:CreateTab("Auto & Helis", nil) local SpielerTab = Window:CreateTab("Spieler", nil) local VisualTab = Window:CreateTab("Visual", nil) local ExtraTab = Window:CreateTab("Extra", nil) local AdminTab = Window:CreateTab("Admin", nil) --================================================== -- VARIABLES --================================================== local godmode = false local antiDown = false local antiBleed = false local hideDownUI = false local antiSit = false local antiVoid = false local antiSurrender = false local antiAfk = true local speedOn = false local currentSpeed = 16 local noclipOn = false local infJump = false local clickCarTP = false local clickFootTP = false local pushCars = false local pushPower = 1000 local tweenTime = 1.2 local selectedPlayer = "Niemand" local selectedVehicle = "RD-Christoph-Bodensee" local currentTween = nil local noclipConn = nil local freecamConn = nil local afkConn = nil local fullbrightConn = nil local freecamOn = false local freecamSpeed = 60 local spectating = false local freecamPosition = nil local freecamRotation = Vector2.new(0, 0) local freecamToggleLock = false local fullbright = false local espOn = false local currentFOV = 70 local heliESP = false local autoRejoin = false local autoRespawn = false local respawnPending = false local rejoinPending = false local spawnAtPlayer = true local spawnHeight = 10 local vehicleList = {} --================================================== -- ESP FOLDER --================================================== local oldESP = workspace:FindFirstChild("BRPESP") if oldESP then oldESP:Destroy() end local espFolder = Instance.new("Folder") espFolder.Name = "BRPESP" espFolder.Parent = workspace --================================================== -- PUSH STATUS GUI --================================================== local oldPushStatus = PlayerGui:FindFirstChild("BRPPushStatus") if oldPushStatus then oldPushStatus:Destroy() end local pushStatusGui = Instance.new("ScreenGui") pushStatusGui.Name = "BRPPushStatus" pushStatusGui.ResetOnSpawn = false pushStatusGui.IgnoreGuiInset = true pushStatusGui.DisplayOrder = 5000 pushStatusGui.Parent = PlayerGui local pushStatus = Instance.new("TextLabel") pushStatus.AnchorPoint = Vector2.new(0.5, 0) pushStatus.Position = UDim2.new(0.5, 0, 0, 15) pushStatus.Size = UDim2.new(0, 290, 0, 42) pushStatus.BackgroundTransparency = 0.2 pushStatus.Font = Enum.Font.GothamBold pushStatus.TextSize = 18 pushStatus.TextColor3 = Color3.new(1, 1, 1) pushStatus.Text = "AUTOS SCHIEBEN: AUS" pushStatus.Visible = false pushStatus.Parent = pushStatusGui local pushCorner = Instance.new("UICorner") pushCorner.CornerRadius = UDim.new(0, 10) pushCorner.Parent = pushStatus --================================================== -- SPECTATE GUI --================================================== local oldSpec = PlayerGui:FindFirstChild("BRPSpecExit") if oldSpec then oldSpec:Destroy() end local specGui = Instance.new("ScreenGui") specGui.Name = "BRPSpecExit" specGui.ResetOnSpawn = false specGui.IgnoreGuiInset = true specGui.DisplayOrder = 3000 specGui.Enabled = false specGui.Parent = PlayerGui local specBtn = Instance.new("TextButton") specBtn.AnchorPoint = Vector2.new(1, 1) specBtn.Position = UDim2.new(1, -24, 1, -24) specBtn.Size = UDim2.new(0, 170, 0, 46) specBtn.BackgroundColor3 = Color3.fromRGB(150, 40, 55) specBtn.Text = "Spectate aus" specBtn.Font = Enum.Font.GothamBold specBtn.TextColor3 = Color3.new(1, 1, 1) specBtn.TextSize = 18 specBtn.Parent = specGui Instance.new("UICorner", specBtn).CornerRadius = UDim.new(0, 12) --================================================== -- SELF MARKER --================================================== local marker = Instance.new("Part") marker.Name = "BRPSelfMarker" marker.Anchored = true marker.CanCollide = false marker.CanQuery = false marker.Transparency = 1 marker.Size = Vector3.new(1, 1, 1) marker.Parent = workspace local bill = Instance.new("BillboardGui") bill.Size = UDim2.new(0, 120, 0, 30) bill.AlwaysOnTop = true bill.StudsOffset = Vector3.new(0, 8, 0) bill.Parent = marker local markLab = Instance.new("TextLabel") markLab.Size = UDim2.new(1, 0, 1, 0) markLab.BackgroundTransparency = 1 markLab.Font = Enum.Font.GothamBold markLab.TextSize = 16 markLab.TextColor3 = Color3.fromRGB(120, 220, 255) markLab.Text = "DU" markLab.Parent = bill --================================================== -- HELPERS --================================================== local function notify(title, content) pcall(function() Rayfield:Notify({ Title = title, Content = content, Duration = 3 }) end) end local function updatePushStatus() if pushCars then pushStatus.Text = "🚗 AUTOS SCHIEBEN: AN" pushStatus.Visible = true else pushStatus.Text = "🚗 AUTOS SCHIEBEN: AUS" pushStatus.Visible = false end end local function getChar() return LocalPlayer.Character end local function getHum() local char = getChar() return char and char:FindFirstChildOfClass("Humanoid") end local function getRoot() local char = getChar() return char and char:FindFirstChild("HumanoidRootPart") end local function getACS() local char = getChar() return char and char:FindFirstChild("ACS_Client") end local function copyText(text) text = tostring(text) if setclipboard then pcall(function() setclipboard(text) end) elseif toclipboard then pcall(function() toclipboard(text) end) end notify("Kopiert", text) end local function hideBewusstlos(hide) for _, name in ipairs({ "BewusstlosUI", "BewusstlosUI_Script", "dead", "Damage" }) do local gui = PlayerGui:FindFirstChild(name) if gui and gui:IsA("ScreenGui") then gui.Enabled = not hide end end end local function toggleGui(name) local gui = PlayerGui:FindFirstChild(name) if not gui then notify("UI", name .. " nicht gefunden") return end if gui:IsA("ScreenGui") then gui.Enabled = not gui.Enabled notify("UI", name .. " = " .. tostring(gui.Enabled)) end end local function seatInfo() local hum = getHum() if not hum or not hum.SeatPart then return "steht / geht" end if hum.SeatPart:IsA("VehicleSeat") then return "Auto/Heli Sitz" end return "Stuhl / Sitz" end local function getVehicle() local hum = getHum() if not hum or not hum.SeatPart then return nil end return hum.SeatPart:FindFirstAncestorOfClass("Model") end local function getMovePart(model) if not model then return nil end return model.PrimaryPart or model:FindFirstChildWhichIsA("BasePart", true) end local function isVehicleModel(model) if not model or not model:IsA("Model") then return false end return model:FindFirstChildWhichIsA("VehicleSeat", true) ~= nil or model:FindFirstChildWhichIsA("Seat", true) ~= nil end --================================================== -- DOWN / REANIMATION --================================================== local function clearDown() local char = getChar() local hum = getHum() if not char or not hum then return end pcall(function() hum.MaxHealth = 100 hum.Health = 100 hum.Sit = false hum.PlatformStand = false end) local down = char:FindFirstChild("IsDown") if down and down:IsA("BoolValue") then down.Value = false end local rea = char:FindFirstChild("IsRea") if rea and rea:IsA("BoolValue") then rea.Value = false end local acs = getACS() if acs then pcall(function() acs:SetAttribute("Injured", false) acs:SetAttribute("Bleeding", false) acs:SetAttribute("Collapsed", false) acs:SetAttribute("Tourniquet", false) acs:SetAttribute("Surrender", false) acs:SetAttribute("Dragging", false) end) end pcall(function() LocalPlayer:SetAttribute("Med_Zustand", "wach") end) if hideDownUI then hideBewusstlos(true) end end --================================================== -- RESPAWN --================================================== local function respawnPlayer() local eventNames = { "RespawnAntwort", "RespawnEvent", "Respawn" } for _, name in ipairs(eventNames) do local event = ReplicatedStorage:FindFirstChild(name) if event and event:IsA("RemoteEvent") then local success = pcall(function() event:FireServer() end) if success then notify("Respawn", "Respawn angefordert") return true end end end local success = pcall(function() LocalPlayer:LoadCharacter() end) if success then notify("Respawn", "Normaler Respawn ausgelöst") return true end notify("Respawn", "Kein Respawn möglich") return false end --================================================== -- VEHICLE SCANNER --================================================== local function scanVehicleList() local result = {} local function addVehicle(model) if model:IsA("Model") and isVehicleModel(model) and not table.find(result, model.Name) then table.insert(result, model.Name) end end local function scan(folder) for _, obj in ipairs(folder:GetChildren()) do if obj:IsA("Model") then addVehicle(obj) end if obj:IsA("Folder") or obj:IsA("Model") then scan(obj) end end end local vehicles = workspace:FindFirstChild("Vehicles") if vehicles then scan(vehicles) end local previews = ReplicatedStorage:FindFirstChild("PreviewModels") if previews then scan(previews) end table.sort(result) return result end --================================================== -- VEHICLE SPAWN --================================================== local function moveSpawnedVehicle(vehicle) if not spawnAtPlayer then return end local root = getRoot() if not root or not vehicle then return end pcall(function() vehicle:PivotTo( root.CFrame * CFrame.new( 0, spawnHeight, -8 ) ) end) end local function findNewestVehicle(name) local vehicles = workspace:FindFirstChild("Vehicles") if not vehicles then return nil end local newest for _, obj in ipairs(vehicles:GetChildren()) do if obj:IsA("Model") and obj.Name == name then newest = obj end end return newest end local function spawnVehicle(vehicleName) if not getRoot() then notify("Spawn", "Kein Character gefunden") return false end local event = ReplicatedStorage:FindFirstChild("CarSpawnerEvent") if not event or not event:IsA("RemoteEvent") then notify("Spawn", "CarSpawnerEvent nicht gefunden") return false end local success = pcall(function() event:FireServer(vehicleName) end) if not success then notify("Spawn", "Fehler beim Spawn") return false end notify("Spawn", "Spawn angefordert: " .. tostring(vehicleName)) if spawnAtPlayer then task.spawn(function() local deadline = os.clock() + 5 while os.clock() < deadline do local vehicle = findNewestVehicle(vehicleName) if vehicle then moveSpawnedVehicle(vehicle) break end task.wait(0.2) end end) end return true end --================================================== -- VEHICLE TWEEN --================================================== local function tweenVehicle(goal) local vehicle = getVehicle() local part = getMovePart(vehicle) if not vehicle or not part then notify("Auto", "Du sitzt in keinem Fahrzeug") return end if currentTween then pcall(function() currentTween:Cancel() end) end currentTween = TweenService:Create( part, TweenInfo.new( tweenTime, Enum.EasingStyle.Quad, Enum.EasingDirection.Out ), { CFrame = goal } ) currentTween:Play() currentTween.Completed:Connect(function() currentTween = nil end) notify("Auto", "Tween gestartet") end --================================================== -- FREECAM --================================================== local function stopFreecam(silent) if not freecamOn then return end freecamOn = false if freecamConn then freecamConn:Disconnect() freecamConn = nil end if not spectating then Camera.CameraType = Enum.CameraType.Custom local hum = getHum() if hum then Camera.CameraSubject = hum end end if not silent then notify("Freecam", "Aus") end end local function startFreecam() if freecamOn then return end spectating = false specGui.Enabled = false local cf = Camera.CFrame freecamPosition = cf.Position local rx, ry = cf:ToOrientation() freecamRotation = Vector2.new( math.deg(ry), math.deg(rx) ) freecamOn = true Camera.CameraType = Enum.CameraType.Scriptable if freecamConn then freecamConn:Disconnect() end freecamConn = RunService.RenderStepped:Connect(function(dt) if not freecamOn then return end Camera.CameraType = Enum.CameraType.Scriptable local move = Vector3.zero if UserInputService:IsKeyDown(Enum.KeyCode.W) then move += Vector3.new(0, 0, -1) end if UserInputService:IsKeyDown(Enum.KeyCode.S) then move += Vector3.new(0, 0, 1) end if UserInputService:IsKeyDown(Enum.KeyCode.A) then move += Vector3.new(-1, 0, 0) end if UserInputService:IsKeyDown(Enum.KeyCode.D) then move += Vector3.new(1, 0, 0) end if UserInputService:IsKeyDown(Enum.KeyCode.E) then move += Vector3.new(0, 1, 0) end if UserInputService:IsKeyDown(Enum.KeyCode.Q) then move += Vector3.new(0, -1, 0) end local rotation = CFrame.Angles( 0, math.rad(freecamRotation.X), 0 ) * CFrame.Angles( math.rad(freecamRotation.Y), 0, 0 ) local speed = freecamSpeed if UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then speed *= 2 end if move.Magnitude > 0 then freecamPosition += rotation:VectorToWorldSpace(move.Unit) * speed * dt end Camera.CFrame = CFrame.new(freecamPosition) * rotation end) notify("Freecam", "AN") end local function toggleFreecam() if freecamToggleLock then return end freecamToggleLock = true if freecamOn then stopFreecam() else startFreecam() end task.delay(0.25, function() freecamToggleLock = false end) end --================================================== -- SPECTATE --================================================== local function stopSpectate() spectating = false specGui.Enabled = false if not freecamOn then Camera.CameraType = Enum.CameraType.Custom local hum = getHum() if hum then Camera.CameraSubject = hum end end notify("Spectate", "Aus") end local function startSpectate(player) if not player or not player.Character then notify("Spectate", "Kein Character") return end local hum = player.Character:FindFirstChildOfClass("Humanoid") if not hum then notify("Spectate", "Kein Humanoid") return end if freecamOn then stopFreecam(true) end spectating = true specGui.Enabled = true Camera.CameraType = Enum.CameraType.Custom Camera.CameraSubject = hum notify("Spectate", player.DisplayName) end specBtn.MouseButton1Click:Connect(stopSpectate) --================================================== -- INFO --================================================== local infoLabel = InfoTab:CreateParagraph({ Title = "Status", Content = "Lädt..." }) local function refreshInfo() local root = getRoot() local pos = "-" if root then pos = string.format( "%d, %d, %d", root.Position.X, root.Position.Y, root.Position.Z ) end local text = table.concat({ "Name: " .. LocalPlayer.DisplayName, "Team: " .. tostring(LocalPlayer:GetAttribute("CurrentTeamName")), "Rolle: " .. tostring(LocalPlayer:GetAttribute("OverheadRoleText")), "Zustand: " .. tostring(LocalPlayer:GetAttribute("Med_Zustand")), "SafeZone: " .. tostring(LocalPlayer:GetAttribute("InSafeZone")), "Sitz: " .. seatInfo(), "Position: " .. pos, "Spieler: " .. #Players:GetPlayers(), "Personalnummer: " .. tostring(LocalPlayer:GetAttribute("PersonalNumber")), "Notrufkennung: " .. tostring(LocalPlayer:GetAttribute("BRP_Notrufkennung")), "Blutgruppe: " .. tostring(LocalPlayer:GetAttribute("BloodGroup")) }, "\n") pcall(function() infoLabel:Set(text) end) end InfoTab:CreateButton({ Name = "Status aktualisieren", Callback = refreshInfo }) InfoTab:CreateButton({ Name = "Koordinaten kopieren", Callback = function() local root = getRoot() if root then copyText(string.format( "%.1f, %.1f, %.1f", root.Position.X, root.Position.Y, root.Position.Z )) end end }) InfoTab:CreateButton({ Name = "Notrufnummer kopieren", Callback = function() copyText(LocalPlayer:GetAttribute("BRP_Notrufkennung")) end }) InfoTab:CreateButton({ Name = "Personalnummer kopieren", Callback = function() copyText(LocalPlayer:GetAttribute("PersonalNumber")) end }) --================================================== -- SCHUTZ --================================================== SchutzTab:CreateToggle({ Name = "Anti AFK", CurrentValue = true, Callback = function(v) antiAfk = v if afkConn then afkConn:Disconnect() afkConn = nil end if v then afkConn = LocalPlayer.Idled:Connect(function() VirtualUser:CaptureController() VirtualUser:ClickButton2(Vector2.new()) end) end end }) SchutzTab:CreateToggle({ Name = "Unsterblichkeit HP", CurrentValue = false, Callback = function(v) godmode = v if v then clearDown() end end }) SchutzTab:CreateToggle({ Name = "Anti Down", CurrentValue = false, Callback = function(v) antiDown = v if v then clearDown() end end }) SchutzTab:CreateToggle({ Name = "Anti Blutung", CurrentValue = false, Callback = function(v) antiBleed = v end }) SchutzTab:CreateToggle({ Name = "Anti Surrender", CurrentValue = false, Callback = function(v) antiSurrender = v end }) SchutzTab:CreateToggle({ Name = "Bewusstlos UI aus", CurrentValue = false, Callback = function(v) hideDownUI = v hideBewusstlos(v) end }) SchutzTab:CreateToggle({ Name = "Anti Sit", CurrentValue = false, Callback = function(v) antiSit = v end }) SchutzTab:CreateToggle({ Name = "Anti Void", CurrentValue = false, Callback = function(v) antiVoid = v end }) SchutzTab:CreateToggle({ Name = "Auto Respawn", CurrentValue = false, Callback = function(v) autoRespawn = v end }) SchutzTab:CreateButton({ Name = "⭐ RESPAWN ⭐", Callback = respawnPlayer }) SchutzTab:CreateButton({ Name = "Jetzt reanimieren", Callback = function() clearDown() notify("Schutz", "Reanimation ausgeführt") end }) --================================================== -- BEWEGUNG --================================================== MoveTab:CreateToggle({ Name = "WalkSpeed", CurrentValue = false, Callback = function(v) speedOn = v local hum = getHum() if hum then hum.WalkSpeed = v and currentSpeed or 16 end end }) MoveTab:CreateSlider({ Name = "Speed", Range = {12, 100}, Increment = 1, CurrentValue = 16, Callback = function(v) currentSpeed = v if speedOn then local hum = getHum() if hum then hum.WalkSpeed = v end end end }) MoveTab:CreateToggle({ Name = "Infinite Jump", CurrentValue = false, Callback = function(v) infJump = v end }) MoveTab:CreateToggle({ Name = "Noclip", CurrentValue = false, Callback = function(v) noclipOn = v if noclipConn then noclipConn:Disconnect() noclipConn = nil end if v then noclipConn = RunService.Stepped:Connect(function() local char = getChar() if char then for _, part in ipairs(char:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end end) end end }) MoveTab:CreateToggle({ Name = "Freecam", CurrentValue = false, Callback = function(v) if v then startFreecam() else stopFreecam() end end }) MoveTab:CreateSlider({ Name = "Freecam Speed", Range = {20, 200}, Increment = 5, CurrentValue = 60, Callback = function(v) freecamSpeed = v end }) MoveTab:CreateToggle({ Name = "Click TP zu Fuß", CurrentValue = false, Callback = function(v) clickFootTP = v end }) MoveTab:CreateKeybind({ Name = "Freecam Toggle", CurrentKeybind = "P", HoldToInteract = false, Callback = function() toggleFreecam() end }) --================================================== -- VEHICLE UI --================================================== vehicleList = scanVehicleList() if #vehicleList == 0 then vehicleList = {"RD-Christoph-Bodensee"} end local vehicleDropdown = AutoTab:CreateDropdown({ Name = "Fahrzeug auswählen", Options = vehicleList, CurrentOption = {selectedVehicle}, MultipleOptions = false, Callback = function(option) if type(option) == "table" then selectedVehicle = option[1] else selectedVehicle = option end end }) AutoTab:CreateButton({ Name = "Fahrzeugliste aktualisieren", Callback = function() vehicleList = scanVehicleList() if #vehicleList == 0 then vehicleList = {"RD-Christoph-Bodensee"} end pcall(function() vehicleDropdown:Refresh(vehicleList) end) notify( "Fahrzeuge", #vehicleList .. " Fahrzeuge gefunden" ) end }) AutoTab:CreateButton({ Name = "⭐ FAHRZEUG SPAWNEN ⭐", Callback = function() spawnVehicle(selectedVehicle) end }) AutoTab:CreateToggle({ Name = "Bei Spieler spawnen", CurrentValue = true, Callback = function(v) spawnAtPlayer = v end }) AutoTab:CreateSlider({ Name = "Spawn Höhe", Range = {0, 50}, Increment = 1, CurrentValue = 10, Callback = function(v) spawnHeight = v end }) AutoTab:CreateButton({ Name = "5x Fahrzeug spawnen", Callback = function() for i = 1, 5 do spawnVehicle(selectedVehicle) task.wait(0.5) end end }) AutoTab:CreateSlider({ Name = "Tween Dauer", Range = {0.2, 5}, Increment = 0.1, CurrentValue = 1.2, Callback = function(v) tweenTime = v end }) AutoTab:CreateButton({ Name = "Auto zu Spieler", Callback = function() local target = Players:FindFirstChild(selectedPlayer) if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then tweenVehicle( target.Character.HumanoidRootPart.CFrame * CFrame.new(0, 4, 8) ) else notify("Auto", "Kein Ziel ausgewählt") end end }) AutoTab:CreateToggle({ Name = "Click Tween Auto", CurrentValue = false, Callback = function(v) clickCarTP = v end }) --================================================== -- AUTOS SCHIEBEN --================================================== AutoTab:CreateToggle({ Name = "Autos schieben", CurrentValue = false, Callback = function(v) pushCars = v updatePushStatus() end }) AutoTab:CreateSlider({ Name = "Schiebe-Stärke", Range = {20, 1000}, Increment = 10, CurrentValue = 1000, Callback = function(v) pushPower = v end }) AutoTab:CreateToggle({ Name = "Helikopter ESP", CurrentValue = false, Callback = function(v) heliESP = v end }) AutoTab:CreateButton({ Name = "Tween stoppen", Callback = function() if currentTween then pcall(function() currentTween:Cancel() end) currentTween = nil end end }) local vehBox = AutoTab:CreateParagraph({ Title = "Nahe Fahrzeuge", Content = "-" }) AutoTab:CreateButton({ Name = "Nahe Fahrzeuge anzeigen", Callback = function() local root = getRoot() if not root then return end local lines = {} local seen = {} for _, obj in ipairs(workspace:GetDescendants()) do if obj:IsA("VehicleSeat") or obj:IsA("Seat") then local model = obj:FindFirstAncestorOfClass("Model") if model and not seen[model] and isVehicleModel(model) then seen[model] = true local part = getMovePart(model) if part then local distance = (part.Position - root.Position).Magnitude if distance <= 120 then table.insert( lines, model.Name .. " - " .. math.floor(distance) .. "m" ) end end end end end table.sort(lines) pcall(function() vehBox:Set( #lines > 0 and table.concat(lines, "\n") or "Keine Fahrzeuge in 120m" ) end) end }) --================================================== -- SPIELER --================================================== local playerDropdown = SpielerTab:CreateDropdown({ Name = "Spieler", Options = {"Niemand"}, CurrentOption = {"Niemand"}, MultipleOptions = false, Callback = function(option) if type(option) == "table" then selectedPlayer = option[1] else selectedPlayer = option end end }) local playerListBox = SpielerTab:CreateParagraph({ Title = "Spielerliste", Content = "..." }) local function refreshPlayers() local list = {} local lines = {} local myRoot = getRoot() for _, player in ipairs(Players:GetPlayers()) do if player ~= LocalPlayer then table.insert(list, player.Name) local distance = "-" if myRoot and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then distance = math.floor( ( player.Character.HumanoidRootPart.Position - myRoot.Position ).Magnitude ) .. "m" end local team = tostring( player:GetAttribute("CurrentTeamName") or "-" ) local med = tostring( player:GetAttribute("Med_Zustand") or "-" ) table.insert( lines, player.DisplayName .. " | " .. team .. " | " .. med .. " | " .. distance ) end end if #list == 0 then list = {"Niemand"} end pcall(function() playerDropdown:Refresh(list) end) pcall(function() playerListBox:Set( #lines > 0 and table.concat(lines, "\n") or "Keine anderen Spieler" ) end) if not Players:FindFirstChild(selectedPlayer) then selectedPlayer = "Niemand" end end SpielerTab:CreateButton({ Name = "Liste aktualisieren", Callback = refreshPlayers }) SpielerTab:CreateButton({ Name = "Spectate", Callback = function() local target = Players:FindFirstChild(selectedPlayer) if target then startSpectate(target) else notify("Spectate", "Kein Spieler ausgewählt") end end }) SpielerTab:CreateButton({ Name = "Spectate aus", Callback = stopSpectate }) SpielerTab:CreateButton({ Name = "Spielerinfo kopieren", Callback = function() local target = Players:FindFirstChild(selectedPlayer) if not target then return end local info = string.format( "Name: %s\nTeam: %s\nZustand: %s\nNotruf: %s\nPersonalnummer: %s", target.DisplayName, target:GetAttribute("CurrentTeamName") or "-", target:GetAttribute("Med_Zustand") or "-", target:GetAttribute("BRP_Notrufkennung") or "-", target:GetAttribute("PersonalNumber") or "-" ) copyText(info) end }) --================================================== -- VISUAL --================================================== local function applyFullbright() if not fullbright then return end Lighting.Brightness = 2 Lighting.ClockTime = 14 Lighting.FogEnd = 100000 Lighting.GlobalShadows = false Lighting.EnvironmentDiffuseScale = 1 Lighting.EnvironmentSpecularScale = 1 Lighting.Ambient = Color3.new(1, 1, 1) Lighting.OutdoorAmbient = Color3.new(1, 1, 1) end local function startFullbright() if fullbrightConn then fullbrightConn:Disconnect() end applyFullbright() fullbrightConn = RunService.Heartbeat:Connect(function() if fullbright then applyFullbright() end end) end local function stopFullbright() if fullbrightConn then fullbrightConn:Disconnect() fullbrightConn = nil end Lighting.Brightness = 1 Lighting.ClockTime = 14 Lighting.FogEnd = 1000 Lighting.GlobalShadows = true end VisualTab:CreateToggle({ Name = "Fullbright", CurrentValue = false, Callback = function(v) fullbright = v if v then startFullbright() else stopFullbright() end end }) VisualTab:CreateSlider({ Name = "FOV", Range = {50, 120}, Increment = 1, CurrentValue = 70, Callback = function(v) currentFOV = v Camera.FieldOfView = v end }) VisualTab:CreateSlider({ Name = "Nebel Ende", Range = {100, 100000}, Increment = 100, CurrentValue = 1000, Callback = function(v) if not fullbright then Lighting.FogEnd = v end end }) VisualTab:CreateSlider({ Name = "Helligkeit", Range = {0, 5}, Increment = 0.1, CurrentValue = 1, Callback = function(v) if not fullbright then Lighting.Brightness = v end end }) VisualTab:CreateToggle({ Name = "ESP", CurrentValue = false, Callback = function(v) espOn = v if not v then espFolder:ClearAllChildren() end end }) VisualTab:CreateButton({ Name = "StatusUI", Callback = function() toggleGui("StatusUI") end }) VisualTab:CreateButton({ Name = "Handy", Callback = function() toggleGui("Handy") end }) VisualTab:CreateButton({ Name = "Radio", Callback = function() toggleGui("Radio") end }) VisualTab:CreateButton({ Name = "Pager", Callback = function() toggleGui("PagerUI") end }) VisualTab:CreateButton({ Name = "Leitstellenpanel", Callback = function() toggleGui("LeitstellenpanelUI") end }) VisualTab:CreateButton({ Name = "Polizei GUI", Callback = function() toggleGui("polizei") end }) --================================================== -- EXTRA --================================================== ExtraTab:CreateToggle({ Name = "Auto Rejoin", CurrentValue = false, Callback = function(v) autoRejoin = v end }) ExtraTab:CreateButton({ Name = "Rejoin", Callback = function() pcall(function() TeleportService:Teleport( game.PlaceId, LocalPlayer ) end) end }) ExtraTab:CreateButton({ Name = "Server verlassen", Callback = function() pcall(function() TeleportService:Teleport( game.PlaceId, LocalPlayer ) end) end }) ExtraTab:CreateButton({ Name = "Listen aktualisieren", Callback = function() refreshPlayers() refreshInfo() end }) ExtraTab:CreateButton({ Name = "Alle GUIs ausblenden", Callback = function() for _, gui in ipairs(PlayerGui:GetChildren()) do if gui:IsA("ScreenGui") and gui ~= specGui then gui.Enabled = false end end end }) ExtraTab:CreateButton({ Name = "Alle GUIs einblenden", Callback = function() for _, gui in ipairs(PlayerGui:GetChildren()) do if gui:IsA("ScreenGui") then gui.Enabled = true end end specGui.Enabled = spectating end }) --================================================== -- ADMIN --================================================== AdminTab:CreateParagraph({ Title = "Admin", Content = "Nur für Funktionen verwenden, für die du im Spiel berechtigt bist." }) AdminTab:CreateButton({ Name = "Wetter: Regen", Callback = function() local weatherFunc = ReplicatedStorage:FindFirstChild("WeatherFunction") if weatherFunc and weatherFunc:IsA("RemoteFunction") then local success = pcall(function() weatherFunc:InvokeServer("Rain") end) if success then notify("Wetter", "Regen angefordert") end else notify("Wetter", "WeatherFunction nicht gefunden") end end }) AdminTab:CreateButton({ Name = "Spawn ausgewähltes Fahrzeug", Callback = function() spawnVehicle(selectedVehicle) end }) --================================================== -- INPUT --================================================== UserInputService.InputBegan:Connect(function(input, processed) if processed then return end --================================================== -- C = AUTOS SCHIEBEN --================================================== if input.KeyCode == Enum.KeyCode.C then pushCars = not pushCars updatePushStatus() notify( "Autos schieben", pushCars and "AN – C erneut zum Ausschalten" or "AUS" ) return end --================================================== -- MITTLERE MAUSTASTE --================================================== if input.UserInputType == Enum.UserInputType.MouseButton3 then local mouse = LocalPlayer:GetMouse() if not mouse.Hit then return end if clickCarTP and getVehicle() then tweenVehicle( CFrame.new( mouse.Hit.Position + Vector3.new(0, 4, 0) ) ) elseif clickFootTP then local root = getRoot() if root then root.CFrame = CFrame.new( mouse.Hit.Position + Vector3.new(0, 3, 0) ) end end end end) --================================================== -- INFINITE JUMP --================================================== UserInputService.JumpRequest:Connect(function() if not infJump then return end local hum = getHum() if hum then hum:ChangeState( Enum.HumanoidStateType.Jumping ) end end) --================================================== -- CHARACTER RESPAWN --================================================== LocalPlayer.CharacterAdded:Connect(function(character) task.wait(1) if hideDownUI then hideBewusstlos(true) end if speedOn then local hum = character:FindFirstChildOfClass("Humanoid") if hum then hum.WalkSpeed = currentSpeed end end if noclipOn then if noclipConn then noclipConn:Disconnect() end noclipConn = RunService.Stepped:Connect(function() for _, part in ipairs(character:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end) end end) --================================================== -- MAIN LOOP --================================================== RunService.Heartbeat:Connect(function() local char = getChar() local hum = getHum() local root = getRoot() -- Marker if root then marker.Position = root.Position end -- Spectate GUI specGui.Enabled = spectating -- Godmode if godmode and hum then pcall(function() hum.MaxHealth = 100 hum.Health = 100 end) end -- Anti Down if antiDown then clearDown() end -- Anti Bleed / Surrender if antiBleed or antiSurrender then local acs = getACS() if acs then pcall(function() if antiBleed then acs:SetAttribute( "Bleeding", false ) acs:SetAttribute( "Collapsed", false ) acs:SetAttribute( "Injured", false ) end if antiSurrender then acs:SetAttribute( "Surrender", false ) end end) end end -- Anti Sit if antiSit and hum and hum.Sit and not hum.SeatPart then hum.Sit = false end -- Anti Void if antiVoid and root and root.Position.Y < -50 then root.CFrame = CFrame.new(0, 20, 0) end -- Speed if speedOn and hum and not hum.SeatPart then hum.WalkSpeed = currentSpeed end -- Down UI if hideDownUI then hideBewusstlos(true) end -- FOV Camera.FieldOfView = currentFOV --================================================== -- AUTOS SCHIEBEN --================================================== if pushCars and char and root and hum and not hum.SeatPart then local params = OverlapParams.new() params.FilterType = Enum.RaycastFilterType.Exclude params.FilterDescendantsInstances = { char } local hits = workspace:GetPartBoundsInBox( root.CFrame, Vector3.new(10, 8, 10), params ) local seen = {} local direction = hum.MoveDirection.Magnitude > 0.05 and hum.MoveDirection or root.CFrame.LookVector for _, part in ipairs(hits) do local model = part:FindFirstAncestorOfClass("Model") if model and not seen[model] and isVehicleModel(model) then seen[model] = true local movePart = getMovePart(model) if movePart then pcall(function() movePart.AssemblyLinearVelocity = direction.Unit * pushPower movePart.AssemblyAngularVelocity = Vector3.zero end) end end end end --================================================== -- AUTO RESPAWN --================================================== if autoRespawn and not respawnPending then local currentCharacter = LocalPlayer.Character local currentHum = currentCharacter and currentCharacter: FindFirstChildOfClass("Humanoid") if currentHum and currentHum.Health <= 0 then respawnPending = true task.delay(3, function() if autoRespawn then respawnPlayer() end task.delay(2, function() respawnPending = false end) end) end end end) --================================================== -- ESP / INFO LOOP --================================================== task.spawn(function() while task.wait(1) do refreshInfo() refreshPlayers() if espOn then espFolder:ClearAllChildren() local myRoot = getRoot() if myRoot then for _, player in ipairs(Players:GetPlayers()) do if player ~= LocalPlayer and player.Character and player.Character: FindFirstChild("HumanoidRootPart") then local character = player.Character local root = character.HumanoidRootPart local highlight = Instance.new("Highlight") highlight.Adornee = character highlight.FillTransparency = 0.7 local team = tostring( player:GetAttribute( "CurrentTeamName" ) or "" ) if team:find("Polizei") then highlight.FillColor = Color3.fromRGB( 0, 100, 255 ) elseif team:find("Feuerwehr") then highlight.FillColor = Color3.fromRGB( 255, 100, 0 ) elseif team:find("Rettungsdienst") then highlight.FillColor = Color3.fromRGB( 255, 100, 0 ) else highlight.FillColor = Color3.fromRGB( 140, 90, 255 ) end highlight.Parent = espFolder local billboard = Instance.new("BillboardGui") billboard.Size = UDim2.new( 0, 180, 0, 46 ) billboard.AlwaysOnTop = true billboard.StudsOffset = Vector3.new(0, 3, 0) billboard.Adornee = root billboard.Parent = espFolder local label = Instance.new("TextLabel") label.Size = UDim2.new(1, 0, 1, 0) label.BackgroundTransparency = 1 label.Font = Enum.Font.GothamBold label.TextSize = 13 label.TextColor3 = Color3.new(1, 1, 1) label.Text = player.DisplayName .. "\n" .. team .. " " .. math.floor( ( root.Position - myRoot.Position ).Magnitude ) .. "m" label.Parent = billboard end end end end -- Auto Rejoin if autoRejoin and #Players:GetPlayers() < 2 and not rejoinPending then rejoinPending = true task.delay(5, function() if autoRejoin then pcall(function() TeleportService:Teleport( game.PlaceId, LocalPlayer ) end) end rejoinPending = false end) elseif #Players:GetPlayers() >= 2 then rejoinPending = false end end end) --================================================== -- ANTI AFK --================================================== if antiAfk then afkConn = LocalPlayer.Idled:Connect(function() VirtualUser:CaptureController() VirtualUser:ClickButton2( Vector2.new() ) end) end --================================================== -- INITIALIZE --================================================== refreshPlayers() refreshInfo() updatePushStatus() notify( "BRP Helper v3", "Geladen" ) print("==============================") print("BRP Helper v3") print("Player: " .. LocalPlayer.Name) print( "Team: " .. tostring( LocalPlayer:GetAttribute( "CurrentTeamName" ) ) ) print( "Fahrzeuge: " .. tostring(#vehicleList) ) print("==============================")