···11+return {
22+ Name = "resyncchunk",
33+ Aliases = {"resyncc"},
44+ Description = "Resync a chunk (and optional radius) for a player.",
55+ Group = "Debug",
66+ Args = {
77+ {
88+ Type = "player",
99+ Name = "player",
1010+ Description = "Player to resync"
1111+ },
1212+ {
1313+ Type = "integer",
1414+ Name = "cx",
1515+ Description = "Chunk X"
1616+ },
1717+ {
1818+ Type = "integer",
1919+ Name = "cy",
2020+ Description = "Chunk Y"
2121+ },
2222+ {
2323+ Type = "integer",
2424+ Name = "cz",
2525+ Description = "Chunk Z"
2626+ },
2727+ {
2828+ Type = "integer",
2929+ Name = "radius",
3030+ Description = "Radius around the chunk",
3131+ Optional = true,
3232+ Default = 0
3333+ }
3434+ },
3535+ Run = function(context, player, cx, cy, cz, radius)
3636+ local tickRemote = game:GetService("ReplicatedStorage"):WaitForChild("Tick")
3737+ local r = radius or 0
3838+ local count = 0
3939+ for y = -r, r do
4040+ for x = -r, r do
4141+ for z = -r, r do
4242+ tickRemote:FireClient(player, "C_R", cx + x, cy + y, cz + z, 0, 0, 0, 0)
4343+ count += 1
4444+ end
4545+ end
4646+ end
4747+ return ("Resync sent to %s (%d chunks)"):format(player.Name, count)
4848+ end
4949+}
···11+return {
22+ Name = "resyncnear",
33+ Aliases = {"resyncnearby"},
44+ Description = "Resync chunks around a player's current chunk.",
55+ Group = "Debug",
66+ Args = {
77+ {
88+ Type = "player",
99+ Name = "player",
1010+ Description = "Player to resync"
1111+ },
1212+ {
1313+ Type = "integer",
1414+ Name = "radius",
1515+ Description = "Radius around the player chunk",
1616+ Optional = true,
1717+ Default = 1
1818+ }
1919+ },
2020+ Run = function(context, player, radius)
2121+ local character = player.Character
2222+ if not character then
2323+ return "Player has no character"
2424+ end
2525+ local root = character:FindFirstChild("HumanoidRootPart")
2626+ if not root then
2727+ return "Player has no HumanoidRootPart"
2828+ end
2929+3030+ local pos = root.Position
3131+ local cx = math.round(pos.X / 32)
3232+ local cy = math.round(pos.Y / 32)
3333+ local cz = math.round(pos.Z / 32)
3434+3535+ local tickRemote = game:GetService("ReplicatedStorage"):WaitForChild("Tick")
3636+ local r = radius or 1
3737+ local count = 0
3838+ for y = -r, r do
3939+ for x = -r, r do
4040+ for z = -r, r do
4141+ tickRemote:FireClient(player, "C_R", cx + x, cy + y, cz + z, 0, 0, 0, 0)
4242+ count += 1
4343+ end
4444+ end
4545+ end
4646+ return ("Resync sent to %s (%d chunks around %d,%d,%d)"):format(player.Name, count, cx, cy, cz)
4747+ end
4848+}
···77local ReplicatedStorage = game:GetService("ReplicatedStorage")
88local UIS = game:GetService("UserInputService")
991010+local TXTS = game:GetService("TextChatService")
1111+local TXTS_CIF = TXTS:FindFirstChildOfClass("ChatInputBarConfiguration")
1212+1013ReplicatedStorage:WaitForChild("Objects"):WaitForChild("MLLoaded")
11141215game:GetService("Players").LocalPlayer.CameraMode = Enum.CameraMode.LockFirstPerson
1316UIS.MouseIconEnabled = false
14171518UIS.InputEnded:Connect(function(k)
1616- if k.KeyCode == Enum.KeyCode.M then
1919+ if k.KeyCode == Enum.KeyCode.M and UIS:GetFocusedTextBox() == nil and not TXTS_CIF.IsFocused then
1720 local v = not script.Parent.DummyButton.Modal
1821 UIS.MouseIconEnabled = v
1922 script.Parent.CrosshairLabel.Visible = not v