Run it
Copy the script and paste it into your executor.
Players = :()
SoundService = :()
TweenService = :()
Debris = :()
RunService = :()
player = Players.LocalPlayer
()
()
(, player.Name)
()
DAMAGE_HITS =
NORMAL_SPEED =
WEAK_SPEED =
WEAK_DAMAGE =
WEAK_DAMAGE_TIME =
REST_TIME =
RAGDOLL_TIME =
BLOOD_COUNT =
STARTUP_SOUND =
WARNING_SOUND =
BLOOD_SOUND =
DEATH_SOUND =
SCREAMS = {
,
,
}
character =
humanoid =
root =
healthConnection =
diedConnection =
oldHealth =
damageCount =
isWeak =
weakTimer =
restTimer =
applyingWeakDamage =
isRagdoll =
deathPlayed =
lastScream =
gui = .()
gui.Name =
gui.ResetOnSpawn =
gui.IgnoreGuiInset =
gui.Parent = player:()
activeText = .()
activeText.Name =
activeText.Size = .(, , , )
activeText.Position = .(, , , )
activeText.BackgroundTransparency =
activeText.Text =
activeText.TextScaled =
activeText.TextWrapped =
activeText.Font = .Font.GothamBold
activeText.TextStrokeTransparency =
activeText.Parent = gui
.(()
hue =
activeText.Parent
hue +=
hue >=
hue =
activeText.TextColor3 =
.(hue, , )
.()
)
warning = .()
warning.Name =
warning.Size = .(, , , )
warning.Position = .(, , , )
warning.BackgroundColor3 =
.(, , )
warning.BackgroundTransparency =
warning.Text =
..
..
warning.TextColor3 =
.(, , )
warning.TextScaled =
warning.TextWrapped =
warning.Font = .Font.GothamBold
warning.TextStrokeTransparency =
warning.Visible =
warning.Parent = gui
warningCorner =
.()
warningCorner.CornerRadius =
.(, )
warningCorner.Parent = warning
weakText = .()
weakText.Name =
weakText.Size =
.(, , , )
weakText.Position =
.(, , , )
weakText.BackgroundTransparency =
weakText.Text =
weakText.TextColor3 =
.(, , )
weakText.TextStrokeTransparency =
weakText.TextScaled =
weakText.TextWrapped =
weakText.Font = .Font.GothamBold
weakText.Visible =
weakText.Parent = gui
restBack = .()
restBack.Name =
restBack.Size =
.(, , , )
restBack.Position =
.(, , , )
restBack.BackgroundColor3 =
.(, , )
restBack.BorderSizePixel =
restBack.Visible =
restBack.Parent = gui
restBackCorner =
.()
restBackCorner.CornerRadius =
.(, )
restBackCorner.Parent =
restBack
restFill = .()
restFill.Name =
restFill.Size =
.(, , , )
restFill.BackgroundColor3 =
.(, , )
restFill.BorderSizePixel =
restFill.Parent = restBack
restFillCorner =
.()
restFillCorner.CornerRadius =
.(, )
restFillCorner.Parent =
restFill
deathScreen = .()
deathScreen.Name =
deathScreen.Size =
.(, , , )
deathScreen.Position =
.(, , , )
deathScreen.BackgroundColor3 =
.(, , )
deathScreen.BackgroundTransparency =
deathScreen.BorderSizePixel =
deathScreen.ZIndex =
deathScreen.Visible =
deathScreen.Parent = gui
(id, volume, speed)
sound = .()
sound.SoundId = id
sound.Volume = volume
sound.PlaybackSpeed = speed
sound.Looped =
sound.Parent = SoundService
SoundService:(sound)
Debris:(sound, )
sound
.(()
.()
()
(
STARTUP_SOUND,
,
)
.()
activeText
activeText.Visible =
.()
warning
warning.Visible =
()
(
WARNING_SOUND,
,
)
.()
warning.Visible =
)
()
#SCREAMS ==
chosen
#SCREAMS ==
chosen =
chosen =
.(
,
#SCREAMS
)
chosen ~= lastScream
lastScream = chosen
(
,
chosen
)
(
SCREAMS[chosen],
,
)
()
root
()
(
BLOOD_SOUND,
,
)
i = , BLOOD_COUNT
blood =
.()
blood.Name =
blood.Shape =
.PartType.Ball
size =
.(, ) /
blood.Size =
.(
size,
size,
size
)
blood.Color =
.(
,
,
)
blood.Material =
.Material.SmoothPlastic
blood.CanCollide =
blood.CanTouch =
blood.CanQuery =
blood.Massless =
blood.CFrame =
root.CFrame *
.(
.(-,) / ,
.(-,) / ,
.(-,) /
)
blood.Parent =
velocity =
.()
velocity.MaxForce =
.(
,
,
)
velocity.Velocity =
.(
.(-,),
.(,),
.(-,)
)
velocity.Parent = blood
Debris:(
velocity,
)
Debris:(
blood,
)
()
isRagdoll
character humanoid
humanoid.Health <=
isRagdoll =
()
motors = {}
_, obj (
character:()
)
obj:()
obj.Part0
obj.Part1
obj.Name ~=
part0 = obj.Part0
part1 = obj.Part1
att0 =
.()
att1 =
.()
att0.CFrame = obj.C0
att1.CFrame = obj.C1
att0.Parent = part0
att1.Parent = part1
socket =
.(
)
socket.Attachment0 = att0
socket.Attachment1 = att1
socket.LimitsEnabled =
socket.UpperAngle =
socket.TwistLimitsEnabled =
socket.TwistLowerAngle = -
socket.TwistUpperAngle =
socket.Parent = part0
.(
motors,
{
motor = obj,
attachment0 = att0,
attachment1 = att1,
socket = socket
}
)
obj.Enabled =
_, obj (
character:()
)
obj:()
obj.CanCollide =
obj.CanTouch =
obj.Massless =
humanoid.PlatformStand =
(()
humanoid.AutoRotate =
)
root
root.AssemblyLinearVelocity =
.(
.(-,),
,
.(-,)
)
.(
RAGDOLL_TIME,
()
character
character.Parent
_, data (motors)
data.motor
data.motor.Parent
data.motor.Enabled =
data.attachment0
data.attachment0:()
data.attachment1
data.attachment1:()
data.socket
data.socket:()
humanoid
humanoid.Parent
humanoid.Health >
humanoid.PlatformStand =
(()
humanoid.AutoRotate =
)
humanoid:(
.HumanoidStateType.GettingUp
)
_, obj (
character:()
)
obj:()
obj.Name ==
obj.CanCollide =
obj.CanCollide =
isRagdoll =
(
)
)
()
deathPlayed
deathPlayed =
()
(
DEATH_SOUND,
,
)
deathScreen.Visible =
deathScreen.BackgroundTransparency =
tween =
TweenService:(
deathScreen,
TweenInfo.(
,
.EasingStyle.Quad,
.EasingDirection.Out
),
{
BackgroundTransparency =
}
)
tween:()
()
isWeak
isWeak =
weakTimer =
restTimer =
weakText.Visible =
restBack.Visible =
restFill.Size =
.(
,
,
,
)
humanoid
humanoid.WalkSpeed =
WEAK_SPEED
(
)
()
isWeak =
damageCount =
weakTimer =
restTimer =
weakText.Visible =
restBack.Visible =
restFill.Size =
.(
,
,
,
)
humanoid
humanoid.Health >
humanoid.WalkSpeed =
NORMAL_SPEED
(
)
.(()
.()
isWeak
humanoid
humanoid.Parent
humanoid.Health >
weakTimer +=
weakTimer >=
WEAK_DAMAGE_TIME
weakTimer =
applyingWeakDamage =
humanoid.Health =
.(
,
humanoid.Health -
WEAK_DAMAGE
)
applyingWeakDamage =
(
..
)
humanoid.MoveDirection.Magnitude <
restTimer +=
restTimer =
percent =
.(
restTimer / REST_TIME,
,
)
restFill.Size =
.(
percent,
,
,
)
restTimer >= REST_TIME
()
)
()
healthConnection
healthConnection:()
healthConnection =
diedConnection
diedConnection:()
diedConnection =
humanoid
oldHealth =
humanoid.Health
(
,
oldHealth
)
healthConnection =
humanoid.HealthChanged:(
(newHealth)
(
,
newHealth
)
newHealth <=
()
oldHealth =
newHealth
applyingWeakDamage
oldHealth =
newHealth
oldHealth
newHealth < oldHealth
damage =
oldHealth -
newHealth
damageCount +=
(
)
(
)
(
,
damage
)
(
,
damageCount,
,
DAMAGE_HITS
)
(
)
oldHealth =
newHealth
()
()
()
damageCount >=
DAMAGE_HITS
()
oldHealth =
newHealth
)
diedConnection =
humanoid.Died:(
()
()
)
(
..
)
(newCharacter)
(
)
character =
newCharacter
humanoid =
character:(
,
)
root =
character:(
,
)
humanoid
(
..
)
root
(
..
)
damageCount =
isWeak =
weakTimer =
restTimer =
applyingWeakDamage =
isRagdoll =
deathPlayed =
weakText.Visible =
restBack.Visible =
deathScreen.Visible =
deathScreen.BackgroundTransparency =
humanoid.WalkSpeed =
NORMAL_SPEED
()
(
)
player.Character
.(()
(
player.Character
)
)
player.CharacterAdded:(
(newCharacter)
.()
(
newCharacter
)
)
(
)
(
)
(
)
(
)
(
)
(
)
(
)Try to damage yourself!(Also that one scream sound effect very loud so lower ur volume down)

Universal