Doppler PK
05-04-2007, 09:09 PM
Auto Zammy Mage Curser
I Have:
-Unsigned Applet
-Low Detail
-Specified the Window
-Picked Colors
-I commented out the extra players cause i only want one player.
But when I try to start the bot nothing happens....
It says running script and there aren't any errors, but the SRL window does not minimize and the runescape window doesn't do anything..
What do i do?
Program SyberiumsZammyMager;
{.include SRL\SRL.scar}
{.include SRL\SRL\skill\magic.scar}
{.include SRL\SRL\extended\xMapWalk.scar}
{ # ScriptName: Auto Monk of zamorak confuser/weakener/curser! }
{ # ScriptDefinition: Uses confuse/curse/weaken on monk of zammy. }
{ # Instructions: Start in varrock castle on the west side of mage cage!}
{ # Instructions Cont: Pick Color of zammy mage! IMPORTANT! }
{ # Credits: Me for making this! Junior-Helped with my stupid mistake =/, }
{ # Credits Cont: pwnaz0r-THANKS MAN!, Scuancy-MAN thanks for being a great}
{ tester! Ruroken for world switch idea,}
{ # Lastly have fun and auto safe and correctly!
{ IF the weaken isent working for you do the below instructions.
go to SRL\SRL\skill\magic.scar and replace there BMP with mine.
MAKE SURE U REMOVE THE {} {AROUND THE BMP!}
{ weaken := BitmapFromString(5, 6, 'z78DA33353171347632000143' +
'474B03335717080911C12F8E298BA912975E5333131713235 C6A2' +
'0B2986A206C008F6C2631'); }
const
WichSpell = 2; // 0 for confuse, 1 for weaken, 2 for curse!
Howmanyto = 4326;// how many times to cast the above spells.
MSpeed = 20;
Mage1 = 2303841; //mage color(s) shoudent have to change these
Mage2 = 1975125;
Mage3 = 2830198;
StartPlayer = 0; // What player you start with.
NumberOfUsers = 1; // The Number of users you use.
Version = ('4.0') ;
Mem = ('Yes'); // yes to load member worlds, no for free worlds.
var
Howmany,cursegone,weakengone,confusegone,xcv,loads : integer;
attemptss : integer;
ZMage : array[0..2] of integer;
ZMageI : integer;
Chat, Name, ChatName: String;
PreferredWorlds: array[0..13] of integer;
PreferredWorldCounter :integer;
Handle, World:integer;
procedure DeclarePlayers;
begin
HowManyPlayers := NumberOfUsers;
NumberOfPlayers( HowManyPlayers );
CurrentPlayer := StartPlayer;
Players[0].Name :='MyName';
Players[0].Pass :='MyPass';
Players[0].Nick :='ass';
Players[0].Active:=True;
{
Players[1].Name :='';
Players[1].Pass :='';
Players[1].Nick :='';
Players[1].Active:=True;
Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].Active:=True;
Players[3].Name :='';
Players[3].Pass :='';
Players[3].Nick :='';
Players[3].Active:=True;
Players[4].Name :='';
Players[4].Pass :='';
Players[4].Nick :='';
Players[4].Active:=True; }
end;
procedure InitWorlds;
begin
if (Mem = 'no') or (mem = 'No') then
begin
PreferredWorlds[0]:=107;
PreferredWorlds[1]:=108;
PreferredWorlds[2]:=109;
PreferredWorlds[3]:=125;
PreferredWorlds[4]:=126;
PreferredWorlds[5]:=127;
PreferredWorlds[6]:=128;
PreferredWorlds[7]:=17;
PreferredWorlds[8]:=37;
PreferredWorlds[9]:=113;
PreferredWorlds[10]:=93;
PreferredWorlds[11]:=95;
PreferredWorlds[12]:=96;
PreferredWorlds[13]:=85;
end else
begin
if(Mem = 'Yes') or (Mem = 'yes') then
begin
PreferredWorlds[0]:=138;
PreferredWorlds[1]:=137;
PreferredWorlds[2]:=132;
PreferredWorlds[3]:=131;
PreferredWorlds[4]:=130;
PreferredWorlds[5]:=124;
PreferredWorlds[6]:=123;
PreferredWorlds[7]:=121;
PreferredWorlds[8]:=120;
PreferredWorlds[9]:=104;
PreferredWorlds[10]:=89;
PreferredWorlds[11]:=88;
PreferredWorlds[12]:=78;
PreferredWorlds[13]:=77;
end;
end;
end;
function WelcomeToRuneScape:Boolean; // By WT-Fakawi
var Welcome,tx,ty:integer;
begin
Welcome := CreateBitmapMaskFromText('Welcome', UpChars);
Result:= FindBitmapMaskTolerance(Welcome, tx, ty, 250, 200, 530, 260, 10,10)
FreeBitmap(Welcome);
end;
Procedure SwitchWorlds; // By WT-Fakawi
begin
SCSSLoadWorld(PreferredWorlds[PreferredWorldCounter], True);
PreferredWorldCounter:=PreferredWorldCounter+1;
if PreferredWorldCounter > 13 then PreferredWorldCounter:=0;
Wait(20000);
Handle:=SCSSGetHandle;
World:=SCSSGetCurWorld;
SCSSSetHandle;
ActivateClient;
repeat
Wait(1000);
until WelcomeToRuneScape;
end;
procedure talkrnd;
begin
if (FindTalk) then
begin
FindTalk;
Findnormalrandoms;
end;
end;
Function FindFastRandoms: Boolean;
var
i: Integer;
begin
for i:=0 to 10 do
begin
case I of
0: If FindTalk then
begin
FindNormalRandoms;
end;
1: If FindDead then
Result := True;
2: If FindMod then
Result := True;
3: If FindMime then
Result := True;
4: If FindMaze then
Result := True;
5: If FindQuiz then
Result := True;
6: If FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
8: begin
talkrnd;
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
9: RC;
10: talkrnd;
end;
talkrnd;
end;
end;
procedure DeclareBMPS;
begin
cursegone := BitmapFromString(5, 5, 'z78DA33303230303032809' +
'016061686861036903630B44011C794C510C7228B218E6232 8638' +
'840400938E1D11');
weakengone := BitmapFromString(5, 6, 'z78DA3335317134763230' +
'323030303234343030B480901011FCE298B2982A71E935353 3713' +
'1C1693E4416530D840D006BA02332');
confusegone := BitmapFromString(12, 7, 'z78DA33743430307434' +
'3032303030323404B22D2024448472714C596435B8CCC1340 1BF5' +
'DC4984C8939E4F90B97087E927817926A02B22C00E1A860F4 ');
end;
procedure randoms;
begin
if (FindFight) then
begin
Status('Climbing up stairs...')
if(FindObj3(x,y,'tair',610411,7)) then
begin
Mouse(x,y,3,3,true);
end;
begin
Sleep(15000+random(5000));
if(InChatMulti('evil','bored','vanish')) then
begin
wait(1000+random(500))
MakeCompass('E');
if(FindObj3(x,y,'tair',5395032,8)) then
begin
wait(1000+random(300));
Mouse(x,y,3,3,true);
wait(3000+random(400));
Mouse(126,182,3,3,true);
end;
Wait(10);
talkrnd;
end;
end;
end;
end;
Function ZCastOn(Spell, Monster: string; MonsterColor : Integer; Tolerance:
Integer): Boolean;
var
tx,ty : integer;
begin
tx := tx + random ( 40 );
ty := ty + random ( 40 );
if (not Cast(Spell)) then Exit;
ZMageI := random(3)
if (FindObj3(tx, ty, Monster, ZMage[ZMageI], Tolerance)) then
begin
Mouse(tx,ty, 0, 0, True);
Result := True;
end;
end;
Procedure ZammyMageColors;
begin
ZMage[0] := (Mage1);
ZMage[1] := (Mage2);
ZMage[2] := (Mage3);
end;
Function FindMage : Boolean;
begin
talkrnd;
ZMageI:=Random(3);
if(FindObj3(x, y, 'amora', ZMage[ZMageI], 7)) then
begin
MakeCompass('E');
writeln('Found Mage!');
Result := True;
Exit;
end
else
begin
Writeln('Finding Mage..');
MakeCompass('E');
Wait(300+random(300));
HighestAngle;
end;
result := False;
end;
Procedure LocateMage;
begin
if(FindMage) then
begin
MakeCompass('E');
Writeln('Found Mage1!')
Exit;
end
else
begin
repeat
Writeln('Trying to Find mage..')
FindMage;
Attemptss:=Attemptss + 1;
Until(FindMage) or (Attemptss>3);
if (Attemptss > 3) then
begin
Writeln('Dident find mage!')
Switchworlds;
LoginPlayer;
Loads := Loads + 1;
if (Loads > 5) then
NextPlayer(False);
end;
end;
end;
Procedure zammymage;
var
Spell : String;
begin
case wichspell of
0: Spell:='Confuse';
1: Spell:='Weaken';
2: Spell:='Curse';
end;
FindFastRandoms;
talkrnd;
Wait(300+random(200));
ZMageI := random(3)
ZCastOn(Spell,'amora',ZMage[ZMageI],8);
talkrnd;
if(howmany>=howmanyto) then
NextPlayer(False);
end;
function StolenMage : Boolean;
begin
GameTab(7);
if(wichspell=0) and FindBitmap(confusegone,x,y) or (wichspell=1) and FindBitMap(weakengone,x,y) or (wichspell=2) and FindBitmap(cursegone,x,y) then
begin
xcv := xcv + 1;
Mouse(x,y,3,3,true);
Wait(100+random(100));
if(FindColorTolerance(x,y,Zmage[ZMageI],2,3,760,495,6)) then
begin
xcv := xcv + 1;
Mouse(x,y,3,3,True);
if (InChatMulti('enough','unes','cast') or InChatMulti('not','ody','spell')) then
begin
xcv := xcv + 1;
if(xcv = 3) then
begin
Result := true;
end else
Result := False;
end;
FreeBitmap(cursegone);
FreeBitmap(weakengone);
FreeBitmap(confusegone);
end;
end;
end;
Procedure DoChats;
Begin
SetChat('On', 1);
SetChat('Off', 2)
SetChat('On', 3);
End;
Procedure progress;
begin
// thanks hey321
writeln('[===============================================]')
writeln('[ Syberiums Zammy Mager ')
writeln('[ Completed ' +IntToStr(howmany)+ ' Zammy Mage Casts!')
writeln('[ Worked For ' +TimeRunning)
writeln('[Thank You for using my script! Post Proggies =]')
writeln('[==============================================]')
SRLrandomsreport;
end;
Procedure antiban1;
var DBANME : integer;
begin
writeln('Antiban1')
if (not(loggedIn)) then Exit;
DBANME := Random(100);
case DBANME of
1:Hoverskill('magic',False) ;
2:pickupmouse;
end;
end;
Procedure antiban2;
var DBANME1 : integer;
begin
writeln('AntiBan2')
if(not(LoggedIn)) then Exit;
DBANME1 := Random(100);
case DBANME1 of
1:ZCastOn('Weaken','amora',ZMage[ZMageI],5);
2:ZCastOn('Confuse','amora',ZMage[ZMageI],5);
end;
end;
Procedure click1;
begin
Mouse(698,297,5,5,true);
wait(300-random(80))
Mouse(698,297,0,0,true);
end;
Procedure click2;
begin
Mouse(685,267,5,5,true);
wait(300-random(80))
Mouse(685,267,0,0,true);
end;
Procedure click3;
begin
Mouse(652,254,5,5,true);
wait(300-random(80))
Mouse(652,254,0,0,true);
end;
Procedure missclick;
var
click : integer;
begin
click := random(60)
case click of
1:click1;
2:click2;
3:click3;
end;
end;
Function stolen : Boolean;
begin
if(InChatMulti('omeone', 'else' , 'ghting')) then
begin
Result := true;
TypeSend('Leave please.. i need exp') ;
end;
begin
if(InChatMulti('omeone', 'else' , 'ghting')) then
begin
TypeSend('Zomg u still here noob..');
Result := true;
end else
begin
Result := false;
end;
end;
end;
procedure jacked;
begin
if (stolen) then
begin
Writeln('Some one is fighting mage already!')
SwitchWorlds;
LoginPlayer;
MakeCompass('E');
MakeCompass('E');
MakeCompass('E');
highestangle;
end;
end;
procedure norunes;
begin
if (StolenMage) then
begin
writeln('Ran out of runes, Logging out.');
Players[Currentplayer].active := False;
NextPlayer(False);
end;
end;
function GetChatMessage(Text: String): Boolean;
var
TX, TY: Integer;
Chat: String;
begin
if(IsTextInAreaEx(40, 415, 130, 415, TX, TY, ':', 0, SmallChars, False, True, 0, 0, 0))then
begin
Chat:= Lowercase(Trim(GetTextAtEx(TX + 8, 415, 0, SmallChars, False, False, 0, 1, 16711680, 40, False, TR_AllChars)));
if(Pos(Text, Chat) <> 0)then
begin
Result:= True;
end
end;
end;
function GetChatName(Name: String): Boolean;
var
I: Integer;
begin
ChatName:= Lowercase(Trim(GetTextAtEx(21, 415, 0, SmallChars, False, False, 0, 0, 0, 50, False, TR_AllChars)));
I:= Pos(':', ChatName);
if(I <> 0)then
begin
Delete(ChatName, I, I);
end
if(Pos(Name, ChatName) <> 0)then
begin
Result:= True;
end
end;
Function AutoRespond: Boolean;
var
Responce, Lvl: String;
RandomReply: Integer;
begin
OldLine:= TheLine;
TheLine:= Lowercase(Trim(GetTextAtEx(20, 415, 0, SmallChars, False, False, 0, 1, 16711680, 40, False, TR_AllChars)));
NewLine:= TheLine;
If(GetChatName(Players[CurrentPlayer].Name))then
Begin
Exit;
End
If(OldLine=NewLine)then
Begin
Exit;
end
if(GetChatMessage(Players[CurrentPlayer].Name)) or (GetChatMessage(Players[CurrentPlayer].Nick))then
begin
WriteLn(''+ChatName+': '+Chat);
RandomReply:= Random(10)+1;
Case (RandomReply) of
0 : Responce:= ('?');
1 : Responce:= ('what');
2 : Responce:= ('yes');
3 : Responce:= ('no');
4 : Responce:= ('what do you want');
5 : Responce:= ('me?');
6 : Responce:= ('Yah?');
7 : Responce:= ('who?');
8 : Responce:= ('wha?');
9 : Responce:= ('?');
10 : Responce:= ('???');
end
TypeSend(Responce+' '+Name);
Result:= True;
end
If(GetChatMessage('lol'))or (GetChatMessage('lolz')) or (GetChatMessage('lmao')) or (GetChatMessage('rofl')) or (GetChatMessage('haha'))then
Begin
WriteLn(''+ChatName+': '+Chat);
RandomReply:= Random(25)+1;
Case (RandomReply) of
0 : Responce:= ('hehe');
1 : Responce:= ('lolol');
2 : Responce:= ('lol');
3 : Responce:= ('haha');
4 : Responce:= ('hihi');
5 : Responce:= ('ghehe');
6 : Responce:= ('lmao');
7 : Responce:= ('lmfao');
8 : Responce:= ('rofls');
9 : Responce:= ('fun');
10 : Responce:= ('nice');
11 : Responce:= ('lolz');
12 : Responce:= ('yep');
13 : Responce:= ('hola');
14 : Responce:= ('wow');
15 : Responce:= ('hehe...');
16 : Responce:= ('rofl');
17 : Responce:= ('ghehehghehighhe');
18 : Responce:= ('cool');
19 : Responce:= ('...');
20 : Responce:= ('???');
21 : Responce:= ('wowzers');
22 : Responce:= ('grrr...');
23 : Responce:= ('rowr');
24 : Responce:= ('lolololololol');
25 : Responce:= ('ha ha ha!!!');
end
TypeSend(Responce);
Result:= True;
end
If(GetChatMessage('mage')) or (GetChatMessage('magic')) or (GetChatMessage('mag'))
And
(GetChatMessage('lvl')) or (GetChatMessage('level')) or (GetChatMessage('lvls')) or (GetChatMessage('levels'))then
Begin
WriteLn(''+ChatName+': '+Chat);
Lvl:= IntToStr(GetSkillLevel('magic'));
RandomReply:= Random(5)+1;
Case (RandomReply) of
0 : Responce:= ('i''m lvl '+Lvl+' mage');
1 : Responce:= ('level '+Lvl+' magic');
2 : Responce:= ('lvl '+Lvl+' magein!');
3 : Responce:= (+Lvl);
4 : Responce:= ('i''m level '+lvl);
5 : Responce:= (+Lvl+' here :P');
End
TypeSend(Responce);
Result:= True;
End
If(GetChatMessage('wat')) or (GetChatMessage('what')) and (GetChatMessage('doin')) or (GetChatMessage('doing'))then
Begin
WriteLn(''+ChatName+': '+Chat);
RandomReply:= Random(12);
Case RandomReply of
0 : Responce:= ('not much');
1 : Responce:= ('nothing');
2 : Responce:= ('bored');
3 : Responce:= ('aye?');
4 : Responce:= ('emmm..nothin');
5 : Responce:= ('nope');
6 : Responce:= ('huh');
7 : Responce:= ('playin rs.. der da der');
8 : Responce:= ('what');
9 : Responce:= ('....');
10 : Responce:= ('nothin');
11 : Responce:= ('dun worry about it');
End;
TypeSend(Responce);
Result:= True;
End;
If(GetChatMessage('hey')) or (GetChatMessage('hi')) or (GetChatMessage('hello')) or (GetChatMessage('wats up')) or (GetChatMessage('whats up')) or (GetChatMessage('yo'))then
Begin
WriteLn(''+ChatName+': '+Chat);
RandomReply:= random(9)+1;
Case RandomReply of
0 : Responce:= ('ello');
1 : Responce:= ('sup');
2 : Responce:= ('yo');
3 : Responce:= ('whats up everyone');
4 : Responce:= ('whats up');
5 : Responce:= ('welcome');
6 : Responce:= ('allo allo');
7 : Responce:= ('wat up');
8 : Responce:= ('y0o');
9 : Responce:= ('=P');
10 : Responce:= ('what is up');
End
TypeSend(Responce);
Result:= True;
End
End;
begin
SetupSRL;
ScriptID := '71';
ClearDebug;
DeclarePlayers;
DeclareBMPS;
CurrentPlayer := StartPlayer;
InitWorlds;
OpenSCSS;
SCSSSetHandle;
if(not(LoggedIn)) then LoginPlayer;
NickNameBMP:= CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
DoChats;
MouseSpeed := MSpeed + Random(3)
BenMouse:=False;
MakeCompass('E');
Highestangle;
ZammyMageColors;
MakeCompass('E');
MakeCompass('E');
MakeCompass('E');
FindMage;
LocateMage;
repeat
AutoRespond;
MouseSpeed := MSpeed + Random(3)
missclick;
randoms;
talkrnd;
AutoRespond;
jacked;
norunes;
wait(600+random(200));
zammymage;
wait(200+random(100));
howmany:=howmany + 1;
progress;
antiban1;
antiban2;
FindFastRandoms;
AutoRespond;
until(howmany>=howmanyto);
NextPlayer(False);
writeln('dbuf 1');
end.
I Have:
-Unsigned Applet
-Low Detail
-Specified the Window
-Picked Colors
-I commented out the extra players cause i only want one player.
But when I try to start the bot nothing happens....
It says running script and there aren't any errors, but the SRL window does not minimize and the runescape window doesn't do anything..
What do i do?
Program SyberiumsZammyMager;
{.include SRL\SRL.scar}
{.include SRL\SRL\skill\magic.scar}
{.include SRL\SRL\extended\xMapWalk.scar}
{ # ScriptName: Auto Monk of zamorak confuser/weakener/curser! }
{ # ScriptDefinition: Uses confuse/curse/weaken on monk of zammy. }
{ # Instructions: Start in varrock castle on the west side of mage cage!}
{ # Instructions Cont: Pick Color of zammy mage! IMPORTANT! }
{ # Credits: Me for making this! Junior-Helped with my stupid mistake =/, }
{ # Credits Cont: pwnaz0r-THANKS MAN!, Scuancy-MAN thanks for being a great}
{ tester! Ruroken for world switch idea,}
{ # Lastly have fun and auto safe and correctly!
{ IF the weaken isent working for you do the below instructions.
go to SRL\SRL\skill\magic.scar and replace there BMP with mine.
MAKE SURE U REMOVE THE {} {AROUND THE BMP!}
{ weaken := BitmapFromString(5, 6, 'z78DA33353171347632000143' +
'474B03335717080911C12F8E298BA912975E5333131713235 C6A2' +
'0B2986A206C008F6C2631'); }
const
WichSpell = 2; // 0 for confuse, 1 for weaken, 2 for curse!
Howmanyto = 4326;// how many times to cast the above spells.
MSpeed = 20;
Mage1 = 2303841; //mage color(s) shoudent have to change these
Mage2 = 1975125;
Mage3 = 2830198;
StartPlayer = 0; // What player you start with.
NumberOfUsers = 1; // The Number of users you use.
Version = ('4.0') ;
Mem = ('Yes'); // yes to load member worlds, no for free worlds.
var
Howmany,cursegone,weakengone,confusegone,xcv,loads : integer;
attemptss : integer;
ZMage : array[0..2] of integer;
ZMageI : integer;
Chat, Name, ChatName: String;
PreferredWorlds: array[0..13] of integer;
PreferredWorldCounter :integer;
Handle, World:integer;
procedure DeclarePlayers;
begin
HowManyPlayers := NumberOfUsers;
NumberOfPlayers( HowManyPlayers );
CurrentPlayer := StartPlayer;
Players[0].Name :='MyName';
Players[0].Pass :='MyPass';
Players[0].Nick :='ass';
Players[0].Active:=True;
{
Players[1].Name :='';
Players[1].Pass :='';
Players[1].Nick :='';
Players[1].Active:=True;
Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].Active:=True;
Players[3].Name :='';
Players[3].Pass :='';
Players[3].Nick :='';
Players[3].Active:=True;
Players[4].Name :='';
Players[4].Pass :='';
Players[4].Nick :='';
Players[4].Active:=True; }
end;
procedure InitWorlds;
begin
if (Mem = 'no') or (mem = 'No') then
begin
PreferredWorlds[0]:=107;
PreferredWorlds[1]:=108;
PreferredWorlds[2]:=109;
PreferredWorlds[3]:=125;
PreferredWorlds[4]:=126;
PreferredWorlds[5]:=127;
PreferredWorlds[6]:=128;
PreferredWorlds[7]:=17;
PreferredWorlds[8]:=37;
PreferredWorlds[9]:=113;
PreferredWorlds[10]:=93;
PreferredWorlds[11]:=95;
PreferredWorlds[12]:=96;
PreferredWorlds[13]:=85;
end else
begin
if(Mem = 'Yes') or (Mem = 'yes') then
begin
PreferredWorlds[0]:=138;
PreferredWorlds[1]:=137;
PreferredWorlds[2]:=132;
PreferredWorlds[3]:=131;
PreferredWorlds[4]:=130;
PreferredWorlds[5]:=124;
PreferredWorlds[6]:=123;
PreferredWorlds[7]:=121;
PreferredWorlds[8]:=120;
PreferredWorlds[9]:=104;
PreferredWorlds[10]:=89;
PreferredWorlds[11]:=88;
PreferredWorlds[12]:=78;
PreferredWorlds[13]:=77;
end;
end;
end;
function WelcomeToRuneScape:Boolean; // By WT-Fakawi
var Welcome,tx,ty:integer;
begin
Welcome := CreateBitmapMaskFromText('Welcome', UpChars);
Result:= FindBitmapMaskTolerance(Welcome, tx, ty, 250, 200, 530, 260, 10,10)
FreeBitmap(Welcome);
end;
Procedure SwitchWorlds; // By WT-Fakawi
begin
SCSSLoadWorld(PreferredWorlds[PreferredWorldCounter], True);
PreferredWorldCounter:=PreferredWorldCounter+1;
if PreferredWorldCounter > 13 then PreferredWorldCounter:=0;
Wait(20000);
Handle:=SCSSGetHandle;
World:=SCSSGetCurWorld;
SCSSSetHandle;
ActivateClient;
repeat
Wait(1000);
until WelcomeToRuneScape;
end;
procedure talkrnd;
begin
if (FindTalk) then
begin
FindTalk;
Findnormalrandoms;
end;
end;
Function FindFastRandoms: Boolean;
var
i: Integer;
begin
for i:=0 to 10 do
begin
case I of
0: If FindTalk then
begin
FindNormalRandoms;
end;
1: If FindDead then
Result := True;
2: If FindMod then
Result := True;
3: If FindMime then
Result := True;
4: If FindMaze then
Result := True;
5: If FindQuiz then
Result := True;
6: If FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
8: begin
talkrnd;
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
9: RC;
10: talkrnd;
end;
talkrnd;
end;
end;
procedure DeclareBMPS;
begin
cursegone := BitmapFromString(5, 5, 'z78DA33303230303032809' +
'016061686861036903630B44011C794C510C7228B218E6232 8638' +
'840400938E1D11');
weakengone := BitmapFromString(5, 6, 'z78DA3335317134763230' +
'323030303234343030B480901011FCE298B2982A71E935353 3713' +
'1C1693E4416530D840D006BA02332');
confusegone := BitmapFromString(12, 7, 'z78DA33743430307434' +
'3032303030323404B22D2024448472714C596435B8CCC1340 1BF5' +
'DC4984C8939E4F90B97087E927817926A02B22C00E1A860F4 ');
end;
procedure randoms;
begin
if (FindFight) then
begin
Status('Climbing up stairs...')
if(FindObj3(x,y,'tair',610411,7)) then
begin
Mouse(x,y,3,3,true);
end;
begin
Sleep(15000+random(5000));
if(InChatMulti('evil','bored','vanish')) then
begin
wait(1000+random(500))
MakeCompass('E');
if(FindObj3(x,y,'tair',5395032,8)) then
begin
wait(1000+random(300));
Mouse(x,y,3,3,true);
wait(3000+random(400));
Mouse(126,182,3,3,true);
end;
Wait(10);
talkrnd;
end;
end;
end;
end;
Function ZCastOn(Spell, Monster: string; MonsterColor : Integer; Tolerance:
Integer): Boolean;
var
tx,ty : integer;
begin
tx := tx + random ( 40 );
ty := ty + random ( 40 );
if (not Cast(Spell)) then Exit;
ZMageI := random(3)
if (FindObj3(tx, ty, Monster, ZMage[ZMageI], Tolerance)) then
begin
Mouse(tx,ty, 0, 0, True);
Result := True;
end;
end;
Procedure ZammyMageColors;
begin
ZMage[0] := (Mage1);
ZMage[1] := (Mage2);
ZMage[2] := (Mage3);
end;
Function FindMage : Boolean;
begin
talkrnd;
ZMageI:=Random(3);
if(FindObj3(x, y, 'amora', ZMage[ZMageI], 7)) then
begin
MakeCompass('E');
writeln('Found Mage!');
Result := True;
Exit;
end
else
begin
Writeln('Finding Mage..');
MakeCompass('E');
Wait(300+random(300));
HighestAngle;
end;
result := False;
end;
Procedure LocateMage;
begin
if(FindMage) then
begin
MakeCompass('E');
Writeln('Found Mage1!')
Exit;
end
else
begin
repeat
Writeln('Trying to Find mage..')
FindMage;
Attemptss:=Attemptss + 1;
Until(FindMage) or (Attemptss>3);
if (Attemptss > 3) then
begin
Writeln('Dident find mage!')
Switchworlds;
LoginPlayer;
Loads := Loads + 1;
if (Loads > 5) then
NextPlayer(False);
end;
end;
end;
Procedure zammymage;
var
Spell : String;
begin
case wichspell of
0: Spell:='Confuse';
1: Spell:='Weaken';
2: Spell:='Curse';
end;
FindFastRandoms;
talkrnd;
Wait(300+random(200));
ZMageI := random(3)
ZCastOn(Spell,'amora',ZMage[ZMageI],8);
talkrnd;
if(howmany>=howmanyto) then
NextPlayer(False);
end;
function StolenMage : Boolean;
begin
GameTab(7);
if(wichspell=0) and FindBitmap(confusegone,x,y) or (wichspell=1) and FindBitMap(weakengone,x,y) or (wichspell=2) and FindBitmap(cursegone,x,y) then
begin
xcv := xcv + 1;
Mouse(x,y,3,3,true);
Wait(100+random(100));
if(FindColorTolerance(x,y,Zmage[ZMageI],2,3,760,495,6)) then
begin
xcv := xcv + 1;
Mouse(x,y,3,3,True);
if (InChatMulti('enough','unes','cast') or InChatMulti('not','ody','spell')) then
begin
xcv := xcv + 1;
if(xcv = 3) then
begin
Result := true;
end else
Result := False;
end;
FreeBitmap(cursegone);
FreeBitmap(weakengone);
FreeBitmap(confusegone);
end;
end;
end;
Procedure DoChats;
Begin
SetChat('On', 1);
SetChat('Off', 2)
SetChat('On', 3);
End;
Procedure progress;
begin
// thanks hey321
writeln('[===============================================]')
writeln('[ Syberiums Zammy Mager ')
writeln('[ Completed ' +IntToStr(howmany)+ ' Zammy Mage Casts!')
writeln('[ Worked For ' +TimeRunning)
writeln('[Thank You for using my script! Post Proggies =]')
writeln('[==============================================]')
SRLrandomsreport;
end;
Procedure antiban1;
var DBANME : integer;
begin
writeln('Antiban1')
if (not(loggedIn)) then Exit;
DBANME := Random(100);
case DBANME of
1:Hoverskill('magic',False) ;
2:pickupmouse;
end;
end;
Procedure antiban2;
var DBANME1 : integer;
begin
writeln('AntiBan2')
if(not(LoggedIn)) then Exit;
DBANME1 := Random(100);
case DBANME1 of
1:ZCastOn('Weaken','amora',ZMage[ZMageI],5);
2:ZCastOn('Confuse','amora',ZMage[ZMageI],5);
end;
end;
Procedure click1;
begin
Mouse(698,297,5,5,true);
wait(300-random(80))
Mouse(698,297,0,0,true);
end;
Procedure click2;
begin
Mouse(685,267,5,5,true);
wait(300-random(80))
Mouse(685,267,0,0,true);
end;
Procedure click3;
begin
Mouse(652,254,5,5,true);
wait(300-random(80))
Mouse(652,254,0,0,true);
end;
Procedure missclick;
var
click : integer;
begin
click := random(60)
case click of
1:click1;
2:click2;
3:click3;
end;
end;
Function stolen : Boolean;
begin
if(InChatMulti('omeone', 'else' , 'ghting')) then
begin
Result := true;
TypeSend('Leave please.. i need exp') ;
end;
begin
if(InChatMulti('omeone', 'else' , 'ghting')) then
begin
TypeSend('Zomg u still here noob..');
Result := true;
end else
begin
Result := false;
end;
end;
end;
procedure jacked;
begin
if (stolen) then
begin
Writeln('Some one is fighting mage already!')
SwitchWorlds;
LoginPlayer;
MakeCompass('E');
MakeCompass('E');
MakeCompass('E');
highestangle;
end;
end;
procedure norunes;
begin
if (StolenMage) then
begin
writeln('Ran out of runes, Logging out.');
Players[Currentplayer].active := False;
NextPlayer(False);
end;
end;
function GetChatMessage(Text: String): Boolean;
var
TX, TY: Integer;
Chat: String;
begin
if(IsTextInAreaEx(40, 415, 130, 415, TX, TY, ':', 0, SmallChars, False, True, 0, 0, 0))then
begin
Chat:= Lowercase(Trim(GetTextAtEx(TX + 8, 415, 0, SmallChars, False, False, 0, 1, 16711680, 40, False, TR_AllChars)));
if(Pos(Text, Chat) <> 0)then
begin
Result:= True;
end
end;
end;
function GetChatName(Name: String): Boolean;
var
I: Integer;
begin
ChatName:= Lowercase(Trim(GetTextAtEx(21, 415, 0, SmallChars, False, False, 0, 0, 0, 50, False, TR_AllChars)));
I:= Pos(':', ChatName);
if(I <> 0)then
begin
Delete(ChatName, I, I);
end
if(Pos(Name, ChatName) <> 0)then
begin
Result:= True;
end
end;
Function AutoRespond: Boolean;
var
Responce, Lvl: String;
RandomReply: Integer;
begin
OldLine:= TheLine;
TheLine:= Lowercase(Trim(GetTextAtEx(20, 415, 0, SmallChars, False, False, 0, 1, 16711680, 40, False, TR_AllChars)));
NewLine:= TheLine;
If(GetChatName(Players[CurrentPlayer].Name))then
Begin
Exit;
End
If(OldLine=NewLine)then
Begin
Exit;
end
if(GetChatMessage(Players[CurrentPlayer].Name)) or (GetChatMessage(Players[CurrentPlayer].Nick))then
begin
WriteLn(''+ChatName+': '+Chat);
RandomReply:= Random(10)+1;
Case (RandomReply) of
0 : Responce:= ('?');
1 : Responce:= ('what');
2 : Responce:= ('yes');
3 : Responce:= ('no');
4 : Responce:= ('what do you want');
5 : Responce:= ('me?');
6 : Responce:= ('Yah?');
7 : Responce:= ('who?');
8 : Responce:= ('wha?');
9 : Responce:= ('?');
10 : Responce:= ('???');
end
TypeSend(Responce+' '+Name);
Result:= True;
end
If(GetChatMessage('lol'))or (GetChatMessage('lolz')) or (GetChatMessage('lmao')) or (GetChatMessage('rofl')) or (GetChatMessage('haha'))then
Begin
WriteLn(''+ChatName+': '+Chat);
RandomReply:= Random(25)+1;
Case (RandomReply) of
0 : Responce:= ('hehe');
1 : Responce:= ('lolol');
2 : Responce:= ('lol');
3 : Responce:= ('haha');
4 : Responce:= ('hihi');
5 : Responce:= ('ghehe');
6 : Responce:= ('lmao');
7 : Responce:= ('lmfao');
8 : Responce:= ('rofls');
9 : Responce:= ('fun');
10 : Responce:= ('nice');
11 : Responce:= ('lolz');
12 : Responce:= ('yep');
13 : Responce:= ('hola');
14 : Responce:= ('wow');
15 : Responce:= ('hehe...');
16 : Responce:= ('rofl');
17 : Responce:= ('ghehehghehighhe');
18 : Responce:= ('cool');
19 : Responce:= ('...');
20 : Responce:= ('???');
21 : Responce:= ('wowzers');
22 : Responce:= ('grrr...');
23 : Responce:= ('rowr');
24 : Responce:= ('lolololololol');
25 : Responce:= ('ha ha ha!!!');
end
TypeSend(Responce);
Result:= True;
end
If(GetChatMessage('mage')) or (GetChatMessage('magic')) or (GetChatMessage('mag'))
And
(GetChatMessage('lvl')) or (GetChatMessage('level')) or (GetChatMessage('lvls')) or (GetChatMessage('levels'))then
Begin
WriteLn(''+ChatName+': '+Chat);
Lvl:= IntToStr(GetSkillLevel('magic'));
RandomReply:= Random(5)+1;
Case (RandomReply) of
0 : Responce:= ('i''m lvl '+Lvl+' mage');
1 : Responce:= ('level '+Lvl+' magic');
2 : Responce:= ('lvl '+Lvl+' magein!');
3 : Responce:= (+Lvl);
4 : Responce:= ('i''m level '+lvl);
5 : Responce:= (+Lvl+' here :P');
End
TypeSend(Responce);
Result:= True;
End
If(GetChatMessage('wat')) or (GetChatMessage('what')) and (GetChatMessage('doin')) or (GetChatMessage('doing'))then
Begin
WriteLn(''+ChatName+': '+Chat);
RandomReply:= Random(12);
Case RandomReply of
0 : Responce:= ('not much');
1 : Responce:= ('nothing');
2 : Responce:= ('bored');
3 : Responce:= ('aye?');
4 : Responce:= ('emmm..nothin');
5 : Responce:= ('nope');
6 : Responce:= ('huh');
7 : Responce:= ('playin rs.. der da der');
8 : Responce:= ('what');
9 : Responce:= ('....');
10 : Responce:= ('nothin');
11 : Responce:= ('dun worry about it');
End;
TypeSend(Responce);
Result:= True;
End;
If(GetChatMessage('hey')) or (GetChatMessage('hi')) or (GetChatMessage('hello')) or (GetChatMessage('wats up')) or (GetChatMessage('whats up')) or (GetChatMessage('yo'))then
Begin
WriteLn(''+ChatName+': '+Chat);
RandomReply:= random(9)+1;
Case RandomReply of
0 : Responce:= ('ello');
1 : Responce:= ('sup');
2 : Responce:= ('yo');
3 : Responce:= ('whats up everyone');
4 : Responce:= ('whats up');
5 : Responce:= ('welcome');
6 : Responce:= ('allo allo');
7 : Responce:= ('wat up');
8 : Responce:= ('y0o');
9 : Responce:= ('=P');
10 : Responce:= ('what is up');
End
TypeSend(Responce);
Result:= True;
End
End;
begin
SetupSRL;
ScriptID := '71';
ClearDebug;
DeclarePlayers;
DeclareBMPS;
CurrentPlayer := StartPlayer;
InitWorlds;
OpenSCSS;
SCSSSetHandle;
if(not(LoggedIn)) then LoginPlayer;
NickNameBMP:= CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
DoChats;
MouseSpeed := MSpeed + Random(3)
BenMouse:=False;
MakeCompass('E');
Highestangle;
ZammyMageColors;
MakeCompass('E');
MakeCompass('E');
MakeCompass('E');
FindMage;
LocateMage;
repeat
AutoRespond;
MouseSpeed := MSpeed + Random(3)
missclick;
randoms;
talkrnd;
AutoRespond;
jacked;
norunes;
wait(600+random(200));
zammymage;
wait(200+random(100));
howmany:=howmany + 1;
progress;
antiban1;
antiban2;
FindFastRandoms;
AutoRespond;
until(howmany>=howmanyto);
NextPlayer(False);
writeln('dbuf 1');
end.