local me = game.Players.LocalPlayer local root = me.Character and me.Character:FindFirstChild('HumanoidRootPart') if root then root.Anchored = true end local offset = Vector3.new(0, 0, 0) local origin = CFrame.new() local tool for _,v in ipairs(me:GetDescendants()) do if v.Name == 'SyncAPI' then tool = v.Parent break end end if not tool then for _,v in ipairs(game.ReplicatedStorage:GetDescendants()) do if v.Name == 'SyncAPI' then tool = v.Parent break end end end if not tool then warn('yo ur not have f3x') return end local syncApi = tool:FindFirstChild('SyncAPI') local remote = syncApi and syncApi:FindFirstChild('ServerEndpoint') if not remote then warn('no server endpoint found') return end local function _(args) if not remote then return end if remote:IsA('RemoteEvent') then pcall(remote.FireServer, remote, unpack(args)) else task.spawn(pcall, remote.InvokeServer, remote, unpack(args)) end end function CreatePart(partType, cf, parent) if not remote then return nil end local worldCF = (origin + offset) * cf local success, part = pcall(function() return remote:InvokeServer('CreatePart', partType, worldCF, parent) end) return success and part or nil end function MovePart(part, cf) if not part then return end local worldCF = (origin + offset) * cf _({'SyncMove', {{['Part'] = part, ['CFrame'] = worldCF}}}) end function Resize(part, size, cf) if not part then return end local worldCF = (origin + offset) * cf _({'SyncResize', {{['Part'] = part, ['CFrame'] = worldCF, ['Size'] = size}}}) end function SetTrans(part, int) if not part then return end _({'SyncMaterial', {{['Part'] = part, ['Transparency'] = int}}}) end function Setmate(part, int) if not part then return end _({'SyncMaterial', {{['Part'] = part, ['Material'] = int}}}) end function Color(part, color) if not part then return end _({'SyncColor', {{['Part'] = part, ['Color'] = color, ['UnionColoring'] = false}}}) end function SetAnchor(boolean, part) if not part then return end _({'SyncAnchor', {{['Part'] = part, ['Anchored'] = boolean}}}) end function SetCollision(part, boolean) if not part then return end _({'SyncCollision', {{['Part'] = part, ['CanCollide'] = boolean}}}) end function AddMesh(part) if not part then return end _({'CreateMeshes', {{['Part'] = part}}}) end function SetMesh(part, meshid) if not part then return end _({'SyncMesh', {{['Part'] = part, ['MeshId'] = 'rbxassetid://' .. meshid}}}) end function SpawnDecal(part, side) if not part then return end _({'CreateTextures', {{['Part'] = part, ['Face'] = side, ['TextureType'] = 'Decal'}}}) end function AddDecal(part, asset, side) if not part then return end _({'SyncTexture', {{['Part'] = part, ['Face'] = side, ['TextureType'] = 'Decal', ['Texture'] = 'rbxassetid://' .. asset}}}) end function MeshResize(part, size) if not part then return end _({'SyncMesh', {{['Part'] = part, ['Scale'] = size}}}) end function SetName(part, stringg) if not part then return end _({'SetName', {part}, stringg}) end function vect(part, of) if not part then return end _({'SyncMesh', {{['Part'] = part, ['Offset'] = of}}}) end function reflect(part, int) if not part then return end _({'SyncMaterial', {{['Part'] = part, ['Reflectance'] = int}}}) end function SetMeshtype(part, type) if not part then return end _({'SyncMesh', {{['Part'] = part, ['MeshType'] = type}}}) end local generatedParts = {} task.wait(0.1) local resizes = {} local colors = {} local materials = {} local anchors = {} local collisions = {} local names = {} task.wait(0.1) task.spawn(function() pcall(function() generatedParts[1] = CreatePart("Normal", CFrame.new(0.000, -10.000, 0.000, 1.000, 0.000, 0.000, 0.000, 1.000, 0.000, 0.000, 0.000, 1.000), workspace) end) end) local maxWait = 3.0 local start = os.clock() while os.clock() - start < maxWait do local completed = true for i = 1, 1 do if not generatedParts[i] then completed = false break end end if completed then break end task.wait(0.05) end if generatedParts[1] then table.insert(resizes, {['Part'] = generatedParts[1], ['CFrame'] = (origin + offset) * CFrame.new(0.000, -10.000, 0.000, 1.000, 0.000, 0.000, 0.000, 1.000, 0.000, 0.000, 0.000, 1.000), ['Size'] = Vector3.new(512.000, 20.000, 512.000)}) table.insert(colors, {['Part'] = generatedParts[1], ['Color'] = Color3.new(0.173, 0.396, 0.114), ['UnionColoring'] = false}) table.insert(materials, {['Part'] = generatedParts[1], ['Material'] = Enum.Material.Grass, ['Transparency'] = 0.000, ['Reflectance'] = 0.000}) table.insert(anchors, {['Part'] = generatedParts[1], ['Anchored'] = true}) table.insert(collisions, {['Part'] = generatedParts[1], ['CanCollide'] = true}) table.insert(names, {['Part'] = generatedParts[1], ['Name'] = "Baseplate"}) end task.wait(0.1) pcall(function() _({'SyncResize', resizes}) end) task.wait(0.35) pcall(function() _({'SyncColor', colors}) end) task.wait(0.35) pcall(function() _({'SyncMaterial', materials}) end) task.wait(0.35) pcall(function() _({'SyncAnchor', anchors}) end) task.wait(0.35) pcall(function() _({'SyncCollision', collisions}) end) task.wait(0.35) for _, v in ipairs(names) do if v.Part then pcall(function() _({'SetName', {v.Part}, v.Name}) end) end end if root then root.Anchored = false end