breaking point
Key RequiredUniversal

breaking point

Universal Scriptstokelymark7stokelymark7 1.7K views 811 executesUpdated Dec 15, 2025
Unrated
00
Lua Script•505 lines (17415 chars)
-- Breaking Point Knife Notification GUI
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer

-- Settings
local Settings = {
    NotifyKnife = true,
    NotifyFight = true,
    PlaySound = true,
    ShowDistance = true,
    AutoHighlight = true,
    HighlightColor = Color3.fromRGB(255, 50, 50)
}

-- Storage
local playersWithKnives = {}
local notifications = {}
local highlights = {}

-- Create GUI
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "BreakingPointNotifier"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")

-- Main Frame
local MainFrame = Instance.new("Frame")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.new(0, 350, 0, 420)
MainFrame.Position = UDim2.new(1, -370, 0, 20)
MainFrame.BackgroundColor3 = Color3.fromRGB(15, 15, 20)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.Draggable = true
MainFrame.Parent = ScreenGui

local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 12)
MainCorner.Parent = MainFrame

-- Animated Border
local Border = Instance.new("Frame")
Border.Name = "Border"
Border.Size = UDim2.new(1, 4, 1, 4)
Border.Position = UDim2.new(0, -2, 0, -2)
Border.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
Border.BorderSizePixel = 0
Border.ZIndex = 0
Border.Parent = MainFrame

local BorderCorner = Instance.new("UICorner")
BorderCorner.CornerRadius = UDim.new(0, 12)
BorderCorner.Parent = Border

local BorderGradient = Instance.new("UIGradient")
BorderGradient.Color = ColorSequence.new{
    ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 0, 0)),
    ColorSequenceKeypoint.new(0.5, Color3.fromRGB(200, 0, 100)),
    ColorSequenceKeypoint.new(1, Color3.fromRGB(150, 0, 200))
}
BorderGradient.Parent = Border

task.spawn(function()
    while true do
        for i = 0, 360, 2 do
            BorderGradient.Rotation = i
            task.wait(0.03)
        end
    end
end)

-- Title Bar
local TitleBar = Instance.new("Frame")
TitleBar.Name = "TitleBar"
TitleBar.Size = UDim2.new(1, 0, 0, 50)
TitleBar.BackgroundColor3 = Color3.fromRGB(25, 25, 35)
TitleBar.BorderSizePixel = 0
TitleBar.Parent = MainFrame

local TitleCorner = Instance.new("UICorner")
TitleCorner.CornerRadius = UDim.new(0, 12)
TitleCorner.Parent = TitleBar

local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, -90, 1, 0)
Title.Position = UDim2.new(0, 15, 0, 0)
Title.BackgroundTransparency = 1
Title.Text = "🔪 KNIFE TRACKER"
Title.TextColor3 = Color3.fromRGB(255, 80, 80)
Title.TextSize = 20
Title.Font = Enum.Font.GothamBold
Title.TextXAlignment = Enum.TextXAlignment.Left
Title.Parent = TitleBar

-- Minimize Button
local MinimizeButton = Instance.new("TextButton")
MinimizeButton.Size = UDim2.new(0, 35, 0, 35)
MinimizeButton.Position = UDim2.new(1, -80, 0, 7.5)
MinimizeButton.BackgroundColor3 = Color3.fromRGB(255, 200, 50)
MinimizeButton.Text = "−"
MinimizeButton.TextColor3 = Color3.new(1, 1, 1)
MinimizeButton.TextSize = 18
MinimizeButton.Font = Enum.Font.GothamBold
MinimizeButton.Parent = TitleBar

local MinCorner = Instance.new("UICorner")
MinCorner.CornerRadius = UDim.new(0, 8)
MinCorner.Parent = MinimizeButton

-- Close Button
local CloseButton = Instance.new("TextButton")
CloseButton.Size = UDim2.new(0, 35, 0, 35)
CloseButton.Position = UDim2.new(1, -40, 0, 7.5)
CloseButton.BackgroundColor3 = Color3.fromRGB(255, 80, 80)
CloseButton.Text = "✕"
CloseButton.TextColor3 = Color3.new(1, 1, 1)
CloseButton.TextSize = 18
CloseButton.Font = Enum.Font.GothamBold
CloseButton.Parent = TitleBar

local CloseCorner = Instance.new("UICorner")
CloseCorner.CornerRadius = UDim.new(0, 8)
CloseCorner.Parent = CloseButton

local isMinimized = false
MinimizeButton.MouseButton1Click:Connect(function()
    isMinimized = not isMinimized
    MainFrame:TweenSize(
        isMinimized and UDim2.new(0, 350, 0, 50) or UDim2.new(0, 350, 0, 420),
        Enum.EasingDirection.Out,
        Enum.EasingStyle.Quad,
        0.3,
        true
    )
    MinimizeButton.Text = isMinimized and "+" or "−"
end)

CloseButton.MouseButton1Click:Connect(function()
    ScreenGui:Destroy()
end)

-- Settings Frame
local SettingsFrame = Instance.new("Frame")
SettingsFrame.Size = UDim2.new(1, -20, 0, 150)
SettingsFrame.Position = UDim2.new(0, 10, 0, 60)
SettingsFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 30)
SettingsFrame.BorderSizePixel = 0
SettingsFrame.Parent = MainFrame

local SettingsCorner = Instance.new("UICorner")
SettingsCorner.CornerRadius = UDim.new(0, 10)
SettingsCorner.Parent = SettingsFrame

-- Create Toggle
local function CreateToggle(name, yPos, defaultValue, callback)
    local Toggle = Instance.new("Frame")
    Toggle.Size = UDim2.new(1, -20, 0, 35)
    Toggle.Position = UDim2.new(0, 10, 0, yPos)
    Toggle.BackgroundTransparency = 1
    Toggle.Parent = SettingsFrame
    
    local Label = Instance.new("TextLabel")
    Label.Size = UDim2.new(0.65, 0, 1, 0)
    Label.BackgroundTransparency = 1
    Label.Text = name
    Label.TextColor3 = Color3.fromRGB(230, 230, 255)
    Label.TextSize = 14
    Label.Font = Enum.Font.GothamMedium
    Label.TextXAlignment = Enum.TextXAlignment.Left
    Label.Parent = Toggle
    
    local Button = Instance.new("TextButton")
    Button.Size = UDim2.new(0, 60, 0, 28)
    Button.Position = UDim2.new(1, -60, 0.5, -14)
    Button.BackgroundColor3 = defaultValue and Color3.fromRGB(50, 200, 100) or Color3.fromRGB(50, 50, 70)
    Button.Text = defaultValue and "ON" or "OFF"
    Button.TextColor3 = Color3.new(1, 1, 1)
    Button.TextSize = 13
    Button.Font = Enum.Font.GothamBold
    Button.Parent = Toggle
    
    local ButtonCorner = Instance.new("UICorner")
    ButtonCorner.CornerRadius = UDim.new(0, 6)
    ButtonCorner.Parent = Button
    
    local isEnabled = defaultValue
    Button.MouseButton1Click:Connect(function()
        isEnabled = not isEnabled
        Button.BackgroundColor3 = isEnabled and Color3.fromRGB(50, 200, 100) or Color3.fromRGB(50, 50, 70)
        Button.Text = isEnabled and "ON" or "OFF"
        callback(isEnabled)
    end)
end

CreateToggle("Knife Notifications", 10, Settings.NotifyKnife, function(val) Settings.NotifyKnife = val end)
CreateToggle("Fight Notifications", 50, Settings.NotifyFight, function(val) Settings.NotifyFight = val end)
CreateToggle("Play Sound", 90, Settings.PlaySound, function(val) Settings.PlaySound = val end)
CreateToggle("Auto Highlight", 130, Settings.AutoHighlight, function(val) Settings.AutoHighlight = val end)

-- Knife List Frame
local ListFrame = Instance.new("ScrollingFrame")
ListFrame.Size = UDim2.new(1, -20, 1, -230)
ListFrame.Position = UDim2.new(0, 10, 0, 220)
ListFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 30)
ListFrame.BorderSizePixel = 0
ListFrame.ScrollBarThickness = 6
ListFrame.ScrollBarImageColor3 = Color3.fromRGB(255, 80, 80)
ListFrame.CanvasSize = UDim2.new(0, 0, 0, 0)
ListFrame.Parent = MainFrame

local ListCorner = Instance.new("UICorner")
ListCorner.CornerRadius = UDim.new(0, 10)
ListCorner.Parent = ListFrame

local ListLayout = Instance.new("UIListLayout")
ListLayout.Padding = UDim.new(0, 5)
ListLayout.Parent = ListFrame

ListLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
    ListFrame.CanvasSize = UDim2.new(0, 0, 0, ListLayout.AbsoluteContentSize.Y + 10)
end)

-- Status Label
local StatusLabel = Instance.new("TextLabel")
StatusLabel.Size = UDim2.new(1, 0, 0, 20)
StatusLabel.Position = UDim2.new(0, 0, 1, -22)
StatusLabel.BackgroundTransparency = 1
StatusLabel.Text = "Press INSERT to toggle • Watching for knives..."
StatusLabel.TextColor3 = Color3.fromRGB(150, 150, 170)
StatusLabel.TextSize = 11
StatusLabel.Font = Enum.Font.Gotham
StatusLabel.Parent = MainFrame

-- Notification System
local NotificationFrame = Instance.new("Frame")
NotificationFrame.Size = UDim2.new(0, 300, 0, 0)
NotificationFrame.Position = UDim2.new(0.5, -150, 0, 20)
NotificationFrame.BackgroundTransparency = 1
NotificationFrame.Parent = ScreenGui

local NotificationLayout = Instance.new("UIListLayout")
NotificationLayout.Padding = UDim.new(0, 10)
NotificationLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
NotificationLayout.Parent = NotificationFrame

local function CreateNotification(text, color)
    local Notif = Instance.new("Frame")
    Notif.Size = UDim2.new(1, 0, 0, 0)
    Notif.BackgroundColor3 = Color3.fromRGB(20, 20, 30)
    Notif.BorderSizePixel = 0
    Notif.Parent = NotificationFrame
    
    local NotifCorner = Instance.new("UICorner")
    NotifCorner.CornerRadius = UDim.new(0, 10)
    NotifCorner.Parent = Notif
    
    local NotifBorder = Instance.new("Frame")
    NotifBorder.Size = UDim2.new(1, 4, 1, 4)
    NotifBorder.Position = UDim2.new(0, -2, 0, -2)
    NotifBorder.BackgroundColor3 = color
    NotifBorder.BorderSizePixel = 0
    NotifBorder.ZIndex = 0
    NotifBorder.Parent = Notif
    
    local NotifBorderCorner = Instance.new("UICorner")
    NotifBorderCorner.CornerRadius = UDim.new(0, 10)
    NotifBorderCorner.Parent = NotifBorder
    
    local Icon = Instance.new("TextLabel")
    Icon.Size = UDim2.new(0, 40, 1, 0)
    Icon.BackgroundTransparency = 1
    Icon.Text = "🔪"
    Icon.TextColor3 = color
    Icon.TextSize = 24
    Icon.Font = Enum.Font.GothamBold
    Icon.Parent = Notif
    
    local Label = Instance.new("TextLabel")
    Label.Size = UDim2.new(1, -50, 1, 0)
    Label.Position = UDim2.new(0, 45, 0, 0)
    Label.BackgroundTransparency = 1
    Label.Text = text
    Label.TextColor3 = Color3.new(1, 1, 1)
    Label.TextSize = 14
    Label.Font = Enum.Font.GothamBold
    Label.TextXAlignment = Enum.TextXAlignment.Left
    Label.TextWrapped = true
    Label.Parent = Notif
    
    Notif:TweenSize(UDim2.new(1, 0, 0, 60), Enum.EasingDirection.Out, Enum.EasingStyle.Back, 0.3, true)
    
    if Settings.PlaySound then
        local sound = Instance.new("Sound")
        sound.SoundId = "rbxassetid://6647898568"
        sound.Volume = 0.5
        sound.Parent = Notif
        sound:Play()
        game:GetService("Debris"):AddItem(sound, 2)
    end
    
    task.delay(5, function()
        Notif:TweenSize(UDim2.new(1, 0, 0, 0), Enum.EasingDirection.In, Enum.EasingStyle.Quad, 0.3, true)
        task.wait(0.3)
        Notif:Destroy()
    end)
end

-- Create player entry in list
local function CreatePlayerEntry(player, hasKnife)
    local Entry = Instance.new("Frame")
    Entry.Name = player.Name
    Entry.Size = UDim2.new(1, -10, 0, 45)
    Entry.BackgroundColor3 = hasKnife and Color3.fromRGB(40, 20, 20) or Color3.fromRGB(25, 25, 35)
    Entry.BorderSizePixel = 0
    Entry.Parent = ListFrame
    
    local EntryCorner = Instance.new("UICorner")
    EntryCorner.CornerRadius = UDim.new(0, 8)
    EntryCorner.Parent = Entry
    
    local PlayerName = Instance.new("TextLabel")
    PlayerName.Size = UDim2.new(1, -60, 0, 20)
    PlayerName.Position = UDim2.new(0, 10, 0, 5)
    PlayerName.BackgroundTransparency = 1
    PlayerName.Text = player.Name
    PlayerName.TextColor3 = hasKnife and Color3.fromRGB(255, 100, 100) or Color3.fromRGB(200, 200, 200)
    PlayerName.TextSize = 14
    PlayerName.Font = Enum.Font.GothamBold
    PlayerName.TextXAlignment = Enum.TextXAlignment.Left
    PlayerName.Parent = Entry
    
    local StatusText = Instance.new("TextLabel")
    StatusText.Name = "Status"
    StatusText.Size = UDim2.new(1, -60, 0, 18)
    StatusText.Position = UDim2.new(0, 10, 0, 24)
    StatusText.BackgroundTransparency = 1
    StatusText.Text = hasKnife and "⚠️ HAS KNIFE!" or "No knife"
    StatusText.TextColor3 = hasKnife and Color3.fromRGB(255, 200, 50) or Color3.fromRGB(150, 150, 150)
    StatusText.TextSize = 12
    StatusText.Font = Enum.Font.Gotham
    StatusText.TextXAlignment = Enum.TextXAlignment.Left
    StatusText.Parent = Entry
    
    local DistanceLabel = Instance.new("TextLabel")
    DistanceLabel.Name = "Distance"
    DistanceLabel.Size = UDim2.new(0, 50, 1, 0)
    DistanceLabel.Position = UDim2.new(1, -55, 0, 0)
    DistanceLabel.BackgroundTransparency = 1
    DistanceLabel.Text = "---"
    DistanceLabel.TextColor3 = Color3.fromRGB(100, 200, 255)
    DistanceLabel.TextSize = 13
    DistanceLabel.Font = Enum.Font.GothamBold
    DistanceLabel.Parent = Entry
    
    return Entry
end

-- Update player entry
local function UpdatePlayerEntry(player, hasKnife)
    local entry = ListFrame:FindFirstChild(player.Name)
    if entry then
        entry.BackgroundColor3 = hasKnife and Color3.fromRGB(40, 20, 20) or Color3.fromRGB(25, 25, 35)
        entry.Status.Text = hasKnife and "⚠️ HAS KNIFE!" or "No knife"
        entry.Status.TextColor3 = hasKnife and Color3.fromRGB(255, 200, 50) or Color3.fromRGB(150, 150, 150)
        
        local nameLabel = entry:FindFirstChild("TextLabel")
        if nameLabel then
            nameLabel.TextColor3 = hasKnife and Color3.fromRGB(255, 100, 100) or Color3.fromRGB(200, 200, 200)
        end
    else
        CreatePlayerEntry(player, hasKnife)
    end
end

-- Highlight player
local function HighlightPlayer(player, enable)
    if not player.Character then return end
    
    if enable and Settings.AutoHighlight then
        if not highlights[player] then
            local highlight = Instance.new("Highlight")
            highlight.FillColor = Settings.HighlightColor
            highlight.OutlineColor = Color3.fromRGB(255, 255, 255)
            highlight.FillTransparency = 0.5
            highlight.OutlineTransparency = 0
            highlight.Parent = player.Character
            highlights[player] = highlight
        end
    else
        if highlights[player] then
            highlights[player]:Destroy()
            highlights[player] = nil
        end
    end
end

-- Check if player has knife
local function CheckForKnife(player)
    if not player.Character then return false end
    
    local tool = player.Character:FindFirstChildOfClass("Tool")
    if tool and (tool.Name:lower():find("knife") or tool.Name:lower():find("blade")) then
        return true
    end
    
    local backpack = player:FindFirstChild("Backpack")
    if backpack then
        for _, item in pairs(backpack:GetChildren()) do
            if item:IsA("Tool") and (item.Name:lower():find("knife") or item.Name:lower():find("blade")) then
                return true
            end
        end
    end
    
    return false
end

-- Monitor players
local function MonitorPlayer(player)
    if player == LocalPlayer then return end
    
    CreatePlayerEntry(player, false)
    
    local function OnCharacterAdded(character)
        task.wait(1)
        
        character.ChildAdded:Connect(function(child)
            if child:IsA("Tool") and (child.Name:lower():find("knife") or child.Name:lower():find("blade")) then
                if not playersWithKnives[player] then
                    playersWithKnives[player] = true
                    
                    if Settings.NotifyKnife then
                        CreateNotification(player.Name .. " got a knife!", Color3.fromRGB(255, 80, 80))
                    end
                    
                    UpdatePlayerEntry(player, true)
                    HighlightPlayer(player, true)
                end
            end
        end)
        
        character.ChildRemoved:Connect(function(child)
            if child:IsA("Tool") and (child.Name:lower():find("knife") or child.Name:lower():find("blade")) then
                if not CheckForKnife(player) then
                    playersWithKnives[player] = false
                    UpdatePlayerEntry(player, false)
                    HighlightPlayer(player, false)
                end
            end
        end)
    end
    
    if player.Character then
        OnCharacterAdded(player.Character)
    end
    
    player.CharacterAdded:Connect(OnCharacterAdded)
end

-- Initialize for all players
for _, player in pairs(Players:GetPlayers()) do
    MonitorPlayer(player)
end

Players.PlayerAdded:Connect(MonitorPlayer)

Players.PlayerRemoving:Connect(function(player)
    playersWithKnives[player] = nil
    local entry = ListFrame:FindFirstChild(player.Name)
    if entry then entry:Destroy() end
    if highlights[player] then
        highlights[player]:Destroy()
        highlights[player] = nil
    end
end)

-- Update distances
RunService.Heartbeat:Connect(function()
    if not LocalPlayer.Character or not LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then return end
    
    for _, entry in pairs(ListFrame:GetChildren()) do
        if entry:IsA("Frame") and entry.Name ~= "UIListLayout" then
            local player = Players:FindFirstChild(entry.Name)
            if player and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
                local distance = (player.Character.HumanoidRootPart.Position - LocalPlayer.Character.HumanoidRootPart.Position).Magnitude
                local distLabel = entry:FindFirstChild("Distance")
                if distLabel then
                    distLabel.Text = math.floor(distance) .. "m"
                end
            end
        end
    end
end)

-- Toggle GUI
UserInputService.InputBegan:Connect(function(input)
    if input.KeyCode == Enum.KeyCode.Insert then
        MainFrame.Visible = not MainFrame.Visible
    end
end)

print("Breaking Point Knife Tracker Loaded!")
print("Press INSERT to toggle menu")

Features & Information

knife tracking player
#breaking point

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts