-- Put this in your LocalScript inside StarterPlayerScripts local ReplicatedStorage = game:GetService("ReplicatedStorage") local Players = game:GetService("Players") local Workspace = game:GetService("Workspace") local player = Players.LocalPlayer -- Load Rayfield Library safely local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))() -- Create Window with explicit size configurations to show tabs clearly local Window = Rayfield:CreateWindow({ Name = "🔮 +1 Magic Evolution Hub 🔮", LoadingTitle = "Initializing Interface...", LoadingSubtitle = "Premium Suite", ConfigurationSaving = { Enabled = false }, Discord = { Enabled = false }, KeySystem = false }) -- ========================================== -- FETCH REMOTES -- ========================================== local ToggleAutoTrain = ReplicatedStorage:WaitForChild("ToggleAutoTrain") local AutoEquipBest = ReplicatedStorage:WaitForChild("AutoEquipBest") local ToggleAutoWin = ReplicatedStorage:WaitForChild("ToggleAutoWin") local EvolveRequest = ReplicatedStorage:WaitForChild("EvolveRequest") -- ========================================== -- TAB 1: AUTOMATION (Icon: Home/Clicker) -- ========================================== local MainTab = Window:CreateTab("Automation", "home") -- Using string icon names for compatibility MainTab:CreateToggle({ Name = "Auto Train Magic", CurrentValue = false, Flag = "AutoTrain", Callback = function(Value) ToggleAutoTrain:FireServer() end, }) MainTab:CreateButton({ Name = "Auto Equip Best Gear", Callback = function() AutoEquipBest:FireServer() Rayfield:Notify({ Title = "Equipped Best!", Content = "Your highest multiplier gear is now active.", Duration = 2.5, Image = "check", }) end, }) MainTab:CreateToggle({ Name = "Auto Win (Stage Teleports)", CurrentValue = false, Flag = "AutoWin", Callback = function(Value) ToggleAutoWin:FireServer() end, }) local autoEvolveActive = false MainTab:CreateToggle({ Name = "Auto Evolve", CurrentValue = false, Flag = "AutoEvolve", Callback = function(Value) autoEvolveActive = Value if autoEvolveActive then task.spawn(function() while autoEvolveActive do local success, msg = EvolveRequest:InvokeServer() if success then Rayfield:Notify({ Title = "Evolution!", Content = "You advanced to the next evolution stage!", Duration = 2, Image = "zap", }) end task.wait(2) end end) end end, }) -- ========================================== -- TAB 2: TELEPORTS (Icon: Map Pin) -- ========================================== local TeleportTab = Window:CreateTab("Teleports", "map-pin") local function manualTeleport(stageNum) local character = player.Character local zones = Workspace:FindFirstChild("StageZones") if character and character:FindFirstChild("HumanoidRootPart") and zones then local zone = zones:FindFirstChild(tostring(stageNum)) if zone then character.HumanoidRootPart.CFrame = zone.CFrame + Vector3.new(0, 3, 0) else Rayfield:Notify({Title = "Error", Content = "Stage zone part not found!", Duration = 2, Image = "alert-triangle"}) end end end TeleportTab:CreateDropdown({ Name = "Teleport to Unlocked Stage", Options = {"1", "2", "3", "4", "5"}, CurrentOption = {"1"}, MultipleOptions = false, Flag = "TeleportDropdown", Callback = function(Option) manualTeleport(Option[1]) end, }) -- ========================================== -- TAB 3: CHARACTER MODS (Icon: User) -- ========================================== local MiscTab = Window:CreateTab("Character Mods", "user") MiscTab:CreateSlider({ Name = "WalkSpeed Hack", Min = 16, Max = 150, CurrentValue = 16, Flag = "SpeedSlider", Callback = function(Value) local character = player.Character if character and character:FindFirstChild("Humanoid") then character.Humanoid.WalkSpeed = Value end end, }) MiscTab:CreateSlider({ Name = "JumpPower Hack", Min = 50, Max = 300, CurrentValue = 50, Flag = "JumpSlider", Callback = function(Value) local character = player.Character if character and character:FindFirstChild("Humanoid") then character.Humanoid.UseJumpPower = true character.Humanoid.JumpPower = Value end end, }) MiscTab:CreateButton({ Name = "Destroy GUI Menu", Callback = function() Rayfield:Destroy() end, })