
Keyless

local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))()
local Window = Rayfield:CreateWindow({Name = 'the "debug" button they call it', LoadingTitle = 'ready for the chaos?'})
local Players = game:GetService('Players')
local RepStorage = game:GetService('ReplicatedStorage')
local LocalPlayer = Players.LocalPlayer
local function listChildren(folder)
local t = {}
if folder then
for _, v in ipairs(folder:GetChildren()) do
table.insert(t, v.Name)
end
end
table.sort(t)
return t
end
local function getFolder(root, ...)
local cur = root
for i = 1, select('#', ...) do
local n = select(i, ...)
if not cur then return nil end
cur = cur:FindFirstChild(n)
end
return cur
end
local function normalizeSelected(v)
if type(v) == 'string' then return v end
if typeof(v) == 'Instance' then return v.Name end
if type(v) == 'table' then
if v[1] then return v[1] end
if v.Name then return v.Name end
end
return tostring(v)
end
local function titleCase(s)
if not s or #s == 0 then return '' end
return string.upper(string.sub(s, 1, 1)) .. string.lower(string.sub(s, 2))
end
local function getAbnoNames()
return listChildren(getFolder(workspace, 'Abnormalities'))
end
local function getTalentNames()
return listChildren(getFolder(RepStorage, 'Assets', 'Talents'))
end
local abnoList = getAbnoNames()
local talentList = getTalentNames()
local selectedWork = 'Instinct'
local selectedTalentRaw = talentList[1] or ''
local selectedAbnos = {}
local Tab = Window:CreateTab('abno working')
Tab:CreateSection('Controls')
Tab:CreateSection('Select Abnormalities')
for _, abno in ipairs(abnoList) do
Tab:CreateToggle({
Name = abno,
CurrentValue = false,
Callback = function(Value)
if Value then
if not table.find(selectedAbnos, abno) then
table.insert(selectedAbnos, abno)
end
else
for i, v in ipairs(selectedAbnos) do
if v == abno then
table.remove(selectedAbnos, i)
break
end
end
end
end,
})
end
Tab:CreateButton({
Name = 'Clear Selection',
Callback = function()
selectedAbnos = {}
end,
})
Tab:CreateDropdown({
Name = 'Work Type',
Options = { 'Instinct', 'Insight', 'Attachment', 'Repression' },
CurrentOption = selectedWork,
Callback = function(opt)
selectedWork = opt
end,
})
Tab:CreateButton({
Name = 'Work',
Callback = function()
pcall(function()
if #selectedAbnos == 0 then return end
local abnoRoot = getFolder(workspace, 'Abnormalities')
if not abnoRoot then return end
local remote = getFolder(RepStorage, 'Assets', 'RemoteEvents', 'WorkEvent')
if not remote then return end
local flavor = titleCase(normalizeSelected(selectedWork))
for _, abnoName in ipairs(selectedAbnos) do
local sel = normalizeSelected(abnoName)
local abno = abnoRoot:FindFirstChild(sel)
if abno then
local wt = abno:FindFirstChild('WorkTablet')
if wt then remote:FireServer(wt, flavor) end
end
end
end)
end,
})
local CardTab = Window:CreateTab('card selector')
CardTab:CreateSection('Talent')
CardTab:CreateDropdown({
Name = 'Talent',
Options = talentList,
CurrentOption = selectedTalentRaw,
Callback = function(opt)
selectedTalentRaw = opt
end,
})
CardTab:CreateButton({
Name = 'Select card',
Callback = function()
pcall(function()
local sel = normalizeSelected(selectedTalentRaw)
if sel == '' then return end
local remote = getFolder(RepStorage, 'Assets', 'RemoteEvents', 'SelectCardEvent')
if not remote then return end
remote:FireServer(sel)
end)
end,
})
local WeaponTab = Window:CreateTab('weapon mod')
WeaponTab:CreateSection('Hitbox Settings')
local hitboxSize = 10
WeaponTab:CreateInput({
Name = 'Hitbox Size',
PlaceholderText = '10',
Callback = function(text)
local v = tonumber(text)
if v and v > 0 then hitboxSize = v end
end,
})
local function applyHitboxToWeapon(tool)
if tool and tool:IsA("Tool") then
local anims = tool:FindFirstChild("Animations")
if anims then
local attackAnims = anims:FindFirstChild("AttackAnimations")
if attackAnims then
for _, animFolder in ipairs(attackAnims:GetChildren()) do
local hitboxValue = animFolder:FindFirstChild("HitboxSize")
if hitboxValue and hitboxValue:IsA("Vector3Value") then
hitboxValue.Value = Vector3.new(hitboxSize, hitboxSize, hitboxSize)
end
end
end
end
end
end
local function applyHitboxToAllWeapons()
local character = LocalPlayer.Character
if character then
for _, child in ipairs(character:GetChildren()) do
if child:IsA("Tool") then applyHitboxToWeapon(child) end
end
end
local backpack = LocalPlayer:FindFirstChild("Backpack")
if backpack then
for _, child in ipairs(backpack:GetChildren()) do
if child:IsA("Tool") then applyHitboxToWeapon(child) end
end
end
end
WeaponTab:CreateButton({
Name = 'Apply Hitbox Size',
Callback = function()
applyHitboxToAllWeapons()
end,
})
WeaponTab:CreateSection('Damage Settings')
local dmgMax = 1500
local dmgMin = 1500
WeaponTab:CreateInput({
Name = 'Max Damage',
PlaceholderText = '50',
Callback = function(text)
local v = tonumber(text)
if v then dmgMax = v end
end,
})
WeaponTab:CreateInput({
Name = 'Min Damage',
PlaceholderText = '50',
Callback = function(text)
local v = tonumber(text)
if v then dmgMin = v end
end,
})
WeaponTab:CreateSection('Attack Speed')
local attackSpeedValue = 5
local infiniteAttackSpeed = false
WeaponTab:CreateInput({
Name = 'Attack Speed',
PlaceholderText = '5',
Callback = function(text)
local v = tonumber(text)
if v then attackSpeedValue = v end
end,
})
local function setAttackSpeedValue(val)
pcall(function()
local units = workspace:WaitForChild('Units', 2)
local playerUnit = units and units:FindFirstChild(LocalPlayer.Name)
local charStats = playerUnit and playerUnit:FindFirstChild('CharStats')
local attackSpeed = charStats and charStats:FindFirstChild('AttackSpeed')
if attackSpeed then attackSpeed.Value = val end
end)
end
WeaponTab:CreateToggle({
Name = 'Infinite Attack Speed',
CurrentValue = false,
Callback = function(Value)
infiniteAttackSpeed = Value
if infiniteAttackSpeed then
setAttackSpeedValue(math.huge)
else
setAttackSpeedValue(attackSpeedValue)
end
end,
})
WeaponTab:CreateButton({
Name = 'Apply Attack Speed',
Callback = function()
if infiniteAttackSpeed then
setAttackSpeedValue(math.huge)
else
setAttackSpeedValue(attackSpeedValue)
end
end,
})
WeaponTab:CreateSection('Utilities')
WeaponTab:CreateButton({
Name = "Load Unit Tracker",
Callback = function()
pcall(function()
local Players=game:GetService("Players");local UIS=game:GetService("UserInputService");local player=Players.LocalPlayer;local old=player:WaitForChild("PlayerGui"):FindFirstChild("UnitTracker");if old then old:Destroy()end;local screenGui=Instance.new("ScreenGui");screenGui.Name="UnitTracker";screenGui.ResetOnSpawn=false;screenGui.Parent=player:WaitForChild("PlayerGui");local frame=Instance.new("Frame");frame.Name="MainFrame";frame.Size=UDim2.new(0,300,0,300);frame.Position=UDim2.new(0.5,-150,0.5,-150);frame.BackgroundColor3=Color3.fromRGB(25,25,25);frame.BorderSizePixel=0;frame.Parent=screenGui;local dragging=false;local dragStart,startPos;local function updateDrag(input)local delta=input.Position-dragStart;frame.Position=UDim2.new(startPos.X.Scale,startPos.X.Offset+delta.X,startPos.Y.Scale,startPos.Y.Offset+delta.Y)end;frame.InputBegan:Connect(function(input)if input.UserInputType==Enum.UserInputType.MouseButton1 then dragging=true;dragStart=input.Position;startPos=frame.Position;input.Changed:Connect(function()if input.UserInputState==Enum.UserInputState.End then dragging=false end end)end end);UIS.InputChanged:Connect(function(input)if dragging and input.UserInputType==Enum.UserInputType.MouseMovement then updateDrag(input)end end);local title=Instance.new("TextLabel");title.Size=UDim2.new(1,0,0,30);title.BackgroundColor3=Color3.fromRGB(35,35,35);title.Text="Unit Tracker";title.TextColor3=Color3.fromRGB(255,255,255);title.TextSize=16;title.Font=Enum.Font.SourceSansBold;title.Parent=frame;local scroll=Instance.new("ScrollingFrame");scroll.Size=UDim2.new(1,0,1,-30);scroll.Position=UDim2.new(0,0,0,30);scroll.BackgroundTransparency=1;scroll.CanvasSize=UDim2.new(0,0,0,0);scroll.ScrollBarThickness=6;scroll.Parent=frame;local listLayout=Instance.new("UIListLayout");listLayout.Parent=scroll;listLayout.Padding=UDim.new(0,4);local function updateList()for _,obj in ipairs(scroll:GetChildren())do if obj:IsA("TextButton")then obj:Destroy()end end;local unitsFolder=workspace:FindFirstChild("Units");if not unitsFolder then return end;for _,unit in ipairs(unitsFolder:GetChildren())do if unit:IsA("Model")and unit.Name~="Clerk"then local btn=Instance.new("TextButton");btn.Size=UDim2.new(1,-10,0,25);btn.BackgroundColor3=Color3.fromRGB(50,50,50);btn.Text=unit.Name;btn.TextColor3=Color3.fromRGB(255,255,255);btn.TextSize=14;btn.Font=Enum.Font.SourceSans;btn.Parent=scroll;btn.MouseButton1Click:Connect(function()local char=player.Character;local hrp=char and char:FindFirstChild("HumanoidRootPart");if hrp and unit and unit.PrimaryPart then local pivot=unit:GetPivot().Position;local rayOrigin=pivot;local rayDirection=Vector3.new(0,-50,0);local rayParams=RaycastParams.new();rayParams.FilterDescendantsInstances={unit};rayParams.FilterType=Enum.RaycastFilterType.Exclude;local result=workspace:Raycast(rayOrigin,rayDirection,rayParams);local targetPos=result and result.Position or pivot;hrp.CFrame=CFrame.new(targetPos+Vector3.new(0,3,0))end end)end end;scroll.CanvasSize=UDim2.new(0,0,0,listLayout.AbsoluteContentSize.Y+10)end;task.spawn(function()while task.wait(3)do updateList()end end);updateList();local resizeHandle=Instance.new("Frame");resizeHandle.Size=UDim2.new(0,16,0,16);resizeHandle.AnchorPoint=Vector2.new(1,1);resizeHandle.Position=UDim2.new(1,0,1,0);resizeHandle.BackgroundColor3=Color3.fromRGB(70,70,70);resizeHandle.BorderSizePixel=0;resizeHandle.Active=true;resizeHandle.Parent=frame;local resizing=false;resizeHandle.InputBegan:Connect(function(input)if input.UserInputType==Enum.UserInputType.MouseButton1 then resizing=true end end);resizeHandle.InputEnded:Connect(function(input)if input.UserInputType==Enum.UserInputType.MouseButton1 then resizing=false end end);UIS.InputChanged:Connect(function(input)if resizing and input.UserInputType==Enum.UserInputType.MouseMovement then local newSizeX=math.clamp(input.Position.X-frame.AbsolutePosition.X,200,800);local newSizeY=math.clamp(input.Position.Y-frame.AbsolutePosition.Y,150,600);frame.Size=UDim2.new(0,newSizeX,0,newSizeY)end end)
end)
end,
})
local function applyDamageToTool(tool)
if tool:IsA('Tool') then
local settings = tool:FindFirstChild('SettingValues')
if settings then
local maxVal = settings:FindFirstChild('MaxDamageValue')
local minVal = settings:FindFirstChild('MinDamageValue')
if maxVal then pcall(function() maxVal.Value = dmgMax end) end
if minVal then pcall(function() minVal.Value = dmgMin end) end
end
end
end
local function applyAllDamageToWeapons()
local bp = LocalPlayer:FindFirstChild('Backpack')
if bp then
for _, tool in ipairs(bp:GetChildren()) do applyDamageToTool(tool) end
end
local char = LocalPlayer.Character
if char then
for _, tool in ipairs(char:GetChildren()) do applyDamageToTool(tool) end
end
end
LocalPlayer.Backpack.ChildAdded:Connect(function(child)
if child:IsA("Tool") then
applyHitboxToWeapon(child)
applyDamageToTool(child)
end
end)
LocalPlayer.CharacterAdded:Connect(function(character)
task.wait(1)
if infiniteAttackSpeed then
setAttackSpeedValue(math.huge)
else
setAttackSpeedValue(attackSpeedValue)
end
applyAllDamageToWeapons()
character.ChildAdded:Connect(function(child)
if child:IsA("Tool") then
applyHitboxToWeapon(child)
applyDamageToTool(child)
end
end)
end)
task.spawn(function()
while task.wait(1) do
applyAllDamageToWeapons()
end
end)
W
hey you can update the script if you want
@tuantuplayer i have no idea on how to use rayfield so i doubt it
just ask gemini or gpt
@tuantuplayer okay i try to update it and i ask gemini fix the hitbox expander and is work yeah no more bug
@Khoaplh1234 new mission for you gng try to fix the card selector
@projectmoonsuperfan yo can you fix the damage changer
@projectmoonsuperfan the hitbox too if you can thank you
@lversragos gng it been dead since the heian era
@projectmoonsuperfan 💔💔💔💔 so no more update????
@lversragos yes
@projectmoonsuperfan ah * it
card selector don' t work
can you add auto-parry feature?
can you fix the damage changer
yo fix the hitbox and damage changer
W
The speed changer doesn’t seem to be working either. It may have been patched, since whenever it hits with something, the speed resets back to the default.