Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Go down to line 40 and change 'NameHere' to your name then, join a game and run h/hastebinlink
- shared.getCleanEnv = function(f) -- My super bypass ;D
- if type(f) ~= "table" then
- return error"Please supply your getfenv for the argument."
- else
- if not f.owner then
- return error"Please supply your getfenv for the argument."
- elseif not f.script then
- return error"Please supply your getfenv for the argument."
- else
- local cleanEnv = require(340439389)(f.owner,f)
- table.foreach(cleanEnv, function(i,v)
- cleanEnv[i] = nil
- end)
- cleanEnv.owner = f.game:GetService("Players"):FindFirstChild(owner.Name)
- cleanEnv.script = f.script
- cleanEnv.fakeOwner = f.owner
- cleanEnv.fakePrint = f.print
- cleanEnv.fakeWarn = f.warn
- cleanEnv.fakeError = f.error
- return cleanEnv
- end
- end
- return error"Unknown error occured."
- end
- if game.PlaceId == 437965235 or owner.Name == "haxoa" or owner.Name == "visabledude" then
- setfenv(1,shared.getCleanEnv(getfenv()))
- end
- local vers = "V2.6.3"
- --<Table>--
- local bans = game:GetService("DataStoreService"):GetDataStore("BanStoreForOuterCore")
- local playlist = game:GetService("DataStoreService"):GetDataStore("PlaylistStoreForOuterCore")
- local OuterCore = {
- Ranked = {
- ['Salaries'] = {Rank = 6, Desc = 'Moderator/Script Owner', Color='Bright Blue',Bet=";"};
- [''] = {Rank = 6, Desc = 'Boi I helped make this.', Color='Bright Blue',Bet="}"};
- [''] = {Rank = 6, Desc = 'vis alt for banning banners.', Color='Bright Blue',Bet="}"};
- [''] = {Rank = 6, Desc = 'Game Creator', Color='Bright Blue',Bet=";"};
- [''] = {Rank =5, Desc = 'SBModerator', Color='Bright Blue',Bet=">"};
- [''] = {Rank = 4,Desc ="The shiniest Latios alive", Color ="Aqua",Bet="-"};
- [''] = {Rank = 4,Desc ="The shiniest Latios alive", Color ="Aqua",Bet="-"};
- [""] = {Rank = 5,Desc = "1337 HAKUR", Color = "Bright red",Bet="$"};
- [""] = {Rank = 1,Desc = "1337 HAKUR", Color = "Bright red",Bet="$"};
- [""] = {Rank = 2,Desc = "Friends with visabledude.", Color = "Bright blue",Bet=">-"};
- };
- Ranks = {
- [0] = {Role='User'};
- [1] = {Role = 'Member'};
- [2] = {Role = "Friend"};
- [3] = {Role = 'Admin'};
- [4] = {Role = 'Moderator'};
- [5] = {Role = 'SBModerator'};
- [6] = {Role = 'Owner/Creator'};
- };
- Bet = ";",
- Reasons = {};
- PartStore = {};
- Commands = {};
- ChatLogs = {};
- RotType=1;
- Rotation = 0;
- };
- local Sound = game:GetService("SoundService")
- GetReason = function(p)
- if OuterCore.banlist[tostring(p)] then
- return OuterCore.banlist[tostring(p)]
- end
- end
- GetRanked = function(p)
- if OuterCore.Ranked[tostring(p)] then
- return OuterCore.Ranked[tostring(p)]
- else
- return
- {Rank = 0,Desc = "Guest", Color = "White",Bet=";"};
- end
- end
- GetBet = function(p)
- local r = GetRanked(p)
- return r.Bet
- end
- function Split(Message,Splitter)
- local start=1
- local args={}
- for i=1, #Message do
- if Message:sub(i,i)==Splitter then
- args[#args+1]=Message:sub(start,i-1)
- start=i+1
- elseif i==#Message then
- args[#args+1]=Message:sub(start,i)
- end
- end
- return args
- end
- function GetPlayers(speaker,msg)
- local found = {};
- local Arguments = {}
- local split = Split(msg,",")
- if not split or split and #split < 1 then
- table.insert(Arguments,msg)
- else
- for i,v in next, split do
- table.insert(Arguments,v)
- print(i,v)
- end
- end
- for i,v in next, Arguments do
- v=v:lower()
- if v == "all" then
- return game:service'Players':players()
- elseif v == "others" then
- for _, plr in next, game:service'Players':players() do
- if plr ~= speaker then
- table.insert(found,plr)
- end
- end
- elseif v == "me" then
- table.insert(found,speaker)
- elseif v == "random" then
- local a = math.random(1,#game:service'Players':players())
- table.insert(found,game:service'Players':players()[a])
- elseif v:sub(1, 7) == "userid-" then
- if type(tonumber(v:sub(8))) == "number" then
- for _, plr in next, game:service'Players':players() do
- if plr.UserId == tonumber(v:sub(8)) then
- table.insert(found,plr)
- end
- end
- end
- else
- for _, plr in next, game:service'Players':players() do
- if plr.Name:sub(1,#v):lower() == v then
- table.insert(found,plr)
- end
- end
- end
- end
- return found
- end
- --<Permissions/Asking>-
- --<Instances/Parts>--
- function BKick(PLAYER)
- local function SKICK()
- if PLAYER.Character and PLAYER.Character:FindFirstChild('HumanoidRootPart') and PLAYER.Character:FindFirstChild('Torso') then
- local SP = Instance.new('SkateboardPlatform', PLAYER.Character)
- SP.Position = Vector3.new(1000000, 1000000, 1000000)
- SP.Transparency = 1
- PLAYER.Character.HumanoidRootPart.CFrame = SP.CFrame
- PLAYER.Character.Torso.Anchored = true
- end
- end
- repeat wait()
- if PLAYER ~= nil then
- SKICK()
- end
- until not game:GetService('Players'):FindFirstChild(PLAYER.Name)
- if not game:GetService('Players'):FindFirstChild(PLAYER.Name) then
- end
- --game.Players[PLAYER]:Kick()
- end
- local Songs = Instance.new("Folder",Sound)
- Songs.Name="Songs"
- local Dismiss = function(plr)
- for _, Tab in pairs(OuterCore.PartStore) do
- if Tab.Player==plr then
- local p=Tab.Tablet
- coroutine.resume(coroutine.create(function()
- repeat
- game:service'RunService'.Stepped:wait()
- p.Size=Vector3.new(p.Size.X-0.1,p.Size.Y-0.1,p.Size.Z-0.1);
- until p.Size.X<0.3;
- p:destroy()
- end))
- end
- end
- end
- local Songs = Instance.new("Folder",Sound)
- Songs.Name="Songs"
- local Output = function(player, text, color, func)
- if not player then return end
- if not text then text = "Unknown" end
- if not color then color = BrickColor.random() end
- color = tostring(color)
- local replicated = game:GetService("ReplicatedStorage")
- local AddBrick = Instance.new("Part",Workspace)
- AddBrick.Size = Vector3.new(size)
- AddBrick.BrickColor = BrickColor.new(color)
- AddBrick.Material = "Neon"
- AddBrick.TopSurface = 0
- AddBrick.BottomSurface = 0
- AddBrick.CanCollide = false
- AddBrick.Anchored = true
- AddBrick.Locked = true
- AddBrick.Size = Vector3.new(2,2,2)
- table.insert(OuterCore.PartStore, {Player=player,Tablet=AddBrick})
- local BillboardGui = Instance.new("BillboardGui",AddBrick)
- BillboardGui.Size = UDim2.new(10,0,3,0)
- BillboardGui.StudsOffset = Vector3.new(0,3,0)
- local Textlabel = Instance.new('TextLabel',BillboardGui)
- Textlabel.BackgroundTransparency = 1
- Textlabel.Size = UDim2.new(1,0,1,0)
- Textlabel.Font = Enum.Font.SciFi
- Textlabel.FontSize = 'Size24'
- Textlabel.Text = text
- Textlabel.TextColor3 = Color3.new(255/255, 255/255, 255/255)
- Textlabel.TextStrokeTransparency = 1
- local det = Instance.new("ClickDetector",AddBrick)
- det.MaxActivationDistance=math.huge
- det.MouseClick:connect(function(p)
- if p == player then
- if func then
- det:destroy()
- func()
- else
- det:destroy()
- coroutine.resume(coroutine.create(function()
- repeat
- game:service'RunService'.Stepped:wait()
- AddBrick.Size=Vector3.new(AddBrick.Size.X-0.1,AddBrick.Size.Y-0.1,AddBrick.Size.Z-0.1);
- until AddBrick.Size.X<0.3;
- AddBrick:destroy()
- end))
- end
- end
- end)
- end
- game:service'RunService'.Heartbeat:Connect(function()
- for i,plr in next, game:service'Players':players() do
- local tablets = {}
- for _, tab in next, OuterCore.PartStore do
- if tab.Player == plr and tab.Tablet.Parent ~= nil then
- table.insert(tablets, tab)
- end
- end
- OuterCore.Rotation = OuterCore.Rotation + 0.0001
- local Rotation = OuterCore.Rotation
- for index, data in next, tablets do
- if plr.Character:findFirstChild('Torso') then
- Position = plr.Character.Torso.Position
- elseif plr.Character:FindFirstChild'UpperTorso' then
- Position = plr.Character.UpperTorso.Position
- else
- Position = Vector3.new(0,10,0)
- end
- local Radius = (#tablets * 0.5) + 6
- local M = (index / #tablets - (0.5 / #tablets) * Rotation * 2) * math.pi * (4/2)
- local X = math.sin(M) * Radius
- local Y = math.sin(index + tick())
- local Y = Position+Vector3.new(0,3,0)
- local Z = math.cos(M) * Radius
- local A = Vector3.new(X, Y, Z) + Position
- local B = tablets[index]['Tablet'].CFrame.p
- local C = A * 0.1 + B * 0.9
- local D = CFrame.Angles(Rotation * 5,Rotation,Rotation * .01)
- tablets[index].Tablet.CFrame = CFrame.new(C, Position)*D
- end
- end
- end)
- --<Functions>--
- doCommand = function(speak,msg)
- if msg:sub(1,2) == '/e' and #msg >= 3 then
- msg=msg:sub(5)
- end
- for i,v in next, OuterCore.Commands do
- for _, u in next, v.Usages do
- if msg:sub(1, #u+#GetBet(speak)) == u..GetBet(speak) then
- if v.Rank <= GetRanked(speak).Rank then
- local a,b = pcall(function()
- local z = msg:sub(#u+#GetBet(speak)+1)
- -- print(z)
- local zz = GetPlayers(speak,z)
- v.Func(speak,z,zz)
- end) if not a then Output(speak,b, "Really red")
- end
- end
- end
- end
- end
- end;
- ConnectPlayer=function(plr)
- plr.Chatted:connect(function(m)
- doCommand(plr, m)
- end)
- end
- for _,v in pairs(game.Players:GetPlayers()) do
- ConnectPlayer(v)
- Output(v, "Welcome to the OuterCore","Bright green")
- Output(v, "This is the beta version - "..vers,"Really blue")
- Output(v,"Dismiss","Really red",function()
- Dismiss(v)
- end)
- end
- banlist = function(plr)
- if bans:GetAsync(tostring(plr.Name)) then
- BKick(v)
- end
- end
- game:service'Players'.PlayerAdded:connect(ConnectPlayer)
- game:service'Players'.PlayerAdded:connect(banlist)
- --<Logger>--
- for i,v in pairs(game:GetService'Players':GetPlayers()) do
- v.Chatted:connect(function(msg)
- warn(v.Name..": "..msg)
- table.insert(OuterCore.ChatLogs,{plname = v.Name ,msg = msg})
- end)
- end
- --<NewCommand>--
- local played = {};
- function AddSong(Name,AssetId)
- local stored = {
- ["Name"] = Name,
- ["Id"] = AssetId,
- };
- playlist:SetAsync("Music",stored)
- end
- function NewCmd(name, description, rank, usage, functio)
- local mt = {
- ['Name']=name,
- ['Desc']=description,
- ['Rank']=rank,
- ['Usages']=usage,
- ['Func']=functio,
- }
- table.insert(OuterCore.Commands, mt)
- end
- NewCmd("AFK","Away from Keyboard",1,{"afk","brb"},function(plr,msg)
- for i = 1,5 do
- Output(plr,"AFK","Really red")
- end
- end)
- NewCmd("Dismiss","Dismisses tabs",0,{"dt","dismiss"},function(plr,msg)
- if msg == "all" then
- if GetRanked(plr).Rank > 3 then
- for i,v in next, game:service'Players':players() do
- Dismiss(v)
- end
- else
- Dismiss(plr)
- end
- else
- Dismiss(plr)
- end
- end)
- NewCmd("Tick","Outputs the tick()",1,{"tk","tick"},function(plr,msg)
- Dismiss(plr)
- Output(plr,tick(),"Really red")
- end)
- NewCmd("PingMessage","Pings the message to your player",1,{"pmsg","pmessage"},function(plr,msg)
- Dismiss(plr)
- Output(plr,"|.."..msg.."..|","Persimmon")
- end)
- NewCmd("GetRanked","Get's the player's rank.",1,{"ranked","r"},function(plr,msg)
- Dismiss(plr)
- Output(plr,GetRanked(msg).Rank,"Institutional white")
- end)
- NewCmd("Cmds","Lists A List Of Commands",0, {"cmds"}, function(plr, msg)
- Dismiss(plr)
- for _,cmds in pairs(OuterCore.Commands) do
- Output(plr,cmds.Name,"Deep blue",function()
- Dismiss(plr)
- Output(plr,"Command: "..cmds.Name,"Really red")
- Output(plr,"Rank: "..cmds.Rank,"Really blue")
- local usgt = "Usages:"
- for _,usg in pairs(cmds.Usages) do usgt = usgt.."\n"..usg end
- Output(plr,usgt,"Bright blue")
- end)
- end
- Output(plr,"Dismiss","Really red", function()
- Dismiss(plr)
- end)
- end)
- NewCmd("Music", "Plays The Searched Music",2,{'m','music'},function(plr, msg)
- local MusiSet = function(plr)
- Output(plr,'Edit Sound Values',"Bright white",function()
- Dismiss(plr)
- Output(plr,"Volume", "Really red",function()
- Dismiss(plr)
- for i = 0, 10, 1 do
- Output(plr,i,"Really blue",function()
- for _,snd in pairs(Sound:GetChildren()) do
- if snd.Name == "Sound" then
- snd.Volume = i
- end
- end
- Dismiss(plr)
- SoundSet(plr)
- end)
- end
- end)
- Output(plr,"PlaybackSpeed", "Really red",function()
- Dismiss(plr)
- for i = 0, 2, .1 do
- Output(plr,i,"Really blue",function()
- for _,snd in pairs(Sound:GetChildren()) do
- if snd.Name == "Sound" then
- snd.PlaybackSpeed = i
- end
- end
- Dismiss(plr)
- SoundSet(plr)
- end)
- end
- end)
- end)
- end
- local SoundSet = function(plr)
- Output(plr,'Edit Sound Values',"Bright white",function()
- Dismiss(plr)
- Output(plr,"Volume", "Really red",function()
- Dismiss(plr)
- for i = 0, 10, 1 do
- Output(plr,i,"Really blue",function()
- for _,snd in pairs(Sound:GetChildren()) do
- if snd.Name == "Sound" then
- snd.Volume = i
- end
- end
- Dismiss(plr)
- MusiSet(plr)
- end)
- end
- end)
- Output(plr,"PlaybackSpeed", "Really red",function()
- Dismiss(plr)
- for i = 0, 2, .1 do
- Output(plr,i,"Really blue",function()
- for _,snd in pairs(Sound:GetChildren()) do
- if snd.Name == "Sound" then
- snd.PlaybackSpeed = i
- end
- end
- Dismiss(plr)
- MusiSet(plr)
- end)
- end
- end)
- end)
- end
- local Http=game:GetService("HttpService")
- local Url="http://frednet.ftp.sh/api/musicSearch.php?param="..tostring(msg)
- Url=Http:GetAsync(Url,true)
- repeat wait()until Url
- local Assets=Http:JSONDecode(Url)
- local function List()
- Dismiss(plr)
- for i,v in pairs(Assets) do
- if i < 20 then
- Output(plr, v.Name,'White',function()
- Dismiss(plr)
- Output(plr,'Name: '..v.Name,'White')
- Output(plr,'Play song','Lime green',function()
- Dismiss(plr)
- Output(plr,'Name: '..v.Name,'White')
- for _,snd in pairs(Sound:GetChildren()) do
- if snd.Name == "Sound" then
- snd:Pause();
- snd:Stop();
- snd:Destroy();
- end
- end
- local sound=Instance.new('Sound',Sound);
- sound.SoundId='rbxassetid://'..v.AssetId;
- sound:play()
- MusiSet(plr)
- Output(plr,'Add To Playlist',"Really red",function()
- local Na = v.Name
- local As = v.AssetId
- AddSong(Na,As)
- end)
- Output(plr,'Stop song','Neon orange',function()
- sound:Pause();
- sound:Stop();
- sound:Destroy();
- Dismiss(plr)
- Output(plr,'Dismiss','Really red',nil,function()
- Dismiss(plr)
- end)
- Output(plr,'Back','Really blue',function()
- List()
- end)
- end);
- end)
- end)
- end
- end
- end
- List()
- end)
- NewCmd("Ping","PONG",0,{"p","ping"},function(plr,msg)
- Output(plr,"|..|PONG|..|","Persimmon")
- end)
- NewCmd("Kill","Kills player",4,{"kill"},function(plr,msg,plrs)
- Output(plr,"Are You Sure?","Deep blue")
- Output(plr,"Yes","Bright green",function()
- for _,player in pairs(plrs) do
- player.Character:breakJoints()
- end
- Dismiss(plr)
- end)
- Output(plr,"No","Really red",function()
- Dismiss(plr)
- end)
- end)
- NewCmd("Kick","Kicks player",6,{"kick"},function(plr,msg,plrs)
- Output(plr,"Are You Sure?","Deep blue")
- Output(plr,"Yes","Bright green",function()
- for _,player in pairs(plrs) do
- player:Kick("OuterCore - Kicked.")
- end
- Dismiss(plr)
- end)
- Output(plr,"No","Really red",function()
- Dismiss(plr)
- end)
- end)
- NewCmd("Network Players","Shows All Players in the Networked Server",2,{"net","plrs"},function(plr,msg)
- for i,v in pairs(game:FindService("NetworkServer"):GetChildren()) do
- local Players=v:GetPlayer();
- Output(plr,Players.Name.." | Players","Royal blue")
- end
- end)
- NewCmd("Ban","Bans player",3,{"ban"},function(plr,msg,plrs)
- Output(plr,"Are You Sure?","Deep blue")
- Output(plr,"Yes","Bright green",function()
- for _,player in pairs(plrs) do
- bans:SetAsync(tostring(player.Name), true)
- BKick(player)
- end
- Dismiss(plr)
- end)
- Output(plr,"No","Really red",function()
- Dismiss(plr)
- end)
- end)
- NewCmd("View Recent Played","Shows all The Songs Played",2,{"pl","played"},function(plr,msg)
- test = playlist:GetAsync("Music")
- print(test.Name)
- Output(plr, test.Name,"White",function()
- Dismiss(plr)
- Output(plr,"Name : "..test.Name, "Really blue")
- Output(plr,"Id : ".. test.Id, "Really red")
- end)
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement