if game.UserInputService.TouchEnabled and not game.UserInputService.KeyboardEnabled then --Mobile while wait() do game:GetService("ReplicatedStorage").Events.BuyCrate:InvokeServer("Galactic") game:GetService("ReplicatedStorage").Events.ClaimCrateReward:FireServer("Galactic") end elseif game.GuiService:IsTenFootInterface() then --Console lp:Kick("Okay..I give up..How is this possible") end print("Without remote spy \nStill Cooking") --[[ Since I'm the first to find this particular weakness in the game, I'll tell you how this happened. Decompliled Code Keys: 1. Locating the module that controls the crates. ( game.ReplicatedStorage_upvr:WaitForChild("CratesConfig") ) 2. The module is referenced again when creating a new table, which will hold certain data. (From decompliled code: local tbl = {} for i, v in pairs(module_upvr_2) do -- table.insert(tbl, { rarity = i; -- We will need this for the future. ( so rarity will be each time a variable that symbolize the crate and it includes another table which there are its info) cost = v.PriceInfo.Cost; info = v; Each subtable of the main table (module_upvr_2), loads the crate name where "i" is located. So rarity will be i (the crate) 3. Finally, all the data corresponding to each of the contents of the table are collected in the table. (bad explanation) Decompliled Code Keys: for i_2, v_2_upvr in ipairs(tbl) do local p = v_2_upvr.rarity -- v_2_upvr : each main "category/table of the table (module_upvr_2)" and getting access to rarity ]] getgenv().DupeMoney = false getgenv().DupeNegativeMoney = false local r = game:GetService("ReplicatedStorage") local b = r.Events.BuyCrate local c = r.Events.ClaimCrateReward function DupeMoney(par) b:InvokeServer(par) c:FireServer(par) end function a(str,d) local m = Instance.new("Message",workspace) m.Text = str or "Fuck you bitch" task.wait(d) m:Destroy() end a("How to use: \nPress Q for reloading this message \nPress Z to enable/disable Dupe-Money Function. \nPress X to enable/disable Dupe-Decrease Money Function. \nPress C to enable Inf Dupe Money Function",12) game.TextChatService.TextChannels.RBXGeneral:SendAsync("Script was made by Is_AlreadyInUse in scriptblox.") game.UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if input.KeyCode == Enum.KeyCode.Z then getgenv().DupeNegativeMoney = false getgenv().DupeMoney = not getgenv().DupeMoney a("Dupe Money Has Changed to "..tostring(getgenv().DupeMoney),2) repeat DupeMoney("Galactic") task.wait() until getgenv().DupeMoney == false elseif input.KeyCode == Enum.KeyCode.X then getgenv().DupeNegativeMoney = not getgenv().DupeNegativeMoney getgenv().DupeMoney = false a("Dupe Negative Money Has Changed to "..tostring(getgenv().DupeNegativeMoney),2) repeat DupeMoney("Candy") task.wait() until getgenv().DupeNegativeMoney == false elseif input.KeyCode == Enum.KeyCode.C then while wait() do DupeMoney("Galactic") end elseif input.KeyCode == Enum.KeyCode.Q then a("How to use: \nPress Q for reloading this message \nPress Z to enable/disable Dupe-Money Function. \nPress X to enable/disable Dupe-Decrease Money Function. \nPress C to enable Inf Dupe Money Function",12) end end) --[[ ⠀⢠⡿⠿⠿⠿⢿⣿⣿⣷⣦⡀⠀⠀⠀⠀⠀⠀⢀⣴⣾⣿⣿⡿⠿⠿⠿⠿⣦⠀ ⠀⠀⠀⠀⠀⠀⠀⠈⠙⠿⣿⡿⠆⠀⠀⠀⠀⠰⣿⣿⠿⠋⠁⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⣀⣤⡤⠄⢤⣀⡈⢿⡄⠀⠀⠀⠀⢠⡟⢁⣠⡤⠠⠤⢤⣀⠀⠀⠀⠀ ⠐⢄⣀⣼⢿⣾⣿⣿⣿⣷⣿⣆⠁⡆⠀⠀⢰⠈⢸⣿⣾⣿⣿⣿⣷⡮⣧⣀⡠⠀ ⠰⠛⠉⠙⠛⠶⠶⠏⠷⠛⠋⠁⢠⡇⠀⠀⢸⡄⠈⠛⠛⠿⠹⠿⠶⠚⠋⠉⠛⠆ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣾⡇⠀⠀⢸⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⠞⢻⠇⠀⠀⠘⡟⠳⡄⠀⠀⠀⠀⠀⠀⠀ ⠀Καλως ορισατε ⠰⣄⡀⠀⠀⣀⣠⡤⠞⠠⠁⠀⢸⠀⠀⠀⠀⡇⠀⠘⠄⠳⢤⣀⣀⠀⠀⣀⣠⠀ στον κοσμο ⠀⢻⣏⢻⣯⡉⠀⠀⠀⠀⠀⠒⢎⣓⠶⠶⣞⡱⠒⠀⠀⠀⠀⠀⢉⣽⡟⣹⡟⠀ του AlreadyInUse ⠀⠀⢻⣆⠹⣿⣆⣀⣀⣀⣀⣴⣿⣿⠟⠻⣿⣿⣦⣀⣀⣀⣀⣰⣿⠟⣰⡟⠀⠀ + (GameDeveloper_333) ⠀⠀⠀⠻⣧⡘⠻⠿⠿⠿⠿⣿⣿⣃⣀⣀⣙⣿⣿⠿⠿⠿⠿⠟⢃⣴⠟⠀⠀⠀ ⠀⠀⠀⠀⠙⣮⠐⠤⠀⠀⠀⠈⠉⠉⠉⠉⠉⠉⠁⠀⠀⠀⠤⠊⡵⠋⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠈⠳⡀⠀⠀⠀⠀⠀⠲⣶⣶⠖⠀⠀⠀⠀⠀⢀⠜⠁⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠈⠀⠀⠀⠀⠀⢀⣿⣿⡀⠀⠀⠀⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⡿⠀⠀⠀⠀⠀ ]]