LOADING...

State Of Anarchy Script

1079 VISUALIZAÇÕES
15/05/2025
State of Anarchy
State Of Anarchy Script
AUTOR
avatarSiland455
AVALIAÇÃO DOS USUÁRIOS
100%APROVAÇÃO

Descrição

State Of Anarchy Script: Ferramenta Educacional para Desenvolvedores Roblox

Desperte sua criatividade no Roblox Studio com o State Of Anarchy Script, uma ferramenta prática e educacional projetada para ajudar desenvolvedores a explorar técnicas avançadas de programação Lua! Este script é um exemplo de código aberto que demonstra como criar sistemas dinâmicos e interativos para jogos Roblox, respeitando as diretrizes da plataforma e incentivando a inovação no desenvolvimento de jogos.

O que é o State Of Anarchy Script?

O State Of Anarchy Script é um conjunto de comandos em Lua criado para ensinar desenvolvedores a implementar funcionalidades personalizadas em seus projetos no Roblox Studio. Com foco em aprendizado, o script oferece exemplos práticos de como criar sistemas de gerenciamento de servidores, interações de jogadores e mecânicas criativas, perfeitos para jogos de simulação, aventura ou caos controlado. É uma ferramenta ideal para quem deseja aprender a programar jogos mais envolventes e funcionais.

Principais Recursos do State Of Anarchy Script

  • Comandos Práticos: Aprenda a criar comandos para gerenciar jogadores, objetos e eventos no seu jogo, com exemplos comentados para facilitar o entendimento.

  • Código Personalizável: Adapte o script para diferentes gêneros de jogos, como simuladores, jogos de sobrevivência ou experiências de administração.

  • Foco Educacional: Explore conceitos de scripting Lua, como manipulação de variáveis, eventos e interfaces, de forma acessível para iniciantes e avançados.

  • Conformidade com o Roblox: Desenvolvido para uso exclusivo no Roblox Studio, respeitando os Termos de Serviço do Roblox e as políticas de plataformas de monetização.

  • Suporte à Comunidade: Junte-se ao nosso servidor no Discord para trocar ideias, tirar dúvidas e colaborar com outros desenvolvedores apaixonados por Roblox.

Por que usar o State Of Anarchy Script?

Este script é uma ponte para o aprendizado e a criatividade no desenvolvimento de jogos. Ele foi projetado para:

  • Ensinar fundamentos de programação Lua de forma prática e divertida.

  • Inspirar a criação de mecânicas únicas para seus jogos Roblox, como sistemas de administração ou interações dinâmicas.

  • Fornecer uma base sólida para desenvolvedores que desejam levar seus projetos ao próximo nível.

Como Usar

  1. Faça o download do State Of Anarchy Script diretamente do scripthub.com.br.

  2. Importe o script para o Roblox Studio e siga nosso tutorial detalhado (disponível no ScriptHub) para entender cada comando.

  3. Experimente e personalize! Use o script como base para criar funcionalidades exclusivas que tornam seu jogo único.

Aviso Importante

O State Of Anarchy Script é uma ferramenta educacional destinada ao uso legítimo no Roblox Studio. Ele não deve ser usado para violar os Termos de Serviço do Roblox, como a criação de cheats, exploits ou qualquer comportamento que prejudique a comunidade de jogadores. Nosso compromisso é promover o aprendizado e a criação responsável de jogos.

Pronto para Criar?

Baixe o State Of Anarchy Script agora e comece a construir experiências incríveis no Roblox! Explore também nossos outros tutoriais, scripts e recursos no ScriptHub para continuar aprendendo e desenvolvendo jogos que cativam jogadores do mundo todo!

Código do Script
1-- Load OrionLib
2local OrionLib = loadstring(game:HttpGet("https://raw.githubusercontent.com/darkkcontrol/Roblox-Orion-UI-Libary-OP-UI-LIBARY-/refs/heads/main/source"))()
3
4-- Create the GUI Window
5local Window = OrionLib:MakeWindow({
6    Name = "Viper.gg SOA",
7    HidePremium = false,
8    SaveConfig = true,
9    ConfigFolder = "OrionTest"
10})
11
12-- Create Tabs
13local MainTab = Window:MakeTab({Name = "Main", Icon = "rbxassetid://4483345998", PremiumOnly = false})
14local VisualsTab = Window:MakeTab({Name = "Visuals", Icon = "rbxassetid://4483345998", PremiumOnly = false})
15local PlayerTab = Window:MakeTab({Name = "Player", Icon = "rbxassetid://4483345998", PremiumOnly = false})
16local SettingsTab = Window:MakeTab({Name = "Settings", Icon = "rbxassetid://4483345998", PremiumOnly = false})
17
18-- Add Sections
19local ESPSection = VisualsTab:AddSection({Name = "ESP"})
20local HitboxSection = VisualsTab:AddSection({Name = "Hitbox Expander"})
21
22-- Variables
23local ESPEnabled = false
24local ESPObjects = {}
25
26-- Function to Create ESP for a Player
27local function createESP(player)
28    -- Make sure the player has a character
29    local function setupCharacter(character)
30        if not character:FindFirstChild("HumanoidRootPart") or not character:FindFirstChild("Humanoid") then
31            -- Wait for essential parts to load
32            character:WaitForChild("HumanoidRootPart")
33            character:WaitForChild("Humanoid")
34        end
35
36        -- ESP Object
37        local ESP = {}
38
39        -- Box Outline
40        ESP.Box = Drawing.new("Square")
41        ESP.Box.Color = Color3.fromRGB(255, 0, 0) -- Red for enemies
42        ESP.Box.Thickness = 2
43        ESP.Box.Transparency = 1
44        ESP.Box.Filled = false
45
46        -- Player Name
47        ESP.Name = Drawing.new("Text")
48        ESP.Name.Text = player.Name
49        ESP.Name.Color = Color3.fromRGB(255, 255, 255)
50        ESP.Name.Size = 14
51        ESP.Name.Outline = true
52
53        -- Health Text
54        ESP.Health = Drawing.new("Text")
55        ESP.Health.Color = Color3.fromRGB(0, 255, 0) -- Green
56        ESP.Health.Size = 12
57        ESP.Health.Outline = true
58
59        -- Distance Text
60        ESP.Distance = Drawing.new("Text")
61        ESP.Distance.Color = Color3.fromRGB(255, 255, 0) -- Yellow
62        ESP.Distance.Size = 12
63        ESP.Distance.Outline = true
64
65        -- Add ESP to the table
66        ESPObjects[player] = ESP
67
68        -- Update ESP on RenderStepped
69        local updateConnection
70        updateConnection = game:GetService("RunService").RenderStepped:Connect(function()
71            -- Remove ESP if the player is no longer valid
72            if not ESPEnabled or not player.Character or not player.Character:FindFirstChild("HumanoidRootPart") or not player.Character:FindFirstChild("Humanoid") or player.Character.Humanoid.Health <= 0 then
73                if ESPObjects[player] then
74                    ESPObjects[player].Box:Remove()
75                    ESPObjects[player].Name:Remove()
76                    ESPObjects[player].Health:Remove()
77                    ESPObjects[player].Distance:Remove()
78                    ESPObjects[player] = nil
79                end
80                updateConnection:Disconnect() -- Disconnect the update loop
81                return
82            end
83
84            -- Update ESP positions and visibility
85            local rootPart = character:FindFirstChild("HumanoidRootPart")
86            local humanoid = character:FindFirstChild("Humanoid")
87            local screenPos, onScreen = workspace.CurrentCamera:WorldToViewportPoint(rootPart.Position)
88            if onScreen then
89                -- Update Box Position and Size
90                local size = (workspace.CurrentCamera:WorldToViewportPoint(rootPart.Position + Vector3.new(3, 3, 0)) - workspace.CurrentCamera:WorldToViewportPoint(rootPart.Position - Vector3.new(3, 3, 0))).X
91                ESP.Box.Size = Vector2.new(size, size * 2)
92                ESP.Box.Position = Vector2.new(screenPos.X - size / 2, screenPos.Y - size)
93
94                -- Update Text Positions with spacing
95                ESP.Name.Position = Vector2.new(screenPos.X, screenPos.Y - size - 20) -- Name is at the top
96                ESP.Health.Position = Vector2.new(screenPos.X, screenPos.Y - size - 5) -- Health is below Name
97                ESP.Distance.Position = Vector2.new(screenPos.X, screenPos.Y + size + 5) -- Distance is below the Box
98
99                -- Update Text Values
100                ESP.Health.Text = "Health: " .. math.floor(humanoid.Health)
101                ESP.Distance.Text = "Distance: " .. math.floor((rootPart.Position - game.Players.LocalPlayer.Character.HumanoidRootPart.Position).Magnitude) .. " studs"
102
103                -- Show ESP
104                ESP.Box.Visible = true
105                ESP.Name.Visible = true
106                ESP.Health.Visible = true
107                ESP.Distance.Visible = true
108            else
109                -- Hide ESP
110                ESP.Box.Visible = false
111                ESP.Name.Visible = false
112                ESP.Health.Visible = false
113                ESP.Distance.Visible = false
114            end
115        end)
116    end
117
118    -- Handle case where player already has a character
119    if player.Character then
120        setupCharacter(player.Character)
121    end
122
123    -- Listen for the player's character being added
124    player.CharacterAdded:Connect(setupCharacter)
125end
126
127-- Function to Clear ESP for All Players
128local function clearESP()
129    for _, esp in pairs(ESPObjects) do
130        if esp.Box then esp.Box:Remove() end
131        if esp.Name then esp.Name:Remove() end
132        if esp.Health then esp.Health:Remove() end
133        if esp.Distance then esp.Distance:Remove() end
134    end
135    ESPObjects = {}
136end
137
138-- Function to Toggle ESP
139local function toggleESP(state)
140    ESPEnabled = state
141    if ESPEnabled then
142        -- Create ESP for existing players
143        for _, player in pairs(game:GetService("Players"):GetPlayers()) do
144            if player ~= game.Players.LocalPlayer then
145                createESP(player)
146            end
147        end
148
149        -- Listen for new players
150        game:GetService("Players").PlayerAdded:Connect(function(player)
151            createESP(player)
152        end)
153
154        -- Handle players leaving
155        game:GetService("Players").PlayerRemoving:Connect(function(player)
156            if ESPObjects[player] then
157                ESPObjects[player].Box:Remove()
158                ESPObjects[player].Name:Remove()
159                ESPObjects[player].Health:Remove()
160                ESPObjects[player].Distance:Remove()
161                ESPObjects[player] = nil
162            end
163        end)
164    else
165        clearESP()
166    end
167end
168
169-- GUI Integration
170ESPSection:AddToggle({
171    Name = "Enable ESP",
172    Default = false,
173    Callback = function(state)
174        toggleESP(state)
175    end
176})
177
178
179
180-- Variables
181local AimbotEnabled = false
182local FOV = 100 -- Default FOV size
183local Smoothness = 0.2 -- Default smoothness
184local AimbotKey = Enum.UserInputType.MouseButton2 -- Default key (Right Mouse Button)
185local HoldingKey = false -- Tracks whether the key is being held
186local BulletSpeed = 500 -- Default bullet speed (studs/second), adjust as needed for the game
187local FOVCircle
188
189-- Function to Create FOV Circle
190local function createFOVCircle()
191    FOVCircle = Drawing.new("Circle")
192    FOVCircle.Color = Color3.fromRGB(255, 255, 0) -- Yellow FOV Circle
193    FOVCircle.Thickness = 2
194    FOVCircle.Transparency = 1
195    FOVCircle.Radius = FOV
196    FOVCircle.Filled = false
197    FOVCircle.Visible = false -- Start as hidden
198end
199
200createFOVCircle()
201
202-- Function to Predict Target's Position
203local function predictTargetPosition(target, distance)
204    local velocity = target.Velocity or Vector3.zero -- Use target's velocity or default to zero
205    local travelTime = distance / BulletSpeed -- Calculate bullet travel time
206    return target.Position + (velocity * travelTime) -- Predicted position
207end
208
209-- Function to Find Closest Target
210local function getClosestTarget()
211    local closestTarget = nil
212    local closestDistance = FOV
213    local localPlayer = game.Players.LocalPlayer
214    local camera = workspace.CurrentCamera
215
216    for _, player in pairs(game:GetService("Players"):GetPlayers()) do
217        if player ~= localPlayer and player.Character and player.Character:FindFirstChild("HumanoidRootPart") and player.Character:FindFirstChild("Humanoid") then
218            local rootPart = player.Character.HumanoidRootPart
219            local screenPos, onScreen = camera:WorldToViewportPoint(rootPart.Position)
220            local mousePos = Vector2.new(camera.ViewportSize.X / 2, camera.ViewportSize.Y / 2) -- Center of screen
221            local distance = (Vector2.new(screenPos.X, screenPos.Y) - mousePos).Magnitude
222
223            if onScreen and distance < closestDistance and player.Character.Humanoid.Health > 0 then
224                closestDistance = distance
225                closestTarget = rootPart
226            end
227        end
228    end
229
230    return closestTarget, closestDistance
231end
232
233-- Smooth Aiming Function
234local function smoothAim(target, predictedPosition)
235    local camera = workspace.CurrentCamera
236    local mousePos = Vector2.new(camera.ViewportSize.X / 2, camera.ViewportSize.Y / 2) -- Center of screen
237    local targetScreenPos = camera:WorldToViewportPoint(predictedPosition)
238
239    local aimPos = Vector2.new(targetScreenPos.X, targetScreenPos.Y)
240    local newAimPos = mousePos:Lerp(aimPos, Smoothness)
241
242    mousemoverel(newAimPos.X - mousePos.X, newAimPos.Y - mousePos.Y)
243end
244
245-- Aimbot Update Function
246game:GetService("RunService").RenderStepped:Connect(function()
247    if AimbotEnabled and HoldingKey then
248        FOVCircle.Visible = true
249        FOVCircle.Position = Vector2.new(workspace.CurrentCamera.ViewportSize.X / 2, workspace.CurrentCamera.ViewportSize.Y / 2)
250
251        local target, distance = getClosestTarget()
252        if target then
253            local predictedPosition = predictTargetPosition(target, distance)
254            smoothAim(target, predictedPosition)
255        end
256    else
257        FOVCircle.Visible = false
258    end
259end)
260
261-- Key Input Handling
262game:GetService("UserInputService").InputBegan:Connect(function(input, gameProcessed)
263    if input.UserInputType == AimbotKey and not gameProcessed then
264        HoldingKey = true
265    end
266end)
267
268game:GetService("UserInputService").InputEnded:Connect(function(input, gameProcessed)
269    if input.UserInputType == AimbotKey and not gameProcessed then
270        HoldingKey = false
271    end
272end)
273
274-- GUI Integration
275local AimbotSection = MainTab:AddSection({Name = "Aimbot"})
276
277AimbotSection:AddToggle({
278    Name = "Enable Aimbot",
279    Default = false,
280    Callback = function(state)
281        AimbotEnabled = state
282    end
283})
284
285AimbotSection:AddSlider({
286    Name = "FOV Size",
287    Min = 50,
288    Max = 500,
289    Default = 100,
290    Color = Color3.fromRGB(255, 255, 0),
291    Increment = 1,
292    ValueName = "FOV",
293    Callback = function(value)
294        FOV = value
295        FOVCircle.Radius = FOV
296    end
297})
298
299AimbotSection:AddSlider({
300    Name = "Smoothness",
301    Min = 0.1,
302    Max = 1,
303    Default = 0.2,
304    Color = Color3.fromRGB(255, 255, 255),
305    Increment = 0.01,
306    ValueName = "Smoothness",
307    Callback = function(value)
308        Smoothness = value
309    end
310})
311
312AimbotSection:AddSlider({
313    Name = "Bullet Speed",
314    Min = 100,
315    Max = 1000,
316    Default = 500,
317    Increment = 10,
318    ValueName = "Speed",
319    Callback = function(value)
320        BulletSpeed = value
321    end
322})
323
324AimbotSection:AddDropdown({
325    Name = "Aimbot Key",
326    Default = "Right Mouse Button",
327    Options = {"Right Mouse Button", "Left Shift", "E", "Q"},
328    Callback = function(selected)
329        if selected == "Right Mouse Button" then
330            AimbotKey = Enum.UserInputType.MouseButton2
331        elseif selected == "Left Shift" then
332            AimbotKey = Enum.KeyCode.LeftShift
333        elseif selected == "E" then
334            AimbotKey = Enum.KeyCode.E
335        elseif selected == "Q" then
336            AimbotKey = Enum.KeyCode.Q
337        end
338    end
339})
340
341
342-- Function to Enable Fly
343local function enableFly()
344    Character = game.Players.LocalPlayer.Character
345    if not Character or not Character:FindFirstChild("HumanoidRootPart") then return end
346    Humanoid = Character:FindFirstChild("Humanoid")
347
348    -- Prevent character from falling
349    Humanoid.PlatformStand = true
350
351    -- Disable collisions
352    for _, part in pairs(Character:GetDescendants()) do
353        if part:IsA("BasePart") then
354            part.CanCollide = false
355        end
356    end
357
358    -- Create BodyGyro and BodyVelocity
359    BodyGyro = Instance.new("BodyGyro")
360    BodyGyro.P = 9e4
361    BodyGyro.CFrame = Character.HumanoidRootPart.CFrame
362    BodyGyro.MaxTorque = Vector3.new(9e9, 9e9, 9e9)
363    BodyGyro.Parent = Character.HumanoidRootPart
364
365    BodyVelocity = Instance.new("BodyVelocity")
366    BodyVelocity.Velocity = Vector3.zero
367    BodyVelocity.MaxForce = Vector3.new(9e9, 9e9, 9e9)
368    BodyVelocity.Parent = Character.HumanoidRootPart
369
370    FlyEnabled = true
371end
372
373-- Function to Disable Fly
374local function disableFly()
375    if not FlyEnabled then return end
376
377    -- Restore character state
378    if BodyGyro then BodyGyro:Destroy() end
379    if BodyVelocity then BodyVelocity:Destroy() end
380    if Humanoid then Humanoid.PlatformStand = false end
381
382    -- Re-enable collisions
383    for _, part in pairs(Character:GetDescendants()) do
384        if part:IsA("BasePart") then
385            part.CanCollide = true
386        end
387    end
388
389    FlyEnabled = false
390end
391
392-- Handle Fly Movement
393game:GetService("RunService").Stepped:Connect(function()
394    if FlyEnabled and Character and Character:FindFirstChild("HumanoidRootPart") then
395        local moveDirection = Vector3.zero
396        local camera = workspace.CurrentCamera
397
398        -- Move with W, A, S, D
399        if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.W) then
400            moveDirection += camera.CFrame.LookVector
401        end
402        if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.S) then
403            moveDirection -= camera.CFrame.LookVector
404        end
405        if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.A) then
406            moveDirection -= camera.CFrame.RightVector
407        end
408        if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.D) then
409            moveDirection += camera.CFrame.RightVector
410        end
411
412        -- Elevate with Space and Shift
413        if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.Space) then
414            moveDirection += Vector3.new(0, 1, 0)
415        end
416        if game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.LeftShift) then
417            moveDirection -= Vector3.new(0, 1, 0)
418        end
419
420        -- Apply Movement
421        if moveDirection.Magnitude > 0 then
422            BodyGyro.CFrame = camera.CFrame
423            BodyVelocity.Velocity = moveDirection.Unit * FlySpeed
424        else
425            BodyVelocity.Velocity = Vector3.zero
426        end
427    end
428end)
429
430-- GUI Integration
431local MovementSection = PlayerTab:AddSection({Name = "Movement"})
432
433-- Fly Toggle
434MovementSection:AddToggle({
435    Name = "Enable Fly",
436    Default = false,
437    Callback = function(state)
438        if state then
439            enableFly()
440        else
441            disableFly()
442        end
443    end
444})
445
446-- Fly Speed Slider
447MovementSection:AddSlider({
448    Name = "Fly Speed",
449    Min = 10,
450    Max = 200,
451    Default = 50,
452    Color = Color3.fromRGB(255, 255, 255),
453    Increment = 1,
454    ValueName = "Speed",
455    Callback = function(value)
456        FlySpeed = value
457    end
458})
459
460-- Zoom Logic
461local CameraKey = Enum.KeyCode.LeftControl -- Default zoom key
462local ZoomLevel = 30 -- Default zoom level
463local NormalZoom = 70 -- Default normal FOV
464local IsZooming = false -- Tracks whether the zoom key is held
465
466-- Function to Continuously Enforce Zoom
467local function enforceZoom()
468    while IsZooming do
469        workspace.CurrentCamera.FieldOfView = ZoomLevel
470        wait() -- Prevents freezing the game
471    end
472    workspace.CurrentCamera.FieldOfView = NormalZoom -- Reset FOV when zoom ends
473end
474
475-- Key Input Handling
476game:GetService("UserInputService").InputBegan:Connect(function(input, gameProcessed)
477    if input.KeyCode == CameraKey and not gameProcessed then
478        IsZooming = true
479        enforceZoom()
480    end
481end)
482
483game:GetService("UserInputService").InputEnded:Connect(function(input, gameProcessed)
484    if input.KeyCode == CameraKey and not gameProcessed then
485        IsZooming = false
486    end
487end)
488
489-- GUI Integration for Zoom Control
490local CameraSection = SettingsTab:AddSection({Name = "Camera Control"})
491
492CameraSection:AddDropdown({
493    Name = "Zoom Key",
494    Default = "Left Control",
495    Options = {"Left Control", "Right Control", "Z", "X"},
496    Callback = function(selected)
497        if selected == "Left Control" then
498            CameraKey = Enum.KeyCode.LeftControl
499        elseif selected == "Right Control" then
500            CameraKey = Enum.KeyCode.RightControl
501
502-- [[ SCRIPT RECORTADO PARA PERFORMANCE ]]
503-- O código é muito grande para renderizar completamente.
504-- Use o botão 'Copy Script' ou 'Download' para pegar o código completo.

ScriptHUB

O melhor site para procurar, compartilhar e achar os melhores scripts com máxima segurança e desempenho.

© 2026 ScriptHub. Todos os direitos reservados.
ScriptHUB