OpenSource
Key Required

OpenSource

Monster Ghoul(MOBILE/PC)[2X EXP][FIXED STAT][BETA]DragonZ_THDragonZ_TH 21.4K views 21 executesUpdated Sep 26, 2024
Unrated
00
Lua Script•499 lines (20730 chars)
repeat wait() until game:IsLoaded() and pcall(function() local _ = game.HttpGet end);
local library = loadstring(game:HttpGet("https://raw.githubusercontent.com/DevSoGod/MyScript/main/library"))()
local Window = library:CreateWindow("Monster Ghoul || (not update any more)")
local Tab = Window:CreateTab("Main")
local Sector = Tab:CreateSector("Section1", "left")
Sector:AddDropdown("Method",{"Behind" , "Front" , "Over" , "Under" }, "Behind" ,false , function(v)
    _G.Method = v
end)
Sector:AddTextbox("Distance" , "6" , function(w)
    _G.Distance = tonumber(w)
end)
Sector:AddToggle("Auto YoshimuraQuest", false, function(t)
    _G.AutoQuest = t
end)
Sector:AddToggle("Auto CashOut", false, function(t)
    _G.CashOut = t
end)




local Sector = Tab:CreateSector("Section2", "Right")
boss = Sector:AddDropdown("Boss",{},false,true , function(v)
    _G.Boss = v
end)
Sector:AddButton("RefreshBoss", function()
    for o = 1,5 do
        for _,v in pairs(boss:getList()) do
            boss:Remove(tostring(v))
        end
    end
    a = {}
    for i,v in pairs(workspace.NPCs.BossSpawns:GetChildren()) do
        table.insert(a,v.Name)
    end
    for _,v in pairs(a) do
        if not table.find(boss:getList(), v) then
            boss:Add(v)
        end
    end
end)
Sector:AddToggle("Auto Boss", false, function(t)
    _G.AutoBoss = t
end)
local Sector = Tab:CreateSector("Section2", "Right")
t = Sector:AddDropdown("Select Trainer",{},false,false , function(v)
    _G.Trainer = v
end)
Sector:AddButton("Refresh Trainer", function()
    for o = 1,5 do
        for _,v in pairs(t:getList()) do
            t:Remove(tostring(v))
        end
    end
    a = {}
    for i,v in pairs(workspace.Trainer.Map:GetChildren()) do
        table.insert(a,v.Name)
    end
    for _,v in pairs(a) do
        if not table.find(t:getList(), v) then
            t:Add(v)
        end
    end
end)
Sector:AddToggle("Auto Train", false, function(t)
    _G.AutoTrain = t
end)









local Tab = Window:CreateTab("Attack")
local Sector = Tab:CreateSector("Section2", "Right")
aa = Sector:AddDropdown("Select Skill",{} ,false, true, function(v)
	_G.Skill = v
end)
Sector:AddButton("RefreshSkill", function()
    for o = 1,5 do
        for _,v in pairs(aa:getList()) do
            aa:Remove(tostring(v))
        end
    end
    a = {}
    for i,v in pairs(game:GetService("Players").LocalPlayer.PlayerGui.MobileController:GetChildren()) do
        if v.ClassName == "ImageButton" then
            table.insert(a,v.Name)
        end
    end
    for _,v in pairs(a) do
        if not table.find(aa:getList(), v) then
            aa:Add(v)
        end
    end
end)
Sector:AddToggle("AutoSkill", false, function(t)
    _G.AutoSkill = t
end)
bb = Sector:AddDropdown("Select Equip",{} ,false, false, function(v)
	_G.Equip = v
end)
Sector:AddButton("RefreshSkill", function()
    for o = 1,5 do
        for _,v in pairs(bb:getList()) do
            bb:Remove(tostring(v))
        end
    end
    a = {}
    for i,v in pairs(game:GetService("Players").LocalPlayer.PlayerGui.MainUI.StageNumber.Frame:GetChildren()) do
        if v.ClassName == "TextButton" then
            table.insert(a,v.Text)
        end
    end
    for _,v in pairs(a) do
        if not table.find(bb:getList(), v) then
            bb:Add(v)
        end
    end
end)
Sector:AddToggle("AutoEquip", false, function(t)
    _G.AutoEquip = t
end)






























local Tab = Window:CreateTab("Zones")
local Sector = Tab:CreateSector("Section1", "Left")
Sector:AddDropdown("Respawn Map",{"ArataKirishimaSpawn","ArenaSpawn","DCExchangerSpawn","MaskSpawn","QuinxSpawn","YoshimuraSpawn1","YoshimuraSpawn2","YoshitokiSpawn2"} ,"YoshimuraSpawn1", false, function(v)
	_G.Map = v
end)
Sector:AddToggle("Auto Respawn", false, function(t)
    _G.AutoRespawn = t
end)

local Sector = Tab:CreateSector("Section2", "Right")
for i,v in pairs(workspace.Indicator:GetChildren()) do
    Sector:AddButton(v.Name, function()
        game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = v.CFrame
    end)
end





spawn(function()
    pcall(function()
        while wait() do
            pcall(function()
                if _G.AutoBoss then
                    pcall(function()
                        if table.find(_G.Boss,"DragonBoss") and workspace.NPCs.BossSpawns.DragonBoss:FindFirstChildOfClass("Model") and workspace.NPCs.BossSpawns.DragonBoss:FindFirstChildOfClass("Model"):FindFirstChild("Humanoid") then
                            if workspace.NPCs.BossSpawns.DragonBoss.DragonBoss:FindFirstChild("Scene") and tostring(workspace.NPCs.BossSpawns.DragonBoss.DragonBoss.HumanoidRootPart.CFrame) == "2936.21997, 685.60498, -641.000977, 0, 0, 1, 0, 1, -0, -1, 0, 0" then
                                for i,v in pairs(workspace.NPCs.BossSpawns:GetChildren()) do
                                    if v.Name == "DragonBoss" then
                                        for i,vv in pairs(v.DragonBoss.Scene:GetChildren()) do
                                            if vv:FindFirstChild("Humanoid") then
                                                if _G.Method == "Behind" then
                                                    MethodFarm = CFrame.new(0,0,_G.Distance) * CFrame.Angles(math.rad(0),0,0)
                                                elseif _G.Method == "Front" then
                                                    MethodFarm = CFrame.new(0,0,-_G.Distance) * CFrame.Angles(math.rad(0),1800,0)
                                                elseif _G.Method == "Under" then
                                                    MethodFarm = CFrame.new(0,-_G.Distance,0) * CFrame.Angles(math.rad(90),0,0)
                                                elseif _G.Method == "Over" then
                                                    MethodFarm = CFrame.new(0,_G.Distance,0)  * CFrame.Angles(math.rad(-90),0,0)
                                                else
                                                    MethodFarm = CFrame.new(0,0,_G.Distance)
                                                end
                                                local BeenASecond, V3 = false, Vector3.new(0, 0, 0)
                                                for _, v in ipairs(game.Players.LocalPlayer.Character:GetDescendants()) do
                                                    if v.IsA(v, "BasePart") then
                                                        v.Velocity, v.RotVelocity = V3, V3
                                                    end
                                                end
                                                game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = vv.HumanoidRootPart.CFrame * MethodFarm or CFrame.new(0,0,_G.Distance)
                                            end
                                        end
                                    end
                                end
                            else
                                if _G.Method == "Behind" then
                                    MethodFarm = CFrame.new(0,0,_G.Distance) * CFrame.Angles(math.rad(0),0,0)
                                elseif _G.Method == "Front" then
                                    MethodFarm = CFrame.new(0,0,-_G.Distance) * CFrame.Angles(math.rad(0),1800,0)
                                elseif _G.Method == "Under" then
                                    MethodFarm = CFrame.new(0,-_G.Distance,0) * CFrame.Angles(math.rad(90),0,0)
                                elseif _G.Method == "Over" then
                                    MethodFarm = CFrame.new(0,_G.Distance,0)  * CFrame.Angles(math.rad(-90),0,0)
                                else
                                    MethodFarm = CFrame.new(0,0,_G.Distance)
                                end
                                local BeenASecond, V3 = false, Vector3.new(0, 0, 0)
                                for _, v in ipairs(game.Players.LocalPlayer.Character:GetDescendants()) do
                                    if v.IsA(v, "BasePart") then
                                        v.Velocity, v.RotVelocity = V3, V3
                                    end
                                end
                                game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = workspace.NPCs.BossSpawns.DragonBoss.DragonBoss.HumanoidRootPart.CFrame * MethodFarm or CFrame.new(0,0,_G.Distance)
                            end
                        elseif table.find(_G.Boss,"DragonBoss") and not workspace.NPCs.BossSpawns.DragonBoss:FindFirstChildOfClass("Model") and workspace.NPCs.BossSpawns.DragonBoss:FindFirstChild("TouchInterest") then
                            game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = workspace.NPCs.BossSpawns.DragonBoss.CFrame
                        else
                            for i,v in pairs(workspace.NPCs.BossSpawns:GetChildren()) do
                                if v:FindFirstChild("TouchInterest") and table.find(_G.Boss,v.Name) and not v:FindFirstChildOfClass("Model") then
                                    game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = v.CFrame
                                elseif v:FindFirstChild("TouchInterest") and table.find(_G.Boss,v.Name) and v:FindFirstChildOfClass("Model") and v:FindFirstChildOfClass("Model"):FindFirstChild("Humanoid") then
                                    repeat task.wait()
                                        if _G.Method == "Behind" then
                                            MethodFarm = CFrame.new(0,0,_G.Distance) * CFrame.Angles(math.rad(0),0,0)
                                        elseif _G.Method == "Front" then
                                            MethodFarm = CFrame.new(0,0,-_G.Distance) * CFrame.Angles(math.rad(0),1800,0)
                                        elseif _G.Method == "Under" then
                                            MethodFarm = CFrame.new(0,-_G.Distance,0) * CFrame.Angles(math.rad(90),0,0)
                                        elseif _G.Method == "Over" then
                                            MethodFarm = CFrame.new(0,_G.Distance,0)  * CFrame.Angles(math.rad(-90),0,0)
                                        else
                                            MethodFarm = CFrame.new(0,0,_G.Distance)
                                        end
                                        local BeenASecond, V3 = false, Vector3.new(0, 0, 0)
                                        for _, v in ipairs(game.Players.LocalPlayer.Character:GetDescendants()) do
                                            if v.IsA(v, "BasePart") then
                                                v.Velocity, v.RotVelocity = V3, V3
                                            end
                                        end
                                        game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = v:FindFirstChildOfClass("Model").PrimaryPart.CFrame * MethodFarm or CFrame.new(0,0,_G.Distance)
                                    until not v:FindFirstChildOfClass("Model") or not _G.AutoBoss
                                end
                            end
                        end
                    end)
                end
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while wait(1) do
            pcall(function()
                if _G.CashOut then
                    pcall(function()
                        game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("RepCashOut"):InvokeServer()
                    end)
                end
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while wait(1) do
            pcall(function()
                for i,v in pairs(game:GetService("Players").LocalPlayer.StorageFile.Gamepass:GetChildren()) do
                    v.Value = true
                end
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while wait(1) do
            if _G.AutoTrain and _G.Trainer then
                pcall(function()
                    local args = {
                        [1] = _G.Trainer
                    }
                    
                    game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("Trainer"):WaitForChild("TrainerTask"):InvokeServer(unpack(args))
                    wait(10)
                    local args = {
                        [1] = "LoveEto"
                    }
                    game:GetService("Players").LocalPlayer.Character.Remotes.TrainerReward:FireServer(unpack(args))
                    wait(5)
                end)
            end
        end
    end)
end)

local function getClosestMob()
    local dist, thing = math.huge
    for i,v in pairs(workspace.YoshitokiQuest.Storage:GetChildren()) do
        for i,vv in pairs(v:GetChildren()) do
            if vv:FindFirstChild("Humanoid") then
                local mag = (game.Players.LocalPlayer.Character.HumanoidRootPart.Position - vv.HumanoidRootPart.Position).magnitude
                if mag < dist then
                    dist = mag 
                    thing = vv
                end
            end
        end
    end
    return thing
end
spawn(function()
    pcall(function()
        while wait() do
            pcall(function()
                if _G.AutoQuest then
                    pcall(function()
                        game.Workspace.Camera.CameraType = "Attach"
                    end)
                else
                    pcall(function()
                        game.Workspace.Camera.CameraType = "Custom"
                    end)
                end
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while wait(1) do
            pcall(function()
                if _G.AutoRespawn then
                    if game:GetService("Players").LocalPlayer.PlayerGui.TeleportUI.Enabled == true then
                        wait(2)
                        game:GetService("GuiService").SelectedObject = game:GetService("Players").LocalPlayer.PlayerGui.TeleportUI.Map[_G.Map].Btn
                        wait(.1)
                        game:GetService("VirtualInputManager"):SendKeyEvent(true, 13, false, game.Players.LocalPlayer.Character.HumanoidRootPart)
                        game:GetService("VirtualInputManager"):SendKeyEvent(false, 13, false, game.Players.LocalPlayer.Character.HumanoidRootPart)
                        wait(.1)
                        game:GetService("GuiService").SelectedObject = nil
                    end
                end
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while task.wait() do
            pcall(function()
                game:GetService("Players").LocalPlayer.DevCameraOcclusionMode = "Invisicam"
                game:GetService("Players").LocalPlayer.CameraMaxZoomDistance = 100000
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while wait() do
            pcall(function()
                if _G.AutoQuest then
                    pcall(function()
                        if getClosestMob() then
                            for i,v in pairs(workspace.YoshitokiQuest.Storage:GetChildren()) do
                                a = {}
                                for i,vv in pairs(v:GetChildren()) do
                                    if vv:FindFirstChild("Humanoid") then
                                        table.insert(a,vv.Name)
                                    end
                                end
                                if #a == 0 then
                                    v:Destroy()
                                end
                            end
                        else
                            wait(1)
                            local args = {
                                [1] = "Accept"
                            }
                            game:GetService("ReplicatedStorage").Remotes.Yoshimura.Task:InvokeServer(unpack(args))
                        end
                    end)
                end
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while wait() do
            pcall(function()
                if _G.AutoQuest then
                    pcall(function()
                        for i,v in pairs(workspace.YoshitokiQuest.Storage:GetChildren()) do
                            for i,vv in pairs(v:GetChildren()) do
                                if vv:FindFirstChild("Humanoid") then
                                    repeat task.wait()
                                        if _G.AutoQuest == true then
                                            task.spawn(function()
                                                if _G.Method == "Behind" then
                                                    MethodFarm = CFrame.new(0,0,_G.Distance) * CFrame.Angles(math.rad(0),0,0)
                                                elseif _G.Method == "Front" then
                                                    MethodFarm = CFrame.new(0,0,-_G.Distance) * CFrame.Angles(math.rad(0),1800,0)
                                                elseif _G.Method == "Under" then
                                                    MethodFarm = CFrame.new(0,-_G.Distance,0) * CFrame.Angles(math.rad(90),0,0)
                                                elseif _G.Method == "Over" then
                                                    MethodFarm = CFrame.new(0,_G.Distance,0)  * CFrame.Angles(math.rad(-90),0,0)
                                                else
                                                    MethodFarm = CFrame.new(0,0,_G.Distance)
                                                end
                                                local BeenASecond, V3 = false, Vector3.new(0, 0, 0)
                                                for _, v in ipairs(game.Players.LocalPlayer.Character:GetDescendants()) do
                                                    if v.IsA(v, "BasePart") then
                                                        v.Velocity, v.RotVelocity = V3, V3
                                                    end
                                                end
                                                game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = vv.HumanoidRootPart.CFrame * MethodFarm or CFrame.new(0,0,_G.Distance)
                                            end)
                                        end
                                    until vv.Humanoid.Health <= 0 or _G.AutoQuest == false
                                end
                            end
                        end
                    end)
                end
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while wait() do
            pcall(function()
                if _G.AutoSkill then
                    pcall(function()
                        for i,v in pairs(_G.Skill) do
                            if game.Players.LocalPlayer.Character:FindFirstChildOfClass("Model") then
                                local args = {
                                    [1] = v,
                                    [2] = "Down"

                                }
                                game:GetService("Players").LocalPlayer.Character.Remotes.KeyEvent:FireServer(unpack(args))
                                wait()
                            end
                        end
                    end)
                end
            end)
        end
    end)
end)
spawn(function()
    pcall(function()
        while wait(1) do
            pcall(function()
                if _G.AutoEquip then
                    pcall(function()
                        if not game.Players.LocalPlayer.Character:FindFirstChildOfClass("Model") then
                            local args = {
                                [1] = _G.Equip,
                                [2] = "Down"
                            }
                            game:GetService("Players").LocalPlayer.Character.Remotes.KeyEvent:FireServer(unpack(args))
                        end
                    end)
                end
            end)
        end
    end)
end)

game:GetService("Players").LocalPlayer.Idled:connect(function()
    game:GetService("VirtualUser"):CaptureController()
    game:GetService("VirtualUser"):ClickButton2(Vector2.new())
end)
library:ConfigSystem("MonsterGhoul"):Load()
while wait(1) do
    pcall(function()
        library:ConfigSystem("MonsterGhoul"):Save()
    end)
end

Features & Information

Auto YoshitokiQuest Auto Boss Auto Trainer not the best and have a some bug but this script not bad for farming money (200M+ over night) btw the admin Monster Ghoul is set my lv to max 💀

Community Comments (4)

mehmettaha7mehmettaha7Sep 26, 2024(edited)

Not loading

DragonZ_THDragonZ_THSep 26, 2024(edited)

fixed

mehmettaha7mehmettaha7Sep 27, 2024(edited)

Not fixed

zenithz03zenithz03Oct 26, 2025

It's my first time using any script and I don't know what to do

More Scripts for Monster Ghoul(MOBILE/PC)[2X EXP][FIXED STAT][BETA]