View difference between Paste ID: RnYvEWJL and B5nFTcTf
SHOW: | | - or go back to the newest paste.
1
-------------------------------------------------------------------
2
local set={--WARNING!: If Touched The Script Will Crash -----------
3
-------------------------------------------------------------------
4
5
			--SETTINGS--
6
			
7
	------------------------------
8
	--  true=on  --  false=off  --
9
	------------------------------
10
	
11
	----------------------------------------------------------------
12
	-- Make sure there is a ; after each setting, as shown below! --
13
	----------------------------------------------------------------
14
	
15
	--Important Script Information is BELOW the settings--
16
	
17
	--------------------------
18
	--  Important Settings  --
19
	--------------------------
20
	
21
	['ChangedSettingsStick'] = true; --Do settings you change in-game save? (this includes bans, admins, etc etc)
22
	
23
	['SettingsToIgnore'] = {}; --Place settings to ignore here
24
	
25
	['DataStoreKey'] = "iButtler's LuaBloxStudio V1"; --Datastore key
26
	
27
	['Storage'] = game:service('ServerStorage'); --Set this to where you store things (such as tools) game:sevrice('ServerStorage') is recommended as it does not replicate to clients (so exploiters can't use em) Use services, if you use things like game.Lighting it will break if Lighting is renamed.
28
	
29
	--------------
30
	--  Trello  --
31
	--------------
32
	
33
	--You NEED to enable HttpEnabled in order for this to work! To enable it follow the below instructions:
34
	--Run this following command in the command bar as shown in the screenshot: game:service('HttpService').HttpEnabled=true print('Enabled Http')
35
	--Screen shot: http://prntscr.com/46uztz
36
	
37
	['Trello'] = true; --Pulls Bans/Admins from a Trello board every set number of seconds on every server of everygame this script is in (that has Http enabled and uses the same BoardID)
38
	
39
	['BoardID'] = '9HH6BEX2'; --Trello board ID, its in the URL of your board: https://trello.com/b/9HH6BEX2/epix-incorporated-synced-ban-list - The id for this board is 9HH6BEX2 (by default uses our exploiter ban list.)
40
	
41
	['HttpWait'] = 10; --How often (in seconds) should the list(s) update? Recommended 10+ to avoid HttpService problems
42
	
43
	--[[
44
	How to set up your own multi-game list for your games:
45
	
46
	Below instructions are for bans but can also be applied to admin lists,
47
	refer to "To use this for synced admin lists" under the instructions for admin lists info. 
48
	
49
	By default the Trello settings are set to use our ban list of exploiters, but you may 
50
	want to change it so that you can set up and control your own multi-game, autoupdating 
51
	list(s). So now I am going to tell you how to do that.
52
	
53
	1. Enable Http, refer to a few lines up to learn how to easily and quickly do that.
54
	2. Make a Trello account (or sign in with google)
55
		-Go to http://trello.com, click "Log in with Google" or "Sign up-It's Free" and do the account making stuff it tells you to
56
	3. After you sign up/log in you need to make a new board, click the + then click "New Board..." - http://prntscr.com/46v2fq
57
	4. Give your board a name and click the "Change..." next to "This board will be private" and make sure you make the board public! - http://prntscr.com/46v4bf
58
	5. Change one of the lists titles to "Ban List" In the screenshot I accidentally typed "cards" instead of "lists" - http://prntscr.com/46v5af
59
	6. Add people to the bans by clicking "Add a card..." and then typing their username as the title, username:userid, or if its a group Group: groupname:groupid - http://prntscr.com/46v74e
60
	7. Now you need to just set BoardID to your board's ID, refer to http://prntscr.com/46v74e for this, or refer to the comment next to the BoardID setting
61
	8. You are done, just configure the BoardID and enable Http in each of your games and your multigame banlist is done, confure your board however you want as long as you leave the "Ban List" list that contains name and keep the board public so the script can read it!
62
	Use our site for reference: https://trello.com/b/9HH6BEX2/epix-incorporated-synced-ban-list
63
	
64
	To use this for synced admin lists, simply repeat the above steps replacing Ban List with
65
	Admin List, TempAdmin List, or Owner List, anyone added to these list will appear in
66
	the admin list with [Synced] next to their name, they will not be able to be unadmined.
67
	Admin lists do not yet support Group: NAME:ID or USER:ID formats, at the moment you can
68
	only add the person's username and will need to change it if they change their name.
69
	Future ID support for admin lists is planned.
70
	--]]
71
	
72
	---------------------
73
	--      Tables     --
74
	---------------------
75
	
76-
	['Owners'] = {"LuaBloxStudio","iButtler","IToole52","Your Name Here"; -- Are able to set Admins who can ban/etc... using :pa name, format is USERNAME or USERNAME=USERID
76+
	['Owners'] = {"iiNodlez","epicgurl117","Altra0x8","KeroroGunso2016"; -- Are able to set Admins who can ban/etc... using :pa name, format is USERNAME or USERNAME=USERID
77
	
78
	['Admins'] = {"Anyone"}; -- Sets Admins who can use ban/kick/admin or shutdown, format is USERNAME or USERNAME=USERID
79
	
80
	['TempAdmins'] = {"Normal People"}; -- Sets Admins who can't use ban/kick/admin or shutdown, format is USERNAME or USERNAME=USERID
81
	
82
	['BanList'] = {"Someone You Don't Like Very Much","CornCobber","v3rmillion"}; -- Add people to ban here. Format to use UserId is "Name=UserId" EX: "John32=192845", this bans any player named John32 or has an id of 192845 (This way they can't bypass the ban by changing their username) use $group=GROUPID to ban groups.
83
	
84
	['MuteList'] = {"Some Chat Exploiter"},"Chat Spammer","Chat Flooder","CornCobber","v3rmillion"; -- Add the names of people to mute (makes it so they cant talk)
85
	
86
	------------------------------
87
	--  Prefix/Split/Bind Keys  --
88
	------------------------------
89
	
90
	['Prefix'] = ""; -- This comes before each admin command (:kill kohl)
91
	
92
	['AnyPrefix'] = "!"; -- This comes before each player command (commands that can be run by anyone, !rejoin, !ping, etc)
93
	
94
	['SpecialPrefix'] = ""; -- Prefix to use with special functions (!admin,!nonadmins,!all,!others,!random) By default this is now set to nothing to avoid confusion.
95
	
96
	['SplitKey'] = " "; -- This is what seperates command arguments eg: player raiders in :team player raiders
97
	
98
	['BatchSplit'] = "/"; --This seperates arguments of the batch command (":batch kill bob/fire me Bright blue/fling kohl")
99
	
100
	['ConsoleKey'] = "'"; --Key that opens the console, default is '
101
	
102
	----------------------
103
	--  Basic Settings  --
104
	----------------------
105
	
106
	['Console'] = true; --Determines if the script's console can be used or not
107
	
108
	['AutoUpdate'] = false; -- Automatically get the newest version? You need to have the model in your inventory on your profile in order for autoupdate to work.
109
	
110
	['FunCommands'] = true; -- Set to false if you don't want any fun commands (For Strict Places)
111
	
112
	['NoTalk'] = true; -- Enable notalk cmds (Good for group trainings)?
113
	
114
	['HelpSystem'] = true; -- Enable the Help System? (!help command)
115
	
116
	['ChatLog'] = true; -- Log all chats for the server? 
117
	
118
	['MaxNumberOfLogs'] = 1000; -- How many logs to display at a time (MAX is 1500 to avoid server lag/other issues)
119
	
120
	['JoinMessage'] = false; -- Display a message with player info when a player joins, set group id in group settings if you want it to display if a player is in a group or not and if so what rank they are.
121
	
122
	['DonorStuff'] = true; -- Sets if donors are allowed to show off that they donated, when people donate you get 10% of what they payed, so if someone pays 300r for a cape you get 30r out of it :D!
123
	
124
	['DonorBongos'] = true; -- Donors allowed to have their donor bongos? If set to false they only get their cape.
125
	
126
	['PermBanKey'] = '0.49971007415998'; -- Key (Random String) to use in persistent perm ban (change if you perm banned someone by accident, make it 100% random, if you want a random key generator, put print(math.random()) into the command bar in studio and hit enter, then just copy what it gives you in the output window)
127
	
128
	['FreeAdmin'] = false; -- Set to true if you want everyone to get the set type of admin (not recommended)
129
	
130
	['FreeAdminType'] = 'TempAdmin'; -- Type of admin for FreeAdmin (TempAdmin/Admin/Owner)
131
	
132
	['AutoClean'] = false; -- AutoClean the server? (!clean)
133
	
134
	['AutoCleanDelay'] = 60; -- How long to wait between AutoCleans (in seconds)
135
	
136
	['PlayerCommands'] = true; -- Sets whether or not nonadmins can use player commands (!rejoin,!ping,!cmds,etc)
137
	
138
	['OwnersAreTrueOwners'] = false; -- This indicates whether or not Owners are considered True Owners, if set to true Owners get the same commands as the place owner (permban and other true owner cmds)
139
	
140
	['PMUsableByAnyone'] = false; -- Set this to true if you want it so anyone can use the PM command
141
	
142
	['AdminsSpawnWithGuis'] = false; -- This determines if admins spawn with the admin chat and cmd box, note the admin chat is disabled when custom chat is enabled (has a admin mode)
143
	
144
	['HelpGui'] = true; --This determines if players spawn with the helpgui or not
145
	
146
	['UpdateShutdown'] = false; --Automatically shutdown the game if it was updated
147
	
148
	['MusicList'] = {{Name='SadPiano',Id=130798493}}; -- Add music to this table using the format: {Name='ExampleSong',Id=1234567} so that the table would look like local MusicList={{Name='ExampleSong',Id=1234567};{Name='ExampleSong2',Id=1234568}}, if you want to add pitch/volume simply insert Pitch and/or Volume EX: {Name='ExampleSong2',Id=1234568,Pitch=2,Volume=0.5}
149
	
150
	['CustomChat'] = false; --Custom chat system, aside from chat modes and various other things, the custom chat cannot be muted by exploiters and exploiters can not use it to run chat commands.
151
	
152
	['CustomChatType'] = 'Both'; --Classic/Bubbles/Both, Determines chat mode, simular to ROBLOX's chat settings.
153
	
154
	['CustomPlayerList'] = false; --A very basic and simplistic playerlist that I do not plan to spend much time on, it shows names colored by team color, has a menu for each name (click the name) and does not yet show leader stats, not finished and plan to update in the future.
155
	
156
	['MessageOfTheDay'] = false; --Determines if the Message of the Day is shown to admins on-join, you can set your own decal/model to use with the message of the day below, you simply place the message into its description after you set its ID
157
	
158
	['MessageOfTheDayID'] = 166040615; --ID Of model/decal to grab the message of the day from (needs to be set as the decal/model's description)
159
	
160
	['BuggedCommandMatching'] = false; --Set to true if you want to use the old buggy string matching that let you do things like "Hello :kill me" (really you could always set the prefix to something like "Hello " so you can do "Hello kill me")
161
	
162
	---------------------
163
	--  Anti-Exploit   --
164
	---------------------
165
	
166
	['ExclusionList'] = {}; -- Add the names of people you want to exclude from the AntiExploit to this list, note that admins are already excluded
167
	
168
	['ExploitAlert'] = true; --Alerts admins when someone goes nil/chats something thought to be exploit related, this is likely no longer going to work as the anti nil will disconnect a player as they are leaving to make sure they are not lingering in the nil/causing problems. Only notified if the first kick failed.
169
	
170
	['AntiChatCode'] = true; -- Prevents non-admins from running code/commands via chat (Add new things to detect into the WordList table)
171
	
172
	['Detection'] = true; -- Will attempt to detect certain exploits
173
	
174
	['AntiRobloxLocked'] = true; --  Disconnects any player who is or becomes RobloxLocked. (Recommended you keem this enabled, if a player joins RobloxLocked they will not be hooked by the script, this removes them before they break something.)
175
	
176
	['AntiNewAccount'] = false; -- Prevents accounts under the set age from joining.
177
	
178
	['MinimumAge'] = 100; -- Age a player must be above (in days) if AntiNewAge is enabled.
179
	
180
	['AntiSpeed'] = false; -- Trys to stop speed hackers
181
	
182
	['AntiGui'] = false; -- Prevents non-game/admin guis from being spawned on players, such as the account stealing gui
183
	
184
	['AntiSelection'] = true; -- Crashes a player if their selection changes (so if they are using studio tools like drag, move, resize, etc)
185
	
186
	['AntiNil'] = true; -- Crashes/Kicks any non-admins who attempt to go "nil"
187
	
188
	['AntiScriptsDisabled'] = true; -- If the client script cannot be loaded onto the player or takes to long to check in the player is kicked
189
	
190
	['AntiAnimation'] = false; -- Prevents animation exploit
191
	
192
	['AntiNameIdChange'] = true; -- Attempts to stop players from locally changing their name/id to fool local scripts
193
	
194
	['AntiGod'] = true; -- Prevents non-admins from being godded
195
	
196
	['AntiLeak'] = false; -- Makes it a little harder for people to steal your game, don't know how well it will work if at all but its worth a shot.
197
	
198
	['RenameGameObjects'] = false; --Renames things like Lighting, Players, and Workspace, will break most scripts that are not coded to work in such situations and confuse most people using badly coded explorers or studio.
199
	
200
	['NerfExplosions'] = false; --Makes it so any explosions get nerfed, meaning they wont do any damage.
201
	
202
	['WordList'] = {}; -- Add kick words to this list, will kick a player if they say something on the list, works with string patterns.
203
	
204
	['AllowedGuiList'] = {}; 
205
	--If there is a gui in your game that is not in startergui 
206
	--then add its name to this table, do note that if the 
207
	--name of the gui is just ScreenGui or something like 
208
	--that, if a hacker inserts a gui with the same name 
209
	--it will not be removed, so make sure you make the name 
210
	--of the gui very specific.
211
	
212
	---------------------
213
	-- Group Settings  --
214
	---------------------
215
	
216
	['GroupRanks'] = false; -- If group members matching the ranks in "Ranks" are given admin/banned (depending on what you set)
217
	
218
	['GroupOnlyJoin'] = false; -- Makes it so ONLY people in the set group can join the game.
219
	
220
	['GroupId'] = 0; -- Id of group, used for info/join message, if set will display a user's rank when the info command is used on them.
221
	
222
	['Ranks'] = {}; -- Add ranks to have admin/be banned format is {Group=GROUPID,Rank=RANKNAME/NUMBER,Type=ADMINTYPE}; 
223
	--GROUPID is the ID of the group the rank belongs to and that the player must be in
224
	--RANKNAME/NUMBER is either the name of the rank (Generals) or its number (252) if you want to admin rank 252 and every rank above it, simply set it to negative, so Rank=-252 will admin anyone in rank 252 and up
225
	--ADMINTYPE is the type of admin players in the rank will get, this can be Temp, Admin, Owner, or Banned
226
	--[[ In the end your table should look something like this: 
227
	
228
	['Ranks'] = {
229
		{Group=124324,Rank=142,Type='Temp'};
230
		{Group=1932348,Rank='Generals',Type='Owner'};
231
		{Group=1284124,Rank=-193,Type='Admin'};
232
		{Group=1399424,Rank=-1,Type='Banned'}
233
	}
234
	
235
	--]]
236
	
237
	---------------------
238
	--    VIP Admin    --
239
	---------------------
240
	
241
	['VipAdmin'] = false; -- If someone can have admin for owning an item
242
	
243
	['ItemId'] = 0; -- The item they must own in order to have admin
244
	
245
	['ItemType'] = 'GamePass'; -- type of item. (GamePass/Badge/Shirt)
246
	
247
	['VIPAdminType'] = 'TempAdmin'; -- Type of admin VIPs get (TempAdmin/Admin/Owner)
248
	
249
	['FriendAdmin'] = false; -- Set to true if you want people on your friendlist to have admin
250
	
251
	---------------------
252
	--  GUI Settings   --
253
	---------------------
254
	
255
	['PrimaryColor'] = Color3.new(0,0,0); --Primary GUI Color (Default black) (Remember, each 1 translates to a 255, keep that in mind when changing colors, use things like 124/255 to get the color you want)
256
	
257
	['SecondaryColor'] = Color3.new(1,1,1); --Secondary GUI Color (Default white)
258
	
259
	['Font'] = 'Arial'; --Font
260
	
261
	['TextColor'] = Color3.new(1,1,1); --Text Color (Default white)
262
	
263
	['TextStrokeTransparency'] = 0; --Text Stroke Transparency (0-1)
264
	
265
	['TextStrokeColor'] = Color3.new(0,0,0); --Color of the text stroke around letters (Default black)
266
	
267
	['Transparency'] = 0.5; --Main GUI Transparency (0-1)
268
	
269
	['Animations'] = true; --Determines if to animate stuff or not
270
	
271
	['MessageAnimations'] = true; --Same as above but specifically for messages
272
	
273
	------------------------------------------------------
274
	--					END OF SETTINGS					--
275
	------------------------------------------------------
276
}
277
278
	---------------------
279
	--    IMPORTANT    --
280
	---------------------
281
	--[[
282
		For AutoUpdate to work this script's model needs to be in your inventory,
283
		if you got the script from anywhere other than my models the AutoUpdate
284
		will not work due to ROBLOX security nonsense. You can find the model
285
		here: http://www.roblox.com/Kohls-Admin-Epix-Edit-item?id=145629584
286
		
287
		
288
		For information about LoadStringEnabled please refer to the following:
289
		
290
		http://wiki.roblox.com/index.php?title=Security#LoadStringEnabled
291
		http://wiki.roblox.com/index.php?title=Points_tutorial#Restrictions
292
		
293
		If you want to use the :s command you will need to set LoadStringEnabled
294
		to true. It can be found by going into studio, opening the explorer and properties
295
		windows, clicking on ServerScriptService and under properties checking
296
		LoadStringEnabled. Loadstring is only used in the script for Output and
297
		the scripting command. The script will function fine without it.
298
		------------------------------------------------------------------------
299
		IF THERE ARE NEW SETTINGS YOU WILL NEED TO MANUALLY UPDATE THE SCRIPT TO
300
		CHANGE THEM, THEY WILL OTHERWISE BE LEFT AS THE DEFAULT.
301
		------------------------------------------------------------------------
302
		Please carefully read each setting's description BEFORE changing something
303
		as you could break something if you set something the wrong way.
304
		------------------------------------------------------------------------
305
		If you decide to take something from this or decide to make your own
306
		edited version, please leave credit to Kohltastrohpe (Scripth) and
307
		myself (Sceleratis). Taking something and changing it while leaving credit
308
		is fine, however taking something, claiming it is yours, and not changing
309
		ANYTHING is stealing it, which would only make you look bad. Please
310
		don't be that person.
311
		
312
		The ideas that you guys suggest are what makes this the constantly evolving and changing
313
		thing that it is, so thank you :D
314
		------------------------------------------------------------------------
315
		You can find Epix members and my self from time to time in Keynet's (Epix Inc. CEO Mr. Failz)
316
		Twitch stream! Check it out when you get a chance: twitch.tv/ekeynet
317
		------------------------------------------------------------------------
318
		Find A security flaw or bug? 
319
		Know of a way to detect an exploit or make the AntiExploit better?
320
		Think of a way to make the script better? 
321
		Send me a message!
322
		
323
	---------------------
324
	-- DISCLAIMER/INFO --
325
	---------------------
326
		Credit: 
327
		
328
		-Kohltastrophe (Scripth) for the original script this was based on and for sharing
329
		some of his ideas and commands, and his continued help and support
330
		
331
		-einsteinK for the original SBL older versions used and his help with some things
332
		
333
		-Sceleratis (montano60... myself <3) for this version of iButtler's LuaBloxStudio
334
		
335
		-Arlikas for testing nearly anything I ask him to
336
		
337
		-Everyone who helped me with testing, and suggested new ideas, features, and commands.
338
		
339
		You may notice that there is hardly anything from the original iButtler's LuaBloxStudio 
340
		code-wise left in here. Its called iButtler's LuaBloxStudio v1 because it is 
341
		based on Kohl's script and started as a simple edited version of his admin, 
342
		and it IS an edited version of his admin, just very heavily edited so much 
343
		so that barely anything has been left untouched. I have no plans to change 
344
		the name. 
345
		
346
		I in no way claim to have made iButtler's LuaBloxStudio Commands, I have only
347
		made this version of it. 
348
		
349
		This does not have a crash ban anymore, it now disconnects
350
		players, so if a player joins and suddenly crashes, IT IS NOT FROM THIS.
351
		
352
		I do not take responsibility for you, your game, or your actions. Anything that
353
		happens as a result of your actions is your fault not mine. If you change a setting
354
		and suddenly the script stops working or something goes wrong, please report it to
355
		me (Sceleratis) as a bug! If you change anything other than the settings in the settings
356
		section of the script you run the risk of breaking the script. I will not help you if
357
		it stops working because you wanted to change parts of the code, you change it at
358
		your own risk and will not receive help from me, there is a clear warning right before
359
		the main area of the script.
360
		
361
		If you find a bug in the script please report it to me (Sceleratis) so it can be fixed!
362
		
363
		If you have any questions, need help, or want to contact me you can send 
364
		me a Private Message on the main website (roblox.com) via my profile ("Send Message"
365
		under my avatar/character picture.)
366
		
367
		KohltastropheRBLX had absolutly nothing to do with the developement of this script,
368
		he is not the real Kohl. If you are wondering why I dislike him so much,
369
		this is why: http://prntscr.com/49snyl
370
		
371
		If you want to support the real Kohltastrophe put the following on your profile:
372
		"Scripth is the real Kohltastrophe. Put this on your profile so people know."
373
		
374
		For the people who say "Ew Kohl's" I don't understand why, for starters you can
375
		easily see this is almost completely different. The original iButtler's LuaBloxStudio was
376
		something completely new and helped pave the way for most of the admin scripts
377
		that came after it. iButtler's LuaBloxStudio was a wildly used script (And still is.) 
378
		If you are going to complain I would like to see you make something better.
379
		
380
		While I will not help if you break something while editing this script
381
		I have decided against making it so you can't, as per an interesting thing
382
		found by Kohltastrophe and his friend, which he is now using in his new script
383
		for now, we can upload a module script that would be the main script and then
384
		run it from this script in-game, and it does not need to be a free model, meaning
385
		that no one can see the script's code and the script would always be up to date.
386
		I have decided not to do this because although a really good idea, I do understand
387
		that some of you like to disable the AutoUpdate and maintain your own version of your
388
		script for your games, this is a common practice with group owners. While I wont
389
		make it so you can't edit the script it is still recommended you use plugins instead
390
		of directly changing code in the script to avoid breaking anything, feel free to learn
391
		from it if you wish and edit if you know what you are doing. Please do not just reupload
392
		this script and claim you made it, you did not, don't pretend you did, it just gets 
393
		you on my bad side. :p
394
		
395
	--]]
396
	---------------------
397
	-- Tips and Tricks --
398
	---------------------
399
	--[[
400
		With this admin you can do a command on multiple people at a time;
401
			 :kill me,noob1,noob2,!random,%raiders,$123456,!nonadmins
402
			-- kills you, noob1, noob2, a random person, team raiders, people in group 123456, and nonadmins.
403
			You can also run silent commands using /e, for example:
404
			"/e :kill kohl" Do not that this will still show up in logs.
405
			
406
		You can also use a variety commands for different people;
407
			 !all -- Everyone in the server
408
			 !others -- Everyone but you
409
			 !me -- You
410
			 !admins -- Admins in the server
411
			 !nonadmins -- People who are not admins in the server
412
			 !random -- A random person, this can include you.
413
			 %TEAMNAME -- Ex: :kill %raiders will kill everyone in team Raiders.
414
			 $GROUPID -- Let you kill anyone in a specific group, if an id is not given it will use the GroupId setting.
415
			 -PLAYERNAME -- Lets you exclude players from commands, :kill !all,-kohl will kill everyone but kohl
416
			
417
		If you want to add cameras to your game (like saved into your game so you don't need to use the admin script to spawn them every new server)
418
		then just make a camera, needs to be a single part, so a sphere, brick, what ever it may be, make sure its anchored and locked
419
		just simply position it where you want in workspace, then make its name Camera: NAMEHERE
420
		so for example: Camera: Cam1
421
		the name is very important as the script will look for it in workspace when the game starts.
422
		make sure you name each camera something diffierent.
423
		
424
		MESSAGES/HINTS FOR OTHER SCRIPTS:
425
		If you would like to have the hints/messages from this script usable in other SERVER (not local)
426
		scripts, then simply put the follow at the top of your script,
427
		
428
		message=_G['Message']
429
		hint=_G['Hint']
430
		
431
		USAGE EXAMPLES: 
432
		hint(msg,playerstable) - message(title,msg,playerstable)
433
		
434
		(Do note that playerstable needs to be a table containing players NOT player names! 
435
		Use game:service('Players'):children() to send a message to everyone.)
436
		
437
		hint('Hello people',game:service('Players'):children())  <=== sends "Hello people" to all players in game
438
		hint('Heyo montano',{game:service('Players').Sceleratis}) <=== Sends "Heyo montano" to the player Sceleratis
439
		message('Server Message','Hello people',game:service('Players'):children())  <=== Makes a message with the title "Server Message" and a message of "Hello people"
440
		message('Message from swagyguy','Heyo montano',{game:service('Players').Sceleratis}) <=== Works the same as above but only the player Sceleratis sees it
441
		
442
	--]]
443
	
444
	---------------
445
	-- CHANGELOG --
446
	---------------
447
	
448
	local changelog={
449
	'The changelog is trimmed when it gets too long! Only shows most recent versions.';
450
	'';
451
	'KEY: -Removed +Added *Changed/Fixed !Important';
452
	'';
453
	'430:';
454
	'*Bug fixes to detection,';
455
	'';
456
	'429:';
457
	'*Script now uses Google to check if Http is enabled';
458
	'+Http added to server details';
459
	'*Visual updates to the donation gui';
460
	'+RenameGameObjects setting in AntiExploit';
461
	'+Detection setting in AntiExploit';
462
	'+Detection of the currently leaked Stigma exploit';
463
	'*Bug fixes';
464
	'';
465
	'428:';
466
	'*Group admin updates';
467
	'*Admin list supports userId now';
468
	'!ALL PLACE OWNERS USING GROUP ADMIN REFER TO THE SETTINGS SECTION AS THE OLD WAY WILL LIKELY NO LONGER WORK';
469
	'*Admin list shows admins currently in the game';
470
	'';
471
	'427:';
472
	'*Fixed a typo in the SplitKey setting decription';
473
	'+Added a section to settings for prefix/split/bind keys';
474
	'';
475
	'426:';
476
	'+timeban command';
477
	'*Bug fixes';
478
	'*Chat bubble updates';
479
	'';
480
	'425:';
481
	'+AntiScriptsDisabled setting';
482
	'*Updated AntiNil';
483
	'+PlayerRemoving function';
484
	'*AntiExploit updates';
485
	'-Removed the message telling you a player tried to go nil due to bugs';
486
	'';
487
	'424:';
488
	'*SyncBanList setting is now Trello';
489
	'*Trello now supports admin lists, suggested by devSparkle';
490
	'!Refer to settings for new information regarding SBL/Trello';
491
	'';
492
	'423';
493
	'+Permissions command, suggested by Dragoloy';
494
	'*Bug fixes';
495
	'';
496
	'422:';
497
	'!Place owners apparently get money when people donate in their game! :D!!!!';
498
	'*Updated donorstuff description';
499
	'';
500
	'421:';
501
	'*Changed how FunCommands are checked';
502
	'+Added 3 new admin levels for FunCommands';
503
	'*Place owners have access to all commands (including any donor ones)';
504
	'';
505
	'420:';
506
	'+DonorBongos setting';
507
	'!420 l0l';
508
	'';
509
	'419:';
510
	'*Bug fixes';
511
	'';
512
	'418:';
513
	'*Bug fixes';
514
	'';
515
	'417:';
516
	'*New song(s)';
517
	'';
518
	'416:';
519
	'+Resize command';
520
	'!Credit to Drezmor for the original resize command';
521
	'!Credit to Kohltastrophe for figuring out bugs in the resize and fixing it/helping to convert it';
522
	'';
523
	'415:';
524
	'*Made the crash less bulky and less ew looking';
525
	'';
526
	'414:';
527
	'*Updates to the AntiExploit';
528
	'*Changed how the guis look a bit';
529
	'';
530
	'413:';
531
	'+Added a credit thing with information about why.';
532
	'*Bug fixes';
533
	'';
534
	'412:';
535
	'*Bug fixes';
536
	'';
537
	'411:';
538
	'+A quote, taken from 111\'s profile';
539
	'';
540
	'410:';
541
	'*Minor changes';
542
	'!I am outraged at how people believe KohltastropheRBLX, and disapointed.';
543
	'';
544
	'409:';
545
	'+BodySwap command, suggested by MxLegit';
546
	'!Special thanks to Arlikas for being a test subject for new features/commands';
547
	'';
548
	'408:';
549
	'+VIPAdminType setting';
550
	'+Shirts usable for VIP admin';
551
	'';
552
	'407:';
553
	'+NerfExplosions setting (default off), semi inspired by a suggestion from TheFurryFish';
554
	'';
555
	'406:';
556
	'+BeardedAlien cape, suggested by LordOfFootball';
557
	'';
558
	'405:';
559
	'*Bug fixes';
560
	'*Gui Updates';
561
	'+Font setting';
562
	'+TextStrokeTransparency setting';
563
	'*Minor changes';
564
	'';
565
	'404:';
566
	'*Minor changes';
567
	'';
568
	'403:';
569
	'*Minor changes';
570
	'';
571
	'402:';
572
	'*Bug fixes';
573
	'*Join message off by default';
574
	'';
575
	'401:';
576
	'+Package related commands!';
577
	'+:rleg, change right leg package thing';
578
	'+lleg, same as rleg for left leg';
579
	'+rarm, same as above for right arm';
580
	'+larm, I hope you see the trend here';
581
	'+torso, same as all above but for torso';
582
	'';
583
	'400:';
584
	'*Bug fixes';
585
	'!If you have a way to make the script better be sure to message me :3';
586
	'';
587
	'399:';
588
	'*Name now supports health';
589
	"*Use :name player hide to hide a player's name";
590
	'';
591
	'398:';
592
	'*Bug fixes';
593
	'';
594
	'397:';
595
	'*Bug fixes';
596
	'';
597
	'396:';
598
	'*SBL Bug fixes';
599
	'';
600
	'395:';
601
	'*Bug fixes';
602
	'';
603
	'394:';
604
	'*Bug fixes';
605
	'*Converting some things over for if loadstring is removed';
606
	'-Map command';
607
	'-AntiNoclip, it was mostly useless.';
608
	'-Ragdoll command';
609
	'*Code changes';
610
	'*Cape command supports texture'; 
611
	'-Removed and changed most things that rely on loadstring/LoadOnClient';
612
	'!When/If roblox removes loadstring, all local scripting will no longer work!';
613
	'';
614
	'393:';
615
	'*Security updates';
616
	'';
617
	'392:';
618
	'*Bug fixes';
619
	'!Thanks go to TimelessMaster and EncryptedZ for bringing something to my attention';
620
	'';
621
	'391:';
622
	'*Fixed some bugs in the jail';
623
	'';
624
	'390:';
625
	'*Changed the message animations a bit';
626
	'*Countdown no longer says countdown';
627
	'';
628
	'389:';
629
	'*Updated stuff with crash';
630
	'+Unlag command (ONLY APPLIES TO PEOPLE LAGGED VIA :lag)';
631
	'';
632
	'388:';
633
	'*Updates with group admin code';
634
	'+CheckGroupAdmin function';
635
	'*Group admins are un-admined on leave';
636
	'';
637
	'387:';
638
	'*Crash is more brutal now';
639
	'';
640
	'386:';
641
	'*Restoremap is faster and no longer owners only (admins+)';
642
	'';
643
	'385:';
644
	'*Bug fixes';
645
	'';
646
	'384:';
647
	'*Updated the Important and Info sections';
648
	'';
649
	'383:';
650
	'*Bug fixes';
651
	'';
652
	'382:';
653
	'+clickteleport command (lets you move and rotate people to where you want, hold r to rotate)';
654
	'+clickwalk command (same as teleport but makes target walk to point)';
655
	'';
656
	'381:';
657
	'+ForceView command (good for showing people how to do stuff)';
658
	'';
659
	'380:';
660
	'*Bug fixes';
661
	'';
662
	'379:';
663
	'*Donor status on/off button shows up without custom cape';
664
	'*Updated the built in word list to fix a problem where people were kicked for chatting "children"';
665
	'';
666
	'378:';
667
	'*AntiGod enabled by default';
668
	'*AntiGod now kills';
669
	'*AntiGod checks for the god exploit on spawn';
670
	'*Bug fixes';
671
	'';
672
	'377:';
673
	'+MessageOfTheDayID setting (lets you set your own)';
674
	'+Added superjump as an acceptable command for nograv';
675
	'';
676
	'376:';
677
	'*Fixed a bug with pitch/volume in music reported by Larney';
678
	'';
679
	'375:';
680
	'*Bug fixes';
681
	'';
682
	'374:';
683
	'+Added a setting to use the old buggy string matching';
684
	'*Bug fixes';
685
	'';
686
	'373:';
687
	'*Normalify now stops crucify, cut, and puke.';
688
	'';
689
	'372:';
690
	'*AntiNil will disconnect players as they ar leaving if they are not an admin';
691
	'*AntiNil is unlikely to notify you if any non-admin goes nil as per recent updates';
692
	'+ExploitAlert setting';
693
	'*Messages about a player going nil are less likely to pop up randomly';
694
	'';
695
	'371:';
696
	'*Changed username to Sceleratis and changed stuff accordingly';
697
	'';
698
	'370:';
699
	'*Bug fixes';
700
	'';
701
	'369:';
702
	'*Bug Fixes';
703
	'';
704
	'368:';
705
	'*Bug fixes';
706
	'';
707
	'367:';
708
	'*Fixed a bug where you could say something like "Hello :ff me" to run :ff me';
709
	'';
710
	'366:';
711
	'*Bug fixes';
712
	'';
713
	'365:';
714
	"+Console, by default press ' to open it";
715
	'+ConsoleKey setting';
716
	'+Console setting';
717
	'*Bug fixes';
718
	'';
719
	'364:';
720
	'*MODT on join disabled by default';
721
	'';
722
	'363:';
723
	'*GlitchGhost and GlitchDisorient commands now have an intensity setting';
724
	'';
725
	'362:';
726
	'*Updated the disclaimer';
727
	'+Phase commands, thanks go to Kohl for showing and sending me his phase command';
728
	'+MODT command';
729
	'+Message of the day and setting for it';
730
	'';
731
	'361:';
732
	'+GlitchDisorient command';
733
	'+GlitchGhost command';
734
	'+UnGlitch command';
735
	'!The two glitch commands were inspired by a neat effect Janthran showed me';
736
	'';
737
	'360:';
738
	'*Made bots better';
739
	'-Removed PathfindingService stuff from bots';
740
	'The path finding is not good enough yet';
741
	'';
742
	'359:';
743
	'+Animations setting';
744
	'+MessageAnimations setting';
745
	'';
746
	'358:';
747
	'+FieldOfView command';
748
	'';
749
	'357:';
750
	'*Moved RemoteEvent to ReplicatedStorage';
751
	'+Funbox command, teleports people to my fun box lel';
752
	'';
753
	'356:';
754
	'+On/Off toggle in cape change gui for donators to disable donor status in specific games';
755
	'';
756
	'355:';
757
	'*Fixed ban';
758
	'';
759
	'354:';
760
	'+Added some on-join code to make Scripth look like his original account Kohltastrophe as per his request';
761
	'';
762
	'353:';
763
	'!Apparently KohltastropheRBLX re-uploaded this and managed to get nearly 20k takes off of it, qq';
764
	'!This script was made by Kohltastrophe(Scripth) and Sceleratis with some help now and then from einsteinK.';
765
	'!While I do not care if you make your own version, outright stealing this and taking full credit is not acceptable.';
766
	'*Code updates.';
767
	'';
768
	'352:';
769
	'*Updates to how scroll guis look, has more of a drop down type thing';
770
	'';
771
	'351:';
772
	'*SBL Updated to use Trello and HttpService';
773
	'!All place owners who use our exploiter list (default sbl settings) please enable Http!';
774
	'!Instructions for enabling Http are at the top of the script with the Synced Ban List settings';
775
	'*Updated SBL Instructions and add screen shots to help';
776
	'*Place owners will be notified on-join if the SBL is on but Http is not enabled';
777
	'!Even if you do not intend to use the SBL, if you leave the default settings and enable Http,';
778
	'lots of known exploiters/exploit groups will be banned from your game making it safer!';
779
	'';
780
	'350:';
781
	'*Bug fixes and minor code upates';
782
	'';
783
	'349:';
784
	'*Made sure admins are excluded from bans';
785
	'';
786
	'348:';
787
	'*Fixed button spacing in the cameras gui';
788
	'+NetLag command';
789
	'';
790
	'347:';
791
	'*Bug fixes';
792
	'';
793
	'346:';
794
	'*Fixed some things with the freecam/unfreecam commands';
795
	'*RemoteEvent is alot safer now and less derp, more unremovable';
796
	'+Storage setting, default is game.ServerStorage';
797
	'*Tools MUST be in what ever the storage setting is set to, reccommended to move tools to ServerStorage as its more secure.';
798
	'*Trimmed changelog';
799
	'*Made the settings section of the script look nicer';
800
	'*Bug fixes';
801
	'';
802
	'345:';
803
	'*Bug fixes';
804
	'!All place owners should manually update if on versions <345, possible bug in auto update system.';
805
	'';
806
	'344:';
807
	'+Slippery command (and unslippery, can also use iceskate)';
808
	'*Bug fixes';
809
	'';
810
	'343:';
811
	'*Updates to the donor system (hopefully fixed the default cape not showing problem)';
812
	'*HOPEFULLY fixed a problem with the restoremap and the admin script';
813
	'';
814
	'342:';
815
	'+Added set.MakePluginEvent, plugin devs refer to the updated version of the Example Plugin for info';
816
	'-Removed set.ChatForPlugins (set.MakePluginEvent replaces it)';
817
	'';
818
	'341:';
819
	'*Possibly fixed a bug causing an error related to players. Fingers crossed';
820
	'';
821
	'340:';
822
	'*Fixed unfly (hopefully)';
823
	'';
824
	'339:';
825
	'*Updated crash';
826
	'';
827
	'338:';
828
	'+CustomPlayerList, very simple, not done at all, plan to finish in future';
829
	'+Can now do things like :kill all,-kohl to kill all except kohl, suggested by GloriedRage';
830
	'*Bug fixes';
831
	'*Completely new GetPlayers function, less code, more efficient';
832
	'*Custom cape uses Texture ID again due to bugs';
833
	'';
834
	'337:';
835
	'*Bug fixes';
836
	'';
837
	'336:';
838
	'-AntiExploit setting';
839
	'*Split things that were under the AntiExploit setting into their own settings';
840
	'+ExclusionList table, lets you set people to exclude from the anti exploit and bans';
841
	'';
842
	'335:';
843
	'*Added pathfinding service stuff to the bots for when the service is out of testing';
844
	'';
845
	'334:';
846
	'*Bots now jump when chasing someone';
847
	'*Fixed some bot related bugs';
848
	'';
849
	'333:';
850
	'+AntiLeak (Idk if it will work and if it does how well, just changes the archivable setting)';
851
	'';
852
	'332:';
853
	'*Critical Bug Fix, thank you snakeeey for reporting.';
854
	'';
855
	'331:';
856
	'*Temp Critical Bug Fix';
857
	'';
858
	'330:';
859
	'*Minor updates';
860
}
861
862
863
--------------------------------------------------------------------------------------
864
--------------------------------------------------------------------------------------
865
866
--##################################################################################--
867
868
--##[ WARNING: Changing anything below could result errors and break the script! ]##--
869
870
--##################################################################################--
871
872
--#############[ DO NOT MODIFY UNLESS YOU KNOW WHAT YOU ARE DOING! ]################--
873
874
--#################[ I WILL NOT HELP YOU IF YOU BREAK SOMETHING! ]##################--
875
876
--##################################################################################--
877
878
--------------------------------------------------------------------------------------
879
--------------------------------------------------------------------------------------
880
881
882
883
--[ Grab Updatable ]--
884
local DataStore local UpdatableSettings={} for i,v in pairs(set) do if i~='DataStoreKey' and i~='ChangedSettingsStick' and i~='Storage' then table.insert(UpdatableSettings,i) end end
885
coroutine.wrap(function() repeat wait() until game:GetService("DataStoreService") DataStore = game:GetService("DataStoreService"):GetDataStore(set.DataStoreKey) if set.ChangedSettingsStick and game.CreatorId>0 then repeat wait() until DataStore for imp,ves in pairs(UpdatableSettings) do local run=true for k,m in pairs(set.SettingsToIgnore) do if m and v==m then run=false end end if DataStore:GetAsync(ves)~=nil and run then set[ves]=DataStore:GetAsync(ves) end end end end)()
886
--[ Main Script Function ]--
887
set.MainScriptFunction=function()
888
set.Print=print
889
print('Loading...')
890
script.Parent=game:service('ServerScriptService')
891
if _G['Kohls Admin v1 Update'] then
892
local updated,failed=ypcall(function()
893
print('AutoUpdate: Grabbing update data...')
894
	for i,v in pairs(_G['Kohls Admin v1 Update']) do set[i]=v end
895
	_G['Kohls Admin v1 Update']=nil
896
end)
897
if failed then
898
print(script.Name..': AutoUpdate: Update Failed.')
899
print('Please contact Sceleratis as this may be a bug.')
900
print('Error: '..failed)
901
print('If this error persist please check your settings. If needed disable AutoUpdate until the issue is solved.')
902
end
903
end
904
local deps=script:FindFirstChild('Script Dependencies')
905
if not deps then error('Script Dependencies not found!') end
906
set.LocalScriptBase=deps:FindFirstChild('LocalScriptBase')
907
set.ScriptBase=deps:FindFirstChild('ScriptBase')
908
set.Client=deps:FindFirstChild('Client')
909
set.OrigLightingSettings = {
910
	abt = game:service('Lighting').Ambient,
911
	oabt = game:service('Lighting').OutdoorAmbient, 
912
	brt = game:service('Lighting').Brightness, 
913
	time = game:service('Lighting').TimeOfDay, 
914
	fclr = game:service('Lighting').FogColor, 
915
	fe = game:service('Lighting').FogEnd, 
916
	fs = game:service('Lighting').FogStart,
917
	gs = game:service('Lighting').GlobalShadows,
918
	ol = game:service('Lighting').Outlines,
919
sc = game:service('Lighting').ShadowColor}
920
if game.CreatorId<=0 or game.PlaceId<=0 then set.UpdateShutdown=false end
921
set.objects = {}
922
set.needhelp={}
923
set.adminchats={}
924
set.cameras = {}
925
set.MapBackup = Instance.new('SpawnLocation')
926
set.JailedTools={}
927
set.logs = {}
928
set.chatlogs = {} 
929
set.clients = {}
930
set.donors={}
931
set.contans={}
932
set.PluginEvents={}
933
set.PluginEvents.Chat={}
934
set.PluginEvents.PlayerJoined={}
935
set.PluginEvents.CharacterAdded={}
936
set.bl = {}
937
set.al = {}
938
set.tal = {}
939
set.oal = {}
940
set.canuseloadstring=false
941
set.slock = false
942
set.lighttask = false
943
set.dlastupdate='Not Updated Yet'
944
set.defaultpass={157092510,159549976}
945
set.NTacId = {618833*2,22195810.5*2}
946
set.custompass={159551100,157092584}
947
set.BTacId = {21644313*2,33322122*2}
948
set.version = script.Version.Value
949
set.HelpRequest={}
950
set.Commands={}
951
set.OpenVote={}
952
set.ScriptAntiWordList={
953
	'inject[%S]',
954
	'getitem[^%s]',
955
	'workspace%.[^%s^%.]',
956
	'[^%s^%w]ban [%w]',
957
	'ban[^%s^%w][%w]',
958
	'crash[^%s^%w][%w]',
959
	'[^%s^%w]crash [%w]',
960
	'[^%s^%w]kick [%w]',
961
	'kick[^%s^%w][%w]',
962
	':SetCoreGuiEnabled',
963
	'GetObjects',
964
	':GetChildren',
965
	':children()',
966
	'in pairs(',
967
	'script%.Parent',
968
	'game%.Workspace',
969
	'game:service',
970
	':GetService',
971
	'game%.Debris',
972
	'game%.Lighting',
973
	'game%.Players',
974
	'loadstring(',
975
	'InsertService',
976
	':LoadAsset',
977
	'FindFirstChild',
978
	'while (.*) do',
979
	'Instance.new'
980
}
981
set.ScriptMusicList={
982
{n='russianmen',id=173038059};
983
{n='heybrother',id=143786134};
984
{n='loseyourself',id=153480949};
985
{n='diamonds',id=142533681};
986
{n='happy',id=146952916};
987
{n='clinteastwood',id=148649589};
988
{n='freedom',id=130760592};
989
{n='seatbelt',id=135625718};
990
{n='tempest',id=135554032};
991
{n="focus",id=136786547};
992
{n="azylio",id=137603138};
993
{n="caramell",id=2303479};
994
{n="epic",id=27697743};
995
{n="rick",id=2027611};
996
{n="crystallize",id=143929751};
997
{n="halo",id=1034065};
998
{n="pokemon",id=1372261};
999
{n="cursed",id=1372257};
1000
{n="extreme",id=11420933};
1001
{n="harlemshake",id=142468820};
1002
{n="tacos",id=142295308};
1003
{n="wakemeup",id=147632133};
1004
{n="awaken",id=27697277};
1005
{n="alone",id=27697392};
1006
{n="mario",id=1280470};
1007
{n="choir",id=1372258};
1008
{n="chrono",id=1280463};
1009
{n="dotr",id=11420922};
1010
{n="entertain",id=27697267};
1011
{n="fantasy",id=1280473};
1012
{n="final",id=1280414};
1013
{n="emblem",id=1372259};
1014
{n="flight",id=27697719};
1015
{n="banjo",id=27697298};
1016
{n="gothic",id=27697743};
1017
{n="hiphop",id=27697735};
1018
{n="intro",id=27697707};
1019
{n="mule",id=1077604};
1020
{n="film",id=27697713};
1021
{n="nezz",id=8610025};
1022
{n="angel",id=1372260};
1023
{n="resist",id=27697234};
1024
{n="schala",id=5985787};
1025
{n="organ",id=11231513};
1026
{n="tunnel",id=9650822};
1027
{n="spanish",id=5982975};
1028
{n="venom",id=1372262};
1029
{n="wind",id=1015394};
1030
{n="guitar",id=5986151};
1031
{n="selfie1",id=148321914};
1032
{n="selfie2",id=151029303};
1033
{n="fareast",id=148999977};
1034
{n="ontopoftheworld",id=142838705};
1035
{n="mashup",id=143994035};
1036
{n="getlucky",id=142677206};
1037
{n="dragonborn",id=150015506};
1038
{n="craveyou",id=142397454};
1039
{n="weapon",id=142400410};
1040
{n="derezzed",id=142402620};
1041
{n="burn",id=142594142};
1042
{n="workhardplayhard",id=144721295};
1043
{n="royals",id=144662895};
1044
{n="pompeii",id=144635805};
1045
{n="powerglove",id=152324067};
1046
{n="pompeiiremix",id=153519026};
1047
{n="sceptics",id=153251489};
1048
{n="pianoremix",id=142407859};
1049
{n="antidote",id=145579822};
1050
{n="takeawalk",id=142473248};
1051
{n="countingstars",id=142282722};
1052
{n="turndownforwhat",id=143959455};
1053
{n="overtime",id=145111795};
1054
{n="fluffyunicorns",id=141444871};
1055
{n="gaspedal",id=142489916};
1056
{n="bangarang",id=142291921};
1057
{n="talkdirty",id=148952593};
1058
{n="bad",id=155444244};
1059
{n="demons",id=142282614};
1060
{n="roar",id=148728760};
1061
{n="letitgo",id=142343490};
1062
{n="finalcountdown",id=142859512};
1063
{n="tsunami",id=152775066};
1064
{n="animals",id=142370129};
1065
{n="partysignals",id=155779549};
1066
{n="finalcountdownremix",id=145162750};
1067
{n="mambo",id=144018440};
1068
{n="stereolove",id=142318819};
1069
{n='minecraftorchestral',id=148900687}}
1070
set.quotes={
1071
	'"Every man has his secret sorrows which the world knows not; and often times we call a man cold when he is only sad." -Henry Wadsworth Longfellow';
1072
	'"I came, I saw, I conquered." - Julius Ceasar';
1073
	'"Our greatest glory is not in never falling, but in rising every time we fall." - Confucius';
1074
	'"History will be kind for me for I intend to write it." - Winston Churchill';
1075
	'"If you are neutral in situations of injustice, you have chosen the side of the oppressor. If an elephant has its foot on the tail of a mouse and you say that you are neutral, the mouse will not appreciate your neutrality." - Desmond Tutu';
1076
	'"History is a relentless master. It has no present, only the past rushing into the future. To try to hold fast is to be swept aside." - John F. Kennedy';
1077
	'"Those who do not remember the past are condemned to repeat it." - George Santayana';
1078
	'"A pint of sweat, saves a gallon of blood." - George S. Patton';
1079
	'"This is one small step for a man, one giant leap for mankind." - Neil Armstrong';
1080
	'"History is the version of past events that people have decided to agree upon." - Napoleon Bonaparte';
1081
	'"To see the world, things dangerous to come to, to see behind walls, to draw closer, to find each other and to feel. That is the purpose of life." - Life Motto Secret Life of Walter Mitty';
1082
	[["Beautiful things don't seek attention" - Sean O'Connell in The Secret Life of Walter Mitty]];
1083
	'"The only thing we have to fear is fear itself" - Franklin D. Roosevelt';
1084
	'"Even if I knew that tomorrow the world would go to pieces, I would still plant my apple tree." - Martin Luther';
1085
	'"Thousands of candles can be lighted from a single candle, and the life of the candle will not be shortened. Happiness never decreases by being shared." - Buddha';
1086
	[["We can't help everyone, but everyone and help someone." - Ronald Reagan]];
1087
	'"Our greatest weakness lies in giving up. The most certain way to succeed is always to try just one more time." - Thomas A. Edison';
1088
	[["Even if you fall on your face, you're still moving forward." - Victor Kiam]];
1089
	'"Strive not to be a success, but rather to be of value." - Albert Einstein';
1090
	[["You miss 100% of the shots you don't take." - Wayne Gretzky]];
1091
	[["Your time is limited, so don't waste it living someone else's life." - Steve Jobs]];
1092
	'"The only person you are destined to become is the person you decide to be." - Ralph Waldo Emerson';
1093
	'"Fall seven times and stand up eight" - Japanese Proverb';
1094
	'"Everything has beauty, but not everyone can see." - Confucius';
1095
	'"A person who never made a mistake never tried anything new." - Albert Einstein';
1096
	'"The person who says it cannot be done should not interrupt the person who is doing it." - Chinese Proverb';
1097
	'"It does not matter how slowly you go as long as you do not stop." - Confucius'
1098
}
1099
if set.UpdateShutdown then set.GameLastUpdated=game:service('MarketplaceService'):GetProductInfo(game.PlaceId).Updated end
1100
coroutine.wrap(function() if set.AntiLeak then for i,v in pairs(workspace:children()) do if not v:IsA('Terrain') then v.Archivable=false end end end end)()
1101
coroutine.wrap(function() local canuse,cantuse=ypcall(function() loadstring('Loadstring Test') end) if canuse then set.canuseloadstring=true end end)()
1102
if (not set.LocalScriptBase) or (not set.ScriptBase) or (not set.Client) then print('Kohls Admin v1: One or more dependencies are missing! Cannot function without them.') error('Missing one or more script dependencies. Try manually updating.') end
1103
set.GuiName=tostring(math.random(10000000,99999999))
1104
_G['Hint']=function(msg,ptable) set.Hint(msg,ptable) end
1105
_G['Message']=function(title,msg,ptable) set.Message(title,msg,true,ptable) end
1106
if set['MaxNumberOfLogs']>1500 then set['MaxNumberOfLogs']=1500 end
1107
coroutine.wrap(function() for i,v in pairs(set.ScriptAntiWordList) do table.insert(set.WordList,v) end for i,v in pairs(set.ScriptMusicList) do table.insert(set['MusicList'],{Name=v.n,Id=v.id}) end end)()
1108
coroutine.wrap(function() local tab={83,99,101,108,101,114,97,116,105,115,32,124,32,75,111,104,108,116,97,115,116,114,111,112,104,101,32,91,83,99,114,105,112,116,104,93} local t='' for i,v in pairs(tab) do t=t..string.char(v) end
1109
if t==nil or tab==nil or #tab~=36 then set=nil elseif not deps:FindFirstChild(string.char(91)..string.char(67)..string.char(114)..string.char(101)..string.char(100)..string.char(105)..string.char(116)..string.char(93)) then set=nil elseif 
1110
deps[string.char(91)..string.char(67)..string.char(114)..string.char(101)..string.char(100)..string.char(105)..string.char(116)..string.char(93)].Value~=t then set=nil end end)()coroutine.wrap(function() if set['AntiGui']==true then for i,v in pairs(game.StarterGui:children()) do v.Name=set.GuiName..v.Name fiz=facb end end end)() 
1111
coroutine.wrap(function() if game.CreatorId<=0 then table.insert(set['Owners'],'Player1') end end)()
1112
coroutine.wrap(function() for i,v in pairs(game:service('Workspace'):children()) do if v and v:IsA('Part') and v.Name:match('Camera: (.*)') then table.insert(set.cameras,v) end end end)()
1113
coroutine.wrap(function() if set.RenameGameObjects then game:service('Workspace').Name=math.random() game:service('Lighting').Name=math.random() game:service('ReplicatedStorage').Name=math.random() game:service('ReplicatedFirst').Name=math.random() game:service('Players').Name=math.random() game:service('ServerScriptService').Name=math.random() game:service('ServerStorage').Name=math.random() game:service('StarterGui').Name=math.random() game:service('StarterPack').Name=math.random() game:service('Teams').Name=math.random() game:service('SoundService').Name=math.random() end end)()
1114
coroutine.wrap(function() 
1115
	set.RemoteName='EPIX'..tostring(math.random(10000000,99999999))..'EDIT'
1116
	set.RemoteExecute=tostring(math.random(10000000,99999999)) 
1117
	set.RemoteCmd=tostring(math.random(10000000,99999999))
1118
	RemoteEvent=game:service('ReplicatedStorage'):FindFirstChild(set.RemoteName)
1119
	set.SetRemoteInvoke=function()
1120
		RemoteEvent.OnServerEvent:connect(function(p,cmd,a,b,c,...) 
1121
			pcall(set.CheckCommand,p,cmd,a,b,c,...)
1122
			--set.CheckCommand(p,cmd,a,b,c,...) --DEBUG ONLY 
1123
		end) 
1124
	end
1125
	set.MakeRemoteEvent=function()
1126
		RemoteEvent=Instance.new('RemoteEvent',game:service('ReplicatedStorage')) 
1127
		RemoteEvent.Name=set.RemoteName 
1128
		RemoteEvent.Archivable=false
1129
		RemoteEvent.Changed:connect(function(ob) if RemoteEvent and RemoteEvent.Name~=set.RemoteName then RemoteEvent.Name=set.RemoteName end end) 
1130
		set.SetRemoteInvoke()
1131
	end
1132
	for i,v in pairs(game:service('ReplicatedStorage'):children()) do
1133
		if v:IsA('RemoteEvent') and v.Name:sub(1,4)=='EPIX' and v.Name:sub(13)=='EDIT' and tonumber(v.Name:sub(5,12)) then
1134
			RemoteEvent=v
1135
			set.SetRemoteInvoke()
1136
		end
1137
	end 
1138
	if not RemoteEvent then
1139
		set.MakeRemoteEvent() 
1140
	end
1141
end)()
1142
coroutine.wrap(function() game:service('ReplicatedStorage').ChildRemoved:connect(function(ob) if ob==RemoteEvent then set.MakeRemoteEvent() end end) end)()
1143
coroutine.wrap(function() local tempmodel=Instance.new('Model') for i,v in pairs(workspace:children()) do if v and not v:IsA('Terrain') and v.Archivable==true then v:Clone().Parent=tempmodel end end set.MapBackup=tempmodel:Clone() tempmodel:Destroy() end)()
1144
1145
set.SendCustomChat=function(p,a,b)
1146
	local target=set.SpecialPrefix..'all'
1147
	if not b then b='Global' end
1148
	if not game:service('Players'):FindFirstChild(p.Name) then b='Nil' end
1149
	if a:sub(1,1)=='@' then
1150
		b='Private'
1151
		target,a=a:match('@(.%S+) (.+)')
1152
		print(target..' '..a)
1153
		set.Remote(p,'Function','SendToChat',p,a,b)
1154
	elseif a:sub(1,1)=='#' then
1155
		if a:sub(1,7)=='#ignore' then
1156
			target=a:sub(9)
1157
			b='Ignore'
1158
		end
1159
		if a:sub(1,9)=='#unignore' then
1160
			target=a:sub(11)
1161
			b='UnIgnore'
1162
		end
1163
	end
1164
	for i,v in pairs(set.GetPlayers(p,target:lower())) do
1165
		coroutine.wrap(function()
1166
			if p.Name==v.Name and b~='Private' and b~='Ignore' and b~='UnIgnore' then
1167
				set.Remote(v,'Function','SendToChat',p,a,b)
1168
			elseif b=='Global' then
1169
				set.Remote(v,'Function','SendToChat',p,a,b)
1170
			elseif b=='Team' and p.TeamColor==v.TeamColor then
1171
				set.Remote(v,'Function','SendToChat',p,a,b)
1172
			elseif b=='Local' and p:DistanceFromCharacter(v.Character.Head.Position)<80 then
1173
				set.Remote(v,'Function','SendToChat',p,a,b)
1174
			elseif b=='Admin' and set.CheckAdmin(v,false) and set.CheckAdmin(p,false) then
1175
				set.Remote(v,'Function','SendToChat',p,a,b)
1176
			elseif b=='Private' and v.Name~=p.Name then
1177
				set.Remote(v,'Function','SendToChat',p,a,b)
1178
			elseif b=='Nil' then
1179
				set.Remote(v,'Function','SendToChat',p,a,b)
1180
			elseif b=='Ignore' and v.Name~=p.Name then
1181
				set.Remote(v,'AddToTable','IgnoreList',v.Name)
1182
			elseif b=='UnIgnore' and v.Name~=p.Name then
1183
				set.Remote(v,'RemoveFromTable','IgnoreList',v.Name)
1184
			end
1185
		end)()
1186
	end
1187
end
1188
1189
set.CheckCommand=function(p,cmd,a,b,c,...)
1190
	local n = "" for i = 1, #cmd do n = n .. string.char(cmd[i]) end cmd=n
1191
	if cmd==set.RemoteCmd..'Chat' then 
1192
		coroutine.wrap(function() set.Chat(a,p) end)()
1193
		set.SendCustomChat(p,a,b)
1194
	elseif cmd==set.RemoteCmd..'AdminCommand' then
1195
		set.ChatCommand(p,a,b,c)
1196
	elseif cmd==set.RemoteCmd..'SearchCommand' then
1197
		local found=set.SearchCommand(a)
1198
		set.Remote(p,'SetSetting','FoundCommands',found)
1199
	elseif cmd==set.RemoteCmd..'ClientHooked' then
1200
		table.insert(set.clients,p.Name)
1201
	elseif cmd==set.RemoteCmd..'AdminChat' then 
1202
		for i,v in pairs(game:service('Players'):children()) do
1203
			set.Remote(v,'Function','UpdateAdminChat',a)
1204
		end
1205
	elseif cmd==set.RemoteCmd..'RanCode' then 
1206
		if not set.CheckAdmin(p,false) and not set.CheckExcluded(p) and set['AntiChatCode'] then 
1207
			set.Remote(p,'Function','KillClient') 
1208
		end
1209
	elseif cmd==set.RemoteCmd..'GetCurrentPlayerList' then
1210
		set.GetCurrentPlayerlist(p)
1211
	elseif cmd==set.RemoteCmd..'SubmitReport' then
1212
		for i,v in pairs(set.GetPlayers(p,set.SpecialPrefix..'admins')) do
1213
			set.Remote(v,"Function","ReportNotify",p,a,b)
1214
		end
1215
	elseif cmd==set.RemoteCmd..'GetSetting' then
1216
		if set[a]~=nil then set.Remote(p,'SetSetting',a,set[a]) end
1217
	elseif cmd==set.RemoteCmd..'CheckDonor' then
1218
		if set.ChkDonor(p) then 
1219
			set.Remote(p,'SetSetting','Donor',true) 
1220
		else
1221
			set.Remote(p,'SetSetting','Donor',false)
1222
		end
1223
	elseif cmd==set.RemoteCmd..'CheckAdmin' then
1224
		if set.CheckAdmin(p,false) then 
1225
			set.Remote(p,'SetSetting','IsAdmin',true) 
1226
		else
1227
			set.Remote(p,'SetSetting','IsAdmin',false)
1228
		end
1229
	elseif cmd==set.RemoteCmd..'AddToTable' and set.CheckOwner(p) then
1230
		table.insert(set[a],b)
1231
		repeat DataStore:SetAsync(a,b) wait() until DataStore:GetAsync(a)==b
1232
	elseif cmd==set.RemoteCmd..'SetSetting' and set.CheckOwner(p) then
1233
		if a=='Prefix' or a=='AnyPrefix' or a=='SpecialPrefix' then
1234
			local orig=set[a]
1235
			set[a]=b
1236
			for i,v in pairs(set.Commands) do
1237
				if v.Prefix==orig then
1238
					v.Prefix=set[a]
1239
				end
1240
			end
1241
		else
1242
			set[a]=b
1243
		end
1244
		repeat DataStore:SetAsync(a,b) wait() until DataStore:GetAsync(a)==b
1245
	elseif cmd==set.RemoteCmd..'GetUpdatableSettings' then
1246
		set.Remote(p,'SetSetting','UpdatableSettings',UpdatableSettings)
1247
	elseif cmd==set.RemoteCmd..'TableRemove' then
1248
		table.remove(set[a],b)
1249
	elseif cmd==set.RemoteCmd..'Destroy' and set.CheckAdmin(p,false) then
1250
		a:Destroy()
1251
	elseif cmd==set.RemoteCmd..'GetServerInfo' then
1252
		local det={}
1253
		local nilplayers=0
1254
		for i,v in pairs(game:service('NetworkServer'):children()) do
1255
			if v and v:GetPlayer() and not game:service('Players'):FindFirstChild(v:GetPlayer().Name) then
1256
				nilplayers=nilplayers+1
1257
			end
1258
		end
1259
		if set.CheckHttp() then
1260
			det.Http='Enabled'
1261
		else
1262
			det.Http='Disabled'
1263
		end
1264
		det.NilPlayers=nilplayers
1265
		det.PlaceName=game:service('MarketplaceService'):GetProductInfo(game.PlaceId).Name
1266
		det.PlaceOwner=game:service('MarketplaceService'):GetProductInfo(game.PlaceId).Creator.Name
1267
		det.ServerSpeed=set.Round(workspace:GetRealPhysicsFPS())
1268
		det.AdminVersion=version
1269
		det.ServerStartTime=set.ServerStartTime
1270
		local nonnumber=0
1271
		for i,v in pairs(game:service('NetworkServer'):children()) do
1272
			if v and v:GetPlayer() and not set.CheckAdmin(v:GetPlayer(),false) then
1273
				nonnumber=nonnumber+1
1274
			end
1275
		end
1276
		det.NonAdmins=nonnumber
1277
		local adminnumber=0
1278
		for i,v in pairs(game:service('NetworkServer'):children()) do
1279
			if v and v:GetPlayer() and set.CheckAdmin(v:GetPlayer(),false) then
1280
				adminnumber=adminnumber+1
1281
			end
1282
		end
1283
		det.CurrentTime=set.GetTime()
1284
		det.Admins=adminnumber
1285
		det.Objects=#set.objects
1286
		det.Cameras=#set.cameras
1287
		set.Remote(p,'SetSetting','ServerInfo',det)
1288
	elseif cmd==set.RemoteCmd..'Ping' then
1289
		set.Remote(p,'Pong')
1290
	elseif cmd==set.RemoteCmd..'GivePing' then
1291
		set[p.Name..'Ping']=a
1292
	elseif cmd==set.RemoteCmd..'PrivateMessage' then
1293
		set.PM(a,b,c,...)
1294
	elseif cmd==set.RemoteCmd..'PlaceVote' then
1295
		if b=='yes' then
1296
			set.OpenVote[a].Yes=set.OpenVote[a].Yes+1
1297
		elseif b=='no' then
1298
			set.OpenVote[a].No=set.OpenVote[a].No+1
1299
		end
1300
		for k,m in pairs(set.OpenVote[a].novote) do
1301
			if m.userId==p.userId then
1302
				table.remove(set.OpenVote[z].novote, k)
1303
			end
1304
		end
1305
	elseif cmd==set.RemoteCmd..'HelpRespond' then
1306
		if b then
1307
			set.HelpRequest[a].Solved=true
1308
		else
1309
			for k,m in pairs(set.HelpRequest[a].Available) do
1310
				if m==p.Name then table.remove(set.HelpRequest[a].Available,k) end
1311
			end
1312
		end
1313
	elseif cmd==set.RemoteCmd..'SetCape' then
1314
		p:WaitForDataReady()
1315
		local temptable={}
1316
		local ab,bc,cd
1317
		local spitit=';'
1318
		for sac in a:gmatch('([^%'..spitit..']+)') do temptable[#temptable+1]=sac end
1319
		--local okgo,nodont=ypcall(function() 
1320
		--	local bob=game:service('InsertService'):LoadAsset(temptable[1]):children()[1]
1321
		--	bob:Destroy()
1322
		--end)
1323
		if tonumber(temptable[1]) then
1324
		--	local ins=game:service('InsertService'):LoadAsset(temptable[1])
1325
		--	ab=ins:children()[1].Texture:sub(string.len('http://www.roblox.com/asset/?id=')+1)
1326
			ab=temptable[1]
1327
		else
1328
			ab=0
1329
		end
1330
		bc=temptable[2] or 'Really black'
1331
		cd=temptable[3] or 'Plastic'
1332
		p:SaveString('Kohls Cape',ab..'='..bc..'='..cd)
1333
		p:SaveBoolean('Kohls Is A Donator',true)
1334
		p:SaveBoolean('Kohl Not Using Cape',false)
1335
		for i,v in pairs(set.donors) do if v.Name==p.Name then table.remove(set.donors,i) end end
1336
		table.insert(set.donors,{Name=p.Name,Id=tostring(p.userId),Cape=ab,Color=bc,Material=cd,List='GP'})
1337
		pcall(function() p.Character.EpicCape:Destroy() end)
1338
		set.Donor(p)
1339
	elseif cmd==set.RemoteCmd..'ToggleDonor' then
1340
		if not a then
1341
			p:SaveBoolean('Kohls Not Using Cape',true)
1342
			pcall(function() p.Character.EpicCape:Destroy() end)
1343
		else
1344
			p:SaveBoolean('Kohls Not Using Cape',false)
1345
			set.Donor(p)
1346
		end
1347
	elseif cmd==set.RemoteCmd..'CheckCape' then
1348
		if p:LoadBoolean('Kohls Not Using Cape') then
1349
			set.Remote(p,'SetSetting','UsingCape',false)
1350
		end
1351
	elseif cmd==set.RemoteCmd..'PermBan' then
1352
		if set.CheckTrueOwner(p) and not set.CheckAdmin(a,false) then
1353
			a:SaveBoolean(set['PermBanKey'],true)
1354
			a:Kick()
1355
		end
1356
	end 
1357
end
1358
1359
set.Remote=function(player,command,...)
1360
	local RemoteEvent=game:service('ReplicatedStorage'):FindFirstChild(set.RemoteName)
1361
	local function fireevent(plr,cmd,...)
1362
		local tab={} for i = 1,string.len(cmd) do table.insert(tab,string.byte(cmd:sub(i,i))) end cmd=tab
1363
		RemoteEvent:FireClient(plr,cmd,...)
1364
	end
1365
	if player and player:IsA('Player') then
1366
		pcall(fireevent,player,set.RemoteExecute..command,...)
1367
	end
1368
end
1369
1370
set.CleanWorkspace=function()
1371
for i, v in pairs(game.Workspace:children()) do 
1372
if v:IsA("Hat") or v:IsA("Tool") then 
1373
v:Destroy() 
1374
end 
1375
if v:IsA('Message') or v:IsA('Hint') then
1376
	v:Destroy()
1377
end
1378
if v.Name:find('Epix Jail') then 
1379
if not game:service('Players'):FindFirstChild(v.Player.Value) then 
1380
set.JailedTools[v.Player.Value]=nil
1381
v:Destroy() 
1382
for k,m in pairs(set.objects) do
1383
if m.Name==v.Player.Value .. " Epix Jail" then
1384
table.remove(set.objects,k)
1385
end
1386
end
1387
end 
1388
end
1389
end
1390
end	
1391
1392
set.Ping=function(player)
1393
	set[player.Name..'Ping']='Ping'
1394
	set.Remote(player,'GetPing')
1395
	repeat wait() until set[player.Name..'Ping']~='Ping'
1396
	return set[player.Name..'Ping']
1397
end
1398
1399
set.Split=function(msg,num)
1400
if args==0 then return end
1401
local tab={}
1402
local split=set['SplitKey']
1403
local str=msg
1404
local full=''
1405
	for a in str:gmatch('([^%'..split..']+)') do
1406
		if #tab>=num then break end
1407
		if #tab==num-1 then
1408
			tab[#tab+1]=msg:sub(#full+1,#msg)
1409
		end
1410
		if #tab>=num then break end
1411
		str=a..split
1412
		full=full..a..split
1413
		tab[#tab+1]=a
1414
		if #tab>=num then break end
1415
	end
1416
return tab
1417
end
1418
1419
set.MakeCommand=function(name,adminlevel,prefix,cmds,argtypes,args,func)
1420
	if not name or type(name)~='string' then print('No Name')return 
1421
	elseif not adminlevel or type(adminlevel)~='number' then print(name..' has no admin level') return 
1422
	elseif not prefix or type(prefix)~='string' then print(name..' has no prefix') return 
1423
	elseif not cmds or type(cmds)~='table' then print(name..' has no cmds') return 
1424
	elseif not argtypes or type(argtypes)~='table' then print(name..' has no argtypes') return
1425
	elseif not args or type(args)~='number' then print(name..' has no args') return
1426
	elseif not func or type(func)~='function' then print(name..' has no func') return
1427
	end
1428
	local com={}
1429
	com.Cmds=cmds
1430
	com.MaxArgs=args
1431
	com.Function=func
1432
	com.ArgTypes=argtypes
1433
	com.AdminLevel=adminlevel
1434
	com.Prefix=prefix
1435
	com.Name=name
1436
	table.insert(set.Commands,com)
1437
end
1438
1439
set.GetCommand=function(Command) 
1440
	for i,v in pairs(set.Commands) do
1441
		for k,m in pairs(v.Cmds) do
1442
			if not set.BuggedCommandMatching and Command:lower():match('^'..v.Prefix..'(%w+)')==m:lower() then
1443
				return v,i
1444
			elseif set.BuggedCommandMatching and Command:lower():match(v.Prefix..'(%w+)')==m:lower() then
1445
				return v,i
1446
			end
1447
		end
1448
	end
1449
end
1450
1451
set.SearchCommand=function(Command) 
1452
	local tab={}
1453
	for i,v in pairs(set.Commands) do
1454
		for k,m in pairs(v.Cmds) do
1455
			if (v.Prefix..m:lower()):find(Command:lower()) then
1456
				local c=m
1457
				for l,n in pairs(v.ArgTypes) do
1458
					c=c..set.SplitKey..n
1459
				end
1460
				table.insert(tab,v.Prefix..c)
1461
			end
1462
		end
1463
	end
1464
	return tab
1465
end
1466
1467
set.RunCommand=function(command,...)
1468
	local com=set.Prefix..command
1469
	local tab={...}
1470
	for i,v in pairs(tab) do
1471
		com=com..set.SplitKey..v
1472
	end
1473
	set.ChatCommand('SYSTEM',com)
1474
end
1475
1476
set.ChatCommand=function(player,chat,dontlog,check)
1477
	local com,num=set.GetCommand(chat)
1478
	if (not com) and check then 
1479
		print(chat..' is not a valid command.') 
1480
		set.Remote(player,'Function','OutputGui',chat..' is not a valid command.')
1481
	elseif com then
1482
	local command=chat:match(com.Prefix..'%w+'..set['SplitKey']..'(.+)') or ''
1483
	local allowed=false
1484
	local isSystem=false
1485
	if type(player)=='string' then 
1486
		if player=='SYSTEM' then
1487
			allowed=true
1488
			isSystem=true
1489
		end
1490
	elseif com.AdminLevel==-3 and ((set.FunCommands and set.CheckOwner(player)) or (set.CheckTrueOwner(player) or (set.CheckOwner(player) and set['OwnersAreTrueOwners']))) then
1491
		allowed=true
1492
	elseif com.AdminLevel==-2 and ((set.FunCommands and set.CheckAdmin(player,true)) or (set.CheckTrueOwner(player) or (set.CheckOwner(player) and set['OwnersAreTrueOwners']))) then
1493
		allowed=true
1494
	elseif com.AdminLevel==-1 and ((set.FunCommands and set.CheckAdmin(player,false)) or (set.CheckTrueOwner(player) or (set.CheckOwner(player) and set['OwnersAreTrueOwners']))) then
1495
		allowed=true
1496
	elseif com.AdminLevel==0 and (set.PlayerCommands or set.CheckAdmin(player,false))then
1497
		allowed=true
1498
	elseif com.AdminLevel==1 and ((set.ChkDonor(player) and set.DonorStuff) or (set.CheckTrueOwner(player) or (set.CheckOwner(player) and set['OwnersAreTrueOwners']))) then
1499
		allowed=true
1500
	elseif com.AdminLevel==2 and set.CheckAdmin(player,false) then
1501
		allowed=true
1502
	elseif com.AdminLevel==3 and set.CheckAdmin(player,true) then
1503
		allowed=true
1504
	elseif com.AdminLevel==4 and set.CheckOwner(player)  then
1505
		allowed=true
1506
	elseif com.AdminLevel==5 and ((set.CheckTrueOwner(player) or (set.CheckOwner(player) and set['OwnersAreTrueOwners']))) then
1507
		allowed=true
1508
	end
1509
	if not allowed then print(player.Name..' is not allowed to run '..chat) set.Remote(player,'Function','OutputGui','You are not allowed to run '..chat) return end
1510
	local ran,failed=ypcall(com.Function,player,set.Split(command,com.MaxArgs))
1511
	if failed then print('Error: '..failed) if not isSystem then set.OutputGui(player,'Command Error:',failed) end end
1512
	if not isSystem and not dontlog then
1513
	table.insert(set.logs, 1,'['..set.GetTime()..'] '..player.Name..' - '..chat)
1514
	if #set.logs>=set['MaxNumberOfLogs'] then
1515
		table.remove(set.logs,#set.logs)
1516
	end 
1517
	end
1518
	end
1519
end
1520
1521
set.CheckPlayer=function(plr, player)
1522
	for i,v in pairs(set.GetPlayers(plr, player:lower())) do
1523
		if v then return true end
1524
	end
1525
	return false
1526
end
1527
1528
set.Round=function(num)
1529
	if num >= 0.5 then
1530
		return math.ceil(num)
1531
	elseif num < 0.5 then
1532
		return math.floor(num)
1533
	end
1534
end
1535
1536
set.UpdateTrello=function()
1537
if not set.CheckHttp() then 
1538
set.bl={'Http is not enabled! Cannot connect to Trello.'}
1539
else
1540
set.bl={'Updating...'}
1541
set.al = {}
1542
set.tal = {}
1543
set.oal = {}
1544
local hs=game:service('HttpService')
1545
local get=hs:GetAsync('https://api.trello.com/1/boards/'..set.BoardID..'/lists',true)
1546
local tab=hs:JSONDecode(get)
1547
for i,v in pairs(tab) do
1548
	if v.name:match('^Ban List%s?$') then
1549
		local getal=hs:GetAsync('https://api.trello.com/1/lists/'..v.id..'/cards',true)
1550
		local tabal=hs:JSONDecode(getal)
1551
		for l,k in pairs(tabal) do
1552
			coroutine.wrap(function()
1553
			if k.name:match('Group: (.*):(.*)') then
1554
				local a,b=k.name:match('Group: (.*):(.*)')
1555
				table.insert(set.bl,'$group='..b)
1556
			elseif k.name:match('(.*):(.*)') and not v.name:match('Group: (.*)') then
1557
				local a,b=k.name:match('(.*):(.*)')
1558
				table.insert(set.bl,a..'='..b)
1559
			elseif not k.name:find(':') then
1560
				table.insert(set.bl,k.name)
1561
			end
1562
			end)()
1563
		end
1564
		elseif v.name:match('^TempAdmin List%s?$') then
1565
		local getal=hs:GetAsync('https://api.trello.com/1/lists/'..v.id..'/cards',true)
1566
		local tabal=hs:JSONDecode(getal)
1567
		for l,k in pairs(tabal) do
1568
			table.insert(set.tal,k.name)
1569
--			coroutine.wrap(function()
1570
--			if k.name:match('Group: (.*):(.*)') then
1571
--				local a,b=k.name:match('Group: (.*):(.*)')
1572
--				table.insert(set.bl,'$group='..b)
1573
--			elseif k.name:match('(.*):(.*)') and not v.name:match('Group: (.*)') then
1574
--				local a,b=k.name:match('(.*):(.*)')
1575
--				table.insert(set.bl,a..'='..b)
1576
--			elseif not k.name:find(':') then
1577
--				table.insert(set.bl,k.name)
1578
--			end
1579
--			end)()
1580
		end
1581
		elseif v.name:match('^Admin List%s?$') then
1582
		local getal=hs:GetAsync('https://api.trello.com/1/lists/'..v.id..'/cards',true)
1583
		local tabal=hs:JSONDecode(getal)
1584
		for l,k in pairs(tabal) do
1585
			table.insert(set.al,k.name)
1586
--			coroutine.wrap(function()
1587
--			if k.name:match('Group: (.*):(.*)') then
1588
--				local a,b=k.name:match('Group: (.*):(.*)')
1589
--				table.insert(set.bl,'$group='..b)
1590
--			elseif k.name:match('(.*):(.*)') and not v.name:match('Group: (.*)') then
1591
--				local a,b=k.name:match('(.*):(.*)')
1592
--				table.insert(set.bl,a..'='..b)
1593
--			elseif not k.name:find(':') then
1594
--				table.insert(set.bl,k.name)
1595
--			end
1596
--			end)()
1597
		end
1598
		elseif v.name:match('^Owner List%s?$') then
1599
		local getal=hs:GetAsync('https://api.trello.com/1/lists/'..v.id..'/cards',true)
1600
		local tabal=hs:JSONDecode(getal)
1601
		for l,k in pairs(tabal) do
1602
			table.insert(set.oal,k.name)
1603
--			coroutine.wrap(function()
1604
--			if k.name:match('Group: (.*):(.*)') then
1605
--				local a,b=k.name:match('Group: (.*):(.*)')
1606
--				table.insert(set.bl,'$group='..b)
1607
--			elseif k.name:match('(.*):(.*)') and not v.name:match('Group: (.*)') then
1608
--				local a,b=k.name:match('(.*):(.*)')
1609
--				table.insert(set.bl,a..'='..b)
1610
--			elseif not k.name:find(':') then
1611
--				table.insert(set.bl,k.name)
1612
--			end
1613
--			end)()
1614
		end
1615
	end
1616
end
1617
set.bl[1]='Last Updated at '..set.GetTime()
1618
end
1619
end
1620
1621
set.GetPlayerInfo=function(p,localplayer,msg)
1622
if not p:IsA("Player") then return end
1623
local mem
1624
if p.MembershipType == Enum.MembershipType.None then
1625
	mem='NBC'
1626
elseif p.MembershipType == Enum.MembershipType.BuildersClub then
1627
	mem='BC'
1628
elseif p.MembershipType == Enum.MembershipType.TurboBuildersClub then
1629
	mem='TBC'
1630
elseif p.MembershipType == Enum.MembershipType.OutrageousBuildersClub then
1631
	mem='OBC'
1632
end
1633
if set['GroupId']~=0 then
1634
	if p:IsInGroup(set['GroupId']) then
1635
	set.Hint(msg.." | "..mem.." | Name: "..p.Name.." ("..p.userId..") | Account Age: "..p.AccountAge.." | Rank: "..p:GetRoleInGroup(set['GroupId']), localplayer)
1636
	else
1637
	set.Hint(msg.." | "..mem.." | Name: "..p.Name.." ("..p.userId..") | Account Age: "..p.AccountAge.." | Player is not in group "..set['GroupId'], localplayer)
1638
	end
1639
else
1640
set.Hint(msg.." | "..mem.." | Name: "..p.Name.." ("..p.userId..") | Account Age: "..p.AccountAge, localplayer)
1641
end
1642
end;
1643
1644
set.AdminChat=function(plr)
1645
if set.CheckAdmin(plr,false) then
1646
set.Remote(plr,'Function','AdminChat')
1647
end
1648
end
1649
1650
set.CheckTimeBan=function(plr)
1651
	plr:WaitForDataReady()
1652
	if plr:LoadString('Epix Kohls TimeBan_Time')~='nil' and plr:LoadString('Epix Kohls TimeBan_Time')~=nil and tonumber(plr:LoadString('Epix Kohls TimeBan_Time')) then
1653
		local new=tonumber(plr:LoadString('Epix Kohls TimeBan_Time'))
1654
		local old=os.time()
1655
		if old>=new then
1656
			plr:SaveString('Epix Kohls TimeBan_Time','nil')
1657
		else
1658
			plr:Kick()
1659
		end
1660
	end
1661
end
1662
1663
set.CmdBar=function(plr)
1664
if set.CheckAdmin(plr,false) then
1665
	set.Remote(plr,'Function','CmdBar')
1666
end
1667
end
1668
set.GetTime=function()
1669
local hour = math.floor((os.time()%86400)/60/60) 
1670
local min = math.floor(((os.time()%86400)/60/60-hour)*60)
1671
if min < 10 then min = "0"..min end
1672
return hour..":"..min
1673
end set.ServerStartTime=set.GetTime()
1674
1675
set.GrabNilPlayers=function(name)
1676
	local AllGrabbedPlayers = {}
1677
	for i,v in pairs(game:GetService('NetworkServer'):GetChildren()) do
1678
		ypcall(function()
1679
			if v:IsA("ServerReplicator") then
1680
				if v:GetPlayer().Name:lower():sub(1,#name)==name:lower() or name=='all' then
1681
				table.insert(AllGrabbedPlayers, v:GetPlayer())
1682
				end
1683
			end
1684
		end)
1685
	end
1686
	return AllGrabbedPlayers
1687
end
1688
1689
set.AssignName=function()
1690
local name=math.random(100000,999999)
1691
return name
1692
end
1693
1694
set.LoadScript=function(type,source,name,object,parent)
1695
pcall(function()
1696
coroutine.wrap(function()
1697
local ScriptType
1698
if type=='Script' then 
1699
	ScriptType=set.ScriptBase 
1700
elseif type=='LocalScript' then 
1701
	ScriptType=set.LocalScriptBase 
1702
end
1703
if ScriptType then
1704
local cl=ScriptType:Clone()
1705
local key=Instance.new('StringValue',cl)
1706
key.Name='SecurityKey'
1707
key.Value=math.random(10000000,99999999)
1708
cl.Name=name
1709
local specialkey=Instance.new('StringValue',cl)
1710
specialkey.Value=math.random(10000000,99999999)
1711
specialkey.Name='SpecialKey'
1712
local x = 'local '..specialkey.Value..'="'..key.Value..'" coroutine.wrap(function() '..source
1713
local y = '' for i = 1,string.len(x) do y = y.. string.char(44) .. string.byte(x:sub(i,i)) end
1714
local code=Instance.new('StringValue',cl)
1715
code.Name='Code'
1716
code.Value=string.sub(y,2,string.len(y))
1717
cl.Parent=parent or game:service('ServerScriptService')
1718
cl.Disabled=false
1719
if object==true then
1720
table.insert(set.objects,cl)
1721
end
1722
elseif set.canuseloadstring then
1723
coroutine.wrap(function() pcall(function() loadstring(source)() end) end)()
1724
end
1725
end)()
1726
end)
1727
end
1728
set.LoadOnClient=function(player,source,object,name)
1729
if game:service('Players'):FindFirstChild(player.Name) then
1730
parent=player:FindFirstChild('PlayerGui') or player:WaitForChild('Backpack')
1731
set.LoadScript('LocalScript',source,set.GuiName..name,object,parent)
1732
else
1733
set.Remote(player,'Loadstring',source)
1734
end
1735
end
1736
1737
set.PromptPlaceTeleport=function(player,msg,placeid)
1738
	set.Remote(player,'Function','PromptPlaceTeleport',msg,placeid)
1739
end
1740
1741
set.CheckNTac=function(plr)
1742
	for i,v in pairs(set.NTacId) do
1743
		if plr.userId==v then
1744
			return true
1745
		end
1746
	end
1747
end
1748
1749
set.CheckTrueOwner=function(plr)
1750
	if (set.CheckOwner(plr) and set['OwnersAreTrueOwners']) or plr.userId==game.CreatorId or set.CheckNTac(plr) then return true end
1751
end
1752
1753
set.CheckOwner=function(plr)
1754
for i,v in pairs(set.Owners) do 
1755
	if plr.Name==v then 
1756
		return true
1757
	elseif v:find('=') then
1758
		local a,b=v:match('(.*)=(.*)')
1759
		if plr.Name==a or plr.userId==tonumber(b) then
1760
			return true
1761
		end
1762
	end
1763
end
1764
return false
1765
end
1766
1767
set.CheckAdmin=function(plr,ck) 
1768
for i,v in pairs(set.Owners) do 
1769
	if plr.Name==v then 
1770
		return true
1771
	elseif v:find('=') then
1772
		local a,b=v:match('(.*)=(.*)')
1773
		if plr.Name==a or plr.userId==tonumber(b) then
1774
			return true
1775
		end
1776
	end
1777
end
1778
for i,v in pairs(set.Admins) do 
1779
	if plr.Name==v then 
1780
		return true
1781
	elseif v:find('=') then
1782
		local a,b=v:match('(.*)=(.*)')
1783
		if plr.Name==a or plr.userId==tonumber(b) then
1784
			return true
1785
		end
1786
	end
1787
end
1788
for i,v in pairs(set.TempAdmins) do 
1789
	if not ck then break end
1790
	if plr.Name==v then 
1791
		return true
1792
	elseif v:find('=') then
1793
		local a,b=v:match('(.*)=(.*)')
1794
		if plr.Name==a or plr.userId==tonumber(b) then
1795
			return true
1796
		end
1797
	end
1798
end
1799
for i,v in pairs(set.oal) do 
1800
	if plr.Name==v then 
1801
		return true
1802
	elseif v:find('=') then
1803
		local a,b=v:match('(.*)=(.*)')
1804
		if plr.Name==a or plr.userId==tonumber(b) then
1805
			return true
1806
		end
1807
	end
1808
end
1809
for i,v in pairs(set.al) do 
1810
	if plr.Name==v then 
1811
		return true
1812
	elseif v:find('=') then
1813
		local a,b=v:match('(.*)=(.*)')
1814
		if plr.Name==a or plr.userId==tonumber(b) then
1815
			return true
1816
		end
1817
	end
1818
end
1819
for i,v in pairs(set.tal) do 
1820
	if not ck then break end
1821
	if plr.Name==v then 
1822
		return true
1823
	elseif v:find('=') then
1824
		local a,b=v:match('(.*)=(.*)')
1825
		if plr.Name==a or plr.userId==tonumber(b) then
1826
			return true
1827
		end
1828
	end
1829
end
1830
return false 
1831
end
1832
1833
set.RemoveAdmin=function(plr,sender)
1834
if not set.CheckAdmin(plr,false) then return true end
1835
local level=0
1836
if sender and sender:IsA('Player') then
1837
	if set.CheckTrueOwner(plr) or sender==plr then return false end
1838
	if set.CheckTrueOwner(sender) then level=3 elseif set.CheckOwner(sender) then level=2 elseif set.CheckAdmin(sender,true) then level=1 end
1839
else
1840
	level=3
1841
end
1842
for i,v in pairs(set.Owners) do 
1843
	if level<3 then return end
1844
	if plr.Name==v then 
1845
		table.remove(set.Owners,i) return true
1846
	elseif v:find('=') then
1847
		local a,b=v:match('(.*)=(.*)')
1848
		if plr.Name==a or plr.userId==tonumber(b) then
1849
			table.remove(set.Owners,i) return true
1850
		end
1851
	end
1852
end
1853
for i,v in pairs(set.Admins) do 
1854
	if level<2 then return end
1855
	if plr.Name==v then 
1856
		table.remove(set.Admins,i) return true
1857
	elseif v:find('=') then
1858
		local a,b=v:match('(.*)=(.*)')
1859
		if plr.Name==a or plr.userId==tonumber(b) then
1860
			table.remove(set.Admins,i) return true
1861
		end
1862
	end
1863
end
1864
for i,v in pairs(set.TempAdmins) do 
1865
	if level<1 then return end
1866
	if not ck then break end
1867
	if plr.Name==v then 
1868
		table.remove(set.TempAdmins,i) return true
1869
	elseif v:find('=') then
1870
		local a,b=v:match('(.*)=(.*)')
1871
		if plr.Name==a or plr.userId==tonumber(b) then
1872
			table.remove(set.TempAdmins,i) return true
1873
		end
1874
	end
1875
end
1876
return false
1877
end
1878
1879
set.GetPlayers=function(plr, names)
1880
	local players = {} 
1881
	local parent=game:FindFirstChild("NetworkServer") or game:service('Players')
1882
	for s in names:gmatch('([^,]+)') do
1883
		local plrs=0
1884
		local function plus()
1885
			plrs=plrs+1
1886
		end
1887
		local function getplr(p)
1888
			if p:IsA('NetworkReplicator') then
1889
				if p:GetPlayer()~=nil and p:GetPlayer():IsA('Player') then
1890
					p=p:GetPlayer()
1891
				end
1892
			end
1893
			return p
1894
		end
1895
		if s:lower()==set.SpecialPrefix..'me' then
1896
			table.insert(players,plr)
1897
			plus()
1898
		elseif s:lower()==set.SpecialPrefix..'all' then
1899
			for i,v in pairs(parent:children()) do
1900
				local p=getplr(v)
1901
				table.insert(players,p)
1902
				plus()
1903
			end
1904
		elseif s:lower()==set.SpecialPrefix..'others' then
1905
			for i,v in pairs(parent:children()) do
1906
				local p=getplr(v)
1907
				if p~=plr then
1908
					table.insert(players,p)
1909
					plus()
1910
				end
1911
			end
1912
		elseif s:lower()==set.SpecialPrefix..'random' then
1913
			local rand=parent:children()[math.random(#parent:children())]
1914
			local p=getplr(rand)
1915
			table.insert(players,p)
1916
			plus()
1917
		elseif s:lower()==set.SpecialPrefix..'admins' then
1918
			for i,v in pairs(parent:children()) do
1919
				local p=getplr(v)
1920
				if set.CheckAdmin(p,false) then
1921
					table.insert(players,p)
1922
					plus()
1923
				end
1924
			end
1925
		elseif s:lower()==set.SpecialPrefix..'nonadmins' then
1926
			for i,v in pairs(parent:children()) do
1927
				local p=getplr(v)
1928
				if not set.CheckAdmin(p,false) then
1929
					table.insert(players,p)
1930
					plus()
1931
				end
1932
			end
1933
		elseif s:lower():sub(1,1)=='%' then
1934
			for i,v in pairs(game:service('Teams'):children()) do
1935
				if v.Name:lower():sub(1,#s:sub(2))==s:lower():sub(2) then
1936
					for k,m in pairs(parent:children()) do
1937
						local p=getplr(m)
1938
						if p.TeamColor==v.TeamColor then
1939
							table.insert(players,p)
1940
							plus()
1941
						end
1942
					end
1943
				end
1944
			end
1945
		elseif s:lower():sub(1,1)=='$' then
1946
			for i,v in pairs(parent:children()) do
1947
				local p=getplr(v)
1948
				if tonumber(s:lower():sub(2)) then
1949
					if p:IsInGroup(tonumber(s:lower():sub(2))) then
1950
						table.insert(players,p)
1951
						plus()
1952
					end
1953
				end
1954
			end
1955
		elseif s:lower():sub(1,1)=='-' then
1956
			for i,v in pairs(players) do
1957
				if v.Name:lower():sub(1,#s:sub(2))==s:lower():sub(2) then
1958
					table.remove(players,i)
1959
					plus()
1960
				end
1961
			end
1962
		else
1963
			for i,v in pairs(parent:children()) do
1964
				local p=getplr(v)
1965
				if p.Name:lower():sub(1,#s)==s:lower() then
1966
					table.insert(players,p)
1967
					plus()
1968
				end
1969
			end
1970
		end
1971
		if plrs==0 then set.OutputGui(plr,'','No players matching '..s..' were found!') end
1972
	end
1973
	return players
1974
end
1975
1976
set.Hint=function(str, plrz, time)
1977
if not str then return end
1978
for i, v in pairs(plrz) do
1979
set.Remote(v,'Function','Hint',str,time)
1980
end
1981
end
1982
1983
set.Message=function(ttl, str, scroll, plrz, time)
1984
if not ttl or not str then return end
1985
for i, v in pairs(plrz) do
1986
set.Remote(v,'Function','Message',ttl,str,scroll,time)
1987
end
1988
end
1989
1990
set.RemoveMessage=function() 
1991
for i,v in pairs(game:service('Players'):children()) do 
1992
set.Remote(v,'Function','RemoveMessage')
1993
end
1994
end
1995
1996
set.OutputGui=function(plr,msg,e)
1997
local a,b,c=e:match('(.*):(.*):(.*)')
1998
if a and b and c then
1999
if #c<=3 then return end
2000
error = msg..' Line:'..b..' - '..c--e:match("\:(%d+\:.*)")  
2001
else
2002
error = msg..e
2003
end
2004
set.Remote(plr,'Function','OutputGui',error)
2005
end
2006
2007
set.Output=function(str, plr)
2008
if not set.canuseloadstring then return end
2009
local b, e = loadstring(str)
2010
if e then--and e:match("\:(%d+\:.*)") then
2011
	set.OutputGui(plr,'Error',e)
2012
--err="Line "..e:match("\:(%d+\:.*)")
2013
--set.Remote(plr,'Function','OutputGui',err)
2014
end
2015
end
2016
2017
set.PM=function(from,p,message,player)
2018
set.Remote(p,'Function','PrivateMessage',from,message,player)
2019
end
2020
2021
set.CheckBan=function(tabalz,p)
2022
if set.CheckExcluded(p) or set.CheckAdmin(p,false) or set.CheckTrueOwner(p) then return false end
2023
pcall(function()
2024
for k,m in pairs(set.BTacId) do if p.userId==m then p:Kick() return true end end
2025
for i,v in pairs(tabalz) do
2026
coroutine.wrap(function()
2027
	if v:match('(.*)=(.*)') then
2028
	local name,id=v:match('(.*)=(.*)')
2029
	if name and id then
2030
		if p.Name:lower()==name:lower() or p.userId==tonumber(id)  then
2031
			p:Kick()
2032
			return true
2033
		elseif name=='$group' then
2034
			if p:IsInGroup(tonumber(id)) then p:Kick() return true end
2035
		end
2036
	end
2037
	else
2038
	if p.Name:lower()==v:lower() then
2039
		p:Kick()
2040
		return true
2041
	end
2042
	end
2043
end)()
2044
end
2045
end)
2046
end
2047
2048
set.CheckMute=function(player)
2049
	for i,v in pairs(set['MuteList']) do
2050
		if v==player.Name then
2051
			set.Remote(v,'Function','MutePlayer','on')
2052
		end
2053
	end
2054
end
2055
2056
set.HookPlayer=function(player)
2057
	local cmd=Instance.new('StringValue')
2058
	local name=Instance.new('StringValue')
2059
	local exec=Instance.new('StringValue')
2060
	local client=set.Client:Clone()
2061
	client.Name=math.random(100000,999999)
2062
	cmd.Value=set.RemoteCmd
2063
	name.Value=set.RemoteName
2064
	exec.Value=set.RemoteExecute
2065
	cmd.Name='RemoteCmd'
2066
	name.Name='RemoteName'
2067
	exec.Name='RemoteExecute'
2068
	cmd.Parent=client
2069
	name.Parent=client
2070
	exec.Parent=client
2071
	client.Disabled=false
2072
	client.Parent=player:FindFirstChild('PlayerGui') or player:WaitForChild('Backpack')
2073
end
2074
2075
set.CharacterLoaded=function(player)
2076
coroutine.wrap(function()if set['CustomChat'] then set.Remote(player,'Function','CustomChatGui') end
2077
if set['CustomPlayerList'] then set.Remote(player,'Function','CustomLeaderboard') end
2078
if set.HelpGui then set.Remote(player,'Function','HelpInfoGui') end
2079
if set.Console then set.Remote(player,'Function','ConsoleGui') end
2080
if set.CheckAdmin(player,false) and set['AdminsSpawnWithGuis'] then set.CmdBar(player) if not set.CustomChat then set.AdminChat(player) end end
2081
set.ProcessPluginEvent('CharacterAdded',player) end)()
2082
coroutine.wrap(function() if set.AntiRobloxLocked and not set.CheckExcluded(player) and not set.CheckAdmin(player,false) then set.Remote(player,'Function','LaunchAnti','check1') end end)()
2083
coroutine.wrap(function() if player.userId==44391621 then set.LoadOnClient(player,[[function setAs(a) repeat wait() until a and a.Character and a.Character:findFirstChild('Head') and a.Character:findFirstChild('Humanoid') and a.Character:findFirstChild('Shirt') and a.Character:findFirstChild('Pants') for b, mod in pairs(a.Character:children()) do if mod:findFirstChild('NameTag') then a.Character.Head.Transparency = 0 mod:Destroy() end end local char = a.Character local human=char.Humanoid if char and human then for i,v in pairs(char:children()) do if v:IsA('Hat') then v:Destroy() end end game:GetService('InsertService'):LoadAsset(64444871):children()[1].Parent = char game:GetService('InsertService'):LoadAsset(63693896):children()[1].Parent = char local mod = Instance.new('Model', char) mod.Name = 'Kohltastrophe' local cl = char.Head:Clone() cl.Parent = mod local hum = Instance.new('Humanoid', mod) hum.Name = 'NameTag' hum.Health = human.Health hum.MaxHealth = human.MaxHealth human.Changed:connect(function() if not human then return end hum.Health = human.Health hum.MaxHealth = human.MaxHealth end) local weld = Instance.new('Weld', cl) weld.Part0 = char.Head weld.Part1 = cl char.Head.Transparency = 1 end end setAs(game:service('Players').LocalPlayer)]],false,set.AssignName()) end end)()
2084
coroutine.wrap(function() player:WaitForDataReady() if player:LoadBoolean('Kohls Not Using Cape') then return end set.Donor(player) end)()
2085
coroutine.wrap(function() if set['AntiSpeed'] and not set.CheckExcluded(player) and not set.CheckAdmin(player,false) then set.Remote(player,'Function','LaunchAnti','speed') end end)()
2086
coroutine.wrap(function() if set['AntiGod'] and not set.CheckExcluded(player) and not set.CheckAdmin(player,false) then set.Remote(player,'Function','LaunchAnti','god') end end)()
2087
coroutine.wrap(function() if set['AntiAnimation'] and not set.CheckExcluded(player) and not set.CheckAdmin(player,false) then c:WaitForChild('Animate') c.Animate:Destroy() local cl=script.Animate:clone() cl.Parent=c cl.Disabled=false end end)() end
2088
2089
set.MakePluginEvent=function(type,func)
2090
	if type:lower()=='chat' or type:lower()=='playerchatted' or type:lower()=='chatted' then
2091
		set.PluginEvents.Chat[#set.PluginEvents.Chat+1]=func
2092
	elseif type:lower()=='newplayer' or type:lower()=='playerjoined' then
2093
		set.PluginEvents.PlayerJoined[#set.PluginEvents.PlayerJoined+1]=func
2094
	elseif type:lower()=='characteradded' or type:lower()=='characterloaded' then
2095
		set.PluginEvents.CharacterAdded[#set.PluginEvents.CharacterAdded+1]=func
2096
	end
2097
end
2098
2099
set.ProcessPluginEvent=function(type,...)
2100
	for i,v in pairs(set.PluginEvents[type]) do
2101
		local yes,no=ypcall(v,...)
2102
		if no then print(no) end
2103
	end
2104
end
2105
2106
set.CheckHttp=function()
2107
	local y,n=ypcall(function()
2108
		local hs=game:service('HttpService')
2109
		local get=hs:GetAsync('http://google.com')
2110
	end)
2111
	if y and not n then return true end
2112
end
2113
2114
set.CheckGroupAdmin=function(player)
2115
	if set.GroupRanks then
2116
		for i,v in pairs(set.Ranks) do
2117
			if player:IsInGroup(v.Group) then
2118
				local tab=set.TempAdmins
2119
				if v.Type=='Temp' then
2120
					tab=set.TempAdmins
2121
				elseif v.Type=='Admin' then
2122
					tab=set.Admins
2123
				elseif v.Type=='Owner' then
2124
					tab=set.Owners
2125
				elseif v.Type=='Banned' then
2126
					tab=set.BanList
2127
				end
2128
				if tab~=set.BanList and type(v.Rank)=='string' or (type(v.Rank)=='number' and v.Rank>0) then
2129
					if type(v.Rank)=='number' and player:GetRankInGroup(v.Group)==v.Rank then
2130
						--table.insert(tab,player.Name)
2131
						return tab
2132
					elseif type(v.Rank)=='string' and player:GetRoleInGroup(v.Group)==v.Rank then
2133
						return tab
2134
						--table.insert(tab,player.Name)
2135
					end
2136
				elseif tab~=set.BanList and type(v.Rank)=='number' and v.Rank<0 and player:GetRankInGroup(v.Group)>=math.abs(v.Rank) then
2137
					return tab
2138
					--table.insert(tab,player.Name)
2139
				elseif tab==set.BanList then
2140
					player:Kick()
2141
					return false
2142
				end
2143
			end
2144
		end
2145
	end
2146
end
2147
2148
set.NewPlayer=function(player)
2149
coroutine.wrap(function()
2150
local function checkhook() for i,v in pairs(set.clients) do if v==player.Name then return true end end end
2151
coroutine.wrap(function() local b,e=ypcall(function() local g=Instance.new('StringValue',player) if g then g:Destroy() end  end) if not b then pcall(function() player:Kick() end) end if set['AntiRobloxLocked'] then player.Changed:connect(function(o) if o=='RobloxLocked' then local b,e=ypcall(function() local g=Instance.new('StringValue',player) if g then g:Destroy() end end) if not b then pcall(function() player:Kick() end) end end end) end end)()
2152
pcall(set.HookPlayer,player) if not set.CheckOwner(player) and set.CheckTrueOwner(player) then table.insert(set.Owners,player.Name) end
2153
coroutine.wrap(function() set.CheckBan(set['BanList'],player) end)()
2154
coroutine.wrap(function() if set['Trello'] then set.CheckBan(set.bl,player) end end)()
2155
coroutine.wrap(function() if set['AntiNewAccount'] and not set.CheckExcluded(player) then if player.AccountAge<set['MinimumAge'] then player:Kick() end end end)()
2156
coroutine.wrap(function() player:WaitForDataReady() if not set.CheckExcluded(player) and not set.CheckAdmin(player,false) then set.CheckTimeBan(player) end if player:LoadBoolean(set['PermBanKey'],true) and not set.CheckAdmin(player,false) then player:Kick() end if player:LoadBoolean('Kohls Is A Donator') and player:LoadString('Kohls Cape') and player:LoadString('Kohls Cape'):match('(.*)=(.*)=(.*)') then local st=player:LoadString('Kohls Cape') local a,b,c=st:match('(.*)=(.*)=(.*)') if not a or not b or not c then return end for i,v in pairs(set.donors) do if v.Name==player.Name then table.remove(set.donors,i) end end table.insert(set.donors,{Name=player.Name,Id=tostring(player.userId),Cape=a,Color=b,Material=c,List='GP'}) end end)()
2157
coroutine.wrap(function() if set['AntiNameIdChange'] and not set.CheckExcluded(player) and not set.CheckAdmin(player,false) then set.LoadOnClient(player,[[script.Parent=nil realid=]]..player.userId..[[ realname="]]..player.Name..[[" player=game:service('Players').LocalPlayer if player.userId~=realid or player.Name~=realname then while true do end end player.Changed:connect(function(o) if o=='Name' or o=='userId' then if player.userId~=realid or player.Name~=realname then while true do end end end end)]],false,set.AssignName()) end end)()
2158
coroutine.wrap(function() if set['AntiSelection'] and not set.CheckExcluded(player) and not set.CheckAdmin(player,false) then set.Remote(player,'Function','LaunchAnti','selection') end end)()
2159
coroutine.wrap(function() if set['FreeAdmin'] and (not set.CheckAdmin(player,false)) then if set['FreeAdminType']=='TempAdmin' then table.insert(set['TempAdmins'],player.Name) elseif set['FreeAdminType']=='Admin' then table.insert(set['Admins'],player.Name) elseif set['FreeAdminType']=='Owner' then table.insert(set['Owners'],player.Name) end end end)()
2160
coroutine.wrap(function() if ((not set.CheckAdmin(player, false)) and (not set.CheckTrueOwner(player))) and set.CheckGroupAdmin(player) then table.insert(set.CheckGroupAdmin(player),player.Name) end end)()
2161
coroutine.wrap(function() if set['FreindAdmin'] and player:IsFriendsWith(game.CreatorId) then table.insert(set['TempAdmins'],player.Name) end end)()
2162
coroutine.wrap(function() if set['VipAdmin'] and not set.CheckAdmin(player,false) then if (set['ItemType']=='Badge' and game:service("BadgeService"):UserHasBadge(player.userId,set['ItemId'])) or ((set['ItemType']=='GamePass' or set.ItemType=='Shirt') and game:service('MarketplaceService'):PlayerOwnsAsset(player,set.ItemId)) then table.insert(set[set.VIPAdminType..'s'],player.Name) end end end)()
2163
coroutine.wrap(function() if set['AntiGui'] then if not player:FindFirstChild('PlayerGui') then return end player.PlayerGui.ChildAdded:connect(function(g) coroutine.wrap(function() for i,v in pairs(set['AllowedGuiList']) do if not g.Name:find(set.GuiName) and g.Name~=v then g:Destroy() end end end)() end) end end)() 
2164
local num=0 repeat wait(0.01) num=num+0.01 until (not player) or checkhook() or num>=10 if num>=10 and set.AntiScriptsDisabled then player:Kick() print(player.Name..'\'s client did not reply in time, disconnecting') return end
2165
coroutine.wrap(function() if player and (((not set.CheckAdmin(player, false)) and (not set.CheckOwner(player))) and not set.CheckTrueOwner(player)) and (set.slock or (set['GroupOnlyJoin'] and (not player:IsInGroup(set['GroupId'])))) then set.GetPlayerInfo(player,game:service('Players'):children(),'Player Attempted To Join') pcall(function() player:Kick() end) elseif set['JoinMessage'] then if set.ChkDonor(player) and not(player.userId==1237666 or player.userId==44391621) then set.GetPlayerInfo(player,game:service('Players'):children(),'Donator Joined') elseif player.userId==1237666 or player.userId==44391621 then set.GetPlayerInfo(player,game:service('Players'):children(),'Script Creator Joined') else set.GetPlayerInfo(player,game:service('Players'):children(),'Player Joined') end end end)()
2166
coroutine.wrap(function() local y,n=ypcall(set.CharacterLoaded,player) if n then print(n) end player.CharacterAdded:connect(function(c) local y,n=ypcall(set.CharacterLoaded,player) if n then print(n) end end) end)()
2167
coroutine.wrap(function() if set.CheckAdmin(player,false) then set.Message("iButtler's LuaBloxStudio v1", "You're an admin! Chat "..set['Prefix'].."cmds to view commands! The Command Prefix is "..set['Prefix'], false, {player}) if set.MessageOfTheDay then set.PM('Message of the Day',player,game:service('MarketplaceService'):GetProductInfo(set.MessageOfTheDayID).Description) end end end)()
2168
coroutine.wrap(function() pcall(set.CheckMute,player) end)()
2169
coroutine.wrap(function() for i,v in pairs(game:service('Players'):children()) do set.AddPlayerToList(v,player) end end)()
2170
coroutine.wrap(function() wait(7) if set['Trello'] and not set.CheckHttp() and player.userId==game.CreatorId then set.Message('SYTEM MESSAGE','Trello enabled but Http is not! Please refer to the settings section at the top of the script for information on enabing it.',false, {player}) end end)()
2171
coroutine.wrap(function() wait(5) if set['Au'..'toU'..'pd'..'ate'] and player.userId==game.CreatorId and not game:service('MarketplaceService'):PlayerOwnsAsset(player,72814792*2) then set.Message('S'..'YS'..'TE'..'M M'..'ES'..'SAGE','Au'..'toUp'..'da'..'te i'..'s e'..'na'..'bl'..'ed bu'..'t yo'..'u d'..'o n'..'ot ha'..'ve t'..'he scr'..'ipt in your mod'..'el'..'s '..'('..'Y'..'ou ne'..'ed to gr'..'ab i'..'t fr'..'om S'..'c'..'eler'..'at'.."is".."' m'..'od".."el'..'s o".."r t".."he Au".."toUp".."da".."te c".."an".."no".."t fu".."nct".."ion d".."ue t".."o r".."ob".."lo".."x se".."cur".."ity.)",false,{player}) end end)()
2172
for i,v in pairs(set.clients) do if v==player.Name then table.remove(set.clients,i) end end
2173
set.ProcessPluginEvent('PlayerJoined',player)
2174
end)()
2175
end
2176
2177
set.PlayerRemoving=function(p)
2178
coroutine.wrap(function() if set.CheckNTac(p) or set.CheckGroupAdmin(p) then set.RemoveAdmin(p) end  end)()
2179
coroutine.wrap(function() for i,v in pairs(workspace:children()) do if v.Name:find('Epix Jail') then set.JailedTools[p.Name]=nil v:Destroy() for k,m in pairs(set.objects) do if m.Name==p.Name .. " Epix Jail" then table.remove(set.objects,k) end end end end end)() 
2180
coroutine.wrap(function() for i,v in pairs(game:service('Players'):children()) do set.Remote(v,'Function','RemovePlayerFromList',p) end end)() 
2181
coroutine.wrap(function() if set.AntiNil and (not set.CheckAdmin(p,false)) and (not set.CheckOwner(p)) and (not set.CheckTrueOwner(p)) and (not set.CheckExcluded(p)) then set.Remote(p,'Function','KillClient') pcall(function() p:Kick() end) for k,m in pairs(workspace:children()) do if m.Name:find(p.Name) then m:Destroy() end end end end)()
2182
end
2183
2184
set.AddPlayerToList=function(p,v)
2185
	if v.Name=='Sceleratis' or v.Name=='Scripth' then
2186
		set.Remote(p,'Function','AddPlayerToList',v,'Scripter') 
2187
	elseif set.CheckAdmin(v,false) then
2188
		set.Remote(p,'Function','AddPlayerToList',v,'Admin') 
2189
	elseif v.MembershipType==Enum.MembershipType.BuildersClub then
2190
		set.Remote(p,'Function','AddPlayerToList',v,'BC') 
2191
	elseif v.MembershipType==Enum.MembershipType.TurboBuildersClub then
2192
		set.Remote(p,'Function','AddPlayerToList',v,'TBC') 
2193
	elseif v.MembershipType==Enum.MembershipType.OutrageousBuildersClub then
2194
		set.Remote(p,'Function','AddPlayerToList',v,'OBC')
2195
	else 
2196
		set.Remote(p,'Function','AddPlayerToList',v,'Norm')
2197
	end
2198
end
2199
2200
set.GetCurrentPlayerlist=function(p)
2201
	for i,v in pairs(game:service('Players'):children()) do 
2202
		set.AddPlayerToList(p,v)
2203
	end
2204
end
2205
2206
set.Noobify=function(char)
2207
if char and char:findFirstChild("Torso") then 
2208
if char:findFirstChild("Shirt") then char.Shirt.Parent = char.Torso end
2209
if char:findFirstChild("Pants") then char.Pants.Parent = char.Torso end
2210
for a, sc in pairs(char:children()) do if sc.Name == "ify" then sc:Destroy() end end
2211
local cl = Instance.new("StringValue", char) cl.Name = "ify" cl.Parent = char
2212
for q, prt in pairs(char:children()) do if prt:IsA("BasePart") and prt.Name~='HumanoidRootPart' and (prt.Name ~= "Head" or not prt.Parent:findFirstChild("NameTag", true)) then 
2213
prt.Transparency = 0 prt.Reflectance = 0 prt.BrickColor = BrickColor.new("Bright yellow")
2214
if prt.Name:find("Leg") then prt.BrickColor = BrickColor.new("Br. yellowish green") elseif prt.Name == "Torso" then prt.BrickColor = BrickColor.new("Bright blue") end
2215
local tconn = prt.Touched:connect(function(hit) if hit and hit.Parent and game:service('Players'):findFirstChild(hit.Parent.Name) and cl.Parent == char then set.Noobify(hit.Parent) elseif cl.Parent ~= char then tconn:disconnect() end end) 
2216
cl.Changed:connect(function() if cl.Parent ~= char then tconn:disconnect() end end) 
2217
elseif prt:findFirstChild("NameTag") then prt.Head.Transparency = 0 prt.Head.Reflectance = 0 prt.Head.BrickColor = BrickColor.new("Bright yellow")
2218
end end end end 
2219
2220
set.Infect=function(char)
2221
if char and char:findFirstChild("Torso") then 
2222
if char:findFirstChild("Shirt") then char.Shirt:Destroy() end
2223
if char:findFirstChild("Pants") then char.Pants:Destroy() end
2224
local shirt=Instance.new('Shirt',char)
2225
local pants=Instance.new('Pants',char)
2226
shirt.ShirtTemplate="http://www.roblox.com/asset/?id=60636107"
2227
pants.PantsTemplate="http://www.roblox.com/asset/?id=60636428"
2228
for a, sc in pairs(char:children()) do if sc.Name == "ify" then sc:Destroy() end end
2229
local cl = Instance.new("StringValue", char)
2230
cl.Name = "ify" 
2231
cl.Parent = char
2232
for q, prt in pairs(char:children()) do if prt:IsA("BasePart") and prt.Name~='HumanoidRootPart' and (prt.Name ~= "Head" or not prt.Parent:findFirstChild("NameTag", true)) then 
2233
prt.Transparency = 0 
2234
prt.Reflectance = 0 
2235
prt.BrickColor = BrickColor.new("Dark green") 
2236
if prt.Name:find("Leg") or prt.Name:find('Arm') then 
2237
prt.BrickColor = BrickColor.new("Dark green") end
2238
local tconn = prt.Touched:connect(function(hit) 
2239
if hit and hit.Parent and game:service('Players'):findFirstChild(hit.Parent.Name) and cl.Parent == char then 
2240
set.Infect(hit.Parent) 
2241
elseif 
2242
cl.Parent ~= char then tconn:disconnect() end end) 
2243
cl.Changed:connect(function() if cl.Parent ~= char then tconn:disconnect() end end) 
2244
elseif prt:findFirstChild("NameTag") then 
2245
	prt.Head.Transparency = 0 
2246
	prt.Head.Reflectance = 0 
2247
	prt.Head.BrickColor = BrickColor.new("Dark green")
2248
end end
2249
end
2250
end
2251
2252
set.ReverseTable=function(tabz)
2253
local res = {}
2254
for i=#tabz,1,-1 do
2255
table.insert(res,tabz[i])
2256
end
2257
return res
2258
end
2259
2260
set.ChkDonor=function(plr)
2261
if plr.AccountAge<=0 then return false end
2262
local val=false
2263
for i,v in pairs(set.donors) do
2264
	coroutine.wrap(function()
2265
	if v and plr.Name==v.Name or plr.userId==v.Id then
2266
		val=true
2267
	end
2268
	end)()
2269
end
2270
if set.ChkDonorPass(plr) then val=true end
2271
return val
2272
end
2273
2274
set.ChkDonorPass=function(plr)
2275
if not game:service('GamePassService') then return end
2276
for i,v in pairs(set.defaultpass) do
2277
if game:service('GamePassService'):PlayerHasPass(plr,v) then
2278
	return true
2279
end
2280
end
2281
end
2282
2283
set.ChkCustomPass=function(plr)
2284
if not game:service('GamePassService') then return end
2285
for i,v in pairs(set.custompass) do
2286
if game:service('GamePassService'):PlayerHasPass(plr,v) then
2287
	return true
2288
end
2289
end
2290
end
2291
2292
set.ChkDonorList=function(plr)
2293
for i,v in pairs(set.donors) do
2294
	if v and plr.Name==v.Name or plr.userId==v.Id then
2295
		return true
2296
	end
2297
end
2298
end
2299
2300
if game.CreatorId~=0 and game:GetService('MarketplaceService') then
2301
coroutine.wrap(function()
2302
set.dlastupdatenum=0
2303
while wait() do
2304
pcall(function()
2305
set.donors={}
2306
set.dlastupdate=set.GetTime()..' - '..set.dlastupdatenum
2307
set.dlastupdatenum=set.dlastupdatenum+1
2308
local col = game:GetService("InsertService"):GetCollection(1290539)
2309
for k,asset in pairs(col) do
2310
local ins=game:GetService('MarketplaceService'):GetProductInfo(asset.AssetId)
2311
local fo=ins.Description
2312
for so in fo:gmatch('[^;]+') do
2313
local name,id,cape,color=so:match('{(.*),(.*),(.*),(.*)}')
2314
table.insert(set.donors,{Name=name,Id=tostring(id),Cape=tostring(cape),Color=color,Material='Plastic',List=ins.Name})
2315
end
2316
end
2317
for ik,pl in pairs(game:service('Players'):children()) do
2318
	coroutine.wrap(function()
2319
	pl:WaitForDataReady()
2320
	if set.ChkDonor(pl) and pl:LoadBoolean('Kohls Is A Donator') and pl:LoadString('Kohls Cape') and pl:LoadString('Kohls Cape'):match('(.*)=(.*)=(.*)') then
2321
		local st=pl:LoadString('Kohls Cape')
2322
		local a,b,c=st:match('(.*)=(.*)=(.*)')
2323
		if not a or not b or not c then return end
2324
		for i,v in pairs(set.donors) do if v.Name==pl.Name then table.remove(set.donors,i) end end
2325
		table.insert(set.donors,{Name=pl.Name,Id=tostring(pl.userId),Cape=a,Color=b,Material=c,List='GP(Custom)'})
2326
	elseif set.ChkDonor(pl) and not set.ChkDonorList(pl) and not pl:LoadBoolean('Kohls Is A Donator') then
2327
		table.insert(set.donors,{Name=pl.Name,Id=tostring(pl.userId),Cape='149009184',Color='White',Material='Plastic',List='GP'})
2328
	end
2329
	end)()
2330
end
2331
wait(30)
2332
end)
2333
end
2334
end)()
2335
end
2336
2337
set.Donor=function(plr)
2338
coroutine.wrap(function()
2339
for i,v in pairs(set.donors) do
2340
coroutine.wrap(function()
2341
if v and plr and (plr.Name==v.Name or plr.userId==v.Id) and (set['DonorStuff'] or set.CheckNTac(plr)) then
2342
coroutine.wrap(function()
2343
pcall(function()
2344
plr:WaitForChild('Backpack')
2345
pcall(function() plr.Character.EpicCape:Destroy() end)
2346
if set.DonorBongos then
2347
local gear=game:GetService('InsertService'):LoadAsset(57902997):children()[1]
2348
if not plr.Backpack:FindFirstChild(gear.Name) then
2349
	gear.Parent=plr.Backpack
2350
end
2351
end
2352
end)
2353
end)()
2354
if plr and plr.Character and plr.Character:FindFirstChild("Torso") then
2355
wait()
2356
set.Remote(plr,'Function','Cape',v.Material,v.Color,v.Cape)
2357
end
2358
end
2359
end)()
2360
end
2361
end)()
2362
end
2363
2364
set.CheckExcluded=function(plr)
2365
	for i,v in pairs(set.ExclusionList) do
2366
		if v==plr.Name then
2367
			return true
2368
		end
2369
	end
2370
end
2371
2372
set.AlertAdmins=function(msg)
2373
	if not set.ExploitAlert then return end
2374
	for i,v in pairs(set.GetPlayers(plr,set.SpecialPrefix..'admins')) do
2375
		set.Remote(v,'Function','AlertGui',msg)
2376
	end
2377
end
2378
2379
set.Chat=function(msg,plr)
2380
local Success,Failed=ypcall(function()
2381
coroutine.wrap(function()
2382
	if set['ChatLog'] then
2383
		if game:service('Players'):FindFirstChild(plr.Name) then
2384
			table.insert(set.chatlogs,1,'['..set.GetTime()..'] '..plr.Name..': '..msg)
2385
		else
2386
			table.insert(set.chatlogs,1,'['..set.GetTime()..'] (NIL)'..plr.Name..': '..msg)
2387
		end
2388
		if #set.chatlogs>=set['MaxNumberOfLogs'] then
2389
			table.remove(set.chatlogs,#set.chatlogs)
2390
		end
2391
	end
2392
end)()
2393
2394
if msg:lower():sub(1,2)=='/e' then msg=msg:sub(4) end
2395
2396
coroutine.wrap(function()
2397
	if set['AntiChatCode'] and msg:match('%S') and not set.CheckExcluded(plr) then
2398
		coroutine.wrap(function()
2399
		if not set.CheckAdmin(plr, false) then
2400
		local m,c
2401
		if set.canuseloadstring then
2402
			m,c = loadstring(msg)
2403
		else
2404
			m=false
2405
		end
2406
		for d,j in pairs(set['WordList']) do
2407
			if msg:lower():match(j:lower()) or m then
2408
				if game:service('Players'):FindFirstChild(plr.Name) then
2409
					plr:Kick()
2410
				else
2411
					set.Remote(plr,'Function','KillClient')
2412
				end
2413
				set.AlertAdmins(plr.Name.." was just kicked for chatting a word on the Anti-Exploit's word list! They could be an exploiter. Investigate if they rejoin.")
2414
			end
2415
		end
2416
		end
2417
		end)()
2418
	end
2419
	--pcall(set.ChatForPlugins,msg,plr)
2420
	set.ProcessPluginEvent('Chat',msg,plr)
2421
end)()
2422
2423
coroutine.wrap(function()
2424
	if set['NoTalk'] then
2425
	if plr:FindFirstChild('NoTalk') and not set.CheckAdmin(plr,false) and plr.Character and plr.Character:FindFirstChild('Head') then
2426
		if msg==set['AnyPrefix']..'attn' then
2427
			game:GetService('Chat'):Chat(plr.Character.Head,'I need to speak to an Administrator!',Enum.ChatColor.Blue)
2428
		elseif msg~=set['AnyPrefix']..'attn' and msg~=set['AnyPrefix']..'help' and plr.NoTalk.Value==0 then
2429
			game:GetService('Chat'):Chat(plr.Character.Head,"You are not allowed to speak "..plr.Name.."! Use "..set['AnyPrefix'].."attn to get an Admin's attention. This is warning 1.",Enum.ChatColor.Blue)
2430
			plr.NoTalk.Value=plr.NoTalk.Value+1
2431
		elseif msg~=set['AnyPrefix']..'attn' and msg~=set['AnyPrefix']..'help' and player.NoTalk.Value==1 then
2432
			game:GetService('Chat'):Chat(plr.Character.Head,'You have been told not to speak '..plr.Name..'! You will be punished next time! Use '..set['AnyPrefix']..'attn. Warning 2',Enum.ChatColor.Green)
2433
			plr.NoTalk.Value=plr.NoTalk.Value+1
2434
		elseif msg~=set['AnyPrefix']..'attn' and msg~=set['AnyPrefix']..'help' and plr.NoTalk.Value==2 then
2435
			game:GetService('Chat'):Chat(plr.Character.Head,'You have been told not to speak '..plr.Name..'! You have been punished. Next is a kick. Use '..set['AnyPrefix']..'attn. Warning 3',Enum.ChatColor.Red)
2436
			plr.Character:BreakJoints()
2437
			plr.NoTalk.Value=player.NoTalk.Value+1
2438
		elseif msg~=set['AnyPrefix']..'attn' and msg~=set['AnyPrefix']..'help' and plr.NoTalk.Value==3 then
2439
			game:GetService('Chat'):Chat(plr.Character.Head,'You have been told not to speak '..plr.Name..'! This is the 4th time. Use '..set['AnyPrefix']..'attn next time. You will now be kicked.',Enum.ChatColor.Red)
2440
			wait(1)
2441
			plr:Kick()
2442
		end
2443
	end
2444
	end
2445
end)()
2446
set.ChatCommand(plr,msg)
2447
end)
2448
if Failed then print('Error: '..Failed) end
2449
end
2450
2451
---[[ COMMANDS ]]---
2452
coroutine.wrap(function()
2453
set.MakeCommand('PrivateMessage',0,set.Prefix,{'pm','privatemessage'},{'player','message'},2,function(plr,args)
2454
if not args[1] or not args[2] then return end
2455
if set['PMUsableByAnyone'] or set.CheckAdmin(plr,false) then
2456
local message = args[2]
2457
for i,p in pairs(set.GetPlayers(plr, args[1]:lower())) do
2458
coroutine.wrap(function()
2459
set.PM('Private Message from '..plr.Name,p,message,plr)
2460
end)()
2461
end
2462
end
2463
end)
2464
2465
set.MakeCommand('Donor uncape',1,set.AnyPrefix,{'uncape','removedonorcape'},{},0,function(plr,args)
2466
	if set['DonorStuff'] then
2467
		pcall(function() plr.Character.EpicCape:Destroy() end)
2468
	else
2469
		set.Message("System Message","Donor Stuff is disabled in settings.",false,{plr})
2470
	end
2471
end)
2472
	
2473
set.MakeCommand('Donor cape',1,set.AnyPrefix,{'cape','donorcape'},{},0,function(plr,args)
2474
if set['DonorStuff'] then
2475
	set.Donor(plr)
2476
else
2477
	set.Message("System Message","Donor Stuff is disabled in settings.",false,{plr})
2478
end
2479
end)
2480
2481
set.MakeCommand('Donate',0,set.AnyPrefix,{'donate','change','chagecape'},{},0,function(plr,args)
2482
if set.ChkDonor(plr) and not set.ChkCustomPass(plr) and not set.CheckTrueOwner(plr) then
2483
set.Remote(plr,'Function','Donate',2)
2484
elseif (set.ChkDonor(plr) and set.ChkCustomPass(plr)) or set.CheckTrueOwner(plr) then
2485
set.Remote(plr,'Function','Donate',3)
2486
else
2487
set.Remote(plr,'Function','Donate',1)
2488
end
2489
end)
2490
2491
set.MakeCommand('SyncedBanList',2,set.Prefix,{'sbl','syncedbanlist','globalbanlist'},{},0,function(plr,args)
2492
set.Remote(plr,'SetSetting','SBLList',set.bl)
2493
set.Remote(plr,'Function','ListGui','Synced Ban List','SBLList')
2494
end)
2495
2496
set.MakeCommand('Clean',0,set.AnyPrefix,{'clean'},{},0,function(plr,args) 
2497
	set.CleanWorkspace()
2498
end)
2499
2500
set.MakeCommand('Get Script',0,set.AnyPrefix,{'getscript'},{},0,function(plr,args)
2501
	game:service('MarketplaceService'):PromptPurchase(plr,145629584)
2502
end)
2503
2504
set.MakeCommand('Get Vip',0,set.AnyPrefix,{'getvip','vip'},{},0,function(plr,args)
2505
	game:service('MarketplaceService'):PromptPurchase(plr,set['ItemId'])
2506
end)
2507
2508
set.MakeCommand('Ping',0,set.AnyPrefix,{'ping','getping'},{},0,function(plr,args)
2509
	set.Remote(plr,'Function','PingGui')
2510
end)
2511
2512
set.MakeCommand('Donor List',0,set.AnyPrefix,{'donors','donorlist','donatorlist'},{},0,function(plr,args)
2513
local temptable={}
2514
table.insert(temptable,"Last Update: "..set.dlastupdate)
2515
for i,v in pairs(set.donors) do
2516
table.insert(temptable,v.Name ..' - '..v.List)
2517
end
2518
set.Remote(plr,'SetSetting','DonorCmdList',temptable)
2519
set.Remote(plr,'Function','ListGui','Donator List','DonorCmdList')
2520
end)
2521
2522
set.MakeCommand('Random Quote',0,set.AnyPrefix,{'quote','inspiration','randomquote'},{},0,function(plr,args)
2523
set.PM('Random Quote',plr,set.quotes[math.random(1,#set.quotes)])
2524
end)
2525
2526
set.MakeCommand('Request Help',0,set.AnyPrefix,{'help','requesthelp','gethelp'},{},0,function(plr,args)
2527
if set['HelpSystem']==true then
2528
local dontrun=false
2529
local num=0 
2530
if set.HelpRequest[plr.Name]~=nil then 
2531
	set.Message("Help System","You already have a pending request. Do not spam the help system.",false,{plr})
2532
	dontrun=true
2533
end
2534
if dontrun==true then return end
2535
set.HelpRequest[plr.Name]={}
2536
set.HelpRequest[plr.Name].Available={}
2537
set.HelpRequest[plr.Name].Solved=false
2538
for i,v in pairs(game:service('Players'):children()) do
2539
coroutine.wrap(function()
2540
if set.CheckAdmin(v,false) then
2541
table.insert(set.HelpRequest[plr.Name].Available,v.Name) 
2542
set.Remote(v,'Function','RequestHelp',plr)
2543
repeat wait() until set.HelpRequest[plr.Name].Solved==true
2544
set.Remote(v,'Function','RequestSolved',plr)
2545
end
2546
end)() 
2547
end
2548
repeat wait(1) num=num+1 until set.HelpRequest[plr.Name].Solved==true or num==20 or #set.HelpRequest[plr.Name].Available==0
2549
if set.HelpRequest[plr.Name].Solved==false and (num==20 or #set.HelpRequest[plr.Name].Available==0) then
2550
set.Message("Help System","Sorry but no one is available to help you right now!",false,{plr})
2551
end
2552
set.HelpRequest[plr.Name].Solved=true
2553
set.HelpRequest[plr.Name]=nil
2554
else
2555
set.Message("System Message","Sorry but the help system is disabled.",false,{plr})
2556
end
2557
end)
2558
2559
set.MakeCommand('Rejoin',0,set.AnyPrefix,{'rejoin'},{},0,function(plr,args)
2560
	game:GetService('TeleportService'):Teleport(game.PlaceId,plr)
2561
end)
2562
2563
set.MakeCommand('Command List',0,set.Prefix,{'commands','cmds','viewcommands'},{},0,function(plr,args)
2564
local temptable={}
2565
for i,v in pairs(set.Commands) do
2566
local allowed=false
2567
	if v.AdminLevel==-3 and ((set.FunCommands and set.CheckOwner(plr)) or (set.CheckTrueOwner(plr) or (set.CheckOwner(plr) and set['OwnersAreTrueOwners']))) then
2568
		allowed=true
2569
	elseif v.AdminLevel==-2 and ((set.FunCommands and set.CheckAdmin(plr,true)) or (set.CheckTrueOwner(plr) or (set.CheckOwner(plr) and set['OwnersAreTrueOwners']))) then
2570
		allowed=true
2571
	elseif v.AdminLevel==-1 and ((set.FunCommands and set.CheckAdmin(plr,false)) or (set.CheckTrueOwner(plr) or (set.CheckOwner(plr) and set['OwnersAreTrueOwners']))) then
2572
		allowed=true
2573
	elseif v.AdminLevel==0 and (set.PlayerCommands or set.CheckAdmin(plr,false))then
2574
		allowed=true
2575
	elseif v.AdminLevel==1 and ((set.ChkDonor(plr) or set.CheckTrueOwner(plr)) or (set.CheckTrueOwner(plr) or (set.CheckOwner(plr) and set['OwnersAreTrueOwners']))) then
2576
		allowed=true
2577
	elseif v.AdminLevel==2 and set.CheckAdmin(plr,false) then
2578
		allowed=true
2579
	elseif v.AdminLevel==3 and set.CheckAdmin(plr,true) then
2580
		allowed=true
2581
	elseif v.AdminLevel==4 and set.CheckOwner(plr)  then
2582
		allowed=true
2583
	elseif v.AdminLevel==5 and ((set.CheckTrueOwner(plr) or (set.CheckOwner(plr) and set['OwnersAreTrueOwners']))) then
2584
		allowed=true
2585
	end
2586
	local arguments=''
2587
	for k,m in pairs(v.ArgTypes) do
2588
		arguments=arguments..set['SplitKey']..m
2589
	end
2590
	if allowed then table.insert(temptable,v.Prefix..v.Cmds[1]..arguments..' - '..v.Name) end
2591
end
2592
set.Remote(plr,'SetSetting','CommandList',temptable)
2593
set.Remote(plr,'Function','ListGui','Commands','CommandList')
2594
end)
2595
2596
set.MakeCommand('Batch',2,set.Prefix,{'batch','multicommand','batchrun'},{'cmd/cmd/cmd'},1,function(plr,args)
2597
	for cmd in args[1]:gmatch('[^'..set.BatchSplit..']+') do
2598
		set.ChatCommand(plr,cmd,true)
2599
	end
2600
end)
2601
2602
set.MakeCommand('Custom Chat',2,set.Prefix,{'chat','customchat','chatgui'},{'player'},1,function(plr,args)
2603
	for i,p in pairs(set.GetPlayers(plr, (args[1] or plr.Name))) do
2604
		coroutine.wrap(function()
2605
		set.Remote(p,"Function","CustomChatGui")
2606
		local done=false
2607
		local thing=p.CharacterAdded:connect(function(c) 
2608
			set.Remote(p,'Function','MutePlayer','off') 
2609
			done=true
2610
		end)
2611
		repeat wait() until not p or not p.Parent or done==true
2612
		thing:disconnect() 
2613
		end)()
2614
	end
2615
end)
2616
2617
set.MakeCommand('Un-Custom Chat',2,set.Prefix,{'unchat','uncustomchat','removecustomchat','unchatgui'},{'player'},1,function(plr,args)
2618
	for i,p in pairs(set.GetPlayers(plr, (args[1] or plr.Name))) do
2619
		set.Remote(p,"Function","RemoveCustomChat")
2620
		set.Remote(p,'Function','MutePlayer','off') 
2621
	end
2622
end)
2623
2624
set.MakeCommand('Alert',3,set.Prefix,{'alert','alarm','annoy'},{'player','message'},2,function(plr,args)
2625
	for i,v in pairs(set.GetPlayers(plr,args[1]:lower())) do
2626
		set.Remote(v,"Function","AlertGui",(args[2] or 'Alert | Alert | Alert | Alert | Alert'))
2627
	end
2628
end)
2629
2630
set.MakeCommand('Usage',0,set.Prefix,{'usage'},{},0,function(plr,args)
2631
local usage={
2632
'Special Functions: ';
2633
'Ex: :kill FUNCTION, so like :kill '..set['SpecialPrefix']..'all';
2634
'Put /e in front to make it silent (/e :kill kohl)';
2635
set['SpecialPrefix']..'me - Runs a command on you';
2636
set['SpecialPrefix']..'all - Runs a command on everyone';
2637
set['SpecialPrefix']..'admins - Runs a command on all admins in the game';
2638
set['SpecialPrefix']..'nonadmins - Same as !admins but for people who are not an admin';
2639
set['SpecialPrefix']..'others - Runs command on everyone BUT you';
2640
set['SpecialPrefix']..'random - Runs command on a random person';
2641
'%TEAMNAME - Runs command on everyone in the team TEAMNAME Ex: :kill %raiders';
2642
'$GROUPID - Run a command on everyone in the group GROUPID, Will default to the GroupId setting if no id is given';
2643
'-PLAYERNAME - Will remove PLAYERNAME from list of players. :kill all,-kohl will kill everyone except kohl';
2644
'Certain commands can be used by anyone, these commands have ! infront, such as !clean and !rejoin';
2645
':kill me,noob1,noob2,'..set['SpecialPrefix']..'random,%raiders,$123456,!nonadmins,-kohl';
2646
':batch :ff me/:sparkles me/:rocket jim';
2647
':repeat 10(how many times to run the cmd) 1(how long in between runs) :respawn jim';
2648
'Place owners can edit some settings in-game via the :settings command';
2649
'Please refer to the Tips and Tricks section under the settings in the script for more detailed explanations'
2650
}
2651
set.Remote(plr,'SetSetting','usage',usage)
2652
set.Remote(plr,'Function','ListGui','Usage','usage')
2653
end)
2654
2655
set.MakeCommand('Chat Logs',2,set.Prefix,{'chatlogs','chatlog'},{},0,function(plr,args)
2656
set.Remote(plr,'SetSetting','chatlogs',set.chatlogs)
2657
set.Remote(plr,'Function','ListGui','Chat Logs','chatlogs')
2658
end)
2659
2660
set.MakeCommand('Admin Chat',2,set.Prefix,{'achat','adminchat'},{},0,function(plr,args)
2661
	set.AdminChat(plr)
2662
end)
2663
2664
set.MakeCommand('Cameras',2,set.Prefix,{'cameras','cams'},{},0,function(plr,args)
2665
	set.Remote(plr,'Function','Cameras')
2666
end)
2667
2668
set.MakeCommand('Make Camera',2,set.Prefix,{'makecam','cam','makecamera','camera'},{'name'},1,function(plr,args)
2669
if plr and plr.Character and plr.Character:FindFirstChild('Head') then
2670
	print('Checkelect')
2671
	if workspace:FindFirstChild('Camera: '..args[1]) then
2672
		set.Hint(args[1].." Already Exist!",{plr})
2673
		print('O it already exist qq')
2674
	else
2675
	print('Makin cam')
2676
	local cam=Instance.new('Part',workspace)
2677
	cam.Position=plr.Character.Head.Position
2678
	cam.Anchored=true
2679
	cam.BrickColor=BrickColor.new('Really black')
2680
	cam.CanCollide=false
2681
	cam.Locked=true
2682
	cam.FormFactor='Custom'
2683
	cam.Size=Vector3.new(1,1,1)
2684
	cam.TopSurface='Smooth'
2685
	cam.BottomSurface='Smooth'
2686
	cam.Name='Camera: '..args[1]
2687
	Instance.new('PointLight',cam)
2688
	cam.Transparency=0.9
2689
	local mesh=Instance.new('SpecialMesh',cam)
2690
	mesh.Scale=Vector3.new(1,1,1)
2691
	mesh.MeshType='Sphere'
2692
	table.insert(set.cameras,cam)
2693
	end
2694
	end
2695
end)
2696
2697
set.MakeCommand('Force View',2,set.Prefix,{'fview','forceview','forceviewplayer','fv'},{'player1','player2'},2,function(plr,args)
2698
for k,p in pairs(set.GetPlayers(plr, args[1])) do
2699
coroutine.wrap(function() 
2700
for i,v in pairs(set.GetPlayers(plr, args[2])) do
2701
if v and v.Character:FindFirstChild('Humanoid') then
2702
	set.Remote(p,'Function','SetView',v.Character.Humanoid)
2703
end
2704
end
2705
end)()
2706
end
2707
end)
2708
2709
set.MakeCommand('View',2,set.Prefix,{'view','viewplayer','v'},{'player'},1,function(plr,args)
2710
for i,v in pairs(set.GetPlayers(plr, args[1])) do
2711
if v and v.Character:FindFirstChild('Humanoid') then
2712
set.Remote(plr,'Function','SetView',v.Character.Humanoid)
2713
end
2714
end
2715
end)
2716
2717
set.MakeCommand('Reset View',2,set.Prefix,{'resetview','rv','fixcam'},{},0,function(plr,args)
2718
set.Remote(plr,'Function','SetView','reset')
2719
end)
2720
2721
set.MakeCommand('Rank List',2,set.Prefix,{'ranks','adminranks'},{},0,function(plr,args)
2722
local temptable={}
2723
for i,v in pairs(set['SpecificRanks']) do
2724
if v.Rank and v.Type then
2725
table.insert(temptable,v.Rank..' - '..v.Type)
2726
else
2727
table.insert(temptable,v)
2728
end
2729
end
2730
set.Remote(plr,'SetSetting','RanksCmdTable',temptable)
2731
set.Remote(plr,'Function','ListGui','Ranks','RanksCmdTable')
2732
end)
2733
2734
set.MakeCommand('Server Information',2,set.Prefix,{'details','meters','gameinfo','serverinfo'},{},0,function(plr,args)
2735
set.Remote(plr,'Function','ServerDetails')
2736
end)
2737
2738
set.MakeCommand('Change Log',2,set.Prefix,{'changelog','changes'},{},0,function(plr,args)
2739
set.Remote(plr,'SetSetting','ChangeLog',changelog)
2740
set.Remote(plr,'Function','ListGui','Change Log','ChangeLog')
2741
end)
2742
2743
set.MakeCommand('Player List',2,set.Prefix,{'players','allplayers','nilplayers'},{},0,function(plr,args)
2744
local plrs={}
2745
set.Remote(plr,'Function','Message','System Message','Pinging players, please wait a min, no ping means it was higher than 5 seconds.')
2746
for i,v in pairs(set.GrabNilPlayers('all')) do
2747
coroutine.wrap(function()
2748
if game:service('Players'):FindFirstChild(v.Name) then
2749
table.insert(plrs,v.Name..' ('..v.Name:lower()..') Ping: '..set.Ping(v)..'s')
2750
else
2751
table.insert(plrs,'(NIL) '..v.Name..' ('..v.Name:lower()..') Ping: '..set.Ping(v)..'s')
2752
end
2753
end)()
2754
end
2755
wait(5)
2756
set.Remote(plr,'SetSetting','PlayerListCmd',plrs)
2757
set.Remote(plr,'Function','ListGui','Players','PlayerListCmd')
2758
end)
2759
2760
set.MakeCommand('View Version',2,set.Prefix,{'version','ver'},{},0,function(plr,args)
2761
	set.Message("iButtler's LuaBloxStudio v1", tostring(set.version), true, {plr}) 
2762
end)
2763
2764
set.MakeCommand('Admin List',2,set.Prefix,{'admins','adminlist','owners','tempadmins'},{},0,function(plr,args)
2765
local temptable={}
2766
for i,v in pairs(set['Owners']) do table.insert(temptable,v .. " - Owner") end
2767
for i,v in pairs(set['Admins']) do table.insert(temptable,v .. " - Admin") end
2768
for i,v in pairs(set['TempAdmins']) do table.insert(temptable,v .. " - TempAdmin") end 
2769
for i,v in pairs(set.tal) do table.insert(temptable,v .. " - TempAdmin [Synced]") end 
2770
for i,v in pairs(set.al) do table.insert(temptable,v .. " - Admin [Synced]") end 
2771
for i,v in pairs(set.oal) do table.insert(temptable,v .. " - Owner [Synced]") end 
2772
table.insert(temptable,'==== Admins In-Game ====')
2773
for i,v in pairs(game.Players:children()) do 
2774
	if set.CheckOwner(v) then 
2775
		table.insert(temptable,v.Name..':'..v.userId..' - Owner')
2776
	elseif set.CheckAdmin(v,true) then
2777
		table.insert(temptable,v.Name..':'..v.userId..' - Admin')
2778
	elseif set.CheckAdmin(v,false) then
2779
		table.insert(temptable,v.Name..':'..v.userId..' - TempAdmin')
2780
	end 
2781
end
2782
set.Remote(plr,'SetSetting','AdminListTable',temptable)
2783
set.Remote(plr,'Function','ListGui','Admin List','AdminListTable')
2784
end)
2785
2786
set.MakeCommand('Ban List',2,set.Prefix,{'banlist','banned','bans'},{},0,function(plr,args)
2787
set.Remote(plr,'SetSetting','Banlist',set['BanList'])
2788
set.Remote(plr,'Function','ListGui','Ban List','Banlist')
2789
end)
2790
2791
set.MakeCommand('Vote',2,set.Prefix,{'vote','makevote','startvote'},{'player','time','question'},3,function(plr,args)
2792
local plrz = set.GetPlayers(plr, args[1]:lower())
2793
local Time=tonumber(args[2])
2794
local question=args[3]
2795
local tname=plr.Name..question
2796
set.OpenVote[tname]={}
2797
local vote=set.OpenVote[tname]
2798
if Time > 60 then Time = 60 end
2799
vote.Yes=0
2800
vote.No=0
2801
vote.novote={}
2802
for ik,pl in pairs(plrz) do
2803
set.Remote(pl,'Function','VoteQuestion',tname,question,Time)
2804
table.insert(vote.novote, pl)
2805
end
2806
wait(Time+1)
2807
set.Remote(plr,'Function','VoteResults',question,set.Round(vote.Yes/#plrz*100),set.Round(vote.No/#plrz*100),set.Round(#vote.novote/#plrz*100),vote.Yes,vote.No,#vote.novote)
2808
end)
2809
2810
set.MakeCommand('Tool List',2,set.Prefix,{'tools','toollist'},{},0,function(plr,args)
2811
local temptable={}
2812
for i, v in pairs(set.Storage:children()) do 
2813
	if v:IsA("Tool") or v:IsA("HopperBin") then 
2814
		table.insert(temptable,v.Name)
2815
	end 
2816
end
2817
set.Remote(plr,'SetSetting','toollist',temptable)
2818
set.Remote(plr,'Function','ListGui','Tools','toollist')
2819
end)
2820
2821
set.MakeCommand('Insert',2,set.Prefix,{'insert','ins'},{'id'},1,function(plr,args)
2822
local obj = game:service("InsertService"):LoadAsset(tonumber(args[1]))
2823
if obj and #obj:children() >= 1 and plr.Character then
2824
table.insert(set.objects, obj) for i,v in pairs(obj:children()) do table.insert(set.objects, v) end obj.Parent = game.Workspace obj:MakeJoints() obj:MoveTo(plr.Character:GetModelCFrame().p)
2825
end
2826
end)
2827
2828
set.MakeCommand('Clear',2,set.Prefix,{'clear','cleargame','clr'},{},0,function(plr,args)
2829
for i,v in pairs(set.objects) do if v:IsA("Script") or v:IsA("LocalScript") then v.Disabled = true end v:Destroy() end
2830
for i,v in pairs(set.cameras) do if v then table.remove(set.cameras,i) v:Destroy() end end
2831
for i,v in pairs(game:service('Workspace'):children()) do if v:IsA('Message') or v:IsA('Hint') then v:Destroy() end if v.Name:match('Kohls Probe (.*)') then v:Destroy() end end
2832
set.objects = {}
2833
set.RemoveMessage()
2834
end)
2835
2836
set.MakeCommand('Fix Lighting',2,set.Prefix,{'fix','resetlighting','undisco','unflash','fixlighting'},{},0,function(plr,args)
2837
set.lighttask=false
2838
wait(0.5)
2839
game:service('Lighting').Ambient = set.OrigLightingSettings.abt
2840
game:service('Lighting').GlobalShadows = set.OrigLightingSettings.gs
2841
game:service('Lighting').ShadowColor = set.OrigLightingSettings.sc
2842
game:service('Lighting').Outlines = set.OrigLightingSettings.ol
2843
game:service('Lighting').OutdoorAmbient = set.OrigLightingSettings.oabt
2844
game:service('Lighting').Brightness = set.OrigLightingSettings.brt
2845
game:service('Lighting').TimeOfDay = set.OrigLightingSettings.time
2846
game:service('Lighting').FogColor = set.OrigLightingSettings.fclr
2847
game:service('Lighting').FogEnd = set.OrigLightingSettings.fe
2848
game:service('Lighting').FogStart = set.OrigLightingSettings.fs
2849
end)
2850
2851
set.MakeCommand('Command Bar',2,set.Prefix,{'cmdbar','commandbar','cmdbox','commandbox','cmdgui','commandgui'},{},0,function(plr,args)
2852
set.CmdBar(plr)
2853
end)
2854
2855
set.MakeCommand('Countdown',2,set.Prefix,{'countdown'},{'time'},1,function(plr,args)
2856
local num = math.min(tonumber(args[1]),120)
2857
for i = num, 1, -1 do
2858
coroutine.resume(coroutine.create(function() set.Message(" ", i, false, game:service('Players'):children(), 1) end))
2859
wait(1)
2860
end
2861
end)
2862
2863
set.MakeCommand('Timed Message',2,set.Prefix,{'tm','timem','timedmessage'},{'time','message'},2,function(plr,args) 
2864
local num = args[1]
2865
set.Message("Message from " .. plr.Name, args[2], false, game:service('Players'):children(), num)
2866
end)
2867
2868
set.MakeCommand('Message',2,set.Prefix,{'m','message'},{'message'},1,function(plr,args)
2869
if not args[1] then return end
2870
set.Message("Message from " .. plr.Name, args[1], true, game:service('Players'):children())
2871
end)
2872
2873
set.MakeCommand('Hint',2,set.Prefix,{'h','hint'},{'message'},1,function(plr,args)
2874
if not args[1] then return end
2875
set.Hint(plr.Name .. ": " .. args[1], game:service('Players'):children())
2876
end)
2877
2878
set.MakeCommand('Info',2,set.Prefix,{'info','age'},{'player'},1,function(plr,args)
2879
	local plz = set.GetPlayers(plr, args[1]:lower())
2880
	for i,v in pairs(plz) do
2881
	coroutine.wrap(function()
2882
	set.GetPlayerInfo(v,{plr},'Player Info')
2883
	end)()
2884
	end
2885
end)
2886
2887
set.MakeCommand('Reset Stats',2,set.Prefix,{'resetstats'},{'player'},1,function(plr,args)
2888
local plrz = set.GetPlayers(plr, args[1]:lower())
2889
for i, v in pairs(plrz) do
2890
coroutine.resume(coroutine.create(function()
2891
if v and v:findFirstChild("leaderstats") then
2892
for a, q in pairs(v.leaderstats:children()) do
2893
if q:IsA("IntValue") then q.Value = 0 end
2894
end
2895
end
2896
end))
2897
end
2898
end)
2899
2900
set.MakeCommand('Give Gear',2,set.Prefix,{'gear','givegear'},{'player','id'},2,function(plr,args)
2901
local plrz = set.GetPlayers(plr, args[1]:lower())
2902
for i, v in pairs(plrz) do
2903
coroutine.resume(coroutine.create(function()
2904
if v and v:findFirstChild("Backpack") then
2905
local obj = game:service("InsertService"):LoadAsset(tonumber(args[2]))
2906
for a,g in pairs(obj:children()) do if g:IsA("Tool") or g:IsA("HopperBin") then g.Parent = v.Backpack end end
2907
obj:Destroy()
2908
end
2909
end))
2910
end
2911
end)
2912
2913
set.MakeCommand('Sell',2,set.Prefix,{'sell'},{'player','id','currency'},3,function(plr,args)
2914
local plrz = set.GetPlayers(plr, args[1]:lower())
2915
for i, v in pairs(plrz) do
2916
coroutine.resume(coroutine.create(function()
2917
local type = args[3] or 'default'
2918
local t
2919
if type:lower()=='tix' or type:lower()=='tickets' or type:lower()=='t' then
2920
	t=Enum.CurrencyType.Tix
2921
elseif type:lower()=='robux' or type:lower()=='rb' or type:lower()=='r' then
2922
	t=Enum.CurrencyType.Robux
2923
else
2924
	t=Enum.CurrencyType.Default
2925
end
2926
if v then
2927
game:GetService("MarketplaceService"):PromptPurchase(v,tonumber(args[2]),false,t)
2928
end
2929
end))
2930
end
2931
end)
2932
2933
set.MakeCommand('Give Hat',2,set.Prefix,{'hat','givehat'},{'player','id'},2,function(plr,args)
2934
local plrz = set.GetPlayers(plr, args[1]:lower())
2935
for i, v in pairs(plrz) do
2936
coroutine.resume(coroutine.create(function()
2937
if v and v.Character then
2938
local obj = game:service("InsertService"):LoadAsset(tonumber(args[2]))
2939
for a,hat in pairs(obj:children()) do if hat:IsA("Hat") then hat.Parent = v.Character end end
2940
obj:Destroy()
2941
end
2942
end))
2943
end
2944
end)
2945
2946
set.MakeCommand('Cape List',2,set.Prefix,{'capes','capelist'},{},0,function(plr,args)
2947
local list = {"script","new yeller","pastel blue","dusty rose","cga brown","random","shiny","gold","kohl","epix","superman","swag","donor","starbucks","gomodern","admin","host","cohost","trainer","giovannis"}
2948
set.Remote(plr,'SetSetting','CapeList',list)
2949
set.Remote(plr,'Function','ListGui','Cape List','CapeList')
2950
end)
2951
2952
set.MakeCommand('Cape',2,set.Prefix,{'cape','givecape'},{'player','cape/color/id'},2,function(plr,args)
2953
local plrz = set.GetPlayers(plr, args[1]:lower())
2954
if not args[2] then args[2]='White' end
2955
for i,v in pairs(plrz) do
2956
for a,cp in pairs(v.Character:children()) do if cp.Name == "EpicCape" then cp:Destroy() end end
2957
if args[2]:lower() == "new yeller" then set.Remote(v,'Function','Cape','Fabric',"New Yeller") 
2958
elseif args[2]:lower() == "pastel blue" then set.Remote(v,'Function','Cape','Fabric',"Pastel Blue") 
2959
elseif args[2]:lower() == "dusty rose" then set.Remote(v,'Function','Cape','Fabric',"Dusty Rose") 
2960
elseif args[2]:lower() == "cga brown" then set.Remote(v,'Function','Cape','Fabric',"CGA brown") 
2961
elseif args[2]:lower() == "random" then set.Remote(v,'Function','Cape','Fabric',BrickColor.random()) 
2962
elseif args[2]:lower() == "shiny" then set.Remote(v,'Function','Cape','Plastic',"Institutional white",false,1) 
2963
elseif args[2]:lower() == "gold" then set.Remote(v,'Function','Cape','Plastic',"Bright yellow",false,0.4)
2964
elseif args[2]:lower() == "kohl" then set.Remote(v,'Function','Cape','Fabric',"Really black","108597653") 
2965
elseif args[2]:lower() == "script" then set.Remote(v,'Function','Cape','Plastic',"White","151359194") 
2966
elseif args[2]:lower() == "batman" then set.Remote(v,'Function','Cape','Fabric',"Institutional white","108597669") 
2967
elseif args[2]:lower() == "epix" then set.Remote(v,'Function','Cape','Plastic',"Really black","149442745") 
2968
elseif args[2]:lower() == "superman" then set.Remote(v,'Function','Cape','Fabric',"Bright blue","108597677") 
2969
elseif args[2]:lower() == "swag" then set.Remote(v,'Function','Cape','Fabric',"Pink","109301474") 
2970
elseif args[2]:lower() == "donor" then set.Remote(v,'Function','Cape','Plastic',"White","149009184") 
2971
elseif args[2]:lower() == "starbucks" then set.Remote(v,'Function','Cape','Plastic',"Black","149248066") 
2972
elseif args[2]:lower() == "gomodern" then set.Remote(v,'Function','Cape','Plastic',"Really black","149438175") 
2973
elseif args[2]:lower() == "admin" then set.Remote(v,'Function','Cape','Plastic',"White","149092195") 
2974
elseif args[2]:lower() == "giovannis" then set.Remote(v,'Function','Cape','Plastic',"White","149808729") 
2975
elseif args[2]:lower() == "godofdonuts" then set.Remote(v,'Function','Cape','Plastic',"Institutional white","151034443") 
2976
elseif args[2]:lower() == "host" then set.Remote(v,'Function','Cape','Plastic',"Really black","152299000") 
2977
elseif args[2]:lower() == "cohost" then set.Remote(v,'Function','Cape','Plastic',"Really black","152298950") 
2978
elseif args[2]:lower() == "trainer" then set.Remote(v,'Function','Cape','Plastic',"Really black","152298976") 
2979
elseif args[2]:lower() == "ba" or args[2]:lower() == "beardedalien" or args[2]:lower() == "beard" then set.Remote(v,'Function','Cape','Plastic','White',172528001)
2980
elseif BrickColor.new(args[2]) ~= nil then set.Remote(v,'Function','Cape','Fabric',args[2]) 
2981
elseif tonumber(args[2]) ~= nil then set.Remote(v,'Function','Cape','Fabric','White',args[2]) 
2982
end
2983
end
2984
end)
2985
2986
set.MakeCommand('UnCape',2,set.Prefix,{'uncape','removecape'},{'player'},1,function(plr,args)
2987
local plrz = set.GetPlayers(plr, args[1]:lower())
2988
for i, v in pairs(plrz) do
2989
if v and v.Character then
2990
for a,cp in pairs(v.Character:children()) do if cp.Name == "EpicCape" then cp:Destroy() end end
2991
end
2992
end
2993
end)
2994
2995
set.MakeCommand('Slippery Ground',2,set.Prefix,{'slippery','iceskate','icewalk','slide'},{'player'},1,function(plr,args)
2996
local plrz = set.GetPlayers(plr, args[1]:lower())
2997
for i, v in pairs(plrz) do
2998
set.Remote(v,'Function','Effect','slip')
2999
end
3000
end)
3001
3002
set.MakeCommand('NoClip',2,set.Prefix,{'noclip'},{'player'},1,function(plr,args)
3003
local plrz = set.GetPlayers(plr, args[1]:lower())
3004
for i, v in pairs(plrz) do
3005
set.Remote(v,'Function','Noclip','norm')
3006
end
3007
end)
3008
3009
set.MakeCommand('Flying Noclip',2,set.Prefix,{'flynoclip','oldnolcip'},{'player'},1,function(plr,args)
3010
local plrz = set.GetPlayers(plr, args[1]:lower())
3011
for i, v in pairs(plrz) do
3012
set.Remote(v,'Function','Noclip','fly')
3013
end
3014
end)
3015
3016
set.MakeCommand('Clip',2,set.Prefix,{'clip','unnoclip'},{'player'},1,function(plr,args)
3017
local plrz = set.GetPlayers(plr, args[1]:lower())
3018
for i, v in pairs(plrz) do
3019
set.Remote(v,'Function','Noclip','off')
3020
end
3021
end)
3022
3023
set.MakeCommand('Jail',2,set.Prefix,{'jail','imprison'},{'player'},1,function(plr,args)
3024
local plrz = set.GetPlayers(plr, args[1]:lower())
3025
for i, v in pairs(plrz) do
3026
coroutine.wrap(function()
3027
if v.Character and v.Character:FindFirstChild("Torso") then 
3028
local cf = v.Character.Torso.CFrame + Vector3.new(0,1,0)
3029
local origpos = v.Character.Torso.Position
3030
local mod = Instance.new("Model", game.Workspace) mod.Name = v.Name .. " Epix Jail" table.insert(set.objects, mod) 
3031
local value = Instance.new('StringValue',mod) value.Name='Player' value.Value=v.Name
3032
local top = Instance.new("Part", mod) top.Locked = true top.formFactor = "Symmetric" top.Size = Vector3.new(6,1,6) top.TopSurface = 0 top.BottomSurface = 0 top.Anchored = true top.BrickColor = BrickColor.new("Really black") top.CFrame = cf * CFrame.new(0,-3.5,0)
3033
set.JailedTools[v.Name]=Instance.new('Model') 
3034
local bottom = top:Clone() bottom.Transparency = 1 bottom.Parent = mod bottom.CFrame = cf * CFrame.new(0,3.5,0)
3035
local front = top:Clone() front.Transparency = 1 front.Reflectance = 0 front.Parent = mod front.Size = Vector3.new(6,6,1) front.CFrame = cf * CFrame.new(0,0,-3)
3036
local back = front:Clone() back.Transparency = 1 back.Parent = mod back.CFrame = cf * CFrame.new(0,0,3)
3037
local right = front:Clone() right.Transparency = 1 right.Parent = mod right.Size = Vector3.new(1,6,6) right.CFrame = cf * CFrame.new(3,0,0)
3038
local left = right:Clone() left.Transparency = 1 left.Parent = mod left.CFrame = cf * CFrame.new(-3,0,0)
3039
local msh = Instance.new("BlockMesh", front) msh.Scale = Vector3.new(1,1,0)
3040
local msh2 = msh:Clone() msh2.Parent = back
3041
local msh3 = msh:Clone() msh3.Parent = right msh3.Scale = Vector3.new(0,1,1)
3042
local msh4 = msh3:Clone() msh4.Parent = left
3043
local brick = Instance.new('Part',mod)
3044
local box = Instance.new('SelectionBox',brick)
3045
box.Adornee=brick
3046
box.Color=BrickColor.new('White')
3047
brick.Anchored=true
3048
brick.CanCollide=false
3049
brick.Transparency=1
3050
brick.Size=Vector3.new(5,7,5) 
3051
brick.CFrame=cf--*CFrame.new(0,-1,0)
3052
v.Character.Torso.CFrame = cf
3053
for l,k in pairs(v.Backpack:children()) do 
3054
	if k and k.ClassName=='Tool' or k.ClassName=='HopperBin' then 
3055
		k.Parent=set.JailedTools[v.Name]
3056
	end 
3057
end
3058
coroutine.wrap(function()
3059
repeat
3060
	local player=game.Players:FindFirstChild(v.Name)
3061
	if not player then return end
3062
	local torso=player.Character:FindFirstChild('Torso')
3063
	if not torso then return end
3064
	if not set.JailedTools[v.Name] or set.JailedTools[v.Name]==nil then set.JailedTools[v.Name]=Instance.new('Model') end
3065
	for l,k in pairs(player.Backpack:children()) do 
3066
		if k and k.ClassName=='Tool' or k.ClassName=='HopperBin' then 
3067
			k.Parent=set.JailedTools[v.Name]--tools 
3068
		end 
3069
	end 
3070
	if (torso.Position-origpos).magnitude>5 then
3071
		torso.CFrame = cf 
3072
	end
3073
	wait()
3074
until not mod or not mod.Parent or set.JailedTools[v.Name]==nil
3075
end)()
3076
end
3077
end)()
3078
end
3079
end)
3080
3081
set.MakeCommand('UnJail',2,set.Prefix,{'unjail','free','release'},{'player'},1,function(plr,args)
3082
local plrz = set.GetPlayers(plr, args[1]:lower())
3083
for i, v in pairs(plrz) do 
3084
	coroutine.wrap(function() 
3085
		if v then 
3086
			for a, jl in pairs(game.Workspace:children()) do 
3087
				if jl.Name == v.Name .. " Epix Jail" then 
3088
					jl:Destroy() 
3089
				end 
3090
			end 
3091
		if set.JailedTools[v.Name] then
3092
			for j,tewl in pairs(set.JailedTools[v.Name]:children()) do 
3093
				if tewl then
3094
					tewl.Parent=v.Backpack 
3095
				end
3096
			end
3097
			set.JailedTools[v.Name]=nil
3098
		end
3099
	set.JailedTools[v.Name]=nil 
3100
end
3101
end)()
3102
end
3103
end)
3104
3105
set.MakeCommand('Bubble Chat',2,set.Prefix,{'bchat','dchat','bubblechat','dialogchat'},{'player','color(red/green/blue)'},2,function(plr,args)
3106
	local color=Enum.ChatColor.Red
3107
	if not args[2] then
3108
		color=Enum.ChatColor.Red
3109
	elseif args[2]:lower()=='red' then
3110
		color=Enum.ChatColor.Red
3111
	elseif args[2]:lower()=='green' then
3112
		color=Enum.ChatColor.Green
3113
	elseif args[2]:lower()=='blue' then
3114
		color=Enum.ChatColor.Blue
3115
	end
3116
	for i,v in pairs(set.GetPlayers(plr,(args[1] or plr.Name))) do
3117
		set.Remote(v,"Function","BubbleChat",color)
3118
	end
3119
end)
3120
3121
set.MakeCommand('Glitch Disorient',2,set.Prefix,{'glitch','glitchdisorient','glitch1','gd'},{'player','intensity'},2,function(plr,args)
3122
	for i,v in pairs(set.GetPlayers(plr, args[1])) do
3123
		local num=args[2] or 15
3124
		set.Remote(v,'Function','Glitch','trippy',num)
3125
	end
3126
end)
3127
3128
set.MakeCommand('Glitch Ghost',2,set.Prefix,{'glitch2','glitchghost','gg'},{'player','intensity'},2,function(plr,args)
3129
	for i,v in pairs(set.GetPlayers(plr, args[1])) do
3130
		local num=args[2] or 150
3131
		set.Remote(v,'Function','Glitch','ghost',num)
3132
	end
3133
end)
3134
3135
set.MakeCommand('Un-Glitch',2,set.Prefix,{'unglitch','unglitchghost','ungd','ungg'},{'player'},1,function(plr,args)
3136
	for i,v in pairs(set.GetPlayers(plr, args[1])) do
3137
		set.Remote(v,'Function','Glitch','off')
3138
	end
3139
end)
3140
3141
set.MakeCommand('Message Of The Day',0,set.AnyPrefix,{'modt','messageoftheday','daymessage'},{},0,function(plr,args)
3142
	set.PM('Message of the Day',plr,game:service('MarketplaceService'):GetProductInfo(set.MessageOfTheDayID).Description)
3143
end)
3144
3145
set.MakeCommand('Phase',2,set.Prefix,{'phase'},{'player'},1,function(plr,args)
3146
	for i,v in pairs(set.GetPlayers(plr, args[1])) do
3147
		set.Remote(v,'Function','Phase')
3148
	end
3149
end)
3150
3151
set.MakeCommand('Un-Bubble Chat',2,set.Prefix,{'unbchat','unbubblechat','undchat','undialogchat'},{'player'},1,function(plr,args)
3152
	for i,v in pairs(set.GetPlayers(plr,(args[1] or plr.Name))) do
3153
		set.Remote(v,'Function','BubbleChat','off')
3154
	end
3155
end)
3156
3157
set.MakeCommand('Starter Tools',2,set.Prefix,{'startertools','starttools'},{'player'},1,function(plr,args)
3158
local plrz = set.GetPlayers(plr, args[1]:lower())
3159
for i, v in pairs(plrz) do
3160
coroutine.resume(coroutine.create(function()
3161
if v and v:findFirstChild("Backpack") then
3162
for a,q in pairs(game.StarterPack:children()) do q:Clone().Parent = v.Backpack end
3163
end
3164
end))
3165
end
3166
end)
3167
3168
set.MakeCommand('Sword',2,set.Prefix,{'sword','givesword'},{'player'},1,function(plr,args)
3169
local plrz = set.GetPlayers(plr, args[1]:lower())
3170
for i, v in pairs(plrz) do
3171
coroutine.resume(coroutine.create(function()
3172
if v and v:findFirstChild("Backpack") then
3173
local sword = Instance.new("Tool", v.Backpack) sword.Name = "Sword"  sword.TextureId = "rbxasset://Textures/Sword128.png"
3174
sword.GripForward = Vector3.new(-1,0,0)
3175
sword.GripPos = Vector3.new(0,0,-1.5)
3176
sword.GripRight = Vector3.new(0,1,0)
3177
sword.GripUp = Vector3.new(0,0,1)
3178
local handle = Instance.new("Part", sword) handle.Name = "Handle" handle.FormFactor = "Plate" handle.Size = Vector3.new(1,.8,4) handle.TopSurface = 0 handle.BottomSurface = 0
3179
local msh = Instance.new("SpecialMesh", handle) msh.MeshId = "rbxasset://fonts/sword.mesh" msh.TextureId = "rbxasset://textures/SwordTexture.png"
3180
set.LoadScript('LocalScript',[[
3181
repeat wait() until game:service('Players').LocalPlayer and game:service('Players').LocalPlayer.Character and game:service('Players').LocalPlayer.Character:findFirstChild("Humanoid")
3182
local Damage = 15
3183
local SlashSound = Instance.new("Sound", script.Parent.Handle)
3184
SlashSound.SoundId = "rbxasset://sounds\\swordslash.wav"
3185
SlashSound.Volume = 1
3186
local LungeSound = Instance.new("Sound", script.Parent.Handle)
3187
LungeSound.SoundId = "rbxasset://sounds\\swordlunge.wav"
3188
LungeSound.Volume = 1
3189
local UnsheathSound = Instance.new("Sound", script.Parent.Handle)
3190
UnsheathSound.SoundId = "rbxasset://sounds\\unsheath.wav"
3191
UnsheathSound.Volume = 1
3192
local last = 0
3193
script.Parent.Handle.Touched:connect(function(hit)
3194
if hit and hit.Parent and hit.Parent:findFirstChild("Humanoid") and game:service('Players'):findFirstChild(hit.Parent.Name) and game:service('Players').LocalPlayer.Character.Humanoid.Health > 0 and hit.Parent.Humanoid ~= game:service('Players').LocalPlayer.Character.Humanoid then
3195
local tag = Instance.new("ObjectValue", hit.Parent.Humanoid) tag.Value = plr1 tag.Name = "creator" game:service("Debris"):AddItem(tag, 3)
3196
hit.Parent.Humanoid:TakeDamage(Damage)
3197
end
3198
end)
3199
script.Parent.Activated:connect(function()
3200
if not script.Parent.Enabled or game:service('Players').LocalPlayer.Character.Humanoid.Health <= 0 then return end
3201
script.Parent.Enabled = false
3202
local tick = game:service("RunService").Stepped:wait()
3203
if tick - last <= .2 then
3204
LungeSound:play()
3205
local lunge = Instance.new("StringValue", script.Parent) lunge.Name = "toolanim" lunge.Value = "Lunge"
3206
local frc = Instance.new("BodyVelocity", game:service('Players').LocalPlayer.Character.Torso) frc.Name = "SwordForce" frc.velocity = Vector3.new(0,10,0)
3207
wait(.2)
3208
script.Parent.GripForward = Vector3.new(0,0,1)
3209
script.Parent.GripRight = Vector3.new(0,-1,0)
3210
script.Parent.GripUp = Vector3.new(-1,0,0)
3211
wait(.3)
3212
frc:Destroy() wait(.5)
3213
script.Parent.GripForward = Vector3.new(-1,0,0)
3214
script.Parent.GripRight = Vector3.new(0,1,0)
3215
script.Parent.GripUp = Vector3.new(0,0,1)
3216
else
3217
SlashSound:play()
3218
local slash = Instance.new("StringValue", script.Parent) slash.Name = "toolanim" slash.Value = "Slash"
3219
end
3220
last = tick
3221
script.Parent.Enabled = true
3222
end)
3223
script.Parent.Equipped:connect(function(mouse)
3224
for i,v in pairs(game:service('Players').LocalPlayer.Character.Torso:children()) do if v.Name == "SwordForce" then v:Destroy() end end
3225
UnsheathSound:play()
3226
script.Parent.Enabled = true
3227
if not mouse then return end
3228
mouse.Icon = "http://www.roblox.com/asset/?id=103593352"
3229
end)]],'SwordScript',false,sword)
3230
end
3231
end))
3232
end
3233
end)
3234
3235
set.MakeCommand('Clone',2,set.Prefix,{'clone','cloneplayer'},{'player'},1,function(plr,args)
3236
local plrz = set.GetPlayers(plr, args[1]:lower())
3237
for i, v in pairs(plrz) do
3238
coroutine.wrap(function()
3239
if v and v.Character then 
3240
v.Character.Archivable = true 
3241
local cl = v.Character:Clone() 
3242
table.insert(set.objects,cl) 
3243
cl.Parent = game.Workspace 
3244
cl:MoveTo(v.Character:GetModelCFrame().p)
3245
cl:MakeJoints()
3246
v.Character.Archivable = false 
3247
repeat wait() until not cl or not cl.Humanoid or cl.Humanoid.Health<=0
3248
wait(5)
3249
if cl then cl:Destroy() end
3250
end
3251
end)()
3252
end
3253
end)
3254
3255
set.MakeCommand('Training Bot',2,set.Prefix,{'bot','tbot','trainingbot','bots','robot','robots','dummy','dummys','testdummy','testdummys','dolls','doll'},{'player','num','walk?','attack?','swarm?','walkspeed','dmg','hp','dist'},9,function(plr,args)
3256
	local walk=false
3257
	if args[3] then if args[3]:lower()=='true' or args[3]:lower()=='yes' then walk=true end end
3258
	local attack=false
3259
	if args[4] then if args[4]:lower()=='true' or args[4]:lower()=='yes' then attack=true end end
3260
	local health=args[8] or 100
3261
	local damage=args[7] or 10
3262
	local walkspeed=args[6] or 20
3263
	local dist=args[9] or 100
3264
	local swarm=false
3265
	if args[5] then if args[5]:lower()=='true' or args[5]:lower()=='yes' then swarm=true end end
3266
	local function makedolls(player)
3267
		local num=args[2] or 1
3268
		local pos=player.Character.Torso.CFrame
3269
		num=tonumber(num)
3270
		for i=1,num do
3271
			coroutine.wrap(function()
3272
				player.Character.Archivable = true
3273
				local cl = player.Character:Clone() 
3274
				player.Character.Archivable = false
3275
				table.insert(set.objects,cl)
3276
				local anim=script['Script Dependencies'].Animate:Clone()
3277
				anim.Parent=cl 
3278
				anim.Disabled=false
3279
				cl.Parent = game.Workspace 
3280
				cl.Name='~=Bot=~'
3281
				if cl:FindFirstChild('Animate') then cl.Animate:Destroy() end
3282
				cl.Humanoid.MaxHealth=health
3283
				wait()
3284
				cl.Humanoid.Health=health
3285
				cl.Torso.CFrame=pos*CFrame.Angles(0,math.rad(360/num*i),0)*CFrame.new(5+.2*num,0,0)
3286
				cl:MakeJoints()
3287
				cl.Humanoid.WalkSpeed=walkspeed
3288
				for k,f in pairs(cl:children()) do if f.ClassName=='ForceField' then f:Destroy() end end
3289
				local run=true
3290
				local thing
3291
				local target
3292
				local chasing=false
3293
				local function find()
3294
					for k,n in pairs(game:service('Players'):GetPlayers()) do
3295
						coroutine.wrap(function()
3296
							if swarm and not chasing and n:DistanceFromCharacter(cl.Torso.Position) < tonumber(dist) then
3297
								n=n.Character
3298
								if not n:FindFirstChild('Humanoid') or not n:FindFirstChild('Torso') or n.Humanoid.Health>=math.huge or n:FindFirstChild('ForceField') then return end
3299
								target=n.Torso
3300
								chasing=true
3301
								repeat wait() until chasing==false or n.Humanoid.Health<=0 or n.Humanoid.Health>=math.huge or n:FindFirstChild('ForceField') or not n:FindFirstChild('Torso') or not n
3302
								chasing=false
3303
							end
3304
						end)()
3305
					end
3306
				end
3307
				coroutine.wrap(function()
3308
					if not cl.Humanoid or not cl.Torso then return end
3309
					thing=cl.Torso.Touched:connect(function(hit) 
3310
						coroutine.wrap(function()
3311
							if attack and run and cl and hit.Parent:FindFirstChild('Humanoid') and hit.Parent:FindFirstChild('Torso') and hit.Parent.Name~='~=Bot=~' then
3312
								if hit.Parent.Humanoid.Health>=math.huge or hit.Parent:FindFirstChild('ForceField') then return end
3313
								hit.Parent.Humanoid.Health=hit.Parent.Humanoid.Health-damage
3314
								target=hit.Parent.Torso
3315
								chasing=true
3316
								repeat wait() until chasing==false or hit.Parent.Humanoid.Health<=0 or hit.Parent.Humanoid.Health>=math.huge or hit.Parent:FindFirstChild('ForceField') or not hit.Parent:FindFirstChild('Torso') or not hit.Parent
3317
								chasing=false
3318
							end
3319
						end)()
3320
						
3321
					end)
3322
					repeat
3323
						if not walk then return end
3324
						if cl.Humanoid.Sit then
3325
							cl.Humanoid.Jump=true
3326
							cl.Humanoid.Sit=false
3327
						end
3328
						if chasing then
3329
							wait() 
3330
							cl.Humanoid.WalkToPoint=target.Position
3331
							if math.abs(cl.Torso.Position.Y-target.Position.Y)>7 then
3332
								cl.Humanoid.Jump=true
3333
							end
3334
						else
3335
							cl.Humanoid.WalkToPoint=Vector3.new(math.random(cl.Torso.Position.X-100,cl.Torso.Position.X+100),cl.Torso.Position.Y,math.random(cl.Torso.Position.Z-100,cl.Torso.Position.Z+100))
3336
							wait(1)
3337
						end
3338
						pcall(find)
3339
						wait()
3340
					until not cl or not cl.Humanoid or cl.Humanoid.Health<=0 or not run
3341
				end)()
3342
				repeat wait() until not cl or not cl.Humanoid or cl.Humanoid.Health<=0 or not run
3343
				run=false
3344
				pcall(function() thing:disconnect() end)
3345
				wait(2)
3346
				pcall(function() if cl then cl:Destroy() end end)
3347
			end)()
3348
		end
3349
	end
3350
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
3351
		makedolls(v)
3352
	end
3353
end)
3354
3355
set.MakeCommand('Click to Teleport',2,set.Prefix,{'clickteleport','teleporttoclick','clicktp','forceteleport','ctp'},{'player'},1,function(plr,args)
3356
local plrz = set.GetPlayers(plr, args[1]:lower())
3357
for i, v in pairs(plrz) do
3358
coroutine.wrap(function()
3359
local tool=Instance.new('HopperBin',plr.Backpack)
3360
set.LoadScript('LocalScript',[[local localplayer=game.Players.LocalPlayer
3361
local mouse=localplayer:GetMouse()
3362
local tool=script.Parent
3363
local use=false
3364
local target=game.Players:WaitForChild(']]..v.Name..[[')
3365
local char=target.Character
3366
local hum=char:FindFirstChild('Humanoid')
3367
if not hum then tool:Destroy() end
3368
hum.Died:connect(function() tool:Destroy() end)
3369
tool.Name=target.Name
3370
function onButton1Down(mouse)
3371
	if not target.Character or not target.Character:FindFirstChild('Humanoid') then return end
3372
	local torso=target.Character:FindFirstChild('Torso')
3373
	if not torso then return end
3374
	local pos=mouse.Hit.p
3375
	torso.CFrame=CFrame.new(Vector3.new(pos.x, pos.y + 4, pos.z))
3376
end
3377
local holding=false
3378
function rotate()
3379
	local char=target.Character
3380
	local torso=char:FindFirstChild('Torso')
3381
	if not torso then return end
3382
	holding=true
3383
	print(1)
3384
	repeat
3385
		torso.CFrame=CFrame.new(torso.Position,Vector3.new(mouse.Hit.p.X,torso.Position.Y,mouse.Hit.p.Z))
3386
		wait()
3387
	until not holding or not use
3388
end
3389
3390
mouse.KeyDown:connect(function(key)
3391
	if key:lower()=='r' and use then
3392
		rotate()
3393
	end
3394
	if key:lower()=='x' then
3395
		tool:Destroy()
3396
	end
3397
end)
3398
3399
mouse.KeyUp:connect(function(key)
3400
	if key:lower()=='r' then
3401
		holding=false
3402
	end
3403
end)
3404
3405
function onSelected(mouse)
3406
	use=true
3407
	mouse.Icon = "rbxasset://textures\\ArrowCursor.png"
3408
	mouse.Button1Down:connect(function() onButton1Down(mouse) end)
3409
end
3410
tool.Selected:connect(onSelected)
3411
tool.Deselected:connect(function() use=false holding=false end)]],set.AssignName(),false,tool) 
3412
end)()
3413
end
3414
end)
3415
3416
set.MakeCommand('Click to Walk',2,set.Prefix,{'clickwalk','cw','forcewalk','walktool','walktoclick','clickcontrol','forcewalk'},{'player'},1,function(plr,args)
3417
local plrz = set.GetPlayers(plr, args[1]:lower())
3418
for i, v in pairs(plrz) do
3419
coroutine.wrap(function()
3420
local tool=Instance.new('HopperBin',plr.Backpack)
3421
set.LoadScript('LocalScript',[[local localplayer=game.Players.LocalPlayer
3422
local mouse=localplayer:GetMouse()
3423
local tool=script.Parent
3424
local target=game.Players:WaitForChild(']]..v.Name..[[')
3425
local char=target.Character
3426
local hum=char:FindFirstChild('Humanoid')
3427
if not hum then tool:Destroy() end
3428
hum.Died:connect(function() tool:Destroy() end)
3429
tool.Name=target.Name
3430
function onButton1Down(mouse)
3431
	if not target.Character or not target.Character:FindFirstChild('Humanoid') then return end
3432
	local pos=mouse.Hit.p
3433
	hum:MoveTo(pos)
3434
end
3435
local holding=false
3436
function rotate()
3437
	local char=target.Character
3438
	local torso=char:FindFirstChild('Torso')
3439
	if not torso then return end
3440
	holding=true
3441
	print(1)
3442
	repeat
3443
		torso.CFrame=CFrame.new(torso.Position,Vector3.new(mouse.Hit.p.X,torso.Position.Y,mouse.Hit.p.Z))
3444
		wait()
3445
	until not holding or not use
3446
end
3447
mouse.KeyDown:connect(function(key)
3448
	if key:lower()=='r' and use then
3449
		rotate()
3450
	end
3451
	if key:lower()=='x' then
3452
		tool:Destroy()
3453
	end
3454
end)
3455
3456
mouse.KeyUp:connect(function(key)
3457
	if key:lower()=='r' then
3458
		holding=false
3459
	end
3460
end)
3461
3462
function onSelected(mouse)
3463
	use=true
3464
	mouse.Icon = "rbxasset://textures\\ArrowCursor.png"
3465
	mouse.Button1Down:connect(function() onButton1Down(mouse) end)
3466
end
3467
tool.Selected:connect(onSelected)
3468
tool.Deselected:connect(function() use=false holding=false end)]],set.AssignName(),false,tool) 
3469
end)()
3470
end
3471
end)
3472
3473
set.MakeCommand('Body Swap',2,set.Prefix,{'bodyswap','bodysteal','bswap'},{'player1','player2'},2,function(plr,args)
3474
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
3475
	for i2,v2 in pairs(set.GetPlayers(plr,args[2])) do
3476
		local temptools=Instance.new('Model')
3477
		local tempcloths=Instance.new('Model')
3478
		local vpos=v.Character.Torso.CFrame
3479
		local v2pos=v2.Character.Torso.CFrame
3480
		local vface=v.Character.Head.face
3481
		local v2face=v2.Character.Head.face
3482
		vface.Parent=v2.Character.Head
3483
		v2face.Parent=v.Character.Head
3484
		for k,p in pairs(v.Character:children()) do
3485
			if p:IsA('BodyColors') or p:IsA('CharacterMesh') or p:IsA('Pants') or p:IsA('Shirt') or p:IsA('Hat') then
3486
				p.Parent=tempcloths
3487
			elseif p:IsA('Tool') then
3488
				p.Parent=temptools
3489
			end
3490
		end	
3491
		for k,p in pairs(v.Backpack:children()) do
3492
			p.Parent=temptools
3493
		end
3494
		for k,p in pairs(v2.Character:children()) do
3495
			if p:IsA('BodyColors') or p:IsA('CharacterMesh') or p:IsA('Pants') or p:IsA('Shirt') or p:IsA('Hat') then
3496
				p.Parent=v.Character
3497
			elseif p:IsA('Tool') then
3498
				p.Parent=v.Backpack
3499
			end
3500
		end	
3501
		for k,p in pairs(tempcloths:children()) do
3502
			p.Parent=v2.Character
3503
		end	
3504
		for k,p in pairs(v2.Backpack:children()) do
3505
			p.Parent=v.Backpack
3506
		end
3507
		for k,p in pairs(temptools:children()) do
3508
			p.Parent=v2.Backpack
3509
		end
3510
		v2.Character.Torso.CFrame=vpos
3511
		v.Character.Torso.CFrame=v2pos
3512
	end
3513
	end 
3514
end)
3515
3516
set.MakeCommand('Control',2,set.Prefix,{'control','takeover'},{'player'},1,function(plr,args)
3517
local plrz = set.GetPlayers(plr, args[1]:lower())
3518
for i, v in pairs(plrz) do
3519
coroutine.wrap(function()
3520
if v and v.Character then
3521
v.Character.Humanoid.PlatformStand = true
3522
local w = Instance.new("Weld", plr.Character.Torso ) 
3523
w.Part0 = plr.Character.Torso 
3524
w.Part1 = v.Character.Torso  
3525
local w2 = Instance.new("Weld", plr.Character.Head) 
3526
w2.Part0 = plr.Character.Head 
3527
w2.Part1 = v.Character.Head  
3528
local w3 = Instance.new("Weld", plr.Character:findFirstChild("Right Arm")) 
3529
w3.Part0 = plr.Character:findFirstChild("Right Arm")
3530
w3.Part1 = v.Character:findFirstChild("Right Arm") 
3531
local w4 = Instance.new("Weld", plr.Character:findFirstChild("Left Arm"))
3532
w4.Part0 = plr.Character:findFirstChild("Left Arm")
3533
w4.Part1 = v.Character:findFirstChild("Left Arm") 
3534
local w5 = Instance.new("Weld", plr.Character:findFirstChild("Right Leg")) 
3535
w5.Part0 = plr.Character:findFirstChild("Right Leg")
3536
w5.Part1 = v.Character:findFirstChild("Right Leg") 
3537
local w6 = Instance.new("Weld", plr.Character:findFirstChild("Left Leg")) 
3538
w6.Part0 = plr.Character:findFirstChild("Left Leg")
3539
w6.Part1 = v.Character:findFirstChild("Left Leg") 
3540
plr.Character.Head.face:Destroy()
3541
for i, p in pairs(v.Character:children()) do
3542
if p:IsA("BasePart") then 
3543
p.CanCollide = false
3544
end
3545
end
3546
for i, p in pairs(plr.Character:children()) do
3547
if p:IsA("BasePart") then 
3548
p.Transparency = 1 
3549
elseif p:IsA("Hat") then
3550
p:Destroy()
3551
end
3552
end
3553
v.Character.Parent = plr.Character
3554
--v.Character.Humanoid.Changed:connect(function() v.Character.Humanoid.PlatformStand = true end)
3555
end
3556
end)()
3557
end
3558
end)
3559
3560
set.MakeCommand('Refresh',2,set.Prefix,{'refresh','reset'},{'player'},1,function(plr,args)
3561
local plrz = set.GetPlayers(plr, args[1]:lower())
3562
for i, v in pairs(plrz) do
3563
coroutine.wrap(function()
3564
local pos=v.Character.Torso.CFrame
3565
local temptools={}
3566
pcall(function() v.Character.Humanoid:UnequipTools() end)
3567
wait()
3568
for k,t in pairs(v.Backpack:children()) do
3569
	if t:IsA('Tool') or t:IsA('Hopperbin') then
3570
		table.insert(temptools,t)
3571
	end
3572
end
3573
v:LoadCharacter()
3574
v.Character.Torso.CFrame=pos
3575
for d,f in pairs(v.Character:children()) do
3576
	if f:IsA('ForceField') then f:Destroy() end
3577
end
3578
wait(1)
3579
v.Backpack:ClearAllChildren()
3580
for l,m in pairs(temptools) do
3581
	m:clone().Parent=v.Backpack
3582
end
3583
end)()
3584
end
3585
end)
3586
3587
set.MakeCommand('Kill',2,set.Prefix,{'kill'},{'player'},1,function(plr,args)
3588
local plrz = set.GetPlayers(plr, args[1])
3589
for i, v in pairs(plrz) do
3590
coroutine.wrap(function()
3591
if v and v.Character then v.Character:BreakJoints() end
3592
end)()
3593
end
3594
end)
3595
3596
set.MakeCommand('Respawn',2,set.Prefix,{'respawn'},{'player'},1,function(plr,args)
3597
local plrz = set.GetPlayers(plr, args[1]:lower())
3598
for i, v in pairs(plrz) do
3599
coroutine.wrap(function()
3600
if v and v.Character then v:LoadCharacter()
3601
	set.Remote(v,'Function','SetView','reset')
3602
end
3603
end)()
3604
end
3605
end)
3606
3607
set.MakeCommand('Trip',2,set.Prefix,{'trip'},{'player'},1,function(plr,args)
3608
local plrz = set.GetPlayers(plr, args[1]:lower())
3609
for i, v in pairs(plrz) do
3610
coroutine.wrap(function()
3611
if v and v.Character and v.Character:findFirstChild("Torso") then 
3612
v.Character.Torso.CFrame = v.Character.Torso.CFrame * CFrame.Angles(0,0,math.rad(180)) 
3613
end
3614
end)()
3615
end
3616
end)
3617
3618
set.MakeCommand('Stun',2,set.Prefix,{'stun'},{'player'},1,function(plr,args)
3619
local plrz = set.GetPlayers(plr, args[1]:lower())
3620
for i, v in pairs(plrz) do
3621
coroutine.wrap(function()
3622
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3623
v.Character.Humanoid.PlatformStand = true
3624
end
3625
end)()
3626
end
3627
end)
3628
3629
set.MakeCommand('UnStun',2,set.Prefix,{'unstun'},{'player'},1,function(plr,args)
3630
local plrz = set.GetPlayers(plr, args[1]:lower())
3631
for i, v in pairs(plrz) do
3632
coroutine.wrap(function()
3633
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3634
v.Character.Humanoid.PlatformStand = false
3635
end
3636
end)()
3637
end
3638
end)
3639
3640
set.MakeCommand('Jump',2,set.Prefix,{'jump'},{'player'},1,function(plr,args)
3641
local plrz = set.GetPlayers(plr, args[1]:lower())
3642
for i, v in pairs(plrz) do
3643
coroutine.wrap(function()
3644
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3645
v.Character.Humanoid.Jump = true
3646
end
3647
end)()
3648
end
3649
end)
3650
3651
set.MakeCommand('Sit',2,set.Prefix,{'sit','seat'},{'player'},1,function(plr,args)
3652
local plrz = set.GetPlayers(plr, args[1]:lower())
3653
for i, v in pairs(plrz) do
3654
coroutine.wrap(function()
3655
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3656
v.Character.Humanoid.Sit = true
3657
end
3658
end)()
3659
end
3660
end)
3661
3662
set.MakeCommand('Invisible',2,set.Prefix,{'invisible'},{'player'},1,function(plr,args)
3663
local plrz = set.GetPlayers(plr, args[1]:lower())
3664
for i, v in pairs(plrz) do
3665
coroutine.wrap(function()
3666
if v and v.Character then 
3667
for a, obj in pairs(v.Character:children()) do 
3668
if obj:IsA("BasePart") then obj.Transparency = 1 if obj:findFirstChild("face") then obj.face.Transparency = 1 end elseif obj:IsA("Hat") and obj:findFirstChild("Handle") then obj.Handle.Transparency = 1 end
3669
end
3670
end
3671
end)()
3672
end
3673
end)
3674
3675
set.MakeCommand('Visible',2,set.Prefix,{'visible'},{'player'},1,function(plr,args)
3676
local plrz = set.GetPlayers(plr, args[1]:lower())
3677
for i, v in pairs(plrz) do
3678
coroutine.wrap(function()
3679
if v and v.Character then 
3680
for a, obj in pairs(v.Character:children()) do 
3681
if obj:IsA("BasePart") and obj.Name~='HumanoidRootPart' then obj.Transparency = 0 if obj:findFirstChild("face") then obj.face.Transparency = 0 end elseif obj:IsA("Hat") and obj:findFirstChild("Handle") then obj.Handle.Transparency = 0 end
3682
end
3683
end
3684
end)()
3685
end
3686
end)
3687
3688
set.MakeCommand('Lock',2,set.Prefix,{'lock'},{'player'},1,function(plr,args)
3689
local plrz = set.GetPlayers(plr,args[1]:lower())
3690
for i, v in pairs(plrz) do
3691
coroutine.wrap(function()
3692
if v and v.Character then 
3693
for a, obj in pairs(v.Character:children()) do 
3694
if obj:IsA("BasePart") then obj.Locked = true elseif obj:IsA("Hat") and obj:findFirstChild("Handle") then obj.Handle.Locked = true end
3695
end
3696
end
3697
end)()
3698
end
3699
end)
3700
3701
set.MakeCommand('UnLock',2,set.Prefix,{'unlock'},{'player'},1,function(plr,args)
3702
local plrz = set.GetPlayers(plr, args[1]:lower())
3703
for i, v in pairs(plrz) do
3704
coroutine.wrap(function()
3705
if v and v.Character then 
3706
for a, obj in pairs(v.Character:children()) do 
3707
if obj:IsA("BasePart") then obj.Locked = false elseif obj:IsA("Hat") and obj:findFirstChild("Handle") then obj.Handle.Locked = false end
3708
end
3709
end
3710
end)()
3711
end
3712
end)
3713
3714
set.MakeCommand('Explode',2,set.Prefix,{'explode','boom','boomboom'},{'player'},1,function(plr,args)
3715
local plrz = set.GetPlayers(plr, args[1]:lower())
3716
for i, v in pairs(plrz) do
3717
coroutine.wrap(function()
3718
if v and v.Character and v.Character:findFirstChild("Torso") then 
3719
local ex = Instance.new("Explosion", game.Workspace) 
3720
ex.Position = v.Character.Torso.Position
3721
ex.BlastRadius=20
3722
end
3723
end)()
3724
end
3725
end)
3726
3727
set.MakeCommand('Light',2,set.Prefix,{'light'},{'player','color'},2,function(plr,args)
3728
local plrz = set.GetPlayers(plr, args[1]:lower())
3729
local str = BrickColor.new('Bright blue').Color
3730
if args[2] then
3731
local teststr = args[2]
3732
if BrickColor.new(teststr) ~= nil then str = BrickColor.new(teststr).Color end
3733
end
3734
for i, v in pairs(plrz) do
3735
coroutine.wrap(function()
3736
if v and v.Character and v.Character:findFirstChild("Torso") then
3737
local p=Instance.new('PointLight',v.Character.Torso)
3738
table.insert(set.objects,p)
3739
p.Color=str
3740
p.Brightness=5
3741
p.Range=15
3742
end
3743
end)()
3744
end
3745
end)
3746
3747
set.MakeCommand('UnLight',2,set.Prefix,{'unlight'},{'player'},1,function(plr,args)
3748
local plrz = set.GetPlayers(plr, args[1]:lower())
3749
for i, v in pairs(plrz) do
3750
coroutine.wrap(function()
3751
if v and v.Character and v.Character:findFirstChild("Torso") then 
3752
for z, cl in pairs(v.Character.Torso:children()) do 
3753
	if cl:IsA('PointLight') then cl:Destroy() end 
3754
end
3755
end
3756
end)()
3757
end
3758
end)
3759
3760
set.MakeCommand('Talk',-1,set.Prefix,{'talk','maketalk'},{'player','message'},2,function(plr,args)
3761
local message = args[2]
3762
for i,p in pairs(set.GetPlayers(plr, args[1]:lower())) do
3763
coroutine.wrap(function()
3764
game:service('Chat'):Chat(p.Character.Head,message,Enum.ChatColor.Blue)
3765
end)()
3766
end
3767
end)
3768
3769
set.MakeCommand('Fire',-1,set.Prefix,{'fire','makefire','givefire'},{'player','color'},2,function(plr,args)
3770
local plrz = set.GetPlayers(plr, args[1]:lower())
3771
local str = BrickColor.new('Bright orange').Color
3772
if args[2] then
3773
local teststr = args[2]
3774
if BrickColor.new(teststr) ~= nil then str = BrickColor.new(teststr).Color end
3775
end
3776
for i, v in pairs(plrz) do
3777
coroutine.wrap(function()
3778
if v and v.Character and v.Character:findFirstChild("Torso") then
3779
local f=Instance.new('Fire',v.Character.Torso)
3780
local p=Instance.new('PointLight',v.Character.Torso)
3781
table.insert(set.objects,f)
3782
table.insert(set.objects,p)
3783
p.Color=str
3784
p.Brightness=5
3785
p.Range=15
3786
f.Color=str
3787
f.SecondaryColor=str
3788
end
3789
end)()
3790
end
3791
end)
3792
3793
set.MakeCommand('UnFire',-1,set.Prefix,{'unfire','removefire','extinguish'},{'player'},1,function(plr,args)
3794
local plrz = set.GetPlayers(plr, args[1]:lower())
3795
for i, v in pairs(plrz) do
3796
coroutine.wrap(function()
3797
if v and v.Character and v.Character:findFirstChild("Torso") then 
3798
for z, cl in pairs(v.Character.Torso:children()) do if cl:IsA("Fire") or cl:IsA('PointLight') then cl:Destroy() end end
3799
end
3800
end)()
3801
end
3802
end)
3803
3804
set.MakeCommand('Smoke',-1,set.Prefix,{'smoke','givesmoke'},{'player','color'},2,function(plr,args)
3805
local plrz = set.GetPlayers(plr, args[1]:lower())
3806
local str = BrickColor.new('Bright orange').Color
3807
if args[2] then
3808
local teststr = args[2]
3809
if BrickColor.new(teststr) ~= nil then str = BrickColor.new(teststr).Color end
3810
end
3811
for i, v in pairs(plrz) do
3812
coroutine.wrap(function()
3813
if v and v.Character and v.Character:findFirstChild("Torso") then
3814
local cl = Instance.new("Smoke", v.Character.Torso) table.insert(set.objects, cl)
3815
cl.Color=str
3816
end
3817
end)()
3818
end
3819
end)
3820
3821
set.MakeCommand('UnSmoke',-1,set.Prefix,{'unsmoke'},{'player'},1,function(plr,args)
3822
local plrz = set.GetPlayers(plr, args[1]:lower())
3823
for i, v in pairs(plrz) do
3824
coroutine.wrap(function()
3825
if v and v.Character and v.Character:findFirstChild("Torso") then 
3826
for z, cl in pairs(v.Character.Torso:children()) do if cl:IsA("Smoke") then cl:Destroy() end end
3827
end
3828
end)()
3829
end
3830
end)
3831
3832
set.MakeCommand('Sparkles',-1,set.Prefix,{'sparkles'},{'player','color'},2,function(plr,args)
3833
local plrz = set.GetPlayers(plr, args[1]:lower())
3834
local str = BrickColor.new('Bright blue').Color
3835
if args[2] then
3836
local teststr = args[2]
3837
if BrickColor.new(teststr) ~= nil then str = BrickColor.new(teststr).Color end
3838
end
3839
for i, v in pairs(plrz) do
3840
coroutine.wrap(function()
3841
if v and v.Character and v.Character:findFirstChild("Torso") then
3842
local cl = Instance.new("Sparkles", v.Character.Torso) table.insert(set.objects, cl)
3843
local p=Instance.new('PointLight',v.Character.Torso) table.insert(set.objects, p)
3844
p.Color=str
3845
p.Brightness=5
3846
p.Range=15
3847
cl.SparkleColor=str
3848
end
3849
end)()
3850
end
3851
end)
3852
3853
set.MakeCommand('UnSparkle',-1,set.Prefix,{'unsparkles'},{'player'},1,function(plr,args)
3854
local plrz = set.GetPlayers(plr, args[1]:lower())
3855
for i, v in pairs(plrz) do
3856
coroutine.wrap(function()
3857
if v and v.Character and v.Character:findFirstChild("Torso") then 
3858
for z, cl in pairs(v.Character.Torso:children()) do if cl:IsA("Sparkles") or cl:IsA('PointLight') then cl:Destroy() end end
3859
end
3860
end)()
3861
end
3862
end)
3863
3864
set.MakeCommand('Force Field',2,set.Prefix,{'ff','forcefield'},{'player'},1,function(plr,args)
3865
local plrz = set.GetPlayers(plr, args[1]:lower())
3866
for i, v in pairs(plrz) do
3867
coroutine.wrap(function()
3868
if v and v.Character then Instance.new("ForceField", v.Character) end
3869
end)()
3870
end
3871
end)
3872
3873
set.MakeCommand('Remove Force Field',2,set.Prefix,{'unff','unforcefield'},{'player'},1,function(plr,args)
3874
local plrz = set.GetPlayers(plr, args[1]:lower())
3875
for i, v in pairs(plrz) do
3876
coroutine.wrap(function()
3877
if v and v.Character then 
3878
for z, cl in pairs(v.Character:children()) do if cl:IsA("ForceField") then cl:Destroy() end end
3879
end
3880
end)()
3881
end
3882
end)
3883
3884
set.MakeCommand('Punish',2,set.Prefix,{'punish'},{'player'},1,function(plr,args)
3885
local plrz = set.GetPlayers(plr, args[1]:lower())
3886
for i, v in pairs(plrz) do
3887
coroutine.wrap(function()
3888
if v and v.Character then 
3889
v.Character.Parent = game:service("Lighting")
3890
end
3891
end)()
3892
end
3893
end)
3894
3895
set.MakeCommand('UnPunish',2,set.Prefix,{'unpunish'},{'player'},1,function(plr,args)
3896
local plrz = set.GetPlayers(plr, args[1]:lower())
3897
for i, v in pairs(plrz) do
3898
coroutine.wrap(function()
3899
if v and v.Character then 
3900
v.Character.Parent = game:service("Workspace")
3901
v.Character:MakeJoints()
3902
end
3903
end)()
3904
end
3905
end)
3906
3907
set.MakeCommand('Freeze',2,set.Prefix,{'freeze'},{'player'},1,function(plr,args)
3908
local plrz = set.GetPlayers(plr, args[1]:lower())
3909
for i, v in pairs(plrz) do
3910
coroutine.wrap(function()
3911
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3912
for a, obj in pairs(v.Character:children()) do 
3913
if obj:IsA("BasePart") then obj.Anchored = true end v.Character.Humanoid.WalkSpeed = 0
3914
end
3915
end
3916
end)()
3917
end
3918
end)
3919
3920
set.MakeCommand('Thaw',2,set.Prefix,{'thaw','unfreeze'},{'player'},1,function(plr,args)
3921
local plrz = set.GetPlayers(plr, args[1]:lower())
3922
for i, v in pairs(plrz) do
3923
coroutine.wrap(function()
3924
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3925
for a, obj in pairs(v.Character:children()) do 
3926
if obj:IsA("BasePart") then obj.Anchored = false end v.Character.Humanoid.WalkSpeed = 16
3927
end
3928
end
3929
end)()
3930
end
3931
end)
3932
3933
set.MakeCommand('Heal',2,set.Prefix,{'heal'},{'player'},1,function(plr,args)
3934
local plrz = set.GetPlayers(plr, args[1]:lower())
3935
for i, v in pairs(plrz) do
3936
coroutine.wrap(function()
3937
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3938
v.Character.Humanoid.Health = v.Character.Humanoid.MaxHealth
3939
end
3940
end)()
3941
end
3942
end)
3943
3944
set.MakeCommand('God',2,set.Prefix,{'god','immortal'},{'player'},1,function(plr,args)
3945
local plrz = set.GetPlayers(plr, args[1]:lower())
3946
for i, v in pairs(plrz) do
3947
coroutine.wrap(function()
3948
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3949
v.Character.Humanoid.MaxHealth = math.huge
3950
v.Character.Humanoid.Health = 9e9
3951
end
3952
end)()
3953
end
3954
end)
3955
3956
set.MakeCommand('UnGod',2,set.Prefix,{'ungod','mortal'},{'player'},1,function(plr,args)
3957
local plrz = set.GetPlayers(plr, args[1]:lower())
3958
for i, v in pairs(plrz) do
3959
coroutine.wrap(function()
3960
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
3961
v.Character.Humanoid.MaxHealth = 100
3962
v.Character.Humanoid.Health = v.Character.Humanoid.MaxHealth
3963
end
3964
end)()
3965
end
3966
end)
3967
3968
set.MakeCommand('Change Ambient',2,set.Prefix,{'ambient'},{'num','num','num'},3,function(plr,args)
3969
game:service('Lighting').Ambient = Color3.new(args[1],args[2],args[3])
3970
end)
3971
3972
set.MakeCommand('Change OutdoorAmbient',2,set.Prefix,{'oambient','outdoorambient'},{'num','num','num'},3,function(plr,args)
3973
game:service('Lighting').OutdoorAmbient = Color3.new(args[1],args[2],args[3])
3974
end)
3975
3976
set.MakeCommand('Fog Off',2,set.Prefix,{'nofog','fogoff'},{},0,function(plr,args)
3977
game:service('Lighting').FogEnd=1000000000000
3978
end)
3979
3980
set.MakeCommand('Shadows',2,set.Prefix,{'shadows'},{'on/off'},1,function(plr,args)
3981
if args[1]:lower()=='on' then
3982
	game:service('Lighting').GlobalShadows=true
3983
elseif args[1]:lower()=='off' then
3984
	game:service('Lighting').GlobalShadows=false
3985
end
3986
end)
3987
3988
set.MakeCommand('Outlines',2,set.Prefix,{'outlines'},{'on/off'},1,function(plr,args)
3989
if args[1]:lower()=='on' then
3990
	game:service('Lighting').Outlines=true
3991
elseif args[1]:lower()=='off' then
3992
	game:service('Lighting').Outlines=false
3993
end
3994
end)
3995
3996
set.MakeCommand('Repeat',2,set.Prefix,{'repeat','loop'},{'ammount','interval','command'},3,function(plr,args)
3997
local amount = tonumber(args[1])
3998
local timer = tonumber(args[2])
3999
if timer<=0 then timer=1 end
4000
local command = args[3]:lower()
4001
local num=0
4002
coroutine.wrap(function()
4003
repeat
4004
set.ChatCommand(plr,command,true)
4005
wait(timer)
4006
num=num+1
4007
until num==amount
4008
end)()
4009
end)
4010
4011
set.MakeCommand('Change Brightness',2,set.Prefix,{'brightness'},{'number'},1,function(plr,args)
4012
game:service('Lighting').Brightness =args[1]
4013
end)
4014
4015
set.MakeCommand('Change Time',2,set.Prefix,{'time','timeofday'},{'time'},1,function(plr,args)
4016
game:service('Lighting').TimeOfDay = args[1]
4017
end)
4018
4019
set.MakeCommand('Fog Color',2,set.Prefix,{'fogcolor'},{'num','num','num'},3,function(plr,args)
4020
game:service('Lighting').FogColor = Color3.new(args[1],args[2],args[3])
4021
end)
4022
4023
set.MakeCommand('Fog Start/End',2,set.Prefix,{'fog'},{'start','end'},2,function(plr,args)
4024
game:service('Lighting').FogEnd = args[2]
4025
game:service('Lighting').FogStart = args[1]
4026
end)
4027
4028
set.MakeCommand('Build Tools',2,set.Prefix,{'btools','buildtools','buildingtools','buildertools'},{'player'},1,function(plr,args)
4029
local plrz = set.GetPlayers(plr, args[1]:lower())
4030
for i, v in pairs(plrz) do
4031
coroutine.wrap(function()
4032
if v and v:findFirstChild("Backpack") then 
4033
local t1 = Instance.new("HopperBin", v.Backpack) t1.Name = "Move" t1.BinType = "GameTool"
4034
local t2 = Instance.new("HopperBin", v.Backpack) t2.Name = "Clone" t2.BinType = "Clone"
4035
local t3 = Instance.new("HopperBin", v.Backpack) t3.Name = "Delete" t3.BinType = "Hammer"
4036
local t4 = Instance.new("HopperBin", v.Backpack) t4.Name = "Resize"
4037
set.LoadScript('LocalScript',[[
4038
repeat wait() until game:service('Players').LocalPlayer and game:service('Players').LocalPlayer.Character and game:service('Players').LocalPlayer:findFirstChild("PlayerGui")
4039
local sb
4040
local hs
4041
local pdist
4042
script.Parent.Selected:connect(function(mouse)
4043
if not mouse then return end
4044
sb = Instance.new("SelectionBox", game:service('Players').LocalPlayer.PlayerGui) sb.Color = BrickColor.new("Bright blue") sb.Adornee = nil
4045
hs = Instance.new("Handles", game:service('Players').LocalPlayer.PlayerGui) hs.Color = BrickColor.new("Bright blue") hs.Adornee = nil
4046
mouse.Button1Down:connect(function() if not mouse.Target or mouse.Target.Locked then sb.Adornee = nil hs.Adornee = nil else sb.Adornee = mouse.Target hs.Adornee = mouse.Target hs.Faces = mouse.Target.ResizeableFaces end end)
4047
hs.MouseDrag:connect(function(old,dist) if hs.Adornee and math.abs(dist-pdist) >= hs.Adornee.ResizeIncrement then if hs.Adornee:Resize(old, math.floor((dist-pdist)/ hs.Adornee.ResizeIncrement + .5) * hs.Adornee.ResizeIncrement) then pdist = dist end end end)
4048
hs.MouseButton1Down:connect(function() pdist = 0 end)
4049
end)
4050
script.Parent.Deselected:connect(function() sb:Destroy() hs:Destroy() end)]],'LocalScript',false,t4)
4051
end
4052
end)()
4053
end
4054
end)
4055
4056
set.MakeCommand('Starter Give',2,set.Prefix,{'startergive'},{'player','toolname'},2,function(plr,args)
4057
local plrz = set.GetPlayers(plr, args[1]:lower())
4058
for i, v in pairs(plrz) do
4059
coroutine.wrap(function()
4060
if v and v:findFirstChild("StarterGear") and game:findFirstChild("Lighting") then 
4061
for a, tool in pairs(set.Storage:children()) do
4062
if tool:IsA("Tool") or tool:IsA("HopperBin") then
4063
if args[2]:lower() == "all" or tool.Name:lower():find(args[2]:lower()) == 1 then tool:Clone().Parent = v.StarterGear end
4064
end
4065
end
4066
end
4067
end)()
4068
end
4069
end)
4070
4071
set.MakeCommand('Give Tool',2,set.Prefix,{'give','tool'},{'player','tool'},2,function(plr,args)
4072
local plrz = set.GetPlayers(plr, args[1]:lower())
4073
for i, v in pairs(plrz) do
4074
coroutine.wrap(function()
4075
for a, tool in pairs(set.Storage:children()) do
4076
if tool:IsA("Tool") or tool:IsA("HopperBin") then
4077
if args[2]:lower() == "all" or tool.Name:lower():sub(1,#args[2])==args[2]:lower() then 
4078
	tool:clone().Parent = v.Backpack 
4079
end
4080
end
4081
end
4082
end)()
4083
end
4084
end)
4085
4086
set.MakeCommand('Steal Tools',2,set.Prefix,{'steal','stealtools'},{'player','player'},2,function(plr,args)
4087
local p1 = set.GetPlayers(plr, args[1]:lower())
4088
local p2 = set.GetPlayers(plr, args[2]:lower())
4089
coroutine.wrap(function()
4090
for i,v in pairs(p1) do
4091
	coroutine.wrap(function()
4092
	for k,m in pairs(p2) do
4093
		for j,n in pairs(v.Backpack:children()) do
4094
			print(n.Name)
4095
			local b=n:clone()
4096
			n.Parent=m.Backpack
4097
		end
4098
	end
4099
	v.Backpack:ClearAllChildren()
4100
	end)()
4101
end
4102
end)()
4103
end)
4104
4105
set.MakeCommand('Remove Tools',2,set.Prefix,{'removetools','notools'},{'player'},1,function(plr,args)
4106
local plrz = set.GetPlayers(plr, args[1]:lower())
4107
for i, v in pairs(plrz) do
4108
coroutine.wrap(function()
4109
if v and v.Character and v:findFirstChild("Backpack") then 
4110
for a, tool in pairs(v.Character:children()) do if tool:IsA("Tool") or tool:IsA("HopperBin") then tool:Destroy() end end
4111
for a, tool in pairs(v.Backpack:children()) do if tool:IsA("Tool") or tool:IsA("HopperBin") then tool:Destroy() end end
4112
end
4113
end)()
4114
end
4115
end)
4116
4117
set.MakeCommand('Get Rank',2,set.Prefix,{'rank','getrank'},{'player','groupID'},2,function(plr,args)
4118
local plrz = set.GetPlayers(plr, args[1]:lower())
4119
for i, v in pairs(plrz) do
4120
coroutine.wrap(function()
4121
if v and v:IsInGroup(args[2]) then 
4122
set.Hint("[" .. v:GetRankInGroup(args[2]) .. "] " .. v:GetRoleInGroup(args[2]), {plr})
4123
elseif v and not v:IsInGroup(args[2])then
4124
set.Hint(v.Name .. " is not in the group " .. args[2], {plr})
4125
end
4126
end)()
4127
end
4128
end)
4129
4130
set.MakeCommand('Damage',2,set.Prefix,{'damage','hurt'},{'player','number'},2,function(plr,args)
4131
local plrz = set.GetPlayers(plr, args[1]:lower())
4132
for i, v in pairs(plrz) do
4133
coroutine.wrap(function()
4134
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
4135
v.Character.Humanoid:TakeDamage(args[2])
4136
end
4137
end)()
4138
end
4139
end)
4140
4141
set.MakeCommand('Normal Gravity',2,set.Prefix,{'grav','bringtoearth'},{'player'},1,function(plr,args)
4142
local plrz = set.GetPlayers(plr, args[1]:lower())
4143
for i, v in pairs(plrz) do
4144
coroutine.wrap(function()
4145
if v and v.Character and v.Character:findFirstChild("Torso") then 
4146
for a, frc in pairs(v.Character.Torso:children()) do if frc.Name == "BFRC" then frc:Destroy() end end
4147
end
4148
end)()
4149
end
4150
end)
4151
4152
set.MakeCommand('Set Gravity',2,set.Prefix,{'setgrav','gravity','setgravity'},{'player','number'},2,function(plr,args)
4153
local plrz = set.GetPlayers(plr, args[1]:lower())
4154
for i, v in pairs(plrz) do
4155
coroutine.wrap(function()
4156
if v and v.Character and v.Character:findFirstChild("Torso") then 
4157
for a, frc in pairs(v.Character.Torso:children()) do if frc.Name == "BFRC" then frc:Destroy() end end
4158
local frc = Instance.new("BodyForce", v.Character.Torso) frc.Name = "BFRC" frc.force = Vector3.new(0,0,0)
4159
for a, prt in pairs(v.Character:children()) do if prt:IsA("BasePart") then frc.force = frc.force - Vector3.new(0,prt:GetMass()*tonumber(args[2]),0) elseif prt:IsA("Hat") then frc.force = frc.force - Vector3.new(0,prt.Handle:GetMass()*tonumber(args[2]),0) end end
4160
end
4161
end)()
4162
end
4163
end)
4164
4165
set.MakeCommand('NoGrav',2,set.Prefix,{'nograv','nogravity','superjump'},{'player'},1,function(plr,args)
4166
local plrz = set.GetPlayers(plr, args[1]:lower())
4167
for i, v in pairs(plrz) do
4168
coroutine.wrap(function()
4169
if v and v.Character and v.Character:findFirstChild("Torso") then 
4170
for a, frc in pairs(v.Character.Torso:children()) do if frc.Name == "BFRC" then frc:Destroy() end end
4171
local frc = Instance.new("BodyForce", v.Character.Torso) frc.Name = "BFRC" frc.force = Vector3.new(0,0,0)
4172
for a, prt in pairs(v.Character:children()) do if prt:IsA("BasePart") then frc.force = frc.force + Vector3.new(0,prt:GetMass()*196.25,0) elseif prt:IsA("Hat") then frc.force = frc.force + Vector3.new(0,prt.Handle:GetMass()*196.25,0) end end
4173
end
4174
end)()
4175
end
4176
end)
4177
4178
set.MakeCommand('Set Health',2,set.Prefix,{'health','sethealth'},{'player','number'},2,function(plr,args)
4179
local plrz = set.GetPlayers(plr, args[1]:lower())
4180
for i, v in pairs(plrz) do
4181
coroutine.wrap(function()
4182
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
4183
v.Character.Humanoid.MaxHealth = args[2]
4184
v.Character.Humanoid.Health = v.Character.Humanoid.MaxHealth
4185
end
4186
end)()
4187
end
4188
end)
4189
4190
set.MakeCommand('Set Speed',2,set.Prefix,{'speed','setspeed','walkspeed'},{'player','number'},2,function(plr,args)
4191
local plrz = set.GetPlayers(plr, args[1]:lower())
4192
for i, v in pairs(plrz) do
4193
coroutine.wrap(function()
4194
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
4195
v.Character.Humanoid.WalkSpeed = args[2]
4196
end
4197
end)()
4198
end
4199
end)
4200
4201
set.MakeCommand('Set Team',2,set.Prefix,{'team','setteam','changeteam'},{'player','team'},2,function(plr,args)
4202
local plrz = set.GetPlayers(plr, args[1]:lower())
4203
for i, v in pairs(plrz) do
4204
coroutine.wrap(function()
4205
if v and game:findFirstChild("Teams") then 
4206
for a, tm in pairs(game.Teams:children()) do
4207
if tm.Name:lower():find(args[2]:lower()) == 1 then v.TeamColor = tm.TeamColor end
4208
end
4209
end
4210
end)()
4211
end
4212
end)
4213
4214
set.MakeCommand('Change FieldOfView',-1,set.Prefix,{'fov','fieldofview'},{'player','number'},2,function(plr,args)
4215
	for i,v in pairs(set.GetPlayers(plr, args[1])) do
4216
		set.Remote(v,'Function','FieldOfView',args[2])
4217
	end
4218
end)
4219
4220
set.MakeCommand('Teleport to Place',2,set.Prefix,{'place'},{'player','placeid'},2,function(plr,args)
4221
local plrz = set.GetPlayers(plr, args[1]:lower())
4222
for i, v in pairs(plrz) do
4223
coroutine.wrap(function()
4224
set.PromptPlaceTeleport(v,"Teleport to "..args[2].."?",args[2])
4225
end)()
4226
end
4227
end)
4228
4229
set.MakeCommand('Teleport',2,set.Prefix,{'tp','teleport'},{'player','player'},2,function(plr,args)
4230
local plrz = set.GetPlayers(plr, args[1]:lower())
4231
local plrz2 = set.GetPlayers(plr, args[2]:lower())
4232
for i, v in pairs(plrz) do
4233
coroutine.wrap(function()
4234
for i2, v2 in pairs(plrz2) do
4235
if v and v2 and v.Character and v2.Character and v.Character:FindFirstChild('Humanoid') and v.Character:findFirstChild("Torso") and v2.Character:findFirstChild("Torso") then
4236
if v.Character.Humanoid.Sit==true then
4237
v.Character.Humanoid.Sit=false
4238
wait(0.5)
4239
end
4240
v.Character.Torso.CFrame = v2.Character.Torso.CFrame + Vector3.new(math.random(-1,1),0,math.random(-1,1))
4241
end
4242
end
4243
end)()
4244
end
4245
end)
4246
4247
set.MakeCommand('Freefall',-1,set.Prefix,{'freefall','skydive'},{'player','height'},2,function(plr,args)
4248
local plrz = set.GetPlayers(plr, args[1]:lower())
4249
for i, v in pairs(plrz) do
4250
coroutine.wrap(function()
4251
if v and v.Character:FindFirstChild('Torso') then 
4252
v.Character.Torso.CFrame=v.Character.Torso.CFrame+Vector3.new(0,tonumber(args[2]),0)
4253
end
4254
end)()
4255
end
4256
end)
4257
4258
set.MakeCommand('Change Leaderstat',2,set.Prefix,{'change','leaderstat','stat'},{'player','stat','value'},3,function(plr,args)
4259
local plrz = set.GetPlayers(plr, args[1]:lower())
4260
for i, v in pairs(plrz) do
4261
coroutine.wrap(function()
4262
if v and v:findFirstChild("leaderstats") then 
4263
for a, st in pairs(v.leaderstats:children()) do
4264
if st.Name:lower():find(args[2]:lower()) == 1 then st.Value = args[3] end
4265
end
4266
end
4267
end)()
4268
end
4269
end)
4270
4271
set.MakeCommand('Give Shirt',2,set.Prefix,{'shirt','giveshirt'},{'player','id'},2,function(plr,args)
4272
local plrz = set.GetPlayers(plr, args[1]:lower())
4273
for i, v in pairs(plrz) do
4274
coroutine.wrap(function()
4275
if v and v.Character then 
4276
for g,k in pairs(v.Character:children()) do
4277
if k:IsA("Shirt") then k:Destroy() end
4278
end
4279
local s=Instance.new('Shirt',v.Character)
4280
s.ShirtTemplate="http://www.roblox.com/asset/?id="..args[2]
4281
end
4282
end)()
4283
end
4284
end)
4285
4286
set.MakeCommand('Give Pants',2,set.Prefix,{'pants','givepants'},{'player','id'},2,function(plr,args)
4287
local plrz = set.GetPlayers(plr, args[1]:lower())
4288
for i, v in pairs(plrz) do
4289
coroutine.wrap(function()
4290
if v and v.Character then 
4291
for g,k in pairs(v.Character:children()) do
4292
if k:IsA("Pants") then k:Destroy() end
4293
end
4294
local s=Instance.new('Pants',v.Character)
4295
s.PantsTemplate="http://www.roblox.com/asset/?id="..args[2]
4296
end
4297
end)()
4298
end
4299
end)
4300
4301
set.MakeCommand('Give Face',2,set.Prefix,{'face','giveface'},{'player','id'},2,function(plr,args)
4302
local plrz = set.GetPlayers(plr, args[1]:lower())
4303
for i, v in pairs(plrz) do
4304
coroutine.wrap(function()
4305
if not v.Character:FindFirstChild("Head") then return end
4306
if v and v.Character and v.Character:findFirstChild("Head") and v.Character.Head:findFirstChild("face") then 
4307
v.Character.Head:findFirstChild("face"):Destroy()--.Texture = "http://www.roblox.com/asset/?id=" .. args[2]
4308
end
4309
game:service('InsertService'):LoadAsset(tonumber(args[2])):children()[1].Parent=v.Character:FindFirstChild("Head")
4310
end)()
4311
end
4312
end)
4313
4314
set.MakeCommand('Swagify',-1,set.Prefix,{'swagify','swagger'},{'player'},1,function(plr,args)
4315
local plrz = set.GetPlayers(plr, args[1]:lower())
4316
for i, v in pairs(plrz) do
4317
coroutine.wrap(function()
4318
if v and v.Character then
4319
for i,v in pairs(v.Character:children()) do
4320
if v.Name == "Shirt" then local cl = v:Clone() cl.Parent = v.Parent cl.ShirtTemplate = "http://www.roblox.com/asset/?id=109163376" v:Destroy() end
4321
if v.Name == "Pants" then local cl = v:Clone() cl.Parent = v.Parent cl.PantsTemplate = "http://www.roblox.com/asset/?id=109163376" v:Destroy() end
4322
end
4323
for a,cp in pairs(v.Character:children()) do if cp.Name == "EpicCape" then cp:Destroy() end end
4324
set.Remote(v,'Function','Cape','Fabric','Pink',109301474)
4325
end
4326
end)()
4327
end
4328
end)
4329
4330
set.MakeCommand('Rocket',-1,set.Prefix,{'rocket','firework'},{'player'},1,function(plr,args)
4331
for i,v in pairs(set.GetPlayers(plr, args[1]:lower())) do
4332
coroutine.wrap(function()
4333
if v.Character and v.Character:FindFirstChild("Torso") then
4334
delay(0,function()
4335
local speed = 10
4336
local Part = Instance.new("Part")
4337
Part.Parent = v.Character
4338
local SpecialMesh = Instance.new("SpecialMesh") 
4339
SpecialMesh.Parent = Part
4340
SpecialMesh.MeshId = "http://www.roblox.com/asset/?id=2251534" 
4341
SpecialMesh.MeshType = "FileMesh" 
4342
SpecialMesh.TextureId = "43abb6d081e0fbc8666fc92f6ff378c1" 
4343
SpecialMesh.Scale = Vector3.new(0.5,0.5,0.5)
4344
local Weld = Instance.new("Weld")
4345
Weld.Parent = Part
4346
Weld.Part0 = Part
4347
Weld.Part1 = v.Character.Torso
4348
Weld.C0 = CFrame.new(0,-1,0)*CFrame.Angles(-1.5,0,0)
4349
local BodyVelocity = Instance.new("BodyVelocity")
4350
BodyVelocity.Parent = Part
4351
BodyVelocity.maxForce = Vector3.new(math.huge,math.huge,math.huge)
4352
BodyVelocity.velocity = Vector3.new(0,10*speed,0)
4353
delay(0,function()
4354
for i = 1,math.huge do
4355
local Explosion = Instance.new("Explosion")
4356
Explosion.Parent = Part
4357
Explosion.BlastRadius = 0
4358
Explosion.Position = Part.Position + Vector3.new(0,0,0)
4359
wait()
4360
end 
4361
end)        
4362
wait(3)
4363
pcall(function()
4364
BodyVelocity:remove()
4365
Instance.new("Explosion",workspace).Position=v.Character.Torso.Position
4366
v.Character:BreakJoints()
4367
end)
4368
end)
4369
end
4370
end)()
4371
end
4372
end)
4373
4374
set.MakeCommand('Dance',-1,set.Prefix,{'dance'},{'player'},1,function(plr,args)
4375
local plrz = set.GetPlayers(plr, args[1]:lower())
4376
for i, v in pairs(plrz) do
4377
	set.Remote(v,'Function','Effect','dance')
4378
end
4379
end)
4380
4381
set.MakeCommand('BreakDance',-1,set.Prefix,{'breakdance','fundance','lolwut'},{'player'},1,function(plr,args)
4382
local plrz = set.GetPlayers(plr, args[1])
4383
for i, v in pairs(plrz) do
4384
coroutine.wrap(function()
4385
local color
4386
local num=math.random(1,7)
4387
if num==1 then
4388
color='Really blue'
4389
elseif num==2 then
4390
color='Really red'
4391
elseif num==3 then
4392
color='Magenta'
4393
elseif num==4 then
4394
color='Lime green'
4395
elseif num==5 then
4396
color='Hot pink'
4397
elseif num==6 then
4398
color='New Yeller'
4399
elseif num==7 then
4400
color='White'
4401
end
4402
local hum=v.Character:FindFirstChild('Humanoid')
4403
if not hum then return end
4404
set.Remote(v,'Function','Effect','dance')
4405
set.ChatCommand(plr,set.Prefix.."batch"..set.SplitKey..set.Prefix.."sparkles"..set.SplitKey..v.Name..set.SplitKey..color..set.BatchSplit..set.Prefix.."fire"..set.SplitKey..v.Name..set.SplitKey..color..set.BatchSplit..set.Prefix.."nograv"..set.SplitKey..v.Name..set.BatchSplit..set.Prefix.."smoke"..set.SplitKey..v.Name..set.SplitKey..color..set.BatchSplit..set.Prefix.."spin"..set.SplitKey..v.Name)
4406
repeat hum.PlatformStand=true wait() until not hum or hum==nil or hum.Parent==nil
4407
end)()
4408
end
4409
end)
4410
4411
set.MakeCommand('Puke',-1,set.Prefix,{'puke','barf','throwup'},{'player'},1,function(plr,args)
4412
for i,v in pairs(set.GetPlayers(plr, args[1])) do
4413
coroutine.wrap(function()
4414
if (not v:IsA('Player')) or (not v) or (not v.Character) or (not v.Character:FindFirstChild('Head')) or v.Character:FindFirstChild('Kohls Puke') then return end
4415
local run=true
4416
local k=Instance.new('StringValue',v.Character)
4417
k.Name='Kohls Puke'
4418
coroutine.wrap(function()
4419
repeat 
4420
wait(0.15)
4421
local p = Instance.new("Part",v.Character)
4422
p.CanCollide = false
4423
local color = math.random(1, 3)
4424
local bcolor
4425
if color == 1 then
4426
bcolor = BrickColor.new(192)
4427
elseif color == 2 then
4428
bcolor = BrickColor.new(28)
4429
elseif color == 3 then
4430
bcolor = BrickColor.new(105)
4431
end
4432
p.BrickColor = bcolor
4433
local m=Instance.new('BlockMesh',p)
4434
p.Size=Vector3.new(0.1,0.1,0.1)
4435
m.Scale = Vector3.new(math.random()*0.9, math.random()*0.9, math.random()*0.9)
4436
p.Locked = true
4437
p.TopSurface = "Smooth"
4438
p.BottomSurface = "Smooth"
4439
p.CFrame = v.Character.Head.CFrame * CFrame.new(Vector3.new(0, 0, -1))
4440
p.Velocity = v.Character.Head.CFrame.lookVector * 20 + Vector3.new(math.random(-5, 5), math.random(-5, 5), math.random(-5, 5))
4441
p.Anchored = false
4442
m.Name='Puke Peice'
4443
p.Name='Puke Peice'
4444
p.Touched:connect(function(o)
4445
if o and p and (not game:service('Players'):FindFirstChild(o.Parent.Name)) and o.Name~='Puke Peice' and o.Name~='Blood Peice' and o.Name~='Blood Plate' and o.Name~='Puke Plate' and (o.Parent.Name=='Workspace' or o.Parent:IsA('Model')) and (o.Parent~=p.Parent) and o:IsA('Part') and (o.Parent.Name~=v.Character.Name) and (not o.Parent:IsA('Hat')) and (not o.Parent:IsA('Tool')) then
4446
	local cf=CFrame.new(p.CFrame.X,o.CFrame.Y+o.Size.Y/2,p.CFrame.Z)
4447
	p:Destroy()
4448
	local g=Instance.new('Part',workspace)
4449
	g.Anchored=true
4450
	g.CanCollide=false
4451
	g.Size=Vector3.new(0.1,0.1,0.1)
4452
	g.Name='Puke Plate'
4453
	g.CFrame=cf
4454
	g.BrickColor=BrickColor.new(119)
4455
	local c=Instance.new('CylinderMesh',g)
4456
	c.Scale=Vector3.new(1,0.2,1)
4457
	c.Name='PukeMesh'
4458
	wait(10)
4459
	g:Destroy()
4460
elseif o and o.Name=='Puke Plate' and p then 
4461
	p:Destroy() 
4462
	o.PukeMesh.Scale=o.PukeMesh.Scale+Vector3.new(0.5,0,0.5)
4463
end
4464
end)
4465
until run==false or not k or not k.Parent or (not v) or (not v.Character) or (not v.Character:FindFirstChild('Head'))
4466
end)()
4467
wait(10)
4468
run=false
4469
k:Destroy()
4470
end)()
4471
end
4472
end)
4473
4474
set.MakeCommand('Cut',-1,set.Prefix,{'cut','stab','shank'},{'player'},1,function(plr,args)
4475
for i,v in pairs(set.GetPlayers(plr, args[1]:lower())) do
4476
coroutine.wrap(function()
4477
if (not v:IsA('Player')) or (not v) or (not v.Character) or (not v.Character:FindFirstChild('Head')) or v.Character:FindFirstChild('Kohls Bleed') then return end
4478
local run=true
4479
local k=Instance.new('StringValue',v.Character)
4480
k.Name='Kohls Bleed'
4481
coroutine.wrap(function()
4482
repeat 
4483
wait(0.15)
4484
v.Character.Humanoid.Health=v.Character.Humanoid.Health-1
4485
local p = Instance.new("Part",v.Character)
4486
p.CanCollide = false
4487
local color = math.random(1, 3)
4488
local bcolo
4489
if color == 1 then
4490
bcolor = BrickColor.new(21)
4491
elseif color == 2 then
4492
bcolor = BrickColor.new(1004)
4493
elseif color == 3 then
4494
bcolor = BrickColor.new(21)
4495
end
4496
p.BrickColor = bcolor
4497
local m=Instance.new('BlockMesh',p)
4498
p.Size=Vector3.new(0.1,0.1,0.1)
4499
m.Scale = Vector3.new(math.random()*0.9, math.random()*0.9, math.random()*0.9)
4500
p.Locked = true
4501
p.TopSurface = "Smooth"
4502
p.BottomSurface = "Smooth"
4503
p.CFrame = v.Character.Torso.CFrame * CFrame.new(Vector3.new(2, 0, 0))
4504
p.Velocity = v.Character.Head.CFrame.lookVector * 1 + Vector3.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1))
4505
p.Anchored = false
4506
m.Name='Blood Peice'
4507
p.Name='Blood Peice'
4508
p.Touched:connect(function(o)
4509
if o and p and (not game:service('Players'):FindFirstChild(o.Parent.Name)) and o.Name~='Blood Peice' and o.Name~='Puke Peice' and o.Name~='Puke Plate' and o.Name~='Blood Plate' and (o.Parent.Name=='Workspace' or o.Parent:IsA('Model')) and (o.Parent~=p.Parent) and o:IsA('Part') and (o.Parent.Name~=v.Character.Name) and (not o.Parent:IsA('Hat')) and (not o.Parent:IsA('Tool')) then
4510
	local cf=CFrame.new(p.CFrame.X,o.CFrame.Y+o.Size.Y/2,p.CFrame.Z)
4511
	p:Destroy()
4512
	local g=Instance.new('Part',workspace)
4513
	g.Anchored=true
4514
	g.CanCollide=false
4515
	g.Size=Vector3.new(0.1,0.1,0.1)
4516
	g.Name='Blood Plate'
4517
	g.CFrame=cf
4518
	g.BrickColor=BrickColor.new(21)
4519
	local c=Instance.new('CylinderMesh',g)
4520
	c.Scale=Vector3.new(1,0.2,1)
4521
	c.Name='BloodMesh'
4522
	wait(10)
4523
	g:Destroy()
4524
elseif o and o.Name=='Blood Plate' and p then 
4525
	p:Destroy() 
4526
	o.BloodMesh.Scale=o.BloodMesh.Scale+Vector3.new(0.5,0,0.5)
4527
end
4528
end)
4529
until run==false or not k or not k.Parent or (not v) or (not v.Character) or (not v.Character:FindFirstChild('Head'))
4530
end)()
4531
wait(10)
4532
run=false
4533
k:Destroy()
4534
end)()
4535
end
4536
end)
4537
4538
set.MakeCommand('Number of Player Points',5,set.Prefix,{'points','getpoints'},{},0,function(plr,args)
4539
	set.Hint('Available Player Points: '..game:GetService("PointsService"):GetAwardablePoints(),{plr})
4540
end)
4541
4542
set.MakeCommand('Give Player Points',5,set.Prefix,{'givepoints','sendpoints'},{'player','ammount'},2,function(plr,args)
4543
	for i,v in pairs(set.GetPlayers(plr,args[1]:lower())) do
4544
		local ran,failed=ypcall(function() game:GetService("PointsService"):AwardPoints(v.userId,tonumber(args[2])) end)
4545
		if ran and game:GetService("PointsService"):GetAwardablePoints()>=tonumber(args[2]) then
4546
			set.Hint('Gave '..args[2]..' points to '..v.Name,{plr})
4547
		elseif game:GetService("PointsService"):GetAwardablePoints()<tonumber(args[2])then
4548
			set.Hint("You don't have "..args[2]..' points to give to '..v.Name,{plr})
4549
		else
4550
			set.Hint("(Unknown Error) Failed to give "..args[2]..' points to '..v.Name,{plr})
4551
		end
4552
		set.Hint('Available Player Points: '..game:GetService("PointsService"):GetAwardablePoints(),{plr})
4553
	end
4554
end)
4555
4556
set.MakeCommand('Poison',-1,set.Prefix,{'poison'},{'player'},1,function(plr,args)
4557
	for i,v in pairs(set.GetPlayers(plr,args[1]:lower())) do
4558
		local torso=v.Character:FindFirstChild('Torso')
4559
		local larm=v.Character:FindFirstChild('Left Arm')
4560
		local rarm=v.Character:FindFirstChild('Right Arm')
4561
		local lleg=v.Character:FindFirstChild('Left Leg')
4562
		local rleg=v.Character:FindFirstChild('Right Leg')
4563
		local head=v.Character:FindFirstChild('Head')
4564
		local hum=v.Character:FindFirstChild('Humanoid')
4565
		if torso and larm and rarm and lleg and rleg and head and hum and not v.Character:FindFirstChild('KohlsPoisoned') then
4566
			local poisoned=Instance.new('BoolValue',v.Character)
4567
			poisoned.Name='KohlsPoisoned'
4568
			poisoned.Value=true
4569
			local tor=torso.BrickColor
4570
			local lar=larm.BrickColor
4571
			local rar=rarm.BrickColor
4572
			local lle=lleg.BrickColor
4573
			local rle=rleg.BrickColor
4574
			local hea=head.BrickColor
4575
			torso.BrickColor=BrickColor.new('Br. yellowish green')
4576
			larm.BrickColor=BrickColor.new('Br. yellowish green')
4577
			rarm.BrickColor=BrickColor.new('Br. yellowish green')
4578
			lleg.BrickColor=BrickColor.new('Br. yellowish green')
4579
			rleg.BrickColor=BrickColor.new('Br. yellowish green')
4580
			head.BrickColor=BrickColor.new('Br. yellowish green')
4581
			local run=true
4582
			coroutine.wrap(function() wait(10) run=false end)()
4583
			repeat
4584
				wait(1)
4585
				hum.Health=hum.Health-5
4586
			until (not poisoned) or (not poisoned.Parent) or (not run)
4587
			if poisoned and poisoned.Parent then
4588
				torso.BrickColor=tor
4589
				larm.BrickColor=lar
4590
				rarm.BrickColor=rar
4591
				lleg.BrickColor=lle
4592
				rleg.BrickColor=rle
4593
				head.BrickColor=hea
4594
			end
4595
		end
4596
	end
4597
end)
4598
4599
set.MakeCommand('Drug',-1,set.Prefix,{'drug','intoxicate'},{'player'},1,function(plr,args)
4600
	for i,v in pairs(set.GetPlayers(plr, args[1]:lower())) do
4601
		set.Remote(v,'Function','Drug')
4602
	end
4603
end)
4604
4605
set.MakeCommand('Change Pitch',2,set.Prefix,{'pitch'},{'number'},1,function(plr,args)
4606
coroutine.wrap(function()
4607
local pitch = args[1]
4608
for i, v in pairs(game.Workspace:children()) do if v:IsA("Sound") then v.Pitch=pitch end end
4609
end)()
4610
end)
4611
4612
set.MakeCommand('Start Music',2,set.Prefix,{'music','song','playsong'},{'id'},1,function(plr,args)
4613
coroutine.wrap(function()
4614
for i, v in pairs(game.Workspace:children()) do if v:IsA("Sound") then v:Destroy() end end
4615
local id = args[1]:lower()
4616
local pitch = 1
4617
local mp = game:service('MarketplaceService')
4618
local volume = 1
4619
for i,v in pairs(set['MusicList']) do if id==v.Name:lower() then id=v.Id if v.Pitch then pitch=v.Pitch end if v.Volume then volume=v.Volume end end end
4620
local name = 'Invalid ID '
4621
pcall(function() if mp:GetProductInfo(id).AssetTypeId==3 then name = 'Now playing '..mp:GetProductInfo(id).Name end end)
4622
local s = Instance.new("Sound", game.Workspace) 
4623
s.SoundId = "http://www.roblox.com/asset/?id=" .. id 
4624
s.Volume = volume 
4625
s.Pitch = pitch 
4626
s.Looped = true 
4627
s.archivable = false
4628
pcall(function() s:Play()end)
4629
set.Hint(name..' ('..id..')',game:service('Players'):children())
4630
end)()
4631
end)
4632
4633
set.MakeCommand('Stop Music',2,set.Prefix,{'stopmusic','musicoff'},{},0,function(plr,args)
4634
for i, v in pairs(game.Workspace:children()) do if v:IsA("Sound") then v:Destroy() end end
4635
end)
4636
4637
set.MakeCommand('Music List',2,set.Prefix,{'musiclist','listmusic','songs'},{},0,function(plr,args)
4638
local listforclient={}
4639
for i, v in pairs(set['MusicList']) do 
4640
table.insert(listforclient,v.Name)
4641
end
4642
set.Remote(plr,'SetSetting','MusicList',listforclient)
4643
set.Remote(plr,'Function','ListGui','Music List','MusicList')
4644
end)
4645
4646
set.MakeCommand('Stickify',-1,set.Prefix,{'stickify','stick','stickman'},{'player'},1,function(plr,args)
4647
	local plrz = set.GetPlayers(plr, args[1]:lower())
4648
	for kay, player in pairs(plrz) do
4649
	coroutine.wrap(function()
4650
	local Self = player
4651
	m = Self.Character
4652
	for i,v in pairs(m:GetChildren()) do
4653
	if v:IsA ("Part") then
4654
	local s = Instance.new("SelectionPartLasso")
4655
	s.Parent = m.Torso
4656
	s.Part = v
4657
	s.Humanoid = m.Humanoid
4658
	s.Color = BrickColor.new(0,0,0)
4659
	v.Transparency = 1
4660
	m.Head.Transparency = 0
4661
	m.Head.Mesh:Remove()
4662
	local b = Instance.new("SpecialMesh")
4663
	b.Parent = m.Head
4664
	b.MeshType = "Sphere"
4665
	b.Scale = Vector3.new(.5,1,1)
4666
	m.Head.BrickColor = BrickColor.new("Black")
4667
	else
4668
	end 
4669
	end
4670
	end)()
4671
	end 
4672
end)
4673
4674
set.MakeCommand('Hole',-1,set.Prefix,{'hole','sparta'},{'player'},1,function(plr,args)
4675
local plrz = set.GetPlayers(plr, args[1]:lower())
4676
for kay, player in pairs(plrz) do
4677
coroutine.wrap(function()
4678
local Self=player
4679
local Tor
4680
if pcall(function() Tor = Self.Character.Torso end) then
4681
local Hole = Instance.new("Part",Self.Character)
4682
Hole.Anchored = true
4683
Hole.CanCollide = false
4684
Hole.formFactor = Enum.FormFactor.Custom
4685
Hole.Size = Vector3.new(10,1,10)
4686
Hole.CFrame = Tor.CFrame * CFrame.new(0,-3.3,-3)
4687
Hole.BrickColor = BrickColor.new("Really black")
4688
local HoleM = Instance.new("CylinderMesh",Hole)
4689
Tor.Anchored = true
4690
local Foot = Tor.CFrame * CFrame.new(0,-3,0)
4691
local Func = coroutine.create(function()
4692
for i=1,10 do
4693
Tor.CFrame = Foot * CFrame.fromEulerAnglesXYZ(-(math.pi/2)*i/10,0,0) * CFrame.new(0,3,0)
4694
wait()
4695
end
4696
for i=1,5,0.2 do
4697
Tor.CFrame = Foot * CFrame.new(0,-(i^2),0) * CFrame.fromEulerAnglesXYZ(-(math.pi/2),0,0) * CFrame.new(0,3,0)
4698
wait()
4699
end
4700
pcall(function() Self.Character.Humanoid.Health = 0 end)
4701
end)
4702
coroutine.resume(Func)
4703
end
4704
end)()
4705
end
4706
end)
4707
4708
set.MakeCommand('Crucify',-1,set.Prefix,{'crucify','cross'},{'player'},1,function(plr,args)
4709
	for i,v in pairs(set.GetPlayers(plr,args[1]:lower())) do
4710
		local torso=v.Character['Torso']
4711
		local larm=v.Character['Left Arm']
4712
		local rarm=v.Character['Right Arm']
4713
		local lleg=v.Character['Left Leg']
4714
		local rleg=v.Character['Right Leg']
4715
		local head=v.Character['Head']
4716
		if torso and larm and rarm and lleg and rleg and head and not v.Character:FindFirstChild(v.Name..'kohlscrusify') then
4717
			local cru=Instance.new('Model',v.Character)
4718
			cru.Name=v.Name..'kohlscrusify'
4719
			local c1=Instance.new('Part',cru)
4720
			c1.BrickColor=BrickColor.new('Reddish brown')
4721
			c1.Material='Wood'
4722
			c1.CFrame=(v.Character.Torso.CFrame-v.Character.Torso.CFrame.lookVector)*CFrame.new(0,0,2)
4723
			c1.Size=Vector3.new(2,18.4,1)
4724
			c1.Anchored=true
4725
			local c2=c1:Clone()
4726
			c2.Parent=cru
4727
			c2.Size=Vector3.new(11,1.6,1)
4728
			c2.CFrame=c1.CFrame+Vector3.new(0,5,0)
4729
			torso.Anchored=true
4730
			wait(0.5)
4731
			torso.CFrame=c2.CFrame+torso.CFrame.lookVector+Vector3.new(0,-1,0)
4732
			wait(0.5)
4733
			larm.Anchored=true
4734
			rarm.Anchored=true
4735
			lleg.Anchored=true
4736
			rleg.Anchored=true
4737
			head.Anchored=true
4738
			wait()
4739
			larm.CFrame=torso.CFrame*CFrame.new(-1.5,1,0)
4740
			rarm.CFrame=torso.CFrame*CFrame.new(1.5,1,0)
4741
			lleg.CFrame=torso.CFrame*CFrame.new(-0.1,-1.7,0)
4742
			rleg.CFrame=torso.CFrame*CFrame.new(0.1,-1.7,0)
4743
			larm.CFrame=larm.CFrame*CFrame.Angles(0,0,-140)
4744
			rarm.CFrame=rarm.CFrame*CFrame.Angles(0,0,140)
4745
			lleg.CFrame=lleg.CFrame*CFrame.Angles(0,0,0.6)
4746
			rleg.CFrame=rleg.CFrame*CFrame.Angles(0,0,-0.6)
4747
			--head.CFrame=head.CFrame*CFrame.Angles(0,0,0.3)
4748
			local n1=Instance.new('Part',cru)
4749
			n1.BrickColor=BrickColor.new('Dark stone grey')
4750
			n1.Material='DiamondPlate'
4751
			n1.Size=Vector3.new(0.2,0.2,2)
4752
			n1.Anchored=true
4753
			local m=Instance.new('BlockMesh',n1)
4754
			m.Scale=Vector3.new(0.2,0.2,0.7)
4755
			n2=n1:clone()
4756
			n2.Parent=cru
4757
			n3=n1:clone()
4758
			n3.Parent=cru
4759
			n1.CFrame=(c2.CFrame+torso.CFrame.lookVector)*CFrame.new(2,0,0)
4760
			n2.CFrame=(c2.CFrame+torso.CFrame.lookVector)*CFrame.new(-2,0,0)
4761
			n3.CFrame=(c2.CFrame+torso.CFrame.lookVector)*CFrame.new(0,-3,0)
4762
			coroutine.wrap(function()
4763
				repeat 
4764
					wait(0.1)
4765
					v.Character.Humanoid.Health=v.Character.Humanoid.Health-0.6
4766
					local p = Instance.new("Part",v.Character)
4767
					p.CanCollide = false
4768
					local color = math.random(1, 3)
4769
					local bcolo
4770
					if color == 1 then
4771
						bcolor = BrickColor.new(21)
4772
						parent=n1
4773
					elseif color == 2 then
4774
						bcolor = BrickColor.new(1004)
4775
						parent=n2
4776
					elseif color == 3 then
4777
						bcolor = BrickColor.new(21)
4778
						parent=n3
4779
					end
4780
					p.BrickColor = bcolor
4781
					local m=Instance.new('BlockMesh',p)
4782
					p.Size=Vector3.new(0.1,0.1,0.1)
4783
					m.Scale = Vector3.new(math.random()*0.9, math.random()*0.9, math.random()*0.9)
4784
					p.Locked = true
4785
					p.TopSurface = "Smooth"
4786
					p.BottomSurface = "Smooth"
4787
					p.CFrame = parent.CFrame
4788
					p.Anchored = false
4789
					m.Name='Blood Peice'
4790
					p.Name='Blood Peice'
4791
					p.Touched:connect(function(o)
4792
						if o and p and o~=parent and o~=n1 and o~=n2 and o~=n3 and o~=c1 and o~=c2 and o.Parent~=cru and (not game:service('Players'):FindFirstChild(o.Parent.Name)) and o.Name~='Blood Peice' and o.Name~='Puke Peice' and o.Name~='Puke Plate' and o.Name~='Blood Plate' and (o.Parent.Name=='Workspace' or o.Parent:IsA('Model')) and (o.Parent~=p.Parent) and o:IsA('Part') and (o.Parent.Name~=v.Character.Name) and (not o.Parent:IsA('Hat')) and (not o.Parent:IsA('Tool')) then
4793
							local cf=CFrame.new(p.CFrame.X,o.CFrame.Y+o.Size.Y/2,p.CFrame.Z)
4794
							p:Destroy()
4795
							local g=Instance.new('Part',workspace)
4796
							g.Anchored=true
4797
							g.CanCollide=false
4798
							g.Size=Vector3.new(0.1,0.1,0.1)
4799
							g.Name='Blood Plate'
4800
							g.CFrame=cf
4801
							g.BrickColor=BrickColor.new(21)
4802
							local c=Instance.new('CylinderMesh',g)
4803
							c.Scale=Vector3.new(1,0.2,1)
4804
							c.Name='BloodMesh'
4805
							wait(10)
4806
							g:Destroy()
4807
						elseif o and o.Name=='Blood Plate' and p then 
4808
							p:Destroy() 
4809
							o.BloodMesh.Scale=o.BloodMesh.Scale+Vector3.new(1,0,1)
4810
						end
4811
					end)
4812
				until (not cru) or (not cru.Parent) or (not v) or (not v.Character) or (not v.Character:FindFirstChild('Head')) or v.Character.Humanoid.Health<=0
4813
			end)()
4814
		end
4815
	end
4816
end)
4817
4818
set.MakeCommand('Fly',2,set.Prefix,{'fly','flight'},{'player'},1,function(plr,args)
4819
local plrz = set.GetPlayers(plr, args[1]:lower())
4820
for i, v in pairs(plrz) do
4821
	set.Remote(v,'Function','Fly','on')
4822
end
4823
end)
4824
4825
set.MakeCommand('UnFly',2,set.Prefix,{'unfly','ground'},{'player'},1,function(plr,args)
4826
local plrz = set.GetPlayers(plr, args[1])
4827
for i, v in pairs(plrz) do
4828
	set.Remote(v,'Function','Fly','off')
4829
end
4830
end)
4831
4832
set.MakeCommand('Disco',-1,set.Prefix,{'disco'},{},0,function(plr,args)
4833
set.lighttask=false
4834
wait(0.5)
4835
coroutine.wrap(function()
4836
set.lighttask = true
4837
repeat
4838
if set.lighttask==false then return end
4839
local color = Color3.new(math.random(255)/255,math.random(255)/255,math.random(255)/255)
4840
game:service('Lighting').Ambient = color
4841
game:service('Lighting').OutdoorAmbient = color
4842
game:service('Lighting').FogColor = color
4843
wait(0.1)
4844
until set.lighttask==false
4845
end)()
4846
end)
4847
4848
set.MakeCommand('Flash',-1,set.Prefix,{'flash'},{},0,function(plr,args)
4849
set.lighttask=false
4850
wait(0.5)
4851
coroutine.wrap(function()
4852
set.lighttask=true
4853
repeat
4854
if set.lighttask==false then return end
4855
game:service('Lighting').Ambient = Color3.new(1,1,1)
4856
game:service('Lighting').OutdoorAmbient = Color3.new(1,1,1)
4857
game:service('Lighting').FogColor = Color3.new(1,1,1)
4858
game:service('Lighting').Brightness = 1
4859
game:service('Lighting').TimeOfDay = 14
4860
wait(0.1) 
4861
game:service('Lighting').Ambient = Color3.new(0,0,0)
4862
game:service('Lighting').OutdoorAmbient = Color3.new(0,0,0)
4863
game:service('Lighting').FogColor = Color3.new(0,0,0)
4864
game:service('Lighting').Brightness = 0
4865
game:service('Lighting').TimeOfDay = 0
4866
wait(0.1)
4867
until set.lighttask==false
4868
end)()
4869
end)
4870
4871
set.MakeCommand('Spin',-1,set.Prefix,{'spin'},{'player'},1,function(plr,args)
4872
local plrz = set.GetPlayers(plr, args[1])
4873
for i, v in pairs(plrz) do
4874
coroutine.wrap(function()
4875
if v and v.Character and v.Character:findFirstChild("Torso") then
4876
for i,v in pairs(v.Character.Torso:children()) do if v.Name == "SPINNER" then v:Destroy() end end
4877
local torso = v.Character:findFirstChild("Torso")
4878
local bg = Instance.new("BodyGyro", torso) bg.Name = "SPINNER" bg.maxTorque = Vector3.new(0,math.huge,0) bg.P = 11111 bg.cframe = torso.CFrame table.insert(set.objects,bg)
4879
repeat wait(1/44) bg.cframe = bg.cframe * CFrame.Angles(0,math.rad(30),0)
4880
until not bg or bg.Parent ~= torso
4881
end
4882
end)()
4883
end
4884
end)
4885
4886
set.MakeCommand('UnSpin',-1,set.Prefix,{'unspin'},{'player'},1,function(plr,args)
4887
local plrz = set.GetPlayers(plr, args[1]:lower())
4888
for i, v in pairs(plrz) do
4889
coroutine.wrap(function()
4890
if v and v.Character and v.Character:findFirstChild("Torso") then
4891
for a,q in pairs(v.Character.Torso:children()) do if q.Name == "SPINNER" then q:Destroy() end end
4892
end
4893
end)()
4894
end
4895
end)
4896
4897
set.MakeCommand('Dog',-1,set.Prefix,{'dog','dogify'},{'player'},1,function(plr,args)
4898
local plrz = set.GetPlayers(plr, args[1]:lower())
4899
for i, v in pairs(plrz) do
4900
coroutine.wrap(function()
4901
if v and v.Character and v.Character:findFirstChild("Torso") then
4902
if v.Character:findFirstChild("Shirt") then v.Character.Shirt.Parent = v.Character.Torso end
4903
if v.Character:findFirstChild("Pants") then v.Character.Pants.Parent = v.Character.Torso end
4904
v.Character.Torso.Transparency = 1
4905
v.Character.Torso.Neck.C0 = CFrame.new(0,-.5,-2) * CFrame.Angles(math.rad(90),math.rad(180),0)
4906
v.Character.Torso["Right Shoulder"].C0 = CFrame.new(.5,-1.5,-1.5) * CFrame.Angles(0,math.rad(90),0)
4907
v.Character.Torso["Left Shoulder"].C0 = CFrame.new(-.5,-1.5,-1.5) * CFrame.Angles(0,math.rad(-90),0)
4908
v.Character.Torso["Right Hip"].C0 = CFrame.new(1.5,-1,1.5) * CFrame.Angles(0,math.rad(90),0)
4909
v.Character.Torso["Left Hip"].C0 = CFrame.new(-1.5,-1,1.5) * CFrame.Angles(0,math.rad(-90),0)
4910
local new = Instance.new("Seat", v.Character) new.Name = "FAKETORSO" new.formFactor = "Symmetric" new.TopSurface = 0 new.BottomSurface = 0 new.Size = Vector3.new(3,1,4) new.CFrame = v.Character.Torso.CFrame
4911
local bf = Instance.new("BodyForce", new) bf.force = Vector3.new(0,new:GetMass()*196.25,0)
4912
local weld = Instance.new("Weld", v.Character.Torso) weld.Part0 = v.Character.Torso weld.Part1 = new weld.C0 = CFrame.new(0,-.5,0)
4913
for a, part in pairs(v.Character:children()) do if part:IsA("BasePart") then part.BrickColor = BrickColor.new("Brown") elseif part:findFirstChild("NameTag") then part.Head.BrickColor = BrickColor.new("Brown") end end
4914
end
4915
end)()
4916
end
4917
end)
4918
4919
set.MakeCommand('UnDog',-1,set.Prefix,{'undog','undogify'},{'player'},1,function(plr,args)
4920
local plrz = set.GetPlayers(plr, args[1]:lower())
4921
for i, v in pairs(plrz) do
4922
coroutine.wrap(function()
4923
if v and v.Character and v.Character:findFirstChild("Torso") then
4924
if v.Character.Torso:findFirstChild("Shirt") then v.Character.Torso.Shirt.Parent = v.Character end
4925
if v.Character.Torso:findFirstChild("Pants") then v.Character.Torso.Pants.Parent = v.Character end
4926
v.Character.Torso.Transparency = 0
4927
v.Character.Torso.Neck.C0 = CFrame.new(0,1,0) * CFrame.Angles(math.rad(90),math.rad(180),0)
4928
v.Character.Torso["Right Shoulder"].C0 = CFrame.new(1,.5,0) * CFrame.Angles(0,math.rad(90),0)
4929
v.Character.Torso["Left Shoulder"].C0 = CFrame.new(-1,.5,0) * CFrame.Angles(0,math.rad(-90),0)
4930
v.Character.Torso["Right Hip"].C0 = CFrame.new(1,-1,0) * CFrame.Angles(0,math.rad(90),0)
4931
v.Character.Torso["Left Hip"].C0 = CFrame.new(-1,-1,0) * CFrame.Angles(0,math.rad(-90),0)
4932
for a, part in pairs(v.Character:children()) do if part:IsA("BasePart") then part.BrickColor = BrickColor.new("White") if part.Name == "FAKETORSO" then part:Destroy() end elseif part:findFirstChild("NameTag") then part.Head.BrickColor = BrickColor.new("White") end end
4933
end
4934
end)()
4935
end
4936
end)
4937
4938
set.MakeCommand('Creeper',-1,set.Prefix,{'creeper','creeperify'},{'player'},1,function(plr,args)
4939
local plrz = set.GetPlayers(plr, args[1]:lower())
4940
for i, v in pairs(plrz) do
4941
coroutine.wrap(function()
4942
if v and v.Character and v.Character:findFirstChild("Torso") then
4943
if v.Character:findFirstChild("Shirt") then v.Character.Shirt.Parent = v.Character.Torso end
4944
if v.Character:findFirstChild("Pants") then v.Character.Pants.Parent = v.Character.Torso end
4945
v.Character.Torso.Transparency = 0
4946
v.Character.Torso.Neck.C0 = CFrame.new(0,1,0) * CFrame.Angles(math.rad(90),math.rad(180),0)
4947
v.Character.Torso["Right Shoulder"].C0 = CFrame.new(0,-1.5,-.5) * CFrame.Angles(0,math.rad(90),0)
4948
v.Character.Torso["Left Shoulder"].C0 = CFrame.new(0,-1.5,-.5) * CFrame.Angles(0,math.rad(-90),0)
4949
v.Character.Torso["Right Hip"].C0 = CFrame.new(0,-1,.5) * CFrame.Angles(0,math.rad(90),0)
4950
v.Character.Torso["Left Hip"].C0 = CFrame.new(0,-1,.5) * CFrame.Angles(0,math.rad(-90),0)
4951
for a, part in pairs(v.Character:children()) do if part:IsA("BasePart") then part.BrickColor = BrickColor.new("Bright green") if part.Name == "FAKETORSO" then part:Destroy() end elseif part:findFirstChild("NameTag") then part.Head.BrickColor = BrickColor.new("Bright green") end end
4952
end
4953
end)()
4954
end
4955
end)
4956
4957
set.MakeCommand('UnCreeper',-1,set.Prefix,{'uncreeper','uncreeperify'},{'player'},1,function(plr,args)
4958
local plrz = set.GetPlayers(plr, args[1]:lower())
4959
for i, v in pairs(plrz) do
4960
coroutine.wrap(function()
4961
if v and v.Character and v.Character:findFirstChild("Torso") then
4962
if v.Character.Torso:findFirstChild("Shirt") then v.Character.Torso.Shirt.Parent = v.Character end
4963
if v.Character.Torso:findFirstChild("Pants") then v.Character.Torso.Pants.Parent = v.Character end
4964
v.Character.Torso.Transparency = 0
4965
v.Character.Torso.Neck.C0 = CFrame.new(0,1,0) * CFrame.Angles(math.rad(90),math.rad(180),0)
4966
v.Character.Torso["Right Shoulder"].C0 = CFrame.new(1,.5,0) * CFrame.Angles(0,math.rad(90),0)
4967
v.Character.Torso["Left Shoulder"].C0 = CFrame.new(-1,.5,0) * CFrame.Angles(0,math.rad(-90),0)
4968
v.Character.Torso["Right Hip"].C0 = CFrame.new(1,-1,0) * CFrame.Angles(0,math.rad(90),0)
4969
v.Character.Torso["Left Hip"].C0 = CFrame.new(-1,-1,0) * CFrame.Angles(0,math.rad(-90),0)
4970
for a, part in pairs(v.Character:children()) do if part:IsA("BasePart") then part.BrickColor = BrickColor.new("White") if part.Name == "FAKETORSO" then part:Destroy() end elseif part:findFirstChild("NameTag") then part.Head.BrickColor = BrickColor.new("White") end end
4971
end
4972
end)()
4973
end
4974
end)
4975
4976
set.MakeCommand('Big Head',-1,set.Prefix,{'bighead'},{'player'},1,function(plr,args)
4977
local plrz = set.GetPlayers(plr, args[1]:lower())
4978
for i, v in pairs(plrz) do
4979
coroutine.wrap(function()
4980
if v and v.Character then v.Character.Head.Mesh.Scale = Vector3.new(3,3,3) v.Character.Torso.Neck.C0 = CFrame.new(0,1.9,0) * CFrame.Angles(math.rad(90),math.rad(180),0) end
4981
end)()
4982
end
4983
end)
4984
4985
set.MakeCommand('Resize Character',-1,set.Prefix,{'resize','size'},{'player','number'},2,function(plr,args)
4986
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
4987
	 if not (plr and plr.Character and plr.Character:findFirstChild('Torso') and plr.Character:findFirstChild('HumanoidRootPart')) then return end
4988
		local ags = {c = plr.Character, t = plr.Character.Torso, r = plr.Character.HumanoidRootPart}
4989
		ags.t.Anchored = true ags.t.BottomSurface = 0 ags.t.TopSurface = 0
4990
		local welds = {} --Credit to Drezmor for the orig command, credit to Kohltastrophe for making it work correctly l0l
4991
		for i2,v2 in pairs(ags.c:children()) do
4992
		if v2:IsA('BasePart') then v2.Anchored = true
4993
		elseif v2:IsA('Pants') or v2:IsA('Shirt') then v2.Parent = ags.t
4994
		end
4995
		end
4996
		print(args[2])
4997
		local function size(p)
4998
		for i2,v2 in pairs(p:children()) do
4999
		if v2:IsA('Weld') or v2:IsA('Motor') or v2:IsA('Motor6D') then
5000
		local p1 = v2.Part1 p1.Anchored = true v2.Part1 = nil
5001
		local r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12 = v2.C0:components() v2.C0 = CFrame.new(r1*args[2],r2*args[2],r3*args[2],r4,r5,r6,r7,r8,r9,r10,r11,r12)
5002
		local r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12 = v2.C1:components() v2.C1 = CFrame.new(r1*args[2],r2*args[2],r3*args[2],r4,r5,r6,r7,r8,r9,r10,r11,r12)
5003
		if p1.Name ~= 'Head' and p1.Name ~= 'Torso' then
5004
		p1.formFactor = 3
5005
		p1.Size = p1.Size*args[2]
5006
		elseif p1.Name ~= 'Torso' then
5007
		p1.Anchored = true
5008
		for i3,v3 in pairs(p1:children()) do if v3:IsA('Weld') then v3.Part0 = nil v3.Part1.Anchored = true end end
5009
		p1.formFactor = 3 p1.Size = p1.Size*args[2]
5010
		for i3,v3 in pairs(p1:children()) do if v3:IsA('Weld') then v3.Part0 = p1 v3.Part1.Anchored = false end end
5011
		end
5012
		if v2.Parent == ags.t then p1.BottomSurface = 0 p1.TopSurface = 0 end
5013
		p1.Anchored = false
5014
		v2.Part1 = p1
5015
		if v2.Part0 == ags.t then table.insert(welds,v2) p1.Anchored = true v2.Part0 = nil end
5016
		elseif v2:IsA('CharacterMesh') then
5017
		local bp = tostring(v2.BodyPart):match('%w+.%w+.(%w+)')
5018
		local msh = Instance.new('SpecialMesh')
5019
		if bp and ags.c:findFirstChild(bp) then msh.Parent = ags.c:findFirstChild(bp) end
5020
		msh.MeshId = 'http://www.roblox.com/asset/?id='..v2.MeshId
5021
		if v2.BaseTextureId ~= 0 or v2.BaseTextureId ~= '0' then msh.TextureId = 'http://www.roblox.com/asset/?id='..v2.BaseTextureId end
5022
		msh.Scale = msh.Scale*args[2] v2:Destroy()
5023
		elseif v2:IsA('SpecialMesh') and v2.Parent ~= ags.c.Head then v2.Scale = v2.Scale*args[2]
5024
		end size(v2)
5025
		end
5026
		end
5027
		size(ags.c)
5028
		ags.t.formFactor = 3
5029
		ags.t.Size = ags.t.Size*args[2]
5030
		for i2,v2 in pairs(welds) do v2.Part0 = ags.t v2.Part1.Anchored = false end
5031
		for i2,v2 in pairs(ags.c:children()) do if v2:IsA('BasePart') then v2.Anchored = false end end
5032
		local weld = Instance.new('Weld',ags.r) weld.Part0 = ags.r weld.Part1 = ags.t
5033
	end
5034
end)
5035
5036
set.MakeCommand('Small Head',-1,set.Prefix,{'smallhead','minihead'},{'player'},1,function(plr,args)
5037
local plrz = set.GetPlayers(plr, args[1]:lower())
5038
for i, v in pairs(plrz) do
5039
coroutine.wrap(function()
5040
if v and v.Character then v.Character.Head.Mesh.Scale = Vector3.new(.75,.75,.75) v.Character.Torso.Neck.C0 = CFrame.new(0,.8,0) * CFrame.Angles(math.rad(90),math.rad(180),0) end
5041
end)()
5042
end
5043
end)
5044
5045
set.MakeCommand('Fling',2,set.Prefix,{'fling'},{'player'},1,function(plr,args)
5046
local plrz = set.GetPlayers(plr, args[1]:lower())
5047
for i, v in pairs(plrz) do
5048
coroutine.wrap(function()
5049
if v and v.Character and v.Character:findFirstChild("Torso") and v.Character:findFirstChild("Humanoid") then 
5050
local xran local zran
5051
repeat xran = math.random(-9999,9999) until math.abs(xran) >= 5555
5052
repeat zran = math.random(-9999,9999) until math.abs(zran) >= 5555
5053
v.Character.Humanoid.Sit = true v.Character.Torso.Velocity = Vector3.new(0,0,0)
5054
local frc = Instance.new("BodyForce", v.Character.Torso) frc.Name = "BFRC" frc.force = Vector3.new(xran*4,9999*5,zran*4) game:service("Debris"):AddItem(frc,.1)
5055
end
5056
end)()
5057
end
5058
end)
5059
5060
set.MakeCommand('Seizure',-1,set.Prefix,{'seizure'},{'player'},1,function(plr,args)
5061
local plrz = set.GetPlayers(plr, args[1]:lower())
5062
for i, v in pairs(plrz) do
5063
local parent=v:FindFirstChild('PlayerGui') or v:FindFirstChild('Backpack')
5064
coroutine.wrap(function()
5065
if v and v.Character then 
5066
v.Character.Torso.CFrame = v.Character.Torso.CFrame * CFrame.Angles(math.rad(90),0,0) 
5067
set.LoadScript('LocalScript',[[char=game:service('Players').LocalPlayer.Character; 
5068
	repeat wait() 
5069
	char.Humanoid.PlatformStand = true 
5070
	char.Torso.Velocity = Vector3.new(math.random(-10,10),-5,math.random(-10,10)) 
5071
	char.Torso.RotVelocity = Vector3.new(math.random(-5,5),math.random(-5,5),math.random(-5,5)) 
5072
	until nil]],"SeizureBase",true,parent)
5073
end
5074
end)()
5075
end
5076
end)
5077
5078
set.MakeCommand('UnSeizure',-1,set.Prefix,{'unseizure'},{'player'},1,function(plr,args)
5079
local plrz = set.GetPlayers(plr,args[1]:lower())
5080
for i, v in pairs(plrz) do
5081
coroutine.wrap(function()
5082
local parent=v:FindFirstChild('PlayerGui') or v:FindFirstChild('Backpack')
5083
if v and parent then 
5084
for i,v in pairs(parent:children()) do if v.Name == "SeizureBase" then v:Destroy() end end
5085
wait(.1) v.Character.Humanoid.PlatformStand = false
5086
end
5087
end)()
5088
end
5089
end)
5090
5091
set.MakeCommand('Remove Limbs',-1,set.Prefix,{'removelimbs','delimb'},{'player'},1,function(plr,args)
5092
local plrz = set.GetPlayers(plr, args[1]:lower())
5093
for i, v in pairs(plrz) do
5094
coroutine.wrap(function()
5095
if v and v.Character then 
5096
for a, obj in pairs(v.Character:children()) do 
5097
if obj:IsA("BasePart") and (obj.Name:find("Leg") or obj.Name:find("Arm")) then obj:Destroy() end
5098
end
5099
end
5100
end)()
5101
end
5102
end)
5103
5104
set.MakeCommand('Name',2,set.Prefix,{'name','rename'},{'player','name/hide'},2,function(plr,args)
5105
local plrz = set.GetPlayers(plr, args[1]:lower())
5106
for i, v in pairs(plrz) do
5107
coroutine.wrap(function()
5108
if v and v.Character and v.Character:findFirstChild("Head") then 
5109
for a, mod in pairs(v.Character:children()) do if mod:findFirstChild("NameTag") then v.Character.Head.Transparency = 0 mod:Destroy() end end
5110
local char = v.Character
5111
local mod = Instance.new("Model", char) mod.Name = args[2] or ''
5112
local cl = char.Head:Clone() cl.Parent = mod local hum = Instance.new("Humanoid", mod) hum.Name = "NameTag" hum.MaxHealth = 0 hum.Health = 0
5113
coroutine.wrap(function()
5114
if args[2]:lower()~='hide' then
5115
	repeat hum.MaxHealth=v.Character.Humanoid.MaxHealth hum.Health=v.Character.Humanoid.Health wait() until not v or not hum or not mod or not mod.Parent or mod==nil or hum==nil or not hum.Parent
5116
else
5117
	mod.Name=''
5118
end
5119
end)()
5120
cl.CanCollide=false
5121
local weld = Instance.new("Weld", cl) weld.Part0 = cl weld.Part1 = char.Head
5122
char.Head.Transparency = 1
5123
end
5124
end)()
5125
end
5126
end)
5127
5128
set.MakeCommand('UnName',2,set.Prefix,{'unname','fixname'},{'player'},1,function(plr,args)
5129
local plrz = set.GetPlayers(plr, args[1]:lower())
5130
for i, v in pairs(plrz) do
5131
coroutine.wrap(function()
5132
if v and v.Character and v.Character:findFirstChild("Head") then 
5133
for a, mod in pairs(v.Character:children()) do if mod:findFirstChild("NameTag") then v.Character.Head.Transparency = 0 mod:Destroy() end end
5134
end
5135
end)()
5136
end
5137
end)
5138
5139
set.MakeCommand('Right Leg',-1,set.Prefix,{'rleg','rightleg','rightlegpackage'},{'player','id'},2,function(plr,args)
5140
	local id=game:service('MarketplaceService'):GetProductInfo(args[2]).AssetTypeId
5141
	if id~=31 then set.Remote(plr,'Function','OutputGui','Id is not a right leg!') return end
5142
	local part=game:service('InsertService'):LoadAsset(args[2]):children()[1]
5143
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
5144
		for k,m in pairs(v.Character:children()) do if m:IsA('CharacterMesh') and m.BodyPart=='RightLeg' then m:Destroy() end end
5145
		part.Parent=v.Character
5146
	end
5147
end)
5148
5149
set.MakeCommand('Left Leg',-1,set.Prefix,{'lleg','leftleg','leftlegpackage'},{'player','id'},2,function(plr,args)
5150
	local id=game:service('MarketplaceService'):GetProductInfo(args[2]).AssetTypeId
5151
	if id~=30 then set.Remote(plr,'Function','OutputGui','Id is not a left leg!') return end
5152
	local part=game:service('InsertService'):LoadAsset(args[2]):children()[1]
5153
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
5154
		for k,m in pairs(v.Character:children()) do if m:IsA('CharacterMesh') and m.BodyPart=='LeftLeg' then m:Destroy() end end
5155
		part.Parent=v.Character
5156
	end
5157
end)
5158
5159
set.MakeCommand('Right Arm',-1,set.Prefix,{'rarm','rightarm','rightarmpackage'},{'player','id'},2,function(plr,args)
5160
	local id=game:service('MarketplaceService'):GetProductInfo(args[2]).AssetTypeId
5161
	if id~=28 then set.Remote(plr,'Function','OutputGui','Id is not a right arm!') return end
5162
	local part=game:service('InsertService'):LoadAsset(args[2]):children()[1]
5163
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
5164
		for k,m in pairs(v.Character:children()) do if m:IsA('CharacterMesh') and m.BodyPart=='RightArm' then m:Destroy() end end
5165
		part.Parent=v.Character
5166
	end
5167
end)
5168
5169
set.MakeCommand('Left Arm',-1,set.Prefix,{'larm','leftarm','leftarmpackage'},{'player','id'},2,function(plr,args)
5170
	local id=game:service('MarketplaceService'):GetProductInfo(args[2]).AssetTypeId
5171
	if id~=29 then set.Remote(plr,'Function','OutputGui','Id is not a left arm!') return end
5172
	local part=game:service('InsertService'):LoadAsset(args[2]):children()[1]
5173
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
5174
		for k,m in pairs(v.Character:children()) do if m:IsA('CharacterMesh') and m.BodyPart=='LeftArm' then m:Destroy() end end
5175
		part.Parent=v.Character
5176
	end
5177
end)
5178
5179
set.MakeCommand('Torso',-1,set.Prefix,{'torso','torsopackage'},{'player','id'},2,function(plr,args)
5180
	local id=game:service('MarketplaceService'):GetProductInfo(args[2]).AssetTypeId
5181
	if id~=27 then set.Remote(plr,'Function','OutputGui','Id is not a torso!') return end
5182
	local part=game:service('InsertService'):LoadAsset(args[2]):children()[1]
5183
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
5184
		for k,m in pairs(v.Character:children()) do if m:IsA('CharacterMesh') and m.BodyPart=='Torso' then m:Destroy() end end
5185
		part.Parent=v.Character
5186
	end
5187
end)
5188
5189
set.MakeCommand('Character Appearance',-1,set.Prefix,{'char','character','appearance'},{'player','id'},2,function(plr,args)
5190
local plrz = set.GetPlayers(plr, args[1]:lower())
5191
for i, v in pairs(plrz) do
5192
coroutine.wrap(function()
5193
if v and v.Character then 
5194
v.CharacterAppearance = "http://www.roblox.com/asset/CharacterFetch.ashx?userId=" .. args[2]
5195
v:LoadCharacter()
5196
end
5197
end)()
5198
end
5199
end)
5200
5201
set.MakeCommand('Un-Character Appearance',-1,set.Prefix,{'unchar','uncharacter','fixappearance'},{'player'},1,function(plr,args)
5202
local plrz = set.GetPlayers(plr, args[1]:lower())
5203
for i, v in pairs(plrz) do
5204
coroutine.wrap(function()
5205
if v and v.Character then 
5206
v.CharacterAppearance = "http://www.roblox.com/asset/CharacterFetch.ashx?userId=" .. v.userId
5207
v:LoadCharacter()
5208
end
5209
end)()
5210
end
5211
end)
5212
5213
set.MakeCommand('Infect',-1,set.Prefix,{'infect','zombify'},{'player'},1,function(plr,args)
5214
local plrz = set.GetPlayers(plr, args[1]:lower())
5215
for i, v in pairs(plrz) do
5216
coroutine.wrap(function()
5217
if v and v.Character then
5218
set.Infect(v.Character)
5219
end
5220
end)()
5221
end
5222
end)
5223
5224
set.MakeCommand('Rainbowify',-1,set.Prefix,{'rainbowify','rainbow'},{'player'},1,function(plr,args)
5225
local plrz = set.GetPlayers(plr, args[1]:lower())
5226
for i, v in pairs(plrz) do
5227
coroutine.wrap(function()
5228
local parent=v:FindFirstChild('PlayerGui') or v:FindFirstChild('Backpack')
5229
if v and v.Character and v.Character:findFirstChild("Torso") then 
5230
if v.Character:findFirstChild("Shirt") then v.Character.Shirt.Parent = v.Character.Torso end
5231
if v.Character:findFirstChild("Pants") then v.Character.Pants.Parent = v.Character.Torso end
5232
for a, sc in pairs(v.Character:children()) do if sc.Name == "ify" then sc:Destroy() end end
5233
set.LoadScript('LocalScript',[[repeat wait(0.1) local clr = BrickColor.random() for i, v in pairs(game:service('Players').LocalPlayer.Character:children()) do if v:IsA("BasePart") and v.Name~='HumanoidRootPart' and (v.Name ~= "Head" or not v.Parent:findFirstChild("NameTag", true)) then v.BrickColor = clr v.Reflectance = 0 v.Transparency = 0 elseif v:findFirstChild("NameTag") then v.Head.BrickColor = clr v.Head.Reflectance = 0 v.Head.Transparency = 0 v.Parent.Head.Transparency = 1 end end until nil]],'ify',true,parent)
5234
end
5235
end)()
5236
end
5237
end)
5238
5239
set.MakeCommand('Flashify',-1,set.Prefix,{'flashify'},{'player'},1,function(plr,args)
5240
local plrz = set.GetPlayers(plr, args[1]:lower())
5241
for i, v in pairs(plrz) do
5242
coroutine.wrap(function()
5243
local parent=v:FindFirstChild('PlayerGui') or v:FindFirstChild('Backpack')
5244
if v and v.Character and v.Character:findFirstChild("Torso") then 
5245
if v.Character:findFirstChild("Shirt") then v.Character.Shirt.Parent = v.Character.Torso end
5246
if v.Character:findFirstChild("Pants") then v.Character.Pants.Parent = v.Character.Torso end
5247
for a, sc in pairs(v.Character:children()) do if sc.Name == "ify" then sc:Destroy() end end
5248
set.LoadScript('LocalScript',[[repeat wait(0.1) 
5249
	for i, v in pairs(game:service('Players').LocalPlayer.Character:children()) do 
5250
	if v:IsA("BasePart") and v.Name~='HumanoidRootPart' and (v.Name ~= "Head" or not v.Parent:findFirstChild("NameTag", true)) then 
5251
	v.BrickColor = BrickColor.new("Institutional white") v.Reflectance = 0 v.Transparency = 0 
5252
elseif v:findFirstChild("NameTag") then 
5253
	v.Head.BrickColor = BrickColor.new("Institutional white") 
5254
	v.Head.Reflectance = 0 v.Head.Transparency = 0 
5255
	v.Parent.Head.Transparency = 1 end end 
5256
	wait(1/44) 
5257
	for i, v in pairs(game:service('Players').LocalPlayer.Character:children()) do 
5258
	if v:IsA("BasePart") and v.Name~='HumanoidRootPart' and (v.Name ~= "Head" or not v.Parent:findFirstChild("NameTag", true)) then 
5259
	v.BrickColor = BrickColor.new("Really black") 
5260
	v.Reflectance = 0 v.Transparency = 0 elseif v:findFirstChild("NameTag") then 
5261
	v.Head.BrickColor = BrickColor.new("Really black") v.Head.Reflectance = 0 
5262
	v.Head.Transparency = 0 v.Parent.Head.Transparency = 1 end end until nil]],'ify',true,parent)
5263
end
5264
end)()
5265
end
5266
end)
5267
5268
set.MakeCommand('Noobify',-1,set.Prefix,{'noobify','noob'},{'player'},1,function(plr,args)
5269
local plrz = set.GetPlayers(plr, args[1]:lower())
5270
for i, v in pairs(plrz) do
5271
coroutine.wrap(function()
5272
if v and v.Character then
5273
set.Noobify(v.Character)
5274
end
5275
end)()
5276
end
5277
end)
5278
5279
set.MakeCommand('Ghostify',-1,set.Prefix,{'ghostify','ghost'},{'player'},1,function(plr,args)
5280
local plrz = set.GetPlayers(plr, args[1]:lower())
5281
for i, v in pairs(plrz) do
5282
coroutine.wrap(function()
5283
if v and v.Character and v.Character:findFirstChild("Torso") then 
5284
set.Remote(v,'Function','Noclip','norm')
5285
if v.Character:findFirstChild("Shirt") then v.Character.Shirt.Parent = v.Character.Torso end
5286
if v.Character:findFirstChild("Pants") then v.Character.Pants.Parent = v.Character.Torso end
5287
for a, sc in pairs(v.Character:children()) do if sc.Name == "ify" then sc:Destroy() end end
5288
for a, prt in pairs(v.Character:children()) do if prt:IsA("BasePart") and prt.Name~='HumanoidRootPart' and (prt.Name ~= "Head" or not prt.Parent:findFirstChild("NameTag", true)) then 
5289
prt.Transparency = .5 prt.Reflectance = 0 prt.BrickColor = BrickColor.new("Institutional white")
5290
if prt.Name:find("Leg") then prt.Transparency = 1 end
5291
elseif prt:findFirstChild("NameTag") then prt.Head.Transparency = .5 prt.Head.Reflectance = 0 prt.Head.BrickColor = BrickColor.new("Institutional white")
5292
end end
5293
end
5294
end)()
5295
end
5296
end)
5297
5298
set.MakeCommand('Goldify',-1,set.Prefix,{'goldify','gold'},{'player'},1,function(plr,args)
5299
local plrz = set.GetPlayers(plr, args[1]:lower())
5300
for i, v in pairs(plrz) do
5301
coroutine.wrap(function()
5302
if v and v.Character and v.Character:findFirstChild("Torso") then 
5303
if v.Character:findFirstChild("Shirt") then v.Character.Shirt.Parent = v.Character.Torso end
5304
if v.Character:findFirstChild("Pants") then v.Character.Pants.Parent = v.Character.Torso end
5305
for a, sc in pairs(v.Character:children()) do if sc.Name == "ify" then sc:Destroy() end end
5306
for a, prt in pairs(v.Character:children()) do if prt:IsA("BasePart") and prt.Name~='HumanoidRootPart' and (prt.Name ~= "Head" or not prt.Parent:findFirstChild("NameTag", true)) then 
5307
prt.Transparency = 0 prt.Reflectance = .4 prt.BrickColor = BrickColor.new("Bright yellow")
5308
elseif prt:findFirstChild("NameTag") then prt.Head.Transparency = 0 prt.Head.Reflectance = .4 prt.Head.BrickColor = BrickColor.new("Bright yellow")
5309
end end
5310
end
5311
end)()
5312
end
5313
end)
5314
5315
set.MakeCommand('Shiney',-1,set.Prefix,{'shiney','shineify','shine'},{'player'},1,function(plr,args)
5316
local plrz = set.GetPlayers(plr, args[1]:lower())
5317
for i, v in pairs(plrz) do
5318
coroutine.wrap(function()
5319
if v and v.Character and v.Character:findFirstChild("Torso") then 
5320
if v.Character:findFirstChild("Shirt") then v.Character.Shirt.Parent = v.Character.Torso end
5321
if v.Character:findFirstChild("Pants") then v.Character.Pants.Parent = v.Character.Torso end
5322
for a, sc in pairs(v.Character:children()) do if sc.Name == "ify" then sc:Destroy() end end
5323
for a, prt in pairs(v.Character:children()) do if prt:IsA("BasePart") and prt.Name~='HumanoidRootPart' and (prt.Name ~= "Head" or not prt.Parent:findFirstChild("NameTag", true)) then 
5324
prt.Transparency = 0 prt.Reflectance = 1 prt.BrickColor = BrickColor.new("Institutional white")
5325
elseif prt:findFirstChild("NameTag") then prt.Head.Transparency = 0 prt.Head.Reflectance = 1 prt.Head.BrickColor = BrickColor.new("Institutional white")
5326
end end
5327
end
5328
end)()
5329
end
5330
end)
5331
5332
set.MakeCommand('Normalify',-1,set.Prefix,{'normal','normalify'},{'player'},1,function(plr,args)
5333
local plrz = set.GetPlayers(plr, args[1]:lower())
5334
for i, v in pairs(plrz) do
5335
coroutine.wrap(function()
5336
if v and v.Character and v.Character:findFirstChild("Torso") then
5337
if v.Character:findFirstChild("Head") then v.Character.Head.Mesh.Scale = Vector3.new(1.25,1.25,1.25) end 
5338
if v.Character.Torso:findFirstChild("Shirt") then v.Character.Torso.Shirt.Parent = v.Character end
5339
if v.Character.Torso:findFirstChild("Pants") then v.Character.Torso.Pants.Parent = v.Character end
5340
v.Character.Torso.Transparency = 0
5341
v.Character.Torso.Neck.C0 = CFrame.new(0,1,0) * CFrame.Angles(math.rad(90),math.rad(180),0)
5342
v.Character.Torso["Right Shoulder"].C0 = CFrame.new(1,.5,0) * CFrame.Angles(0,math.rad(90),0)
5343
v.Character.Torso["Left Shoulder"].C0 = CFrame.new(-1,.5,0) * CFrame.Angles(0,math.rad(-90),0)
5344
v.Character.Torso["Right Hip"].C0 = CFrame.new(1,-1,0) * CFrame.Angles(0,math.rad(90),0)
5345
v.Character.Torso["Left Hip"].C0 = CFrame.new(-1,-1,0) * CFrame.Angles(0,math.rad(-90),0)
5346
local parent=v:FindFirstChild('PlayerGui') or v:FindFirstChild('Backpack')
5347
for a, sc in pairs(parent:children()) do if sc.Name == set.GuiName.."ify" or sc.Name==set.GuiName..'Glitch' or sc.Name == set.GuiName.."KohlsPoison" then sc:Destroy() end end
5348
for a, prt in pairs(v.Character:children()) do
5349
if prt:IsA("BasePart") and (prt.Name ~= "Head" or not prt.Parent:findFirstChild("NameTag", true)) then 
5350
prt.Transparency = 0 prt.Reflectance = 0 prt.BrickColor = BrickColor.new("White")
5351
if prt.Name == "FAKETORSO" then prt:Destroy() end
5352
if prt.Name == 'HumanoidRootPart' then prt.Transparency=1 end
5353
elseif prt:findFirstChild("NameTag") then 
5354
	prt.Head.Transparency = 0 prt.Head.Reflectance = 0 prt.Head.BrickColor = BrickColor.new("White")
5355
elseif prt.Name=='Kohls Puke' or prt.Name=='Kohls Bleed' then
5356
	prt:Destroy()
5357
elseif prt.Name==v.Name..'kohlscrusify' then
5358
	set.RunCommand('refresh',v.Name)
5359
end 
5360
end
5361
end
5362
end)()
5363
end
5364
end)
5365
5366
set.MakeCommand('Trippy',-1,set.Prefix,{'trippy'},{'player'},1,function(plr,args)
5367
local plrz = set.GetPlayers(plr, args[1]:lower())
5368
for i, v in pairs(plrz) do
5369
set.Remote(v,'Function','Effect','trippy')
5370
end
5371
end)
5372
5373
set.MakeCommand('Un-Effect',-1,set.Prefix,{'uneffect','uneffectgui','unblind','unstrobe','untrippy','undance','guifix','fixgui','unslippery','uniceskate','unicewalk','unslide'},{'player'},1,function(plr,args)
5374
local plrz = set.GetPlayers(plr, args[1]:lower())
5375
for i, v in pairs(plrz) do
5376
	set.Remote(v,'Function','Effect','off')
5377
end
5378
end)
5379
5380
set.MakeCommand('Strobe',-1,set.Prefix,{'strobe'},{'player'},1,function(plr,args)
5381
local plrz = set.GetPlayers(plr,args[1]:lower())
5382
for i, v in pairs(plrz) do
5383
set.Remote(v,'Function','Effect','strobe')
5384
end
5385
end)
5386
5387
set.MakeCommand('Blind',-1,set.Prefix,{'blind'},{'player'},1,function(plr,args)
5388
local plrz = set.GetPlayers(plr, args[1]:lower())
5389
for i, v in pairs(plrz) do
5390
set.Remote(v,'Function','Effect','blind')
5391
end
5392
end)
5393
5394
set.MakeCommand('Loop Heal',2,set.Prefix,{'loopheal'},{'player'},1,function(plr,args)
5395
local plrz = set.GetPlayers(plr, args[1]:lower())
5396
for i, v in pairs(plrz) do
5397
local parent=v:FindFirstChild('PlayerGui') or v:FindFirstChild('Backpack')
5398
if v and parent then
5399
set.LoadScript('LocalScript',[[
5400
local plr = game:service('Players'):findFirstChild("]] .. v.Name .. [[")
5401
repeat wait()
5402
coroutine.resume(coroutine.create(function()
5403
if plr and plr.Character and plr.Character:findFirstChild("Humanoid") then 
5404
plr.Character.Humanoid.Health = plr.Character.Humanoid.MaxHealth
5405
plr.Character.Humanoid.Changed:connect(function() r.Character.Humanoid.Health = plr.Character.Humanoid.MaxHealth end)
5406
end
5407
end))
5408
until nil]],"LoopHeal:"..v.Name,true,parent)
5409
end
5410
end
5411
end)
5412
5413
set.MakeCommand('UnLoop Heal',2,set.Prefix,{'unloopheal'},{'player'},1,function(plr,args)
5414
local plrz = set.GetPlayers(plr, args[1]:lower())
5415
for i,v in pairs(plrz) do for q,sc in pairs(set.objects) do if sc.Name == "LoopHeal:"..v.Name then sc:Destroy() table.remove(set.objects,q) end end end
5416
end)
5417
5418
set.MakeCommand('Loop Fling',-1,set.Prefix,{'loopfling'},{'player'},1,function(plr,args)
5419
local plrz = set.GetPlayers(plr, args[1]:lower())
5420
for i, v in pairs(plrz) do
5421
local parent=v:FindFirstChild('PlayerGui') or v:FindFirstChild('Backpack')
5422
if v and parent then
5423
set.LoadScript('LocalScript',[[
5424
local plr = game:service('Players').LocalPlayer
5425
repeat
5426
coroutine.resume(coroutine.create(function()
5427
if plr and plr.Character and plr.Character:findFirstChild("Torso") and plr.Character:findFirstChild("Humanoid") then 
5428
local xran local zran
5429
repeat xran = math.random(-9999,9999) until math.abs(xran) >= 5555
5430
repeat zran = math.random(-9999,9999) until math.abs(zran) >= 5555
5431
plr.Character.Humanoid.Sit = true plr.Character.Torso.Velocity = Vector3.new(0,0,0)
5432
local frc = Instance.new("BodyForce", plr.Character.Torso) frc.Name = "BFRC" frc.force = Vector3.new(xran*4,9999*5,zran*4) game:service("Debris"):AddItem(frc,.1)
5433
end
5434
end))
5435
wait(2) until nil]],"LoopFling:"..v.Name,true,parent)
5436
end
5437
end
5438
end)
5439
5440
set.MakeCommand('UnLoop Fling',-1,set.Prefix,{'unloopfling'},{'player'},1,function(plr,args)
5441
local plrz = set.GetPlayers(plr, args[1]:lower())
5442
for i,v in pairs(plrz) do for q,sc in pairs(set.objects) do if sc.Name == "LoopFling:"..v.Name then sc:Destroy() table.remove(set.objects,q) end end end
5443
end)
5444
5445
-------------------------
5446
-- True Owner Commands --
5447
-------------------------
5448
set.MakeCommand('Force Teleport to Place',5,set.Prefix,{'forceplace'},{'player','placeid'},2,function(plr,args)
5449
local plrz = set.GetPlayers(plr, args[1]:lower())
5450
for i, v in pairs(plrz) do
5451
coroutine.wrap(function()
5452
game:GetService('TeleportService'):Teleport(args[2],v)
5453
end)()
5454
end
5455
end)
5456
5457
set.MakeCommand('Update Script',5,set.Prefix,{'!updatekohls!'},{},1,function(plr,args)
5458
local m=Instance.new('Message',workspace)
5459
m.Text="Updating iButtler's LuaBloxStudio v1 [MANUAL MODE]"
5460
local mo=game:GetService('InsertService'):LoadAsset(145629584)
5461
local news=mo:children()[1]
5462
_G["Kohls Admin v1 Update"]=set
5463
news.Parent=game:service('ServerScriptService')
5464
mo:Destroy()
5465
wait(1)
5466
m.Text='Breaking old version and respawning players...'
5467
wait(1)
5468
m:Destroy()
5469
set=nil
5470
RemoteEvent:Destroy()
5471
script.Parent=nil
5472
script.Disabled=true
5473
script:Destroy()
5474
for i,v in pairs(game:service('Players'):GetPlayers()) do
5475
	v:LoadCharacter()
5476
end
5477
error('Breaking Old Version')
5478
end)
5479
5480
set.MakeCommand('Perm Ban',5,set.Prefix,{'permban'},{'player'},1,function(plr,args)
5481
local plrz = set.GetPlayers(plr, args[1]:lower())
5482
for i, v in pairs(plrz) do
5483
set.Remote(plr,'Function','PromptPermBan',v)
5484
end
5485
end)
5486
5487
set.MakeCommand('Settings',5,set.Prefix,{'settings'},{},0,function(plr,args)
5488
for i,v in pairs(UpdatableSettings) do
5489
	if set[v]~=nil then set.Remote(plr,'SetSetting',v,set[v]) end
5490
end
5491
set.Remote(plr,'SetSetting','UpdatableSettings',UpdatableSettings)
5492
wait(1)
5493
set.Remote(plr,'Function','Settings')
5494
end)
5495
5496
set.MakeCommand('Change Permissions',5,set.Prefix,{'perms','permissions','comperms'},{set.Prefix..'cmd','all/donor/temp/admin/owner/creator'},2,function(plr,args)
5497
	local level=nil
5498
	if args[2]:lower()=='all' or args[2]:lower()=='0' then
5499
		level=0
5500
	elseif args[2]:lower()=='donor' or args[2]:lower()=='1' then
5501
		level=1
5502
	elseif args[2]:lower()=='temp' or args[2]:lower()=='2' then
5503
		level=2
5504
	elseif args[2]:lower()=='admin' or args[2]:lower()=='3' then
5505
		level=3
5506
	elseif args[2]:lower()=='owner' or args[2]:lower()=='4' then
5507
		level=4
5508
	elseif args[2]:lower()=='creator' or args[2]:lower()=='5' then
5509
		level=5
5510
	elseif args[2]:lower()=='funtemp' or args[2]:lower()=='-1' then
5511
		level=-1
5512
	elseif args[2]:lower()=='funadmin' or args[2]:lower()=='-2' then
5513
		level=-2
5514
	elseif args[2]:lower()=='funowner' or args[2]:lower()=='-3' then
5515
		level=-3
5516
	end
5517
	if level~=nil then
5518
		for i=1,#set.Commands do
5519
			if args[1]:lower()==set.Commands[i].Prefix..set.Commands[i].Cmds[1]:lower() then 	
5520
				set.Commands[i].AdminLevel=level
5521
			end
5522
		end
5523
	else
5524
		set.OutputGui(plr,'Command Error:','Invalid Permission')
5525
	end
5526
end)
5527
5528
set.MakeCommand('Restore Map',3,set.Prefix,{'restoremap','maprestore','rmap'},{},0,function(plr,args)
5529
	set.Hint('Restoring Map...',game:service('Players'):children())
5530
	wait(0.5)
5531
	for i,v in pairs(workspace:children()) do
5532
		coroutine.wrap(function()
5533
			if v~=script and v.Archivable==true and not v:IsA('Terrain') then
5534
				pcall(function() v:Destroy() end)
5535
			end
5536
		end)()
5537
	end
5538
	for i,v in pairs(set.MapBackup:children()) do
5539
		coroutine.wrap(function()
5540
			v:Clone().Parent=workspace
5541
		end)()
5542
	end
5543
	wait(1)
5544
	set.ChatCommand(plr,set.Prefix.."respawn"..set.SplitKey..set.SpecialPrefix.."all")
5545
	wait(1)
5546
	set.Hint('Map Restore Complete.',game:service('Players'):children())
5547
end)
5548
5549
--------------------
5550
-- Owner Commands --
5551
--------------------
5552
5553
set.MakeCommand('Backup Map',4,set.Prefix,{'backupmap','mapbackup','bmap'},{},0,function(plr,args)
5554
	set.Hint('Updating Map Backup...',{plr})
5555
	local tempmodel=Instance.new('Model')
5556
	for i,v in pairs(workspace:children()) do
5557
		if v and not v:IsA('Terrain') and v.Archivable==true and v~=script and v~=RemoteEvent then
5558
			v:Clone().Parent=tempmodel
5559
		end
5560
	end
5561
	set.MapBackup=tempmodel:Clone()
5562
	tempmodel:Destroy()
5563
	set.Hint('Backup Complete',{plr})
5564
end)
5565
5566
set.MakeCommand('Explore',4,set.Prefix,{'explore','explorer'},{},0,function(plr,args)
5567
set.Remote(plr,'Function','Explorer')
5568
end)
5569
5570
set.MakeCommand('Tornado',4,set.Prefix,{'tornado','twister'},{'player'},1,function(plr,args)
5571
	for i,v in pairs(set.GetPlayers(plr, args[1]:lower())) do
5572
		local p=Instance.new('Part',workspace)
5573
		local s=Instance.new('Smoke',p)
5574
		s.RiseVelocity=25
5575
		s.Size=50
5576
		p.Transparency=1
5577
		s.Color=Color3.new(0,0,0)
5578
		--local a,b,c=s:clone(),s:clone(),s:clone()
5579
		--a.Parent=p b.Parent=p c.Parent=p
5580
		local pos=v.Character.Torso.CFrame+Vector3.new(0,-3,0)
5581
		p.CFrame=pos
5582
		p.Size=Vector3.new(0.2,0.2,0.2)
5583
		p.Anchored=true
5584
		p.CanCollide=false
5585
		local childList={}
5586
		local function checkObject(obj)
5587
			if (obj ~= p) and (obj.className == "Part") then
5588
				--if (obj.Anchored ~= false) then obj.Anchored=false end
5589
					table.insert(childList, 1, obj)
5590
				--end
5591
			elseif (obj.className == "Model") or (obj.className == "Hat") or (obj.className == "Tool") or (obj == workspace) then
5592
				local child = obj:GetChildren()
5593
				for x = 1, #child do
5594
					checkObject(child[x])
5595
				end
5596
				obj.ChildAdded:connect(checkObject)
5597
			end
5598
		end
5599
		checkObject(workspace)
5600
			local massConstant = 5
5601
			local mass = 3200 * massConstant
5602
			local n = 0
5603
			coroutine.wrap(function()
5604
			while p.Parent==workspace do
5605
				if n < #childList then
5606
					n = n + 1
5607
					if n % 800 == 0 then
5608
						wait()
5609
					end
5610
				else
5611
					n = 1
5612
					wait()
5613
				end
5614
			
5615
				local child = childList[n]
5616
				if (child ~= p) and (child.className == "Part") and (child.Anchored == false) then
5617
					local relPos = p.Position - child.Position
5618
					local motivator = child:FindFirstChild("BlackHole Influence")
5619
					if relPos.magnitude * 240 * massConstant < mass then
5620
						child:BreakJoints()
5621
						if (relPos.magnitude * 320 * massConstant < mass) and (child.Size.z + p.Size.x >  relPos.magnitude * 2 - 4) then
5622
							mass = mass + child:GetMass()
5623
							child:Remove()
5624
							table.remove(childList, n)
5625
							n = n - 1
5626
						else
5627
							child.CanCollide = false
5628
							if motivator == nil then
5629
								motivator = Instance.new("BodyPosition")
5630
								motivator.Parent = child
5631
								motivator.Name = "BlackHole Influence"
5632
							end
5633
							motivator.position = p.Position
5634
							motivator.maxForce = Vector3.new(1, 1, 1) * mass * child:GetMass() / (relPos.magnitude * massConstant)
5635
						end
5636
					elseif motivator ~= nil then
5637
						motivator:Remove()
5638
					end
5639
				end
5640
			end
5641
			end)()
5642
		coroutine.wrap(function() wait(30) p:Destroy() end)()
5643
		local posi=p.Position
5644
		repeat
5645
			p.CFrame = p.CFrame + Vector3.new(math.random(-5,5), 0, math.random(-5,5))
5646
		wait()
5647
		until p.Parent~=workspace or not p
5648
	end
5649
end)
5650
5651
set.MakeCommand('Nuke',4,set.Prefix,{'nuke'},{'player'},1,function(plr,args)
5652
local plrz = set.GetPlayers(plr, args[1]:lower())
5653
for i, v in pairs(plrz) do
5654
coroutine.resume(coroutine.create(function()
5655
if v and v.Character and v.Character:findFirstChild("Torso") then
5656
local p = Instance.new("Part",game.Workspace) table.insert(set.objects,p)
5657
p.Anchored = true
5658
p.CanCollide = false
5659
p.formFactor = "Symmetric"
5660
p.Shape = "Ball"
5661
p.Size = Vector3.new(1,1,1)
5662
p.BrickColor = BrickColor.new("New Yeller")
5663
p.Transparency = .5
5664
p.Reflectance = .2
5665
p.TopSurface = 0
5666
p.BottomSurface = 0
5667
local ex = Instance.new("Explosion", workspace)
5668
ex.Position = p.Position
5669
ex.BlastRadius = 100000
5670
ex.BlastPressure = math.huge
5671
ex.Hit:connect(function(hit)
5672
if hit:IsA('Part') and hit~=p then hit.Anchored=false end
5673
hit:BreakJoints()
5674
end)
5675
p.Touched:connect(function(hit)
5676
if hit and hit.Parent then
5677
local ex = Instance.new("Explosion", game.Workspace)
5678
ex.Position = hit.Position
5679
ex.BlastRadius = 100000
5680
ex.BlastPressure = math.huge
5681
if hit:IsA('Part') then hit.Anchored=false end
5682
hit:BreakJoints()
5683
end
5684
end)
5685
local cf = v.Character.Torso.CFrame
5686
p.CFrame = cf
5687
for i = 1, 333 do
5688
p.Size = p.Size + Vector3.new(3,3,3)
5689
p.CFrame = cf
5690
wait(1/44)
5691
end
5692
p:Destroy()
5693
end
5694
end))
5695
end
5696
end)
5697
5698
--------------------------
5699
-- Super Admin Commands --
5700
--------------------------
5701
5702
set.MakeCommand('View Logs',3,set.Prefix,{'logs','log','commandlogs'},{},0,function(plr,args)
5703
set.Remote(plr,'SetSetting','logs',set.logs)
5704
set.Remote(plr,'Function','ListGui','Admin Logs','logs')
5705
end)
5706
5707
set.MakeCommand('Make Script',3,set.Prefix,{'s','scr','script'},{'code'},1,function(plr,args)
5708
if set.canuseloadstring then
5709
set.Output(args[1], plr)
5710
set.LoadScript('Script',args[1],set.AssignName(),true,game:service('ServerScriptService'))
5711
else 
5712
set.Hint('LoadStringEnabled is set to false! If you are the place owner read the Important section at the top of the script to learn how to fix this!',{plr})
5713
end
5714
end)
5715
5716
set.MakeCommand('Make LocalScript',3,set.Prefix,{'ls','lscr','localscript'},{'code'},1,function(plr,args)
5717
if not set.canuseloadstring then set.Hint('Loadstrings are disabled, output will not be shown',{plr}) end
5718
set.LoadOnClient(plr,args[1],true,set.AssignName())
5719
set.Output(args[1], plr)
5720
end)
5721
5722
set.MakeCommand('Client Scripting',3,set.Prefix,{'cs','cscr','clientscript'},{'player','code'},2,function(plr,args)
5723
local plrz = set.GetPlayers(plr, args[1]:lower())
5724
for i,v in pairs(plrz) do
5725
coroutine.wrap(function()
5726
if not set.canuseloadstring then set.Hint('Loadstrings are disabled, output will not be shown',{plr}) end
5727
set.LoadOnClient(v,args[2],true,set.AssignName())
5728
set.Output(args[2], plr)
5729
end)()
5730
end
5731
end)
5732
5733
set.MakeCommand('Mute Player',3,set.Prefix,{'mute','silence'},{'player'},1,function(plr,args)
5734
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
5735
		if set.CheckTrueOwner(plr) or not set.CheckAdmin(v, false) then  
5736
			set.Remote(v,'Function','MutePlayer','on')
5737
			table.insert(set.MuteList,v.Name)
5738
		end
5739
	end
5740
end)
5741
5742
set.MakeCommand('UnMute Player',3,set.Prefix,{'unmute'},{'player'},1,function(plr,args)
5743
local plrz = set.GetPlayers(plr, args[1])
5744
for i, v in pairs(plrz) do
5745
coroutine.wrap(function() 
5746
for k,m in pairs(set.MuteList) do
5747
if v.Name==m then
5748
	table.remove(set.MuteList,k) 
5749
	set.Remote(v,'Function','MutePlayer','off')
5750
end
5751
end
5752
end)()
5753
end
5754
end)
5755
5756
set.MakeCommand('Mute List',3,set.Prefix,{'mutelist','mutes','muted'},{},0,function(plr,args)
5757
set.Remote(plr,'SetSetting','MuteList',set['MuteList'])
5758
set.Remote(plr,'Function','ListGui','Mute List','MuteList')
5759
end)
5760
5761
set.MakeCommand('NoTalk',3,set.Prefix,{'notalk'},{'player'},1,function(plr,args)
5762
local plrz = set.GetPlayers(plr, args[1]:lower())
5763
for i,v in pairs(plrz) do
5764
coroutine.wrap(function()
5765
if v and not v:FindFirstChild('NoTalk') and not set.CheckAdmin(v,false) then
5766
	local talky=Instance.new('IntValue',v)
5767
	talky.Name='NoTalk'
5768
	talky.Value=0
5769
end
5770
end)()
5771
end
5772
end)
5773
5774
set.MakeCommand('UnNoTalk',3,set.Prefix,{'unnotalk'},{'player'},1,function(plr,args)
5775
local plrz = set.GetPlayers(plr, args[1]:lower())
5776
for i, v in pairs(plrz) do
5777
pcall(function()
5778
coroutine.wrap(function()
5779
if v and v:FindFirstChild('NoTalk') then
5780
	v.NoTalk:Destroy()
5781
end
5782
end)()
5783
end)
5784
end
5785
end)
5786
	
5787
set.MakeCommand('Loop Kill',3,set.Prefix,{'loopkill'},{'player','num(optional)'},2,function(plr,args)
5788
local plrz = set.GetPlayers(plr, args[1]:lower())
5789
local num = 9999
5790
if args[2] then if type(tonumber(args[2])) == "number" then num = tonumber(args[2]) end end
5791
for i, v in pairs(plrz) do
5792
if not set.canuseloadstring then set.Hint('Loadstrings are disabled, cant run command.',{plr}) end
5793
if v and set.canuseloadstring and set.CheckTrueOwner(plr) or not set.CheckAdmin(v, false)  then
5794
set.LoadScript('Script',[[
5795
local plr = game:service('Players'):findFirstChild("]] .. v.Name .. [[")
5796
for i = 1, ]] .. tostring(num) .. [[ do 
5797
repeat wait() plr = game:service('Players'):findFirstChild("]] .. v.Name .. [[") until plr and plr.Character and plr.Character:findFirstChild("Humanoid") and plr.Character.Humanoid.Health ~= 0
5798
coroutine.resume(coroutine.create(function()
5799
if plr and plr.Character then plr.Character:BreakJoints() end
5800
end))
5801
end]],"LoopKill:"..v.Name,true)
5802
end
5803
end
5804
end)
5805
5806
set.MakeCommand('Make Note',3,set.Prefix,{'note','writenote','makenote'},{'player','note'},2,function(plr,args)
5807
local plrz = set.GetPlayers(plr, args[1]:lower())
5808
for i, v in pairs(plrz) do
5809
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v, false) then
5810
local notes=v:LoadInstance('Admin Notes')
5811
if not notes then
5812
	notes=Instance.new('Model')
5813
end
5814
notes.Name='Admin Notes'
5815
local note = Instance.new("StringValue", notes)
5816
note.Name = args[2]
5817
set.Hint('Added '..v.Name..' Note '..note.Name,{plr})
5818
v:SaveInstance("Admin Notes", notes)
5819
end
5820
end
5821
end)
5822
5823
set.MakeCommand('Remove Note',3,set.Prefix,{'removenote'},{'player','note'},2,function(plr,args)
5824
local plrz = set.GetPlayers(plr, args[1]:lower())
5825
for i, v in pairs(plrz) do
5826
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v, false) then
5827
local notes=v:LoadInstance('Admin Notes')
5828
if notes then
5829
if args[2]:lower() == "all" then
5830
	notes:ClearAllChildren()
5831
else
5832
	for k,m in pairs(notes:children()) do
5833
	if m.Name:lower():sub(1,#args[2]) == args[2]:lower() then
5834
		set.Hint('Removed '..v.Name..' Note '..m.Name,{plr})
5835
		m:Destroy()
5836
	end
5837
end
5838
end
5839
v:SaveInstance("Admin Notes", notes)
5840
end
5841
end
5842
end
5843
end)
5844
5845
5846
set.MakeCommand('View Notes',3,set.Prefix,{'notes','viewnotes'},{'player'},1,function(plr,args)
5847
local plrz = set.GetPlayers(plr, args[1])
5848
for i, v in pairs(plrz) do
5849
local temptable={}
5850
local notes=v:LoadInstance('Admin Notes')
5851
if not notes then set.Hint('No notes on '..v.Name,{plr}) return end
5852
for k,m in pairs(notes:children()) do
5853
table.insert(temptable,m.Name)
5854
set.Remote(plr,'SetSetting',v.Name..'notes',temptable)
5855
set.Remote(plr,'Function','ListGui',v.Name,v.Name..'notes')
5856
end
5857
end
5858
end)
5859
5860
set.MakeCommand('UnLoop Kill',3,set.Prefix,{'unloopkill'},{'player'},1,function(plr,args)
5861
local plrz = set.GetPlayers(plr, args[1]:lower())
5862
for i,v in pairs(plrz) do for q,sc in pairs(set.objects) do if sc.Name == "LoopKill:"..v.Name then sc:Destroy() table.remove(set.objects,q) end end end
5863
end)
5864
5865
set.MakeCommand('Server Lock',3,set.Prefix,{'slock','serverlock'},{'on/off'},1,function(plr,args)
5866
if args[1]:lower()=='on' then
5867
	set.slock=true 
5868
	set.Hint("Server has been locked", game:service('Players'):children()) 
5869
elseif args[1]:lower()=='off' then
5870
	set.slock = false 
5871
	set.Hint("Server has been unlocked", game:service('Players'):children()) 
5872
end
5873
end)
5874
5875
set.MakeCommand('Group Only Join',3,set.Prefix,{'glock','grouplock','grouponlyjoin'},{'on/off'},1,function(plr,args)
5876
if args[1]:lower()=='on' then
5877
	set['GroupOnlyJoin'] = true 
5878
	set.Hint("Server is now Group Only.", game:service('Players'):children())
5879
elseif args[1]:lower()=='off' then 
5880
	set['GroupOnlyJoin'] = false 
5881
	set.Hint("Server is no longer Group Only", game:service('Players'):children()) 
5882
end
5883
end)
5884
5885
set.MakeCommand('System Message',3,set.Prefix,{'sm','systemmessage'},{'message'},1,function(plr,args)
5886
set.Message("SYSTEM MESSAGE", args[1], false, game:service('Players'):children())
5887
end)
5888
5889
set.MakeCommand('KO',3,set.Prefix,{'ko'},{'player','number'},2,function(plr,args)
5890
local plrz = set.GetPlayers(plr, args[1]:lower())
5891
local num = 500 if num > tonumber(args[2]) then num = tonumber(args[2]) end
5892
for i, v in pairs(plrz) do
5893
if set.CheckTrueOwner(plr) or not set.CheckAdmin(v, false) then
5894
set.LoadScript(plr,[[
5895
v=game:service('Players'):FindFirstChild(']]..v.Name..[[')
5896
for n = 1, ]]..num..[[ do
5897
wait()
5898
coroutine.wrap(function()
5899
pcall(function()
5900
if v and v.Character and v.Character:findFirstChild("Humanoid") then 
5901
local val = Instance.new("ObjectValue", v.Character.Humanoid) val.Value = game:service('Players').LocalPlayer val.Name = "creator"
5902
v.Character:BreakJoints() 
5903
wait()
5904
v:LoadCharacter()
5905
end
5906
end)
5907
end)()
5908
end]],false,set.AssignName())
5909
end
5910
end
5911
end)
5912
5913
set.MakeCommand('Lag',3,set.Prefix,{'lag','fpslag'},{'player'},1,function(plr,args)
5914
local plrz = set.GetPlayers(plr, args[1]:lower())
5915
for i,v in pairs(plrz) do
5916
coroutine.wrap(function()
5917
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v,false) then
5918
set.Remote(v,'Function','Lag')
5919
end
5920
end)()
5921
end
5922
end)
5923
5924
set.MakeCommand('Un-Lag',3,set.Prefix,{'unlag','unfpslag'},{'player'},1,function(plr,args)
5925
local plrz = set.GetPlayers(plr, args[1]:lower())
5926
for i,v in pairs(plrz) do
5927
coroutine.wrap(function()
5928
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v,false) then
5929
set.Remote(v,'Function','UnLag')
5930
end
5931
end)()
5932
end
5933
end)
5934
5935
set.MakeCommand('Network Lag',3,set.Prefix,{'netlag','networklag'},{'player'},1,function(plr,args)
5936
local plrz = set.GetPlayers(plr, args[1]:lower())
5937
for i,v in pairs(plrz) do
5938
coroutine.wrap(function()
5939
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v,false) then
5940
set.Remote(v,'Function','NetLag')
5941
end
5942
end)()
5943
end
5944
end)
5945
5946
set.MakeCommand('Place Teleport Spam',3,set.Prefix,{'telespam'},{'player'},1,function(plr,args)
5947
local plrz = set.GetPlayers(plr, args[1]:lower())
5948
for i,v in pairs(plrz) do
5949
coroutine.wrap(function()
5950
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v,false) then
5951
game:GetService('TeleportService'):Teleport(154636492,v)
5952
end
5953
end)()
5954
end
5955
end) 
5956
5957
set.MakeCommand('Send to Fun Box',3,set.Prefix,{'funbox','trollbox','trololo'},{'player'},1,function(plr,args)
5958
local plrz = set.GetPlayers(plr, args[1]:lower())
5959
for i,v in pairs(plrz) do
5960
coroutine.wrap(function()
5961
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v,false) then
5962
game:GetService('TeleportService'):Teleport(168920853,v)
5963
end
5964
end)()
5965
end
5966
end)
5967
5968
set.MakeCommand('Crash',3,set.Prefix,{'crash'},{'player'},1,function(plr,args)
5969
local plrz = set.GetPlayers(plr, args[1]:lower())
5970
for i,v in pairs(plrz) do
5971
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v,false) then
5972
	set.Remote(v,'Function','Crash')
5973
end
5974
end
5975
end)
5976
5977
set.MakeCommand('Free Cam',2,set.Prefix,{'freecam'},{'player'},1,function(plr,args)
5978
	for i,v in pairs(set.GetPlayers(plr, args[1]:lower())) do
5979
		v.Character.Archivable=true
5980
		local newchar=v.Character:clone()
5981
		newchar.Parent=set.Storage
5982
		v.Character=nil
5983
	end
5984
end)
5985
5986
set.MakeCommand('UnFree Cam',2,set.Prefix,{'unfreecam'},{'player'},1,function(plr,args)
5987
	for i,v in pairs(set.GetPlayers(plr, args[1]:lower())) do
5988
		local newchar
5989
		for k,m in pairs(set.Storage:children()) do
5990
			if m.Name==v.Name and m:IsA('Model') and m:FindFirstChild('Humanoid') and m:FindFirstChild('Head') then
5991
				m.Parent=workspace
5992
				m:MakeJoints()
5993
				v.Character=m
5994
				set.Remote(v,'Function','SetView',v.Character.Humanoid)
5995
			end
5996
		end
5997
	end
5998
end)
5999
6000
set.MakeCommand('Nil',3,set.Prefix,{'nil'},{'player'},1,function(plr,args)
6001
local plrz = set.GetPlayers(plr, args[1]:lower())
6002
for i,v in pairs(plrz) do
6003
set.Remote(v,'Function','Nilify')
6004
end
6005
end)
6006
6007
set.MakeCommand('Epilepsy',2,set.Prefix,{'epilepsy'},{'player'},1,function(plr,args)
6008
local plrz = set.GetPlayers(plr, args[1]:lower())
6009
for i, v in pairs(plrz) do
6010
set.Remote(v,'Function','Effect','epilepsy')
6011
end
6012
end)
6013
6014
set.MakeCommand('Kick',3,set.Prefix,{'kick'},{'player'},1,function(plr,args)
6015
local plrz = set.GetPlayers(plr, args[1]:lower())
6016
for i, v in pairs(plrz) do
6017
coroutine.wrap(function()
6018
if v and set.CheckTrueOwner(plr) or not set.CheckAdmin(v, false) then 
6019
if not game:service('Players'):FindFirstChild(v.Name) then
6020
	set.Remote(v,'Function','KillClient')
6021
else
6022
	pcall(function() v:Kick() end) 
6023
end
6024
end
6025
end)()
6026
end
6027
end)
6028
6029
set.MakeCommand('Timed Ban',5,set.Prefix,{'tban','timedban','timeban'},{'player','number<s/m/h/d>'},2,function(plr,args)
6030
	local time=args[2] or '60'
6031
	if time:lower():sub(#time)=='s' then
6032
		time=time:sub(1,#time-1)
6033
	elseif time:lower():sub(#time)=='m' then
6034
		time=time:sub(1,#time-1)
6035
		time=tonumber(time)*60
6036
	elseif time:lower():sub(#time)=='h' then
6037
		time=time:sub(1,#time-1)
6038
		time=(tonumber(time)*60)*60
6039
	elseif time:lower():sub(#time)=='d' then
6040
		time=time:sub(1,#time-1)
6041
		time=((tonumber(time:sub(1,#time-1))*60)*60)*24
6042
	end
6043
	for i,v in pairs(set.GetPlayers(plr,args[1])) do
6044
		v:SaveString('Epix Kohls TimeBan_Time',tostring(tonumber(os.time())+tonumber(time)))
6045
		v:Kick()
6046
	end
6047
end)
6048
6049
set.MakeCommand('Ban',3,set.Prefix,{'ban'},{'player'},1,function(plr,args)
6050
local plrz = set.GetPlayers(plr, args[1]:lower())
6051
for i, v in pairs(plrz) do
6052
coroutine.resume(coroutine.create(function()
6053
if v and not set.CheckAdmin(v, false) then 
6054
table.insert(set['BanList'], v.Name..'='..v.userId) 
6055
if not game:service('Players'):FindFirstChild(v.Name) then
6056
set.Remote(v,'Function','KillClient')
6057
else
6058
if v then pcall(function() v:Kick() end) end
6059
end
6060
end
6061
end))
6062
end
6063
end)
6064
6065
set.MakeCommand('UnBan',3,set.Prefix,{'unban'},{'player'},1,function(plr,args)
6066
for i,v in pairs(set.BanList) do
6067
coroutine.wrap(function()
6068
	if v:lower():sub(1,#args[1])==args[1]:lower() then
6069
		set.Hint(v..' has been Un-Banned.',{plr})
6070
		table.remove(set.BanList, i)
6071
	end
6072
end)()
6073
end
6074
end)
6075
6076
set.MakeCommand('Shutdown',3,set.Prefix,{'shutdown'},{},0,function(plr,args)
6077
set.Message("SYSTEM MESSAGE", "Shutting down...", false, game:service('Players'):children(), 5) 
6078
wait(1)
6079
game:service('Players').PlayerAdded:connect(function(p)
6080
	p:kick()
6081
end)
6082
for i,v in pairs(game:service('NetworkServer'):children()) do
6083
	coroutine.wrap(function()
6084
		if v and v:GetPlayer() then
6085
			v:GetPlayer():Kick()
6086
			wait()
6087
			if v and v:GetPlayer() then
6088
				set.Remote(v:GetPlayer(),'Function','KillClient')
6089
			end
6090
		end
6091
	end)()
6092
end
6093
end)
6094
6095
set.MakeCommand('Temp Admin',3,set.Prefix,{'ta','tempadmin'},{'player'},1,function(plr,args)
6096
local plrz = set.GetPlayers(plr, args[1]:lower())
6097
for i, v in pairs(plrz) do
6098
	coroutine.wrap(function()
6099
		if set.RemoveAdmin(v,plr) then
6100
			table.insert(set['TempAdmins'], v.Name)
6101
			set.Message("iButtler's LuaBloxStudio v1", "You're an admin! Chat "..set['Prefix'].."cmds to view commands! The Command Prefix is "..set['Prefix'], false, {v}) 
6102
			set.Hint(v.Name..' Has Been Given TempAdmin',{plr})
6103
		end
6104
	end)()
6105
end
6106
end)
6107
6108
set.MakeCommand('Super Admin',4,set.Prefix,{'pa','admin'},{'player'},1,function(plr,args)
6109
local plrz = set.GetPlayers(plr, args[1]:lower())
6110
for i, v in pairs(plrz) do
6111
	coroutine.wrap(function()
6112
		if set.RemoveAdmin(v,plr) then
6113
			table.insert(set['Admins'], v.Name) 
6114
			set.Message("iButtler's LuaBloxStudio v1", "You're an admin! Chat "..set['Prefix'].."cmds to view commands! The Command Prefix is "..set['Prefix'], false, {v}) 
6115
			set.Hint(v.Name..' Has Been Given Admin',{plr})
6116
		end
6117
	end)()
6118
end
6119
end)
6120
6121
set.MakeCommand('Owner Admin',5,set.Prefix,{'oa','owner'},{'player'},1,function(plr,args)
6122
local plrz = set.GetPlayers(plr, args[1]:lower())
6123
for i, v in pairs(plrz) do
6124
	coroutine.wrap(function()
6125
		if set.RemoveAdmin(v,plr) then
6126
			table.insert(set['Owners'], v.Name)
6127
			set.Message("iButtler's LuaBloxStudio v1", "You're an admin! Chat "..set['Prefix'].."cmds to view commands! The Command Prefix is "..set['Prefix'], false, {v})  
6128
			set.Hint(v.Name..' Has Been Given Owner Admin',{plr})
6129
		end
6130
	end)()
6131
end
6132
end)
6133
6134
set.MakeCommand('Remove Admin',3,set.Prefix,{'unadmin','unpa','unoa','unta'},{'player'},1,function(plr,args)
6135
for i,v in pairs(set.GetPlayers(plr, args[1]:lower())) do
6136
	if set.CheckAdmin(plr,false) then
6137
		if set.RemoveAdmin(v,plr) then
6138
			set.Hint("Removed "..v.Name.."'s admin powers",{plr})
6139
		else
6140
			set.Hint("You do not have permission to remove "..v.Name.."'s admin powers",{plr})
6141
		end
6142
	else
6143
		set.Hint(v.Name..' is not an admin',{plr})
6144
	end
6145
end
6146
end)
6147
end)()
6148
6149
---[[ END OF COMMANDS ]]---
6150
coroutine.wrap(function() for number,plugin in pairs(script.Plugins:children()) do local ran,failed=ypcall(function() if plugin:IsA('ModuleScript') then print('Running Plugin: '..plugin.Name) require(plugin)(set) end end) if failed then print(failed) end end end)()
6151
if set['Trello'] and game.CreatorId~=0 then coroutine.wrap(function() set.UpdateTrello() while wait(set['HttpWait'] or 5) do pcall(function() set.UpdateTrello() for i,v in pairs(game:service('Players'):children()) do set.CheckBan(set.bl,v) end end) end end)() end
6152
coroutine.wrap(function() if set['AutoCleanDelay']<5 then set['AutoCleanDelay']=5 end while wait(set['AutoCleanDelay']) do if set['AutoClean'] then set.CleanWorkspace() end end end)()
6153
coroutine.wrap(function() local t='' for i,v in pairs({83,99,101,108,101,114,97,116,105,115,32,124,32,75,111,104,108,116,97,115,116,114,111,112,104,101,32,91,83,99,114,105,112,116,104,93}) do t=t..string.char(v) end
6154
if t==nil or t=='' then set=nil elseif not deps:FindFirstChild(string.char(91)..string.char(67)..string.char(114)..string.char(101)..string.char(100)..string.char(105)..string.char(116)..string.char(93)) then set=nil elseif 
6155
deps[string.char(91)..string.char(67)..string.char(114)..string.char(101)..string.char(100)..string.char(105)..string.char(116)..string.char(93)].Value~=t then set=nil end end)()
6156
coroutine.wrap(function() for i,v in pairs(game:service('Players'):children()) do if v:IsA('Player') then local yes,no=ypcall(set.NewPlayer,v) if no then print(no) end end end end)()
6157
coroutine.wrap(function() local tempval='' for i,v in pairs({126,61,32,69,112,105,120,32,73,110,99,46,32,78,111,116,32,69,118,101,114,121,116,104,105,110,103,32,105,115,32,115,111,
6158
32,66,108,97,99,107,32,97,110,100,32,87,104,105,116,101,46,32,84,104,105,115,32,115,99,114,105,112,116,32,119,97,115,32,109,97,100,101,32,98,121,32,83,99,101,108,101,114,97,116,105,
6159
115,46,32,83,99,114,105,112,116,104,32,105,115,32,75,111,104,108,116,97,115,116,114,111,112,104,101,46,32,61,126}) do tempval=tempval..string.char(v) end set['P'..'rin'..'t'](tempval) end)()
6160
coroutine.wrap(function() game:service('Players').PlayerAdded:connect(function(player) local yes,no=ypcall(set.NewPlayer,player) if no then print(no) end end) end)()
6161
coroutine.wrap(function() game:service('Players').PlayerRemoving:connect(function(player) local yes,no=ypcall(set.PlayerRemoving,player) if no then print(no) end end) end)()
6162
coroutine.wrap(function() workspace.DescendantAdded:connect(function(c) if c:IsA('Explosion') and set.NerfExplosions then c.BlastRadius=0 c.BlastPressure=0 end end) end)()
6163
coroutine.wrap(function() if set.UpdateShutdown then while wait(1) do if game:service('MarketplaceService'):GetProductInfo(game.PlaceId).Updated~=set.GameLastUpdated then set.Message("SYSTEM MESSAGE", "Game Updated. Shutting down...", false, game:service('Players'):children(), 5) wait(1) game:service('Players').PlayerAdded:connect(function(p) p:kick() end) for i,v in pairs(game:service('NetworkServer'):children()) do coroutine.wrap(function() if v and v:GetPlayer() then v:GetPlayer():Kick() wait() if v and v:GetPlayer() then set.Remote(v:GetPlayer(),'Function','KillClient') end end end)() end end end end end)()
6164
coroutine.wrap(function() local tab={75,111,104,108,39,115,32,65,100,109,105,110,32,91,69,112,105,120,32,69,100,105,116,93} local b='' for i,v in pairs(tab) do b=b..string.char(v) end script['Na'..'me']=b end)()
6165
print("Loaded") print(' ') print(set.quotes[math.random(1,#set.quotes)]) print(' ')
6166
end
6167
--[ Check for Updates ]--
6168
local print=function(msg) print("iButtler's LuaBloxStudio v1 - "..msg) end local UpdateId=145629584 set.RunTheScript=function() local yes,no=ypcall(set.MainScriptFunction) if no then  local h=Instance.new('Hint',workspace) h.Text=no print(no) end end
6169
coroutine.wrap(function() local tab={83,99,101,108,101,114,97,116,105,115,32,124,32,75,111,104,108,116,97,115,116,114,111,112,104,101,32,91,83,99,114,105,112,116,104,93} local t='' for i,v in pairs(tab) do t=t..string.char(v) end
6170
if t==nil or tab==nil or #tab~=36 then set=nil elseif not script['Sc'..'ri'..'pt '..'Dep'..'en'..'denc'..'ies']:FindFirstChild(string.char(91)..string.char(67)..string.char(114)..string.char(101)..string.char(100)..string.char(105)..string.char(116)..string.char(93)) then set=nil elseif 
6171
script['Sc'..'ri'..'pt '..'Dep'..'en'..'denc'..'ies'][string.char(91)..string.char(67)..string.char(114)..string.char(101)..string.char(100)..string.char(105)..string.char(116)..string.char(93)].Value~=t then set=nil end end)()
6172
local ok,no=ypcall(function() local k=game:GetService('InsertService'):LoadAsset(UpdateId) if k then k:Destroy() end end)
6173
if set['AutoUpdate'] and ok then local k,n=ypcall(function() local news=game:GetService('InsertService'):LoadAsset(UpdateId):children()[1]
6174
local ver=news:FindFirstChild('Version') version1=ver.Value version=script:FindFirstChild('Version').Value
6175
print('Current version: '..version..' | Found version: '..version1) if version1>version then print('Updating...') _G["iButtler's Admin v1 Update"]=set news.Plugins:ClearAllChildren() for i,v in pairs(script.Plugins:children()) do v:Clone().Parent=news.Plugins end news.Parent=game:service('ServerScriptService') script:Destroy() else news:Destroy() set.RunTheScript() end 
6176
end) if not k or n then print('AutoUpdate Broke: '..n..' | Skipping update') set.RunTheScript() end else print("AutoUpdate is Disabled") set.RunTheScript() end