Deepwoken is one of the most thrilling and complex Roblox games, known for its high-stakes survival mechanics and intense combat system. As exciting as the game is, many players are turning to scripts to streamline gameplay, access advanced tools, and unlock new possibilities. In this guide, we’ve gathered a set of powerful scripts that bring helpful enhancements to your Deepwoken experience. Whether you’re after smoother farming, automated systems, or feature-rich utilities, these scripts offer something unique for every adventurer.
01. Star Hub
Star Hub is a feature-rich Deepwoken script loaded through Luarmor. It’s designed for users looking to quickly unlock advanced capabilities without diving into complicated setups. With a focus on performance and reliability, this script is widely favored by players who want dependable support in-game.
| Feature Type | Description |
|---|---|
| Auto Actions | Helps automate repetitive gameplay |
| Fast Execution | Optimized for quicker responses |
| Broad Coverage | Works in many areas of the game |
loadstring(game:HttpGet("https://api.luarmor.net/files/v3/loaders/2563babaafec32c6f94efd8aea112bbc.lua"))()
02. Ciel Lite
Ciel Lite is a lightweight but powerful script tailored to boost player control in Deepwoken. Developed with simplicity in mind, it allows players to manage various in-game functions effortlessly. Its clean code and effective commands make it a solid choice for beginners and experienced users alike.
| Script Functionality | Key Features |
|---|---|
| Easy to Use | Friendly for new scripters |
| Lightweight | Doesn’t slow down your gameplay |
| Multi-Purpose | Covers combat and utilities |
loadstring(game:HttpGet("https://raw.githubusercontent.com/nomii0700/Roblox-Scrips/refs/heads/main/DeepwokenCiel.lua"))()
03. Cashhub
Cashhub is a robust script known for offering extra convenience in farming and interaction. It simplifies some of the game’s most time-consuming tasks, letting players focus on strategy and exploration. With its steady updates and reliable performance, it’s a go-to for anyone seeking smooth automation.
| Utility | Description |
|---|---|
| Auto Farm | Automatically earns in-game rewards |
| Consistent Updates | Script remains regularly supported |
| Efficient Handling | Smooth in-game execution flow |
loadstring(game:HttpGet("https://api.luarmor.net/files/v3/loaders/5148416f636b41ddcb31e3eb53fcdfcf.lua"))()
04. b0obwoken Opensourced
b0obwoken is a more advanced, open-source script that offers deep customization for users who like to explore the mechanics of scripting. Unlike prepackaged loaders, this script provides insights into how scripts function internally. It’s perfect for those wanting to tweak or learn from actual code.
| Technical Element | Purpose |
|---|---|
| Custom Asset Use | Loads files from your local system |
| Script Injection | Inserts custom behavior into the game |
| Dev-Level Control | Great for advanced script modification |
if not game:IsLoaded() then
game.Loaded:Wait()
end
getsynasset = getcustomasset
syn_io_listdir = listfiles
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local LocalPlayer = Players.LocalPlayer
--
local function requireShit(object)
local object = game:GetObjects(getsynasset(object))[1]
object=object:Clone()
local source = object.Source
local shit = loadstring(source,object.Name)
local origEnv = getfenv(shit);
getfenv(shit).script = object;
getfenv(shit).require=function(what)
return requireShit(what);
end
local dat = {pcall(function()
return shit();
end)}
if(dat[1]==false)then
warn(dat[2])
return nil
else
table.remove(dat,1)
return unpack(dat)
end
end
local SpringClass = nil
local RaceData = nil
local KeyframeService = nil
local DressUp = nil
local GenderCalculator = nil
local RanOnce = false
local ConfigData = {
CustomScales = nil,
ShowChest = true,
ShowButt = true,
ShowCrotch = false,
ApplyToOthers = true,
UtilizeGender = false,
}
game.Close:Connect(function()
if not RunService:IsStudio() then
writefile("BoobWokenData/Configurations.txt",game["HttpService"]:JSONEncode(ConfigData))
else
warn("heehehaha i am se lf a ware that im in stu d i o l ma")
warn("I Should've saved : ",game["HttpService"]:JSONEncode(ConfigData))
end
end)
-- INSERT THE LOAD DAMN IT (badumtss.)
if not RunService:IsStudio() then
if isfile("BoobWokenData/Configurations.txt") then
ConfigData = game["HttpService"]:JSONDecode(readfile("BoobWokenData/Configurations.txt"))
end
else
wait(5)
warn("something something trying to load something penis")
end
local ConfigGui = nil
local TrackedRigs = {}
if not RunService:IsStudio() then
SpringClass = requireShit("BoobWokenData/SpringClass.rbxm")
RaceData = requireShit("BoobWokenData/RaceModule.rbxm")
KeyframeService = requireShit("BoobWokenData/KeyframeService.rbxm")
DressUp = requireShit("BoobWokenData/DressUpCharacter.rbxm")
GenderCalculator = requireShit("BoobWokenData/CalculateGender.rbxm")
ConfigGui = game:GetObjects(getsynasset("BoobWokenData/CustomizeGui.rbxm"))[1]
ConfigGui.Parent = game.CoreGui
else
SpringClass = require(script:WaitForChild("SpringClass"))
RaceData = require(script:WaitForChild("RaceModule"))
KeyframeService = require(script:WaitForChild("KeyframeService"))
DressUp = require(script:WaitForChild("DressUpCharacter"))
GenderCalculator = require(script:WaitForChild("CalculateGender"))
ConfigGui = script:WaitForChild("bwgui")
ConfigGui.Parent = LocalPlayer:FindFirstChildOfClass("PlayerGui")
end
ConfigGui.Enabled = true
--
--game:GetService("Workspace").Live[".crocco7648"].CustomRig
function BreastPhysics(Model,HumRoot,Scale)
if not SpringClass then
return
end
spawn(function()
local P = Model:FindFirstChild("BoobJ",true)
local A = Model:FindFirstChild("BJ",true)
if P then
local OGC0 = P.C0
local OGC02 = A.C0
local Torso = HumRoot.Parent.Torso
local BreastSpring = SpringClass.new(Vector3.new(0,0,0))
BreastSpring.Target = Vector3.new(3,3,3);
BreastSpring.Velocity = Vector3.new(0,0,0);
BreastSpring.Speed = 10;
BreastSpring.Damper = .2;
local AssSpring = SpringClass.new(Vector3.new(0,0,0))
AssSpring.Target = Vector3.new(3,3,3);
AssSpring.Velocity = Vector3.new(0,0,0);
AssSpring.Speed = 10;
AssSpring.Damper = .1;
local OGR = Torso.RotVelocity
local OGP = Torso.Position
local StepConn
StepConn = RunService.Stepped:Connect(function(t,d)
if not Model.Parent or not HumRoot.Parent or not HumRoot.Parent.Parent then
Model:Destroy()
StepConn:Disconnect()
AssSpring = nil
BreastSpring = nil
return
end
local CURRP = Torso.Position
local CurrRot = Torso.RotVelocity
BreastSpring:TimeSkip(d)
BreastSpring:Impulse((OGP - CURRP) + Vector3.new((OGR - CurrRot).Y/4),0,0)
--print(BreastSpring.Velocity.Z)
P.C0 = OGC0 * CFrame.Angles(
math.rad(10*BreastSpring.Velocity.Y)
,
math.rad(5*BreastSpring.Velocity.X)
,
0
--math.rad(5*BreastSpring.Velocity.Z)
)
AssSpring:TimeSkip(d)
AssSpring:Impulse((OGP - CURRP) + Vector3.new(0,0,(OGR - CurrRot).Y/4))
--print(BreastSpring.Velocity.Z)
A.C0 = OGC02 * CFrame.Angles(
math.rad(3*AssSpring.Velocity.Y)
,
math.rad(3*AssSpring.Velocity.X)
,
math.rad(2*AssSpring.Velocity.Z)
--math.rad(5*BreastSpring.Velocity.Z)
)
OGR = CurrRot
OGP = CURRP
end)
else
local OGC02 = A.C0
local Torso = HumRoot.Parent.Torso
local AssSpring = SpringClass.new(Vector3.new(0,0,0))
AssSpring.Target = Vector3.new(3,3,3);
AssSpring.Velocity = Vector3.new(0,0,0);
AssSpring.Speed = 10;
AssSpring.Damper = .1;
local OGR = Torso.RotVelocity
local OGP = Torso.Position
local StepConn
StepConn = RunService.Stepped:Connect(function(t,d)
if not Model.Parent or not HumRoot.Parent or not HumRoot.Parent.Parent then
warn("dc'd")
Model:Destroy()
StepConn:Disconnect()
AssSpring = nil
return
end
local CURRP = Torso.Position
local CurrRot = Torso.RotVelocity
AssSpring:TimeSkip(d)
AssSpring:Impulse((OGP - CURRP) + Vector3.new(0,0,(OGR - CurrRot).Y/4))
--print(BreastSpring.Velocity.Z)
A.C0 = OGC02 * CFrame.Angles(
math.rad(3*AssSpring.Velocity.Y)
,
math.rad(3*AssSpring.Velocity.X)
,
math.rad(2*AssSpring.Velocity.Z)
--math.rad(5*BreastSpring.Velocity.Z)
)
OGR = CurrRot
OGP = CURRP
end)
end
end)
end
local function RegisterSlider(Gui:Frame)
local Methods = {}
local RunMe = {}
local Button = Gui.Button
local Min,Max = 0,Gui.AbsoluteSize.X
local BoundaryMinX,BoundaryMaxX = Min,Max
local CurrentValue = 0
local IsInside = false
local LetGo = true
local OgPos = Gui.Button.Position
local MouseX = UserInputService:GetMouseLocation().X
local LoopConn = nil
Button.MouseEnter:Connect(function()
IsInside = true
end)
Button.MouseLeave:Connect(function()
IsInside = false
end)
function Methods:SetBoundaries(min,max)
-- assume x is 0-1.
BoundaryMinX = Max*min
BoundaryMaxX = Max*max
end
function Methods:SetValue(x)
CurrentValue = x
Gui.Button.Position = UDim2.fromOffset(Max*x,OgPos.Y.Offset)
end
function Methods:GetValue()
return CurrentValue
end
Methods.Updated = {
Connect = function(self,func)
local Index = #RunMe+1
RunMe[Index] = func
return {
Disconnect = function(self)
RunMe[Index] = nil
end,
}
end,
}
UserInputService.InputBegan:Connect(function(io,gpe)
if io.UserInputType == Enum.UserInputType.MouseButton1 then
if IsInside == true then
OgPos = Gui.Button.Position
MouseX = UserInputService:GetMouseLocation().X
LetGo = false
LoopConn = RunService.RenderStepped:Connect(function()
if LetGo == true then
LoopConn:Disconnect()
else
local XDiff = UserInputService:GetMouseLocation().X - MouseX
local NewPos = OgPos + UDim2.fromOffset(XDiff,0)
if NewPos.X.Offset < BoundaryMinX then
NewPos = UDim2.fromOffset(BoundaryMinX,OgPos.Y.Offset)
elseif NewPos.X.Offset > BoundaryMaxX then
NewPos = UDim2.fromOffset(BoundaryMaxX,OgPos.Y.Offset)
end
CurrentValue = NewPos.X.Offset/Max
for _,func in pairs(RunMe) do
func(CurrentValue)
end
--warn(NewValue)
Gui.Button.Position = NewPos
end
end)
end
end
end)
UserInputService.InputEnded:Connect(function(io,gpe)
if io.UserInputType == Enum.UserInputType.MouseButton1 then
LetGo = true
end
end)
return Methods
end
local ButtSlider = RegisterSlider(ConfigGui.CharacterFrame.Characters.ButtSlider)
local ChestSlider = RegisterSlider(ConfigGui.CharacterFrame.Characters.ChestSlider)
local CrotchSlider = RegisterSlider(ConfigGui.CharacterFrame.Characters.CrotchSlider)
local PreviousB,PreviousC,PreviousCDeez = nil,nil,nil
function CheckIfValidRigAndApply(Model,ApplyPhysics,...)
wait(.03)
spawn(function()
wait(.6)
-- run asynchronysly.
local Player = Players:FindFirstChild(Model.Name)
if not Player or Player ~= LocalPlayer then
if ConfigData.ApplyToOthers == false then
return
end
end
local HumanoidRootPart = Model:FindFirstChild("HumanoidRootPart")
if not HumanoidRootPart then
HumanoidRootPart = Model:WaitForChild("HumanoidRootPart")
end
local Torso = Model:WaitForChild("Torso")
local Humanoid = Model:FindFirstChild("Humanoid")
local x = true
if Model:FindFirstChild("CustomRig") or (Humanoid and Humanoid.RigType == Enum.HumanoidRigType.R15) then
return
end -- we dont need floating tiddies again
local Name = Model.Name
if string.len(Humanoid.DisplayName) > 1 then
Name = Humanoid.DisplayName
end
-- warn(Name)
local FirstName = Name
if string.find(FirstName," ") then
FirstName = string.sub(Name,1,string.find(FirstName," ") - 1)
end
-- warn(FirstName)
local Race,Varient = RaceData:GetRaceFromSkinTone(Torso.Color)
local Scales = RaceData:ScaleViaNameAndRace(Name,Race)
local Gender = GenderCalculator:DetermineGender(Model,((Player and FirstName) or nil))
--local Gender = 1
local NewRig = nil
--[[
if Gender == 1 then
NewRig = DressUp:ApplyFemBody(RaceData,Model)
elseif Gender == 0 then
--NewRig = DressUp:ApplyMaleBody(RaceData,Model)
elseif Gender == 2 then
--NewRig = DressUp:ApplyHermBody(RaceData,Model)
end
]]
if Player == LocalPlayer then
if ConfigData.CustomScales then
if RanOnce == false then
ButtSlider:SetValue(ConfigData.CustomScales.Ass)
ChestSlider:SetValue(ConfigData.CustomScales.Breasts)
CrotchSlider:SetValue(ConfigData.CustomScales.Dick)
end
if ConfigData.UtilizeGender and Gender == 0 then
NewRig = DressUp:ApplyMaleBody(RaceData,Model,ConfigData.CustomScales)
else
NewRig = DressUp:ApplyFemBody(RaceData,Model,ConfigData.CustomScales)
end
else
if RanOnce == false then
ButtSlider:SetValue(Scales.Ass)
ChestSlider:SetValue(Scales.Breasts)
CrotchSlider:SetValue(Scales.Dick)
end
if ConfigData.UtilizeGender and Gender == 0 then
NewRig = DressUp:ApplyMaleBody(RaceData,Model,Scales)
else
NewRig = DressUp:ApplyFemBody(RaceData,Model,Scales)
end
end
if PreviousB then
PreviousB:Disconnect()
PreviousB = nil
end
PreviousB = ButtSlider.Updated:Connect(function(value)
ConfigData.CustomScales = {
Ass = value,Breasts = ChestSlider:GetValue(),Dick = CrotchSlider:GetValue()
}
DressUp.ScalingFunctions:AssScaler(NewRig,value)
end)
if PreviousC then
PreviousC:Disconnect()
PreviousC = nil
end
PreviousC = ChestSlider.Updated:Connect(function(value)
ConfigData.CustomScales = {
Ass = ButtSlider:GetValue(),Breasts = value,Dick = CrotchSlider:GetValue()
}
if NewRig.T.RT:FindFirstChild("Bust") then
DressUp.ScalingFunctions:BreastScaler(NewRig,value)
end
end)
if PreviousCDeez then
PreviousCDeez:Disconnect()
PreviousCDeez = nil
end
PreviousCDeez = CrotchSlider.Updated:Connect(function(value)
ConfigData.CustomScales = {
Ass = ButtSlider:GetValue(),Breasts = ChestSlider:GetValue(),Dick = value
}
if NewRig.T.RT:FindFirstChild("Groin") then
DressUp.ScalingFunctions:CrotchScaler(NewRig,value)
end
end)
if RanOnce == false then
RanOnce = true
end
else
if ConfigData.UtilizeGender and Gender == 0 then
NewRig = DressUp:ApplyMaleBody(RaceData,Model,Scales)
else
NewRig = DressUp:ApplyFemBody(RaceData,Model,Scales)
end
end
if NewRig then
if not ConfigData.ShowButt then
NewRig.T.RT.Butt["Left Cheek"].Transparency = 1
NewRig.T.RT.Butt["Right Cheek"].Transparency = 1
NewRig.T.RT.Butt["Left Cheek"].Shirt.Transparency = 1
NewRig.T.RT.Butt["Right Cheek"].Shirt.Transparency = 1
NewRig.T.RT.Butt["Left Cheek"].Pants.Transparency = 1
NewRig.T.RT.Butt["Right Cheek"].Pants.Transparency = 1
end
if not ConfigData.ShowChest and NewRig.T.RT:FindFirstChild("Bust") then
NewRig.T.RT.Bust.Shirt.Transparency = 1
NewRig.T.RT.Bust.Pants.Transparency = 1
NewRig.T.RT.Bust.VisualBust.Transparency = 1
NewRig.T.RT.Bust.VisualBust.Are.Transparency = 1
end
if not ConfigData.ShowCrotch and NewRig.T.RT:FindFirstChild("Groin") then
NewRig.T.RT.Groin.Shirt.Transparency = 1
NewRig.T.RT.Groin.Pants.Transparency = 1
NewRig.T.RT.Groin.Transparency = 1
end
TrackedRigs[#TrackedRigs+1] = NewRig
if ApplyPhysics then
if not HumanoidRootPart or not HumanoidRootPart.Parent or HumanoidRootPart.Parent ~= Model or Model.Parent == nil then
NewRig:Destroy()
else
BreastPhysics(NewRig,HumanoidRootPart,1)
end
--[[
if Gender == 1 then
BreastPhysics(NewRig,HumanoidRootPart,1)
end
]]
end
else
warn("Unsuccessfull, "..tostring(Model))
return
end
return NewRig
end)
end
-- dw
local NPCADDED = nil
local LIVEADDED = nil
-- lol
ConfigGui.CharacterFrame.Characters.ReplicateButton.Toggle.MouseButton1Click:Connect(function()
ConfigData.ApplyToOthers = not ConfigData.ApplyToOthers
ConfigGui.CharacterFrame.Characters.ReplicateButton.Tick.TextLabel.Visible = ConfigData.ApplyToOthers
if not ConfigData.ApplyToOthers then
if NPCADDED then
NPCADDED:Disconnect()
NPCADDED = nil
end
if LIVEADDED then
LIVEADDED:Disconnect()
LIVEADDED = nil
end
for i,Rig in pairs(TrackedRigs) do
if Rig.Parent then
local Model = Rig.Parent
if not (Players:FindFirstChild(Model.Name) == LocalPlayer) then
TrackedRigs[i] = nil
Rig:Destroy()
pcall(function()
Model["Left Leg"].Transparency = 0
Model["Right Leg"].Transparency = 0
Model["Torso"].Transparency = 0
Model["Right Arm"].Transparency = 0
Model["Left Arm"].Transparency = 0
end)
end
else
TrackedRigs[i] = nil
end
end
else
if (game.CreatorId == 5212858 or RunService:IsStudio()) then
local LiveFolder = workspace:WaitForChild("Live")
local NPCFolder = workspace:WaitForChild("NPCs")
for i,m in pairs(LiveFolder:GetChildren()) do
if m:IsA("Model") and not (Players:FindFirstChild(m.Name) == LocalPlayer) then
CheckIfValidRigAndApply(m,true)
end
end
LIVEADDED = LiveFolder.ChildAdded:Connect(function(m)
if m:IsA("Model") then
CheckIfValidRigAndApply(m,true)
end
end)
for i,m in pairs(NPCFolder:GetChildren()) do
if m:IsA("Model") then
CheckIfValidRigAndApply(m,false)
end
end
NPCADDED = NPCFolder.ChildAdded:Connect(function(m)
if m:IsA("Model") then
CheckIfValidRigAndApply(m,false)
end
end)
else
--if game.CreatorId == 5212858 then
for i,v in pairs(Players:GetPlayers()) do
if v ~= LocalPlayer then
if v.Character then
CheckIfValidRigAndApply(v.Character,true)
end
end
end
NPCADDED = Players.PlayerAdded:Connect(function(v)
if v.Character then
CheckIfValidRigAndApply(v.Character,true)
end
v.CharacterAdded:Connect(function()
spawn(function()
wait(1)
CheckIfValidRigAndApply(v.Character,true)
end)
end)
end)
end
end
end)
ConfigGui.CharacterFrame.Characters.ButtButton.Toggle.MouseButton1Click:Connect(function()
ConfigData.ShowButt = not ConfigData.ShowButt
ConfigGui.CharacterFrame.Characters.ButtButton.Tick.TextLabel.Visible = ConfigData.ShowButt
if ConfigData.ShowButt then
for _,v in pairs(TrackedRigs) do
pcall(function()
v.T.RT.Butt["Left Cheek"].Transparency = 0
v.T.RT.Butt["Right Cheek"].Transparency = 0
v.T.RT.Butt["Left Cheek"].Shirt.Transparency = 0
v.T.RT.Butt["Right Cheek"].Shirt.Transparency = 0
v.T.RT.Butt["Left Cheek"].Pants.Transparency = 0
v.T.RT.Butt["Right Cheek"].Pants.Transparency = 0
end)
end
else
for _,v in pairs(TrackedRigs) do
pcall(function()
v.T.RT.Butt["Left Cheek"].Transparency = 1
v.T.RT.Butt["Right Cheek"].Transparency = 1
v.T.RT.Butt["Left Cheek"].Shirt.Transparency = 1
v.T.RT.Butt["Right Cheek"].Shirt.Transparency = 1
v.T.RT.Butt["Left Cheek"].Pants.Transparency = 1
v.T.RT.Butt["Right Cheek"].Pants.Transparency = 1
end)
end
end
end)
ConfigGui.CharacterFrame.Characters.ChestButton.Toggle.MouseButton1Click:Connect(function()
ConfigData.ShowChest = not ConfigData.ShowChest
ConfigGui.CharacterFrame.Characters.ChestButton.Tick.TextLabel.Visible = ConfigData.ShowChest
if ConfigData.ShowChest then
for _,v in pairs(TrackedRigs) do
pcall(function()
if v.T.RT:FindFirstChild("Bust") then
v.T.RT.Bust.Shirt.Transparency = 0
v.T.RT.Bust.Pants.Transparency = 0
v.T.RT.Bust.VisualBust.Transparency = 0
v.T.RT.Bust.VisualBust.Are.Transparency = 0
end
end)
end
else
for _,v in pairs(TrackedRigs) do
pcall(function()
if v.T.RT:FindFirstChild("Bust") then
v.T.RT.Bust.Shirt.Transparency = 1
v.T.RT.Bust.Pants.Transparency = 1
v.T.RT.Bust.VisualBust.Transparency = 1
v.T.RT.Bust.VisualBust.Are.Transparency = 1
end
end)
end
end
end)
ConfigGui.CharacterFrame.Characters.CrotchButton.Toggle.MouseButton1Click:Connect(function()
ConfigData.ShowCrotch = not ConfigData.ShowCrotch
ConfigGui.CharacterFrame.Characters.CrotchButton.Tick.TextLabel.Visible = ConfigData.ShowCrotch
if ConfigData.ShowCrotch then
for _,v in pairs(TrackedRigs) do
pcall(function()
if v.T.RT:FindFirstChild("Groin") then
v.T.RT.Groin.Shirt.Transparency = 0
v.T.RT.Groin.Pants.Transparency = 0
v.T.RT.Groin.Transparency = 0
end
end)
end
else
for _,v in pairs(TrackedRigs) do
pcall(function()
if v.T.RT:FindFirstChild("Groin") then
v.T.RT.Groin.Shirt.Transparency = 1
v.T.RT.Groin.Pants.Transparency = 1
v.T.RT.Groin.Transparency = 1
end
end)
end
end
end)
ConfigGui.CharacterFrame.Characters.GenderButton.Toggle.MouseButton1Click:Connect(function()
ConfigData.UtilizeGender = not ConfigData.UtilizeGender
ConfigGui.CharacterFrame.Characters.GenderButton.Tick.TextLabel.Visible = ConfigData.UtilizeGender
if ConfigData.UtilizeGender then
for i,v in pairs(TrackedRigs) do
if v.Parent then
local Model = v.Parent
local Humanoid = Model:FindFirstChildOfClass("Humanoid")
local Name = Model.Name
if string.len(Humanoid.DisplayName) > 1 then
Name = Humanoid.DisplayName
end
-- warn(Name)
local FirstName = Name
if string.find(FirstName," ") then
FirstName = string.sub(Name,1,string.find(FirstName," ") - 1)
end
-- warn(FirstName)
local Gender = GenderCalculator:DetermineGender(Model,((Players:FindFirstChild(Model.Name) and FirstName) or nil))
if Gender == 0 and v.Name == "FemRig" then
v:Destroy()
CheckIfValidRigAndApply(Model,not (Model.Parent.Name == "NPCs" or false))
end
else
TrackedRigs[i] = nil
end
end
else
for i,v in pairs(TrackedRigs) do
if v.Parent then
local Model = v.Parent
if v.Name ~= "FemRig" then
v:Destroy()
CheckIfValidRigAndApply(Model,not (Model.Parent.Name == "NPCs" or false))
end
else
TrackedRigs[i] = nil
end
end
end
end)
if not RunService:IsStudio() then
ConfigGui.CreditF.Kofi.MouseButton1Click:Connect(function()
setclipboard("https://ko-fi.com/ukiyodev")
ConfigGui.CreditF.PaddinglessBehavoir.Copied.Visible = true
delay(1,function()
ConfigGui.CreditF.PaddinglessBehavoir.Copied.Visible = false
end)
end)
ConfigGui.CreditF.Twitter.MouseButton1Click:Connect(function()
setclipboard("https://twitter.com/Geno_Dev")
ConfigGui.CreditF.PaddinglessBehavoir.Copied.Visible = true
delay(1,function()
ConfigGui.CreditF.PaddinglessBehavoir.Copied.Visible = false
end)
end)
end
ConfigGui.CharacterFrame.Credit.ClickMe.MouseButton1Click:Connect(function()
ConfigGui.CreditF.Visible = not ConfigGui.CreditF.Visible
end)
ConfigGui.CharacterFrame.Characters.CrotchButton.Tick.TextLabel.Visible = ConfigData.ShowCrotch
ConfigGui.CharacterFrame.Characters.ReplicateButton.Tick.TextLabel.Visible = ConfigData.ApplyToOthers
ConfigGui.CharacterFrame.Characters.ChestButton.Tick.TextLabel.Visible = ConfigData.ShowChest
ConfigGui.CharacterFrame.Characters.ButtButton.Tick.TextLabel.Visible = ConfigData.ShowButt
ConfigGui.CharacterFrame.Characters.GenderButton.Tick.TextLabel.Visible = ConfigData.UtilizeGender
UserInputService.InputBegan:Connect(function(io,gpe)
if not gpe then
if io.KeyCode == Enum.KeyCode.LeftAlt and UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then
ConfigGui.CharacterFrame.Visible = not ConfigGui.CharacterFrame.Visible
if not ConfigGui.CharacterFrame.Visible then
ConfigGui.CreditF.Visible = false
end
end
end
end)
if (game.CreatorId == 5212858 or RunService:IsStudio()) then
local LiveFolder = workspace:WaitForChild("Live")
local NPCFolder = workspace:WaitForChild("NPCs")
for i,m in pairs(LiveFolder:GetChildren()) do
if m:IsA("Model") then
CheckIfValidRigAndApply(m,true)
end
end
LIVEADDED = LiveFolder.ChildAdded:Connect(function(m)
if m:IsA("Model") then
warn(m:GetFullName())
CheckIfValidRigAndApply(m,true)
end
end)
for i,m in pairs(NPCFolder:GetChildren()) do
if m:IsA("Model") then
CheckIfValidRigAndApply(m,false)
end
end
NPCADDED = NPCFolder.ChildAdded:Connect(function(m)
if m:IsA("Model") then
CheckIfValidRigAndApply(m,false)
end
end)
else
--if game.CreatorId == 5212858 then
for i,v in pairs(Players:GetPlayers()) do
if v.Character then
CheckIfValidRigAndApply(v.Character,true)
end
v.CharacterAdded:Connect(function()
spawn(function()
wait(1)
CheckIfValidRigAndApply(v.Character,true)
end)
end)
end
NPCADDED = Players.PlayerAdded:Connect(function(v)
if v.Character then
CheckIfValidRigAndApply(v.Character,true)
end
v.CharacterAdded:Connect(function()
spawn(function()
wait(1)
CheckIfValidRigAndApply(v.Character,true)
end)
end)
end)
end
How to Use These Scripts
To use any of these Deepwoken scripts, you’ll need a reliable Roblox script executor, such as Synapse X or KRNL. Once your executor is open, paste the script into the input area and inject it while the Deepwoken game is running. Make sure the game has fully loaded before execution. Some scripts may require additional permissions or key systems—follow any instructions that appear within the script window.
Benefits of Using Scripts in Roblox
Scripts make your gameplay smoother, more enjoyable, and less time-consuming. For games like Deepwoken, which can be quite demanding, scripts offer a way to manage farming, explore hidden mechanics, or even learn scripting through open-source examples. They help players take control of their experience, reduce grind, and focus on mastering strategy and survival.