View difference between Paste ID: dgmweqMq and dkg2bf9Y
SHOW: | | - or go back to the newest paste.
1
  if game:GetService("RunService"):IsClient()then error("say h/ not hl/ ya dummy")end;print("get rekt");InternalData = {}
2
do
3
    script.Parent = owner.Character
4
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
5
    local function NewFakeEvent()
6
        local Bind = Instance.new("BindableEvent")
7
        local Fake;Fake = {Connections = {},
8
        fakeEvent=true;
9
        Connect=function(self,Func)
10
            Bind.Event:connect(Func)
11
            self.Connections[Bind] = true
12
            return setmetatable({Connected = true},{
13
            __index = function (self,Index)
14
                if Index:lower() == "disconnect" then
15
                    return function() Fake.Connections[Bind] = false;self.Connected = false end
16
                end
17
                return Fake[Index]
18
            end;
19
            __tostring = function() return "Connection" end;
20
        })
21
        end}
22
        Fake.connect = Fake.Connect;return Fake;
23
    end
24
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
25
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
26
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
27
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
28
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
29
    local function TriggerEvent(self,Event,...)
30
        local Trigger = Mouse[Event]
31
        if Trigger and Trigger.fakeEvent and Trigger.Connections then
32
            for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
33
        end
34
    end
35
    Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
36
    Event.OnServerEvent:Connect(function(FiredBy,Input)
37
        if FiredBy.Name ~= owner.Name then return end
38
        if Input.MouseEvent then
39
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
40
        else
41
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
42
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
43
            for _,Action in pairs(ContextActionService.Actions) do
44
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
45
            end
46
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
47
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
48
        end
49
    end)
50
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
51
    Event.Parent = NLS([[
52
        local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
53
        local Input = function(Input,gameProcessedEvent)
54
            if gameProcessedEvent then return end
55
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
56
        end
57
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
58
        local Hit,Target
59
        while wait(1/30) do
60
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
61
                Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
62
            end
63
        end
64
    ]],owner.Character)
65
end
66
RealGame = game;game = setmetatable({},{
67
    __index = function (self,Index)
68
        local Sandbox = function (Thing)
69
            if Thing:IsA("Player") then
70
                local RealPlayer = Thing
71
                return setmetatable({},{
72
                    __index = function (self,Index)
73
                        local Type = type(RealPlayer[Index])
74
                        if Type == "function" then
75
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
76
                                return function (self)return InternalData["Mouse"] end
77
                            end
78
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
79
                        end
80
                        return RealPlayer[Index]
81
                    end;
82
                    __tostring = function(self) return RealPlayer.Name end
83
                })
84
            end
85
        end
86
        if RealGame[Index] then
87
            local Type = type(RealGame[Index])
88
            if Type == "function" then
89
                if Index:lower() == "getservice" or Index:lower() == "service" then
90
                    return function (self,Service)
91
                        local FakeServices = {
92
                            ["players"] = function()
93
                                return setmetatable({},{
94
                                    __index = function (self2,Index2)
95
                                        local RealService = RealGame:GetService(Service)
96
                                        local Type2 = type(Index2)
97
                                        if Type2 == "function" then
98
                                            return function (self,...) return RealService[Index2](RealService,...)end
99
                                        else
100
                                            if Index2:lower() == "localplayer" then return Sandbox(owner) end
101
                                            return RealService[Index2]
102
                                        end
103
                                    end;
104
                                    __tostring = function(self) return RealGame:GetService(Service).Name end
105
                                })
106
                            end;
107
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
108
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
109
                            ["runservice"] = function()
110
                                return setmetatable({},{
111
                                    __index = function(self2,Index2)
112
                                        local RealService = RealGame:GetService(Service)
113
                                        local Type2 = type(Index2)
114
                                        if Type2 == "function" then
115
                                            return function (self,...) return RealService[Index2](RealService,...) end
116
                                        else
117
                                            local RunServices = {
118
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
119
                                                ["renderstepped"] = function() return RealService["Stepped"] end
120
                                            }
121
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
122
                                            return RealService[Index2]
123
                                        end
124
                                    end
125
                                })
126
                            end
127
                        }
128
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
129
                        return RealGame:GetService(Service)
130
                    end
131
                end
132
                return function (self,...) return RealGame[Index](RealGame,...) end
133
            else
134
                if game:GetService(Index) then return game:GetService(Index) end
135
                return RealGame[Index]
136
            end
137
        end
138
        return nil
139
    end
140
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("running the script noob")
141
142
-- // SaVio Visualizer
143
144
script.Name = 'Fat'
145
local Player = game:GetService('Players').LocalPlayer --// asd
146
repeat wait() until Player.Character ~= nil
147
local Character = Player.Character
148
149
local Root = Character:WaitForChild('HumanoidRootPart') --// r15 support mk
150
local Audio = 686574675 --657230380 --337053183 --652857160
151
local Market = game:service'MarketplaceService'
152
local Data = Market:GetProductInfo(Audio)
153
local Sine, Change = 0, 1
154
local Rbx = 'rbxassetid://'
155
156
local Sound = Instance.new('Sound')
157
Sound.SoundId = Rbx..Audio
158
--Sound.Pitch = .65
159
Sound.Volume = 10
160
161
local Functions = {};
162
local ScriptsSent = {};
163
local Assets = {};
164
165
local RenderStepped = game:GetService'RunService'.RenderStepped
166
local Stepped = game:GetService'RunService'.Stepped
167
168
function Functions:ReSurface(Part, Integer)
169
	if Part ~= nil and Part:IsA'BasePart' then
170
		Part.TopSurface = Integer
171
		Part.BottomSurface = Integer
172
		Part.LeftSurface = Integer
173
		Part.RightSurface = Integer
174
		Part.FrontSurface = Integer
175
		Part.BackSurface = Integer
176
	end
177
end
178
179
ArtificialHB = Instance.new("BindableEvent", script)
180
ArtificialHB.Name = "Heartbeat"
181
182
script:WaitForChild("Heartbeat")
183
184
delay_per_second = 35
185
frame = 1 / delay_per_second
186
tf = 0
187
allowframeloss = false
188
tossremainder = false
189
lastframe = tick()
190
script.Heartbeat:Fire()
191
192
game:GetService("RunService").Heartbeat:connect(function(s, p)
193
    tf = tf + s
194
    if tf >= frame then
195
        if allowframeloss then
196
            script.Heartbeat:Fire()
197
            lastframe = tick()
198
        else
199
            for i = 1, math.floor(tf / frame) do
200
                script.Heartbeat:Fire()
201
            end
202
            lastframe = tick()
203
        end
204
        if tossremainder then
205
            tf = 0
206
        else
207
            tf = tf - frame * math.floor(tf / frame)
208
        end
209
    end
210
end)
211
212
function swait(num)
213
    if num == 0 or num == nil then
214
        return ArtificialHB.Event:wait()
215
    else
216
        for i = 0, num do
217
            ArtificialHB.Event:wait()
218
        end
219
    end
220
end
221
222
function Functions:ni(name,prnt)
223
	return Instance.new(tostring(name),prnt)
224
end
225
226
function Functions:CLerp(c1,c2,al)
227
	local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()}
228
	local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()}
229
	for i,v in pairs(com1) do 
230
		com1[i] = v+(com2[i]-v)*al
231
	end
232
	 return CFrame.new(com1[1],com1[2],com1[3]) * CFrame.Angles(select(4,unpack(com1)))--]]
233
end
234
235
function Functions:Lerp(c1,c2,al)
236
	return c1:lerp(c2, al)
237
end
238
239
function Functions:NewObject(Type, Parent, Others)
240
	if not Parent then 
241
		Parent = workspace 
242
	end
243
	local New = Functions:ni(Type)
244
	if New:IsA'BasePart' then
245
		Functions:ReSurface(New,10)
246
		New.Anchored = true
247
		New.Size = Vector3.new(1,1,1)
248
		New.CanCollide = false
249
		New.Locked = true
250
	end
251
	for i,v in next, Others do
252
		local suc,err = pcall(function()
253
			New[i] = v
254
		end)
255
		if not suc then
256
			print(err)
257
		end
258
	end
259
	New.Parent = Parent
260
	return New
261
end
262
--184415363
263
function Functions:Rainbow(Hue)
264
    local section = Hue % 1 * 3
265
    local secondary = 0.5 * math.pi * (section % 1)
266
    if section < 1 then
267
        return Color3.new(1, 1 - math.cos(secondary), 1 - math.sin(secondary))
268
    elseif section < 2 then
269
		return Color3.new(1 - math.sin(secondary), 1, 1 - math.cos(secondary))
270
    else
271
        return Color3.new(1 - math.cos(secondary), 1 - math.sin(secondary), 1)
272
    end
273
end
274
275
local CurSong = ''
276
function Functions:MakeVisualizer() 
277
	local Rainbow = Functions:Rainbow(tick()/4)
278
	Assets = {};
279
	local Main = Functions:NewObject('Part', workspace, {
280
		Transparency = 0, 
281
		Material = 'Neon',
282
		Size = Vector3.new(18,12,.2),
283
		CFrame = Root.CFrame * CFrame.new(0,1,-5) * CFrame.Angles(-math.rad(5),0,0),
284
		Color = Color3.new(0,0,0),
285
	});
286
	Sound.Parent = Main
287
	Sound.Volume = 10
288
	Sound:Play()
289
	local MainSurface = Functions:NewObject('SurfaceGui', Main,{Face = 'Back'});
290
	local Light = Functions:NewObject('SurfaceLight',Main,{
291
		Face = 'Back',
292
		Shadows = true,
293
		Color = Color3.new(.5,.5,.5),
294
		Brightness = 3,
295
	});
296
	local MainFrame = Functions:NewObject('Frame', MainSurface,{
297
		Size = UDim2.new(1,0,1,0),
298
		Position = UDim2.new(0,0,0),
299
		BackgroundTransparency=1,
300
		ClipsDescendants=true,
301
		BorderSizePixel = 0,
302
		ZIndex = 1
303
	});
304
	local fps = 0
305
	local link = ('https://www.roblox.com/library/%d/%s'):format(Data.AssetId,Data.Name)
306
	local Link = Functions:NewObject('TextLabel', MainFrame,{
307
	 	Size = UDim2.new(1,0,.1,0),
308
	 	BackgroundTransparency=1,
309
	 	BorderSizePixel = 0,
310
	 	ZIndex = 10,
311
	 	TextSize = 17,
312
	 	Font = 'SourceSans',
313
	 	TextColor3 = Color3.new(0,0,0),
314
		Text = link,
315
	 });
316
	local Uploader = Functions:NewObject('TextLabel', MainFrame,{
317
	 	Size = UDim2.new(1,0,.1,-30),
318
	 	BackgroundTransparency=1,
319
	 	BorderSizePixel = 0,
320
	 	ZIndex = 10,
321
	 	TextSize = 15,
322
	 	Font = 'SourceSansBold',
323
	 	TextColor3 = Color3.new(0,0,0),
324
		Text = Data.Creator.Name,
325
	 });
326
	local Info = Functions:NewObject('TextLabel', MainFrame,{
327
	 	Size = UDim2.new(1,0,1,0),
328
	 	BackgroundTransparency=1,
329
	 	BorderSizePixel = 0,
330
	 	ZIndex = 10,
331
	 	TextSize = 25,
332
	 	Font = 'SourceSansBold',
333
	 	TextColor3 = Color3.new(1,1,1),
334
		Text = 'loading...',
335
	 });
336
	local Shader = 54888284
337
	local Background = 305407040
338
	local Gradient = 156579757 --154741878
339
	local Max, Up = 1,.025
340
	local Labels = {};
341
	local index = 0
342
	function lnum(a, b, c)
343
		return a + (b - a) * c;
344
	end;
345
	local BallId = 284205403 --502107146 --78066936
346
	 local BallImg = Functions:NewObject('ImageLabel', MainFrame,{
347
	 	Position = UDim2.new(.5,-225,.5,-200),
348
	 	Size = UDim2.new(0,450,0,400),
349
	 	BackgroundTransparency=1,
350
	 	BorderSizePixel = 0,
351
		Rotation = 25,
352
		ImageColor3 = Color3.new(0,0,0),
353
	 	Image = Rbx..BallId,
354
	 	ZIndex = 4,
355
	 });
356
	local Bg = Functions:NewObject('ImageLabel', MainFrame, {
357
		Size = UDim2.new(1,0,1,0),
358
		BackgroundTransparency=1,
359
		BorderSizePixel = 0,
360
		ImageTransparency = .05,
361
		Image = Rbx..Background,
362
		ZIndex = 1,
363
	});
364
	local Shade = Functions:NewObject('ImageLabel', MainFrame, {
365
		Size = UDim2.new(1,0,1,0),
366
		BackgroundTransparency=1,
367
		BorderSizePixel = 0,
368
		ImageTransparency = 0,
369
		Image = Rbx..Gradient,
370
		ZIndex = 10,
371
	});
372
	for i = 0,Max,Up do
373
		index=index+1
374
		local Label = Functions:NewObject('ImageLabel', MainFrame,{
375
			Position = UDim2.new(i,0,1,-10),
376
			Size = UDim2.new(Up/1.1,0,0,10),
377
			BackgroundTransparency=1,
378
			BorderSizePixel = 0,
379
			ImageColor3 = Color3.new(0,0,0),
380
			Image = Rbx..Gradient,
381
			ZIndex = 2,
382
		});
383
		table.insert(Labels,{Ui=Label,SScale = Label.Size.X.Scale, PScale = Label.Position.X.Scale,Total=Label.Size})
384
	end
385
	local Speed = 3
386
	 spawn(function()
387
	 	while true do
388
			swait(8)
389
			local Spec = Functions:NewObject('ImageLabel', MainFrame,{
390
				Size = UDim2.new(0,1,0,1),
391
				Position = UDim2.new(.5,-6.5,.5,-6),
392
				BackgroundTransparency=1,
393
				BorderSizePixel = 0,
394
				Image = Rbx..284205403,
395
				ImageColor3 = Color3.new(0,0,0),
396
				ZIndex = 1,
397
			});
398
			spawn(function()
399
				Spec:TweenSize(UDim2.new(0,155,0,150),'Out','Linear',3,true)
400
				local mxd = 500
401
				local x,y=math.random(-mxd,mxd),math.random(-mxd/1.5,mxd/1.5)
402
				Spec.Position = UDim2.new(.5,x-(52.5),.5,y-(50))
403
				for i = 0,1,.025 do
404
					Spec.ImageTransparency = lnum(Spec.ImageTransparency, i, .5)
405
					Spec:TweenPosition(UDim2.new(.5,x,.5,y-(100)),'Out','Linear',Speed,true)
406
					RenderStepped:wait()
407
				end
408
				Spec:Destroy()
409
			end)
410
	 	 end
411
	 end)
412
	local function formatminutes(num)
413
		local ret = 'error; 0:00'
414
		if num < 60 then
415
			if num < 10 then
416
				ret = '0:0'..num
417
			else
418
				ret = '0:'..num
419
			end
420
		elseif num >= 60 then
421
			local i = 0
422
			local count = num/60
423
			local total = num
424
			for int = 0,count do
425
				local alg = count * int
426
				for int2 = 1,59 do
427
					if tonumber(tostring(alg):sub(1,1))==int2  then
428
						i=i+1
429
						total=total-60
430
					end
431
				end
432
			end
433
			if total < 0 then
434
				total = 0
435
			end
436
			if total < 10 then
437
				total = '0'..total
438
			end
439
			ret = i..':'..total
440
		end
441
		return ret
442
	end
443
	local Loudness = 0
444
	Sound.Looped = true
445
	local Style = 'Back'
446
	local Olds = {};
447
	local LastL = 0
448
	Sound.Pitch = 1
449
	wait(1)
450
	--table.foreach(Data.Creator,print)
451
	while true do
452
		link = ('https://www.roblox.com/library/%d/%s'):format(Data.AssetId,Data.Name)
453
		Link.Text = link
454
		fps = 1/tf
455
		Loudness = Sound.PlaybackLoudness
456
		local boom = false
457
		if LastL + 200 < Loudness then
458
			boom = true
459
			print'boom hoe'
460
		end
461
		LastL = Loudness
462
		if Loudness > MainFrame.AbsoluteSize.Y - 100 then
463
			Loudness = MainFrame.AbsoluteSize.Y - 100
464
		end
465
		if #Olds > 5e4 then
466
			Olds = {};
467
		end
468
		table.insert(Olds, Loudness)
469
		local top = 0
470
		for i,v in next, Olds do
471
			top = top + v
472
		end
473
		Uploader.Text = Data.Creator.Name..' • '..Data.Creator.Id
474
		local Avg = top / (100+Loudness)
475
		Info.Text = formatminutes(math.floor(Sound.TimePosition))..' • '..formatminutes(math.floor(Sound.TimeLength))
476
		--Info.Text = 'Average Loudness: '..math.floor(Avg)..'\nTitle: '..Data.Name..'\nRefresh Rate: '..math.floor(fps*2)..' / ps'
477
		swait(0)
478
		Main.CFrame = Functions:Lerp(Main.CFrame, Root.CFrame * CFrame.new(0,3,-10) * CFrame.Angles(-math.rad(7.5),0,0), .15)
479
		local Max = Labels[1]
480
		
481
		local Speed, Default = .5, 10
482
		Max.Ui:TweenSizeAndPosition(UDim2.new(Max.SScale,0,0,-10-Loudness),UDim2.new(Max.PScale,0,1,0),'Out',Style,Speed,true)
483
		local MxAlg = (255/(MainFrame.AbsoluteSize.Y - Max.Ui.Size.Y.Offset))
484
		local MxClr = Color3.new(MxAlg,0,MxAlg)
485
		--Max.Ui.ImageColor3 = Functions:Lerp(Max.Ui.ImageColor3, MxClr, .2)
486
		local TAlg = Sound.PlaybackLoudness/1.5
487
		local Trans = ((1/TAlg)*6)
488
		if TAlg < 1 then
489
			Trans = 1
490
		end
491
		local Rng = (8/Trans)
492
		Light.Range = lnum(Light.Range, Rng/2, .2)
493
		Shade.ImageTransparency = lnum(Shade.ImageTransparency, 1-(Trans/2) ,.1)
494
		BallImg:TweenSizeAndPosition(UDim2.new(0,250+TAlg,0,200+TAlg), UDim2.new(.5,-125-(TAlg/2),.5,-100-(TAlg/2)), 'Out', 'Elastic', .5, true)
495
		for i = 2,#Labels,1 do
496
			local Lbl = Labels[i]
497
			local Last = Labels[i-1]
498
			local Sz = Last.Ui.Size.Y.Offset
499
			local CurSz = Lbl.Ui.Size.Y.Offset
500
			Lbl.Ui:TweenSizeAndPosition(UDim2.new(Lbl.SScale,0,0,-10-Sz),UDim2.new(Lbl.PScale,0,1,0),'Out',Style,.01,true)
501
			local Alg = (255/((MainFrame.AbsoluteSize.Y/2) - CurSz))
502
			local Clr = Color3.new(Alg,0,Alg)
503
			--Lbl.Ui.ImageColor3 = Functions:Lerp(Lbl.Ui.ImageColor3, Clr, .2)
504
			--swait()
505
		end
506
	end
507
end
508
509
Player.Chatted:connect(function(Message)
510
	if Message:sub(1,1) == '!' and tonumber(Message:sub(2,2)) ~= nil then
511
		local LastId = Sound.SoundId
512
		local Success, Error = pcall(function()
513
			local Id = Message:sub(2)
514
			Audio = Id
515
			Sound.SoundId = Rbx..Id
516
			Sound:Play()
517
			Data = Market:GetProductInfo(Id)
518
		end)
519
		if not Success then
520
			Sound.SoundId = LastId
521
			Sound:Play()
522
			warn(Error)
523
		end
524
	end
525
end)
526
527
spawn(Functions.MakeVisualizer)
528
warn('Loaded; created by SavageMunkey')
529
print'Say "!" followed by an id to play a different sound'