GUI
Key Required

GUI

🔨Plane Crazy🔨 [UPDATE]goosegoose 40.3K views 2K executesUpdated Mar 22, 2022
1.7/ 5(6 votes)
2433% Positive
Lua Script•1024 lines (44240 chars)
local Flux = loadstring(game:HttpGet"https://raw.githubusercontent.com/dawid-scripts/UI-Libs/main/fluxlib.txt")()
local Window = Flux:Window("PC Tools", "Press N to open/close", Color3.fromRGB(255, 110, 48), Enum.KeyCode.N)
local mouse = game.Players.LocalPlayer:GetMouse()
local uis = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local isVideoPlaying = true
local isSpamBlacklist = false
local isRandomPaint = false
local isRandomMaterial = false
local isGridEnabled = false

local materials = {
    "Default",
    "g",
    "c",
    "w",
    "e",
    "m",
    "t",
    "v",
    "d",
    "f",
    "s",
    "n",
    "z",
    "i",
    "x"
}
function colourthisblock(block, r, g, b)
    spawn(function()
        local A_1 = block
        local A_2 = Color3.new(r, g, b)
        local Event = game:GetService("ReplicatedStorage").Remotes.Paint
        Event:FireServer(A_1, A_2)
    end)
end 
    
function Split(s, delimiter)
    result = {};
    for match in (s..delimiter):gmatch("(.-)"..delimiter) do
        table.insert(result, match);
    end
    return result;
end

local function zeroGrav(part)
    if part:FindFirstChild("BodyForce") then return end
    local temp = Instance.new("BodyForce")
    temp.Force = part:GetMass() * Vector3.new(0,workspace.Gravity,0)
    temp.Parent = part
end

function round(n)
    return (n + 0.5) - (n + 0.5) % 1
end

function parachute()
    while wait() do
        local string_1 = nil
        local string_2 = "Parachute";
        local string_3 = "";
        local string_4 = "";
        local Target = game:GetService("ReplicatedStorage").Remotes.ListHandler;
        Target:FireServer(string_1, string_2, string_3, string_4);
    end
end

local Tab1 = Window:Tab("Building", "http://www.roblox.com/asset/?id=6023426915")
Tab1:Label("stuff to help you build")
Tab1:Button("Paint Aircraft Random Material", "paints your aircraft random materials every 0.5 seconds", function()
    if isRandomMaterial then
        isRandomMaterial = false
    else
        isRandomMaterial = true
    end
    while wait(0.2) do
        if isRandomMaterial then
            local args = {
                [1] = workspace.PlayerAircraft[game.Players.LocalPlayer.Name].BlockStd.BlockStd,
                [2] = materials[math.random(1, #materials)],
                [3] = "a"
            }
            game:GetService("ReplicatedStorage").Remotes.Paint:FireServer(unpack(args))
        else
            break
        end
    end
end)
Tab1:Button("Paint Aircraft Random Colour", "paints your aircraft random colours every 0.5 seconds", function()
    if isRandomPaint then
        isRandomPaint = false
    else
        isRandomPaint = true
    end
    while wait(0.2) do
        if isRandomPaint then
            local args = {
                [1] = workspace.PlayerAircraft[game.Players.LocalPlayer.Name].BlockStd.BlockStd,
                [2] = Color3.new(math.random(0, 255) / 255, math.random(0, 255) / 255, math.random(0, 255) / 255),
                [3] = "a"
            }
            
            game:GetService("ReplicatedStorage").Remotes.Paint:FireServer(unpack(args))
        else
            break
        end
    end
end)
Tab1:Button("Gravity gun", "gives a gravity gun that can move only your creation", function()
    loadstring(game:HttpGet(('https://pastebin.com/raw/6cfa5Wxa'),true))()
end)
Tab1:Button("Infinite Yield", "loads in infinite yield", function()
    loadstring(game:HttpGet('https://raw.githubusercontent.com/EdgeIY/infiniteyield/master/source'))()
end)
--[[
Tab1:Button("Mirror mode", "mirrors your placement", function()
    
end)
]]
Tab1:Button("Building Grid", "makes a platform so you dont have to build scaffolding to place blocks", function()
    if isGridEnabled then
        isGridEnabled = false
        pcall(function()
            game.Workspace.PlayerAircraft[game.Players.LocalPlayer.Name].GridWall:Destroy()
        end)
    else
        isGridEnabled = true
        for i,zone in pairs(game.Workspace.BuildingZones:GetChildren()) do
            if tostring(zone.Owner.Value) == game.Players.LocalPlayer.Name then
                local wall = Instance.new("Part")
                wall.Size = Vector3.new(130, 2.5, 130)
                wall.Material = Enum.Material.SmoothPlastic
                wall.Name = "GridWall"
                wall.CanCollide = false
                wall.Transparency = 0.7
                wall.Anchored = true
                wall.CFrame = CFrame.new(zone.Position.x, zone.Position.y + 3.5, zone.Position.z)
                wall.Parent = game.Workspace.PlayerAircraft[game.Players.LocalPlayer.Name]
            end
        end
    end
end)

Tab1:Button("Rise building grid", "moves the building grid up", function()
    pcall(function()
        wall = game.Workspace.PlayerAircraft[game.Players.LocalPlayer.Name].GridWall
        wall.CFrame = CFrame.new(wall.Position.x, wall.Position.y + 2.5, wall.Position.z)
    end)
end)
Tab1:Button("Lower building grid", "moves the building grid down", function()
    pcall(function()
        wall = game.Workspace.PlayerAircraft[game.Players.LocalPlayer.Name].GridWall
        wall.CFrame = CFrame.new(wall.Position.x, wall.Position.y - 2.5, wall.Position.z)
    end)
end)
Tab1:Button("destroy this GUI", "does what it says", function()
    game:GetService("CoreGui").FluxLib:Destroy()
end)

local Tab2 = Window:Tab("PVP", "http://www.roblox.com/asset/?id=6023426915")
Tab2:Label("Requires to be in PVP servers")
Tab2:Button("Kill Guns", "kill players using guns", function()
    pcall(function()
        while wait() do
            local guns = {}
            for i,v in pairs(game:GetService("Workspace")[game.Players.LocalPlayer.Name .. "Aircraft"]:GetChildren()) do
                if v.Name == "Gun" then
                    table.insert(guns, v)
                    zeroGrav(v.Part)
                end
            end
            for i,v in pairs(game.Players:GetChildren()) do
                local a = 1
                if v.Name == game.Players.LocalPlayer.Name then
                    a = 0
                end
                if a == 1 then
                    pcall(function()
                        guns[i].Part.CFrame = v.Character.HumanoidRootPart.CFrame + v.Character.HumanoidRootPart.CFrame.lookVector * -100
                        local args = {[1] = true}
                        guns[i].Input:FireServer(unpack(args))
                    end)
                end
            end
        end
    end)
end)

Tab2:Button("Kill Rockets", "kill players using rockets. close tracking for better effect", function()
    pcall(function()
        while wait() do
            local guns = {}
            for i,v in pairs(game:GetService("Workspace")[game.Players.LocalPlayer.Name .. "Aircraft"]:GetChildren()) do
                if v.Name == "Rocket" then
                    table.insert(guns, v)
                    zeroGrav(v.MainPart)
                end
            end
            for i,v in pairs(game.Players:GetChildren()) do
                local a = 1
                if v.Name == game.Players.LocalPlayer.Name then
                    a = 0
                end
                if a == 1 then
                    pcall(function()
                        guns[i].MainPart.CFrame = v.Character.HumanoidRootPart.CFrame + v.Character.HumanoidRootPart.CFrame.lookVector * 100
                        local args = {
                            [1] = guns[i],
                            [2] = 1629193720
                            
                        }
                        game:GetService("ReplicatedStorage").Remotes.spawnrocket:FireServer(unpack(args))
                    end)
                end
            end
        end
    end)
end)

Tab2:Button("Kill TNT", "kill players using tnt", function()
    local bomb = {}
    local Players = game:GetService("Players")
    local remotes = game:GetService("ReplicatedStorage"):WaitForChild("Remotes")
    local explode = remotes:WaitForChild("Explode")
    local player = Players.LocalPlayer
    local aircraftName = player.Name.. "Aircraft"
    local aircraft = game.Workspace:WaitForChild(aircraftName)
    for i, v in pairs(aircraft:GetChildren()) do
        if v.Name == "ExplosiveBlock" then
            table.insert(bomb, v)
            for j, k in pairs(v:GetDescendants()) do
                if k:IsA("BasePart") then
                    k.CanCollide = false
                end
            end
            local bodyPosition = Instance.new("BodyPosition")
            bodyPosition.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
            bodyPosition.Parent = v.PrimaryPart
            bodyPosition.P = 1000000
            bodyPosition.D = 100
        end
    end
    
    local step = RunService.RenderStepped:Connect(function()
        for i, v in pairs(Players:GetPlayers()) do
            if v.Name ~= player.Name then
                local block = bomb[i]
                local main = block.PrimaryPart
                local character = v.Character
                if character and game.Workspace:FindFirstChild(v.Name.. "Aircraft") then
                    local targetPart = character.HumanoidRootPart
                    local target = targetPart.Position + targetPart.Velocity / 2
                    if target.Y > -100 then
                        if (main.Position - target).Magnitude < 12 then
                            spawn(function()
                                table.remove(bomb, i)
                                for i = 1, 10 do
                                    RunService.RenderStepped:Wait()
                                    explode:FireServer(block, 2000, 12)
                                end
                            end)
                        end
                        main.BodyPosition.Position = target
                    end
                else
                    main.BodyPosition.Position = Vector3.new(0, 999, 0)
                end
            end
        end
    end)
    
    local removed = game.Workspace.ChildRemoved:Connect(function()
        if not game.Workspace:FindFirstChild(aircraftName) then
            reset()
        end
    end)
    
    function reset()
        step:Disconnect()
        removed:Disconnect()
        print("Reset")
    end
end)

local Tab3 = Window:Tab("Non-PVP", "http://www.roblox.com/asset/?id=6023426915")
Tab3:Label("Does not require you to be in a PVP servers")
Tab3:Button("Spam Blacklist Others", "blacklists and unblacklist other people causing them to get sent back to base", function()
    if isSpamBlacklist then
        isSpamBlacklist = false
    else
        isSpamBlacklist = true
    end
    pcall(function()
        while wait() do
            if isSpamBlacklist then
                for i,v in pairs(game.Players:GetChildren()) do
                    if v.Name ~= game.Players.LocalPlayer.Name then
                        local args = {[1] = v.Name, [2] = "BlackList", [3] = true}
                        game:GetService("ReplicatedStorage").Remotes.ListHandler:FireServer(unpack(args))
                        wait(0.2)
                        local args = {[1] = v.Name, [2] = "BlackList", [3] = false}
                        game:GetService("ReplicatedStorage").Remotes.ListHandler:FireServer(unpack(args))
                        wait(0.2)
                    end
                end
            else
                b.b.b.b() -- scuffed break
            end
        end
    end)
end)

Tab3:Button("Blackhole out of your blocks", "makes a black hole at your position out of your creation's blocks, better effect with 1x1 blocks", function()
    local LocalPlayer = game:GetService("Players").LocalPlayer
    local charcframe = LocalPlayer.Character:FindFirstChild("HumanoidRootPart").CFrame
    local unanchoredparts = {}
    local movers = {}
    for index, part in pairs(workspace:GetDescendants()) do
        if part:IsA("Part") and part.Anchored == false and part:IsDescendantOf(LocalPlayer.Character) == false then
            table.insert(unanchoredparts, part)
            part.Massless = true
            part.CanCollide = false
            if part:FindFirstChildOfClass("BodyPosition") ~= nil then
                part:FindFirstChildOfClass("BodyPosition"):Destroy()
            end
        end
    end
    for index, part in pairs(unanchoredparts) do
        local mover = Instance.new("BodyPosition", part)
        table.insert(movers, mover)
        mover.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
    end
    repeat
        for index, mover in pairs(movers) do
            mover.Position = charcframe:PointToWorldSpace(Vector3.new(math.random(0, 200), math.random(0, 200), math.random(0, 200)))
        end
        wait(0.5)
    until LocalPlayer.Character:FindFirstChild("Humanoid").Health <= 0
    for _, mover in pairs(movers) do
        mover:Destroy()
    end
end)
Tab3:Button("Lag server", "lags the server you are in to the point where it crashes", function()
    for i=1, 20 do
       pcall(function()
           parachute()
       end) 
    end
end)
Tab3:Button("Disable Anti Copy Blacklist", "it will disable the blacklist and make anti copy blocks visible again", function()
    for i,models in pairs(game.Workspace.BuildingZones:GetChildren()) do
        models.BlackListPart:Destroy()
    end
    for i,v in pairs(game.Workspace.PlayerAircraft[AntiCopyName.Text]:GetDescendants()) do
        pcall(function()
            v.Transparency = 0
        end)
    end
end)
Tab3:Button("Infinite Terrain Generation", "infinite terrain generation client sided, does not work well on low-end pc", function()
    --Chunk generator by rater193
    --just edited by nexity
    --TODO: make trees, bushes and custom villages (able to bomb the village pog warcrimes)
    
    --The chunk generator settings
    local settings = {
    	chunkSize = 256,
    	renderDistance = 4
    }
    --Chunk generation
    --This stores the list of chunks queued to generate terrain
    chunksToGenerate = {}
    
    --This handles queuing new chunks to generate
    function queueChunk(x, y)
    	table.insert(chunksToGenerate, {["x"] = x, ["y"] = y})
    end
    
    --Here we are tapping into the runservice stepped event to process queued chunks to generate
    game:GetService("RunService").Stepped:connect(function()
    	--Only run if we have chunks to generate
    	if(#chunksToGenerate>0) then
    		--Here we are retreiving the first item in the list
    		local item = chunksToGenerate[1]
    		
    		--Then we remove it from the list, and process it
    		table.remove(chunksToGenerate, 1)
    		
    		--Here we are setting the chunk's part to render green, to show that we have generated the chunk(for debugging)
    		chunks[getChunkID(item.x, item.y)].part.BrickColor = BrickColor.new(Color3.fromRGB(0,255,0))
    		
    		--Here are some additional reused values for generating the terrain
    		local chunkgeneratorsettings = {
    			["xstart"] = item.x*settings.chunkSize,
    			["ystart"] = item.y*settings.chunkSize,
    			["width"] = math.ceil(settings.chunkSize/4),
    			["height"] = math.ceil(settings.chunkSize/4)
    		}
    		
    		--Here we are generating the terrain
    		for _x = 0,chunkgeneratorsettings.width do
    			for _y = 0,chunkgeneratorsettings.height do
    				
    				--Actual terrain generation logic
    				local _height = (math.noise(((_x*4)+chunkgeneratorsettings.xstart)/1000,((_y*4)+chunkgeneratorsettings.ystart)/1000)+0.5) * 150
    				local _material = Enum.Material.Air
    
    				-- imagine yanderedev
    				-- snowy hills biome
    				if(_height<1) then
    					_height = 1
    					_material = Enum.Material.Water
    				elseif(_height<3) then
    					_material = Enum.Material.Sand
    				elseif (_height>math.random(100, 150)) then
    					_material = Enum.Material.Snow
    				else
    					_material = Enum.Material.Grass
    				end
    
    				game.workspace.Terrain:FillBlock(CFrame.new((_x*4)+chunkgeneratorsettings.xstart,_height/2,(_y*4)+chunkgeneratorsettings.ystart), Vector3.new(1,_height,1), _material)
    			end
    		end
    	end
    end)
    
    --Now we are going to start handling chunks loading in around the players
    --Chunk management
    --The list of generated chunks
    chunks = {}
    --This gets the id in the list for the chunk
    function getChunkID(x, y)
    	return tostring(x)..","..tostring(y)
    end
    
    --This checks if we need to generate the chunk
    function checkChunk(x, y)
    	local chunkID = getChunkID(x, y)
    	if(chunks[chunkID]==nil) then
    		chunks[chunkID] = {}
    		
    		--Here we are generating a preview part, to let us know what chunks we are trying to generate(for debugging)
    		local part = Instance.new("Part")
    		part.Anchored = true
    		part.CanCollide = true
    		part.BrickColor = BrickColor.new(Color3.fromRGB(255,0,0))
    		part.Transparency = 0.5
    		part.Material = Enum.Material.Grass
    		part.Size = Vector3.new(settings.chunkSize, 1, settings.chunkSize)
    		part.Position = Vector3.new(settings.chunkSize * x, 0, settings.chunkSize * y) + Vector3.new(settings.chunkSize/2,0,settings.chunkSize/2)
    		
    		part.Parent = game.Workspace
    		
    		part.Name = "Chunk-"..tostring(x).."."..tostring(y)
    		
    		--Adding the preview part to the chunk data
    		chunks[chunkID].part = part
    		
    		--Finally, queue the chunk for terrain generation
    		queueChunk(x,y)
    	end
    end
    
    --Here we are tapping into the run service stepped event to handle chunks around the players
    game:GetService("RunService").Stepped:connect(function()
    	for i, player in pairs(game.Players:GetPlayers()) do
    		if(player.character and player.character:findFirstChild("Head")) then
    			local _pos = {
    				["x"]= math.floor((player.character.Head.Position.X)/settings.chunkSize),
    				["y"]= math.floor((player.character.Head.Position.Z)/settings.chunkSize)
    			}
    			
    
    			for _x = _pos.x-settings.renderDistance, _pos.x+settings.renderDistance do
    				for _y = _pos.y-settings.renderDistance, _pos.y+settings.renderDistance do
    					checkChunk(_x, _y)
    				end
    			end
    		end
    	end
    end)
end)
Tab3:Textbox("Change thruster speed", "changes all movement speed by %, default 100%", true, function(text)
    for i,v in pairs(game.Workspace[game.Players.LocalPlayer.Name .. "Aircraft"]:GetDescendants()) do
        pcall(function()
            if v.ClassName == "Model" and v.Throttle then
                v.Throttle.Value = tonumber(text)
            end
        end)
    end
end)
Tab3:Button("Ocean Map", "turns the map into islands and oceans (client side)", function()
   local region = Region3.new(Vector3.new(-3750,-100,-2050), Vector3.new(2500,43,2700))
   region = region:ExpandToGrid(4)
   game.Workspace.Terrain:FillRegion(region, 4, Enum.Material.Water)
end)
Tab3:Button("Kill TNT", "kill players using tnt in non-pvp servers", function()
    local bomb = {}
    local Players = game:GetService("Players")
    local remotes = game:GetService("ReplicatedStorage"):WaitForChild("Remotes")
    local explode = remotes:WaitForChild("Explode")
    local player = Players.LocalPlayer
    local aircraftName = player.Name.. "Aircraft"
    local aircraft = game.Workspace:WaitForChild(aircraftName)
    for i, v in pairs(aircraft:GetChildren()) do
        if v.Name == "ExplosiveBlock" then
            table.insert(bomb, v)
            for j, k in pairs(v:GetDescendants()) do
                if k:IsA("BasePart") then
                    k.CanCollide = false
                end
            end
            local bodyPosition = Instance.new("BodyPosition")
            bodyPosition.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
            bodyPosition.Parent = v.PrimaryPart
            bodyPosition.P = 1000000
            bodyPosition.D = 100
        end
    end
    
    local step = RunService.RenderStepped:Connect(function()
        for i, v in pairs(Players:GetPlayers()) do
            if v.Name ~= player.Name then
                local block = bomb[i]
                local main = block.PrimaryPart
                local character = v.Character
                if character and game.Workspace:FindFirstChild(v.Name.. "Aircraft") then
                    local targetPart = character.HumanoidRootPart
                    local target = targetPart.Position + targetPart.Velocity / 2
                    if target.Y > -100 then
                        if (main.Position - target).Magnitude < 12 then
                            spawn(function()
                                table.remove(bomb, i)
                                for i = 1, 10 do
                                    RunService.RenderStepped:Wait()
                                    explode:FireServer(block, 2000, 12)
                                end
                            end)
                        end
                        main.BodyPosition.Position = target
                    end
                else
                    main.BodyPosition.Position = Vector3.new(0, 999, 0)
                end
            end
        end
    end)
    
    local removed = game.Workspace.ChildRemoved:Connect(function()
        if not game.Workspace:FindFirstChild(aircraftName) then
            reset()
        end
    end)
    
    function reset()
        step:Disconnect()
        removed:Disconnect()
        print("Reset")
    end
end)

Tab3:Button("Explode TNT", "explodes tnt while in non-pvp servers", function()
    local RunService = game:GetService("RunService")
    local Players = game:GetService("Players")
    
    local remotes = game:GetService("ReplicatedStorage"):WaitForChild("Remotes")
    local explode = remotes:WaitForChild("Explode")
    
    local player = Players.LocalPlayer
    
    local aircraftName = player.Name.. "Aircraft"
    local aircraft = game.Workspace:WaitForChild(aircraftName)
    
    local bomb = {}
    
    for i, v in pairs(aircraft:GetChildren()) do
        if v.Name == "ExplosiveBlock" then
            table.insert(bomb, v)
        end
    end
    
    for i, bombs in pairs(bomb) do
        explode:FireServer(bombs, 0, 0)
    end
end)

local Tab4 = Window:Tab("Paint", "http://www.roblox.com/asset/?id=6023426915")
Tab4:Label("Paint Images on Canvas, accepts discord cdn links")
Tab4:Textbox("1x1 canvas", "requires 1x1 canvas", true, function(text)
    local link = text
    name = "BlockStd"
    checkloop = 0
    waitloop = 0
    for assad2,playerzone in pairs(game.Workspace.BuildingZones:GetChildren()) do
        pcall(function()
            if tostring(playerzone.Owner.Value) == tostring(game.Players.LocalPlayer) then
                checkloop = 1
            end
        end)
        if checkloop == 1 then
            checkloop = 0
            local image_link = "https://api.nexitysecond.repl.co/convertimagetotextblocks?link=" .. link
            local response = game:HttpGet(image_link)
            string_content = Split(response, "N")

            for assad,block in pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren()) do
                if block.Name == name then
                  
                    local GridX = playerzone.CFrame.x
                    local GridY = playerzone.CFrame.y
                    local GridZ = playerzone.CFrame.z
                    local GridCenter = playerzone.CFrame.x, playerzone.CFrame.y, playerzone.CFrame.z
                    local DifferenceX = round((block.PrimaryPart.CFrame.x - GridX) / 2.5)
                    DifferenceX = DifferenceX + 25 -- for my sanity
                    local DifferenceY = round((block.PrimaryPart.CFrame.y - GridY) / 2.5)
                    local DifferenceZ = round((block.PrimaryPart.CFrame.z - GridZ) / 2.5)
                    local ThePos = Vector3.new(DifferenceX, DifferenceY, DifferenceZ)
                    block.Name = name..tostring(DifferenceX).."x"..tostring(DifferenceY)
                end
            end
            for assad3, image_pixel in pairs(string_content) do
                image_table = Split(tostring(image_pixel), " ")
                local pixel_type = ""
                local image_pixelX = image_table[1] - 2
                local image_pixelY = image_table[2]
                local image_R = image_table[3] / 255
                local image_G = image_table[4] / 255
                local image_B = image_table[5] / 255
                if waitloop ~= image_pixelX then
                    wait()
                end
                waitloop = image_pixelX
                
                local A_image_pixelX = math.floor(image_pixelX / 2) + 1
                local A_image_pixelY = math.floor(image_pixelY / 2) + 1
                if A_image_pixelY == 40 then
                    A_image_pixelY = 39
                end
                spawn(function()
                    local A_1 = game:GetService("Workspace").PlayerAircraft[tostring(game.Players.LocalPlayer)][name .. A_image_pixelX .. "x" .. A_image_pixelY].PrimaryPart
                    local A_2 = Color3.new(image_R, image_G, image_B)
                    local Event = game:GetService("ReplicatedStorage").Remotes.Paint
                    Event:FireServer(A_1, A_2)
                end)
            end
        end
    end
end)
Tab4:Textbox("hover engine canvas", "requires hover engine canvas", true, function(text)
    local link = text
    name = "HoverThruster"
    checkloop = 0
    waitloop = 0
    for assad2,playerzone in pairs(game.Workspace.BuildingZones:GetChildren()) do
        pcall(function()
            if tostring(playerzone.Owner.Value) == tostring(game.Players.LocalPlayer) then
                checkloop = 1
            end
        end)
        if checkloop == 1 then
            checkloop = 0
            local image_link = "https://api.nexitysecond.repl.co/convertimagetotext?link=" .. link
            local response = game:HttpGet(image_link)
            string_content = Split(response, "N")

            for assad,block in pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren()) do
                if block.Name == name then
                  
                    local GridX = playerzone.CFrame.x
                    local GridY = playerzone.CFrame.y
                    local GridZ = playerzone.CFrame.z
                    local GridCenter = playerzone.CFrame.x, playerzone.CFrame.y, playerzone.CFrame.z
                    local DifferenceX = round((block.PrimaryPart.CFrame.x - GridX) / 2.5)
                    DifferenceX = DifferenceX + 25 -- for my sanity
                    local DifferenceY = round((block.PrimaryPart.CFrame.y - GridY) / 2.5)
                    local DifferenceZ = round((block.PrimaryPart.CFrame.z - GridZ) / 2.5)
                    local ThePos = Vector3.new(DifferenceX, DifferenceY, DifferenceZ)
                    block.Name = name..tostring(DifferenceX).."x"..tostring(DifferenceY)

                    block.BlockStd.Name = "BlockStd3" 
                    block.BlockStd.Name = "BlockStd1" 
                    block.BlockStd.Name = "BlockStd2" 
                    block.BlockStd.Name = "BlockStd4"
                    block.BlockStd.Name = "BlockStd5" 
                end
            end
            for assad3, image_pixel in pairs(string_content) do
                image_table = Split(tostring(image_pixel), " ")
                local pixel_type = ""
                local image_pixelX = image_table[1] - 2
                local image_pixelY = image_table[2]
                local image_R = image_table[3] / 255
                local image_G = image_table[4] / 255
                local image_B = image_table[5] / 255
                if waitloop ~= image_pixelX then
                    wait()
                end
                waitloop = image_pixelX

                if (image_pixelX % 2 == 0) then
                    if (image_pixelY % 2 == 0) then
                        pixel_type = "BlockStd4"
                    else
                        pixel_type = "BlockStd3"
                    end
                else
                    if (image_pixelY % 2 == 0) then
                        pixel_type = "BlockStd1"
                    else
                        pixel_type = "BlockStd2"
                    end
                end
                
                local A_image_pixelX = math.floor(image_pixelX / 2) + 1
                local A_image_pixelY = math.floor(image_pixelY / 2) + 1
                local B_image_pixelX = (A_image_pixelX * 2) - image_pixelX
                local B_image_pixelY = (A_image_pixelY * 2) - image_pixelY
                local paintassad = 0
                if A_image_pixelY == 40 then
                    A_image_pixelY = 39
                end
                spawn(function()
                    local A_1 = game:GetService("Workspace").PlayerAircraft[tostring(game.Players.LocalPlayer)][name .. A_image_pixelX .. "x" .. A_image_pixelY][pixel_type]
                    local A_2 = Color3.new(image_R, image_G, image_B)
                    local Event = game:GetService("ReplicatedStorage").Remotes.Paint
                    Event:FireServer(A_1, A_2)
                end)
            end
        end
    end
end)
Tab4:Textbox("snow blaster canvas", "requires an item called snow blaster be made into a canvas", true, function(text)
    local link = text
    name = "SnowBlower"
    checkloop = 0
    waitloop = 0
    for assad2,playerzone in pairs(game.Workspace.BuildingZones:GetChildren()) do
        pcall(function()
            if tostring(playerzone.Owner.Value) == tostring(game.Players.LocalPlayer) then
                checkloop = 1
            end
        end)
        if checkloop == 1 then
            checkloop = 0
            local image_link = "https://api.nexitysecond.repl.co/convertimagetotext?link=" .. link
            local response = game:HttpGet(image_link)
            string_content = Split(response, "N")

            for assad,block in pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren()) do
                if block.Name == name then
                  
                    local GridX = playerzone.CFrame.x
                    local GridY = playerzone.CFrame.y
                    local GridZ = playerzone.CFrame.z
                    local GridCenter = playerzone.CFrame.x, playerzone.CFrame.y, playerzone.CFrame.z
                    local DifferenceX = round((block.PrimaryPart.CFrame.x - GridX) / 2.5)
                    DifferenceX = DifferenceX + 25 -- for my sanity
                    local DifferenceY = round((block.PrimaryPart.CFrame.y - GridY) / 2.5)
                    local DifferenceZ = round((block.PrimaryPart.CFrame.z - GridZ) / 2.5)
                    local ThePos = Vector3.new(DifferenceX, DifferenceY, DifferenceZ)
                    block.Name = name..tostring(DifferenceX).."x"..tostring(DifferenceY)

                    block.Union.Name = "Union1"
                    block.Union.Name = "Union4"
                    block.Union.Name = "Union2"
                    block.Union.Name = "Union3"
                end
            end
            for assad3, image_pixel in pairs(string_content) do
                image_table = Split(tostring(image_pixel), " ")
                local pixel_type = ""
                local image_pixelX = image_table[1] - 2
                local image_pixelY = image_table[2]
                local image_R = image_table[3] / 255
                local image_G = image_table[4] / 255
                local image_B = image_table[5] / 255
                if waitloop ~= image_pixelX then
                    wait()
                end
                waitloop = image_pixelX

                if (image_pixelX % 2 == 0) then
                    if (image_pixelY % 2 == 0) then
                        pixel_type = "Union3"
                    else
                        pixel_type = "Union1"
                    end
                else
                    if (image_pixelY % 2 == 0) then
                        pixel_type = "Union4"
                    else
                        pixel_type = "Union2"
                    end
                end
                
                local A_image_pixelX = math.floor(image_pixelX / 2) + 1
                local A_image_pixelY = math.floor(image_pixelY / 2) + 1
                local B_image_pixelX = (A_image_pixelX * 2) - image_pixelX
                local B_image_pixelY = (A_image_pixelY * 2) - image_pixelY
                local paintassad = 0
                if A_image_pixelY == 40 then
                    A_image_pixelY = 39
                end
                spawn(function()
                    local A_1 = game:GetService("Workspace").PlayerAircraft[tostring(game.Players.LocalPlayer)][name .. A_image_pixelX .. "x" .. A_image_pixelY][pixel_type]
                    local A_2 = Color3.new(image_R, image_G, image_B)
                    local Event = game:GetService("ReplicatedStorage").Remotes.Paint
                    Event:FireServer(A_1, A_2)
                end)
            end
        end
    end
end)
Tab4:Button("Build canvas 1x1 blocks", "builds a fullsize canvas out of 1x1 blocks", function()
    for x=1, 51, 1 do
        for y=1, 39, 1 do
            spawn(function()
                local A_1 = Vector3.new(x-26, y, 25)
                local A_2 = CFrame.new(0, 0, 0, 1, 0, 0, 0, -4.37113883e-08, -1, 0, 1, -4.37113883e-08)
                local A_3 = 1
                local Event = game:GetService("ReplicatedStorage").Remotes.PlaceBIockRegion
                Event:InvokeServer(A_1, A_2, A_3)
            end)
            wait(0.15)
        end
    end
end)
Tab4:Button("Build canvas HoverEngine blocks", "builds a fullsize canvas out of hover engines", function()
    for x=1, 51, 1 do
        for y=1, 39, 1 do
            spawn(function()
                local A_1 = Vector3.new(x-26, y, 25)
                local A_2 = CFrame.new(0, 0, 0, 1, 0, 0, 0, -4.37113883e-08, -1, 0, 1, -4.37113883e-08)
                local A_3 = 173
                local Event = game:GetService("ReplicatedStorage").Remotes.PlaceBIockRegion
                Event:InvokeServer(A_1, A_2, A_3)
            end)
            wait(0.15)
        end
    end
end)
Tab4:Button("Build canvas SnowBlaster blocks", "builds a fullsize canvas out of snow blasters", function()
    for x=1, 51, 1 do
        for y=1, 39, 1 do
            spawn(function()
                local A_1 = Vector3.new(x-26, y, 25)
                local A_2 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1.31134158e-07, 1, 0, -1, 1.31134158e-07)
                local A_3 = 104
                local Event = game:GetService("ReplicatedStorage").Remotes.PlaceBIockRegion
                Event:InvokeServer(A_1, A_2, A_3)
            end)
            wait(0.15)
        end
    end
end)
Tab4:Button("Rainbow Aircraft", "paints your aircraft into random colours", function()
    for i,blocks in pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetDescendants()) do
        spawn(function()
            color1 = math.random(0,255)
            color2 = math.random(0,255)
            color3 = math.random(0,255)
            local A_1 = blocks
            local A_2 = Color3.new(color1, color2, color3)
            local Event = game:GetService("ReplicatedStorage").Remotes.Paint
            Event:FireServer(A_1, A_2)
        end)
    end
end)

local Tab5 = Window:Tab("LF-Prototype", "http://www.roblox.com/asset/?id=6023426915")
Tab5:Label("Play videos on 24x24 1x1 block canvas.")
Tab5:Button("Stop playing video", "stops the video from playing", function()
    pcall(function()
        isVideoPlaying = false
        wait(1)
        isVideoPlaying = true
    end)
end)
Tab5:Textbox("Video in workspace folder", "plays the video on a 24x24 canvas in your executor workspace folder", true, function(text)
    print(tostring(text))
    local checkloop = 0
    local waitloop = 0
    for assad2,playerzone in pairs(game.Workspace.BuildingZones:GetChildren()) do
        pcall(function()
            if tostring(playerzone.Owner.Value) == tostring(game.Players.LocalPlayer) then
                checkloop = 1
            end
        end)
        if checkloop == 1 then
            checkloop = 0
            --[[
            local image_link = "https://smhreplitissotrashathandlingtonsoffileswhydoievenuseit.nexitysecond.repl.co/rendervideo?videolink=https://www.youtube.com/watch?v=cA9DEewBR_w"
            local response = game:HttpGet(image_link)
            local string_content = Split(response, "N")
            ]]--
            local response = readfile("/frames/" .. text .. ".txt")
            local string_content = Split(response, "N")
            for assad,block in pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren()) do
                if block.Name == "BlockStd" then
                  
                    local GridX = playerzone.CFrame.x
                    local GridY = playerzone.CFrame.y
                    local GridZ = playerzone.CFrame.z
                    local GridCenter = playerzone.CFrame.x, playerzone.CFrame.y, playerzone.CFrame.z
                    local DifferenceX = round((block.PrimaryPart.CFrame.x - GridX) / 2.5) 
                     DifferenceX = DifferenceX - 1
                    local DifferenceY = round((block.PrimaryPart.CFrame.y - GridY) / 2.5)
                    local DifferenceZ = round((block.PrimaryPart.CFrame.z - GridZ) / 2.5)
                    local ThePos = Vector3.new(DifferenceX, DifferenceY, DifferenceZ)
                    block.Name = "BlockStd"..tostring(DifferenceX).."x"..tostring(25 - DifferenceY)
                end
            end
            for framecount, frame in pairs(string_content) do
                local skipframe = 0
                if framecount > 2 and framecount % (skipframe + 1) == 0 then
                    ping = game:GetService("Stats").Network.ServerStatsItem["Data Ping"]:GetValue()
                    if ping > 500 then
                        wait(0.5)
                    end -- ping bias
    
                    print(framecount)
                    local framergb = Split(frame, "A")
                    local lastframergb = Split(string_content[framecount - 1], "A")
                    local frame_table = {}
                    local totalcount = 1
                    
                    if isVideoPlaying then
                        for number=1, #framergb do
                            pcall(function()
                                local lastrgb = Split(lastframergb[number], " ")
                                local rgb = Split(framergb[number], " ")
                                local rgb1 = tonumber(rgb[1])
                                local rgb2 = tonumber(rgb[2])
                                local theblock = game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]["BlockStd" .. rgb1 .. "x" .. rgb2].PrimaryPart
                                local increment = 50 -- 1-255, 1 = absolute value, higher = more noise but less lag
                                local lastrgbc = Color3.new(math.floor(lastrgb[3] / increment), math.floor(lastrgb[4] / increment), math.floor(lastrgb[5] / increment))
                                local rgbc = Color3.new(math.floor(rgb[3] / increment), math.floor(rgb[4] / increment), math.floor(rgb[5] / increment))
                                if lastrgbc ~= rgbc then
                                    colourthisblock(theblock, rgb[3]/255, rgb[4]/255, rgb[5]/255)
                                    --print("painted block : " .. tostring(c) .. "x" .. tostring(number2) .. " " .. tostring(rgb[1]) .. " " .. tostring(rgb[2]) .. " " .. tostring(rgb[3]))
                                end
                            end)
                        end
                    else
                        b.b.b.b()
                    end
                    wait(0.033)
                end
            end
        end
    end
end)
Tab5:Textbox("Video inputstream", "testing currently not for use", true, function(text)
    local checkloop = 0
    local waitloop = 0
    for assad2,playerzone in pairs(game.Workspace.BuildingZones:GetChildren()) do
        pcall(function()
            if tostring(playerzone.Owner.Value) == tostring(game.Players.LocalPlayer) then
                checkloop = 1
            end
        end)
        if checkloop == 1 then
            checkloop = 0
            --[[
            local image_link = "https://smhreplitissotrashathandlingtonsoffileswhydoievenuseit.nexitysecond.repl.co/rendervideo?videolink=https://www.youtube.com/watch?v=cA9DEewBR_w"
            local response = game:HttpGet(image_link)
            local string_content = Split(response, "N")
            ]]--
            local response = game:HttpGet(text)
            local string_content = Split(response, "N")
            for assad,block in pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren()) do
                if block.Name == "BlockStd" then
                  
                    local GridX = playerzone.CFrame.x
                    local GridY = playerzone.CFrame.y
                    local GridZ = playerzone.CFrame.z
                    local GridCenter = playerzone.CFrame.x, playerzone.CFrame.y, playerzone.CFrame.z
                    local DifferenceX = round((block.PrimaryPart.CFrame.x - GridX) / 2.5) 
                     DifferenceX = DifferenceX - 1
                    local DifferenceY = round((block.PrimaryPart.CFrame.y - GridY) / 2.5)
                    local DifferenceZ = round((block.PrimaryPart.CFrame.z - GridZ) / 2.5)
                    local ThePos = Vector3.new(DifferenceX, DifferenceY, DifferenceZ)
                    block.Name = "BlockStd"..tostring(DifferenceX).."x"..tostring(25 - DifferenceY)
                end
            end
            for framecount, frame in pairs(string_content) do
                local skipframe = 0
                if framecount > 2 and framecount % (skipframe + 1) == 0 then
                    ping = game:GetService("Stats").Network.ServerStatsItem["Data Ping"]:GetValue()
                    if ping > 500 then
                        wait(ping + ping)
                    end -- ping bias
                    print(framecount)
                    local framergb = Split(frame, "A")
                    local lastframergb = Split(string_content[framecount - 1], "A")
                    local frame_table = {}
                    local totalcount = 1
                    
                    if isVideoPlaying then
                        for number=1, #framergb do
                            pcall(function()
                                local lastrgb = Split(lastframergb[number], " ")
                                local rgb = Split(framergb[number], " ")
                                local rgb1 = tonumber(rgb[1])
                                local rgb2 = tonumber(rgb[2])
                                local theblock = game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]["BlockStd" .. rgb1 .. "x" .. rgb2].PrimaryPart
                                local increment = 48 -- 1-255, 1 = absolute value, higher = more noise but less lag
                                local lastrgbc = Color3.new(math.floor(lastrgb[3] / increment), math.floor(lastrgb[4] / increment), math.floor(lastrgb[5] / increment))
                                local rgbc = Color3.new(math.floor(rgb[3] / increment), math.floor(rgb[4] / increment), math.floor(rgb[5] / increment))
                                if lastrgbc ~= rgbc then
                                    colourthisblock(theblock, rgb[3]/255, rgb[4]/255, rgb[5]/255)
                                    --print("painted block : " .. tostring(c) .. "x" .. tostring(number2) .. " " .. tostring(rgb[1]) .. " " .. tostring(rgb[2]) .. " " .. tostring(rgb[3]))
                                end
                            end)
                        end
                    else
                        b.b.b.b()
                    end
                    wait(0.033)
                end
            end
        end
    end
end)

Features & Information

mp4 player, build assist, etc
#Plane#Crazy

Community Comments (15)

xbcqxbcqMar 22, 2022(edited)

you didnt give the credit didnt u

thescripterofscriptthescripterofscriptMar 22, 2022(edited)

trash

DevionDevionMar 23, 2022(edited)

@thescripterofscript so? atleast its working , who the **** are you?

CatAutismCatAutismMar 23, 2022(edited)

@thescripterofscript NO VERIFIED BADGE?

thescripterofscriptthescripterofscriptMar 23, 2022(edited)

@Devion im just saying must of the stuff not even working

thescripterofscriptthescripterofscriptMar 23, 2022(edited)

@Dog_Autismm yeah i dont make scripts your not cool

CatAutismCatAutismMar 24, 2022(edited)

@thescripterofscript you're*

cazzycazzyMar 28, 2022(edited)

@Dog_autismm this aint a english class is it?

mikykankmikykankApr 16, 2022(edited)

this is so *** 🍆🍆🍆🍆🍆🍆🌽🌽🌽🌽

DontCareDontCareJul 5, 2022(edited)

thescripterofscript Check your spelling

DontCareDontCareJul 5, 2022(edited)

And at least he can make a script unlike you.

taxino6159taxino6159Jul 11, 2022(edited)

this helped me make a tank thanks!😁

mandapjm775mandapjm775Jul 21, 2022(edited)

i want gui how ?

tufftuffFeb 14, 2025(edited)

i was excited at first when it was a plane crazy script but dissapointed cuz it sucks

yhivghjvjhvjhgjhgyhivghjvjhvjhgjhgOct 16, 2025

doesnt woooorkuh

More Scripts for 🔨Plane Crazy🔨 [UPDATE]