· 5 years ago · Jul 31, 2020, 04:00 PM
1
2 --[[visualizer to end all visualizers made by DevSersponge 2020]]--
3
4 --splay [[searches for a song by it's name on bloxmusic]] EX: .splay alone
5 --sstop [[stops searching]]
6 --play [[plays a song from the music list or it's id]] EX: .play september
7 --stop [[stops playing]]
8 --spd [[changes speed]] EX: .spd 1.2
9 --reverb [[troggles reverb effect]]
10 --flange [[troggles flange effect]]
11 --fdp [[flange depth]] EX: .fdp 2
12 --fmi [[flange mix]] EX: .fmi 1
13 --fra [flange range]] EX: .fra 1.3
14 --ptc [[changes pitch]] EX: .ptc 1
15 --vol [[changes volume]] EX: .vol 10
16 --bld [[fixes sound]]
17 --tpos [[goes to a specific position in the song]] EX: .tpos 32
18 --tosecs [[prints the conversion between minutes to seconds]]
19 --pause [[pauses]]
20 --resume [[resumes]]
21 --showtl [[switches timeline]]
22 --mlist [[prints music list]]
23 --addlistp [[adds currently playing sound to your music list]] EX: .addlistp songname
24 --makelist [[creates a unique list id for your music list so you can save it for later]]
25 --getlist [[gets a music list id and adds it to your current music list]] EX: .getlist KJeIOHe
26 --stick [[sticks the visualizer to your head ]]
27 --ustick [[unsticks the visualizer]]
28 --vmode [[switches visualizer mode]]
29 --vmode2 [[switches visualizer mode2]]
30 --getcmds [[gets commands]]
31 --[[
32 WARNING:
33 makelist only works if you have added your pastebin dev key to the PDEVKEY variable in the "CONFIGS" section
34 ]]
35 credits=[[
36 Credits:
37 DevSersponge/me - Main visualizer code and everything else
38 Rake/MonoDev for search function
39 Roblox for pastebin api implementation
40 Version: 3.8]]
41cmdlist=[[
42 splay ||searches for a song by it's name on bloxmusic|| EX: .splay alone
43 sstop ||stops searching||
44 play ||plays a song from the music list or it's id|| EX: .play september
45 stop ||stops playing||
46 spd ||changes speed|| EX: .spd 1.2
47 reverb ||troggles reverb effect||
48 flange ||troggles flange effect||
49 fdp ||flange depth|| EX: .fdp 2
50 fmi ||flange mix|| EX: .fmi 1
51 fra [flange range|| EX: .fra 1.3
52 ptc ||changes pitch|| EX: .ptc 1
53 vol ||changes volume|| EX: .vol 10
54 bld ||fixes sound||
55 tpos ||goes to a specific position in the song|| EX: .tpos 32
56 tosecs ||prints the conversion between minutes to seconds||
57 pause ||pauses||
58 resume ||resumes||
59 showtl ||switches timeline||
60 mlist ||prints music list||
61 addlistp ||adds currently playing sound to your music list|| EX: .addlistp songname
62 makelist ||creates a unique list id for your music list so you can save it for later||
63 getlist ||gets a music list id and adds it to your current music list|| EX: .getlist KJeIOHe
64 stick ||sticks the visualizer to your head ||
65 ustick ||unsticks the visualizer||
66 vmode ||switches visualizer mode||
67 vmode2 ||switches visualizer mode2||
68 getcmds ||get commands||
69 ]]
70 warn(credits)
71 --utlib
72 it,v3,u2,cf,rn,c3,bc,rd,pi,rn,ra,fl,ce,ts,ms,ca,create,swait = Instance.new,Vector3.new,UDim2.new,CFrame.new,Ray.new,Color3.new,BrickColor.new,math.rad,math.pi,Ray.new,math.random,math.floor,math.ceil,game:GetService("TweenService"),math.sqrt,CFrame.Angles,function(Object, ...) local Obj = Instance.new(Object) for i,v in next,(...) do Obj[i] = v end return Obj end,function(a) if a==0 or a==nil then game:GetService("RunService").Stepped:Wait(0)else for b=0,a do game:GetService("RunService").Stepped:Wait(0)end end end;function lerp(c,d,e,f,g)local h=0;for b=1,f*100 do if g==true then d=c.C0 end;c.C0=d:lerp(e,b/(f*100))wait(0.01)h=h+0.01 end end
73 --utlib
74 Debris = game:GetService("Debris")
75
76 plr = owner
77 char = plr.Character
78 local visb = it("Part")
79 local vislt = it("PointLight")
80 vislt.Parent = visb
81 vislt.Enabled = false
82 vislt.Shadows = true
83 visl = false
84 announcing = false
85 showtl = false
86 local wlds = it("WeldConstraint")
87 wlds.Part0 = visb
88 wlds.Parent = visb
89 local fir = it("Fire")
90 fir.Parent = visb
91 local currentid=""
92 local lastpitch = 0
93 local bbmesh = it("SpecialMesh")
94 local soundevent = it("RemoteEvent")
95 soundevent.Name = "soundevent"
96 soundevent.Parent = char
97 local vmod = it("BoolValue",char)
98 vmod.Name="vmode"
99 local vmod2 = it("BoolValue",char)
100 vmod2.Name="vmode2"
101 vmod.Value=true
102 vmod2.Value=true
103 local sound = it("Sound")
104 sound.Name = "Music"
105 sound.Parent = visb
106 local pse = it("PitchShiftSoundEffect",sound)
107pse.Enabled = true
108pse.Octave=1
109local fla = it("FlangeSoundEffect",sound)
110fla.Enabled=false
111local rev = it("ReverbSoundEffect",sound)
112rev.Enabled=false
113 spawn(function()
114 while true do
115 swait()
116 if not visb:FindFirstChild("Music") then
117 sound = it("Sound")
118 sound.Name = "Music"
119 sound.Parent = visb
120pse = it("PitchShiftSoundEffect",sound)
121pse.Enabled = true
122pse.Octave=1
123rev = it("ReverbSoundEffect",sound)
124rev.Enabled=false
125fla = it("FlangeSoundEffect",sound)
126fla.Enabled=false
127 end
128 end
129 end)
130 --siz = v3(.1,.1,.1)
131 offset = v3(1,1,1)
132 local sini = 0
133 local HttpService = game:GetService"HttpService"
134 --[[CONFIGS]]--
135 PDEVKEY = "" -- Pastebin API developer key from https://pastebin.com/api#1
136 spdbt = 1
137 local maxPages = 100 --max search pages for splay
138 --[[CONFIGS]]--
139 visb.Material = "Neon"
140 atspd = .2
141 local cansiz = it("BoolValue",char)
142 cansiz.Value=true
143 cansiz.Name="cansiz"
144 visb.Name = "visu"
145 visb.Size = v3(2,2,2)
146 visb.Anchored = false
147 visb.CanCollide = false
148 visb.Parent = char
149
150 script.Parent = char
151
152 --[[mlist]]--
153 mlist={}
154 mlistf={}
155 --332872001
156 --[[mlist]]--
157
158 bbg = Instance.new("BillboardGui",visb)
159 bbg.Size = UDim2.new(2,0,1,0)
160 bbg.AlwaysOnTop = true
161 bbg.StudsOffsetWorldSpace = v3(0,3,0)
162 ttb = Instance.new("TextBox", bbg)
163 ttb.Size = u2(2, 0, 1, 0)
164 ttb.Position = u2(-0.5, 0, -0.5, 0)
165 ttb.BackgroundTransparency = 1
166 ttb.TextScaled = true
167 ttb.Text = " "
168 txtsp = 0.06
169 a = [[
170 char = owner.Character
171 soundevent = char.soundevent
172 cansiz = char.cansiz
173 ra=math.random()
174 v3=Vector3.new
175 visb = char.visu
176 vmod=char.vmode
177 vmod2=char.vmode2
178 siz = v3(.1,.1,.1)
179 local RunService = game:GetService("RunService")
180 spawn(function() --in case you want to use some other loop
181 RunService.RenderStepped:Connect(function()
182 sound = char.visu.Music
183 sound.MaxDistance = 30000
184 local pbl = sound.PlaybackLoudness
185 if cansiz.Value==true then
186 if vmod.Value==true then
187 if vmod2.Value==true then
188 visb.Size = v3(siz.X+.9+pbl/190,siz.Y+.9+pbl/math.random(35,190),siz.Z+.9+pbl/190)
189 else
190 visb.Size = v3(siz.X+.9+pbl/190,siz.Y+.9+pbl/190,siz.Z+.9+pbl/190)
191 end
192 else
193 if vmod2.Value==true then
194 visb.Size = v3(siz.X+.9+pbl/190,siz.Y+.9+pbl/35,siz.Z+.9+pbl/190)
195 else
196 visb.Size = v3(siz.X+.9+pbl/190,siz.Y+.9+pbl/190,siz.Z+.9+pbl/190)
197 end
198 end
199 else
200 visb.Size = v3(siz.X+pbl/1000,siz.Y+pbl/1000,siz.Z+pbl/1000)
201 end
202 soundevent:FireServer(sound.PlaybackLoudness,visb.Size)
203 end)
204 end)
205 ]]
206
207 NLS(a,char)
208 bplaying = false
209if PDEVKEY == "" then
210warn'Pastebin dev key is missing makelist command wont work'
211end
212 function announce(x)
213 announcing = true
214 text = x
215 for i = 1, #text do
216 ttb.Text = string.sub(text, 1, i)
217 wait(txtsp)
218 end
219 spawn(function()
220 wait(5)
221 ttb.Text = " "
222 announcing = false
223 coroutine.yield()
224 end)
225 end
226 wait()
227 local bpos = it("BodyPosition")
228 local bgyr = it("BodyGyro")
229 bgyr.Parent = visb
230 bpos.Parent = visb
231 spawn(function()
232 while wait() do
233 if cansiz.Value==true then
234 bgyr.MaxTorque = v3(math.huge,math.huge,math.huge)
235 bpos.MaxForce = v3(math.huge,math.huge,math.huge)
236 else
237 bgyr.MaxTorque = v3(0,0,0)
238 bpos.MaxForce = v3(0,0,0)
239 end
240 end
241 end)
242 sound.Volume = 100
243 sound.MaxDistance = 50
244 sound:Play()
245 sound.Looped = true
246 function efc(x)
247 spawn(function()
248 if x == 1 then
249 local sp = it("Part")
250 sp.Name = "sphb"
251 sp.Size = visb.Size -v3(.2,.2,.2)
252 sp.Material = "Neon"
253 sp.Shape = Enum.PartType.Ball
254 sp.CFrame = visb.CFrame
255 sp.Anchored = true
256 sp.Massless = true
257 sp.CanCollide = false
258 sp.Color = visb.Color
259 sp.Parent = visb
260 local sval = 0
261 while wait() and sval < 50 do
262 sval = sval + 1
263 sp.Color = visb.Color
264 sp.Transparency = sp.Transparency + 0.03
265 sp.Size = sp.Size + v3(.3,.3,.3)
266 end
267 sp:Destroy()
268 coroutine.yield()
269 end
270 end)
271 end
272 shourai = 0
273
274 spawn(function()
275 local TweenService = game:GetService("TweenService")
276 local Colours = {Color3.fromRGB(255,255,255),Color3.fromRGB(255,0,0),Color3.fromRGB(255,128,0),Color3.fromRGB(255,255,0),Color3.fromRGB(0,255,0),Color3.fromRGB(0,255,255),Color3.fromRGB(0,0,255),Color3.fromRGB(191,0,255),Color3.fromRGB(255,0,191)}
277 local Nocol = {Color3.fromRGB(255,255,255),Color3.fromRGB(255,255,255)}
278 local Int = 0
279 while wait(.5) do
280 if shourai == 1 then
281 if Int == #Colours then Int = 0 end
282 Int = Int+1
283 TweenService:Create(vislt,TweenInfo.new(1),{Color = Colours[Int]}):Play()
284 TweenService:Create(visb,TweenInfo.new(1),{Color = Colours[Int]}):Play()
285 TweenService:Create(fir,TweenInfo.new(1),{Color = Colours[Int]}):Play()
286 TweenService:Create(ttb,TweenInfo.new(1),{TextColor3 = Colours[Int]}):Play()
287 elseif shourai == 2 then
288 if Int > #Nocol then Int = 0 end
289 if Int == #Nocol then Int = 0 end
290 Int = Int+1
291 TweenService:Create(vislt,TweenInfo.new(1),{Color = Colours[Int]}):Play()
292 TweenService:Create(visb,TweenInfo.new(1),{Color = Colours[Int]}):Play()
293 TweenService:Create(fir,TweenInfo.new(1),{Color = Colours[Int]}):Play()
294 TweenService:Create(ttb,TweenInfo.new(1),{TextColor3 = Colours[Int]}):Play()
295 elseif shourai == 3 then
296 if Int > #Nocol then Int = 0 end
297 if Int == #Nocol then Int = 0 end
298 Int = Int+1
299 TweenService:Create(vislt,TweenInfo.new(1),{Color = Nocol[Int]}):Play()
300 TweenService:Create(visb,TweenInfo.new(1),{Color = Nocol[Int]}):Play()
301 TweenService:Create(fir,TweenInfo.new(1),{Color = Nocol[Int]}):Play()
302 TweenService:Create(ttb,TweenInfo.new(1),{TextColor3 = Nocol[Int]}):Play()
303 end
304 end
305 end)
306 local tweening = false
307
308 function fot(tab,val)
309 local bool
310 bool = false
311 for i,v in ipairs(tab) do
312 if v == val then
313 bool = true
314 end
315 end
316 return bool
317 end
318
319 function mlistf:getlist()
320 for i = 1,#mlist do
321 if type(mlist[i]) == 'string' then
322 print(mlist[i])
323 end
324 end
325 end
326
327 function mlistf.size()
328 local lc = 0
329 for i = 1,#mlist do
330 if type(mlist[i]) == 'string' then
331 lc = lc + 1
332 end
333 end
334 return lc
335 end
336
337 function mlistf.add(tb)
338 local okcount = 0
339 local badcount = 0
340 for i = 1,#tb do
341 if not fot(mlist,tb[i]) and not fot(mlist,tonumber(tb[i+1])) then
342 if tonumber(tb[i]) ~= nil then
343 table.insert(mlist,tonumber(tb[i]))
344 else
345 okcount = okcount + 1
346 table.insert(mlist,tb[i])
347 end
348 else
349 local b = 0
350 if tonumber(tb[i]) == nil then badcount = badcount + 1 b = 1 end
351 end
352 end
353 announce("Added: "..okcount.." Songs to list "..badcount.." Already existed total music list count is: "..mlistf.size())
354 pcall(function() tb = nil end)
355 end
356
357
358 function mlistf:getsong(x)
359 local function taf(tab,val)
360 for index, value in pairs(tab) do
361 if value == val then
362 return index
363 end
364 end
365 end
366
367 if fot(mlist,x) then
368 local song = taf(mlist,x)
369 local id = song+1
370 return mlist[id]
371 else
372 return('song not found')
373 end
374 end
375
376
377
378 local searching = false
379 local cansearch = true
380 function searchForSongId(name, offset)
381 searching = true
382 cansearch = true
383 local currentPage = (offset/50)+2
384 if(currentPage >= maxPages) then
385 searching = false
386 announce("Unable to find song.")
387 return nil
388 end
389 local BloxMusicUrl = string.format("https://musiccoder.com/codes?perpage=100&offset=%d",offset)
390 local data = HttpService:GetAsync(BloxMusicUrl):lower()
391 local searchIndex = string.find(data, name)
392 if(searchIndex) and cansearch then
393 ttb.Text = "Found"
394 local startIndex = string.find(data, [[(<td>[0-9]+)]], searchIndex+#name)
395 local endIndex = string.find(data, [[</td>]], startIndex)
396 local songId = string.sub(data,startIndex+4,endIndex-1)
397 print(songId)
398 searching = false
399 return songId
400 else
401 searching = true
402 ttb.Text = (string.format("Song not found, checking page %d", currentPage))
403 if cansearch == false then searching = false return announce('search interupted') end
404 return searchForSongId(name, offset+50)
405 end
406 end
407
408 function tabletostring(table)
409 local s = "{"
410 for i=1,#table do
411 if i == 1 then s = (s..'"'..table[i]..'"') else s = (s..','..'"'..table[i]..'"') end
412 if i == #table then s = (s..'}') end
413 end
414 return s
415 end
416
417 function stringtotable(s)
418 local t2 = loadstring("return "..s)()
419 return t2
420 end
421
422 function createpasteb(x)
423 local URL_PASTEBIN_NEW_PASTE = "https://pastebin.com/api/api_post.php"
424 local dataFields = {
425 ["api_dev_key"] = PDEVKEY;
426
427 ["api_option"] = "paste"; -- keep as "paste"
428 ["api_paste_name"] = "MusicList"; -- paste name
429 ["api_paste_code"] = x; -- paste content
430 ["api_paste_format"] = "lua"; -- paste format
431 ["api_paste_expire_date"] = "1Y"; -- expire date
432 ["api_paste_private"] = "1"; -- 0=public, 1=unlisted, 2=private
433 ["api_user_key"] = ""; -- user key, if blank post as guest
434 }
435
436 local data = ""
437 for k, v in pairs(dataFields) do
438 data = data .. ("&%s=%s"):format(
439 HttpService:UrlEncode(k),
440 HttpService:UrlEncode(v)
441 )
442 end
443 data = data:sub(2)
444
445 local response = HttpService:PostAsync(URL_PASTEBIN_NEW_PASTE, data, Enum.HttpContentType.ApplicationUrlEncoded, false)
446 print("MusicListId: "..string.sub(response,22))
447 return response
448 end
449
450
451 function createlist()
452 print'creating list'
453 local t = tabletostring(mlist)
454 local a = createpasteb(t)
455 local b = string.sub(a,22)
456 showtl = false
457 ttb.Text = ('Created music list with Id:'.. b)
458 end
459
460 function addmlid(mlid)
461 local a = HttpService:GetAsync("https://pastebin.com/raw/"..mlid)
462 local b = stringtotable(a)
463 mlistf.add(b)
464 end
465 --CHATTED EVENTS--
466
467 plr.Chatted:connect(function(message)
468
469 if message:sub(1,5) == ".play" and not searching then
470 pcall(function()
471 local isid = true
472 local canplay = true
473 local pass1 = false
474 local pass2 = false
475 if mlistf:getsong(message:sub(7)) ~= 'song not found' then sd = mlistf:getsong(message:sub(7)) else sd = message:sub(7) end
476
477 bplaying = true
478 local id = ("http://www.roblox.com/asset/?id="..sd)
479 sound:Stop()
480 local Asset = game:GetService("MarketplaceService"):GetProductInfo(sd)
481 local assetn = Asset.Name
482 local assetc = Asset.Creator.Name
483
484 announce('Now Playing:'..'['..assetn..']'..' '..'by:'..'['..assetc..']')
485 currentid = tostring(sd)
486 sound.SoundId = id
487 sound:Play()
488 print("Now playing audio.")
489 bplaying = false
490 end)
491 end
492
493 if message == ".pause" then lastpitch = sound.Pitch sound.Pitch = 0 end
494 if message == ".resume" then sound.Pitch = lastpitch end
495 if message == ".reverb" then if rev.Enabled==false then rev.Enabled=true else rev.Enabled=false end end
496 if message == ".flange" then if fla.Enabled==false then fla.Enabled=true else fla.Enabled=false end end
497 if message == ".vmode" then if vmod.Value == false then vmod.Value=true else vmod.Value = false end end
498 if message == ".vmode2" then if vmod2.Value == false then vmod2.Value=true else vmod2.Value = false end end
499 --list funcs
500 if message == ".mlist" then mlistf:getlist() end
501 if message == ".makelist" then createlist() end
502 if message == ".getcmds" then print(cmdlist) announce'printed commands' end
503 if(string.sub(message,1,10):lower() == ".addlistp ") then
504 local nam = string.sub(message,11)
505 local sid = string.sub(sound.SoundId,33)
506 if tonumber(nam) == nil then
507 mlistf.add({nam,sid})
508 else
509 announce('Music name can not be a numerical value')
510 end
511 end
512
513 if(string.sub(message,1,9):lower() == ".getlist ") then
514 local mlid = string.sub(message,10)
515 addmlid(mlid)
516 end
517 --list funcs
518 if(string.sub(message,1,8):lower() == ".tosecs ") then
519 local minuval = string.sub(message,9)
520 print(minuval*60)
521 end
522 if message == ".showtl" then if showtl == false then showtl = true else showtl = false ttb.Text = ' ' end end
523 if message == ".showid" then announce(currentid) print(currentid) end
524
525 if(string.sub(message,1,6):lower() == ".tpos ") then
526 sound.TimePosition = tonumber(string.sub(message,7)) or sound.TimePosition
527 end
528
529 if(string.sub(message,1,7):lower() == ".splay ") then
530 local searchTerm = string.sub(message,8):lower()
531 local songId = searchForSongId(searchTerm, 0)
532 if(songId) then
533 sd = songId
534 bplaying = true
535 local id = ("http://www.roblox.com/asset/?id="..sd)
536 sound:Stop()
537 local Asset = game:GetService("MarketplaceService"):GetProductInfo(sd)
538 local assetn = Asset.Name
539 local assetc = Asset.Creator.Name
540 announce('Now Playing:'..'['..assetn..']'..' '..'by:'..'['..assetc..']')
541 sound.SoundId = id
542 currentid = tostring(sd)
543 sound:Play()
544 print("Now playing audio.")
545 bplaying = false
546 end
547 end
548 if(string.sub(message,1,6):lower() == ".sstop") then cansearch = false end
549
550 if message:sub(1,5) == ".stop" then
551 sound:Stop()
552 if visb:FindFirstChild("sphb") then visb.sphb:Destroy() end
553 bplaying = false
554 print("Audio stopped")
555 end
556 if message:sub(1,4) == ".vol" then
557 sound.Volume = message:sub(6)
558 print("Volume set to "..message:sub(6))
559 end
560 if message:sub(1,4) == ".spd" then
561 sound.PlaybackSpeed = message:sub(6)
562 print("Speed has been set to "..message:sub(6))
563 end
564 if message:sub(1,4) == ".fdp" then
565 fla.Depth=message:sub(6)
566 end
567 if message:sub(1,4) == ".fmi" then
568 fla.Mix=message:sub(6)
569 end
570 if message:sub(1,4) == ".fra" then
571 fla.Rate=message:sub(6)
572 end
573 if message:sub(1,4) == ".ptc" then
574 pse.Octave = message:sub(6)
575 print("Pitch has been set to "..message:sub(6))
576 end
577 if message:sub(1,4) == ".bld" then
578 sound:Destroy()
579 sound = it("Sound",visb)
580 sound.Name = "Music"
581 sound.Volume = 100
582 sound:Play()
583 sound.Looped = true
584 announce('fixed sound')
585 end
586
587 if message:sub(1,6) == ".stick" then
588 cansiz.Value = false
589 wait()
590 visb.CFrame = char["Head"].CFrame
591 wlds.Part1 = char["Head"]
592 end
593 if message:sub(1,7) == ".ustick" then
594 wlds.Part1 = nil
595 cansiz.Value = true
596 end
597 end)
598 --CHATTED EVENTS--
599
600 local function toHMS(s)
601 return string.format("%02i:%02i:%02i", s/60^2, s/60%60, s%60)
602 end
603 function soundtime()
604 local linepo = toHMS(sound.TimePosition)
605 local length = toHMS(sound.TimeLength)
606 local t = (linepo.." | "..length)
607 return t
608 end
609
610 spawn(function()
611 while true do
612 swait()
613 if showtl and not announcing and not searching then
614 ttb.Text = soundtime()
615 end
616 end
617 end)
618
619
620 soundevent.OnServerEvent:Connect(function(p,pbl,vsiz)
621 sini = sini + 1
622 bpos.Position = char.HumanoidRootPart.CFrame:pointToWorldSpace(v3(offset.X+pbl/100,offset.Y+pbl/100,offset.Z+pbl/100))
623
624 if pbl > 300 then
625 if not visb:FindFirstChild("sphb") and cansiz.Value == true then
626 efc(1)
627 end
628 end
629 if pbl > 0.001 then
630 shourai = 1
631 else
632 if not bplaying then
633 shourai = 3
634 else
635 shourai = 2
636 end
637
638 end
639 if pbl > 100 then
640 vislt.Enabled = true
641 else
642 vislt.Enabled = false
643 end
644 if pbl > 300 then
645 bgyr.CFrame = visb.CFrame * ca(ra(-1000,1000),ra(-1000,1000),ra(-1000,1000))
646 end
647 if pbl > 600 then
648 fir.Enabled = true
649 else
650 fir.Enabled = false
651 end
652
653 if pbl == 0 then
654 bgyr.CFrame = visb.CFrame * ca(0,0,0)
655 end
656 vislt.Brightness = pbl/100 *2
657 vislt.Range = pbl/100 *2
658 visb.Size=vsiz
659 end)
660
661 mlistf.add(
662 {"september","2945849922","kgr","458212953","caillou","212675193","hello","214902446","alone","639750143","partym","141820924","titanium","398159550","supernw","567268874","rpg","3282812666","emperor","1373297759","thomassin","400103862","bettyboop","3368041503","oldtown","2862170886","fade","279206904","oofrave","2590490779","epic","27697743","epic2","459420383","thisremix","332872001","anoko","2515718775","tokyogh","2679613065","asyoulikeit","2673522119","papermoon","1699263362"}
663 )