Jump to content
  • 0
woody

About Bot Checker

Question

 

- script Anti Bot -1,{

OnNPCKillEvent:

if(getgmlevel() > 0) end;

set @kill,@kill+1;

if(@kill >= rand(200,201)) goto Check;

end;

OnPCLoginEvent:

Check:

if(getgmlevel() > 0) end;

getmapxy .@map$, .@x, .@y, 0;

if (.@map$=="jawaii") end;

if(checkcart() == 1) set @cart,1;

if(checkfalcon() == 1) set @falcon,1;

if(checkriding() == 1) set @riding,1;

atcommand "@option 2 0 0";

atcommand "@battleignore";

setoption 0x2,1;

sc_start sc_berserk, 1000000000, 1;

mes "[Anti Bot]";

mes "Bot checking time";

mes "Please input the number you see";

next;

switch( rand(1,9) ) {

case 1:

mes "#################^83F52C##^000000################";

mes "###############^83F52C####^000000################";

mes "#################^83F52C##^000000################";

mes "#################^83F52C##^000000################";

mes "#################^83F52C##^000000################";

mes "#################^83F52C##^000000################";

mes "###############^83F52C######^000000##############";

input @num;

if(@num == 1) break;

atcommand "@kick "+strcharinfo(0);

end;

case 2:

mes "#############^83F52C#######^000000###############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "###################^83F52C##^000000##############";

mes "#############^83F52C#######^000000###############";

mes "############^83F52C##^000000#####################";

mes "############^83F52C##^000000#####################";

mes "############^83F52C#########^000000##############";

input @num;

if(@num == 2) break;

atcommand "@kick "+strcharinfo(0);

end;

case 3:

mes "#############^83F52C#######^000000###############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "###################^83F52C##^000000##############";

mes "#############^83F52C#######^000000###############";

mes "###################^83F52C##^000000##############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "#############^83F52C#######^000000###############";

input @num;

if(@num == 3) break;

atcommand "@kick "+strcharinfo(0);

end;

case 4:

mes "############^83F52C##^000000#####################";

mes "############^83F52C##^000000####^83F52C##^000000###############";

mes "############^83F52C##^000000####^83F52C##^000000###############";

mes "############^83F52C##^000000####^83F52C##^000000###############";

mes "############^83F52C#########^000000##############";

mes "##################^83F52C##^000000###############";

mes "##################^83F52C##^000000###############";

input @num;

if(@num == 4) break;

atcommand "@kick "+strcharinfo(0);

end;

case 5:

mes "############^83F52C########^000000###############";

mes "############^83F52C##^000000#####################";

mes "############^83F52C##^000000#####################";

mes "############^83F52C#######^000000################";

mes "##################^83F52C##^000000###############";

mes "############^83F52C##^000000####^83F52C##^000000###############";

mes "#############^83F52C######^000000################";

input @num;

if(@num == 5) break;

atcommand "@kick "+strcharinfo(0);

end;

case 6:

mes "#############^83F52C#######^000000###############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "############^83F52C##^000000#####################";

mes "############^83F52C########^000000###############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "#############^83F52C######^000000################";

input @num;

if(@num == 6) break;

atcommand "@kick "+strcharinfo(0);

end;

case 7:

mes "############^83F52C########^000000###############";

mes "############^83F52C##^000000####^83F52C##^000000###############";

mes "################^83F52C##^000000#################";

mes "###############^83F52C##^000000##################";

mes "###############^83F52C##^000000##################";

mes "###############^83F52C##^000000##################";

mes "###############^83F52C##^000000##################";

input @num;

if(@num == 7) break;

atcommand "@kick "+strcharinfo(0);

end;

case 8:

mes "#############^83F52C#######^000000###############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "#############^83F52C#######^000000###############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "#############^83F52C#######^000000###############";

input @num;

if(@num == 8) break;

atcommand "@kick "+strcharinfo(0);

end;

case 9:

mes "#############^83F52C#######^000000###############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "#############^83F52C########^000000##############";

mes "###################^83F52C##^000000##############";

mes "############^83F52C##^000000#####^83F52C##^000000##############";

mes "#############^83F52C#######^000000###############";

input @num;

if(@num == 9) break;

atcommand "@kick "+strcharinfo(0);

end;

}

next;

mes "[Anti Bot]";

mes "Thank you for your patience, you can now move on.";

atcommand "@option 0 0 0";

atcommand "@battleignore";

setoption 0x2,0;

sc_end sc_berserk;

percentheal 100,100;

set @kill,0;

if(@cart == 1) {

setcart;

set @cart,0;

}

if(@falcon == 1) {

setfalcon;

set @falcon,0;

}

if(@riding == 1) {

setriding;

set @riding,0;

}

close;

}

 

Changing 

 

 

 

 if(@kill >= rand(200,201)) goto Check;

end;

 

To Every 15 minute ...

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0

isn't that annoying for player and bot (bot checker will fail it mean) can do relog before timer is out to check is kind funny? however try this..

 

add this to end of script before last closing bracket

OnPCLoadMapEvent:	for (.@i = 0; .@i < getarraysize(.map_list$); .@i++) {		if (strcharinfo(3) == .map_list$[.@i]) {			addtimer .time_tocheck, strnpcinfo(3)+"::On15secs";			break;		}	}	end;On15secs:	for (.@i = 0; .@i < getarraysize(.map_list$); .@i++)		if (strcharinfo(3) == .map_list$[.@i]) goto check;	end;OnInit:	.time_tocheck =  15 *1000;	setarray .map_list$, "prontera", "payon"; // add the map you want to it triggered	for (.@i = 0; .@i < getarraysize(.map_list$); .@i++) setmapflag .map_list$[.@i],mf_loadevent;	end;

and in the original script you copas above, add this line

addtimer .time_tocheck, strnpcinfo(3)+"::On15secs";

after this line

percentheal 100,100;

 

nb: please use code box for the script so it easy to do copy paste

Edited by Litro

Share this post


Link to post
Share on other sites
  • 0
-    script    Anti Bot    -1,{OnNPCKillEvent:    if(getgmlevel() > 0) end;    set @kill,@kill+1;    if(@kill >= rand(200,201)) goto Check;    end;OnPCLoginEvent:Check:    if(getgmlevel() > 0) end;    getmapxy .@map$, .@x, .@y, 0;    if (.@map$=="jawaii") end;    if(checkcart() == 1) set @cart,1;    if(checkfalcon() == 1) set @falcon,1;    if(checkriding() == 1) set @riding,1;    atcommand "@option 2 0 0";    atcommand "@battleignore";    setoption 0x2,1;    sc_start sc_berserk, 1000000000, 1;    mes "[Anti Bot]";    mes "Bot checking time";    mes "Please input the number you see";    next;    switch( rand(1,9) ) {    case 1:        mes "#################^83F52C##^000000################";        mes "###############^83F52C####^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "###############^83F52C######^000000##############";        input @num;        if(@num == 1) break;        atcommand "@kick "+strcharinfo(0);        end;    case 2:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "###################^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000#####################";        mes "############^83F52C#########^000000##############";        input @num;        if(@num == 2) break;        atcommand "@kick "+strcharinfo(0);        end;    case 3:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "###################^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "###################^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 3) break;        atcommand "@kick "+strcharinfo(0);        end;    case 4:        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C#########^000000##############";        mes "##################^83F52C##^000000###############";        mes "##################^83F52C##^000000###############";        input @num;        if(@num == 4) break;        atcommand "@kick "+strcharinfo(0);        end;    case 5:        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000#####################";        mes "############^83F52C#######^000000################";        mes "##################^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "#############^83F52C######^000000################";        input @num;        if(@num == 5) break;        atcommand "@kick "+strcharinfo(0);        end;    case 6:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C######^000000################";        input @num;        if(@num == 6) break;        atcommand "@kick "+strcharinfo(0);        end;    case 7:        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "################^83F52C##^000000#################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        input @num;        if(@num == 7) break;        atcommand "@kick "+strcharinfo(0);        end;    case 8:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 8) break;        atcommand "@kick "+strcharinfo(0);        end;    case 9:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C########^000000##############";        mes "###################^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 9) break;        atcommand "@kick "+strcharinfo(0);        end;    }    next;    mes "[Anti Bot]";    mes "Thank you for your patience, you can now move on.";    atcommand "@option 0 0 0";    atcommand "@battleignore";    setoption 0x2,0;    sc_end sc_berserk;    percentheal 100,100;    addtimer .time_tocheck, strnpcinfo(3)+"::On15secs";    set @kill,0;    if(@cart == 1) {        setcart;        set @cart,0;    }    if(@falcon == 1) {        setfalcon;        set @falcon,0;    }    if(@riding == 1) {        setriding;        set @riding,0;    }    close;OnPCLoadMapEvent:	for (.@i = 0; .@i < getarraysize(.map_list$); .@i++) {		if (strcharinfo(3) == .map_list$[.@i]) {			addtimer .time_tocheck, strnpcinfo(3)+"::On15secs";			break;		}	}	end;On15secs:	for (.@i = 0; .@i < getarraysize(.map_list$); .@i++)		if (strcharinfo(3) == .map_list$[.@i]) goto check;	end;OnInit:	.time_tocheck =  15 *1000;	setarray .map_list$, "jawaii", "payon"; // add the map you want to it triggered	for (.@i = 0; .@i < getarraysize(.map_list$); .@i++) setmapflag .map_list$[.@i],mf_loadevent;	end;}

Like this ?

Edited by woody

Share this post


Link to post
Share on other sites
  • 0

here, Every 15 minute 

 

-	script	Anti Bot	-1,{Timmer:    if(getgmlevel() > 0) end;	addtimer 900000, "Anti Bot::OnCheck";    end;		OnPCLoginEvent:OnCheck:    if(getgmlevel() > 0) end;    getmapxy .@map$, .@x, .@y, 0;    if (.@map$=="jawaii") end;    if(checkcart() == 1) set @cart,1;    if(checkfalcon() == 1) set @falcon,1;    if(checkriding() == 1) set @riding,1;    atcommand "@option 2 0 0";    atcommand "@battleignore";    setoption 0x2,1;    sc_start sc_berserk, 1000000000, 1;    mes "[Anti Bot]";    mes "Bot checking time";    mes "Please input the number you see";    next;    switch( rand(1,9) ) {    case 1:        mes "#################^83F52C##^000000################";        mes "###############^83F52C####^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "###############^83F52C######^000000##############";        input @num;        if(@num == 1) break;        atcommand "@kick "+strcharinfo(0);        end;    case 2:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "###################^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000#####################";        mes "############^83F52C#########^000000##############";        input @num;        if(@num == 2) break;        atcommand "@kick "+strcharinfo(0);        end;    case 3:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "###################^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "###################^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 3) break;        atcommand "@kick "+strcharinfo(0);        end;    case 4:        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C#########^000000##############";        mes "##################^83F52C##^000000###############";        mes "##################^83F52C##^000000###############";        input @num;        if(@num == 4) break;        atcommand "@kick "+strcharinfo(0);        end;    case 5:        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000#####################";        mes "############^83F52C#######^000000################";        mes "##################^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "#############^83F52C######^000000################";        input @num;        if(@num == 5) break;        atcommand "@kick "+strcharinfo(0);        end;    case 6:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C######^000000################";        input @num;        if(@num == 6) break;        atcommand "@kick "+strcharinfo(0);        end;    case 7:        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "################^83F52C##^000000#################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        input @num;        if(@num == 7) break;        atcommand "@kick "+strcharinfo(0);        end;    case 8:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 8) break;        atcommand "@kick "+strcharinfo(0);        end;    case 9:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C########^000000##############";        mes "###################^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 9) break;        atcommand "@kick "+strcharinfo(0);        end;    }    next;    mes "[Anti Bot]";    mes "Thank you for your patience, you can now move on.";    atcommand "@option 0 0 0";    atcommand "@battleignore";    setoption 0x2,0;    sc_end sc_berserk;    percentheal 100,100;    if(@cart == 1) {        setcart;        set @cart,0;    }    if(@falcon == 1) {        setfalcon;        set @falcon,0;    }    if(@riding == 1) {        setriding;        set @riding,0;    }	goto Timmer;    close;}

Share this post


Link to post
Share on other sites
  • 0

 

here, Every 15 minute 

 

-	script	Anti Bot	-1,{Timmer:    if(getgmlevel() > 0) end;	addtimer 900000, "Anti Bot::OnCheck";    end;		OnPCLoginEvent:OnCheck:    if(getgmlevel() > 0) end;    getmapxy .@map$, .@x, .@y, 0;    if (.@map$=="jawaii") end;    if(checkcart() == 1) set @cart,1;    if(checkfalcon() == 1) set @falcon,1;    if(checkriding() == 1) set @riding,1;    atcommand "@option 2 0 0";    atcommand "@battleignore";    setoption 0x2,1;    sc_start sc_berserk, 1000000000, 1;    mes "[Anti Bot]";    mes "Bot checking time";    mes "Please input the number you see";    next;    switch( rand(1,9) ) {    case 1:        mes "#################^83F52C##^000000################";        mes "###############^83F52C####^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "#################^83F52C##^000000################";        mes "###############^83F52C######^000000##############";        input @num;        if(@num == 1) break;        atcommand "@kick "+strcharinfo(0);        end;    case 2:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "###################^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000#####################";        mes "############^83F52C#########^000000##############";        input @num;        if(@num == 2) break;        atcommand "@kick "+strcharinfo(0);        end;    case 3:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "###################^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "###################^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 3) break;        atcommand "@kick "+strcharinfo(0);        end;    case 4:        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "############^83F52C#########^000000##############";        mes "##################^83F52C##^000000###############";        mes "##################^83F52C##^000000###############";        input @num;        if(@num == 4) break;        atcommand "@kick "+strcharinfo(0);        end;    case 5:        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C##^000000#####################";        mes "############^83F52C#######^000000################";        mes "##################^83F52C##^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "#############^83F52C######^000000################";        input @num;        if(@num == 5) break;        atcommand "@kick "+strcharinfo(0);        end;    case 6:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####################";        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C######^000000################";        input @num;        if(@num == 6) break;        atcommand "@kick "+strcharinfo(0);        end;    case 7:        mes "############^83F52C########^000000###############";        mes "############^83F52C##^000000####^83F52C##^000000###############";        mes "################^83F52C##^000000#################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        mes "###############^83F52C##^000000##################";        input @num;        if(@num == 7) break;        atcommand "@kick "+strcharinfo(0);        end;    case 8:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 8) break;        atcommand "@kick "+strcharinfo(0);        end;    case 9:        mes "#############^83F52C#######^000000###############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C########^000000##############";        mes "###################^83F52C##^000000##############";        mes "############^83F52C##^000000#####^83F52C##^000000##############";        mes "#############^83F52C#######^000000###############";        input @num;        if(@num == 9) break;        atcommand "@kick "+strcharinfo(0);        end;    }    next;    mes "[Anti Bot]";    mes "Thank you for your patience, you can now move on.";    atcommand "@option 0 0 0";    atcommand "@battleignore";    setoption 0x2,0;    sc_end sc_berserk;    percentheal 100,100;    if(@cart == 1) {        setcart;        set @cart,0;    }    if(@falcon == 1) {        setfalcon;        set @falcon,0;    }    if(@riding == 1) {        setriding;        set @riding,0;    }	goto Timmer;    close;}

screenxero022.jpg

 

Dont Have Close 

Share this post


Link to post
Share on other sites
  • 0

coz it jump to label 'Timmer' and the label have an 'end;' not 'close;', change that end; to close;

Timmer:    if(getgmlevel() > 0) end;	addtimer 900000, "Anti Bot::OnCheck";    end;

it little strange for me, do you sure want to run bot checker every 15 minute on every map except jawai ?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.