Skip to content

Instantly share code, notes, and snippets.

@depthso
Last active July 15, 2025 07:46
Show Gist options
  • Select an option

  • Save depthso/134e1b8a78e0248f0c1a9e03e5329e26 to your computer and use it in GitHub Desktop.

Select an option

Save depthso/134e1b8a78e0248f0c1a9e03e5329e26 to your computer and use it in GitHub Desktop.
Shrimp game method
--[[
@author depso (depthso)
@description Shrimp game troll script
https://www.roblox.com/games/7606564092/Shrimp-Game
]]
local ReGui = loadstring(game:HttpGet('https://raw.githubusercontent.com/depthso/Dear-ReGui/refs/heads/main/ReGui.lua'))()
local WindowConfig = {
Title = "Shrimp game method | By: depso",
Size = UDim2.fromOffset(350, 300),
}
--// Lobby check
if game.PlaceId == 7606564092 then
ReGui:Window(WindowConfig):Center():Label({
Text = "Please join a match!"
})
return
end
--// Services
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
--// Remotes
local Remotes = ReplicatedStorage.Shared.Common.Remotes
local Events = Remotes.Events
local SpawnReference = workspace.SpawnReference
local Camera = workspace.CurrentCamera
local LocalPlayer = Players.LocalPlayer
local PlayerScripts = LocalPlayer.PlayerScripts
local Character = nil
local Humanoid = nil
local Controller = PlayerScripts.Controller
local EffectsEvent = Events.EffectsEvent
function ViewMe()
Camera.CameraSubject = Character
end
--// Create Window
local Window = ReGui:Window(WindowConfig):Center()
--// Debug
local Debug = Window:TreeNode({Title="Debug"})
local Console = Debug:Console({
ReadOnly = true,
AutoScroll = true,
MaxLines = 50
})
--// Games
local Games = Window:TreeNode({Title="Games"})
local SkipGames = Games:Checkbox({
Value = true,
Label = "Skip Games"
})
--// Player
local Player = Window:TreeNode({Title="Player"})
local NoFreze = Player:Checkbox({
Value = false,
Label = "No freze"
})
local TheMethod = Player:Checkbox({
Value = false,
Label = "The method 🀫"
})
local WalkSpeed = Player:SliderInt({
Label = "Slider",
Value = 18,
Minium = 18,
Maxium = 200
})
--// Spectator
local Spectator = Window:TreeNode({Title="Spectator"})
Spectator:Button({
Text = "Become spectator",
Callback = function()
Humanoid.Health = 0
end
})
local ViewConnection
Spectator:Button({
Text = "View me",
Callback = function()
ViewMe()
--// Connect CameraSubject change
if ViewConnection then return end
ViewConnection = Camera:GetPropertyChangedSignal("CameraSubject"):Connect(ViewMe)
end
})
local Row = Spectator:Row()
Row:Button({
Text = "Teleport to random player",
Callback = function()
if not TeleportToRandomPlayer then return end
TeleportToRandomPlayer()
end
})
local AutoTeleport = Row:Checkbox({
Value = false,
Label = "Auto?"
})
--// Spectator
local Cutscenes = Window:TreeNode({Title="Cutscenes"})
local AnnoyCamera = Cutscenes:Checkbox({
Value = false,
Label = "Annoy camera",
Callback = function(self, Value)
if Value then return end
if not SetCameraAnnoyEnabled then return end
SetCameraAnnoyEnabled(Value)
end
})
local CutscenesDisabled = Cutscenes:Checkbox({
Value = false,
Label = "Cutscenes disabled",
})
--// Emotes
local Emotes = Window:TreeNode({Title="Emotes"})
local Dance = Emotes:Combo({
Selected = "Floss",
Label = "Dance",
Items = {
["Floss"] = 10714340543,
["Backflip"] = 15693621070,
["Samba"] = 16270690701,
["Flare"] = 10214311282,
["Body Builder"] = 10713990381,
["Mean Girls"] = 15963314052,
["Fashionable"] = 10714091938,
["HOT TO GO"] = 85267023718407,
["Dance"] = 13749312543,
}
})
Emotes:Checkbox({
Value = false,
Label = "Dance",
Callback = function(self, Value)
if not SetDance then return end
if not Value then
SetDance(nil)
return
end
SetDance(Dance.Value)
end,
})
--// Emotes
local Teleports = Window:TreeNode({Title="Teleports"})
Teleports:Combo({
Label = "Location",
Items = SpawnReference:GetChildren(),
Callback = function(self, Folder)
local Part = Folder:FindFirstChildWhichIsA("BasePart", true)
local Pivot = Part:GetPivot()
Character:PivotTo(Pivot)
end
})
--// Console communication
local Event = Instance.new("BindableEvent")
Event.Event:Connect(function(...)
Console:AppendText(...)
end)
function WriteLog(...)
print(...)
Event:Fire(...)
end
function SetFrozen(Frozen: boolean)
LocalPlayer:SetAttribute("MovementOverride", Frozen)
end
function GetPlayerNumberTag(Player: Player)
return Player:GetAttribute("Tag")
end
function IsEliminated(Player: Player)
return Player:GetAttribute("Eliminated")
end
function GetPlayers(FilterEliminated: boolean)
local Response = {}
for _, Player in next, Players:GetPlayers() do
--// Check if player is eliminated
local Eliminated = IsEliminated(Player)
if FilterEliminated and Eliminated then continue end
table.insert(Response, Player)
end
return Response
end
function TeleportToRandomPlayer()
local Players = GetPlayers(true)
local Player = Players[math.random(1, #Players)]
local Pivot = Player.Character:GetPivot()
Character:PivotTo(Pivot)
end
function UpdateWalkSpeed()
--// Walkspeed
if TheMethod.Value then
Humanoid.WalkSpeed = 1200
else
Humanoid.WalkSpeed = WalkSpeed.Value
end
end
function ClearAnimations()
for _, Track in Humanoid:GetPlayingAnimationTracks() do
Track:Stop()
end
end
function ResetVelocity()
local Root = Humanoid.RootPart
local Velocity = Root.Velocity
Root.Velocity = Vector3.new(0, Velocity.Y < 0 and math.abs(Velocity.Y) or 0.5,0)
end
local AnnoyLoop = false
function SetCameraAnnoyEnabled(Enabled)
--// Check if already enabled
if AnnoyLoop and Enabled then return end
AnnoyLoop = Enabled
local Rotation = CFrame.Angles(0,math.rad(180),0)
local Offset = CFrame.new(0,-1.5,-3)
Humanoid.PlatformStand = true
--// Annoy camera
while AnnoyLoop do
ResetVelocity()
--ClearAnimations()
--// Pivot character to camera
local Pivot = Camera:GetRenderCFrame() * Offset * Rotation
Character:PivotTo(Pivot)
task.wait()
end
Humanoid.PlatformStand = false
end
function CharacterAdded(New: Model)
if not New then return end
Character = New
Humanoid = New:WaitForChild("Humanoid")
--// Connect walkspeed change
Humanoid:GetPropertyChangedSignal("WalkSpeed"):Connect(UpdateWalkSpeed)
if AutoTeleport.Value then
TeleportToRandomPlayer()
end
--// Disable AntiCheat
local AntiCheat = Character:WaitForChild("AnimationHandler")
AntiCheat.Disabled = true
--AntiCheat:Destroy()
WriteLog("Anti-Cheat removed")
end
function FireTouchPart(Part: BasePart)
local TouchTransmitter = Part:FindFirstChildOfClass("TouchTransmitter")
if not TouchTransmitter then return end
--// Teleport to part instead since most exploits have a broken FireTouchTransmitter
Character:PivotTo(Part:GetPivot())
end
local DanceTrack = nil
function SetDance(AnimationId)
--// Clear current dance
if DanceTrack then
DanceTrack:Stop()
DanceTrack:Destroy()
end
if not AnimationId then return end
--// Create animation
local Animation = Instance.new("Animation")
Animation.AnimationId = `rbxassetid://{AnimationId}`
--// Load animation into humanoid
DanceTrack = Humanoid:LoadAnimation(Animation)
DanceTrack.Looped = true
DanceTrack:Play()
end
--// States
local PentathlonSkip = false
local MingleTeleport = true
local SkippedLightGame = false
function SkipPentathlon()
local PacketsOrder = {
{"Start Minigame", 1},
{"Throw Envelope", 99},
{"Minigame Complete", "Ddakji"},
{"Start Minigame", 2},
{"Throw Stone", 60},
{"Minigame Complete", "Biseokchigi"},
{"Start Minigame", 3},
{"Minigame Complete", "Gonggi"},
{"Start Minigame", 4},
{"Throw Spinning Top", 60},
{"Minigame Complete", "Paengi"},
{"Start Minigame", 5},
{"Minigame Complete", "Jegi"},
{"Pentathlon Complete"}
}
PentathlonSkip = true
while wait(1) and PentathlonSkip do
for _, Packet in PacketsOrder do
EffectsEvent:FireServer(unpack(Packet))
wait(.5)
end
end
end
local EventHooks = {
["LightGame"] = function(Action, Args)
if Action ~= "Green" then return end
if SkippedLightGame then return end
SkippedLightGame = true
local Victory = workspace.LightGameBlocker
FireTouchPart(Victory)
WriteLog("LightGame Skipped")
end,
["Honeycomb"] = function(Action, Args)
if Action ~= "Play" then return end
EffectsEvent:FireServer("Success", true)
ClearAnimations()
WriteLog("Honeycomb Skipped")
return true
end,
["Pentathlon"] = function(Action, Args)
if Action == "Start Game" then
SkipPentathlon()
return true
elseif Action == "Stop Game" then
PentathlonSkip = false
WriteLog("Pentathlon completed")
ClearAnimations()
elseif Action == "Update Minigame" then
return true
end
end,
["Mingle"] = function(Action, Args)
if Action == "TurnOnDoorLights" then
if not MingleTeleport then return end
MingleTeleport = false
--// Teleport to room
local RoomPivot = Args[3].BoundingBox.CFrame
Character:PivotTo(RoomPivot)
WriteLog("Teleported to Mingle Room")
end
if Action == "TurnOffDoorLights" then
MingleTeleport = true
end
end
}
function NewEffectsEvent(Old, ...)
local Args = {...}
local EventName = Args[1]
local Action = Args[2]
local Hook = EventHooks[EventName]
local Eliminated = IsEliminated(LocalPlayer)
--// Check if hook exists
if not Eliminated and Hook and SkipGames.Value then
--// Check if the the call should be intercepted
local Intercept = Hook(Action, Args)
if Intercept then return end
end
--// Detect cutscenes
if Action == "Cutscene" or Action == "Start Cutscene" then
WriteLog("Cutscene detected")
if CutscenesDisabled.Value then return end
end
--// Prevent invisibility
-- if Action:find("Invisibility") then
-- WriteLog("Invisibility detected")
-- if InvisibilityDisabled.Value then return end
-- end
return Old(unpack(Args))
end
--// Hook EffectsEvent
while true do
local Connections = getconnections(EffectsEvent.OnClientEvent)
--// Hook the function
for _, Signal in next, Connections do
local Func = Signal.Function
if not islclosure(Func) then continue end
--// Hook the function
local Old
Old = hookfunction(Func, function(...)
return NewEffectsEvent(Old, ...)
end)
WriteLog("Hooked EffectsEvent")
end
--// Check if connections have laoded
if #Connections > 0 then break end
wait()
end
--// Load character
CharacterAdded(LocalPlayer.Character)
--// Connect events
LocalPlayer.CharacterAdded:Connect(CharacterAdded)
LocalPlayer.AttributeChanged:Connect(function(Name: string)
if Name == "MovementOverride" and NoFreze.Value then
SetFrozen(false)
end
end)
Controller.AttributeChanged:Connect(function(Name: string)
local Value = Controller:GetAttribute(Name)
if Name == "CameraEnabled" and AnnoyCamera.Value then
WriteLog("Annoy camera:", not Value)
SetCameraAnnoyEnabled(not Value)
end
end)
Players.AttributeChanged:Connect(function(Name: string)
if Name == "Status" and AutoTeleport.Value then
TeleportToRandomPlayer()
end
end)
@depthso
Copy link
Author

depthso commented Jul 5, 2025

DETECTED fix ur trash script depso so bad
Dead game anyways πŸ˜‚πŸ˜‚πŸ˜‚

@Error-Cezar
Copy link

DETECTED fix ur trash script depso so bad
Dead game anyways πŸ˜‚πŸ˜‚πŸ˜‚

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment