PDA

View Full Version : Antiban Methods!



Pancakes
10-02-2007, 05:46 AM
I thought we could throw together quite a nice little thread with loads of suggestions for different antiban functions / procedures and lots listed.

This is mainly due to the lacking of creative antiban I see in scripts these days...

Here are a few of my 'generic' ones that I have made in the last 10 minutes.

procedure RGameTab;
var i : Integer;
begin
i := GetCurrentTab;

GameTab(1 + Random(12));

Wait(100 + Random(4000));

GameTab(i);
end;

procedure RRotate;
var i : Integer;
begin
i := Random(4);
case i of
0: MakeCompass('N');
1: MakeCompass('E');
2: MakeCompass('S');
3: MakeCompass('W');
end;
end;

procedure LeaveScreen;
var X, Y : Integer;
var ScreenBox : TBox;
begin
ScreenBox.x1 := MSX1; ScreenBox.y1 := MSY1;
ScreenBox.x2 := MSX2; ScreenBox.y2 := MSY2;

repeat
X := Random(1024);
Y := Random(768);
until(Not(IntInBox(X, Y, ScreenBox)));

MMouse(X, Y, 0, 0);
end;

I know those are nothing interesting, but I'm out of ideas! Help me out :D

MasterKill
10-02-2007, 05:48 AM
not bad :)

a lil shorter:
procedure RRotate;
begin
case Random (4) of
0: MakeCompass('N');
1: MakeCompass('E');
2: MakeCompass('S');
3: MakeCompass('W');
end;
end;

Pancakes
10-02-2007, 05:51 AM
I know, but that was taken from my script where it is a function and actually returns which way the compass was pointed.

Come on guys :)

PwNZoRNooB
10-02-2007, 05:53 AM
not bad :)

a lil shorter:
procedure RRotate;
begin
case Random (4) of
0: MakeCompass('N');
1: MakeCompass('E');
2: MakeCompass('S');
3: MakeCompass('W');
end;
end;

But you should put the compass back to N again :D
Or what script will work with the compass headed to east? or west or north? :)

MasterKill
10-02-2007, 05:57 AM
hey hey, i only sead what's easy'er, i'm not i'mproving the script? lawl, and btw, if you want it back to north again, it will make 1 full rotate. so only this should be needed:

Procedure Rotate;
begin
MakeCompass('S');
MakeCompass('N');
end;

Pancakes
10-02-2007, 05:58 AM
Another one I just made, seems to do what I imagined it would :p

procedure QuirkyMouse;
var i, M, X, Y : Integer;
begin
M := MouseSpeed;

for i := 0 to 11 + Random(20) do
begin
MouseSpeed := 35 + Random(20);

X := Random(MIX2);
Y := Random(MIY2);

MMouse(X, Y, 0, 0);

Wait(1);
end;
MouseSpeed := M;
end;

Its pretty crazy, I warn you.

PwNZoRNooB
10-02-2007, 06:01 AM
hey hey, i only sead what's easy'er, i'm not i'mproving the script? lawl, and btw, if you want it back to north again, it will make 1 full rotate. so only this should be needed:

Procedure Rotate;
begin
MakeCompass('S');
MakeCompass('N');
end;

Exactily :)

Pancakes
10-02-2007, 06:04 AM
Another one, untested.

procedure CrazyEmotes;
var i, M : Integer;
begin
M := MouseSpeed;

for i := 0 to 7 + Random(10) do
begin
MouseSpeed := 15 + Random(20);
DoEmote(1 + Random(20);
end;

MouseSpeed := M;

if (Random(2) = 0) then TypeSend('lol');
end;

:spot:

MasterKill
10-02-2007, 06:05 AM
oh come on, that's like: i'm crazy ban me fast!

:D

Pancakes
10-02-2007, 06:36 AM
Rofl.

What about
procedure RTypeSend(TypeList : TStringArray);
var i : Integer;
begin
i := Random(GetArrayLength(TypeList) - 1);
TypeSend(TypeList[i]);
end;

Then you can go like
RTypeSend(['lol', 'loll', 'haha', 'lolz', 'lol/']);

And it will say either one of them.

These are untested btw, but should work.

Dumpin
10-02-2007, 07:18 AM
hmm nice, maybe I learn something from it when have time ( g2g school now )

ZephyrsFury
10-02-2007, 08:48 AM
Heres a couple from my RM Runner.


procedure TypeSomething;
begin
if (SomethingTyped) then
begin
KeyDown(13);
Wait(RandomRange(500, 1500));
KeyUp(13);
SomethingTyped := False;
end else
begin
case Random(3) of
0: i := RandomRange(65, 91);
1: i := RandomRange(48, 58);
2: i := RandomRange(96, 112);
3: i := RandomRange(186, 223);
end;
KeyDown(i);
Wait(RandomRange(500, 3000));
KeyUp(i);
SomethingTyped := True;
end;
end;


and:


procedure ExamineInv;
begin
j := Random(28) + 1;
T := ItemCoords(j);
if (ExistsItem(j)) then
begin
Mouse(T.x, T.y, 0, 0, false);
Wait(200 + random(100));
ChooseOption('xamine');
Wait(1000);
end;
end;



The first is supposed to simulate someone accidentally dropping something on the keyboard or leaning on a key. If it has already typed something it might "accidental" press enter next time the same procedure is called.

The second one check to see if an item exists in a random inventory spot and "examines" it if it does.

Lalaji
10-02-2007, 12:02 PM
Very nice guys...

Pancakes
10-03-2007, 12:09 AM
I like the examine inventory one, mind if I steal the idea? :p

Edit: Just a remake of it, I like the idea.

procedure ExamineInventory;
var i : Integer;
var T : Tpoint;
begin
if (InvCount = 0) then Exit;

repeat
j := Random(28) + 1;
until(ExistsItem(j));

T := ItemCoords(j);

Mouse(T.x, T.y, 3, 3, False);

Wait(150 + Random(150));

ChooseOption('xamine');

Wait(100 + Random(500));

end;