17 skills found
cansik / Mesh Sequence PlayerA simple mesh sequence player based on open3d.
EnesYPP38 / Eneslocal a=loadstring(game:HttpGet("https://raw.githubusercontent.com/miroeramaa/TurtleLib/main/TurtleUiLib.lua"))()local b=a:Window("Scripts")local c=a:Window("Scripts")local d=a:Window("LocalPlayer")local e=a:Window("Give Tool To Players")local f=a:Window("Spawn Cars")local g=a:Window("Server-Sided Fun Tags")local h=a:Window("Server-Sided Fun Tags 2")g:Button("Admin Tag 1",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","782790468","Has Been Given",true)end)g:Button("Admin Tag 2",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","105095367","Has Been Given",true)end)g:Button("Normal VIP Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1292335373","Has Been Given",true)end)g:Button("Mega VIP Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1255544221","Has Been Given",true)end)g:Button("Ultra VIP Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1292342698","Has Been Given",true)end)g:Button("VIP Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","32578003","Has Been Given",true)end)g:Button("Moderator Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","415986666","Has Been Given",true)end)g:Button("Owner Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","2980546857","Has Been Given",true)end)g:Button("Creator Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","2497143214","Has Been Given",true)end)g:Button("Brookhaven Logo Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","6336646536","Has Been Given",true)end)g:Button("Pikachu Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1473416194","Has Been Given",true)end)g:Button("Hacker Face Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","3284478282","Has Been Given",true)end)g:Button("Scary Pikachu Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","127039538","Has Been Given",true)end)g:Button("HD Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","2821573888","Has Been Given",true)end)g:Button("Old Roblox Logo Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","148012526","Has Been Given",true)end)g:Button("Roblox Admin Logo Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1151106808","Has Been Given",true)end)g:Button("Diamond Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","4424298","Has Been Given",true)end)g:Button("Hacking Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","626372353","Has Been Given",true)end)g:Button("Nascar Car Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","463277467","Has Been Given",true)end)g:Button("Girl Face Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","555878469","Has Been Given",true)end)g:Button("Wall Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1844422643","Has Been Given",true)end)g:Button("Meme Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","261677904","Has Been Given",true)end)g:Button("Coffee Meme Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","261676710","Has Been Given",true)end)h:Label("Scary",Color3.fromRGB(127,143,166))h:Button("Scary Face Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","1243374078","Has Been Given",true)end)h:Button("2 Eye Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","5839301773","Has Been Given",true)end)h:Button("Scary Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","2120834873","Has Been Given",true)end)h:Button("Smiley Face Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","333476199","Has Been Given",true)end)h:Button("Scary Dog Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","5817435822","Has Been Given",true)end)h:Button("Scary Cat Tag",function()game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu","23355113","Has Been Given",true)end)g:Box("Custom Image",function(i,j)if j then ggeee=i;game:GetService("ReplicatedStorage").RemoteEvents.Jobs:FireServer("GiveJobUIMenu",ggeee,"Has Been Given",true)end end)b:Label("Lag Commands",Color3.fromRGB(127,143,166))b:Button("Lag Server",function(k)getgenv().trinxxsxxkets=k;while wait()do if getgenv().trinxxsxxkets then game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer("PickingCar","SmartCar")game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer("PickingCar","Van")game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer("PickingCar","Bus")end end end)b:Button("Crash Server",function()for l,m in pairs(game.Workspace:GetDescendants())do game:GetService("ReplicatedStorage").GunSounds:FireServer(m,"912999313",1)end end)d:Label("Server-Sided Fun Hats",Color3.fromRGB(127,143,166))d:Button("Crown Head",function(k)local n="wear"local o=4272833564;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("Amogus Head",function(k)local n="wear"local o=6532372710;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("Sus Head",function(k)local n="wear"local o=6564572490;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("Smile1 Head",function(k)local n="wear"local o=6711806832;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("Smile2 Head",function(k)local n="wear"local o=6809319263;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Button("1 Eye Head",function(k)local n="wear"local o=6773734422;local p=game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143;p:FireServer(n,o)end)d:Box("Custom Hat",function(q,r)if r then game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("wear",tonumber(q))end end)d:Button("Reset Outfit",function()local s={[1]="Whatever1"}game:GetService("ReplicatedStorage").RemoteEvents.AvatarOriginalCharacterClient92731:FireServer(unpack(s))end)b:Label("Fun Commands",Color3.fromRGB(127,143,166))e:Label("Give To All Players",Color3.fromRGB(127,143,166))e:Button("Give Money Bag [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4535110571","Money")end end)e:Button("Give Big Money Bag [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4587924680","DuffleBagMoney")end end)e:Button("Give Coca Cola [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4548052009","Coke")end end)e:Button("Give Stroller [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4529218345","Stroller")end end)e:Button("Give Hairbrush [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=5480682123","Hairbrush")end end)e:Button("Give Sign [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=6001822792","Sign")end end)e:Button("Give Rose [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=5211788490","Roses")end end)e:Button("Give Soccer ball [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4598172149","SoccerBall")end end)e:Button("Give Gun [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4529288610","Assault")end end)e:Button("Give C4 [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4587924290","Bomb")end end)b:Button("0 Gravity Unanchored Things",function()spawn(function()while true do game.Players.LocalPlayer.MaximumSimulationRadius=math.pow(math.huge,math.huge)*math.huge;game.Players.LocalPlayer.SimulationRadius=math.pow(math.huge,math.huge)*math.huge;game:GetService("RunService").Stepped:wait()end end)local function u(v)if v:FindFirstChild("BodyForce")then return end;local w=Instance.new("BodyForce")w.Force=v:GetMass()*Vector3.new(0,workspace.Gravity,0)w.Parent=v end;for l,m in ipairs(workspace:GetDescendants())do if m:IsA("Part")and m.Anchored==false then if not m:IsDescendantOf(game.Players.LocalPlayer.Character)then u(m)end end end;workspace.DescendantAdded:Connect(function(v)if v:IsA("Part")and v.Anchored==false then if not v:IsDescendantOf(game.Players.LocalPlayer.Character)then u(v)end end end)end)b:Button("Bring Unanchored Bricks [E]",function()local x=game:GetService("UserInputService")local y=game:GetService("Players").LocalPlayer:GetMouse()local z=Instance.new("Folder",game:GetService("Workspace"))local A=Instance.new("Part",z)local B=Instance.new("Attachment",A)A.Anchored=true;A.CanCollide=false;A.Transparency=1;local C=y.Hit+Vector3.new(0,5,0)local D=coroutine.create(function()settings().Physics.AllowSleep=false;while game:GetService("RunService").RenderStepped:Wait()do for E,F in next,game:GetService("Players"):GetPlayers()do if F~=game:GetService("Players").LocalPlayer then F.MaximumSimulationRadius=0;sethiddenproperty(F,"SimulationRadius",0)end end;game:GetService("Players").LocalPlayer.MaximumSimulationRadius=math.pow(math.huge,math.huge)setsimulationradius(math.huge)end end)coroutine.resume(D)local function G(m)if m:IsA("Part")and m.Anchored==false and m.Parent:FindFirstChild("Humanoid")==nil and m.Parent:FindFirstChild("Head")==nil and m.Name~="Handle"then y.TargetFilter=m;for E,H in next,m:GetChildren()do if H:IsA("BodyAngularVelocity")or H:IsA("BodyForce")or H:IsA("BodyGyro")or H:IsA("BodyPosition")or H:IsA("BodyThrust")or H:IsA("BodyVelocity")or H:IsA("RocketPropulsion")then H:Destroy()end end;if m:FindFirstChild("Attachment")then m:FindFirstChild("Attachment"):Destroy()end;if m:FindFirstChild("AlignPosition")then m:FindFirstChild("AlignPosition"):Destroy()end;if m:FindFirstChild("Torque")then m:FindFirstChild("Torque"):Destroy()end;m.CanCollide=false;local I=Instance.new("Torque",m)I.Torque=Vector3.new(100000,100000,100000)local J=Instance.new("AlignPosition",m)local K=Instance.new("Attachment",m)I.Attachment0=K;J.MaxForce=9999999999999999;J.MaxVelocity=math.huge;J.Responsiveness=200;J.Attachment0=K;J.Attachment1=B end end;for E,m in next,game:GetService("Workspace"):GetDescendants()do G(m)end;game:GetService("Workspace").DescendantAdded:Connect(function(m)G(m)end)x.InputBegan:Connect(function(L,M)if L.KeyCode==Enum.KeyCode.E and not M then C=y.Hit+Vector3.new(0,5,0)end end)spawn(function()while game:GetService("RunService").RenderStepped:Wait()do B.WorldCFrame=C end end)end)e:Button("Give Shovel [ALL]",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("ToolGiveToServer",m,"http://www.roblox.com/asset/?id=4617189079","Shovel")end end)c:Label("Admin Commands",Color3.fromRGB(127,143,166))c:Button("Jump All",function()local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("DropButtonStopAll",m)end end)c:Toggle("Loop Jump All",false,function(N)getgenv().ccc15cccccds=N;while wait()do if getgenv().ccc15cccccds then local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do t:FireServer("DropButtonStopAll",m)end end end end)c:Box(" Jump Player",function(O,P)if P then plrrr=game:GetService("Players")[O]local s={[1]="DropButtonStopAll",[2]=plrrr}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end end)c:Box("Mega Jump Plr",function(Q,P)if P then plrrr=game:GetService("Players")[Q]for l=1,7 do for l=1,200 do local s={[1]="DropButtonStopAll",[2]=plrrr}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end end end end)d:Slider("Walkspeed",16,120,5,function(R)game:GetService("Players").LocalPlayer.Character.Humanoid.WalkSpeed=R end)d:Slider("JumpPower",50,300,20,function(S)game:GetService("Players").LocalPlayer.Character.Humanoid.JumpPower=S end)d:Button("Rejoin Server",function()game:GetService("TeleportService"):Teleport(game.PlaceId)end)d:Toggle("Noclip",false,function(T)getgenv().trfffffinketcs=T;game:GetService("RunService").RenderStepped:Connect(function()if getgenv().trfffffinketcs then game.Players.LocalPlayer.Character.Humanoid:ChangeState(11)end end)end)d:Button("Reset Character",function()game.Players.LocalPlayer.Character.Humanoid:Remove()Instance.new('Humanoid',game.Players.LocalPlayer.Character)game:GetService("Workspace")[game.Players.LocalPlayer.Name]:FindFirstChildOfClass('Humanoid').HipHeight=2 end)b:Label("Tool Commands",Color3.fromRGB(127,143,166))b:Box("Tool Kill Player",function(U,V)if V then local s={[1]="PickingTools",[2]="Stretcher"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))local W="Stretcher"for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do if m:IsA("Tool")and m.Name==W then m.Parent=game:GetService("Players").LocalPlayer.Character end end;yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;for l=1,50 do game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=game.Workspace[U].Head.CFrame+Vector3.new(0,5,-5)end;wait(2)game.Players.LocalPlayer.Character.Humanoid:UnequipTools()wait(0.40)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=CFrame.new(-13619,488,-2853)wait(0.40)local W="Stretcher"for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do if m:IsA("Tool")and m.Name==W then m.Parent=game:GetService("Players").LocalPlayer.Character end end;wait(0.50)game.Players.LocalPlayer.Character.Humanoid:UnequipTools()game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes;local s={[1]="PickingTools",[2]="Stretcher"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))end end)b:Box("Tool Bring Player",function(X,P)if P then local s={[1]="PickingTools",[2]="Stretcher"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))local W="Stretcher"for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do if m:IsA("Tool")and m.Name==W then m.Parent=game:GetService("Players").LocalPlayer.Character end end;yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=game.Workspace[X].Head.CFrame+Vector3.new(0,5,-5)wait(2)game.Players.LocalPlayer.Character.Humanoid:UnequipTools()wait(0.90)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes;local W="Stretcher"wait(.10)for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do if m:IsA("Tool")and m.Name==W then m.Parent=game:GetService("Players").LocalPlayer.Character;wait(1)game.Players.LocalPlayer.Character.Humanoid:UnequipTools()local s={[1]="PickingTools",[2]="Stretcher"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))end end end end)c:Button("Instantly Kill All v1",function()game.Players.LocalPlayer.Character.Head:Remove()for l=1,2 do local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetPlayers())do if m.Name~=game.Players.LocalPlayer then t:FireServer("Client2Client","Request: Piggyback!",m)local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetPlayers())do if m.Name~=game.Players.LocalPlayer then t:FireServer("BothWantPiggyBackRide",m)end end end end end end)c:Button("Instantly Kill All v2",function()game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame=CFrame.new(21,3,-40)game.Players.LocalPlayer.Character.Head:Remove()for l=1,2 do local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetPlayers())do if m.Name~=game.Players.LocalPlayer then t:FireServer("Client2Client","Request: Piggyback!",m)local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetPlayers())do if m.Name~=game.Players.LocalPlayer then t:FireServer("BothWantPiggyBackRide",m)end end end end end;game.Players.LocalPlayer.Character:Remove()end)c:Button("FE Random Teleport All",function()wait(1)local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do if m.Name~=game.Players.LocalPlayer then t:FireServer("Client2Client","Request: Shoulders!",m)end end;local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do if m.Name~=game.Players.LocalPlayer then t:FireServer("BothWantShoulders",m)local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113 end end;for l,m in pairs(game.Players:GetChildren())do t:FireServer("DropButtonStopAll",m)end;local Y=game:GetService("Players").LocalPlayer;repeat wait(.1)until Y.Character;local Z=Y.Character;Z.Archivable=true;local _=false;local a0=true;local a1=Z:Clone()a1.Parent=game:GetService'Lighting'local a2=workspace.FallenPartsDestroyHeight;a1.Name=""local a3;Y.CharacterAdded:Connect(function()if Y.Character==a1 then return end;repeat wait(.1)until Y.Character:FindFirstChildWhichIsA'Humanoid'if a0==false then _=false;a0=true;Z=Y.Character;Z.Archivable=true;a1=Z:Clone()a1.Name=""a1:FindFirstChildOfClass'Humanoid'.Died:Connect(function()Respawn()end)for l,m in pairs(a1:GetDescendants())do if m:IsA("BasePart")then if m.Name=="HumanoidRootPart"then m.Transparency=1 else m.Transparency=.5 end end end end end)local a4=game:GetService("RunService").Stepped:Connect(function()pcall(function()local a5;if tostring(a2):find'-'then a5=true else a5=false end;local a6=Y.Character.HumanoidRootPart.Position;local a7=tostring(a6)local a8=a7:split(', ')local a9=tonumber(a8[1])local aa=tonumber(a8[2])local ab=tonumber(a8[3])if a5==true then if aa<=a2 then Respawn()end elseif a5==false then if aa>=a2 then Respawn()end end end)end)for l,m in pairs(a1:GetDescendants())do if m:IsA("BasePart")then if m.Name=="HumanoidRootPart"then m.Transparency=1 else m.Transparency=.5 end end end;function Respawn()a0=false;if _==true then pcall(function()Y.Character=Z;wait()Z.Parent=workspace;Z:FindFirstChildWhichIsA'Humanoid':Destroy()_=false;a1.Parent=nil end)elseif _==false then pcall(function()Y.Character=Z;wait()Z.Parent=workspace;Z:FindFirstChildWhichIsA'Humanoid':Destroy()_=false end)end end;a1:FindFirstChildOfClass'Humanoid'.Died:Connect(function()Respawn()end)function FixCam()workspace.CurrentCamera.CameraSubject=Y.Character:FindFirstChildWhichIsA'Humanoid'workspace.CurrentCamera.CFrame=a3 end;function freezecam(ac)if ac==true then workspace.CurrentCamera.CameraType=Enum.CameraType.Scriptable else workspace.CurrentCamera.CameraType=Enum.CameraType.Custom end end;function TurnInvisible()if _==true then return end;_=true;a3=workspace.CurrentCamera.CFrame;local ad=Y.Character.HumanoidRootPart.CFrame;Z:MoveTo(Vector3.new(0,math.pi*1000000,0))freezecam(true)wait(.2)freezecam(false)a1=a1;Z.Parent=game:GetService'Lighting'a1.Parent=workspace;a1.HumanoidRootPart.CFrame=ad;Y.Character=a1;FixCam()Y.Character.Animate.Disabled=true;Y.Character.Animate.Disabled=false end;function FixScript()end;function TurnVisible()if _==false then return end;a3=workspace.CurrentCamera.CFrame;Z=Z;local ad=Y.Character.HumanoidRootPart.CFrame;Z.HumanoidRootPart.CFrame=ad;a1.Parent=game:GetService'Lighting'Y.Character=Z;Z.Parent=workspace;_=false;FixCam()Y.Character.Animate.Disabled=true;Y.Character.Animate.Disabled=false end;game.Players.LocalPlayer.Character.Humanoid:Remove()Instance.new('Humanoid',game.Players.LocalPlayer.Character)wait(1)for l,m in pairs(game.Players:GetChildren())do t:FireServer("DropButtonStopAll",m)end;TurnInvisible()wait(1)TurnVisible()end)c:Box("Kill Any Player",function(ae,af)if af then yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;for l=1,50 do local s={[1]="Client2Client",[2]="Request: Carry!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantCarryHurt",[2]=game:GetService("Players")[ae]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;wait(.10)local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))game.Players.LocalPlayer.Character.Head:Destroy()wait(7)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes end end)c:Box("Freeze Player",function(ag,ah)if ah then for l=1,50 do local s={[1]="Client2Client",[2]="Request: PiggyBack!!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantPiggyBackRide",[2]=game:GetService("Players")[ag]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;wait(.10)local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))game.Players.LocalPlayer.Character.HumanoidRootPart.Anchored=true end end)c:Box("Skydive Player",function(ai,aj)if aj then yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;for l=1,20 do local s={[1]="Client2Client",[2]="Request: Carry!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantCarryHurt",[2]=game:GetService("Players")[ai]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))wait(.30)loadstring(game:HttpGet("https://gist.githubusercontent.com/TurkOyuncu99/edad7106467c283a3a554b0afd179776/raw/7a6168e45bc9223b52d3e833c05947d484c850ef/gistfile1.txt",true))()game.Players.LocalPlayer.Character.Humanoid:Remove()wait(7)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes end end)c:Box("Carry Player",function(ak,P)if P then for l=1,50 do local s={[1]="Client2Client",[2]="Request: Piggyback!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantPiggyBackRide",[2]=game:GetService("Players")[ak]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;wait(.10)local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end end)c:Box("Bring Player",function(al,am)if am then yes=game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame;for l=1,50 do local s={[1]="Client2Client",[2]="Request: Carry!",[3]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))local s={[1]="BothWantCarryHurt",[2]=game:GetService("Players")[al]}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))end;wait(.10)local s={[1]="JumpButtonStopAll",[2]=game:GetService("Players").LocalPlayer}game:GetService("ReplicatedStorage").RemoteEvents.PlayerTriggerEvent60113:FireServer(unpack(s))wait(.40)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes;wait(.50)game.Players.LocalPlayer.Character.Humanoid:Remove()wait(7)game:GetService("Players").LocalPlayer.Character.HumanoidRootPart.CFrame=yes end end)c:Toggle("Loop Teleport+Annoy All",false,function(an)game:GetService("StarterGui"):SetCore("SendNotification",{Title="Teleport+Annoy All Script",Text="To Stop this, Reset Character on LocalPlayer Section",Duration=15})getgenv().trinechbvvkets=an;while wait(0.20)do if getgenv().trinechbvvkets then local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do if m.Name~=game.Players.LocalPlayer then t:FireServer("Client2Client","Request: Piggyback!",m)end end;local t=game.ReplicatedStorage.RemoteEvents.PlayerTriggerEvent60113;for l,m in pairs(game.Players:GetChildren())do if m.Name~=game.Players.LocalPlayer then t:FireServer("BothWantPiggyBackRide",m)end end end end end)c:Toggle("Rainbow House",false,function(ao)getgenv().trineeeechbvvkets=ao;while wait(0.20)do if getgenv().trineeeechbvvkets then game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0,1,0.547505))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0.677182,0))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0.604867,1,0.0489711))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0,1,0.790357))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0,0.972528,1))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(0,1,0.547505))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0,0.772158))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0.253019,0))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0.924444,0.75973))wait(.30)game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseColor",Color3.new(1,0.311742,0.302132))end end end)c:Label("FE Funny Scripts",Color3.fromRGB(127,143,166))c:Toggle("FE Rainbow Character",false,function(ap)getgenv().trinecnooooovhbvvkets=ap;while wait(1)do if getgenv().trinecnooooovhbvvkets then game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Light reddish violet")wait(.20)wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Carnation Pink")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Lime green")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Pink")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Really Red")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Cocoa")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Rust")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","GGA brown")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Fawn Brown")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Brown")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Yellow")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Lime Green")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Bright blue")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","New Yeller")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Deep orange")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Eath green")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Navy blue")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Pastel light blue")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Really blue")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Magenta")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Mulberry")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Dark nougat")wait(.20)game:GetService("ReplicatedStorage").RemoteEvents.UpdateAvatar51143:FireServer("skintone","Really Black")end end end)c:Button("FE Big Character",function()local s={[1]="Whatever1"}game:GetService("ReplicatedStorage").RemoteEvents.AvatarOriginalCharacterClient92731:FireServer(unpack(s))wait(1)if game.Players.LocalPlayer.Character.Humanoid.BodyTypeScale.Value<1 or game.Players.LocalPlayer.Character.Humanoid.BodyProportionScale.Value<1 or game.Players.LocalPlayer.Character.Humanoid.BodyWidthScale.Value<1 or game.Players.LocalPlayer.Character.Humanoid.BodyDepthScale.Value<1 then game:GetService("StarterGui"):SetCore("SendNotification",{Title="FE Big Character",Text="You should do Requirements to This Script Work",Duration=4})wait(2)game:GetService("StarterGui"):SetCore("SendNotification",{Title="Video Link",Text=" Watch this Short video to Learn how to Use This Script Link Copied!",Duration=15})wait(1)setclipboard("https://www.youtube.com/watch?v=jpBxiBDRFW0")else local aq=game:GetService("Players").LocalPlayer;local Z=aq.Character;local ar=Z:FindFirstChildOfClass("Humanoid")function rm()for l,m in pairs(Z:GetDescendants())do if m:IsA("BasePart")then if m.Name=="Handle"or m.Name=="Head"then if Z.Head:FindFirstChild("OriginalSize")then Z.Head.OriginalSize:Destroy()end else for l,as in pairs(m:GetDescendants())do if as:IsA("Attachment")then if as:FindFirstChild("OriginalPosition")then as.OriginalPosition:Destroy()end end end;m:FindFirstChild("OriginalSize"):Destroy()if m:FindFirstChild("AvatarPartScaleType")then m:FindFirstChild("AvatarPartScaleType"):Destroy()end end end end end;rm()wait(0.5)ar:FindFirstChild("BodyProportionScale"):Destroy()wait(1)rm()wait(0.5)ar:FindFirstChild("BodyHeightScale"):Destroy()wait(1)rm()wait(0.5)ar:FindFirstChild("BodyWidthScale"):Destroy()wait(1)rm()wait(0.5)ar:FindFirstChild("BodyDepthScale"):Destroy()wait(1)rm()wait()wait(0.5)ar:FindFirstChild("HeadScale"):Destroy()wait(1)end end)c:Button("FE Big Head",function()for l,m in pairs(game.Players.LocalPlayer.Character.Humanoid:GetChildren())do if string.find(m.Name,"Scale")and m.Name~="HeadScale"then repeat wait()until game.Players.LocalPlayer.Character.Head:FindFirstChild("OriginalSize")game.Players.LocalPlayer.Character.Head.OriginalSize:Destroy()m:Destroy()game.Players.LocalPlayer.Character.Head:WaitForChild("OriginalSize")game.Players.LocalPlayer.Character.Head.OriginalSize:Destroy()end end;game:GetService("StarterGui"):SetCore("SendNotification",{Title="FE Big Head Script",Text="You should Equip Junkbot Head to This Script Work, Junkbot Bundle Link Copied!",Duration=7})setclipboard("https://www.roblox.com/bundles/589/Junkbot")end)c:Button("FE Gravity Tool",function()loadstring(game:HttpGet("https://gist.githubusercontent.com/TurkOyuncu99/b7812fffdab17af75e51082d423d1bdc/raw/40a15d466f583a52a8dc9a72456dad90eb08eb94/hye",true))()game:GetService("StarterGui"):SetCore("SendNotification",{Title="FE Gravity Tool",Text="Only Works on Unanchored Things",Duration=4})end)b:Toggle("Spawn Brick",false,function(at)getgenv().trinkv245ets=at;while wait()do if getgenv().trinkv245ets then for l,m in pairs(game:GetService("Players").LocalPlayer.Backpack:GetChildren())do m:Destroy()end;while wait()do local s={[1]="PickingTools",[2]="Taser"}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))break end end end end)b:Toggle("Enable Brick Spam",false,function(au)getgenv().xxxvvvvcyb=au;while wait()do if getgenv().xxxvvvvcyb then for E,m in pairs(game.Players.LocalPlayer.Backpack:GetChildren())do m.Parent=game.Players.LocalPlayer.Character;for l,m in pairs(game:GetService("Players").LocalPlayer.Character:GetDescendants())do if m:IsA("Tool")or m:IsA("HopperBin")then if m.Handle:FindFirstChild("Mesh")then m.Handle.Mesh:Destroy()end;m.Parent=game:GetService("Workspace")end end end end end end)e:Label("Give To Yourself",Color3.fromRGB(127,143,166))local av=e:Dropdown("Give Yourself Item",{"Iphone","Camcorder","BabyBoy","BabyGirl","Wagon","Sign","Syringe","Ear","Trophy","Taser","SWATShield","Cuffs","Glock","Shotgun","Assault","Sniper","Bomb","DuffleBagMoney","Money","CreditCardBoy","CreditCardGirl","Umbrella","Roses","Present","SoccerBall","Apple","Chips","Bloxaide","Milk"},function(aw)local s={[1]="PickingTools",[2]=aw}game:GetService("ReplicatedStorage").RemoteEvents.Tools98748:InvokeServer(unpack(s))end)b:Label("Server-Side Play Music",Color3.fromRGB(127,143,166))b:Box("House Play Music",function(ax,ay)if ay then game:GetService("ReplicatedStorage").RemoteEvents.PlayersHouse:FireServer("PickingHouseMusicText",ax)end end)b:Box("FE Play Song",function(az,aA)if aA then game:GetService("ReplicatedStorage").GunSounds:FireServer(game.Players,az,1)local aB=game.Workspace;local aC=az;local aD=1;local aE='Sounding'local aF=false;local aG=Instance.new("Sound",aB)aG.SoundId='rbxassetid://'..aC;aG.Volume=1;aG.Name=aE;aG.Looped=aF;aG.Playing=true end end)b:Button("FE Scare All Players",function()game:GetService("ReplicatedStorage").GunSounds:FireServer(game.Players,7083236436,1)local aB=game.Workspace;local aC=7083236436;local aD=1;local aE='Sounding'local aF=false;local aG=Instance.new("Sound",aB)aG.SoundId='rbxassetid://'..aC;aG.Volume=1;aG.Name=aE;aG.Looped=aF;aG.Playing=true end)f:Label("Car Upgrade Gamepass",Color3.fromRGB(127,143,166))f:Toggle("Rainbow Car",false,function(aH)getgenv().seninnnf=aH;while wait()do if getgenv().seninnnf then game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(1,20.100007,0.018725))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(0,1,0.26709))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(1,0.70086,0.411722))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(0.753103,0.142167,1))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(0.938496,1,0.0076676))wait(.10)game:GetService("ReplicatedStorage").RemoteEvents.PlayersCar:FireServer("PickingCarColor",Color3.new(1,0.289824,0.841549))end end end)f:Label("Instant Spawn Cars",Color3.fromRGB(127,143,166))f:Button("Scooter",function()local s={[1]="PickingCar",[2]="ScooterVehicle"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("NPHarleyDavison",function()local s={[1]="PickingCar",[2]="NPHarleyDavison"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Cadillac",function()local s={[1]="PickingCar",[2]="Cadillac"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("CopChallenger",function()local s={[1]="PickingCar",[2]="CopChallenger"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Challenger",function()local s={[1]="PickingCar",[2]="Challenger"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Bus",function()local s={[1]="PickingCar",[2]="Bus"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Jeep",function()local s={[1]="PickingCar",[2]="Jeep"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("FireTruck",function()local s={[1]="PickingCar",[2]="FireTruck"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("CopUnderCoverSUV",function()local s={[1]="PickingCar",[2]="CopUnderCoverSUV"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("GolfCart",function()local s={[1]="PickingCar",[2]="GolfCart"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("Van",function()local s={[1]="PickingCar",[2]="Van"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("CopSUV",function()local s={[1]="PickingCar",[2]="CopSUV"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("FordGT",function()local s={[1]="PickingCar",[2]="FordGT"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Button("RV",function()local s={[1]="PickingCar",[2]="RV"}game:GetService("ReplicatedStorage").RemoteEvents.Car77613:FireServer(unpack(s))end)f:Label("Car Settings",Color3.fromRGB(127,143,166))f:Box("Car Speed",function(aI,aJ)if aJ then local aK=getrawmetatable(game)make_writeable(aK)local aL=aK.__index;aK.__index=function(aM,aN)if tostring(aM)=="TopSpeed"then if tostring(aN)=="Value"then return aI end end;return aL(aM,aN)end end end)a:Keybind("Tab")game:GetService("StarterGui"):SetCore("SendNotification",{Title="Important",Text="This Scripts Made By ameicaa,",Duration=20})
Gabriel1231n2j3n / Hacks Para Krunker// ==UserScript== // @name aimbot gratis para krunker.io // @description Este es el mejor aimbot mod menuq puedas obtener // @version 2.19 // @author Gabriel - // @iconURL 31676a4e532e706e673f7261773d74727565.png // @match *://krunker.io/* // @exclude *://krunker.io/editor* // @exclude *://krunker.io/social* // @run-at document-start // @grant none // @noframes // ==/UserScript== /* eslint-env es6 */ /* eslint-disable no-caller, no-undef, no-loop-func */ var CRC2d = CanvasRenderingContext2D.prototype; var skid, skidStr = [...Array(8)].map(_ => 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'[~~(Math.random()*52)]).join(''); class Skid { constructor() { skid = this; this.downKeys = new Set(); this.settings = null; this.vars = {}; this.playerMaps = []; this.skinCache = {}; this.inputFrame = 0; this.renderFrame = 0; this.fps = 0; this.lists = { renderESP: { off: "Off", walls: "Walls", twoD: "2d", full: "Full" }, renderChams: { off: "Off", white: "White", blue: "Blue", teal: "Teal", purple: "Purple", green: "Green", yellow: "Yellow", red: "Red", }, autoBhop: { off: "Off", autoJump: "Auto Jump", keyJump: "Key Jump", autoSlide: "Auto Slide", keySlide: "Key Slide" }, autoAim: { off: "Off", correction: "Aim Correction", assist: "Legit Aim Assist", easyassist: "Easy Aim Assist", silent: "Silent Aim", trigger: "Trigger Bot", quickScope: "Quick Scope" }, audioStreams: { off: 'Off', _2000s: 'General German/English', _HipHopRNB: 'Hip Hop / RNB', _Oldskool: 'Hip Hop Oldskool', _Country: 'Country', _Pop: 'Pop', _Dance: 'Dance', _Dubstep: 'DubStep', _Lowfi: 'LoFi HipHop', _Jazz: 'Jazz', _Oldies: 'Golden Oldies', _Club: 'Club', _Folk: 'Folk', _ClassicRock: 'Classic Rock', _Metal: 'Heavy Metal', _DeathMetal: 'Death Metal', _Classical: 'Classical', _Alternative: 'Alternative', }, } this.consts = { twoPI: Math.PI * 2, halfPI: Math.PI / 2, playerHeight: 11, cameraHeight: 1.5, headScale: 2, armScale: 1.3, armInset: 0.1, chestWidth: 2.6, hitBoxPad: 1, crouchDst: 3, recoilMlt: 0.3, nameOffset: 0.6, nameOffsetHat: 0.8, }; this.key = { frame: 0, delta: 1, xdir: 2, ydir: 3, moveDir: 4, shoot: 5, scope: 6, jump: 7, reload: 8, crouch: 9, weaponScroll: 10, weaponSwap: 11, moveLock: 12 }; this.css = { noTextShadows: `*, .button.small, .bigShadowT { text-shadow: none !important; }`, hideAdverts: `#aMerger, #endAMerger { display: none !important }`, hideSocials: `.headerBarRight > .verticalSeparator, .imageButton { display: none }`, cookieButton: `#onetrust-consent-sdk { display: none !important }`, newsHolder: `#newsHolder { display: none !important }`, }; this.isProxy = Symbol("isProxy"); this.spinTimer = 1800; let wait = setInterval(_ => { this.head = document.head||document.getElementsByTagName('head')[0] if (this.head) { clearInterval(wait); Object.entries(this.css).forEach(entry => { this.css[entry[0]] = this.createElement("style", entry[1]); }) this.onLoad(); } }, 100); } canStore() { return this.isDefined(Storage); } saveVal(name, val) { if (this.canStore()) localStorage.setItem("kro_utilities_"+name, val); } deleteVal(name) { if (this.canStore()) localStorage.removeItem("kro_utilities_"+name); } getSavedVal(name) { if (this.canStore()) return localStorage.getItem("kro_utilities_"+name); return null; } isType(item, type) { return typeof item === type; } isDefined(object) { return !this.isType(object, "undefined") && object !== null; } isNative(fn) { return (/^function\s*[a-z0-9_\$]*\s*\([^)]*\)\s*\{\s*\[native code\]\s*\}/i).test('' + fn) } getStatic(s, d) { return this.isDefined(s) ? s : d } crossDomain(url) { return "https://crossorigin.me/" + url; } async waitFor(test, timeout_ms = 20000, doWhile = null) { let sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms)); return new Promise(async (resolve, reject) => { if (typeof timeout_ms != "number") reject("Timeout argument not a number in waitFor(selector, timeout_ms)"); let result, freq = 100; while (result === undefined || result === false || result === null || result.length === 0) { if (doWhile && doWhile instanceof Function) doWhile(); if (timeout_ms % 1000 < freq) console.log("waiting for: ", test); if ((timeout_ms -= freq) < 0) { console.log( "Timeout : ", test ); resolve(false); return; } await sleep(freq); result = typeof test === "string" ? Function(test)() : test(); } console.log("Passed : ", test); resolve(result); }); }; createSettings() { this.settings = { //Rendering showSkidBtn: { pre: "<div class='setHed'>Rendering</div>", name: "Show Skid Button", val: true, html: () => this.generateSetting("checkbox", "showSkidBtn", this), set: (value, init) => { let button = document.getElementById("mainButton"); if (!button) { button = this.createButton("5k1D", "https://i.imgur.com/1tWAEJx.gif", this.toggleMenu, value) } else button.style.display = value ? "inherit" : "none"; } }, hideAdverts: { name: "Hide Advertisments", val: true, html: () => this.generateSetting("checkbox", "hideAdverts", this), set: (value, init) => { if (value) this.head.appendChild(this.css.hideAdverts) else if (!init) this.css.hideAdverts.remove() } }, hideStreams: { name: "Hide Streams", val: false, html: () => this.generateSetting("checkbox", "hideStreams", this), set: (value) => { window.streamContainer.style.display = value ? "none" : "inherit" } }, hideMerch: { name: "Hide Merch", val: false, html: () => this.generateSetting("checkbox", "hideMerch", this), set: value => { window.merchHolder.style.display = value ? "none" : "inherit" } }, hideNewsConsole: { name: "Hide News Console", val: false, html: () => this.generateSetting("checkbox", "hideNewsConsole", this), set: value => { window.newsHolder.style.display = value ? "none" : "inherit" } }, hideCookieButton: { name: "Hide Security Manage Button", val: false, html: () => this.generateSetting("checkbox", "hideCookieButton", this), set: value => { window['onetrust-consent-sdk'].style.display = value ? "none" : "inherit" } }, noTextShadows: { name: "Remove Text Shadows", val: false, html: () => this.generateSetting("checkbox", "noTextShadows", this), set: (value, init) => { if (value) this.head.appendChild(this.css.noTextShadows) else if (!init) this.css.noTextShadows.remove() } }, customCSS: { name: "Custom CSS", val: "", html: () => this.generateSetting("url", "customCSS", "URL to CSS file"), resources: { css: document.createElement("link") }, set: (value, init) => { if (value.startsWith("http")&&value.endsWith(".css")) { //let proxy = 'https://cors-anywhere.herokuapp.com/'; this.settings.customCSS.resources.css.href = value } if (init) { this.settings.customCSS.resources.css.rel = "stylesheet" try { this.head.appendChild(this.settings.customCSS.resources.css) } catch(e) { alert(e) this.settings.customCSS.resources.css = null } } } }, renderESP: { name: "Player ESP Type", val: "off", html: () => this.generateSetting("select", "renderESP", this.lists.renderESP), }, renderTracers: { name: "Player Tracers", val: false, html: () => this.generateSetting("checkbox", "renderTracers"), }, rainbowColor: { name: "Rainbow ESP", val: false, html: () => this.generateSetting("checkbox", "rainbowColor"), }, renderChams: { name: "Player Chams", val: "off", html: () => this.generateSetting( "select", "renderChams", this.lists.renderChams ), }, renderWireFrame: { name: "Player Wireframe", val: false, html: () => this.generateSetting("checkbox", "renderWireFrame"), }, customBillboard: { name: "Custom Billboard Text", val: "", html: () => this.generateSetting( "text", "customBillboard", "Custom Billboard Text" ), }, //Weapon autoReload: { pre: "<br><div class='setHed'>Weapon</div>", name: "Auto Reload", val: false, html: () => this.generateSetting("checkbox", "autoReload"), }, autoAim: { name: "Auto Aim Type", val: "off", html: () => this.generateSetting("select", "autoAim", this.lists.autoAim), }, frustrumCheck: { name: "Line of Sight Check", val: false, html: () => this.generateSetting("checkbox", "frustrumCheck"), }, wallPenetrate: { name: "Aim through Penetratables", val: false, html: () => this.generateSetting("checkbox", "wallPenetrate"), }, weaponZoom: { name: "Weapon Zoom", val: 1.0, min: 0, max: 50.0, step: 0.01, html: () => this.generateSetting("slider", "weaponZoom"), set: (value) => { if (this.renderer) this.renderer.adsFovMlt = value;} }, weaponTrails: { name: "Weapon Trails", val: false, html: () => this.generateSetting("checkbox", "weaponTrails"), set: (value) => { if (this.me) this.me.weapon.trail = value;} }, //Player autoBhop: { pre: "<br><div class='setHed'>Player</div>", name: "Auto Bhop Type", val: "off", html: () => this.generateSetting("select", "autoBhop", this.lists.autoBhop), }, thirdPerson: { name: "Third Person", val: false, html: () => this.generateSetting("checkbox", "thirdPerson"), set: (value, init) => { if (value) this.thirdPerson = 1; else if (!init) this.thirdPerson = undefined; } }, skinUnlock: { name: "Unlock Skins", val: false, html: () => this.generateSetting("checkbox", "skinUnlock", this), }, //GamePlay disableWpnSnd: { pre: "<br><div class='setHed'>GamePlay</div>", name: "Disable Players Weapon Sounds", val: false, html: () => this.generateSetting("checkbox", "disableWpnSnd", this), }, disableHckSnd: { name: "Disable Hacker Fart Sounds", val: false, html: () => this.generateSetting("checkbox", "disableHckSnd", this), }, autoActivateNuke: { name: "Auto Activate Nuke", val: false, html: () => this.generateSetting("checkbox", "autoActivateNuke", this), }, autoFindNew: { name: "New Lobby Finder", val: false, html: () => this.generateSetting("checkbox", "autoFindNew", this), }, autoClick: { name: "Auto Start Game", val: false, html: () => this.generateSetting("checkbox", "autoClick", this), }, inActivity: { name: "No InActivity Kick", val: true, html: () => this.generateSetting("checkbox", "autoClick", this), }, //Radio Stream Player playStream: { pre: "<br><div class='setHed'>Radio Stream Player</div>", name: "Stream Select", val: "off", html: () => this.generateSetting("select", "playStream", this.lists.audioStreams), set: (value) => { if (value == "off") { if ( this.settings.playStream.audio ) { this.settings.playStream.audio.pause(); this.settings.playStream.audio.currentTime = 0; this.settings.playStream.audio = null; } return; } let url = this.settings.playStream.urls[value]; if (!this.settings.playStream.audio) { this.settings.playStream.audio = new Audio(url); this.settings.playStream.audio.volume = this.settings.audioVolume.val||0.5 } else { this.settings.playStream.audio.src = url; } this.settings.playStream.audio.load(); this.settings.playStream.audio.play(); }, urls: { _2000s: 'http://0n-2000s.radionetz.de/0n-2000s.aac', _HipHopRNB: 'https://stream-mixtape-geo.ntslive.net/mixtape2', _Country: 'https://live.wostreaming.net/direct/wboc-waaifmmp3-ibc2', _Dance: 'http://streaming.radionomy.com/A-RADIO-TOP-40', _Pop: 'http://bigrradio.cdnstream1.com/5106_128', _Jazz: 'http://strm112.1.fm/ajazz_mobile_mp3', _Oldies: 'http://strm112.1.fm/60s_70s_mobile_mp3', _Club: 'http://strm112.1.fm/club_mobile_mp3', _Folk: 'https://freshgrass.streamguys1.com/irish-128mp3', _ClassicRock: 'http://1a-classicrock.radionetz.de/1a-classicrock.mp3', _Metal: 'http://streams.radiobob.de/metalcore/mp3-192', _DeathMetal: 'http://stream.laut.fm/beatdownx', _Classical: 'http://live-radio01.mediahubaustralia.com/FM2W/aac/', _Alternative: 'http://bigrradio.cdnstream1.com/5187_128', _Dubstep: 'http://streaming.radionomy.com/R1Dubstep?lang=en', _Lowfi: 'http://streams.fluxfm.de/Chillhop/mp3-256', _Oldskool: 'http://streams.90s90s.de/hiphop/mp3-128/', }, audio: null, }, audioVolume: { name: "Radio Volume", val: 0.5, min: 0, max: 1, step: 0.01, html: () => this.generateSetting("slider", "audioVolume"), set: (value) => { if (this.settings.playStream.audio) this.settings.playStream.audio.volume = value;} }, }; // Inject Html let waitForWindows = setInterval(_ => { if (window.windows) { const menu = window.windows[11]; menu.header = "Settings"; menu.gen = _ => { var tmpHTML = `<div style='text-align:center'> <a onclick='window.open("https://skidlamer.github.io/")' class='menuLink'>SkidFest Settings</center></a> <hr> </div>`; for (const key in this.settings) { if (this.settings[key].pre) tmpHTML += this.settings[key].pre; tmpHTML += "<div class='settName' id='" + key + "_div' style='display:" + (this.settings[key].hide ? 'none' : 'block') + "'>" + this.settings[key].name + " " + this.settings[key].html() + "</div>"; } tmpHTML += `<br><hr><a onclick='${skidStr}.resetSettings()' class='menuLink'>Reset Settings</a> | <a onclick='${skidStr}.saveScript()' class='menuLink'>Save GameScript</a>` return tmpHTML; }; clearInterval(waitForWindows); //this.createButton("5k1D", "https://i.imgur.com/1tWAEJx.gif", this.toggleMenu) } }, 100); // setupSettings for (const key in this.settings) { this.settings[key].def = this.settings[key].val; if (!this.settings[key].disabled) { let tmpVal = this.getSavedVal(key); this.settings[key].val = tmpVal !== null ? tmpVal : this.settings[key].val; if (this.settings[key].val == "false") this.settings[key].val = false; if (this.settings[key].val == "true") this.settings[key].val = true; if (this.settings[key].val == "undefined") this.settings[key].val = this.settings[key].def; if (this.settings[key].set) this.settings[key].set(this.settings[key].val, true); } } } generateSetting(type, name, extra) { switch (type) { case 'checkbox': return `<label class="switch"><input type="checkbox" onclick="${skidStr}.setSetting('${name}', this.checked)" ${this.settings[name].val ? 'checked' : ''}><span class="slider"></span></label>`; case 'slider': return `<span class='sliderVal' id='slid_utilities_${name}'>${this.settings[name].val}</span><div class='slidecontainer'><input type='range' min='${this.settings[name].min}' max='${this.settings[name].max}' step='${this.settings[name].step}' value='${this.settings[name].val}' class='sliderM' oninput="${skidStr}.setSetting('${name}', this.value)"></div>` case 'select': { let temp = `<select onchange="${skidStr}.setSetting(\x27${name}\x27, this.value)" class="inputGrey2">`; for (let option in extra) { temp += '<option value="' + option + '" ' + (option == this.settings[name].val ? 'selected' : '') + '>' + extra[option] + '</option>'; } temp += '</select>'; return temp; } default: return `<input type="${type}" name="${type}" id="slid_utilities_${name}"\n${'color' == type ? 'style="float:right;margin-top:5px"' : `class="inputGrey2" placeholder="${extra}"`}\nvalue="${this.settings[name].val}" oninput="${skidStr}.setSetting(\x27${name}\x27, this.value)"/>`; } } resetSettings() { if (confirm("Are you sure you want to reset all your settings? This will also refresh the page")) { Object.keys(localStorage).filter(x => x.includes("kro_utilities_")).forEach(x => localStorage.removeItem(x)); location.reload(); } } setSetting(t, e) { this.settings[t].val = e; this.saveVal(t, e); if (document.getElementById(`slid_utilities_${t}`)) document.getElementById(`slid_utilities_${t}`).innerHTML = e; if (this.settings[t].set) this.settings[t].set(e); } createObserver(elm, check, callback, onshow = true) { return new MutationObserver((mutationsList, observer) => { if (check == 'src' || onshow && mutationsList[0].target.style.display == 'block' || !onshow) { callback(mutationsList[0].target); } }).observe(elm, check == 'childList' ? {childList: true} : {attributes: true, attributeFilter: [check]}); } createListener(elm, type, callback = null) { if (!this.isDefined(elm)) { alert("Failed creating " + type + "listener"); return } elm.addEventListener(type, event => callback(event)); } createElement(element, attribute, inner) { if (!this.isDefined(element)) { return null; } if (!this.isDefined(inner)) { inner = ""; } let el = document.createElement(element); if (this.isType(attribute, 'object')) { for (let key in attribute) { el.setAttribute(key, attribute[key]); } } if (!Array.isArray(inner)) { inner = [inner]; } for (let i = 0; i < inner.length; i++) { if (inner[i].tagName) { el.appendChild(inner[i]); } else { el.appendChild(document.createTextNode(inner[i])); } } return el; } createButton(name, iconURL, fn, visible) { visible = visible ? "inherit":"none"; let menu = document.querySelector("#menuItemContainer"); let icon = this.createElement("div",{"class":"menuItemIcon", "style":`background-image:url("${iconURL}");display:inherit;`}); let title= this.createElement("div",{"class":"menuItemTitle", "style":`display:inherit;`}, name); let host = this.createElement("div",{"id":"mainButton", "class":"menuItem", "onmouseenter":"playTick()", "onclick":"showWindow(12)", "style":`display:${visible};`},[icon, title]); if (menu) menu.append(host) } objectHas(obj, arr) { return arr.some(prop => obj.hasOwnProperty(prop)); } getVersion() { const elems = document.getElementsByClassName('terms'); const version = elems[elems.length - 1].innerText; return version; } saveAs(name, data) { let blob = new Blob([data], {type: 'text/plain'}); let el = window.document.createElement("a"); el.href = window.URL.createObjectURL(blob); el.download = name; window.document.body.appendChild(el); el.click(); window.document.body.removeChild(el); } saveScript() { this.fetchScript().then(script => { this.saveAs("game_" + this.getVersion() + ".js", script) }) } isKeyDown(key) { return this.downKeys.has(key); } simulateKey(keyCode) { var oEvent = document.createEvent('KeyboardEvent'); // Chromium Hack Object.defineProperty(oEvent, 'keyCode', { get : function() { return this.keyCodeVal; } }); Object.defineProperty(oEvent, 'which', { get : function() { return this.keyCodeVal; } }); if (oEvent.initKeyboardEvent) { oEvent.initKeyboardEvent("keypress", true, true, document.defaultView, keyCode, keyCode, "", "", false, ""); } else { oEvent.initKeyEvent("keypress", true, true, document.defaultView, false, false, false, false, keyCode, 0); } oEvent.keyCodeVal = keyCode; if (oEvent.keyCode !== keyCode) { alert("keyCode mismatch " + oEvent.keyCode + "(" + oEvent.which + ")"); } document.body.dispatchEvent(oEvent); } toggleMenu() { let lock = document.pointerLockElement || document.mozPointerLockElement; if (lock) document.exitPointerLock(); window.showWindow(12); if (this.isDefined(window.SOUND)) window.SOUND.play(`tick_0`,0.1) } onLoad() { this.createSettings(); this.createObservers(); this.waitFor(_=>this.isDefined(this.exports)).then(_=> { if (!this.isDefined(this.exports)) { alert("This Mod Needs To Be Updated Please Try Agian Later"); return; } //console.dir(this.exports); let toFind = { overlay: ["render", "canvas"], config: ["accAnnounce", "availableRegions", "assetCat"], three: ["ACESFilmicToneMapping", "TextureLoader", "ObjectLoader"], ws: ["socketReady", "ingressPacketCount", "ingressPacketCount", "egressDataSize"], utility: ["VectorAdd", "VectorAngleSign"], //colors: ["challLvl", "getChallCol"], //ui: ["showEndScreen", "toggleControlUI", "toggleEndScreen", "updatePlayInstructions"], //events: ["actions", "events"], } for (let rootKey in this.exports) { let exp = this.exports[rootKey].exports; for (let name in toFind) { if (this.objectHas(exp, toFind[name])) { console.log("Found Export ", name); delete toFind[name]; this[name] = exp; } } } if (!(Object.keys(toFind).length === 0 && toFind.constructor === Object)) { for (let name in toFind) { alert("Failed To Find Export " + name); } } else { Object.defineProperty(this.config, "nameVisRate", { value: 0, writable: false, configurable: true, }) this.ctx = this.overlay.canvas.getContext('2d'); this.overlay.render = new Proxy(this.overlay.render, { apply: function(target, that, args) { return [target.apply(that, args), render.apply(that, args)] } }) function render(scale, game, controls, renderer, me) { let width = skid.overlay.canvas.width / scale; let height = skid.overlay.canvas.height / scale; const renderArgs = [scale, game, controls, renderer, me]; if (renderArgs && void 0 !== skid) { ["scale", "game", "controls", "renderer", "me"].forEach((item, index)=>{ skid[item] = renderArgs[index]; }); if (me) { skid.ctx.save(); skid.ctx.scale(scale, scale); //this.ctx.clearRect(0, 0, width, height); skid.onRender(); //window.requestAnimationFrame.call(window, renderArgs.callee.caller.bind(this)); skid.ctx.restore(); } if(skid.settings && skid.settings.autoClick.val && window.endUI.style.display == "none" && window.windowHolder.style.display == "none") { controls.toggle(true); } } } // Skins const $skins = Symbol("skins"); Object.defineProperty(Object.prototype, "skins", { set: function(fn) { this[$skins] = fn; if (void 0 == this.localSkins || !this.localSkins.length) { this.localSkins = Array.apply(null, Array(5e3)).map((x, i) => { return { ind: i, cnt: 0x1, } }) } return fn; }, get: function() { return skid.settings.skinUnlock.val && this.stats ? this.localSkins : this[$skins]; } }) this.waitFor(_=>this.ws.connected === true, 40000).then(_=> { this.ws.__event = this.ws._dispatchEvent.bind(this.ws); this.ws.__send = this.ws.send.bind(this.ws); this.ws.send = new Proxy(this.ws.send, { apply: function(target, that, args) { if (args[0] == "ah2") return; try { var original_fn = Function.prototype.apply.apply(target, [that, args]); } catch (e) { e.stack = e.stack = e.stack.replace(/\n.*Object\.apply.*/, ''); throw e; } if (args[0] === "en") { skid.skinCache = { main: args[1][2][0], secondary: args[1][2][1], hat: args[1][3], body: args[1][4], knife: args[1][9], dye: args[1][14], waist: args[1][17], } } return original_fn; } }) this.ws._dispatchEvent = new Proxy(this.ws._dispatchEvent, { apply: function(target, that, [type, event]) { if (type =="init") { if(event[10] && event[10].length && event[10].bill && skid.settings.customBillboard.val.length > 1) { event[10].bill.txt = skid.settings.customBillboard.val; } } if (skid.settings.skinUnlock.val && skid.skinCache && type === "0") { let skins = skid.skinCache; let pInfo = event[0]; let pSize = 38; while (pInfo.length % pSize !== 0) pSize++; for(let i = 0; i < pInfo.length; i += pSize) { if (pInfo[i] === skid.ws.socketId||0) { pInfo[i + 12] = [skins.main, skins.secondary]; pInfo[i + 13] = skins.hat; pInfo[i + 14] = skins.body; pInfo[i + 19] = skins.knife; pInfo[i + 24] = skins.dye; pInfo[i + 33] = skins.waist; } } } return target.apply(that, arguments[2]); } }) }) if (this.isDefined(window.SOUND)) { window.SOUND.play = new Proxy(window.SOUND.play, { apply: function(target, that, [src, vol, loop, rate]) { if ( src.startsWith("fart_") && skid.settings.disableHckSnd.val ) return; return target.apply(that, [src, vol, loop, rate]); } }) } AudioParam.prototype.setValueAtTime = new Proxy(AudioParam.prototype.setValueAtTime, { apply: function(target, that, [value, startTime]) { return target.apply(that, [value, 0]); } }) this.rayC = new this.three.Raycaster(); this.vec2 = new this.three.Vector2(0, 0); } }) } gameJS(script) { let entries = { // Deobfu inView: { regex: /(\w+\['(\w+)']\){if\(\(\w+=\w+\['\w+']\['position']\['clone']\(\))/, index: 2 }, spectating: { regex: /\['team']:window\['(\w+)']/, index: 1 }, //inView: { regex: /\]\)continue;if\(!\w+\['(.+?)\']\)continue;/, index: 1 }, //canSee: { regex: /\w+\['(\w+)']\(\w+,\w+\['x'],\w+\['y'],\w+\['z']\)\)&&/, index: 1 }, //procInputs: { regex: /this\['(\w+)']=function\((\w+),(\w+),\w+,\w+\){(this)\['recon']/, index: 1 }, aimVal: { regex: /this\['(\w+)']-=0x1\/\(this\['weapon']\['\w+']\/\w+\)/, index: 1 }, pchObjc: { regex: /0x0,this\['(\w+)']=new \w+\['Object3D']\(\),this/, index: 1 }, didShoot: { regex: /--,\w+\['(\w+)']=!0x0/, index: 1 }, nAuto: { regex: /'Single\\x20Fire','varN':'(\w+)'/, index: 1 }, crouchVal: { regex: /this\['(\w+)']\+=\w\['\w+']\*\w+,0x1<=this\['\w+']/, index: 1 }, recoilAnimY: { regex: /\+\(-Math\['PI']\/0x4\*\w+\+\w+\['(\w+)']\*\w+\['\w+']\)\+/, index: 1 }, //recoilAnimY: { regex: /this\['recoilAnim']=0x0,this\[(.*?\(''\))]/, index: 1 }, ammos: { regex: /\['length'];for\(\w+=0x0;\w+<\w+\['(\w+)']\['length']/, index: 1 }, weaponIndex: { regex: /\['weaponConfig']\[\w+]\['secondary']&&\(\w+\['(\w+)']==\w+/, index: 1 }, isYou: { regex: /0x0,this\['(\w+)']=\w+,this\['\w+']=!0x0,this\['inputs']/, index: 1 }, objInstances: { regex: /\w+\['\w+']\(0x0,0x0,0x0\);if\(\w+\['(\w+)']=\w+\['\w+']/, index: 1 }, getWorldPosition: { regex: /{\w+=\w+\['camera']\['(\w+)']\(\);/, index: 1 }, //mouseDownL: { regex: /this\['\w+'\]=function\(\){this\['(\w+)'\]=\w*0,this\['(\w+)'\]=\w*0,this\['\w+'\]={}/, index: 1 }, mouseDownR: { regex: /this\['(\w+)']=0x0,this\['keys']=/, index: 1 }, //reloadTimer: { regex: /this\['(\w+)']&&\(\w+\['\w+']\(this\),\w+\['\w+']\(this\)/, index: 1 }, maxHealth: { regex: /this\['health']\/this\['(\w+)']\?/, index: 1 }, xDire: { regex: /this\['(\w+)']=Math\['lerpAngle']\(this\['xDir2']/, index: 1 }, yDire: { regex: /this\['(\w+)']=Math\['lerpAngle']\(this\['yDir2']/, index: 1 }, //xVel: { regex: /this\['x']\+=this\['(\w+)']\*\w+\['map']\['config']\['speedX']/, index: 1 }, yVel: { regex: /this\['y']\+=this\['(\w+)']\*\w+\['map']\['config']\['speedY']/, index: 1 }, //zVel: { regex: /this\['z']\+=this\['(\w+)']\*\w+\['map']\['config']\['speedZ']/, index: 1 }, // Patches exports: {regex: /(this\['\w+']\['\w+']\(this\);};},function\(\w+,\w+,(\w+)\){)/, patch: `$1 ${skidStr}.exports=$2.c; ${skidStr}.modules=$2.m;`}, inputs: {regex: /(\w+\['\w+']\[\w+\['\w+']\['\w+']\?'\w+':'push']\()(\w+)\),/, patch: `$1${skidStr}.onInput($2)),`}, inView: {regex: /&&(\w+\['\w+'])\){(if\(\(\w+=\w+\['\w+']\['\w+']\['\w+'])/, patch: `){if(!$1&&void 0 !== ${skidStr}.nameTags)continue;$2`}, thirdPerson:{regex: /(\w+)\[\'config\'\]\[\'thirdPerson\'\]/g, patch: `void 0 !== ${skidStr}.thirdPerson`}, isHacker:{regex: /(window\['\w+']=)!0x0\)/, patch: `$1!0x1)`}, fixHowler:{regex: /(Howler\['orientation'](.+?)\)\),)/, patch: ``}, respawnT:{regex: /'\w+':0x3e8\*/g, patch: `'respawnT':0x0*`}, anticheat1:{regex: /&&\w+\(\),window\['utilities']&&\(\w+\(null,null,null,!0x0\),\w+\(\)\)/, patch: ""}, anticheat2:{regex: /(\[]instanceof Array;).*?(var)/, patch: "$1 $2"}, anticheat3:{regex: /windows\['length'\]>\d+.*?0x25/, patch: `0x25`}, commandline:{regex: /Object\['defineProperty']\(console.*?\),/, patch: ""}, writeable:{regex: /'writeable':!0x1/g, patch: "writeable:true"}, configurable:{regex: /'configurable':!0x1/g, patch: "configurable:true"}, typeError:{regex: /throw new TypeError/g, patch: "console.error"}, error:{regex: /throw new Error/g, patch: "console.error"}, }; for(let name in entries) { let object = entries[name]; let found = object.regex.exec(script); if (object.hasOwnProperty('index')) { if (!found) { object.val = null; alert("Failed to Find " + name); } else { object.val = found[object.index]; console.log ("Found ", name, ":", object.val); } Object.defineProperty(skid.vars, name, { configurable: false, value: object.val }); } else if (found) { script = script.replace(object.regex, object.patch); console.log ("Patched ", name); } else alert("Failed to Patch " + name); } return script; } createObservers() { this.createObserver(window.instructionsUpdate, 'style', (target) => { if (this.settings.autoFindNew.val) { console.log(target) if (['Kicked', 'Banned', 'Disconnected', 'Error', 'Game is full'].some(text => target && target.innerHTML.includes(text))) { location = document.location.origin; } } }); this.createListener(document, "keyup", event => { if (this.downKeys.has(event.code)) this.downKeys.delete(event.code) }) this.createListener(document, "keydown", event => { if (event.code == "F1") { event.preventDefault(); this.toggleMenu(); } if ('INPUT' == document.activeElement.tagName || !window.endUI && window.endUI.style.display) return; switch (event.code) { case 'NumpadSubtract': document.exitPointerLock(); //console.log(document.exitPointerLock) console.dirxml(this) break; default: if (!this.downKeys.has(event.code)) this.downKeys.add(event.code); break; } }) this.createListener(document, "mouseup", event => { switch (event.button) { case 1: event.preventDefault(); this.toggleMenu(); break; default: break; } }) } onRender() { /* hrt / ttap - https://github.com/hrt */ this.renderFrame ++; if (this.renderFrame >= 100000) this.renderFrame = 0; let scaledWidth = this.ctx.canvas.width / this.scale; let scaledHeight = this.ctx.canvas.height / this.scale; let playerScale = (2 * this.consts.armScale + this.consts.chestWidth + this.consts.armInset) / 2 let worldPosition = this.renderer.camera[this.vars.getWorldPosition](); let espVal = this.settings.renderESP.val; if (espVal ==="walls"||espVal ==="twoD") this.nameTags = undefined; else this.nameTags = true; if (this.settings.autoActivateNuke.val && this.me && Object.keys(this.me.streaks).length) { /*chonker*/ this.ws.__send("k", 0); } if (espVal !== "off") { this.overlay.healthColE = this.settings.rainbowColor.val ? this.overlay.rainbow.col : "#eb5656"; } for (let iter = 0, length = this.game.players.list.length; iter < length; iter++) { let player = this.game.players.list[iter]; if (player[this.vars.isYou] || !player.active || !this.isDefined(player[this.vars.objInstances]) || this.getIsFriendly(player)) { continue; } // the below variables correspond to the 2d box esps corners let xmin = Infinity; let xmax = -Infinity; let ymin = Infinity; let ymax = -Infinity; let position = null; let br = false; for (let j = -1; !br && j < 2; j+=2) { for (let k = -1; !br && k < 2; k+=2) { for (let l = 0; !br && l < 2; l++) { if (position = player[this.vars.objInstances].position.clone()) { position.x += j * playerScale; position.z += k * playerScale; position.y += l * (player.height - player[this.vars.crouchVal] * this.consts.crouchDst); if (!this.containsPoint(position)) { br = true; break; } position.project(this.renderer.camera); xmin = Math.min(xmin, position.x); xmax = Math.max(xmax, position.x); ymin = Math.min(ymin, position.y); ymax = Math.max(ymax, position.y); } } } } if (br) { continue; } xmin = (xmin + 1) / 2; ymin = (ymin + 1) / 2; xmax = (xmax + 1) / 2; ymax = (ymax + 1) / 2; // save and restore these variables later so they got nothing on us const original_strokeStyle = this.ctx.strokeStyle; const original_lineWidth = this.ctx.lineWidth; const original_font = this.ctx.font; const original_fillStyle = this.ctx.fillStyle; //Tracers if (this.settings.renderTracers.val) { CRC2d.save.apply(this.ctx, []); let screenPos = this.world2Screen(player[this.vars.objInstances].position); this.ctx.lineWidth = 4.5; this.ctx.beginPath(); this.ctx.moveTo(this.ctx.canvas.width/2, this.ctx.canvas.height - (this.ctx.canvas.height - scaledHeight)); this.ctx.lineTo(screenPos.x, screenPos.y); this.ctx.strokeStyle = "rgba(0, 0, 0, 0.25)"; this.ctx.stroke(); this.ctx.lineWidth = 2.5; this.ctx.strokeStyle = this.settings.rainbowColor.val ? this.overlay.rainbow.col : "#eb5656" this.ctx.stroke(); CRC2d.restore.apply(this.ctx, []); } CRC2d.save.apply(this.ctx, []); if (espVal == "twoD" || espVal == "full") { // perfect box esp this.ctx.lineWidth = 5; this.ctx.strokeStyle = this.settings.rainbowColor.val ? this.overlay.rainbow.col : "#eb5656" let distanceScale = Math.max(.3, 1 - this.getD3D(worldPosition.x, worldPosition.y, worldPosition.z, player.x, player.y, player.z) / 600); CRC2d.scale.apply(this.ctx, [distanceScale, distanceScale]); let xScale = scaledWidth / distanceScale; let yScale = scaledHeight / distanceScale; CRC2d.beginPath.apply(this.ctx, []); ymin = yScale * (1 - ymin); ymax = yScale * (1 - ymax); xmin = xScale * xmin; xmax = xScale * xmax; CRC2d.moveTo.apply(this.ctx, [xmin, ymin]); CRC2d.lineTo.apply(this.ctx, [xmin, ymax]); CRC2d.lineTo.apply(this.ctx, [xmax, ymax]); CRC2d.lineTo.apply(this.ctx, [xmax, ymin]); CRC2d.lineTo.apply(this.ctx, [xmin, ymin]); CRC2d.stroke.apply(this.ctx, []); if (espVal == "full") { // health bar this.ctx.fillStyle = "#000000"; let barMaxHeight = ymax - ymin; CRC2d.fillRect.apply(this.ctx, [xmin - 7, ymin, -10, barMaxHeight]); this.ctx.fillStyle = player.health > 75 ? "green" : player.health > 40 ? "orange" : "red"; CRC2d.fillRect.apply(this.ctx, [xmin - 7, ymin, -10, barMaxHeight * (player.health / player[this.vars.maxHealth])]); // info this.ctx.font = "48px Sans-serif"; this.ctx.fillStyle = "white"; this.ctx.strokeStyle='black'; this.ctx.lineWidth = 1; let x = xmax + 7; let y = ymax; CRC2d.fillText.apply(this.ctx, [player.name||player.alias, x, y]); CRC2d.strokeText.apply(this.ctx, [player.name||player.alias, x, y]); this.ctx.font = "30px Sans-serif"; y += 35; CRC2d.fillText.apply(this.ctx, [player.weapon.name, x, y]); CRC2d.strokeText.apply(this.ctx, [player.weapon.name, x, y]); y += 35; CRC2d.fillText.apply(this.ctx, [player.health + ' HP', x, y]); CRC2d.strokeText.apply(this.ctx, [player.health + ' HP', x, y]); } } CRC2d.restore.apply(this.ctx, []); this.ctx.strokeStyle = original_strokeStyle; this.ctx.lineWidth = original_lineWidth; this.ctx.font = original_font; this.ctx.fillStyle = original_fillStyle; // skelly chams if (this.isDefined(player[this.vars.objInstances])) { let obj = player[this.vars.objInstances]; if (!obj.visible) { Object.defineProperty(player[this.vars.objInstances], 'visible', { value: true, writable: false }); } obj.traverse((child) => { let chamColor = this.settings.renderChams.val; let chamsEnabled = chamColor !== "off"; if (child && child.type == "Mesh" && child.material) { child.material.depthTest = chamsEnabled ? false : true; //if (this.isDefined(child.material.fog)) child.material.fog = chamsEnabled ? false : true; if (child.material.emissive) { child.material.emissive.r = chamColor == 'off' || chamColor == 'teal' || chamColor == 'green' || chamColor == 'blue' ? 0 : 0.55; child.material.emissive.g = chamColor == 'off' || chamColor == 'purple' || chamColor == 'blue' || chamColor == 'red' ? 0 : 0.55; child.material.emissive.b = chamColor == 'off' || chamColor == 'yellow' || chamColor == 'green' || chamColor == 'red' ? 0 : 0.55; } child.material.wireframe = this.settings.renderWireFrame.val ? true : false } }) } } } spinTick(input) { //this.game.players.getSpin(this.self); //this.game.players.saveSpin(this.self, angle); const angle = this.getAngleDst(input[2], this.me[this.vars.xDire]); this.spins = this.getStatic(this.spins, new Array()); this.spinTimer = this.getStatic(this.spinTimer, this.config.spinTimer); this.serverTickRate = this.getStatic(this.serverTickRate, this.config.serverTickRate); (this.spins.unshift(angle), this.spins.length > this.spinTimer / this.serverTickRate && (this.spins.length = Math.round(this.spinTimer / this.serverTickRate))) for (var e = 0, i = 0; i < this.spins.length; ++i) e += this.spins[i]; return Math.abs(e * (180 / Math.PI)); } raidBot(input) { let target = this.game.AI.ais.filter(enemy => { return undefined !== enemy.mesh && enemy.mesh && enemy.mesh.children[0] && enemy.canBSeen && enemy.health > 0 }).sort((p1, p2) => this.getD3D(this.me.x, this.me.z, p1.x, p1.z) - this.getD3D(this.me.x, this.me.z, p2.x, p2.z)).shift(); if (target) { let canSee = this.containsPoint(target.mesh.position) let yDire = (this.getDir(this.me.z, this.me.x, target.z, target.x) || 0) let xDire = ((this.getXDire(this.me.x, this.me.y, this.me.z, target.x, target.y + target.mesh.children[0].scale.y * 0.85, target.z) || 0) - this.consts.recoilMlt * this.me[this.vars.recoilAnimY]) if (this.me.weapon[this.vars.nAuto] && this.me[this.vars.didShoot]) { input[this.key.shoot] = 0; input[this.key.scope] = 0; this.me.inspecting = false; this.me.inspectX = 0; } else { if (!this.me.aimDir && canSee) { input[this.key.scope] = 1; if (!this.me[this.vars.aimVal]||this.me.weapon.noAim) { input[this.key.shoot] = 1; input[this.key.ydir] = yDire * 1e3 input[this.key.xdir] = xDire * 1e3 this.lookDir(xDire, yDire); } } } } else { this.resetLookAt(); } return input; } onInput(input) { if (this.isDefined(this.config) && this.config.aimAnimMlt) this.config.aimAnimMlt = 1; if (this.isDefined(this.controls) && this.isDefined(this.config) && this.settings.inActivity.val) { this.controls.idleTimer = 0; this.config.kickTimer = Infinity } if (this.me) { this.inputFrame ++; if (this.inputFrame >= 100000) this.inputFrame = 0; if (!this.game.playerSound[this.isProxy]) { this.game.playerSound = new Proxy(this.game.playerSound, { apply: function(target, that, args) { if (skid.settings.disableWpnSnd.val && args[0] && typeof args[0] == "string" && args[0].startsWith("weapon_")) return; return target.apply(that, args); }, get: function(target, key) { return key === skid.isProxy ? true : Reflect.get(target, key); }, }) } let isMelee = this.isDefined(this.me.weapon.melee)&&this.me.weapon.melee||this.isDefined(this.me.weapon.canThrow)&&this.me.weapon.canThrow; let ammoLeft = this.me[this.vars.ammos][this.me[this.vars.weaponIndex]]; // autoReload if (this.settings.autoReload.val) { //let capacity = this.me.weapon.ammo; //if (ammoLeft < capacity) if (isMelee) { if (!this.me.canThrow) { //this.me.refillKnife(); } } else if (!ammoLeft) { this.game.players.reload(this.me); input[this.key.reload] = 1; // this.me[this.vars.reloadTimer] = 1; //this.me.resetAmmo(); } } //Auto Bhop let autoBhop = this.settings.autoBhop.val; if (autoBhop !== "off") { if (this.isKeyDown("Space") || autoBhop == "autoJump" || autoBhop == "autoSlide") { this.controls.keys[this.controls.binds.jumpKey.val] ^= 1; if (this.controls.keys[this.controls.binds.jumpKey.val]) { this.controls.didPressed[this.controls.binds.jumpKey.val] = 1; } if (this.isKeyDown("Space") || autoBhop == "autoSlide") { if (this.me[this.vars.yVel] < -0.03 && this.me.canSlide) { setTimeout(() => { this.controls.keys[this.controls.binds.crouchKey.val] = 0; }, this.me.slideTimer||325); this.controls.keys[this.controls.binds.crouchKey.val] = 1; this.controls.didPressed[this.controls.binds.crouchKey.val] = 1; } } } } //Autoaim if (this.settings.autoAim.val !== "off") { this.playerMaps.length = 0; this.rayC.setFromCamera(this.vec2, this.renderer.fpsCamera); let target = this.game.players.list.filter(enemy => { let hostile = undefined !== enemy[this.vars.objInstances] && enemy[this.vars.objInstances] && !enemy[this.vars.isYou] && !this.getIsFriendly(enemy) && enemy.health > 0 && this.getInView(enemy); if (hostile) this.playerMaps.push( enemy[this.vars.objInstances] ); return hostile }).sort((p1, p2) => this.getD3D(this.me.x, this.me.z, p1.x, p1.z) - this.getD3D(this.me.x, this.me.z, p2.x, p2.z)).shift(); if (target) { //let count = this.spinTick(input); //if (count < 360) { // input[2] = this.me[this.vars.xDire] + Math.PI; //} else console.log("spins ", count); //target.jumpBobY * this.config.jumpVel let canSee = this.containsPoint(target[this.vars.objInstances].position); let inCast = this.rayC.intersectObjects(this.playerMaps, true).length; let yDire = (this.getDir(this.me.z, this.me.x, target.z, target.x) || 0); let xDire = ((this.getXDire(this.me.x, this.me.y, this.me.z, target.x, target.y - target[this.vars.crouchVal] * this.consts.crouchDst + this.me[this.vars.crouchVal] * this.consts.crouchDst, target.z) || 0) - this.consts.recoilMlt * this.me[this.vars.recoilAnimY]) if (this.me.weapon[this.vars.nAuto] && this.me[this.vars.didShoot]) { input[this.key.shoot] = 0; input[this.key.scope] = 0; this.me.inspecting = false; this.me.inspectX = 0; } else if (!canSee && this.settings.frustrumCheck.val) this.resetLookAt(); else if (ammoLeft||isMelee) { input[this.key.scope] = this.settings.autoAim.val === "assist"||this.settings.autoAim.val === "correction"||this.settings.autoAim.val === "trigger" ? this.controls[this.vars.mouseDownR] : 0; switch (this.settings.autoAim.val) { case "quickScope": input[this.key.scope] = 1; if (!this.me[this.vars.aimVal]||this.me.weapon.noAim) { if (!this.me.canThrow||!isMelee) input[this.key.shoot] = 1; input[this.key.ydir] = yDire * 1e3 input[this.key.xdir] = xDire * 1e3 this.lookDir(xDire, yDire); } break; case "assist": case "easyassist": if (input[this.key.scope] || this.settings.autoAim.val === "easyassist") { if (!this.me.aimDir && canSee || this.settings.autoAim.val === "easyassist") { input[this.key.ydir] = yDire * 1e3 input[this.key.xdir] = xDire * 1e3 this.lookDir(xDire, yDire); } } break; case "silent": if (!this.me[this.vars.aimVal]||this.me.weapon.noAim) { if (!this.me.canThrow||!isMelee) input[this.key.shoot] = 1; } else input[this.key.scope] = 1; input[this.key.ydir] = yDire * 1e3 input[this.key.xdir] = xDire * 1e3 break; case "trigger": if (input[this.key.scope] && canSee && inCast) { input[this.key.shoot] = 1; input[this.key.ydir] = yDire * 1e3 input[this.key.xdir] = xDire * 1e3 } break; case "correction": if (input[this.key.shoot] == 1) { input[this.key.ydir] = yDire * 1e3 input[this.key.xdir] = xDire * 1e3 } break; default: this.resetLookAt(); break; } } } else { this.resetLookAt(); //input = this.raidBot(input); } } } //else if (this.settings.autoClick.val && !this.ui.hasEndScreen) { //this.config.deathDelay = 0; //this.controls.toggle(true); //} //this.game.config.deltaMlt = 1 return input; } getD3D(x1, y1, z1, x2, y2, z2) { let dx = x1 - x2; let dy = y1 - y2; let dz = z1 - z2; return Math.sqrt(dx * dx + dy * dy + dz * dz); } getAngleDst(a, b) { return Math.atan2(Math.sin(b - a), Math.cos(a - b)); } getXDire(x1, y1, z1, x2, y2, z2) { let h = Math.abs(y1 - y2); let dst = this.getD3D(x1, y1, z1, x2, y2, z2); return (Math.asin(h / dst) * ((y1 > y2)?-1:1)); } getDir(x1, y1, x2, y2) { return Math.atan2(y1 - y2, x1 - x2); } getDistance(x1, y1, x2, y2) { return Math.sqrt((x2 -= x1) * x2 + (y2 -= y1) * y2); } containsPoint(point) { let planes = this.renderer.frustum.planes; for (let i = 0; i < 6; i ++) { if (planes[i].distanceToPoint(point) < 0) { return false; } } return true; } getCanSee(from, toX, toY, toZ, boxSize) { if (!from) return 0; boxSize = boxSize||0; for (let obj, dist = this.getD3D(from.x, from.y, from.z, toX, toY, toZ), xDr = this.getDir(from.z, from.x, toZ, toX), yDr = this.getDir(this.getDistance(from.x, from.z, toX, toZ), toY, 0, from.y), dx = 1 / (dist * Math.sin(xDr - Math.PI) * Math.cos(yDr)), dz = 1 / (dist * Math.cos(xDr - Math.PI) * Math.cos(yDr)), dy = 1 / (dist * Math.sin(yDr)), yOffset = from.y + (from.height || 0) - this.consts.cameraHeight, aa = 0; aa < this.game.map.manager.objects.length; ++aa) { if (!(obj = this.game.map.manager.objects[aa]).noShoot && obj.active && !obj.transparent && (!this.settings.wallPenetrate.val || (!obj.penetrable || !this.me.weapon.pierce))) { let tmpDst = this.lineInRect(from.x, from.z, yOffset, dx, dz, dy, obj.x - Math.max(0, obj.width - boxSize), obj.z - Math.max(0, obj.length - boxSize), obj.y - Math.max(0, obj.height - boxSize), obj.x + Math.max(0, obj.width - boxSize), obj.z + Math.max(0, obj.length - boxSize), obj.y + Math.max(0, obj.height - boxSize)); if (tmpDst && 1 > tmpDst) return tmpDst; } } /* let terrain = this.game.map.terrain; if (terrain) { let terrainRaycast = terrain.raycast(from.x, -from.z, yOffset, 1 / dx, -1 / dz, 1 / dy); if (terrainRaycast) return utl.getD3D(from.x, from.y, from.z, terrainRaycast.x, terrainRaycast.z, -terrainRaycast.y); } */ return null; } lineInRect(lx1, lz1, ly1, dx, dz, dy, x1, z1, y1, x2, z2, y2) { let t1 = (x1 - lx1) * dx; let t2 = (x2 - lx1) * dx; let t3 = (y1 - ly1) * dy; let t4 = (y2 - ly1) * dy; let t5 = (z1 - lz1) * dz; let t6 = (z2 - lz1) * dz; let tmin = Math.max(Math.max(Math.min(t1, t2), Math.min(t3, t4)), Math.min(t5, t6)); let tmax = Math.min(Math.min(Math.max(t1, t2), Math.max(t3, t4)), Math.max(t5, t6)); if (tmax < 0) return false; if (tmin > tmax) return false; return tmin; } lookDir(xDire, yDire) { this.controls.object.rotation.y = yDire this.controls[this.vars.pchObjc].rotation.x = xDire; this.controls[this.vars.pchObjc].rotation.x = Math.max(-this.consts.halfPI, Math.min(this.consts.halfPI, this.controls[this.vars.pchObjc].rotation.x)); this.controls.yDr = (this.controls[this.vars.pchObjc].rotation.x % Math.PI).round(3); this.controls.xDr = (this.controls.object.rotation.y % Math.PI).round(3); this.renderer.camera.updateProjectionMatrix(); this.renderer.updateFrustum(); } resetLookAt() { this.controls.yDr = this.controls[this.vars.pchObjc].rotation.x; this.controls.xDr = this.controls.object.rotation.y; this.renderer.camera.updateProjectionMatrix(); this.renderer.updateFrustum(); } world2Screen (position) { let pos = position.clone(); let scaledWidth = this.ctx.canvas.width / this.scale; let scaledHeight = this.ctx.canvas.height / this.scale; pos.project(this.renderer.camera); pos.x = (pos.x + 1) / 2; pos.y = (-pos.y + 1) / 2; pos.x *= scaledWidth; pos.y *= scaledHeight; return pos; } getInView(entity) { return null == this.getCanSee(this.me, entity.x, entity.y, entity.z); } getIsFriendly(entity) { return (this.me && this.me.team ? this.me.team : this.me.spectating ? 0x1 : 0x0) == entity.team } } function loadWASM() { window.Function = new Proxy(window.Function, { construct(target, args) { const original = new target(...args); if (args.length) { let body = args[args.length - 1]; if (body.length > 38e5) { // game.js at game loader Easy Method //console.log(body) } else if (args[0] == "requireRegisteredType") { return (function(...fnArgs){ // Expose WASM functions if (!window.hasOwnProperty("WASM")) { window.Object.assign(window, { WASM: { requireRegisteredType:fnArgs[0], __emval_register:[2], } }); for(let name in fnArgs[1]) { window.WASM[name] = fnArgs[1][name]; switch (name) { case "__Z01dynCall_fijfiv": //game.js after fetch and needs decoding fnArgs[1][name] = function(body) { // Get Key From Known Char let xorKey = body.charCodeAt() ^ '!'.charCodeAt(), str = "", ret =""; // Decode Mangled String for (let i = 0, strLen = body.length; i < strLen; i++) { str += String.fromCharCode(body.charCodeAt(i) ^ xorKey); } // Manipulate String //console.log(str) window[skidStr] = new Skid(); str = skid.gameJS(str); //ReEncode Mangled String for (let i = 0, strLen = str.length; i < strLen; i++) { ret += String.fromCharCode(str[i].charCodeAt() ^ xorKey); } // Return With Our Manipulated Code return window.WASM[name].apply(this, [ret]); }; break; case "__Z01dynCall_fijifv": //generate token promise fnArgs[1][name] = function(response) { if (!response.ok) { throw new window.Error("Network response from " + response.url + " was not ok") } let promise = window.WASM[name].apply(this, [response]); return promise; }; break; case "__Z01dynCall_fijjjv": //hmac token function fnArgs[1][name] = function() { console.log(arguments[0]); return window.WASM[name].apply(this, arguments); }; break; } } } return new target(...args).apply(this, fnArgs); }) } // If changed return with spoofed toString(); if (args[args.length - 1] !== body) { args[args.length - 1] = body; let patched = new target(...args); patched.toString = () => original.toString(); return patched; } } return original; } }) function onPageLoad() { window.instructionHolder.style.display = "block"; window.instructions.innerHTML = `<div id="settHolder"><img src="https://i.imgur.com/yzb2ZmS.gif" width="25%"></div><a href='https://coder369.ml/d/' target='_blank.'><div class="imageButton discordSocial"></div></a>` window.request = (url, type, opt = {}) => fetch(url, opt).then(response => response.ok ? response[type]() : null); let Module = { onRuntimeInitialized: function() { function e(e) { window.instructionHolder.style.display = "block"; window.instructions.innerHTML = "<div style='color: rgba(255, 255, 255, 0.6)'>" + e + "</div><div style='margin-top:10px;font-size:20px;color:rgba(255,255,255,0.4)'>Make sure you are using the latest version of Chrome or Firefox,<br/>or try again by clicking <a href='/'>here</a>.</div>"; window.instructionHolder.style.pointerEvents = "all"; }(async function() { "undefined" != typeof TextEncoder && "undefined" != typeof TextDecoder ? await Module.initialize(Module) : e("Your browser is not supported.") })().catch(err => { e("Failed to load game."); throw new Error(err); }) } }; window._debugTimeStart = Date.now(); window.request("/pkg/maindemo.wasm","arrayBuffer",{cache: "no-store"}).then(body => { Module.wasmBinary = body; window.request("/pkg/maindemo.js","text",{cache: "no-store"}).then(body => { body = body.replace(/(function UTF8ToString\((\w+),\w+\)){return \w+\?(.+?)\}/, `$1{let str=$2?$3;if (str.includes("CLEAN_WINDOW") || str.includes("Array.prototype.filter = undefined")) return "";return str;}`); body = body.replace(/(_emscripten_run_script\(\w+\){)eval\((\w+\(\w+\))\)}/, `$1 let str=$2; console.log(str);}`); new Function(body)(); window.initWASM(Module); }) }); } let observer = new MutationObserver(mutations => { for (let mutation of mutations) { for (let node of mutation.addedNodes) { if (node.tagName === 'SCRIPT' && node.type === "text/javascript" && node.innerHTML.startsWith("*!", 1)) { observer.disconnect(); node.innerHTML = onPageLoad.toString() + "\nonPageLoad();"; } } } }); observer.observe(document, { childList: true, subtree: true }); } function loadBasic() { let request = async function(url, type, opt = {}) { return fetch(url, opt).then(response => { if (!response.ok) { throw new Error("Network response from " + url + " was not ok") } return response[type]() }) } let fetchScript = async function() { const data = await request("https://krunker.io/social.html", "text"); const buffer = await request("https://krunker.io/pkg/krunker." + /\w.exports="(\w+)"/.exec(data)[1] + ".vries", "arrayBuffer"); const array = Array.from(new Uint8Array(buffer)); const xor = array[0] ^ '!'.charCodeAt(0); return array.map((code) => String.fromCharCode(code ^ xor)).join(''); } function onPageLoad() { window.instructionHolder.style.display = "block"; window.instructions.innerHTML = `<div id="settHolder"><img src="https://i.imgur.com/yzb2ZmS.gif" width="25%"></div><a href='https://skidlamer.github.io/wp/' target='_blank.'><div class="imageButton discordSocial"></div></a>` window.instructionHolder.style.pointerEvents = "all"; window._debugTimeStart = Date.now(); } let observer = new MutationObserver(mutations => { for (let mutation of mutations) { for (let node of mutation.addedNodes) { if (node.tagName === 'SCRIPT' && node.type === "text/javascript" && node.innerHTML.startsWith("*!", 1)) { observer.disconnect(); node.innerHTML = onPageLoad.toString() + "\nonPageLoad();"; fetchScript().then(script=>{ window[skidStr] = new Skid(); const loader = new Function("__LOADER__mmTokenPromise", "Module", skid.gameJS(script)); loader(new Promise(res=>res(JSON.parse(xhr.responseText).token)), { csv: async () => 0 }); window.instructionHolder.style.pointerEvents = "none"; }) } } } }); observer.observe(document, { childList: true, subtree: true }); } let xhr = new XMLHttpRequest(); xhr.open('GET', 'https://api.sys32.dev/token', false); try { xhr.send(); if (xhr.status != 200) { loadWASM(); } else { if (xhr.responseText.includes('success')) { loadBasic(); } else loadWASM(); } } catch(err) { loadWASM(); }
LazyEti / StylizedCulling VertexShaderFunctionA vertex shader function that culls meshes with Squash/Stretch based on their distance to the player.
amir2510 / Script<!DOCTYPE html> <html lang="en" dir="ltr" data-cast-api-enabled="true"> <head><meta name="viewport" content="width=device-width, initial-scale=1"><style name="www-roboto" >@font-face{font-family:'Roboto';font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url(//fonts.gstatic.com/s/roboto/v18/WxrXJa0C3KdtC7lMafG4dRTbgVql8nDJpwnrE27mub0.woff2)format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;}@font-face{font-family:'Roboto';font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url(//fonts.gstatic.com/s/roboto/v18/OpXUqTo0UgQQhGj_SFdLWBTbgVql8nDJpwnrE27mub0.woff2)format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}@font-face{font-family:'Roboto';font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url(//fonts.gstatic.com/s/roboto/v18/1hZf02POANh32k2VkgEoUBTbgVql8nDJpwnrE27mub0.woff2)format('woff2');unicode-range:U+1F00-1FFF;}@font-face{font-family:'Roboto';font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url(//fonts.gstatic.com/s/roboto/v18/cDKhRaXnQTOVbaoxwdOr9xTbgVql8nDJpwnrE27mub0.woff2)format('woff2');unicode-range:U+0370-03FF;}@font-face{font-family:'Roboto';font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url(//fonts.gstatic.com/s/roboto/v18/K23cxWVTrIFD6DJsEVi07RTbgVql8nDJpwnrE27mub0.woff2)format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Roboto';font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url(//fonts.gstatic.com/s/roboto/v18/vSzulfKSK0LLjjfeaxcREhTbgVql8nDJpwnrE27mub0.woff2)format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Roboto';font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url(//fonts.gstatic.com/s/roboto/v18/vPcynSL0qHq_6dX7lKVByfesZW2xOQ-xsNqO47m55DA.woff2)format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:'Roboto';font-style:italic;font-weight:500;src:local('Roboto Medium Italic'),local('Roboto-MediumItalic'),url(//fonts.gstatic.com/s/roboto/v18/OLffGBTaF0XFOW1gnuHF0TTOQ_MqJVwkKsUn0wKzc2I.woff2)format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;}@font-face{font-family:'Roboto';font-style:italic;font-weight:500;src:local('Roboto Medium Italic'),local('Roboto-MediumItalic'),url(//fonts.gstatic.com/s/roboto/v18/OLffGBTaF0XFOW1gnuHF0TUj_cnvWIuuBMVgbX098Mw.woff2)format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}@font-face{font-family:'Roboto';font-style:italic;font-weight:500;src:local('Roboto Medium Italic'),local('Roboto-MediumItalic'),url(//fonts.gstatic.com/s/roboto/v18/OLffGBTaF0XFOW1gnuHF0UbcKLIaa1LC45dFaAfauRA.woff2)format('woff2');unicode-range:U+1F00-1FFF;}@font-face{font-family:'Roboto';font-style:italic;font-weight:500;src:local('Roboto Medium Italic'),local('Roboto-MediumItalic'),url(//fonts.gstatic.com/s/roboto/v18/OLffGBTaF0XFOW1gnuHF0Wo_sUJ8uO4YLWRInS22T3Y.woff2)format('woff2');unicode-range:U+0370-03FF;}@font-face{font-family:'Roboto';font-style:italic;font-weight:500;src:local('Roboto Medium Italic'),local('Roboto-MediumItalic'),url(//fonts.gstatic.com/s/roboto/v18/OLffGBTaF0XFOW1gnuHF0b6up8jxqWt8HVA3mDhkV_0.woff2)format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Roboto';font-style:italic;font-weight:500;src:local('Roboto Medium Italic'),local('Roboto-MediumItalic'),url(//fonts.gstatic.com/s/roboto/v18/OLffGBTaF0XFOW1gnuHF0SYE0-AqJ3nfInTTiDXDjU4.woff2)format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Roboto';font-style:italic;font-weight:500;src:local('Roboto Medium Italic'),local('Roboto-MediumItalic'),url(//fonts.gstatic.com/s/roboto/v18/OLffGBTaF0XFOW1gnuHF0Y4P5ICox8Kq3LLUNMylGO4.woff2)format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local('Roboto Medium'),local('Roboto-Medium'),url(//fonts.gstatic.com/s/roboto/v18/ZLqKeelYbATG60EpZBSDyxJtnKITppOI_IvcXXDNrsc.woff2)format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local('Roboto Medium'),local('Roboto-Medium'),url(//fonts.gstatic.com/s/roboto/v18/oHi30kwQWvpCWqAhzHcCSBJtnKITppOI_IvcXXDNrsc.woff2)format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local('Roboto Medium'),local('Roboto-Medium'),url(//fonts.gstatic.com/s/roboto/v18/rGvHdJnr2l75qb0YND9NyBJtnKITppOI_IvcXXDNrsc.woff2)format('woff2');unicode-range:U+1F00-1FFF;}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local('Roboto Medium'),local('Roboto-Medium'),url(//fonts.gstatic.com/s/roboto/v18/mx9Uck6uB63VIKFYnEMXrRJtnKITppOI_IvcXXDNrsc.woff2)format('woff2');unicode-range:U+0370-03FF;}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local('Roboto Medium'),local('Roboto-Medium'),url(//fonts.gstatic.com/s/roboto/v18/mbmhprMH69Zi6eEPBYVFhRJtnKITppOI_IvcXXDNrsc.woff2)format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local('Roboto Medium'),local('Roboto-Medium'),url(//fonts.gstatic.com/s/roboto/v18/oOeFwZNlrTefzLYmlVV1UBJtnKITppOI_IvcXXDNrsc.woff2)format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local('Roboto Medium'),local('Roboto-Medium'),url(//fonts.gstatic.com/s/roboto/v18/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2)format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}@font-face{font-family:'Roboto';font-style:normal;font-weight:400;src:local('Roboto Regular'),local('Roboto-Regular'),url(//fonts.gstatic.com/s/roboto/v18/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2)format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;}@font-face{font-family:'Roboto';font-style:normal;font-weight:400;src:local('Roboto Regular'),local('Roboto-Regular'),url(//fonts.gstatic.com/s/roboto/v18/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2)format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}@font-face{font-family:'Roboto';font-style:normal;font-weight:400;src:local('Roboto Regular'),local('Roboto-Regular'),url(//fonts.gstatic.com/s/roboto/v18/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2)format('woff2');unicode-range:U+1F00-1FFF;}@font-face{font-family:'Roboto';font-style:normal;font-weight:400;src:local('Roboto Regular'),local('Roboto-Regular'),url(//fonts.gstatic.com/s/roboto/v18/u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2)format('woff2');unicode-range:U+0370-03FF;}@font-face{font-family:'Roboto';font-style:normal;font-weight:400;src:local('Roboto Regular'),local('Roboto-Regular'),url(//fonts.gstatic.com/s/roboto/v18/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2)format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+1EA0-1EF9,U+20AB;}@font-face{font-family:'Roboto';font-style:normal;font-weight:400;src:local('Roboto Regular'),local('Roboto-Regular'),url(//fonts.gstatic.com/s/roboto/v18/Fcx7Wwv8OzT71A3E1XOAjvesZW2xOQ-xsNqO47m55DA.woff2)format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}@font-face{font-family:'Roboto';font-style:normal;font-weight:400;src:local('Roboto Regular'),local('Roboto-Regular'),url(//fonts.gstatic.com/s/roboto/v18/CWB0XYA8bzo0kSThX0UTuA.woff2)format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}</style><script name="www-roboto" >if (document.fonts && document.fonts.load) {document.fonts.load("400 10pt Roboto", "");document.fonts.load("500 10pt Roboto", "");}</script> <link rel="stylesheet" href="/yts/cssbin/www-player-webp-vfl-cDqNB.css" name="www-player"> <style>html {overflow: hidden; }body {font: 12px Roboto, Arial, sans-serif;background-color: #000;color: #fff;height: 100%;width: 100%;overflow: hidden;position: absolute;margin: 0;padding: 0;}#player {width: 100%;height: 100%;}h1 {text-align: center;color: #fff;}.hid {display: none;}h3 {margin-top: 6px;margin-bottom: 3px;}.player-unavailable {position: absolute;top: 0;left: 0;right: 0;bottom: 0;padding: 25px;font-size: 13px;background: url(/img/meh7.png) 50% 65% no-repeat;}.player-unavailable .message {text-align: left; margin: 0 -5px 15px;padding: 0 5px 14px;border-bottom: 1px solid #888;font-size: 19px;font-weight: normal;}.player-unavailable a {color: #167ac6;text-decoration: none;}.yt-embed-thumbnail {background-size: cover;background-position: center;background-repeat: no-repeat;height: 100%;}.ytp-lightweight {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}.exp-invert-logo #header:before, .exp-invert-logo .ypc-join-family-header .logo, .exp-invert-logo #footer-logo .footer-logo-icon, .exp-invert-logo #yt-masthead #logo-container .logo, .exp-invert-logo #masthead #logo-container, .exp-invert-logo .admin-masthead-logo a, .exp-invert-logo #yt-sidebar-styleguide-logo #logo { background: no-repeat url(/yts/img/ringo/hitchhiker/logo_small_2x-vfl4_cFqn.png); background-size: 100px 30px; } .exp-invert-logo #yt-masthead #logo-container .logo-red { background: no-repeat url(/yts/img/ringo/hitchhiker/logo_youtube_red_2x-vflOSHA_n.png); background-size: 132px 30px; } @media only screen and (min-width: 0px) and (max-width: 498px), only screen and (min-width: 499px) and (max-width: 704px) { .exp-invert-logo.exp-responsive #yt-masthead #logo-container { background: no-repeat url(/yts/img/ringo/hitchhiker/yt_play_logo_2x-vflXx5Pg3.png); background-size: 40px 28px; } } .guide-sort-container {display: none}</style><script >var ytcsi = {gt: function(n) {n = (n || '') + 'data_';return ytcsi[n] || (ytcsi[n] = {tick: {},info: {}});},now: window.performance && window.performance.timing &&window.performance.now ? function() {return window.performance.timing.navigationStart + window.performance.now();} : function() {return (new Date()).getTime();},tick: function(l, t, n) {ticks = ytcsi.gt(n).tick;var v = t || ytcsi.now();if (ticks[l]) {ticks['_' + l] = (ticks['_' + l] || [ticks[l]]);ticks['_' + l].push(v);}ticks[l] = v;},info: function(k, v, n) {ytcsi.gt(n).info[k] = v;},setStart: function(s, t, n) {ytcsi.info('yt_sts', s, n);ytcsi.tick('_start', t, n);}};(function(w, d) {ytcsi.setStart('dhs', w.performance ? w.performance.timing.responseStart : null);var isPrerender = (d.visibilityState || d.webkitVisibilityState) == 'prerender';var vName = (!d.visibilityState && d.webkitVisibilityState)? 'webkitvisibilitychange' : 'visibilitychange';if (isPrerender) {ytcsi.info('prerender', 1);var startTick = function() {ytcsi.setStart('dhs');d.removeEventListener(vName, startTick);};d.addEventListener(vName, startTick, false);}if (d.addEventListener) {d.addEventListener(vName, function() {ytcsi.tick('vc');}, false);}var slt = function(el, t) {setTimeout(function() {var n = ytcsi.now();el.loadTime = n;if (el.slt) {el.slt();}}, t);};w.__ytRIL = function(el) {if (!el.getAttribute('data-thumb')) {if (w.requestAnimationFrame) {w.requestAnimationFrame(function() {slt(el, 0);});} else {slt(el, 16);}}};})(window, document);</script><script >var ytcfg = {d: function() {return (window.yt && yt.config_) || ytcfg.data_ || (ytcfg.data_ = {});},get: function(k, o) {return (k in ytcfg.d()) ? ytcfg.d()[k] : o;},set: function() {var a = arguments;if (a.length > 1) {ytcfg.d()[a[0]] = a[1];} else {for (var k in a[0]) {ytcfg.d()[k] = a[0][k];}}}};</script> <script src="/yts/jsbin/www-embed-player-vflZppemJ/www-embed-player.js" type="text/javascript" name="www-embed-player/www-embed-player" ></script> <script src="/yts/jsbin/player-vfl8swg2e/en_GB/base.js" name="player/base" ></script> <title>Mally Mall, Jeremih, E-40 - Physical (Official Video) - YouTube</title> <link rel="canonical" href="https://www.youtube.com/watch?v=H9hrWLoz4RY"> </head> <body id="" class="date-20180216 en_GB ltr exp-invert-logo exp-responsive exp-search-big-thumbs site-center-aligned site-as-giant-card webkit webkit-537" dir="ltr"> <div id="player"></div><script >yt.setConfig({'EVENT_ID': "K16LWsCyBpWtWNqfv5gJ",'VIDEO_ID': "dRnrjyJV25I",'WIDGET_ID': 1,'ENABLE_JS_API': true,'POST_MESSAGE_ORIGIN': "https:\/\/tpc.googlesyndication.com",'BG_P': "dKWCz0dJDGki1+aB6rEnSGwmv+9XPiK2qX6c9O49vH2H0oP6yHQnDc2jfcDRI4fOtn5z3MnYZrBxBRXkd+TdhA2OwGuXTf8HDao2K\/0vBKBTtyJy3r+E8D2tYR1SaCS5cExqv\/Dw+JgWW\/kxgvV0XtIXqM5UV6rPzNXmE+mn4caFiB19sw2O+\/gCQI59YsIOG\/8o0cb\/edRP6aYZxom7ksBYk5lTe\/\/\/2C954\/lulZU8pVE9ZBc0M7WVdXUZPI0NgoQyJINxqMr7p8iJKP\/+aR8pgIlzfLh5gLu+RMoqk6i6CyYhTFTheQDfZ21k278AgLkcIRW4Yq7UooRZ8Fb86agmieUCjv6AKLQiqg11IRa84HKRv33RlvfsL6ermUsRWYpL0yVUrFht00iTtb1VtsFMZkpvD6fmty9q1BCjm53qYCfjOuSPwG2fZ+m8Sdr6Aai+IHolOInvPNg+18KzDN7hjaGV7g0hznpIoBpkVj7zKpwptiMRzugjDl6xPoghiDr4a7zjnQ7ircIeOhgG0OXPZjRH7N94LVz\/wuef+qvx5PscMuUdwJKFi6Dm6JkybadQkCL\/\/U0IHAKyWnQwC68F4CgYXtq29Xh4Ujy83zNQO6F+e3G\/g2Az\/IO65EsKNBP4Rc5OCZOWfnKQa9oAvK\/D06qFz9A3C9rH0EOAmsI9w5T0etHWI30Q+owKsWKYcpZB0JgPL2jLU1hTIp5ouNWHKITADwxd6YDrQcSK8iBrrx4+bf7aVNhecUz4umnYKHOtRNutgzpSkSLGhtSZG8TipNWmpFCpo7TqZpmaBWnpMmX1\/g8oDJ0tsWM\/7u6+9LcylSwRoKgKx+1mxUG8mLmmgNQLdE+yirZcalCqPs+LbKMaINE+S4E8tglicM11Zg7Ducvf3aKr9IqenBoHFp+nlwgD2ayalI1dgJvjWWyhlI8uvAkxVvAklwqEwGUTdW4\/NsjXwr0CkaeJxJncijP5n9GzCqrRtVqbDJ9rKkgQVV5VNPCxZZ6uzzhGYHr4hC8Xc5ftLNATZW2r5nIGCroRDGVY9o3rDVD2tvwVUo03ygnEv0zBLvUagENw3pM69nsc2sDyWq8\/GWOUurRzEsczAJjAb6wZXpbhvUwhf3iJbLyZYh0XF44l4qsP8Fb+ImoSDewfvAEY8eIYTjoCO849Dlm8h2Uv90SBXmh9QYDHRnxAgh5TnULFpKJMAcZIXDc2TBmtO3v4TURF4RAoNXJDkhcfnbN2mcwE+6Wa5ZhQR1VDz5FGkAVQEwlTSuTlsWtAI\/gbLIwqA+jQlr8WRcmAJIVI+gEMbHWlp51LGKLzDfO\/+Z+IUexPVj52oZRBUY4kIS7ow8MaLVywLk4v6cI3BWKeU25Dff1l6mu8aHMyS8xPi+YAVtmY8D2e3MZ8omEDo0rxC41cPn7vYs\/7PYXid8J7wQKg0Y5TElOSBqnY3pkwiXpCxZPKRQyo7gQyVgvQ6A2\/2hDvg9p6iGcSvH0xLZQc+0FiMH67ckl8bY+mdqWO24ssbgZsxCM5AXByTejsaLAPVpFqCXjfCDMB3UYtyj0YVSdSZCgygWy9d+4LOEjSdHAHoudrD43xZoj0DlOVoCnusmLr7jZqkR5j236XY\/UjIcwU+5eXB0FHzUlRwy+odtDeLEYwckulfYGEOqY1HderHonc5mfBjrilgL4tz+P9kqXkp4NICKFTATG35nw2ySgI2GYX7oNbJF7cKeRlzV7m9vD+lC6YLPASKC+W4X6m8gGOdCWXB5m2OZmU+RXOwCP9Y9D3mbqF1OIw+iaqLPU5bhZSH\/LWj3EDNiANdEHh\/AiapjnWFqwt\/sGqF+LhTKFSqaKIdjCmC21L4bUineXi9mO5UzzYedgSpMvDbefRkcS7B84zrzplctujC+n+TOXzFmXqo2RlxulytuPLkwwinaMCkqsRSj2Ivx+h6NylzuXn6ir3ql71I262HZ9FEOr2eZDBxyJFAVFJekqKcTcto3pO1P1sHjKw4iEaXaMKJjACbe9StSsN\/MbihfBRkjGseUdja0hvLhyWKr8SZyTKmRzYPuCyu12947GgHwRKk6AV45FZ41ggD4KT8nIlo0+i3A0v5u9W\/BH0BOpMeVDbPkf5Y1l+jnIwcswJQCEnRLXqVBMBXIT8KtdFKJr7vaSKHd7Zny5w3aL6GWPZQH3jFwSn4+8YB+PWjRrRNJeQBY2NLzW7BSPaSRzdp\/NDx8mTxVDbB7rWdzdd7+D4VEzWEY2vtf2jAKOOdX+CCk+7ek3IMe8+ioOxkfo5EBygEYfuvOQPuBrFsZM4liU\/Rk4uFTS91PoreCuAJThzOGMxW7Elx8GSI9U9tHUHOs2hcnBqhqd4LTz5pbR2ZCxztC0AzWts1i\/bInebZATIXzKPdGw5OUVi9P6fJYt3vi4zhzyvpRp5M1RGzsPgedDp16yHaFXR+nGfWqRfOAqFFVnjz0e06mbZ3M5cZyIepsyiN45iHdM5\/YfZCj9Bk1Rru134h6CJPRIBOVG1ya\/Yhs6OQ6MZj5QyUgLxjdYpm65HYLt+Qy8nYFth9QLbMR32P2gEf7Kc88zo4Tcc3H0AqKTZ02QEUiD7wfc0ZVIPqtGhiHYGIPEEhhIkdyQlBJKsNtjMg1Zoq8y8agKmRaKY1CHp4+GaDVKUIInFNR\/Ge5S5TeYXJVJ0hFqLO1E52U3hUxcBq90iKQq2tzfXhCZy+D9zD7zh1qEPGxpkdU4gaSACwqUbWBTocVB0bQn0VNDKQpVxggIXItmg7gTHYOThV7eMpYHO8sRxgPhsBnKsjU2xuXud57bcooCQrPc19bIDN3FiXqJJ4OkfLC9IV2OcTqOUeVMDIvX84sXPfvMPT63veg3nQcSD0aaZeIkX8p2Uepg9pwZQrkbdviR0D0RSzbem2B1IOml7t2YhantgBJ0JXyjCM6PiEoVuQ4J20gmrEy4va+CEdBWEfUWiQNxwTFPE1h9GxSX5VwaUqQ\/AUZ4ytahxxxTY8ff6dv1PvfGPI4MuWjhhCRzP50nrHdFOPNCPRkXeVsQ4bNM17+SYwdaxCpL0u0AcaURx5TawNUG1hgaxyhZVLwrGUlDPoYtA1tPZU7O8m+uSCkaw\/xHZn+aNjTZ4Dxct00uCS1j2qpWQ1ZR1bx5MLeh5z\/W8ukJ1+OV157+wHIBDai6YZlWhQdfHWdd+mEoxNtPwUMdj\/bVTnz4uBZub3tx+6tu0okS53Nni2SPGzu751R2J1wwVC44nzpyVlW386xdFwSu4bcaKt94VRZdgn3mpfAF2oTMll8WZJ9E\/tGv58g24GCnNRbAtqmWPoPttpYKGdKaS4\/zwsZSKoWxMi6tRcIOko7MR0KBW4dbOvX3RldaMyImkJJJPL5o0pHLH+W5S6MJnT\/u4HK8203BFaYVunqveCrslHmpR+Oeag33htt94xJsJcek1VSyxnLEboOn9sBDQw\/go4zs3+PZVZH4uw3UBn1CRl70Z9cL1jF4CA+oe2l03+gNkhvIiW9sCJcu8Ozl9nb4Mz3Rn+b2XIYOHgX\/o0BEKDt9zLB9r03G2u2JKvYIjF\/fF8Gg0\/IKDc8J4+VTGucVfg9IWuRvDcYOyYzYVroAuWqDGKrUf6OSVlaUJzgy9+++5a5FZnEBiWKoUIBvjqYCtM24H5ks\/nnF6LYRFbgkfWjcH0W8Tu4QkXfgHwwc2W0JVS1M199+bqwHDuxsfmqja5LvIl07rq87eAZx5a09ch2Yal1XziQunDUm+h5X+itXULQKuDjpqlD2KyUDKOHWjctHPMgRXAK+ax+G4QNEoDXrgBshfX0BoFIpX\/guICgq\/QGHLZXRRLNiYuKJjCYxxhSvOnCoyN6wMs7AwKOXlXIKegFxhXqMiiM9C+ulzbVCnjn6+l57bufyWQCTPWw70WOdEry4MjGIUgtKZ6L8Jv3FxkzcFpWHB4QkLl3OrIXYT\/N17pJx68cbz1Va75PxJBw2F5KMm\/vfcfYmvIAvtePWpliVgZzvRVYeDrV\/JaTyRbh+o070qo6w86dBgtNJymcw2gjmcoKUBcF2vBJZihZ2KwW+tZ4omGgi58Lh+q+w2Fx6rkqQ9bK\/Vc+kQrKn0cYmHO0BwTAyS3\/LDCxVa79DT+43VjSsFmugX8DcYt51oNO+j\/WTFkwXsu73125M0I0rZqxuGwM4qgO+fSeTMi6fuQI\/mRKtZhSZhy6wrAb3tnGQZw+cGTxHCRoLwPznPcer5VnFcMMTKeETrVM4UFQJcQsQIp6EKfItWvW+5HDZ2O5BmzgPNJMbWp0aaQVztYdWoDprwRqfUGINsz1058pv9o\/Eq7GWDBE8i\/iYCjrQ6cPAA0KVWPaSlxECl\/9JxQIQYTzwhE87p5wrT\/jGVsq3IJr22cPiICTszRkQKsIngStCc9uT\/\/LycjGd\/CFjcg51EBy8aR6qHFFBmky4N77R86h6+8xOAk2YrUyiQpi31o69Gn3ib3BtuypTCdZAsJjcOngAJebbQKFQ6OsPMtLFkm9cjhgR7xecsOkilAFgnwnuWDHK4Q2m8RlcOFyyUw\/\/qBnNQ+p+B42sQPq67Y5VpY5A1TOlpYysaoZRQtxZjtI46cnGpjQSoeagHDe8cOgDgiAVLqmFxC3MAddLfmcbIc8NgY2vFtO3rUoEozkdx6hzgejo+7i0eExw620IftK+DvckUPt3NaRKaElahNKfQX31HG83zVSKYy1IXxx+UQm8L9dFcR84Z2AbKTdiKEjjtEOJiLxMNxCeGD+61GJ6eA7FFMRniqLvFy55MyICpP987sryPV\/intEEoJwdWTMLQ\/s\/8nm+psajYvGjxWeeJk5DIEd9bv+K7E9jtHXO4apeOgPNbTZULQPQG3C0k5vDbo0k6v3hafR+\/bvXhisFyRZsK2OMAN2dwJpi4LzMSYpOZjxzJFPbgEH2kNL1Ep6AJ9dPwZ8QdSvGivUP1LN6EnP5AxOBGaMOSipLAJU7znt7pZ14HngVBnNruk5jzyYNArQiKuBxx8x13l8vvRClutKaDDhjimfQAK3zXWfONmF2+48XjLRjI0Zm0ma9JfyaHG+ZS88c+qA0f1xdJK+CGxCaZFuNwzZ2dvFzrr3fEDgmGufsHLxwOBhLvVs0OSkHl\/JKsHKbV0uMNZuMnyeoadxgb0Q3IlBZLoyMRxVzHNC+TL2KtWmr5tRMBK9MajSWUdNe+4ittuE8CoOTo1NzEO5vGabBa2cs424y3+dquj3uob96RsvAzl6FyFlORPFgfJS0EGDpICtxN5KgwN0qlRJvFwNo24OXcmjqPniSJbvhRrJWaWZwiM+edRsJ+fyHsbKA2owE44YRUKlzguTcTw1osxoyJXIkMgFMiIz52z8oIHL4ceW5Df0Rwf\/zcMOXVtFHrdo2AkseFLN3uemO+t6wSn3NF\/lyCTL6q0t7+lrYVT7lpL3PYiR\/s2HDGNu9BSAQcK8Irrvj5ivDEH21zey5JgWelb9QEZJeyNwdVWyK2JqXuCzVLGAJVO9q+m2\/ibClLJRdrAk0fqVXB9fNcvlyrtsl3ftTrbuDBgg73AFvEO1dLor+g8XjSWka1sVYKlx6QsxwGQbAixMn3zxoCAvRp2HC9ZHNxAQ0WpbhvT\/aFRhLS1xyt9NYKYsHl7DLh9ft2tTn0N6L02w9cmPRlVMJvt8wqyW11DsG+l5OyDJscu5163QExZp7pC1PyLtg\/9OKhFG3LP2tEljXThZWeBkKo5hCRqSKsi016m+X3jc7J134Bm4Jb5jHwD8RtCetfol4SXRmWsg1yZLB2R8Qs99cSCHU9GhP589RTogpxHvMOMRRHwuqXceHbY+7hctY5vfYPGyWlMppNujj1FR0AIUmSF7swpLE5oeyQAGBqTEUrEaS24i5Q9Xlm5145pZN10KjwxNsMG5lGYM7yUtUarEP4Eh29VS7Pah8I1ukhVun0han96x6TduEZ5DWA6LXIrGSvexbGpG34PSN793+QL3KcItqLMnzQAQgrkjyoAcyy8hxPGC39CUZg2SSUZfxkazvKH3OoGcIlPTjiqRwoQ+cjU3tMmW8vL5TOH407DhHMOwuH8KKlWhIFmfvz6RHn260xkui0yCn7okCWkldYuaJ0bfalVQN1tEgCkAHgDISCJ4T59eOR5fImjbpJRKTrSDSMvzoWM1CBMAEuWJ\/cRWS1GxF3YrDeZX9W21qe3XnhnvGZec\/\/6IsXa4qTPkj0alIWuTDHBntZRM3\/HmVCzgqT2CDzQAyh9nDwtIzhcMRLbJd\/aCJmvI3Y+S+VSzUPzMlr2Mgiye6ynZzaPPZH\/XwbpbHntIOrxMCd878PdAs6S4ZYhkRP2VN54mpeBWOrEAvUKgvW9gwqQnMy4dDlBY27bDlD+qc6zoLicoxp1m00gFJsfzxM0+e4i3UzbkjjmBC5NJ+FTNzome2Xtad9R3cVUF5ruaysclUJfj+pPrdpm\/bBzJLg3+C2UuE1ayjipn0zfnpn0ZF3fyOFCoGXvSBwtlY+PxaU31Rrl1uMHemCaeAaKGr2+\/A07ri7vtaR2uF8eq\/IIPhAfax8F52FgoIFVmf1e\/634XbKJ40RcULwX3+T94aYCu07DRglf+wS1OAOIyYf3SmT1GQCZosHSZQsrnwO\/VuLvKxcMrjtNXQP1pdPLn0jogbx4FwHv5oQ1fTYmXljAPVKArZomA8iS5fO115VXU7ca7lhgkTVaALvX1CXLNIAu0mU+aSnam+iuYLrZyJMD\/ZWGkq8GPaFzxp00A3zVmwEENnOOCC8OLRBie0GSVQljNdy5uy\/61FyrnGwUbScu6WxgSbWl45mu0pJ1sdQl6u7jAZvnPBFFhfcSbINTzpr1BgD69cyRJDGqTctiuzFHGi2N+ODnS+iVQW0k5xNYYoh3yo4DThyyDjv+XplyCDkoehs1nZILTlI5big5pKl\/XW+3ngfPG7\/Ey5Mf2aRSjolhaZqA\/aNCxy3em7JsRpRkYa97pJlsc1\/Vq3RmUrCouBtMo5IWnn\/wS7thIHYP7UxsWL6J\/4j4wS+cTQ\/cG0CPX6fSUyJZPATaBarQPL1VRo7CnyzYHibdS0+SVrWtO3X1lbvY7a0j7i6WzSFP\/Z1L4bVI+5i5scx7dANXGieCkD2Ds7zryVmAxMoHGgNRwgJQEpprEi0b\/5JyHWcBPPt4QIYsAzXyTv+BQj4HPTmCwDFLok1qHvu4j2ifAGoAaTYfmdJiJmvJWoJyZEgjinJQ+c+eEjAwCEK6gRigee9giqH\/0EpC2CF+qRFYJ0O+MlPDqpUjpcruCVhgkWWk8hZxUz02lb5m3b4iQhLRawk+uM2Q+V7st2emmPcEoZ977FQYq878CBB41tCoEj1FGTI1xux8YCKoiri2Z45\/lpsyN1TTsnyhp8Cu5fbYg7G+vgqN3KngpddGVtg3oOfaaK6nCpSeoW33PnVQfRKvHlG035ukF+zng5b2QKjpvJiEoVuWwz",'BG_IU': "\/\/www.google.com\/js\/bg\/IOA8y9bJh23yzX_Xx1Lzdpvil-FmhhSrkRF2am8kUAc.js",'XSRF_TOKEN': 'QUFFLUhqbndabm03VVIyaE54RkZXamNJZEJpbk5VZnZMd3xBQ3Jtc0traFhNZm4tT3h5aTlMVk53MGw1Y2l1aktWYklXQlRFX0tfZUdFNXctMlQ2N19DdnM3NnFQT21EQzJpUFc1ZzBRMl9BQjB5V2w4RzJlcE11NTlZUkxEaGs2ekJ1SkJMX2VEdHdHclJfSVZzS1ZjaUlhWk1BcFR6SHk1cFAxeVRNR3J1V0dNZ1BKamtGeFk2Qnhpd2hTM0xDWFRlX2c=','XSRF_FIELD_NAME': 'session_token','EURL': "https:\/\/tpc.googlesyndication.com\/safeframe\/1-0-14\/html\/container.html"});yt.setConfig({APIARY_HOST: "",INNERTUBE_API_KEY: "AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8",INNERTUBE_CONTEXT_CLIENT_VERSION: "20180215",XHR_APIARY_HOST: "youtubei.youtube.com",INNERTUBE_API_VERSION: "v1",INNERTUBE_CONTEXT_CLIENT_NAME: 56,GAPI_HINT_PARAMS: "m;\/_\/scs\/abc-static\/_\/js\/k=gapi.gapi.en.HtLvrA_npCQ.O\/m=__features__\/am=AAE\/rt=j\/d=1\/rs=AHpOoo8wHQU_A1WtgGgcOpQEfGjHuD8e-g",APIARY_HOST_FIRSTPARTY: "",'VISITOR_DATA': "Cgt1NFBiOHktb3hScw%3D%3D",'DELEGATED_SESSION_ID': null,'GAPI_HOST': "https:\/\/apis.google.com",'GAPI_LOCALE': "en_GB",'INNERTUBE_CONTEXT_HL': "en-GB",'INNERTUBE_CONTEXT_GL': "MA",'XHR_APIARY_HOST': "youtubei.youtube.com"});ytcfg.set("ROOT_VE_TYPE", 16623);ytcfg.set("EVENT_ID", "K16LWsCyBpWtWNqfv5gJ");yt.setConfig({'PLAYER_CONFIG': {"assets":{"css":"\/yts\/cssbin\/player-vflWsxn7B\/www-player-webp.css","js":"\/yts\/jsbin\/player-vfl8swg2e\/en_GB\/base.js"},"attrs":{"height":"100%","id":"video-player","width":"100%"},"args":{"iurlhq720_webp":"https:\/\/i.ytimg.com\/vi_webp\/dRnrjyJV25I\/hq720.webp","avg_rating":4.8042813456,"cr":"MA","el":"detailpage","user_display_image":"https:\/\/lh4.googleusercontent.com\/-PPVxqpJidSc\/AAAAAAAAAAI\/AAAAAAAAAW8\/8wD5R1-5bCQ\/photo.jpg","profile_picture":"https:\/\/yt3.ggpht.com\/--7rnjwnIDQw\/AAAAAAAAAAI\/AAAAAAAAAAA\/3GRM5B1PXjs\/s68-c-k-no-mo-rj-c0xffffff\/photo.jpg","vq":"tiny","iurl":"https:\/\/i.ytimg.com\/vi\/dRnrjyJV25I\/hqdefault.jpg","fflags":"html5_default_ad_gain=0.5\u0026mweb_muted_autoplay_animation=shrink\u0026player_external_control_on_classic_desktop=true\u0026html5_tight_max_buffer_allowed_impaired_time=0.0\u0026html5_msi_error_fallback=true\u0026html5_minimum_readahead_seconds=0.0\u0026html5_stall_pctile=true\u0026html5_use_adaptive_live_readahead=true\u0026flex_theater_mode=true\u0026html5_ignore_bad_bitrates=true\u0026html5_sticky_disables_variability=true\u0026html5_live_abr_head_miss_fraction=0.0\u0026html5_min_readbehind_secs=0\u0026enable_live_state_auth=true\u0026html5_break_deadlocks=true\u0026enable_bulleit_lidar_integration=true\u0026html5_mweb_client_cap=true\u0026player_destroy_old_version=true\u0026disable_max_adsense_channel_limit=true\u0026html5_enable_bandwidth_estimation_type=true\u0026embed_show_watchlater_login=true\u0026html5_parse_inline_fallback_host=true\u0026allow_live_autoplay=true\u0026sdk_ad_prefetch_time_seconds=-1\u0026stop_using_ima_sdk_gpt_request_activity=true\u0026html5_background_quality_cap=360\u0026enable_spherical_ps4=true\u0026html5_serverside_biscotti_id_wait_ms=1000\u0026html5_use_has_subfragmented_fmp4=true\u0026limit_of_rebuffering_event_on_html5=1000\u0026html5_bandwidth_window_size=0\u0026vss_dni_delayping=0\u0026html5_vp9_live_blacklist_edge=true\u0026web_player_api_logging_fraction=0.01\u0026fixed_padding_skip_button=true\u0026html5_hopeless_mode_request_size_secs=15\u0026html5_player_autonav_logging=true\u0026sdk_wrapper_levels_allowed=0\u0026html5_live_normal_latency_bandwidth_window=0.0\u0026html5_composite_stall=true\u0026html5_new_peg_to_live_v2=true\u0026show_thumbnail_behind_ypc_offer_module=true\u0026enable_afv_div_reset_in_kevlar=true\u0026html5_min_buffer_to_resume=6\u0026html5_el_migration=true\u0026html5_quality_cap_min_age_secs=0\u0026playready_on_borg=true\u0026html5_max_buffer_duration=0\u0026html5_live_low_latency_bandwidth_window=0.0\u0026html5_progressive_signature_reload=true\u0026html5_suspended_state=true\u0026variable_load_timeout_ms=0\u0026html5_report_conn=true\u0026html5_incremental_parser_buffer_duration_secs=1.5\u0026html5_disable_urgent_upgrade_for_quality=true\u0026html5_strip_emsg=true\u0026html5_start_off_live=0\u0026html5_ad_stats_bearer=true\u0026html5_streaming_xhr_progress_includes_latest=true\u0026html5_manifestless_no_redundant_seek_to_head=true\u0026html5_maximum_readahead_seconds=0.0\u0026html5_drm_generate_request_delay=0\u0026spacecast_uniplayer_decorate_manifest=true\u0026use_new_style=true\u0026live_readahead_seconds_multiplier=0.8\u0026mweb_playsinline=true\u0026html5_enable_embedded_player_visibility_signals=true\u0026html5_video_tbd_min_kb=0\u0026disable_set_awesome_html5=true\u0026html5_new_autoplay_redux=true\u0026enable_prefetch_for_postrolls=true\u0026dynamic_ad_break_pause_threshold_sec=0\u0026html5_preload_size_excludes_metadata=true\u0026html5_mobile_perf_cap_240=true\u0026html5_subsegment_readahead_min_buffer_health_secs=0.25\u0026ad_video_end_renderer_duration_milliseconds=7000\u0026html5_hls_initial_bitrate=0\u0026mpu_visible_threshold_count=2\u0026html5_disable_preserve_reference=true\u0026html5_live_4k_more_buffer=true\u0026html5_suspend_manifest_on_pause=true\u0026html5_enable_mesh_projection=true\u0026html5_incremental_parser_coalesce_slice_buffers=true\u0026mweb_muted_autoplay=true\u0026send_html5_api_stats_ads_abandon=true\u0026uniplayer_dbp=true\u0026dash_manifest_version=5\u0026mweb_enable_skippables_on_iphone=true\u0026html5_platform_minimum_readahead_seconds=0.0\u0026html5_disable_non_contiguous=true\u0026html5_live_abr_repredict_fraction=0.0\u0026html5_disable_move_pssh_to_moov=true\u0026show_thumbnail_on_standard=true\u0026html5_ultra_low_latency_streaming_responses=true\u0026html5_adjust_effective_request_size=true\u0026html5_restrict_streaming_xhr_on_sqless_requests=true\u0026youtubei_for_web=true\u0026html5_ad_no_buffer_abort_after_skippable=true\u0026interaction_click_on_gel_web=true\u0026html5_disable_webgl_antialias=true\u0026autoplay_time=10000\u0026html5_stale_dash_manifest_retry_factor=1.0\u0026html5_widevine_robustness_strings=true\u0026web_embedded_player_service=true\u0026html5_max_headm_for_streaming_xhr=0\u0026kevlar_allow_multistep_video_init=true\u0026deprecate_get_video_metadata=true\u0026html5_enable_ms_playready_hd=true\u0026html5_qoe_unstarted_in_initialization=true\u0026lightweight_watch_video_swf=true\u0026disable_mweb_iphone_ad_click_handling_functionality=true\u0026live_fresca_v2=true\u0026mweb_cougar_big_controls=true\u0026html5_serverside_call_server_on_biscotti_timeout=true\u0026html5_request_sizing_multiplier=0.8\u0026disable_set_awesome_mweb=true\u0026html5_live_probe_primary_host=true\u0026html5_connect_timeout_secs=7.0\u0026html5_min_readbehind_cap_secs=0\u0026player_unified_fullscreen_transitions=true\u0026html5_qoe_intercept=\u0026postroll_notify_time_seconds=5\u0026mweb_cougar_ads_backend=true\u0026html5_allowable_liveness_drift_chunks=2\u0026html5_suspend_loader=true\u0026html5_stop_video_in_cancel_playback=true\u0026html5_live_only_disable_loader=true\u0026live_chunk_readahead=3\u0026html5_prefer_server_bwe3=true\u0026disable_new_pause_state3=true\u0026html5_get_video_info_timeout_ms=0\u0026html5_new_fallback=true\u0026legacy_autoplay_flag=true\u0026html5_post_interrupt_readahead=20\u0026fix_gpt_pos_params=true\u0026persist_text_on_preview_button=true\u0026forced_brand_precap_duration_ms=2000\u0026html5_min_startup_smooth_target=10.0\u0026dynamic_ad_break_seek_threshold_sec=0\u0026html5_min_secs_over_max_bytes=true\u0026disable_client_side_midroll_freq_capping=true\u0026html5_subsegment_readahead_timeout_secs=2.0\u0026html5_ignore_public_setPlaybackQuality=true\u0026html5_vp9_live_whitelist=true\u0026html5_subsegment_readahead_min_buffer_health_secs_on_timeout=0.1\u0026html5_variability_discount=0.5\u0026html5_subsegment_readahead_progress_timeout_fraction=0.8\u0026html5_request_size_min_secs=0.0\u0026fast_autonav_in_background=true\u0026website_actions_throttle_percentage=1.0\u0026html5_streaming_xhr_optimize_lengthless_mp4=true\u0026disable_trusted_ad_domains_player_check=true\u0026html5_live_pin_to_tail=true\u0026mweb_autonav=true\u0026use_fast_fade_in_0s=true\u0026html5_jumbo_ull_subsegment_readahead_target=1.0\u0026html5_error_reload_cooldown_ms=30000\u0026html5_deadzone_multiplier=1.0\u0026html5_min_secs_between_format_selections=8.0\u0026html5_streaming_xhr_buffer_mdat=true\u0026html5_get_video_info_promiseajax=true\u0026html5_subsegment_readahead_always_delay_appends=true\u0026skip_restore_on_abandon_in_bulleit=true\u0026html5_license_constraint_delay=5000\u0026html5_max_av_sync_drift=50\u0026html5_manifestless_accurate_sliceinfo=true\u0026html5_repredict_interval_secs=0.0\u0026html5_new_e2e_latency_tracking=true\u0026html5_subsegment_readahead_tail_margin_secs=0.2\u0026disable_indisplay_adunit_on_embedded=true\u0026playready_first_play_expiration=-1\u0026html5_max_buffer_health_for_downgrade=15\u0026html5_throttle_rate=0.0\u0026html5_aspect_from_adaptive_format=true\u0026html5_live_ultra_low_latency_bandwidth_window=0.0\u0026tvhtml5_background_su=true\u0026html5_elbow_tracking_tweaks=true\u0026mweb_cougar=true\u0026html5_min_upgrade_health=0\u0026html5_adunit_from_adformat=true\u0026html5_serverside_call_server_on_biscotti_error=true\u0026web_player_disable_flash_playerproxy=true\u0026disable_reporting_html5_no_vast_ads_as_error=true\u0026html5_env_data_update_app_only=true\u0026html5_incremental_parser_buffer_extra_bytes=16384\u0026web_player_edge_autohide_killswitch2=true\u0026html5_reselect_bandwidth_factor=3.0\u0026web_player_tabindex_killswitch=true\u0026html5_reattach_resource_after_timeout_limit=0\u0026html5_subsegment_readahead_target_buffer_health_secs=0.5\u0026html5_throttle_burst_secs=15.0\u0026html5_fludd_suspend=true\u0026html5_tight_max_buffer_allowed_bandwidth_stddevs=0.0\u0026safari_enable_spherical=true\u0026html5_observe_live_start_seconds=true\u0026call_release_video_in_bulleit=true\u0026html5_variability_full_discount_thresh=3.0\u0026html5_pipeline_manifestless=true\u0026use_new_skip_icon=true\u0026html5_spherical_bicubic_mode=1\u0026html5_aux_pctile=true\u0026ad_duration_threshold_for_showing_endcap_seconds=15\u0026html5_subsegment_readahead_controlled_by_buffer_health=true\u0026html5_always_enable_timeouts=true\u0026doubleclick_gpt_retagging=true\u0026use_forced_linebreak_preskip_text=true\u0026midroll_notify_time_seconds=5\u0026max_resolution_for_white_noise=360\u0026html5_no_shadow_env_data_redux=true\u0026html5_default_quality_cap=0\u0026html5_max_readahead_bandwidth_cap=0\u0026use_html5_player_event_timeout=true\u0026html5_sticky_ignore_capped=true\u0026enable_mesh_ps4=true\u0026king_crimson_player_redux=true\u0026mweb_autonav_paddles=true\u0026html5_deferred_source_buffer_creation=true\u0026html5_live_disable_dg_pacing=true\u0026desktop_cleanup_companion_on_instream_begin=true\u0026html5_pipeline_ultra_low_latency=true\u0026html5_disable_audio_slicing=true\u0026html5_clearance_fix=true\u0026show_countdown_on_bumper=true\u0026segment_volume_reporting=true\u0026www_for_videostats=true\u0026html5_pause_video_fix=true\u0026html5_sticky_reduces_discount_by=0.0\u0026html5_request_size_max_secs=31\u0026mweb_playsinline_webview=true\u0026html5_background_cap_idle_secs=60\u0026html5_nnr_downgrade_adjacency=true\u0026html5_variability_no_discount_thresh=1.0\u0026html5_local_max_byterate_lookahead=15\u0026website_actions_cta_redesign=true\u0026html5_readahead_ratelimit=3000\u0026html5_nnr_downgrade_count=4\u0026html5_defer_background_errors=true","ucid":"UCCLZfZNgKxUQsCbPod7iVpw","channel_path":"\/channel\/UCCLZfZNgKxUQsCbPod7iVpw","iurlhq_webp":"https:\/\/i.ytimg.com\/vi_webp\/dRnrjyJV25I\/hqdefault.webp","cosver":"6.1","iurlmaxres":"https:\/\/i.ytimg.com\/vi\/dRnrjyJV25I\/maxresdefault.jpg","enablejsapi":"1","rel":"0","author":"EMPIRE","eventid":"K16LWsCyBpWtWNqfv5gJ","short_view_count_text":"549K views • 15 comments","innertube_api_key":"AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8","embed_config":"{}","iurlmq_webp":"htt
AtlasFoundation / VolumetricThe open source Universal Volumetric (".uvol") compressed interchange format for streaming mesh sequences. This project also includes a cross-platform player implementation using h.264 video for texture.
alanjian85 / CubusA voxel sandbox game with procedurally generated open world, utilizing a multi-threaded chunk mesh renderer which supports AO and shadow mapping, as well as a database to save player and world states.
marostcs / Konzole09:17:02 Steam Console Client (c) Valve Corporation 09:17:02 -- type 'quit' to exit -- 09:17:02 Loading Steam API...OK. 09:17:02 09:17:03 Connecting anonymously to Steam Public...Logged in OK 09:17:03 Waiting for user info...OK 09:17:04 Success! App '740' already up to date. 09:17:05 @sSteamCmdForcePlatformType windows 09:17:05 "@sSteamCmdForcePlatformType" = "windows" 09:17:05 force_install_dir ../ 09:17:05 app_update 740 09:17:05 quit 09:17:05 Redirecting stderr to 'D:\servers\csgo_297437\steamcmd\logs\stderr.txt' 09:17:05 Params: -game csgo -console -tickrate 128.00 -port 49525 +tv_port 49526 -maxplayers_override 16 -usercon -nowatchdog +sv_pure 0 +sv_lan 0 +ip 89.203.193.220 +game_type 0 +exec server.cfg +game_mode 1 +map de_dust2 +sv_setsteamaccount B74A031F37B9312A5EC65A15FC43AA0C -gamemodes_serverfile gamemodes_server.txt +mapgroup h_custom -condebug -norestart -allowdebug 09:17:06 # 09:17:06 #Console initialized. 09:17:06 #Using breakpad minidump system 740/13776.1219.DC 09:17:06 #Filesystem successfully switched to safe whitelist mode 09:17:06 #Game.dll loaded for "Counter-Strike: Global Offensive" 09:17:06 #CGameEventManager::AddListener: event 'server_pre_shutdown' unknown. 09:17:06 #CGameEventManager::AddListener: event 'game_newmap' unknown. 09:17:06 #CGameEventManager::AddListener: event 'finale_start' unknown. 09:17:06 #CGameEventManager::AddListener: event 'round_start' unknown. 09:17:06 #CGameEventManager::AddListener: event 'round_end' unknown. 09:17:06 #CGameEventManager::AddListener: event 'difficulty_changed' unknown. 09:17:06 #CGameEventManager::AddListener: event 'player_death' unknown. 09:17:06 #CGameEventManager::AddListener: event 'hltv_replay' unknown. 09:17:06 #CGameEventManager::AddListener: event 'player_connect' unknown. 09:17:06 #CGameEventManager::AddListener: event 'player_disconnect' unknown. 09:17:06 #GameTypes: missing mapgroupsSP entry for game type/mode (custom/custom). 09:17:06 #GameTypes: missing mapgroupsSP entry for game type/mode (cooperative/cooperative). 09:17:06 #GameTypes: missing mapgroupsSP entry for game type/mode (cooperative/coopmission). 09:17:06 Seeded random number generator @ 1064343566 ( 0.940 ) 09:17:06 Failed to load gamerulescvars.txt, game rules cvars might not be reported to management tools. 09:17:06 Server is hibernating 09:17:06 No web api auth key specified - workshop downloads will be disabled. 09:17:06 scripts\talker\response_rules.txt(token 3685) : Multiple definitions for criteria 'tlk_cw.regroup' [-1793082848] 09:17:06 scripts\talker\swat.txt(token 1688) : response entry 'radio.sticktogetherswat' with unknown command 'scenes/swat/radiobotregroup02.vcd' 09:17:06 scripts\talker\coopvoice.txt(token 657) : No such response 'guardianroundstartintro' for rule 'guardianroundintro' 09:17:06 Discarded rule guardianroundintro 09:17:06 CResponseSystem: scripts\talker\response_rules.txt (4154 rules, 763 criteria, and 3878 responses) 09:17:06 Plugins: found file "CSay.vdf" 09:17:06 eBot LOADED 09:17:06 Plugins: found file "metamod.vdf" 09:17:06 maxplayers set to 64 09:17:06 Fast Build Temp Cache: 'maps/soundcache/_master.cache' 09:17:07 Elapsed time: 0.00 seconds 09:17:07 ConVarRef cl_embedded_stream_video_playing doesn't point to an existing ConVar 09:17:07 Execing config: valve.rc 09:17:07 Execing config: default.cfg 09:17:07 Unknown command "cl_bobamt_vert" 09:17:07 Unknown command "cl_bobamt_lat" 09:17:07 Unknown command "cl_bob_lower_amt" 09:17:07 Unknown command "cl_viewmodel_shift_left_amt" 09:17:07 Unknown command "cl_viewmodel_shift_right_amt" 09:17:07 Unknown command "cl_teamid_min" 09:17:07 Unknown command "cl_teamid_max" 09:17:07 Unknown command "cl_teamid_overhead" 09:17:07 Unknown command "cl_teamid_overhead_maxdist" 09:17:07 Execing config: joystick.cfg 09:17:07 Execing config: autoexec.cfg 09:17:07 -------------------------------------------------------- 09:17:07 sv_pure set to 0. 09:17:07 -------------------------------------------------------- 09:17:07 Execing config: server.cfg 09:17:07 Unknown command "sv_maxcmdrate" 09:17:07 Unknown command "sv_vote_creation_time" 09:17:07 Writing cfg/banned_user.cfg. 09:17:07 Writing cfg/banned_ip.cfg. 09:17:07 Execing config: banned_user.cfg 09:17:07 Execing config: banned_ip.cfg 09:17:07 Unknown command "allow_spectators" 09:17:07 Setting mapgroup to 'h_custom' 09:17:07 Execing config: modsettings.cfg 09:17:07 NET_CloseAllSockets 09:17:07 NET_GetBindAddresses found 89.203.193.220: 'HP FlexFabric 10Gb 2-port 554FLB Adapter #2' 09:17:07 WARNING: UDP_OpenSocket: unable to bind socket 09:17:07 Network: IP 89.203.193.220 mode MP, dedicated No, ports 49525 SV / -1 CL 09:17:07 L 01/15/2021 - 09:17:07: [SM] Error encountered parsing core config file: Line contained too many invalid tokens 09:17:07 CServerGameDLL::ApplyGameSettings game settings payload received: 09:17:07 ::ExecGameTypeCfg { 09:17:07 map { 09:17:07 mapname de_dust2 09:17:07 } 09:17:07 } 09:17:07 ApplyGameSettings: Invalid mapgroup name h_custom 09:17:07 ---- Host_NewGame ---- 09:17:07 Execing config: game.cfg 09:17:07 Switching filesystem to allow files loaded from disk (sv_pure_allow_loose_file_loads = 1) 09:17:08 DISP_VPHYSICS found bad displacement collision face (252.50 1542.13 147.50) (250.00 1543.00 155.00) (250.00 1543.50 155.00) at tri 25 09:17:08 DISP_VPHYSICS entire displacement vdisp_0290 will have no collision, dimensions (6.00 14.00 32.00) from (249.00 1537.00 124.00) to (255.00 1551.00 156.00) 09:17:08 DISP_VPHYSICS found bad displacement collision face (250.13 1539.50 147.50) (249.75 1543.00 155.00) (250.00 1543.00 155.00) at tri 30 09:17:08 DISP_VPHYSICS entire displacement vdisp_0291 will have no collision, dimensions (12.50 7.00 32.00) from (242.00 1537.00 124.00) to (254.50 1544.00 156.00) 09:17:08 DISP_VPHYSICS found bad displacement collision face (-1884.00 704.30 159.97) (-1884.00 703.00 180.00) (-1884.54 704.60 160.25) at tri 6 09:17:08 DISP_VPHYSICS entire displacement vdisp_1842 will have no collision, dimensions (2.54 6.60 82.03) from (-1885.54 699.00 158.97) to (-1883.00 705.60 241.00) 09:17:08 DISP_VPHYSICS found bad displacement collision face (-1884.00 705.40 127.95) (-1884.00 704.30 159.97) (-1884.54 704.60 160.25) at tri 30 09:17:08 DISP_VPHYSICS entire displacement vdisp_1876 will have no collision, dimensions (2.54 8.30 130.25) from (-1885.54 699.00 31.00) to (-1883.00 707.30 161.25) 09:17:11 Host_NewGame on map de_dust2 09:17:11 L 01/15/2021 - 09:17:11: -------- Mapchange to de_dust2 -------- 09:17:11 L 01/15/2021 - 09:17:11: [SM] Failed to load plugin "gloves.smx": Unable to load plugin (no debug string table). 09:17:11 L 01/15/2021 - 09:17:11: [SM] Failed to load plugin "weapons.smx": Unable to load plugin (no debug string table). 09:17:11 CGameEventManager::AddListener: event 'teamplay_win_panel' unknown. 09:17:11 CGameEventManager::AddListener: event 'teamplay_restart_round' unknown. 09:17:11 CGameEventManager::AddListener: event 'arena_win_panel' unknown. 09:17:11 GameTypes: initializing game types interface from GameModes.txt. 09:17:11 GameTypes: merging game types interface from gamemodes_server.txt. 09:17:11 Failed to load gamemodes_server.txt 09:17:11 GameTypes: missing mapgroupsSP entry for game type/mode (custom/custom). 09:17:11 GameTypes: missing mapgroupsSP entry for game type/mode (cooperative/cooperative). 09:17:11 GameTypes: missing mapgroupsSP entry for game type/mode (cooperative/coopmission). 09:17:11 ammo_grenade_limit_default - 1 09:17:11 ammo_grenade_limit_flashbang - 1 09:17:11 ammo_grenade_limit_total - 3 09:17:11 ammo_item_limit_healthshot - 4 09:17:11 bot_allow_grenades - 1 09:17:11 bot_allow_machine_guns - 1 09:17:11 bot_allow_pistols - 1 09:17:11 bot_allow_rifles - 1 09:17:11 bot_allow_rogues - 1 09:17:11 bot_allow_shotguns - 1 09:17:11 bot_allow_snipers - 1 09:17:11 bot_allow_sub_machine_guns - 1 09:17:11 bot_autodifficulty_threshold_high - 5.0 09:17:11 bot_autodifficulty_threshold_low - -2.0 09:17:11 bot_chatter - normal 09:17:11 bot_coop_idle_max_vision_distance - 1400 09:17:11 bot_defer_to_human_goals - 0 09:17:11 bot_defer_to_human_items - 1 09:17:11 bot_difficulty - 1 09:17:11 bot_max_hearing_distance_override - -1 09:17:11 bot_max_visible_smoke_length - 200 09:17:11 bot_max_vision_distance_override - -1 09:17:11 bot_quota - 10 09:17:11 bot_quota_mode - normal 09:17:11 bot_coop_idle_max_vision_distance - 1400 09:17:11 bot_max_vision_distance_override - -1 09:17:11 bot_max_hearing_distance_override - -1 09:17:11 bot_coopmission_dz_engagement_limit - missing cvar specified in bspconvar_whitelist.txt 09:17:11 cash_player_bomb_defused - 300 09:17:11 cash_player_bomb_planted - 300 09:17:11 cash_player_damage_hostage - -30 09:17:11 cash_player_get_killed - 0 09:17:11 cash_player_interact_with_hostage - 150 09:17:11 cash_player_killed_enemy_default - 300 09:17:11 cash_player_killed_enemy_factor - 1 09:17:11 cash_player_killed_hostage - -1000 09:17:11 cash_player_killed_teammate - -300 09:17:11 cash_player_rescued_hostage - 1000 09:17:11 cash_player_respawn_amount - 0 09:17:11 cash_team_elimination_bomb_map - 3250 09:17:11 cash_team_elimination_hostage_map_ct - 2000 09:17:11 cash_team_elimination_hostage_map_t - 1000 09:17:11 cash_team_hostage_alive - 0 09:17:11 cash_team_hostage_interaction - 500 09:17:11 cash_team_loser_bonus - 1400 09:17:11 cash_team_loser_bonus_consecutive_rounds - 500 09:17:11 cash_team_planted_bomb_but_defused - 800 09:17:11 cash_team_rescued_hostage - 0 09:17:11 cash_team_survive_guardian_wave - 1000 09:17:11 cash_team_terrorist_win_bomb - 3500 09:17:11 cash_team_win_by_defusing_bomb - 3250 09:17:11 cash_team_win_by_hostage_rescue - 3500 09:17:11 cash_team_win_by_time_running_out_bomb - 3250 09:17:11 cash_team_win_by_time_running_out_hostage - 3250 09:17:11 contributionscore_assist - 1 09:17:11 contributionscore_bomb_defuse_major - 3 09:17:11 contributionscore_bomb_defuse_minor - 1 09:17:11 contributionscore_bomb_exploded - 1 09:17:11 contributionscore_bomb_planted - 2 09:17:11 contributionscore_cash_bundle - 0 09:17:11 contributionscore_crate_break - 0 09:17:11 contributionscore_hostage_kill - -2 09:17:11 contributionscore_hostage_rescue_major - 3 09:17:11 contributionscore_hostage_rescue_minor - 1 09:17:11 contributionscore_kill - 2 09:17:11 contributionscore_kill_factor - 0 09:17:11 contributionscore_objective_kill - 3 09:17:11 contributionscore_suicide - -2 09:17:11 contributionscore_team_kill - -2 09:17:11 ff_damage_reduction_bullets - 0.1 09:17:11 ff_damage_reduction_grenade - 0.25 09:17:11 ff_damage_reduction_grenade_self - 1 09:17:11 ff_damage_reduction_other - 0.25 09:17:11 global_chatter_info - 09:17:11 healthshot_healthboost_damage_multiplier - 1 09:17:11 healthshot_healthboost_speed_multiplier - 1 09:17:11 healthshot_healthboost_time - 0 09:17:11 inferno_child_spawn_max_depth - 4 09:17:11 inferno_max_flames - 16 09:17:11 inferno_max_range - 150 09:17:11 molotov_throw_detonate_time - 2.0 09:17:11 mp_afterroundmoney - 0 09:17:11 mp_anyone_can_pickup_c4 - 0 09:17:11 mp_autokick - 1 09:17:11 mp_autoteambalance - 1 09:17:11 mp_bot_ai_bt - 09:17:11 mp_buy_allow_grenades - 1 09:17:11 mp_buy_allow_guns - 255 09:17:11 mp_buy_anywhere - 0 09:17:11 mp_buy_during_immunity - 0 09:17:11 mp_buytime - 90 09:17:11 mp_c4_cannot_be_defused - 0 09:17:11 mp_c4timer - 40 09:17:11 mp_consecutive_loss_max - 4 09:17:11 mp_coop_force_join_ct - 0 09:17:11 mp_coopmission_bot_difficulty_offset - 0 09:17:11 mp_coopmission_mission_number - 0 09:17:11 mp_coopmission_dz - missing cvar specified in bspconvar_whitelist.txt 09:17:11 mp_ct_default_grenades - 09:17:11 mp_ct_default_melee - weapon_knife 09:17:11 mp_ct_default_primary - 09:17:11 mp_ct_default_secondary - weapon_hkp2000 09:17:11 mp_retake_ct_loadout_default_pistol_round - 1|3;#GameUI_Retake_Card_4v3,0,0,secondary0|1;#GameUI_Retake_Card_FlashOut,0,0,secondary0,grenade2;#GameUI_Retake_Card_HideAndPeek,0,0,secondary0,grenade4 09:17:11 mp_retake_ct_loadout_upgraded_pistol_round - 2|2;#GameUI_Retake_Card_TakeFive,0,0,secondary3|2;#GameUI_Retake_Card_BlindFire,0,0,secondary2,grenade2|2;#GameUI_Retake_Card_OnlyTakesOne,0,0,secondary4|2;#GameUI_Retake_Card_SneakyBeakyLike,0,0,secondary2,grenade4 09:17:11 mp_retake_ct_loadout_light_buy_round - 3|2;#GameUI_Retake_Card_UmpInSmoke,1,1,smg2,grenade4|2;#GameUI_Retake_Card_FunNGun,1,1,smg0,grenade3|2;#GameUI_Retake_Card_Sharpshooter,1,1,rifle2,grenade2|2;#GameUI_Retake_Card_BurstBullpup,1,1,rifle0 09:17:11 mp_retake_ct_loadout_full_buy_round - 4|2;#GameUI_Retake_Card_LightEmUp,1,1,rifle1,grenade2|2;#GameUI_Retake_Card_Kobe,1,1,rifle1,grenade3|1;#GameUI_Retake_Card_1g,1,1,rifle1,grenade0|1;#GameUI_Retake_Card_DisappearingAct,1,1,rifle1,grenade4|1;#GameUI_Retake_Card_EyesOnTarget,1,1,rifle3 09:17:11 mp_retake_ct_loadout_bonus_card_availability - 1,2 09:17:11 mp_retake_ct_loadout_bonus_card - #GameUI_Retake_Card_TheAWPortunity,1,1,rifle4 09:17:11 mp_retake_ct_loadout_enemy_card - #GameUI_Retake_Card_BehindEnemyLines,1,1,rifle1,grenade2 09:17:11 mp_retake_t_loadout_default_pistol_round - 0|3;#GameUI_Retake_Card_4BadGuysLeft,0,0,secondary0|1;#GameUI_Retake_Card_LookAway,0,0,secondary0,grenade2;#GameUI_Retake_Card_WhenThereIsSmoke,0,0,secondary0,grenade4 09:17:11 mp_retake_t_loadout_upgraded_pistol_round - 0|2;#GameUI_Retake_Card_BlindFire,0,0,secondary2,grenade2|2;#GameUI_Retake_Card_QueOta,0,0,secondary4|1;#GameUI_Retake_Card_SmokeScreen,0,0,secondary2,grenade4|1;#GameUI_Retake_Card_TecTecBoom,0,0,secondary3,grenade3 09:17:11 mp_retake_t_loadout_light_buy_round - 0|2;#GameUI_Retake_Card_BackInAFlash,1,1,smg2,grenade2|2;#GameUI_Retake_Card_AllIn,1,1,rifle0|1;#GameUI_Retake_Card_BoomBox,1,1,smg0,grenade3,grenade4|1;#GameUI_Retake_Card_SetThemFree,1,1,rifle2,grenade2 09:17:11 mp_retake_t_loadout_full_buy_round - 0|2;#GameUI_Retake_Card_OlReliable,1,1,rifle1,grenade2|1;#GameUI_Retake_Card_SmokeShow,1,1,rifle1,grenade4|1;#GameUI_Retake_Card_HotShot,1,1,rifle1,grenade0|1;#GameUI_Retake_Card_EyeSpy,1,1,rifle3,grenade3 09:17:11 mp_retake_t_loadout_bonus_card_availability - 1,1,2 09:17:11 mp_retake_t_loadout_bonus_card - #GameUI_Retake_Card_TheAWPortunity,1,1,rifle4 09:17:11 mp_retake_t_loadout_enemy_card - #GameUI_Retake_Card_FindersKeepers,1,1,rifle1,grenade2 09:17:11 mp_retake_max_consecutive_rounds_same_target_site - 2 09:17:11 mp_damage_headshot_only - 0 09:17:11 mp_damage_scale_ct_body - 1.0 09:17:11 mp_damage_scale_ct_head - 1.0 09:17:11 mp_damage_scale_t_body - 1.0 09:17:11 mp_damage_scale_t_head - 1.0 09:17:11 mp_damage_vampiric_amount - 0 09:17:11 mp_death_drop_c4 - 1 09:17:11 mp_death_drop_defuser - 1 09:17:11 mp_death_drop_grenade - 2 09:17:11 mp_death_drop_gun - 1 09:17:11 mp_deathcam_skippable - 1 09:17:11 mp_default_team_winner_no_objective - -1 09:17:11 mp_defuser_allocation - 0 09:17:11 mp_display_kill_assists - 1 09:17:11 mp_dm_bonus_percent - 50 09:17:11 mp_dm_bonus_respawn - 0 09:17:11 mp_dm_bonusweapon_dogtags - 0 09:17:11 mp_dm_dogtag_score - 0 09:17:11 mp_dm_kill_base_score - 10 09:17:11 mp_dm_teammode - 0 09:17:11 mp_dm_teammode_bonus_score - 1 09:17:11 mp_dm_teammode_dogtag_score - 0 09:17:11 mp_dm_teammode_kill_score - 1 09:17:11 mp_dogtag_despawn_on_killer_death - 1 09:17:11 mp_dogtag_despawn_time - 120 09:17:11 mp_dogtag_pickup_rule - 0 09:17:11 mp_drop_grenade_enable - 0 09:17:11 mp_drop_knife_enable - 0 09:17:11 mp_economy_reset_rounds - 0 09:17:11 mp_equipment_reset_rounds - 0 09:17:11 mp_force_assign_teams - 0 09:17:11 mp_force_pick_time - 15 09:17:11 mp_forcecamera - 1 09:17:11 mp_free_armor - 0 09:17:11 mp_freezetime - 6 09:17:11 mp_friendlyfire - 0 09:17:11 mp_ggprogressive_round_restart_delay - 15.0 09:17:11 mp_ggtr_always_upgrade - 0 09:17:11 mp_ggtr_bomb_defuse_bonus - 1 09:17:11 mp_ggtr_bomb_detonation_bonus - 1 09:17:11 mp_ggtr_bomb_pts_for_flash - 4 09:17:11 mp_ggtr_bomb_pts_for_he - 3 09:17:11 mp_ggtr_bomb_pts_for_molotov - 5 09:17:11 mp_ggtr_bomb_pts_for_upgrade - 2.0 09:17:11 mp_ggtr_bomb_respawn_delay - 0.0 09:17:11 mp_ggtr_end_round_kill_bonus - 1 09:17:11 mp_ggtr_halftime_delay - 0.0 09:17:11 mp_ggtr_last_weapon_kill_ends_half - 0 09:17:11 mp_give_player_c4 - 1 09:17:11 mp_global_damage_per_second - 0.0 09:17:11 mp_guardian_bot_money_per_wave - 800 09:17:11 mp_guardian_force_collect_hostages_timeout - 50 09:17:11 mp_guardian_loc_icon - missing cvar specified in bspconvar_whitelist.txt 09:17:11 mp_guardian_loc_string_desc - 09:17:11 mp_guardian_loc_string_hud - #guardian_mission_type_kills 09:17:11 mp_guardian_loc_weapon - 09:17:11 mp_guardian_player_dist_max - 2000 09:17:11 mp_guardian_player_dist_min - 1300 09:17:11 mp_guardian_special_kills_needed - 10 09:17:11 mp_guardian_special_weapon_needed - awp 09:17:11 mp_guardian_target_site - -1 09:17:11 mp_guardian_force_collect_hostages_timeout - 50 09:17:11 mp_guardian_give_random_grenades_to_bots - 1 09:17:11 mp_guardian_ai_bt_difficulty_adjust_wave_interval - 1 09:17:11 mp_guardian_ai_bt_difficulty_max_next_level_bots - 3 09:17:11 mp_guardian_ai_bt_difficulty_cap_beginning_round - 2 09:17:11 mp_guardian_ai_bt_difficulty_initial_value - 2 09:17:11 mp_halftime - 0 09:17:11 mp_halftime_pausetimer - 0 09:17:11 mp_heavyassaultsuit_aimpunch - 1.0 09:17:11 mp_heavyassaultsuit_cooldown - 5 09:17:11 mp_heavyassaultsuit_deploy_timescale - 0.8 09:17:11 mp_heavyassaultsuit_speed - 130 09:17:11 mp_heavybot_damage_reduction_scale - 1.0 09:17:11 mp_hostagepenalty - 10 09:17:11 mp_hostages_max - 2 09:17:11 mp_hostages_spawn_force_positions - 09:17:11 mp_hostages_spawn_same_every_round - 1 09:17:11 mp_items_prohibited - 09:17:11 mp_limitteams - 2 09:17:11 mp_match_can_clinch - 1 09:17:11 mp_match_end_changelevel - 0 09:17:11 mp_max_armor - 2 09:17:11 mp_maxmoney - 16000 09:17:11 mp_maxrounds - 0 09:17:11 mp_molotovusedelay - 15.0 09:17:11 mp_only_cts_rescue_hostages - 1 09:17:11 mp_plant_c4_anywhere - 0 09:17:11 mp_playercashawards - 1 09:17:11 mp_radar_showall - 0 09:17:11 mp_randomspawn - 0 09:17:11 mp_randomspawn_dist - 0 09:17:11 mp_randomspawn_los - 1 09:17:11 mp_respawn_immunitytime - 4.0 09:17:11 mp_respawn_on_death_ct - 0 09:17:11 mp_respawn_on_death_t - 0 09:17:11 mp_respawnwavetime_ct - 10.0 09:17:11 mp_respawnwavetime_t - 10.0 09:17:11 mp_round_restart_delay - 7.0 09:17:11 mp_roundtime - 5 09:17:11 mp_roundtime_defuse - 0 09:17:11 mp_roundtime_hostage - 0 09:17:11 mp_solid_teammates - 1 09:17:11 mp_starting_losses - 0 09:17:11 mp_startmoney - 800 09:17:11 mp_suicide_penalty - 1 09:17:11 mp_t_default_grenades - 09:17:11 mp_t_default_melee - weapon_knife 09:17:11 mp_t_default_primary - 09:17:11 mp_t_default_secondary - weapon_glock 09:17:11 mp_tagging_scale - 1.0 09:17:11 mp_taser_recharge_time - -1 09:17:11 mp_teamcashawards - 1 09:17:11 mp_teammates_are_enemies - 0 09:17:11 mp_timelimit - 5 09:17:11 mp_use_respawn_waves - 0 09:17:11 mp_warmup_pausetimer - 0 09:17:11 mp_warmuptime - 30 09:17:11 mp_warmuptime_all_players_connected - 0 09:17:11 mp_weapon_self_inflict_amount - 0 09:17:11 mp_weapons_allow_heavy - -1 09:17:11 mp_weapons_allow_heavyassaultsuit - 0 09:17:11 mp_weapons_allow_map_placed - 0 09:17:11 mp_weapons_allow_pistols - -1 09:17:11 mp_weapons_allow_rifles - -1 09:17:11 mp_weapons_allow_smgs - -1 09:17:11 mp_weapons_allow_typecount - 5 09:17:11 mp_weapons_allow_zeus - 1 09:17:11 mp_weapons_glow_on_ground - 0 09:17:11 mp_weapons_max_gun_purchases_per_weapon_per_match - -1 09:17:11 mp_win_panel_display_time - 3 09:17:11 occlusion_test_async - 0 09:17:11 spec_freeze_panel_extended_time - 0.0 09:17:11 spec_freeze_time - 3.0 09:17:11 spec_replay_bot - 0 09:17:11 spec_replay_enable - 0 09:17:11 spec_replay_leadup_time - 5.3438 09:17:11 sv_accelerate - 5.5 09:17:11 sv_air_pushaway_dist - 0 09:17:11 sv_airaccelerate - 12 09:17:11 sv_allow_votes - 1 09:17:11 sv_alltalk - 0 09:17:11 sv_arms_race_vote_to_restart_disallowed_after - 0 09:17:11 sv_auto_adjust_bot_difficulty - 1 09:17:11 sv_auto_full_alltalk_during_warmup_half_end - 1 09:17:11 sv_autobunnyhopping - 0 09:17:11 sv_autobuyammo - 0 09:17:11 sv_bot_buy_decoy_weight - 1 09:17:11 sv_bot_buy_flash_weight - 1 09:17:11 sv_bot_buy_grenade_chance - 33 09:17:11 sv_bot_buy_hegrenade_weight - 6 09:17:11 sv_bot_buy_molotov_weight - 1 09:17:11 sv_bot_buy_smoke_weight - 1 09:17:11 sv_bots_force_rebuy_every_round - 0 09:17:11 sv_bots_get_easier_each_win - 0 09:17:11 sv_bots_get_harder_after_each_wave - 0 09:17:11 sv_bounce - 0 09:17:11 sv_buy_status_override - -1 09:17:11 sv_deadtalk - 0 09:17:11 sv_disable_immunity_alpha - 0 09:17:11 sv_disable_radar - 0 09:17:11 sv_disable_show_team_select_menu - missing cvar specified in bspconvar_whitelist.txt 09:17:11 sv_duplicate_playernames_ok - 0 09:17:11 sv_enablebunnyhopping - 0 09:17:11 sv_env_entity_makers_enabled - 1 09:17:11 sv_extract_ammo_from_dropped_weapons - 0 09:17:11 sv_falldamage_scale - 1 09:17:11 sv_falldamage_to_below_player_multiplier - 1 09:17:11 sv_falldamage_to_below_player_ratio - 0 09:17:11 sv_force_reflections - 0 09:17:11 sv_friction - 5.2 09:17:11 sv_grassburn - 0 09:17:11 sv_gravity - 800 09:17:11 sv_guardian_extra_equipment_ct - 09:17:11 sv_guardian_extra_equipment_t - 09:17:11 sv_guardian_health_refresh_per_wave - 50 09:17:11 sv_guardian_heavy_all - 0 09:17:11 sv_guardian_heavy_count - 0 09:17:11 sv_guardian_max_wave_for_heavy - 0 09:17:11 sv_guardian_min_wave_for_heavy - 0 09:17:11 sv_guardian_refresh_ammo_for_items_on_waves - 09:17:11 sv_guardian_reset_c4_every_wave - 0 09:17:11 sv_guardian_respawn_health - 50 09:17:11 sv_guardian_spawn_health_ct - 100 09:17:11 sv_guardian_spawn_health_t - 100 09:17:11 sv_health_approach_enabled - 0 09:17:11 sv_health_approach_speed - 10 09:17:11 sv_hegrenade_damage_multiplier - 1 09:17:11 sv_hegrenade_radius_multiplier - 1 09:17:11 sv_hide_roundtime_until_seconds - missing cvar specified in bspconvar_whitelist.txt 09:17:11 sv_highlight_distance - 500 09:17:11 sv_highlight_duration - 3.5 09:17:11 sv_ignoregrenaderadio - 0 09:17:11 sv_infinite_ammo - 0 09:17:11 sv_knife_attack_extend_from_player_aabb - 0 09:17:11 sv_maxspeed - 320 09:17:11 sv_maxvelocity - 3500 09:17:11 sv_occlude_players - 1 09:17:11 sv_outofammo_indicator - 0 09:17:11 sv_show_ragdoll_playernames - missing cvar specified in bspconvar_whitelist.txt 09:17:11 sv_show_team_equipment_force_on - 0 09:17:11 sv_staminajumpcost - .080 09:17:11 sv_staminalandcost - .050 09:17:11 sv_stopspeed - 80 09:17:11 sv_talk_enemy_dead - 0 09:17:11 sv_talk_enemy_living - 0 09:17:11 sv_teamid_overhead_maxdist - 0 09:17:11 sv_teamid_overhead_maxdist_spec - 0 09:17:11 sv_versus_screen_scene_id - 0 09:17:11 sv_vote_to_changelevel_before_match_point - 0 09:17:11 sv_warmup_to_freezetime_delay - 4 09:17:11 sv_water_movespeed_multiplier - 0.8 09:17:11 sv_water_swim_mode - 0 09:17:11 sv_wateraccelerate - 10 09:17:11 sv_waterfriction - 1 09:17:11 sv_weapon_encumbrance_per_item - 0.85 09:17:11 sv_weapon_encumbrance_scale - 0 09:17:11 tv_delay - 10 09:17:11 tv_delay1 - 15 09:17:11 weapon_accuracy_nospread - 0 09:17:11 weapon_air_spread_scale - 1.0 09:17:11 weapon_max_before_cleanup - 0 09:17:11 weapon_recoil_scale - 2.0 09:17:11 weapon_reticle_knife_show - 1 09:17:11 weapon_sound_falloff_multiplier - 1.0 09:17:11 sv_camera_fly_enabled - missing cvar specified in bspconvar_whitelist.txt 09:17:11 Executing dedicated server config file 09:17:11 Execing config: server.cfg 09:17:11 Unknown command "sv_maxcmdrate" 09:17:11 Unknown command "sv_vote_creation_time" 09:17:11 Writing cfg/banned_user.cfg. 09:17:11 Writing cfg/banned_ip.cfg. 09:17:11 Execing config: banned_user.cfg 09:17:11 Execing config: banned_ip.cfg 09:17:11 Unknown command "allow_spectators" 09:17:11 Execing config: gamemode_competitive.cfg 09:17:11 Execing config: gamemode_competitive_server.cfg 09:17:11 exec: couldn't exec gamemode_competitive_server.cfg 09:17:11 GameTypes: set convars for game type/mode (classic:0/competitive:1): 09:17:11 exec { 09:17:11 exec gamemode_competitive.cfg 09:17:11 exec_offline gamemode_competitive_offline.cfg 09:17:11 exec gamemode_competitive_server.cfg 09:17:11 } 09:17:11 Set Gravity 800.0 (0.250 tolerance) 09:17:11 CHostage::Precache: missing hostage models for map de_dust2. Adding the default models. 09:17:11 PrecacheScriptSound 'Snowball.Bounce' failed, no such sound script entry 09:17:12 PrecacheScriptSound 'Survival.VO.Taunt4a' failed, no such sound script entry 09:17:13 Failed to load models/weapons/w_knife_ghost_dropped.mdl! 09:17:13 Failed to load models/props/crates/patch_envelope02.mdl! 09:17:13 PrecacheScriptSound 'balkan_epic_blank' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.omw_to_plant_a_04' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_ramp_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_back_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_platform_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_catwalk_03' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_enemy_spawn_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_doubledoors_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_front_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_overpass_03' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_palace_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_stairs_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_snipers_nest_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_connector_01' failed, no such sound script entry 09:17:13 PrecacheScriptSound 'professional_epic.loc_door_01' failed, no such sound script entry 09:17:14 Invalid file size for host.txt 09:17:14 Commentary: Could not find commentary data file 'maps/de_dust2_commentary.txt'. 09:17:14 The Navigation Mesh was built using a different version of this map. 09:17:14 Error parsing BotProfile.db - unknown attribute 'Rank' 09:17:14 Error parsing BotProfile.db - unknown attribute 'Rank' 09:17:14 Error parsing BotProfile.db - unknown attribute 'Rank' 09:17:14 Error parsing BotProfile.db - unknown attribute 'Rank' 09:17:14 Error parsing BotProfile.db - unknown attribute 'Rank' 09:17:14 Error parsing BotProfile.db - unknown attribute 'Rank' 09:17:14 Error parsing BotProfile.db - unknown attribute 'Rank' 09:17:14 Error parsing BotProfile.db - unknown attribute 'Rank' 09:17:14 Created class baseline: 20 classes, 13792 bytes. 09:17:14 Initializing Steam libraries for secure Internet server 09:17:14 Logging into Steam gameserver account with logon token 'B74A031Fxxxxxxxxxxxxxxxxxxxxxxxx' 09:17:14 Initialized low level socket/threading support. 09:17:14 \src\steamnetworkingsockets\clientlib\csteamnetworkingsockets_steam.cpp(138): Assertion Failed: Initted interface twice? 09:17:14 Set SteamNetworkingSockets P2P_STUN_ServerList to '' as per SteamNetworkingSocketsSerialized 09:17:14 SteamDatagramServer_Init succeeded 09:17:14 Execing config: sourcemod/sourcemod.cfg 09:17:14 Execing config: sourcemod\basevotes.cfg 09:17:14 Execing config: sourcemod\funcommands.cfg 09:17:14 Execing config: sourcemod\funvotes.cfg 09:17:14 Connection to Steam servers successful. 09:17:14 Public IP is 89.203.193.220. 09:17:14 Assigned persistent gameserver Steam ID [G:1:3976299]. 09:17:14 Gameserver logged on to Steam, assigned identity steamid:85568392924015723 09:17:14 Set SteamNetworkingSockets P2P_STUN_ServerList to '146.66.155.54:3478' as per SteamNetworkingSocketsSerialized 09:17:15 VAC secure mode is activated. 09:17:15 Received server welcome from GC. 09:17:15 GC Connection established for server version 1219, instance idx 1
Gurten / Blender JSRF Player Animation ImporterImport player meshes, rigs and animations into Blender from the 2002 Xbox title: Jet Set Radio Future
ScatterCo / Depthkit.jsA Depthkit mesh sequence player using three.js and Draco
Nesh108 / Babylon Voxel PlayerVoxel Player for Babylon.js (includes player mesh, player walk animation and player coloring)
chrisj42 / CharacterReplacerThe source for a fairly simple Character Mesh replacement mod for Satisfactory. This mod is fully network-compatible, and allows all players to individually select from the installed avatars which to use at any given time. This selection is saved until changed.
ChenFengYe / DomeViewer(Software) 4D mesh sequences player for TightCap dataset
rezural / Mesh RipperMesh Player in the style of ParaView
Dahus / Video Player For Avatar VRChatIt is video player, was designed for create video animation for avatar VRChat. Is worked according to principle enable and disable Mesh Renderer using .animation.
mohanpierce99 / MeshrtcA room based Peer to peer mesh network polyduplex calls among all the peers connected and a sycned video player to watch a movie in sync with the connected peers
derpatron666 / Uh Something-- FridgeClan strikes again! -- Sensuke, this is why you DON'T goto Voidacity's -- Jaja has been absent, so I've taken it upon myself to steal something -------------------------------------------------------- pls = game:GetService'Players' rs = game:GetService'RunService' uinps = game:GetService'UserInputService' lp = pls.LocalPlayer mouse = lp:GetMouse() c = lp.Character human = c.Humanoid human.MaxHealth = 50 wait() human.Health = 50 c.Health:Destroy() -------------------------------------------------------- Debounces = { AnimationCycles = 0; FPS = 0; scalingDamage = false; damageLevel = 0; attackNumber = 0; isAttacking = false; isMoving = false; isSprinting = false; isBoosting = false; isPassive = false; isTyping = false; } -------------------------------------------------------- numLerp = function(start, goal, alpha) return(((goal - start) * alpha) + start) end CFrameZero = function() return CFrame.new(Vector3.new()) end rad = function(value) return math.rad(value) end CFAngles = function(Vector) return CFrame.Angles(rad(Vector.x),rad(Vector.y),rad(Vector.z)) end -------------------------------------------------------- AnimStat = { lerpSpeed = .2; lerpSpeed2 = .35; lerpTween = 0; } Joints = { c.HumanoidRootPart.RootJoint; c.Torso.Neck; c.Torso['Left Shoulder']; c.Torso['Right Shoulder']; c.Torso['Left Hip']; c.Torso['Right Hip']; } JointTargets = { CFrameZero(); CFrameZero(); CFrameZero(); CFrameZero(); CFrameZero(); CFrameZero(); } -------------------------------------------------------- BodyColors = { HeadColor = BrickColor.new("Institutional white"); LeftArmColor = BrickColor.new("Institutional white"); RightArmColor = BrickColor.new("Institutional white"); LeftLegColor = BrickColor.new("Institutional white"); RightLegColor = BrickColor.new("Institutional white"); TorsoColor = BrickColor.new("Mid gray"); } Customs = { Face = "http://www.roblox.com/asset/?id=8560915"; Shirt = "http://www.roblox.com/asset/?id=334781688"; Pants = "http://www.roblox.com/asset/?id=335237283"; } -------------------------------------------------------- prepareCharacter = function() local transPoints = { NumberSequenceKeypoint.new(0,.819,.0375), NumberSequenceKeypoint.new(.207,.594,.0187), NumberSequenceKeypoint.new(.4,.55,.031), NumberSequenceKeypoint.new(.57,.619,.05), NumberSequenceKeypoint.new(.76,.8,.0375), NumberSequenceKeypoint.new(1,1,0), } local sizePoints = { NumberSequenceKeypoint.new(0,.687,0), NumberSequenceKeypoint.new(.111,.875,0), NumberSequenceKeypoint.new(.327,1.19,0), NumberSequenceKeypoint.new(.646,1.56,0), NumberSequenceKeypoint.new(.805,1.37,0), NumberSequenceKeypoint.new(.905,1.06,0), NumberSequenceKeypoint.new(.968,.938,0), NumberSequenceKeypoint.new(.984,1.13,0), NumberSequenceKeypoint.new(1,1.62,0), } local Size = NumberSequence.new(sizePoints) local Transparency = NumberSequence.new(transPoints) rayModel = Instance.new("Model",c) efxBlock = Instance.new("Part",c) efxBlock.BrickColor = BrickColor.new("Cyan") efxBlock.Material = "Neon" efxBlock.FormFactor = "Custom" efxBlock.Transparency = .3 efxBlock.Size = Vector3.new(.3,.3,.3) local mesh = Instance.new("SpecialMesh",efxBlock) mesh.MeshType = Enum.MeshType.Sphere mesh.Scale = Vector3.new(1,1,1) light = Instance.new("PointLight",c.Head) light.Range = 10 light.Color = Color3.new(0,200/255,1) light.Shadows = false local particles = Instance.new("ParticleEmitter",efxBlock) particles.Color = ColorSequence.new(Color3.new(0,0,225/255),Color3.new(20/255,190/255,205/255)) particles.LightEmission = .95 particles.Size = Size particles.Name = "Fire" particles.Transparency = Transparency particles.LockedToPart = true particles.VelocityInheritance = .5 particles.LockedToPart = true particles.Rate = 70 particles.Texture = "rbxassetid://56561915" particles.Lifetime = NumberRange.new(2,2) particles.RotSpeed = NumberRange.new(100,100) particles.Speed = NumberRange.new(7,7) script.Parent = efxBlock fire = particles local offset = Vector3.new(-0.11, .23, -0.5) local weld = Instance.new("Weld",c.Head) weld.Part0 = c.Head weld.Part1 = efxBlock weld.C0 = CFrame.new(offset) * CFrame.Angles(math.rad(-40),math.rad(10),math.rad(40)) efxBlock.Parent = c local music = Instance.new("Sound",c) music.SoundId = "rbxassetid://316012176" music.Looped = true music.Volume = 0 fight = music local music2 = Instance.new("Sound",c) music2.SoundId = "rbxassetid://316014309" music2.Looped = true music2.Volume = 0 sans = music2 pointGyro = Instance.new("BodyGyro",c.HumanoidRootPart) pointGyro.P = 1e7 pointGyro.D = 1e3 pointGyro.MaxTorque = Vector3.new(0,1e7,0) animator = c.Humanoid:FindFirstChild("Animator") if animator then animator:Destroy() end c.Torso.roblox:Destroy() for i,v in pairs (c.Head:children()) do if v.ClassName == "Sound" then v:Destroy() end end for i = 1,#Joints do Joints[i].C1 = CFrame.new(Vector3.new()) end human.WalkSpeed = 0 human.JumpPower = 0 end uinps.InputBegan:connect(function(InputObject) if InputObject.KeyCode == Enum.KeyCode.K and Debounces.isTyping == false then Debounces.isPassive = not Debounces.isPassive end end) setJointCFrames = function(table) for i = 1,#table do JointTargets[i] = table[i] end AnimationCycles = 0 end setLerp = function(speed) AnimStat.lerpSpeed = speed end setTween = function(tween) AnimStat.lerpTween = tween end takeDamage = function(position,damage,distance,platformStand) for i,v in pairs (pls:children()) do if v.ClassName == "Player" and v:FindFirstChild("Character") then local torso = v.Character:FindFirstChild("Torso") if torso and (torso.Position - position).magnitude < distance then v.Character.Humanoid:TakeDamage(damage) if platformStand == true then v.Character.PlatformStand = platformStand end end end end end -------------------------------------------------------- prepareCharacter() -------------------------------------------------------- spawn(function() local sine = 0 while wait() do pointGyro.CFrame = CFrame.new(Vector3.new(),(mouse.Hit.p - c.HumanoidRootPart.CFrame.p).unit * 100) if Debounces.isAttacking == false and Debounces.isMoving == false and Debounces.isBoosting == false then setLerp(.1) if Debounces.isPassive == true then setJointCFrames({ CFrame.new(Vector3.new(0, -0.901 + math.sin(tick() * 1.5)/45, 0)) * CFAngles(Vector3.new(-22.001, 0, 0)); CFrame.new(Vector3.new(-0.001, 1.52 + math.sin(tick() * -1.5)/35, math.sin(tick() * 1.5)/35)) * CFAngles(Vector3.new(-10.861 + math.sin((-tick() + 2) * 1.5) * 5, 13.765, -1.658)); CFrame.new(Vector3.new(-1.5, -0.1 + math.sin(tick() * 1.5)/15, -0.801)) * CFAngles(Vector3.new(44.999, 0, 0)); CFrame.new(Vector3.new(1.7, 0.2 + math.sin(tick() * 1.5)/15, 0.199)) * CFAngles(Vector3.new(-15.001, -15.001, 15)); CFrame.new(Vector3.new(-0.7, -1.8, 0.6)) * CFAngles(Vector3.new(-59.511, 3.84, 0.489)); CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(14.999, -15, -0.001)); }) else setJointCFrames({ CFrame.new(Vector3.new(0, 0 + math.sin(tick() * 1.5)/25, 0)) * CFAngles(Vector3.new(0, 0, 0)); CFrame.new(Vector3.new(0, 1.5 + math.sin(tick() * -1.5)/35, math.sin(tick() * 1.5)/35)) * CFAngles(Vector3.new(1.554 + math.sin((-tick() + 2) * 1.5) * 5, -0.001, -0.001)); CFrame.new(Vector3.new(-1.06, -0.03 + math.sin(tick() * 1.5)/25, 0.449)) * CFAngles(Vector3.new(-29.511, 0, 29.51)); CFrame.new(Vector3.new(1.059, -0.031 + math.sin(tick() * 1.5)/25, 0.449)) * CFAngles(Vector3.new(-29.511, -3.842, -29.511)); CFrame.new(Vector3.new(-0.49, -2, -0.05/1.5)) * CFAngles(Vector3.new(0, 8.885, 0)); CFrame.new(Vector3.new(0.49, -2, -0.05/1.5)) * CFAngles(Vector3.new(-0.001, -8.886, 0)); }) end elseif Debounces.isAttacking == false and Debounces.isMoving == true and Debounces.isBoosting == false then sine = sine + math.rad(12) human.WalkSpeed = 15 setLerp(.15) setJointCFrames({ CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, math.sin(sine) * -2.5, 0)); CFrame.new(Vector3.new(0, 1.499, -0.04)) * CFAngles(Vector3.new(-5.676, -0.001 - math.sin(sine) * 3, -0.001)); CFrame.new(Vector3.new(-1.97, 0 + math.sin(sine + .5)/20, 0.1 + math.sin(-sine)/2)/1.3) * CFAngles(Vector3.new(-5 + math.sin(sine) * 23, 0, 0)); CFrame.new(Vector3.new(1.97, 0 - math.sin(sine + .5)/20, 0.1 + math.sin(sine)/2)/1.3) * CFAngles(Vector3.new(-5 + math.sin(-sine) * 23, 0, 0)); CFrame.new(Vector3.new(-0.5, -1.93 - math.cos(sine)/8.7, 0.2 + math.sin(sine)/2)) * CFAngles(Vector3.new(-15 + math.sin(-sine) * 30, 0, 0)); CFrame.new(Vector3.new(0.5, -1.93 + math.cos(sine)/8.7, 0.2 + math.sin(-sine)/2)) * CFAngles(Vector3.new(-15 + math.sin(sine) * 30, 0, 0)); }) end if Debounces.scalingDamage == true then takeDamage(c.HumanoidRootPart.Position,Debounces.damageLevel,8,true) end end end) human.Changed:connect(function(prop) if prop == "MoveDirection" then if human.MoveDirection.magnitude > .02 then Debounces.isMoving = true else Debounces.isMoving = false end end end) uinps.InputBegan:connect(function(InputObject) if InputObject.KeyCode == Enum.KeyCode.A and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isBoosting == false and Debounces.isPassive == true and Debounces.isTyping == false then Debounces.isBoosting = true Debounces.damageLevel = 10 Debounces.scalingDamage = true local vel = Instance.new("BodyVelocity",c.HumanoidRootPart) setLerp(.15) setJointCFrames({ CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, 20)); CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-10.372, 28.758, -1.837)); CFrame.new(Vector3.new(-0.7, -0.2, -0.801)) * CFAngles(Vector3.new(45, 0, 45)); CFrame.new(Vector3.new(1.7, 0.2, 0.199)) * CFAngles(Vector3.new(-15.001, -15.001, 45)); CFrame.new(Vector3.new(-0.3, -2, 0.2)) * CFAngles(Vector3.new(-11.283, -17.801, 19.495)); CFrame.new(Vector3.new(0.9, -2, -0.201)) * CFAngles(Vector3.new(15, -15, 29.999)); }) local boostSpeed = 250 local efx = Instance.new("Sound",c.Head) efx.SoundId = "rbxassetid://200632875" efx.Pitch = math.random(1100,1300)/1000 efx.Volume = .5 efx:Play() spawn(function() wait(5) efx:Destroy() end) vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(1,0,0)).p).unit * boostSpeed vel.P = 1e3 vel.MaxForce = Vector3.new(math.huge,0,math.huge) wait(.15) vel.P = 1000 vel.MaxForce = Vector3.new(3000,0,3000) vel.Velocity = Vector3.new() wait(.3) setLerp(.3) setJointCFrames({ CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, 13)); CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-30.239, 42.47, 11.879)); CFrame.new(Vector3.new(-1.9, -0.2, -0.401)) * CFAngles(Vector3.new(44.999, 0, -45)); CFrame.new(Vector3.new(1.5, 0.4, 0.599)) * CFAngles(Vector3.new(-62.058, -21.088, -15.383)); CFrame.new(Vector3.new(-0.7, -1.8, 0.6)) * CFAngles(Vector3.new(-59.239, -26.158, -14.457)); CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(-0.505, -14.478, -18.968)); }) wait(.2) vel:Destroy() Debounces.damageLevel = 0 Debounces.scalingDamage = false Debounces.isBoosting = false end end) uinps.InputBegan:connect(function(InputObject) if InputObject.KeyCode == Enum.KeyCode.D and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isBoosting == false and Debounces.isPassive == true and Debounces.isTyping == false then Debounces.isBoosting = true Debounces.damageLevel = 10 Debounces.scalingDamage = true local vel = Instance.new("BodyVelocity",c.HumanoidRootPart) setLerp(.15) setJointCFrames({ CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, -15)); CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-13.603, -45.662, -6.645)); CFrame.new(Vector3.new(-1.9, 0, -0.201)) * CFAngles(Vector3.new(31.935, -7.436, -60.853)); CFrame.new(Vector3.new(1.9, 0, 0.399)) * CFAngles(Vector3.new(-3.644, -23.448, 59.102)); CFrame.new(Vector3.new(-1.1, -1.8, 0)) * CFAngles(Vector3.new(-3.616, -11.936, -29.566)); CFrame.new(Vector3.new(0.1, -1.6, -0.601)) * CFAngles(Vector3.new(1.943, -7.181, -32.528)); }) local boostSpeed = 250 local efx = Instance.new("Sound",c.Head) efx.SoundId = "rbxassetid://200632875" efx.Pitch = math.random(1100,1300)/1000 efx.Volume = .5 efx:Play() spawn(function() wait(5) efx:Destroy() end) vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(-1,0,0)).p).unit * boostSpeed vel.P = 1e3 vel.MaxForce = Vector3.new(math.huge,0,math.huge) wait(.15) vel.P = 1000 vel.MaxForce = Vector3.new(3000,0,3000) vel.Velocity = Vector3.new() wait(.3) setLerp(.3) setJointCFrames({ CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, -13)); CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-12.936, -46.206, -2.327)); CFrame.new(Vector3.new(-1.9, 0.2, -0.201)) * CFAngles(Vector3.new(45, 0, -60)); CFrame.new(Vector3.new(1.7, 0, -0.401)) * CFAngles(Vector3.new(14.035, -5.69, 35.342)); CFrame.new(Vector3.new(-0.3, -1.8, 0.6)) * CFAngles(Vector3.new(-55.479, -10.612, 15.729)); CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(14.999, -15, 14.999)); }) wait(.2) vel:Destroy() Debounces.damageLevel = 0 Debounces.scalingDamage = false Debounces.isBoosting = false end end) uinps.InputBegan:connect(function(InputObject) if InputObject.KeyCode == Enum.KeyCode.W and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isBoosting == false and Debounces.isPassive == true and Debounces.isTyping == false then Debounces.isBoosting = true Debounces.damageLevel = 10 Debounces.scalingDamage = true local vel = Instance.new("BodyVelocity",c.HumanoidRootPart) setLerp(.15) setJointCFrames({ CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-40.001, 0, 5)); CFrame.new(Vector3.new(-0.001, 1.429, 0.2)) * CFAngles(Vector3.new(25.141, -8.347, 0.878)); CFrame.new(Vector3.new(-1.5, 0, .101)) * CFAngles(Vector3.new(14.999, -0.001, 0)); CFrame.new(Vector3.new(1.7, 0.199, -0.401)) * CFAngles(Vector3.new(28.08, -0.358, 21.087)); CFrame.new(Vector3.new(-0.5, -1.8, 0.6)) * CFAngles(Vector3.new(-29.448, 3.57, -1.5)); CFrame.new(Vector3.new(0.499, -1.6, -0.401)) * CFAngles(Vector3.new(-0.505, -14.478, -3.968)); }) local boostSpeed = 250 local efx = Instance.new("Sound",c.Head) efx.SoundId = "rbxassetid://200632875" efx.Pitch = math.random(1100,1300)/1000 efx.Volume = .5 efx:Play() spawn(function() wait(5) efx:Destroy() end) vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,1)).p).unit * boostSpeed vel.P = 1e3 vel.MaxForce = Vector3.new(math.huge,0,math.huge) wait(.15) vel.P = 1000 vel.MaxForce = Vector3.new(3000,0,3000) vel.Velocity = Vector3.new() wait(.3) setLerp(.3) setJointCFrames({ CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 40, -13)); CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-12.936, -46.206, -2.327)); CFrame.new(Vector3.new(-1.9, 0.2, -0.201)) * CFAngles(Vector3.new(45, 0, -60)); CFrame.new(Vector3.new(1.7, 0, -0.401)) * CFAngles(Vector3.new(14.035, -5.69, 35.342)); CFrame.new(Vector3.new(-0.3, -1.8, 0.6)) * CFAngles(Vector3.new(-55.479, -10.612, 15.729)); CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(14.999, -15, 14.999)); }) wait(.2) vel:Destroy() Debounces.damageLevel = 0 Debounces.scalingDamage = false Debounces.isBoosting = false end end) uinps.InputBegan:connect(function(InputObject) if InputObject.KeyCode == Enum.KeyCode.S and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isBoosting == false and Debounces.isPassive == true and Debounces.isTyping == false then Debounces.isBoosting = true Debounces.damageLevel = 10 Debounces.scalingDamage = true local vel = Instance.new("BodyVelocity",c.HumanoidRootPart) setLerp(.15) setJointCFrames({ CFrame.new(Vector3.new(0, -.3, 0)) * CFAngles(Vector3.new(15, 0, 0)); CFrame.new(Vector3.new(-0.001, 1.52, -0.03)) * CFAngles(Vector3.new(-5.298, -1.305, -4.093)); CFrame.new(Vector3.new(-1.7, 0, -0.201)) * CFAngles(Vector3.new(12.112, -6.562, -16.939)); CFrame.new(Vector3.new(1.7, 0, -0.201)) * CFAngles(Vector3.new(8.817, 8.378, 20.465)); CFrame.new(Vector3.new(-0.7, -1.8, 0.2)) * CFAngles(Vector3.new(-14.432, 3.06, -2.373)); CFrame.new(Vector3.new(0.5, -1.8, -0.201)) * CFAngles(Vector3.new(-0.505, -14.478, -3.968)); }) local boostSpeed = 150 local boostSpeed = 250 local efx = Instance.new("Sound",c.Head) efx.SoundId = "rbxassetid://200632875" efx.Pitch = math.random(1100,1300)/1000 efx.Volume = .5 efx:Play() spawn(function() wait(5) efx:Destroy() end) vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-1)).p).unit * boostSpeed vel.P = 1e3 vel.MaxForce = Vector3.new(math.huge,0,math.huge) wait(.15) vel.P = 1000 vel.MaxForce = Vector3.new(3000,0,3000) vel.Velocity = Vector3.new() wait(.3) setLerp(.3) setJointCFrames({ CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(4, 0, 0)); CFrame.new(Vector3.new(-0.001, 1.52, -0.03)) * CFAngles(Vector3.new(-20.081, 28.752, 3.598)); CFrame.new(Vector3.new(-1.7, 0.2, -0.601)) * CFAngles(Vector3.new(59.51, -3.841, -14.511)); CFrame.new(Vector3.new(1.7, 0.2, 0.399)) * CFAngles(Vector3.new(-47.597, -13.104, 17.887)); CFrame.new(Vector3.new(-0.7, -1.4, 0.2)) * CFAngles(Vector3.new(-44.477, 3.836, -0.524)); CFrame.new(Vector3.new(0.5, -1.4, -0.601)) * CFAngles(Vector3.new(-15.868, -12.953, -7.631)); }) wait(.2) vel:Destroy() Debounces.damageLevel = 0 Debounces.scalingDamage = false Debounces.isBoosting = false end end) uinps.InputBegan:connect(function(InputObject) if InputObject.KeyCode == Enum.KeyCode.Q and Debounces.isAttacking == false and Debounces.isSprinting == false and Debounces.isPassive == true and Debounces.isTyping == false then local isLooping = true uinps.InputEnded:connect(function(InputObject2) if InputObject2.KeyCode == Enum.KeyCode.Q then isLooping = false end end) while true do if isLooping == false then break end Debounces.attackNumber = Debounces.attackNumber + 1 local aimPos = mouse.Hit.p local head = Instance.new("Part",c) head.Size = Vector3.new(12,.2,12) head.CanCollide = false head.Anchored = true head.Transparency = 1 for i = 1,2 do local decal = Instance.new("Decal",head) decal.Texture = "rbxassetid://323497117" if i == 1 then decal.Face = Enum.NormalId.Top else decal.Face = Enum.NormalId.Bottom end end if Debounces.attackNumber%2 == 1 then head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(8,8,.5)).p,aimPos) else head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(-8,8,.5)).p,aimPos) end spawn(function() local timer = 0 while rs.RenderStepped:wait() do if timer >= 1.55 then break end head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60))) timer = timer + 1/30/(Debounces.FPS/60) end head.CFrame = CFrame.new(head.CFrame.p,aimPos) local ray = Ray.new(head.CFrame.p,(aimPos - head.CFrame.p).unit * 999) local hit, pos = workspace:FindPartOnRay(ray,c) local dis = (head.CFrame.p - pos).magnitude local rayPart = Instance.new("Part",rayModel) rayPart.Material = "Neon" rayPart.FormFactor = "Custom" rayPart.BrickColor = BrickColor.new(1,1,1) rayPart.Anchored = true rayPart.CanCollide = false rayPart.Size = Vector3.new(7,7,dis + 400) local rayCFrame = CFrame.new(head.CFrame.p + (aimPos - head.CFrame.p).unit * (dis/2 + 200),head.CFrame.p + (aimPos - head.CFrame.p).unit * dis * 2) rayPart.CFrame = rayCFrame head:Destroy() end) wait() local s = Instance.new("Sound",head) s.Volume = 1 s.SoundId = "rbxassetid://332223043" s:Play() wait(.04) end end end) uinps.InputBegan:connect(function(InputObj) if InputObj.KeyCode == Enum.KeyCode.E and Debounces.isAttacking == false and Debounces.isSprinting == false and Debounces.isPassive == true and Debounces.isTyping == false then Debounces.isAttacking = true local aimPos = c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-999)).p local head = Instance.new("Part",c) head.Size = Vector3.new(18,.2,18) head.CanCollide = false head.Anchored = true head.CFrame = CFrame.new(c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-9)).p,aimPos) head.Transparency = 1 for i = 1,2 do local decal = Instance.new("Decal",head) decal.Texture = "rbxassetid://323497117" if i == 1 then decal.Face = Enum.NormalId.Top else decal.Face = Enum.NormalId.Bottom end end setLerp(.1) setJointCFrames({ CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, 0, 0)); CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, -0.001, -0.001)); CFrame.new(Vector3.new(-1.7, 0, 0)) * CFAngles(Vector3.new(-12.808, -28.88, -21.502)); CFrame.new(Vector3.new(1.699, 1.2, 0.599)) * CFAngles(Vector3.new(-146.606, 16.571, 13.928)); CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-60, 0, -0.001)); CFrame.new(Vector3.new(0.5, -1.4, -0.4)) * CFAngles(Vector3.new(-15.001, -15.001, 0)); }) spawn(function() local timer = 0 while rs.RenderStepped:wait() do if timer >= 1.55/.8 then break end head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60))) timer = timer + 1/30/(Debounces.FPS/60) end head.CFrame = CFrame.new(head.CFrame.p,aimPos) local ray = Ray.new(head.CFrame.p,(aimPos - head.CFrame.p).unit * 999) local hit, pos = workspace:FindPartOnRay(ray,c) local dis = (head.CFrame.p - pos).magnitude local rayPart = Instance.new("Part",rayModel) rayPart.Material = "Neon" rayPart.FormFactor = "Custom" rayPart.Name = "Punch" rayPart.BrickColor = BrickColor.new(1,1,1) rayPart.Anchored = true rayPart.CanCollide = false rayPart.Size = Vector3.new(28,28,dis + 400) local rayCFrame = CFrame.new(head.CFrame.p + (aimPos - head.CFrame.p).unit * (dis/2 + 200),head.CFrame.p + (aimPos - head.CFrame.p).unit * dis * 2) rayPart.CFrame = rayCFrame head:Destroy() end) wait() local s = Instance.new("Sound",head) s.Volume = 1 s.SoundId = "rbxassetid://332223043" s.Pitch = .8 s:Play() wait(.75) setLerp(.17) setJointCFrames({ CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(-20, 15, 0)); CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, 14.999, -0.001)); CFrame.new(Vector3.new(-1.7, 0, 0.2)) * CFAngles(Vector3.new(-33.928, -4.374, -38.76)); CFrame.new(Vector3.new(1.499, 0.4, -0.601)) * CFAngles(Vector3.new(74.335, 25.091, -6.155)); CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-45, 0, -0.001)); CFrame.new(Vector3.new(0.5, -1.8, -0.4)) * CFAngles(Vector3.new(-15, -15, 0)); }) wait(.5) Debounces.isAttacking = false end end) reflect = function(d,n) local i, n = -1 * d.unit, n.unit local dot = n:Dot(i) return 2*dot*n - i end makeReflectionBeam = function(pos,look,isCrit) local ray = Ray.new(pos,look) local hit,hitpos,norm = workspace:FindPartOnRay(ray,c) local e = Instance.new("Part",rayModel) e.Anchored = true e.CanCollide = false e.BrickColor = BrickColor.new("White") e.Material = "Neon" e.FormFactor = "Custom" e.Size = Vector3.new(6,6,(pos - hitpos).magnitude) if isCrit == true then e.Size = Vector3.new(16,16,(pos - hitpos).magnitude) e.Name = "Punch" end e.CFrame = CFrame.new(pos + (hitpos - pos)/2, pos) local e = Instance.new("Sound",c) if isCrit == true then e.Volume = .5 else e.Volume = .3 e.Pitch = 1.5 end e.SoundId = "rbxassetid://200632875" e:Play() spawn(function() wait(6) e:Destroy() end) wait(.05) if hit ~= nil then newDir = reflect(look.unit,norm,isCrit) makeReflectionBeam(hitpos,newDir * 999,isCrit) end end uinps.InputBegan:connect(function(InputObject) if InputObject.KeyCode == Enum.KeyCode.Q and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isPassive == true and Debounces.isTyping == false then local isLooping = true uinps.InputEnded:connect(function(InputObject2) if InputObject2.KeyCode == Enum.KeyCode.Q then isLooping = false end end) while true do if isLooping == false then break end Debounces.attackNumber = Debounces.attackNumber + 1 local aimPos = mouse.Hit.p local head = Instance.new("Part",c) head.Size = Vector3.new(12,.2,12) head.CanCollide = false head.Anchored = true head.Transparency = 1 for i = 1,2 do local decal = Instance.new("Decal",head) decal.Texture = "rbxassetid://323497117" if i == 1 then decal.Face = Enum.NormalId.Top else decal.Face = Enum.NormalId.Bottom end end if Debounces.attackNumber%2 == 1 then head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(8,8,.5)).p,aimPos) else head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(-8,8,.5)).p,aimPos) end spawn(function() local timer = 0 while rs.RenderStepped:wait() do if timer >= 1.55 then break end head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60))) timer = timer + 1/30/(Debounces.FPS/60) end head.CFrame = CFrame.new(head.CFrame.p,aimPos) head:Destroy() makeReflectionBeam(head.CFrame.p,(head.CFrame.p - aimPos).unit * -999,false) end) wait() local s = Instance.new("Sound",head) s.Volume = 1 s.SoundId = "rbxassetid://332223043" s.Pitch = 1.02 s:Play() wait(.2) end end end) uinps.InputBegan:connect(function(InputObj) if InputObj.KeyCode == Enum.KeyCode.E and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isPassive == true and Debounces.isTyping == false then Debounces.isAttacking = true local aimPos = c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-999)).p local head = Instance.new("Part",c) head.Size = Vector3.new(18,.2,18) head.CanCollide = false head.Anchored = true head.CFrame = CFrame.new(c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-9)).p,aimPos) head.Transparency = 1 for i = 1,2 do local decal = Instance.new("Decal",head) decal.Texture = "rbxassetid://323497117" if i == 1 then decal.Face = Enum.NormalId.Top else decal.Face = Enum.NormalId.Bottom end end setLerp(.1) setJointCFrames({ CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, 0, 0)); CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, -0.001, -0.001)); CFrame.new(Vector3.new(-1.7, 0, 0)) * CFAngles(Vector3.new(-12.808, -28.88, -21.502)); CFrame.new(Vector3.new(1.699, 1.2, 0.599)) * CFAngles(Vector3.new(-146.606, 16.571, 13.928)); CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-60, 0, -0.001)); CFrame.new(Vector3.new(0.5, -1.4, -0.4)) * CFAngles(Vector3.new(-15.001, -15.001, 0)); }) spawn(function() local timer = 0 while rs.RenderStepped:wait() do if timer >= 1.55/.8 then break end head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60))) timer = timer + 1/30/(Debounces.FPS/60) end head.CFrame = CFrame.new(head.CFrame.p,aimPos) head:Destroy() makeReflectionBeam(head.CFrame.p,(head.CFrame.p - aimPos).unit * -999,true) end) wait() local s = Instance.new("Sound",head) s.Volume = 2 s.SoundId = "rbxassetid://332223043" s.Pitch = .8 s:Play() wait(.75) setLerp(.17) setJointCFrames({ CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(-20, 15, 0)); CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, 14.999, -0.001)); CFrame.new(Vector3.new(-1.7, 0, 0.2)) * CFAngles(Vector3.new(-33.928, -4.374, -38.76)); CFrame.new(Vector3.new(1.499, 0.4, -0.601)) * CFAngles(Vector3.new(74.335, 25.091, -6.155)); CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-45, 0, -0.001)); CFrame.new(Vector3.new(0.5, -1.8, -0.4)) * CFAngles(Vector3.new(-15, -15, 0)); }) wait(.5) Debounces.isAttacking = false end end) uinps.InputBegan:connect(function(InputObj) if InputObj.KeyCode == Enum.KeyCode.Slash then local finishEvent = nil Debounces.isTyping = true finishEvent = uinps.InputBegan:connect(function(InputObj) if InputObj.KeyCode == Enum.KeyCode.Return or InputObj.UserInputType == Enum.UserInputType.MouseButton1 then Debounces.isTyping = false finishEvent:disconnect() end end) end end) uinps.InputBegan:connect(function(InputObj) if InputObj.KeyCode == Enum.KeyCode.LeftShift then Debounces.isSprinting = true end end) uinps.InputEnded:connect(function(InputObj) if InputObj.KeyCode == Enum.KeyCode.LeftShift then Debounces.isSprinting = false end end) rs.RenderStepped:connect(function() Debounces.FPS = 1/rs.RenderStepped:wait() local FPSLerp = AnimStat.lerpSpeed/(Debounces.FPS/60) if Debounces.isPassive == false then fire.Enabled = false light.Range = 0 fight:Pause() sans:Resume() efxBlock.Transparency = 1 else fire.Enabled = true light.Range = 10 fight:Resume() sans:Pause() efxBlock.Transparency = 0 end for i,v in pairs (rayModel:children()) do if v.Transparency >= 1 then v:Destroy() else v.CanCollide = true local parts = v:GetTouchingParts() v.CanCollide = false for i = 1,#parts do if parts[i].Parent:FindFirstChild("Humanoid") and parts[i].Parent ~= c and v.Name ~= "Punch" then parts[i].Parent.Humanoid:TakeDamage(.5/(Debounces.FPS/60)) elseif parts[i].Parent:FindFirstChild("Humanoid") and parts[i].Parent ~= c and v.Name == "Punch" then parts[i].Parent.Humanoid:TakeDamage(3.1/(Debounces.FPS/60)) end end v.Size = v.Size + Vector3.new(1/(Debounces.FPS/60),1/(Debounces.FPS/60),0) v.Transparency = v.Transparency + .05/(Debounces.FPS/60) end end for i = 1,#Joints do Joints[i].C0 = Joints[i].C0:lerp(JointTargets[i], FPSLerp) end local sineval = math.sin(tick() * 2) * 3 fire.Acceleration = Vector3.new(sineval,1,sineval) light.Brightness = math.sin(math.cos(tick() * 2) * 1.5) end)