Ir para conteúdo

Krl que skript foda #3


iVictor777z

Posts Recomendados

oie, hj vim trazer mais um skript simplesmente foda feito pelos gringos :3 hj é um COMPLETO de anti-cheat.

 

Informações:
 

Nome: SkCheat v1.0

Requer: Skript2.2

Ele previne contra os hacks:

- FastPlace

- Um hack q n sei o nome mas ele quebra liquidos (agua e lava)

- Reach

- ForceField

- Fast Click

- Fast Bow

- Fly (Se ele estiver com o efeito de gm nem fly, pois ele mexe com velocity :)) (CASO COPIEM O SKRIPT DE "FLY" SABEREMOS DE ONDE KAKA)

- Jesus

- Spam

- Sneak

- Spam (NÃO DA CONFLITO COM SEU SISTEMA DE CHAT)

- Auto-Build

- Fast Drop

 

Então, agora que já sabem as informações e tal, infelizmente não tem prints no fórum. Então vamos pro código logo... Se preparem, é enorme!

 

 

 

#SkCheat v1.0 - KevinDoesMC

#Currently keeps 30 variables per player and are all cleared when server loads/unloads skript or player joins/leaves. (Some aren't turned on until they were detected with hacks.)

#Found/Prevented Hacks:

#1. Fast Place (Catches really well.)
#2. Breaking of Liquid (Water and Lava)
#3. Reach (Blocks and Players)
#4. Forcefield (Works best if they are surrounded by mobs/players)
#5. Fast Click (Catches Nuker as well.)
#6. Fast Bow (Works amazingly. They'll be kicked as soon as they start.)
#7. Fly (Doesn't work if they have jump boost or are in creative mode. I tried to add support, but it ended up making the detection crappy.)
#8. Jesus (Same as fly mode's explanation.)
#9. Spam (Doesn't conflict with your chat system.)
#10. Sneak (Works if they trigger some events.)
#11. Auto-Build (Should catch it before finishing the building.)
#12. Fast Drop (Prevents rapid dropping.)

options:

	#! Don't want to detect a hack? Set the value to false. (IDs above) This is useful if your server doesn't have placing and what not.
	Detect.1: true
	Detect.2: true
	Detect.3: true
	Detect.4: true
	Detect.5: true
	Detect.6: true
	Detect.7: true
	Detect.8: true
	Detect.9: true
	Detect.10: true
	Detect.11: true
	Detect.12: true
	
	#! Decide whether to send warnings if a player is hacking to staff.
	TellStaff: true

command /anti-cheat:
	aliases: a-c
	trigger:
		send "&f&lAnti-Cheat &7> Made by KevinDoesMC."	
#1
on place:
	if {@Detect.1} is true:
		if difference between {SkCheat::fastplace.n::%uuid of player%} and now is less than 1 tick:
			cancel event
			add 1 to {SkCheat::fastplace.p::%uuid of player%}
			if {SkCheat.fastplace.notify::%uuid of player%} is not set:
				set {SkCheat.fastplace.notify::%uuid of player%} to now
			if {SkCheat::fastplace.p::%uuid of player%} is greater than 10:
				kick the player due to "&f&lAnti-Cheat &7> &fYou were using fast place."
				clear {SkCheat::fastplace.p::%uuid of player%}
				stop
			else if {SkCheat::fastplace.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.fastplace.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% might be fast place hacking." to loop-player
								set {SkCheat.fastplace.notify::%uuid of player%} to now
		set {SkCheat::fastplace.n::%uuid of player%} to now
		wait 5 seconds
		if {SkCheat::fastplace.p::%uuid of player%} is more than 0:
			remove 1 from {SkCheat::fastplace.p::%uuid of player%}	
#2
on break:
	if {@Detect.2} is true:
		if event-block is lava or water:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they broke liquid." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou broke a liquid."	
#3
on damage:
	if {@Detect.3} is true:
		attacker is a player
		if attacker's gamemode is not creative:
			if distance between attacker and victim is greater than 5:
				if {SkCheat.reach.notify::%uuid of attacker%} is not set:
					set {SkCheat.reach.notify::%uuid of attacker%} to now
				if {SkCheat::reach.p::%uuid of attacker%} is greater than 4:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%attacker% was kicked because they were using reach." to loop-player
					kick the attacker due to "&f&lAnti-Cheat &7> &fYou were using reach."
					clear {SkCheat::reach.p::%uuid of attacker%}
				else if {SkCheat::reach.p::%uuid of attacker%} is greater than 2:
					if difference between {SkCheat.reach.notify::%uuid of attacker%} and now is more than 1 second:
						if {@TellStaff} is true:
							loop all players:
								if attacker has permission "SkCheat.Staff":
									send "&f&lAnti-Cheat &7> &f%attacker% might be using reach." to loop-player
									set {SkCheat.reach.notify::%uuid of attacker%} to now
				wait 5 seconds
				if {SkCheat::reach.p::%uuid of attacker%} is more than 0:
					remove 1 from {SkCheat::reach.p::%uuid of attacker%}
on block damage:
	if {@Detect.3} is true:
		if player's gamemode is not creative:
			if distance between player and event-block is greater than 5:
				if {SkCheat.reach.notify::%uuid of player%} is not set:
					set {SkCheat.reach.notify::%uuid of player%} to now
				if {SkCheat::reach.p::%uuid of player%} is greater than 4:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using reach." to loop-player
					kick the player due to "&f&lAnti-Cheat &7> &fYou were using reach."
					clear {SkCheat::reach.p::%uuid of player%}
				else if {SkCheat::reach.p::%uuid of player%} is greater than 2:
					if difference between {SkCheat.reach.notify::%uuid of player%} and now is more than 1 second:
						if {@TellStaff} is true:
							loop all players:
								if loop-player has permission "SkCheat.Staff":
									send "&f&lAnti-Cheat &7> &f%player% might be using reach." to loop-player
									set {SkCheat.reach.notify::%uuid of player%} to now
				wait 5 seconds
				if {SkCheat::reach.p::%uuid of player%} is more than 0:
					remove 1 from {SkCheat::reach.p::%uuid of player%}	
#4
on damage:
	if {@Detect.4} is true:
		if difference between {SkCheat::forcefield::t::%uuid of attacker%} and now is {SkCheat::forcefield::t.::%uuid of attacker%}:
			set {_sametime} to true
		set {SkCheat::forcefield::t.::%uuid of attacker%} to difference between {SkCheat::forcefield::t::%uuid of attacker%} and now
		set {SkCheat::forcefield::t::%uuid of attacker%} to now
		attacker is a player
		projectile doesn't exist
		attacker is not victim
		set {_target} to attacker's target entity
		if {_sametime} is true:
			set {_hacks} to true
		if {_target} is not set:
			set {_hacks} to true
		else if {_target} is not victim:
			set {_hacks} to true
		if {_hacks} is true:
			cancel event
			add 1 to {SkCheat::forcefield.p::%uuid of attacker%}
			if {SkCheat.forcefield.notify::%uuid of attacker%} is not set:
				set {SkCheat.forcefield.notify::%uuid of attacker%} to now
			if {SkCheat::forcefield.p::%uuid of attacker%} is greater than 6:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%attacker% was kicked because they were using a forcefield or kill aura." to loop-player
				kick the attacker due to "&f&lAnti-Cheat &7> &fYou were using forcefield."
				clear {SkCheat::forcefield.p::%uuid of attacker%}
			else if {SkCheat::forcefield.p::%uuid of attacker%} is greater than 4:
				if difference between {SkCheat.forcefield.notify::%uuid of attacker%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if attacker has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%attacker% might be using forcefield." to loop-player
								set {SkCheat.forcefield.notify::%uuid of attacker%} to now
			wait 5 seconds
			if {SkCheat::forcefield.p::%uuid of attacker%} is more than 0:
				remove 1 from {SkCheat::forcefield.p::%uuid of attacker%}
#5
on left click:
	if {@Detect.5} is true:
		player is a player
		if difference between {SkCheat::clicker.n::%uuid of player%} and now is less than 1.8 ticks:
			cancel event
			add 1 to {SkCheat::clicker.p::%uuid of player%}
			if {SkCheat.clicker.notify::%uuid of player%} is not set:
				set {SkCheat.clicker.notify::%uuid of player%} to now
			if {SkCheat::clicker.p::%uuid of player%} is greater than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using fast click." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were using clicker."
				clear {SkCheat::clicker.p::%uuid of player%}
			else if {SkCheat::clicker.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.clicker.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% might be using clicker." to loop-player
								set {SkCheat.clicker.notify::%uuid of player%} to now
			wait 5 seconds
			if {SkCheat::clicker.p::%uuid of player%} is more than 0:
				remove 1 from {SkCheat::clicker.p::%uuid of player%}
		set {SkCheat::clicker.n::%uuid of player%} to now	
#6
on shoot:
	if {@Detect.6} is true:
		if difference between {SkCheat::bow.n::%uuid of shooter%} and now is less than 0.97 ticks:
			cancel event
			add 1 to {SkCheat::bow.p::%uuid of shooter%}
			if {SkCheat.bow.notify::%uuid of shooter%} is not set:
				set {SkCheat.bow.notify::%uuid of shooter%} to now
			if {SkCheat::bow.p::%uuid of shooter%} is greater than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%shooter% was kicked because they were using rapid fire." to loop-player
				kick the shooter due to "&f&lAnti-Cheat &7> &fYou were using rapid fire."
				clear {SkCheat::bow.p::%uuid of shooter%}
			else if {SkCheat::bow.p::%uuid of shooter%} is greater than 2:
				if difference between {SkCheat.bow.notify::%uuid of shooter%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if shooter has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%shooter% might be using rapid fire." to loop-player
								set {SkCheat.bow.notify::%uuid of shooter%} to now
			wait 5 seconds
			if {SkCheat::bow.p::%uuid of shooter%} is more than 0:
				remove 1 from {SkCheat::bow.p::%uuid of shooter%}
		set {SkCheat::bow.n::%uuid of shooter%} to now	
#7 & 8
on any movement:
	if player's gamemode is not creative:
		if player's fly mode is not true:
			if {@Detect.7} is true:
				if block 0.1 below the player is air:
					if {SkCheat::fly.b::%uuid of player%} is set:
						set {_y} to y coordinate of location of player
						set {_ry} to rounded up {_y}
						set {_check} to "%{_ry}-{_y}%"
						if player doesn't have jump boost:
							if {_check} is not "0.47" or "0.45" or "0.63" or "0.72" or "0.2" or "0.18" or "0.68" or "0.6" or "0.3" or "0.38" or "0.87" or "0.94" or "0.77" or "0.55" or "0.8" or "0.69" or "0.97" or "0.81" or "0.74" or "0.82" or "0.85" or "0.62" or "0.61" or "0.79" or "0.53" or "0.66" or "0.88" or "0.42" or "0.39" or "0.44" or "0.57" or "0.64" or "0.02" or "0.84" or "0.9" or "0.52" or "0.48" or "0.51" or "0.49" or "0.43" or "0.23" or "0.11" or "0.07" or "0.12" or "0.24" or "0.43" or "0.7" or "0.36" or "0.17" or "0.06" or "0.04" or "0.09" or "0.14" or "0.86" or "0.67" or "0.56" or "0.54" or "0.59" or "0.73" or "0.9" or "0.58" or "0.34" or "0.21" or "0.08" or "0.48" or "0.71" or "0.5" or "0.75" or "0.83" or "0" or "1" or "0.33" or "0.25" or "0.46" or "0.98":
								if {SkCheat::fly.b::%uuid of player%} is less than {_y}:
									add 1 to {SkCheat::fly.p::%uuid of player%}
									set {_found} to true
								if {_y} is {SkCheat::fly.b::%uuid of player%}:
									if {_check} is not "0.21" or "0.98" or "0.9" or "1" or "0.83" or "0.58" or "0.75" or "0.74" or "0.25" or "0.5" or "0":
										add 1 to {SkCheat::fly.p::%uuid of player%}
										set {_found} to true
							if {_found} is true:
								if {SkCheat.fly.notify::%uuid of player%} is not set:
									set {SkCheat.fly.notify::%uuid of player%} to now
								if {SkCheat::fly.p::%uuid of player%} is greater than 4:
									if {@TellStaff} is true:
										loop all players:
											if loop-player has permission "SkCheat.Staff":
												send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using flying." to loop-player
									kick the player due to "&f&lAnti-Cheat &7> &fYou were flying."
									clear {SkCheat::fly.p::%uuid of player%}
									stop
								else if {SkCheat::fly.p::%uuid of player%} is greater than 2:
									if difference between {SkCheat.fly.notify::%uuid of player%} and now is more than 1 second:
										if {@TellStaff} is true:
											loop all players:
												if loop-player has permission "SkCheat.Staff":
													send "&f&lAnti-Cheat &7> &f%player% might be flying." to loop-player
													set {SkCheat.fly.notify::%uuid of player%} to now
								wait 5 seconds
								if {SkCheat::fly.p::%uuid of player%} is more than 0:
									remove 1 from {SkCheat::fly.p::%uuid of player%}
			if {@Detect.8} is true:
				if block 0.25 below the player or block 1 below the player or block 0.5 below the player or block 0.75 below the player is water:
					if block 0.25 above the player is air:
						set {_y} to y coordinate of location of player
						set {_ry} to rounded up {_y}
						set {_check} to "%{_ry}-{_y}%"
						if {_check} is not "0.16" or "0.12" or "0.1" or "0.04" or "0.93" or "0.78" or "0.61" or "0.96" or "0.19" or "0.24" or "0.54" or "0.76" or "0.02" or "0.86" or "0.44" or "0.47" or "0.14" or "0.07" or "0.68" or "0.64" or "0.85" or "0.15" or "0.48" or "0.06" or "0.49" or "0.62" or "0.43" or "0.13" or "0.84" or "0.51" or "0.69" or "0.74" or "0.75" or "0.58" or "1" or "0.57" or "0.7" or "0.21" or "0.97" or "0.81" or "0.77" or "0.22" or "0.03" or "0.91" or "0.08" or "0.79" or "0.18" or "0.98" or "0.83" or "0.82" or "0.2" or "0.46" or "0.42" or "0.77" or "0.65" or "0.66" or "0.92" or "0.71" or "0.88" or "0.67" or "0.6" or "0.55" or "0.52" or "0.9" or "0.23" or "0.5" or "0.53" or "0.56" or "0.25":
							if {_check} is "0":
								set {_x} to rounded down x coordinate of location of player-1
								set {_y} to rounded down y coordinate of location of player
								set {_z} to rounded down z coordinate of location of player-1
								set {_loc} to location at {_x}, {_y}, {_z} in player's world
								if block at {_loc} is not water:
									set {_failed} to true
							if {_failed} is not set:
								add 1 to {SkCheat::jesus.d::%uuid of player%}
								if {SkCheat::jesus.d::%uuid of player%} is more than 0:
									clear {SkCheat::jesus.d::%uuid of player%}
									if block 0.05 above the player is air:
										add 1 to {SkCheat::jesus.p::%uuid of player%}
										if {SkCheat.jesus.notify::%uuid of player%} is not set:
											set {SkCheat.jesus.notify::%uuid of player%} to now
										if {SkCheat::jesus.p::%uuid of player%} is greater than 3:
											if {@TellStaff} is true:
												loop all players:
													if loop-player has permission "SkCheat.Staff":
														send "&f&lAnti-Cheat &7> &f%player% was kicked because they were walking on water." to loop-player
											kick the player due to "&f&lAnti-Cheat &7> &fYou were using jesus."
											clear {SkCheat::jesus.p::%uuid of player%}
										else if {SkCheat::jesus.p::%uuid of player%} is greater than 2:
											if difference between {SkCheat.jesus.notify::%uuid of player%} and now is more than 1 second:
												if {@TellStaff} is true:
													loop all players:
														if loop-player has permission "SkCheat.Staff":
															send "&f&lAnti-Cheat &7> &f%player% might be using jesus." to loop-player
															set {SkCheat.jesus.notify::%uuid of player%} to now
										wait 10 seconds
										if {SkCheat::jesus.p::%uuid of player%} is more than 0:
											remove 1 from {SkCheat::jesus.p::%uuid of player%}
					else:
						wait 2 seconds
						if {SkCheat::jesus.d::%uuid of player%} is more than 0:
							remove 1 from {SkCheat::jesus.d::%uuid of player%}
				set {SkCheat::fly.b::%uuid of player%} to y coordinate of location of player
#9
on chat:
	if {SkCheat::spam.m::%uuid of player%} is message:
		cancel event
		add 1 to {SkCheat::spam.p::%uuid of player%}
		send "&f&lAnti-Cheat &7> &fPlease do not send the same message twice."
		if {SkCheat.spam.notify::%uuid of player%} is not set:
			set {SkCheat.spam.notify::%uuid of player%} to now
		if {SkCheat::spam.p::%uuid of player%} is greater than 4:
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were spamming." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were spamming."
			clear {SkCheat::spam.p::%uuid of player%}
		else if {SkCheat::spam.p::%uuid of player%} is greater than 2:
			if difference between {SkCheat.spam.notify::%uuid of player%} and now is more than 1 second:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% is attempting to spam." to loop-player
							set {SkCheat.spam.notify::%uuid of player%} to now
		wait 3 seconds
		if {SkCheat::spam.p::%uuid of player%} is more than 0:
			remove 1 from {SkCheat::spam.p::%uuid of player%}
	else:
		set {SkCheat::spam.m::%uuid of player%} to message			
#10
on chat:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on command:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on inventory click:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on sprint toggle:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on sign edit:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on inventory close:
	if {@Detect.10} is true:
		if player is sneaking:
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."		
#11
on place:
	if {@Detect.11} is true:
		if location of event-block is not location of targeted block:
			cancel event
			if {SkCheat.build.notify::%uuid of player%} is not set:
				set {SkCheat.build.notify::%uuid of player%} to now
			add 1 to {SkCheat::build.p::%uuid of player%}
			if {SkCheat::build.p::%uuid of player%} is more than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using auto-build." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were auto-building."
				clear {SkCheat::build.p::%uuid of player%}
			else if {SkCheat::build.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.build.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% is attempting to auto-build." to loop-player
								set {SkCheat.build.notify::%uuid of player%} to now
			else:
				wait 3 seconds
				if {SkCheat::build.p::%uuid of player%} is more than 0:
					remove 1 from {SkCheat::build.p::%uuid of player%}				
#12
on drop:
	if {@Detect.12} is true:
		if difference between {SkCheat::drop.n::%uuid of player%} and now is less than 1 tick:
			cancel event
			add 1 to {SkCheat::drop.p::%uuid of player%}
			if {SkCheat.drop.notify::%uuid of player%} is not set:
				set {SkCheat.drop.notify::%uuid of player%} to now
			if {SkCheat::drop.p::%uuid of player%} is greater than 5:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were quick dropping." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were quick dropping."
			else if {SkCheat::drop.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.drop.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% is attempting to drop too fast." to loop-player
								set {SkCheat.drop.notify::%uuid of player%} to now
			set {SkCheat::drop.n::%uuid of player%} to now
			wait 5 seconds
			if {SkCheat::drop.p::%uuid of player%} is more than 0:
				remove 1 from {SkCheat::drop.p::%uuid of player%}
	else:
		set {SkCheat::drop.n::%uuid of player%} to now
#Cleaning up of variables
on skript load:
	clear {SkCheat::bow.p::*}
	clear {SkCheat::bow.n::*}
	clear {SkCheat::clicker.p::*}
	clear {SkCheat::clicker.n::*}
	clear {SkCheat::forcefield.p::*}
	clear {SkCheat::reach.p::*}
	clear {SkCheat::fastplace.p::*}
	clear {SkCheat::fastplace.n::*}
	clear {SkCheat::fly.b::*}
	clear {SkCheat::fly.p::*}
	clear {SkCheat::jesus.d::*}
	clear {SkCheat::jesus.p::*}
	clear {SkCheat::spam.p::*}
	clear {SkCheat::spam.m::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.jesus.notify::*}
	clear {SkCheat::forcefield::t.::*}
	clear {SkCheat::forcefield::t::*}
	clear {SkCheat::drop.n::*}
	clear {SkCheat::drop.p::*}
	clear {SkCheat::build.p::*}
	clear {SkCheat.spam.notify::*}
	clear {SkCheat.fly.notify::*}
	clear {SkCheat.bow.notify::*}
	clear {SkCheat.clicker.notify::*}
	clear {SkCheat.forcefield.notify::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.reach.notify::*}
	clear {SkCheat.build.notify::*}
	clear {SkCheat.drop.notify::*}
on skript unload:
	clear {SkCheat::bow.p::*}
	clear {SkCheat::bow.n::*}
	clear {SkCheat::clicker.p::*}
	clear {SkCheat::clicker.n::*}
	clear {SkCheat::forcefield.p::*}
	clear {SkCheat::reach.p::*}
	clear {SkCheat::fastplace.p::*}
	clear {SkCheat::fastplace.n::*}
	clear {SkCheat::fly.b::*}
	clear {SkCheat::fly.p::*}
	clear {SkCheat::jesus.d::*}
	clear {SkCheat::jesus.p::*}
	clear {SkCheat::spam.p::*}
	clear {SkCheat::spam.m::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.jesus.notify::*}
	clear {SkCheat::forcefield::t.::*}
	clear {SkCheat::forcefield::t::*}
	clear {SkCheat::drop.n::*}
	clear {SkCheat::drop.p::*}
	clear {SkCheat::build.p::*}
	clear {SkCheat.spam.notify::*}
	clear {SkCheat.fly.notify::*}
	clear {SkCheat.bow.notify::*}
	clear {SkCheat.clicker.notify::*}
	clear {SkCheat.forcefield.notify::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.reach.notify::*}
	clear {SkCheat.build.notify::*}
	clear {SkCheat.drop.notify::*}
on quit:
	clear {SkCheat::bow.p::%uuid of player%}
	clear {SkCheat::bow.n::%uuid of player%}
	clear {SkCheat::clicker.p::%uuid of player%}
	clear {SkCheat::clicker.n::%uuid of player%}
	clear {SkCheat::forcefield.p::%uuid of player%}
	clear {SkCheat::reach.p::%uuid of player%}
	clear {SkCheat::fastplace.p::%uuid of player%}
	clear {SkCheat::fastplace.n::%uuid of player%}
	clear {SkCheat::fly.b::%uuid of player%}
	clear {SkCheat::fly.p::%uuid of player%}
	clear {SkCheat::jesus.d::%uuid of player%}
	clear {SkCheat::jesus.p::%uuid of player%}
	clear {SkCheat::spam.p::%uuid of player%}
	clear {SkCheat::spam.m::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.jesus.notify::%uuid of player%}
	clear {SkCheat::forcefield::t.::%uuid of player%}
	clear {SkCheat::forcefield::t::%uuid of player%}
	clear {SkCheat::drop.n::%uuid of player%}
	clear {SkCheat::drop.p::%uuid of player%}
	clear {SkCheat::build.p::%uuid of player%}
	clear {SkCheat.spam.notify::%uuid of player%}
	clear {SkCheat.fly.notify::%uuid of player%}
	clear {SkCheat.bow.notify::%uuid of player%}
	clear {SkCheat.clicker.notify::%uuid of player%}
	clear {SkCheat.forcefield.notify::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.reach.notify::%uuid of player%}
	clear {SkCheat.build.notify::%uuid of player%}
	clear {SkCheat.drop.notify::%uuid of player%}
on join:
	clear {SkCheat::bow.p::%uuid of player%}
	clear {SkCheat::bow.n::%uuid of player%}
	clear {SkCheat::clicker.p::%uuid of player%}
	clear {SkCheat::clicker.n::%uuid of player%}
	clear {SkCheat::forcefield.p::%uuid of player%}
	clear {SkCheat::reach.p::%uuid of player%}
	clear {SkCheat::fastplace.p::%uuid of player%}
	clear {SkCheat::fastplace.n::%uuid of player%}
	clear {SkCheat::fly.b::%uuid of player%}
	clear {SkCheat::fly.p::%uuid of player%}
	clear {SkCheat::jesus.d::%uuid of player%}
	clear {SkCheat::jesus.p::%uuid of player%}
	clear {SkCheat::spam.p::%uuid of player%}
	clear {SkCheat::spam.m::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.jesus.notify::%uuid of player%}
	clear {SkCheat::forcefield::t.::%uuid of player%}
	clear {SkCheat::forcefield::t::%uuid of player%}
	clear {SkCheat::drop.n::%uuid of player%}
	clear {SkCheat::drop.p::%uuid of player%}
	clear {SkCheat::build.p::%uuid of player%}
	clear {SkCheat.spam.notify::%uuid of player%}
	clear {SkCheat.fly.notify::%uuid of player%}
	clear {SkCheat.bow.notify::%uuid of player%}
	clear {SkCheat.clicker.notify::%uuid of player%}
	clear {SkCheat.forcefield.notify::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.reach.notify::%uuid of player%}
	clear {SkCheat.build.notify::%uuid of player%}
	clear {SkCheat.drop.notify::%uuid of player%}

 

 

 

Créditos: KevinDoesMC

Link para o comentário
Compartilhar em outros sites

oie, hj vim trazer mais um skript simplesmente foda feito pelos gringos :3 hj é um COMPLETO de anti-cheat.

 

Informações:

 

Nome: SkCheat v1.0

Requer: Skript2.2

Ele previne contra os hacks:

- FastPlace

- Um hack q n sei o nome mas ele quebra liquidos (agua e lava)

- Reach

- ForceField

- Fast Click

- Fast Bow

- Fly (Se ele estiver com o efeito de gm nem fly, pois ele mexe com velocity :)) (CASO COPIEM O SKRIPT DE "FLY" SABEREMOS DE ONDE KAKA)

- Jesus

- Spam

- Sneak

- Spam (NÃO DA CONFLITO COM SEU SISTEMA DE CHAT)

- Auto-Build

- Fast Drop

 

Então, agora que já sabem as informações e tal, infelizmente não tem prints no fórum. Então vamos pro código logo... Se preparem, é enorme!

 

 

 

#SkCheat v1.0 - KevinDoesMC

#Currently keeps 30 variables per player and are all cleared when server loads/unloads skript or player joins/leaves. (Some aren't turned on until they were detected with hacks.)

#Found/Prevented Hacks:

#1. Fast Place (Catches really well.)
#2. Breaking of Liquid (Water and Lava)
#3. Reach (Blocks and Players)
#4. Forcefield (Works best if they are surrounded by mobs/players)
#5. Fast Click (Catches Nuker as well.)
#6. Fast Bow (Works amazingly. They'll be kicked as soon as they start.)
#7. Fly (Doesn't work if they have jump boost or are in creative mode. I tried to add support, but it ended up making the detection crappy.)
#8. Jesus (Same as fly mode's explanation.)
#9. Spam (Doesn't conflict with your chat system.)
#10. Sneak (Works if they trigger some events.)
#11. Auto-Build (Should catch it before finishing the building.)
#12. Fast Drop (Prevents rapid dropping.)

options:

	#! Don't want to detect a hack? Set the value to false. (IDs above) This is useful if your server doesn't have placing and what not.
	Detect.1: true
	Detect.2: true
	Detect.3: true
	Detect.4: true
	Detect.5: true
	Detect.6: true
	Detect.7: true
	Detect.8: true
	Detect.9: true
	Detect.10: true
	Detect.11: true
	Detect.12: true
	
	#! Decide whether to send warnings if a player is hacking to staff.
	TellStaff: true

command /anti-cheat:
	aliases: a-c
	trigger:
		send "&f&lAnti-Cheat &7> Made by KevinDoesMC."	
#1
on place:
	if {@Detect.1} is true:
		if difference between {SkCheat::fastplace.n::%uuid of player%} and now is less than 1 tick:
			cancel event
			add 1 to {SkCheat::fastplace.p::%uuid of player%}
			if {SkCheat.fastplace.notify::%uuid of player%} is not set:
				set {SkCheat.fastplace.notify::%uuid of player%} to now
			if {SkCheat::fastplace.p::%uuid of player%} is greater than 10:
				kick the player due to "&f&lAnti-Cheat &7> &fYou were using fast place."
				clear {SkCheat::fastplace.p::%uuid of player%}
				stop
			else if {SkCheat::fastplace.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.fastplace.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% might be fast place hacking." to loop-player
								set {SkCheat.fastplace.notify::%uuid of player%} to now
		set {SkCheat::fastplace.n::%uuid of player%} to now
		wait 5 seconds
		if {SkCheat::fastplace.p::%uuid of player%} is more than 0:
			remove 1 from {SkCheat::fastplace.p::%uuid of player%}	
#2
on break:
	if {@Detect.2} is true:
		if event-block is lava or water:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they broke liquid." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou broke a liquid."	
#3
on damage:
	if {@Detect.3} is true:
		attacker is a player
		if attacker's gamemode is not creative:
			if distance between attacker and victim is greater than 5:
				if {SkCheat.reach.notify::%uuid of attacker%} is not set:
					set {SkCheat.reach.notify::%uuid of attacker%} to now
				if {SkCheat::reach.p::%uuid of attacker%} is greater than 4:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%attacker% was kicked because they were using reach." to loop-player
					kick the attacker due to "&f&lAnti-Cheat &7> &fYou were using reach."
					clear {SkCheat::reach.p::%uuid of attacker%}
				else if {SkCheat::reach.p::%uuid of attacker%} is greater than 2:
					if difference between {SkCheat.reach.notify::%uuid of attacker%} and now is more than 1 second:
						if {@TellStaff} is true:
							loop all players:
								if attacker has permission "SkCheat.Staff":
									send "&f&lAnti-Cheat &7> &f%attacker% might be using reach." to loop-player
									set {SkCheat.reach.notify::%uuid of attacker%} to now
				wait 5 seconds
				if {SkCheat::reach.p::%uuid of attacker%} is more than 0:
					remove 1 from {SkCheat::reach.p::%uuid of attacker%}
on block damage:
	if {@Detect.3} is true:
		if player's gamemode is not creative:
			if distance between player and event-block is greater than 5:
				if {SkCheat.reach.notify::%uuid of player%} is not set:
					set {SkCheat.reach.notify::%uuid of player%} to now
				if {SkCheat::reach.p::%uuid of player%} is greater than 4:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using reach." to loop-player
					kick the player due to "&f&lAnti-Cheat &7> &fYou were using reach."
					clear {SkCheat::reach.p::%uuid of player%}
				else if {SkCheat::reach.p::%uuid of player%} is greater than 2:
					if difference between {SkCheat.reach.notify::%uuid of player%} and now is more than 1 second:
						if {@TellStaff} is true:
							loop all players:
								if loop-player has permission "SkCheat.Staff":
									send "&f&lAnti-Cheat &7> &f%player% might be using reach." to loop-player
									set {SkCheat.reach.notify::%uuid of player%} to now
				wait 5 seconds
				if {SkCheat::reach.p::%uuid of player%} is more than 0:
					remove 1 from {SkCheat::reach.p::%uuid of player%}	
#4
on damage:
	if {@Detect.4} is true:
		if difference between {SkCheat::forcefield::t::%uuid of attacker%} and now is {SkCheat::forcefield::t.::%uuid of attacker%}:
			set {_sametime} to true
		set {SkCheat::forcefield::t.::%uuid of attacker%} to difference between {SkCheat::forcefield::t::%uuid of attacker%} and now
		set {SkCheat::forcefield::t::%uuid of attacker%} to now
		attacker is a player
		projectile doesn't exist
		attacker is not victim
		set {_target} to attacker's target entity
		if {_sametime} is true:
			set {_hacks} to true
		if {_target} is not set:
			set {_hacks} to true
		else if {_target} is not victim:
			set {_hacks} to true
		if {_hacks} is true:
			cancel event
			add 1 to {SkCheat::forcefield.p::%uuid of attacker%}
			if {SkCheat.forcefield.notify::%uuid of attacker%} is not set:
				set {SkCheat.forcefield.notify::%uuid of attacker%} to now
			if {SkCheat::forcefield.p::%uuid of attacker%} is greater than 6:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%attacker% was kicked because they were using a forcefield or kill aura." to loop-player
				kick the attacker due to "&f&lAnti-Cheat &7> &fYou were using forcefield."
				clear {SkCheat::forcefield.p::%uuid of attacker%}
			else if {SkCheat::forcefield.p::%uuid of attacker%} is greater than 4:
				if difference between {SkCheat.forcefield.notify::%uuid of attacker%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if attacker has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%attacker% might be using forcefield." to loop-player
								set {SkCheat.forcefield.notify::%uuid of attacker%} to now
			wait 5 seconds
			if {SkCheat::forcefield.p::%uuid of attacker%} is more than 0:
				remove 1 from {SkCheat::forcefield.p::%uuid of attacker%}
#5
on left click:
	if {@Detect.5} is true:
		player is a player
		if difference between {SkCheat::clicker.n::%uuid of player%} and now is less than 1.8 ticks:
			cancel event
			add 1 to {SkCheat::clicker.p::%uuid of player%}
			if {SkCheat.clicker.notify::%uuid of player%} is not set:
				set {SkCheat.clicker.notify::%uuid of player%} to now
			if {SkCheat::clicker.p::%uuid of player%} is greater than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using fast click." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were using clicker."
				clear {SkCheat::clicker.p::%uuid of player%}
			else if {SkCheat::clicker.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.clicker.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% might be using clicker." to loop-player
								set {SkCheat.clicker.notify::%uuid of player%} to now
			wait 5 seconds
			if {SkCheat::clicker.p::%uuid of player%} is more than 0:
				remove 1 from {SkCheat::clicker.p::%uuid of player%}
		set {SkCheat::clicker.n::%uuid of player%} to now	
#6
on shoot:
	if {@Detect.6} is true:
		if difference between {SkCheat::bow.n::%uuid of shooter%} and now is less than 0.97 ticks:
			cancel event
			add 1 to {SkCheat::bow.p::%uuid of shooter%}
			if {SkCheat.bow.notify::%uuid of shooter%} is not set:
				set {SkCheat.bow.notify::%uuid of shooter%} to now
			if {SkCheat::bow.p::%uuid of shooter%} is greater than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%shooter% was kicked because they were using rapid fire." to loop-player
				kick the shooter due to "&f&lAnti-Cheat &7> &fYou were using rapid fire."
				clear {SkCheat::bow.p::%uuid of shooter%}
			else if {SkCheat::bow.p::%uuid of shooter%} is greater than 2:
				if difference between {SkCheat.bow.notify::%uuid of shooter%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if shooter has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%shooter% might be using rapid fire." to loop-player
								set {SkCheat.bow.notify::%uuid of shooter%} to now
			wait 5 seconds
			if {SkCheat::bow.p::%uuid of shooter%} is more than 0:
				remove 1 from {SkCheat::bow.p::%uuid of shooter%}
		set {SkCheat::bow.n::%uuid of shooter%} to now	
#7 & 8
on any movement:
	if player's gamemode is not creative:
		if player's fly mode is not true:
			if {@Detect.7} is true:
				if block 0.1 below the player is air:
					if {SkCheat::fly.b::%uuid of player%} is set:
						set {_y} to y coordinate of location of player
						set {_ry} to rounded up {_y}
						set {_check} to "%{_ry}-{_y}%"
						if player doesn't have jump boost:
							if {_check} is not "0.47" or "0.45" or "0.63" or "0.72" or "0.2" or "0.18" or "0.68" or "0.6" or "0.3" or "0.38" or "0.87" or "0.94" or "0.77" or "0.55" or "0.8" or "0.69" or "0.97" or "0.81" or "0.74" or "0.82" or "0.85" or "0.62" or "0.61" or "0.79" or "0.53" or "0.66" or "0.88" or "0.42" or "0.39" or "0.44" or "0.57" or "0.64" or "0.02" or "0.84" or "0.9" or "0.52" or "0.48" or "0.51" or "0.49" or "0.43" or "0.23" or "0.11" or "0.07" or "0.12" or "0.24" or "0.43" or "0.7" or "0.36" or "0.17" or "0.06" or "0.04" or "0.09" or "0.14" or "0.86" or "0.67" or "0.56" or "0.54" or "0.59" or "0.73" or "0.9" or "0.58" or "0.34" or "0.21" or "0.08" or "0.48" or "0.71" or "0.5" or "0.75" or "0.83" or "0" or "1" or "0.33" or "0.25" or "0.46" or "0.98":
								if {SkCheat::fly.b::%uuid of player%} is less than {_y}:
									add 1 to {SkCheat::fly.p::%uuid of player%}
									set {_found} to true
								if {_y} is {SkCheat::fly.b::%uuid of player%}:
									if {_check} is not "0.21" or "0.98" or "0.9" or "1" or "0.83" or "0.58" or "0.75" or "0.74" or "0.25" or "0.5" or "0":
										add 1 to {SkCheat::fly.p::%uuid of player%}
										set {_found} to true
							if {_found} is true:
								if {SkCheat.fly.notify::%uuid of player%} is not set:
									set {SkCheat.fly.notify::%uuid of player%} to now
								if {SkCheat::fly.p::%uuid of player%} is greater than 4:
									if {@TellStaff} is true:
										loop all players:
											if loop-player has permission "SkCheat.Staff":
												send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using flying." to loop-player
									kick the player due to "&f&lAnti-Cheat &7> &fYou were flying."
									clear {SkCheat::fly.p::%uuid of player%}
									stop
								else if {SkCheat::fly.p::%uuid of player%} is greater than 2:
									if difference between {SkCheat.fly.notify::%uuid of player%} and now is more than 1 second:
										if {@TellStaff} is true:
											loop all players:
												if loop-player has permission "SkCheat.Staff":
													send "&f&lAnti-Cheat &7> &f%player% might be flying." to loop-player
													set {SkCheat.fly.notify::%uuid of player%} to now
								wait 5 seconds
								if {SkCheat::fly.p::%uuid of player%} is more than 0:
									remove 1 from {SkCheat::fly.p::%uuid of player%}
			if {@Detect.8} is true:
				if block 0.25 below the player or block 1 below the player or block 0.5 below the player or block 0.75 below the player is water:
					if block 0.25 above the player is air:
						set {_y} to y coordinate of location of player
						set {_ry} to rounded up {_y}
						set {_check} to "%{_ry}-{_y}%"
						if {_check} is not "0.16" or "0.12" or "0.1" or "0.04" or "0.93" or "0.78" or "0.61" or "0.96" or "0.19" or "0.24" or "0.54" or "0.76" or "0.02" or "0.86" or "0.44" or "0.47" or "0.14" or "0.07" or "0.68" or "0.64" or "0.85" or "0.15" or "0.48" or "0.06" or "0.49" or "0.62" or "0.43" or "0.13" or "0.84" or "0.51" or "0.69" or "0.74" or "0.75" or "0.58" or "1" or "0.57" or "0.7" or "0.21" or "0.97" or "0.81" or "0.77" or "0.22" or "0.03" or "0.91" or "0.08" or "0.79" or "0.18" or "0.98" or "0.83" or "0.82" or "0.2" or "0.46" or "0.42" or "0.77" or "0.65" or "0.66" or "0.92" or "0.71" or "0.88" or "0.67" or "0.6" or "0.55" or "0.52" or "0.9" or "0.23" or "0.5" or "0.53" or "0.56" or "0.25":
							if {_check} is "0":
								set {_x} to rounded down x coordinate of location of player-1
								set {_y} to rounded down y coordinate of location of player
								set {_z} to rounded down z coordinate of location of player-1
								set {_loc} to location at {_x}, {_y}, {_z} in player's world
								if block at {_loc} is not water:
									set {_failed} to true
							if {_failed} is not set:
								add 1 to {SkCheat::jesus.d::%uuid of player%}
								if {SkCheat::jesus.d::%uuid of player%} is more than 0:
									clear {SkCheat::jesus.d::%uuid of player%}
									if block 0.05 above the player is air:
										add 1 to {SkCheat::jesus.p::%uuid of player%}
										if {SkCheat.jesus.notify::%uuid of player%} is not set:
											set {SkCheat.jesus.notify::%uuid of player%} to now
										if {SkCheat::jesus.p::%uuid of player%} is greater than 3:
											if {@TellStaff} is true:
												loop all players:
													if loop-player has permission "SkCheat.Staff":
														send "&f&lAnti-Cheat &7> &f%player% was kicked because they were walking on water." to loop-player
											kick the player due to "&f&lAnti-Cheat &7> &fYou were using jesus."
											clear {SkCheat::jesus.p::%uuid of player%}
										else if {SkCheat::jesus.p::%uuid of player%} is greater than 2:
											if difference between {SkCheat.jesus.notify::%uuid of player%} and now is more than 1 second:
												if {@TellStaff} is true:
													loop all players:
														if loop-player has permission "SkCheat.Staff":
															send "&f&lAnti-Cheat &7> &f%player% might be using jesus." to loop-player
															set {SkCheat.jesus.notify::%uuid of player%} to now
										wait 10 seconds
										if {SkCheat::jesus.p::%uuid of player%} is more than 0:
											remove 1 from {SkCheat::jesus.p::%uuid of player%}
					else:
						wait 2 seconds
						if {SkCheat::jesus.d::%uuid of player%} is more than 0:
							remove 1 from {SkCheat::jesus.d::%uuid of player%}
				set {SkCheat::fly.b::%uuid of player%} to y coordinate of location of player
#9
on chat:
	if {SkCheat::spam.m::%uuid of player%} is message:
		cancel event
		add 1 to {SkCheat::spam.p::%uuid of player%}
		send "&f&lAnti-Cheat &7> &fPlease do not send the same message twice."
		if {SkCheat.spam.notify::%uuid of player%} is not set:
			set {SkCheat.spam.notify::%uuid of player%} to now
		if {SkCheat::spam.p::%uuid of player%} is greater than 4:
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were spamming." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were spamming."
			clear {SkCheat::spam.p::%uuid of player%}
		else if {SkCheat::spam.p::%uuid of player%} is greater than 2:
			if difference between {SkCheat.spam.notify::%uuid of player%} and now is more than 1 second:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% is attempting to spam." to loop-player
							set {SkCheat.spam.notify::%uuid of player%} to now
		wait 3 seconds
		if {SkCheat::spam.p::%uuid of player%} is more than 0:
			remove 1 from {SkCheat::spam.p::%uuid of player%}
	else:
		set {SkCheat::spam.m::%uuid of player%} to message			
#10
on chat:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on command:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on inventory click:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on sprint toggle:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on sign edit:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on inventory close:
	if {@Detect.10} is true:
		if player is sneaking:
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."		
#11
on place:
	if {@Detect.11} is true:
		if location of event-block is not location of targeted block:
			cancel event
			if {SkCheat.build.notify::%uuid of player%} is not set:
				set {SkCheat.build.notify::%uuid of player%} to now
			add 1 to {SkCheat::build.p::%uuid of player%}
			if {SkCheat::build.p::%uuid of player%} is more than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using auto-build." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were auto-building."
				clear {SkCheat::build.p::%uuid of player%}
			else if {SkCheat::build.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.build.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% is attempting to auto-build." to loop-player
								set {SkCheat.build.notify::%uuid of player%} to now
			else:
				wait 3 seconds
				if {SkCheat::build.p::%uuid of player%} is more than 0:
					remove 1 from {SkCheat::build.p::%uuid of player%}				
#12
on drop:
	if {@Detect.12} is true:
		if difference between {SkCheat::drop.n::%uuid of player%} and now is less than 1 tick:
			cancel event
			add 1 to {SkCheat::drop.p::%uuid of player%}
			if {SkCheat.drop.notify::%uuid of player%} is not set:
				set {SkCheat.drop.notify::%uuid of player%} to now
			if {SkCheat::drop.p::%uuid of player%} is greater than 5:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were quick dropping." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were quick dropping."
			else if {SkCheat::drop.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.drop.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% is attempting to drop too fast." to loop-player
								set {SkCheat.drop.notify::%uuid of player%} to now
			set {SkCheat::drop.n::%uuid of player%} to now
			wait 5 seconds
			if {SkCheat::drop.p::%uuid of player%} is more than 0:
				remove 1 from {SkCheat::drop.p::%uuid of player%}
	else:
		set {SkCheat::drop.n::%uuid of player%} to now
#Cleaning up of variables
on skript load:
	clear {SkCheat::bow.p::*}
	clear {SkCheat::bow.n::*}
	clear {SkCheat::clicker.p::*}
	clear {SkCheat::clicker.n::*}
	clear {SkCheat::forcefield.p::*}
	clear {SkCheat::reach.p::*}
	clear {SkCheat::fastplace.p::*}
	clear {SkCheat::fastplace.n::*}
	clear {SkCheat::fly.b::*}
	clear {SkCheat::fly.p::*}
	clear {SkCheat::jesus.d::*}
	clear {SkCheat::jesus.p::*}
	clear {SkCheat::spam.p::*}
	clear {SkCheat::spam.m::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.jesus.notify::*}
	clear {SkCheat::forcefield::t.::*}
	clear {SkCheat::forcefield::t::*}
	clear {SkCheat::drop.n::*}
	clear {SkCheat::drop.p::*}
	clear {SkCheat::build.p::*}
	clear {SkCheat.spam.notify::*}
	clear {SkCheat.fly.notify::*}
	clear {SkCheat.bow.notify::*}
	clear {SkCheat.clicker.notify::*}
	clear {SkCheat.forcefield.notify::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.reach.notify::*}
	clear {SkCheat.build.notify::*}
	clear {SkCheat.drop.notify::*}
on skript unload:
	clear {SkCheat::bow.p::*}
	clear {SkCheat::bow.n::*}
	clear {SkCheat::clicker.p::*}
	clear {SkCheat::clicker.n::*}
	clear {SkCheat::forcefield.p::*}
	clear {SkCheat::reach.p::*}
	clear {SkCheat::fastplace.p::*}
	clear {SkCheat::fastplace.n::*}
	clear {SkCheat::fly.b::*}
	clear {SkCheat::fly.p::*}
	clear {SkCheat::jesus.d::*}
	clear {SkCheat::jesus.p::*}
	clear {SkCheat::spam.p::*}
	clear {SkCheat::spam.m::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.jesus.notify::*}
	clear {SkCheat::forcefield::t.::*}
	clear {SkCheat::forcefield::t::*}
	clear {SkCheat::drop.n::*}
	clear {SkCheat::drop.p::*}
	clear {SkCheat::build.p::*}
	clear {SkCheat.spam.notify::*}
	clear {SkCheat.fly.notify::*}
	clear {SkCheat.bow.notify::*}
	clear {SkCheat.clicker.notify::*}
	clear {SkCheat.forcefield.notify::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.reach.notify::*}
	clear {SkCheat.build.notify::*}
	clear {SkCheat.drop.notify::*}
on quit:
	clear {SkCheat::bow.p::%uuid of player%}
	clear {SkCheat::bow.n::%uuid of player%}
	clear {SkCheat::clicker.p::%uuid of player%}
	clear {SkCheat::clicker.n::%uuid of player%}
	clear {SkCheat::forcefield.p::%uuid of player%}
	clear {SkCheat::reach.p::%uuid of player%}
	clear {SkCheat::fastplace.p::%uuid of player%}
	clear {SkCheat::fastplace.n::%uuid of player%}
	clear {SkCheat::fly.b::%uuid of player%}
	clear {SkCheat::fly.p::%uuid of player%}
	clear {SkCheat::jesus.d::%uuid of player%}
	clear {SkCheat::jesus.p::%uuid of player%}
	clear {SkCheat::spam.p::%uuid of player%}
	clear {SkCheat::spam.m::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.jesus.notify::%uuid of player%}
	clear {SkCheat::forcefield::t.::%uuid of player%}
	clear {SkCheat::forcefield::t::%uuid of player%}
	clear {SkCheat::drop.n::%uuid of player%}
	clear {SkCheat::drop.p::%uuid of player%}
	clear {SkCheat::build.p::%uuid of player%}
	clear {SkCheat.spam.notify::%uuid of player%}
	clear {SkCheat.fly.notify::%uuid of player%}
	clear {SkCheat.bow.notify::%uuid of player%}
	clear {SkCheat.clicker.notify::%uuid of player%}
	clear {SkCheat.forcefield.notify::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.reach.notify::%uuid of player%}
	clear {SkCheat.build.notify::%uuid of player%}
	clear {SkCheat.drop.notify::%uuid of player%}
on join:
	clear {SkCheat::bow.p::%uuid of player%}
	clear {SkCheat::bow.n::%uuid of player%}
	clear {SkCheat::clicker.p::%uuid of player%}
	clear {SkCheat::clicker.n::%uuid of player%}
	clear {SkCheat::forcefield.p::%uuid of player%}
	clear {SkCheat::reach.p::%uuid of player%}
	clear {SkCheat::fastplace.p::%uuid of player%}
	clear {SkCheat::fastplace.n::%uuid of player%}
	clear {SkCheat::fly.b::%uuid of player%}
	clear {SkCheat::fly.p::%uuid of player%}
	clear {SkCheat::jesus.d::%uuid of player%}
	clear {SkCheat::jesus.p::%uuid of player%}
	clear {SkCheat::spam.p::%uuid of player%}
	clear {SkCheat::spam.m::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.jesus.notify::%uuid of player%}
	clear {SkCheat::forcefield::t.::%uuid of player%}
	clear {SkCheat::forcefield::t::%uuid of player%}
	clear {SkCheat::drop.n::%uuid of player%}
	clear {SkCheat::drop.p::%uuid of player%}
	clear {SkCheat::build.p::%uuid of player%}
	clear {SkCheat.spam.notify::%uuid of player%}
	clear {SkCheat.fly.notify::%uuid of player%}
	clear {SkCheat.bow.notify::%uuid of player%}
	clear {SkCheat.clicker.notify::%uuid of player%}
	clear {SkCheat.forcefield.notify::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.reach.notify::%uuid of player%}
	clear {SkCheat.build.notify::%uuid of player%}
	clear {SkCheat.drop.notify::%uuid of player%}

 

 

 

Créditos: KevinDoesMC

testado na 15.2?

Link para o comentário
Compartilhar em outros sites

oie, hj vim trazer mais um skript simplesmente foda feito pelos gringos :3 hj é um COMPLETO de anti-cheat.

 

Informações:

 

Nome: SkCheat v1.0

Requer: Skript2.2

Ele previne contra os hacks:

- FastPlace

- Um hack q n sei o nome mas ele quebra liquidos (agua e lava)

- Reach

- ForceField

- Fast Click

- Fast Bow

- Fly (Se ele estiver com o efeito de gm nem fly, pois ele mexe com velocity :)) (CASO COPIEM O SKRIPT DE "FLY" SABEREMOS DE ONDE KAKA)

- Jesus

- Spam

- Sneak

- Spam (NÃO DA CONFLITO COM SEU SISTEMA DE CHAT)

- Auto-Build

- Fast Drop

 

Então, agora que já sabem as informações e tal, infelizmente não tem prints no fórum. Então vamos pro código logo... Se preparem, é enorme!

 

 

 

#SkCheat v1.0 - KevinDoesMC

#Currently keeps 30 variables per player and are all cleared when server loads/unloads skript or player joins/leaves. (Some aren't turned on until they were detected with hacks.)

#Found/Prevented Hacks:

#1. Fast Place (Catches really well.)
#2. Breaking of Liquid (Water and Lava)
#3. Reach (Blocks and Players)
#4. Forcefield (Works best if they are surrounded by mobs/players)
#5. Fast Click (Catches Nuker as well.)
#6. Fast Bow (Works amazingly. They'll be kicked as soon as they start.)
#7. Fly (Doesn't work if they have jump boost or are in creative mode. I tried to add support, but it ended up making the detection crappy.)
#8. Jesus (Same as fly mode's explanation.)
#9. Spam (Doesn't conflict with your chat system.)
#10. Sneak (Works if they trigger some events.)
#11. Auto-Build (Should catch it before finishing the building.)
#12. Fast Drop (Prevents rapid dropping.)

options:

	#! Don't want to detect a hack? Set the value to false. (IDs above) This is useful if your server doesn't have placing and what not.
	Detect.1: true
	Detect.2: true
	Detect.3: true
	Detect.4: true
	Detect.5: true
	Detect.6: true
	Detect.7: true
	Detect.8: true
	Detect.9: true
	Detect.10: true
	Detect.11: true
	Detect.12: true
	
	#! Decide whether to send warnings if a player is hacking to staff.
	TellStaff: true

command /anti-cheat:
	aliases: a-c
	trigger:
		send "&f&lAnti-Cheat &7> Made by KevinDoesMC."	
#1
on place:
	if {@Detect.1} is true:
		if difference between {SkCheat::fastplace.n::%uuid of player%} and now is less than 1 tick:
			cancel event
			add 1 to {SkCheat::fastplace.p::%uuid of player%}
			if {SkCheat.fastplace.notify::%uuid of player%} is not set:
				set {SkCheat.fastplace.notify::%uuid of player%} to now
			if {SkCheat::fastplace.p::%uuid of player%} is greater than 10:
				kick the player due to "&f&lAnti-Cheat &7> &fYou were using fast place."
				clear {SkCheat::fastplace.p::%uuid of player%}
				stop
			else if {SkCheat::fastplace.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.fastplace.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% might be fast place hacking." to loop-player
								set {SkCheat.fastplace.notify::%uuid of player%} to now
		set {SkCheat::fastplace.n::%uuid of player%} to now
		wait 5 seconds
		if {SkCheat::fastplace.p::%uuid of player%} is more than 0:
			remove 1 from {SkCheat::fastplace.p::%uuid of player%}	
#2
on break:
	if {@Detect.2} is true:
		if event-block is lava or water:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they broke liquid." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou broke a liquid."	
#3
on damage:
	if {@Detect.3} is true:
		attacker is a player
		if attacker's gamemode is not creative:
			if distance between attacker and victim is greater than 5:
				if {SkCheat.reach.notify::%uuid of attacker%} is not set:
					set {SkCheat.reach.notify::%uuid of attacker%} to now
				if {SkCheat::reach.p::%uuid of attacker%} is greater than 4:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%attacker% was kicked because they were using reach." to loop-player
					kick the attacker due to "&f&lAnti-Cheat &7> &fYou were using reach."
					clear {SkCheat::reach.p::%uuid of attacker%}
				else if {SkCheat::reach.p::%uuid of attacker%} is greater than 2:
					if difference between {SkCheat.reach.notify::%uuid of attacker%} and now is more than 1 second:
						if {@TellStaff} is true:
							loop all players:
								if attacker has permission "SkCheat.Staff":
									send "&f&lAnti-Cheat &7> &f%attacker% might be using reach." to loop-player
									set {SkCheat.reach.notify::%uuid of attacker%} to now
				wait 5 seconds
				if {SkCheat::reach.p::%uuid of attacker%} is more than 0:
					remove 1 from {SkCheat::reach.p::%uuid of attacker%}
on block damage:
	if {@Detect.3} is true:
		if player's gamemode is not creative:
			if distance between player and event-block is greater than 5:
				if {SkCheat.reach.notify::%uuid of player%} is not set:
					set {SkCheat.reach.notify::%uuid of player%} to now
				if {SkCheat::reach.p::%uuid of player%} is greater than 4:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using reach." to loop-player
					kick the player due to "&f&lAnti-Cheat &7> &fYou were using reach."
					clear {SkCheat::reach.p::%uuid of player%}
				else if {SkCheat::reach.p::%uuid of player%} is greater than 2:
					if difference between {SkCheat.reach.notify::%uuid of player%} and now is more than 1 second:
						if {@TellStaff} is true:
							loop all players:
								if loop-player has permission "SkCheat.Staff":
									send "&f&lAnti-Cheat &7> &f%player% might be using reach." to loop-player
									set {SkCheat.reach.notify::%uuid of player%} to now
				wait 5 seconds
				if {SkCheat::reach.p::%uuid of player%} is more than 0:
					remove 1 from {SkCheat::reach.p::%uuid of player%}	
#4
on damage:
	if {@Detect.4} is true:
		if difference between {SkCheat::forcefield::t::%uuid of attacker%} and now is {SkCheat::forcefield::t.::%uuid of attacker%}:
			set {_sametime} to true
		set {SkCheat::forcefield::t.::%uuid of attacker%} to difference between {SkCheat::forcefield::t::%uuid of attacker%} and now
		set {SkCheat::forcefield::t::%uuid of attacker%} to now
		attacker is a player
		projectile doesn't exist
		attacker is not victim
		set {_target} to attacker's target entity
		if {_sametime} is true:
			set {_hacks} to true
		if {_target} is not set:
			set {_hacks} to true
		else if {_target} is not victim:
			set {_hacks} to true
		if {_hacks} is true:
			cancel event
			add 1 to {SkCheat::forcefield.p::%uuid of attacker%}
			if {SkCheat.forcefield.notify::%uuid of attacker%} is not set:
				set {SkCheat.forcefield.notify::%uuid of attacker%} to now
			if {SkCheat::forcefield.p::%uuid of attacker%} is greater than 6:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%attacker% was kicked because they were using a forcefield or kill aura." to loop-player
				kick the attacker due to "&f&lAnti-Cheat &7> &fYou were using forcefield."
				clear {SkCheat::forcefield.p::%uuid of attacker%}
			else if {SkCheat::forcefield.p::%uuid of attacker%} is greater than 4:
				if difference between {SkCheat.forcefield.notify::%uuid of attacker%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if attacker has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%attacker% might be using forcefield." to loop-player
								set {SkCheat.forcefield.notify::%uuid of attacker%} to now
			wait 5 seconds
			if {SkCheat::forcefield.p::%uuid of attacker%} is more than 0:
				remove 1 from {SkCheat::forcefield.p::%uuid of attacker%}
#5
on left click:
	if {@Detect.5} is true:
		player is a player
		if difference between {SkCheat::clicker.n::%uuid of player%} and now is less than 1.8 ticks:
			cancel event
			add 1 to {SkCheat::clicker.p::%uuid of player%}
			if {SkCheat.clicker.notify::%uuid of player%} is not set:
				set {SkCheat.clicker.notify::%uuid of player%} to now
			if {SkCheat::clicker.p::%uuid of player%} is greater than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using fast click." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were using clicker."
				clear {SkCheat::clicker.p::%uuid of player%}
			else if {SkCheat::clicker.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.clicker.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% might be using clicker." to loop-player
								set {SkCheat.clicker.notify::%uuid of player%} to now
			wait 5 seconds
			if {SkCheat::clicker.p::%uuid of player%} is more than 0:
				remove 1 from {SkCheat::clicker.p::%uuid of player%}
		set {SkCheat::clicker.n::%uuid of player%} to now	
#6
on shoot:
	if {@Detect.6} is true:
		if difference between {SkCheat::bow.n::%uuid of shooter%} and now is less than 0.97 ticks:
			cancel event
			add 1 to {SkCheat::bow.p::%uuid of shooter%}
			if {SkCheat.bow.notify::%uuid of shooter%} is not set:
				set {SkCheat.bow.notify::%uuid of shooter%} to now
			if {SkCheat::bow.p::%uuid of shooter%} is greater than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%shooter% was kicked because they were using rapid fire." to loop-player
				kick the shooter due to "&f&lAnti-Cheat &7> &fYou were using rapid fire."
				clear {SkCheat::bow.p::%uuid of shooter%}
			else if {SkCheat::bow.p::%uuid of shooter%} is greater than 2:
				if difference between {SkCheat.bow.notify::%uuid of shooter%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if shooter has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%shooter% might be using rapid fire." to loop-player
								set {SkCheat.bow.notify::%uuid of shooter%} to now
			wait 5 seconds
			if {SkCheat::bow.p::%uuid of shooter%} is more than 0:
				remove 1 from {SkCheat::bow.p::%uuid of shooter%}
		set {SkCheat::bow.n::%uuid of shooter%} to now	
#7 & 8
on any movement:
	if player's gamemode is not creative:
		if player's fly mode is not true:
			if {@Detect.7} is true:
				if block 0.1 below the player is air:
					if {SkCheat::fly.b::%uuid of player%} is set:
						set {_y} to y coordinate of location of player
						set {_ry} to rounded up {_y}
						set {_check} to "%{_ry}-{_y}%"
						if player doesn't have jump boost:
							if {_check} is not "0.47" or "0.45" or "0.63" or "0.72" or "0.2" or "0.18" or "0.68" or "0.6" or "0.3" or "0.38" or "0.87" or "0.94" or "0.77" or "0.55" or "0.8" or "0.69" or "0.97" or "0.81" or "0.74" or "0.82" or "0.85" or "0.62" or "0.61" or "0.79" or "0.53" or "0.66" or "0.88" or "0.42" or "0.39" or "0.44" or "0.57" or "0.64" or "0.02" or "0.84" or "0.9" or "0.52" or "0.48" or "0.51" or "0.49" or "0.43" or "0.23" or "0.11" or "0.07" or "0.12" or "0.24" or "0.43" or "0.7" or "0.36" or "0.17" or "0.06" or "0.04" or "0.09" or "0.14" or "0.86" or "0.67" or "0.56" or "0.54" or "0.59" or "0.73" or "0.9" or "0.58" or "0.34" or "0.21" or "0.08" or "0.48" or "0.71" or "0.5" or "0.75" or "0.83" or "0" or "1" or "0.33" or "0.25" or "0.46" or "0.98":
								if {SkCheat::fly.b::%uuid of player%} is less than {_y}:
									add 1 to {SkCheat::fly.p::%uuid of player%}
									set {_found} to true
								if {_y} is {SkCheat::fly.b::%uuid of player%}:
									if {_check} is not "0.21" or "0.98" or "0.9" or "1" or "0.83" or "0.58" or "0.75" or "0.74" or "0.25" or "0.5" or "0":
										add 1 to {SkCheat::fly.p::%uuid of player%}
										set {_found} to true
							if {_found} is true:
								if {SkCheat.fly.notify::%uuid of player%} is not set:
									set {SkCheat.fly.notify::%uuid of player%} to now
								if {SkCheat::fly.p::%uuid of player%} is greater than 4:
									if {@TellStaff} is true:
										loop all players:
											if loop-player has permission "SkCheat.Staff":
												send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using flying." to loop-player
									kick the player due to "&f&lAnti-Cheat &7> &fYou were flying."
									clear {SkCheat::fly.p::%uuid of player%}
									stop
								else if {SkCheat::fly.p::%uuid of player%} is greater than 2:
									if difference between {SkCheat.fly.notify::%uuid of player%} and now is more than 1 second:
										if {@TellStaff} is true:
											loop all players:
												if loop-player has permission "SkCheat.Staff":
													send "&f&lAnti-Cheat &7> &f%player% might be flying." to loop-player
													set {SkCheat.fly.notify::%uuid of player%} to now
								wait 5 seconds
								if {SkCheat::fly.p::%uuid of player%} is more than 0:
									remove 1 from {SkCheat::fly.p::%uuid of player%}
			if {@Detect.8} is true:
				if block 0.25 below the player or block 1 below the player or block 0.5 below the player or block 0.75 below the player is water:
					if block 0.25 above the player is air:
						set {_y} to y coordinate of location of player
						set {_ry} to rounded up {_y}
						set {_check} to "%{_ry}-{_y}%"
						if {_check} is not "0.16" or "0.12" or "0.1" or "0.04" or "0.93" or "0.78" or "0.61" or "0.96" or "0.19" or "0.24" or "0.54" or "0.76" or "0.02" or "0.86" or "0.44" or "0.47" or "0.14" or "0.07" or "0.68" or "0.64" or "0.85" or "0.15" or "0.48" or "0.06" or "0.49" or "0.62" or "0.43" or "0.13" or "0.84" or "0.51" or "0.69" or "0.74" or "0.75" or "0.58" or "1" or "0.57" or "0.7" or "0.21" or "0.97" or "0.81" or "0.77" or "0.22" or "0.03" or "0.91" or "0.08" or "0.79" or "0.18" or "0.98" or "0.83" or "0.82" or "0.2" or "0.46" or "0.42" or "0.77" or "0.65" or "0.66" or "0.92" or "0.71" or "0.88" or "0.67" or "0.6" or "0.55" or "0.52" or "0.9" or "0.23" or "0.5" or "0.53" or "0.56" or "0.25":
							if {_check} is "0":
								set {_x} to rounded down x coordinate of location of player-1
								set {_y} to rounded down y coordinate of location of player
								set {_z} to rounded down z coordinate of location of player-1
								set {_loc} to location at {_x}, {_y}, {_z} in player's world
								if block at {_loc} is not water:
									set {_failed} to true
							if {_failed} is not set:
								add 1 to {SkCheat::jesus.d::%uuid of player%}
								if {SkCheat::jesus.d::%uuid of player%} is more than 0:
									clear {SkCheat::jesus.d::%uuid of player%}
									if block 0.05 above the player is air:
										add 1 to {SkCheat::jesus.p::%uuid of player%}
										if {SkCheat.jesus.notify::%uuid of player%} is not set:
											set {SkCheat.jesus.notify::%uuid of player%} to now
										if {SkCheat::jesus.p::%uuid of player%} is greater than 3:
											if {@TellStaff} is true:
												loop all players:
													if loop-player has permission "SkCheat.Staff":
														send "&f&lAnti-Cheat &7> &f%player% was kicked because they were walking on water." to loop-player
											kick the player due to "&f&lAnti-Cheat &7> &fYou were using jesus."
											clear {SkCheat::jesus.p::%uuid of player%}
										else if {SkCheat::jesus.p::%uuid of player%} is greater than 2:
											if difference between {SkCheat.jesus.notify::%uuid of player%} and now is more than 1 second:
												if {@TellStaff} is true:
													loop all players:
														if loop-player has permission "SkCheat.Staff":
															send "&f&lAnti-Cheat &7> &f%player% might be using jesus." to loop-player
															set {SkCheat.jesus.notify::%uuid of player%} to now
										wait 10 seconds
										if {SkCheat::jesus.p::%uuid of player%} is more than 0:
											remove 1 from {SkCheat::jesus.p::%uuid of player%}
					else:
						wait 2 seconds
						if {SkCheat::jesus.d::%uuid of player%} is more than 0:
							remove 1 from {SkCheat::jesus.d::%uuid of player%}
				set {SkCheat::fly.b::%uuid of player%} to y coordinate of location of player
#9
on chat:
	if {SkCheat::spam.m::%uuid of player%} is message:
		cancel event
		add 1 to {SkCheat::spam.p::%uuid of player%}
		send "&f&lAnti-Cheat &7> &fPlease do not send the same message twice."
		if {SkCheat.spam.notify::%uuid of player%} is not set:
			set {SkCheat.spam.notify::%uuid of player%} to now
		if {SkCheat::spam.p::%uuid of player%} is greater than 4:
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were spamming." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were spamming."
			clear {SkCheat::spam.p::%uuid of player%}
		else if {SkCheat::spam.p::%uuid of player%} is greater than 2:
			if difference between {SkCheat.spam.notify::%uuid of player%} and now is more than 1 second:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% is attempting to spam." to loop-player
							set {SkCheat.spam.notify::%uuid of player%} to now
		wait 3 seconds
		if {SkCheat::spam.p::%uuid of player%} is more than 0:
			remove 1 from {SkCheat::spam.p::%uuid of player%}
	else:
		set {SkCheat::spam.m::%uuid of player%} to message			
#10
on chat:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on command:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on inventory click:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on sprint toggle:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on sign edit:
	if {@Detect.10} is true:
		if player is sneaking:
			cancel event
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."
on inventory close:
	if {@Detect.10} is true:
		if player is sneaking:
			if {@TellStaff} is true:
				loop all players:
					if loop-player has permission "SkCheat.Staff":
						send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using sneak." to loop-player
			kick the player due to "&f&lAnti-Cheat &7> &fYou were sneak hacking."		
#11
on place:
	if {@Detect.11} is true:
		if location of event-block is not location of targeted block:
			cancel event
			if {SkCheat.build.notify::%uuid of player%} is not set:
				set {SkCheat.build.notify::%uuid of player%} to now
			add 1 to {SkCheat::build.p::%uuid of player%}
			if {SkCheat::build.p::%uuid of player%} is more than 4:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were using auto-build." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were auto-building."
				clear {SkCheat::build.p::%uuid of player%}
			else if {SkCheat::build.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.build.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% is attempting to auto-build." to loop-player
								set {SkCheat.build.notify::%uuid of player%} to now
			else:
				wait 3 seconds
				if {SkCheat::build.p::%uuid of player%} is more than 0:
					remove 1 from {SkCheat::build.p::%uuid of player%}				
#12
on drop:
	if {@Detect.12} is true:
		if difference between {SkCheat::drop.n::%uuid of player%} and now is less than 1 tick:
			cancel event
			add 1 to {SkCheat::drop.p::%uuid of player%}
			if {SkCheat.drop.notify::%uuid of player%} is not set:
				set {SkCheat.drop.notify::%uuid of player%} to now
			if {SkCheat::drop.p::%uuid of player%} is greater than 5:
				if {@TellStaff} is true:
					loop all players:
						if loop-player has permission "SkCheat.Staff":
							send "&f&lAnti-Cheat &7> &f%player% was kicked because they were quick dropping." to loop-player
				kick the player due to "&f&lAnti-Cheat &7> &fYou were quick dropping."
			else if {SkCheat::drop.p::%uuid of player%} is greater than 2:
				if difference between {SkCheat.drop.notify::%uuid of player%} and now is more than 1 second:
					if {@TellStaff} is true:
						loop all players:
							if loop-player has permission "SkCheat.Staff":
								send "&f&lAnti-Cheat &7> &f%player% is attempting to drop too fast." to loop-player
								set {SkCheat.drop.notify::%uuid of player%} to now
			set {SkCheat::drop.n::%uuid of player%} to now
			wait 5 seconds
			if {SkCheat::drop.p::%uuid of player%} is more than 0:
				remove 1 from {SkCheat::drop.p::%uuid of player%}
	else:
		set {SkCheat::drop.n::%uuid of player%} to now
#Cleaning up of variables
on skript load:
	clear {SkCheat::bow.p::*}
	clear {SkCheat::bow.n::*}
	clear {SkCheat::clicker.p::*}
	clear {SkCheat::clicker.n::*}
	clear {SkCheat::forcefield.p::*}
	clear {SkCheat::reach.p::*}
	clear {SkCheat::fastplace.p::*}
	clear {SkCheat::fastplace.n::*}
	clear {SkCheat::fly.b::*}
	clear {SkCheat::fly.p::*}
	clear {SkCheat::jesus.d::*}
	clear {SkCheat::jesus.p::*}
	clear {SkCheat::spam.p::*}
	clear {SkCheat::spam.m::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.jesus.notify::*}
	clear {SkCheat::forcefield::t.::*}
	clear {SkCheat::forcefield::t::*}
	clear {SkCheat::drop.n::*}
	clear {SkCheat::drop.p::*}
	clear {SkCheat::build.p::*}
	clear {SkCheat.spam.notify::*}
	clear {SkCheat.fly.notify::*}
	clear {SkCheat.bow.notify::*}
	clear {SkCheat.clicker.notify::*}
	clear {SkCheat.forcefield.notify::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.reach.notify::*}
	clear {SkCheat.build.notify::*}
	clear {SkCheat.drop.notify::*}
on skript unload:
	clear {SkCheat::bow.p::*}
	clear {SkCheat::bow.n::*}
	clear {SkCheat::clicker.p::*}
	clear {SkCheat::clicker.n::*}
	clear {SkCheat::forcefield.p::*}
	clear {SkCheat::reach.p::*}
	clear {SkCheat::fastplace.p::*}
	clear {SkCheat::fastplace.n::*}
	clear {SkCheat::fly.b::*}
	clear {SkCheat::fly.p::*}
	clear {SkCheat::jesus.d::*}
	clear {SkCheat::jesus.p::*}
	clear {SkCheat::spam.p::*}
	clear {SkCheat::spam.m::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.jesus.notify::*}
	clear {SkCheat::forcefield::t.::*}
	clear {SkCheat::forcefield::t::*}
	clear {SkCheat::drop.n::*}
	clear {SkCheat::drop.p::*}
	clear {SkCheat::build.p::*}
	clear {SkCheat.spam.notify::*}
	clear {SkCheat.fly.notify::*}
	clear {SkCheat.bow.notify::*}
	clear {SkCheat.clicker.notify::*}
	clear {SkCheat.forcefield.notify::*}
	clear {SkCheat.fastplace.notify::*}
	clear {SkCheat.reach.notify::*}
	clear {SkCheat.build.notify::*}
	clear {SkCheat.drop.notify::*}
on quit:
	clear {SkCheat::bow.p::%uuid of player%}
	clear {SkCheat::bow.n::%uuid of player%}
	clear {SkCheat::clicker.p::%uuid of player%}
	clear {SkCheat::clicker.n::%uuid of player%}
	clear {SkCheat::forcefield.p::%uuid of player%}
	clear {SkCheat::reach.p::%uuid of player%}
	clear {SkCheat::fastplace.p::%uuid of player%}
	clear {SkCheat::fastplace.n::%uuid of player%}
	clear {SkCheat::fly.b::%uuid of player%}
	clear {SkCheat::fly.p::%uuid of player%}
	clear {SkCheat::jesus.d::%uuid of player%}
	clear {SkCheat::jesus.p::%uuid of player%}
	clear {SkCheat::spam.p::%uuid of player%}
	clear {SkCheat::spam.m::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.jesus.notify::%uuid of player%}
	clear {SkCheat::forcefield::t.::%uuid of player%}
	clear {SkCheat::forcefield::t::%uuid of player%}
	clear {SkCheat::drop.n::%uuid of player%}
	clear {SkCheat::drop.p::%uuid of player%}
	clear {SkCheat::build.p::%uuid of player%}
	clear {SkCheat.spam.notify::%uuid of player%}
	clear {SkCheat.fly.notify::%uuid of player%}
	clear {SkCheat.bow.notify::%uuid of player%}
	clear {SkCheat.clicker.notify::%uuid of player%}
	clear {SkCheat.forcefield.notify::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.reach.notify::%uuid of player%}
	clear {SkCheat.build.notify::%uuid of player%}
	clear {SkCheat.drop.notify::%uuid of player%}
on join:
	clear {SkCheat::bow.p::%uuid of player%}
	clear {SkCheat::bow.n::%uuid of player%}
	clear {SkCheat::clicker.p::%uuid of player%}
	clear {SkCheat::clicker.n::%uuid of player%}
	clear {SkCheat::forcefield.p::%uuid of player%}
	clear {SkCheat::reach.p::%uuid of player%}
	clear {SkCheat::fastplace.p::%uuid of player%}
	clear {SkCheat::fastplace.n::%uuid of player%}
	clear {SkCheat::fly.b::%uuid of player%}
	clear {SkCheat::fly.p::%uuid of player%}
	clear {SkCheat::jesus.d::%uuid of player%}
	clear {SkCheat::jesus.p::%uuid of player%}
	clear {SkCheat::spam.p::%uuid of player%}
	clear {SkCheat::spam.m::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.jesus.notify::%uuid of player%}
	clear {SkCheat::forcefield::t.::%uuid of player%}
	clear {SkCheat::forcefield::t::%uuid of player%}
	clear {SkCheat::drop.n::%uuid of player%}
	clear {SkCheat::drop.p::%uuid of player%}
	clear {SkCheat::build.p::%uuid of player%}
	clear {SkCheat.spam.notify::%uuid of player%}
	clear {SkCheat.fly.notify::%uuid of player%}
	clear {SkCheat.bow.notify::%uuid of player%}
	clear {SkCheat.clicker.notify::%uuid of player%}
	clear {SkCheat.forcefield.notify::%uuid of player%}
	clear {SkCheat.fastplace.notify::%uuid of player%}
	clear {SkCheat.reach.notify::%uuid of player%}
	clear {SkCheat.build.notify::%uuid of player%}
	clear {SkCheat.drop.notify::%uuid of player%}

 

 

 

Créditos: KevinDoesMC

testado na 1.5.2 ? 

Link para o comentário
Compartilhar em outros sites

Participe da Conversa

Você pode postar agora e se cadastrar mais tarde. Se você tiver uma conta, a class='ipsType_brandedLink' href='https://gamersboard.com.br/login/' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title='Sign In Now'>acesse agora para postar com sua conta.
Observação: sua postagem exigirá aprovação do moderador antes de ficar visível.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.

Processando...
×
×
  • Criar Novo...