hey im working on transforming dooms ak smither to a cball smither, ok guys this is my first script it doesnt work yet but im stuck i have no idea if this is even fixable or if im going to have to start over lol please i know this isnt any good yet but it could be i believe please leach and help me fix it, make it work agian this is my first try ever scripting!
the antiban talker is extensive and youl probally want to get right down to the main loop near the end of the coding
o and was origionally made for multi players and i should put it back in there but i took out for testing purposes
thanks sincerely
burnout
program CannonBallMaker;
{.include SRL/SRL.scar}
{.include SRL\SRL\Skill\Smithing.scar}
//************************************************************************//
const VersionNumber = '1';
//*************************** Variables and Constants *******************//
Var
WindowColor, WindowColor2, BankCol, FurnaceCol, EnterAmount:integer;
BarExp: extended;
TextStar, N, rock, cactus, Ladder, furnacecheck, loadsdone:integer;
RespondTxt : array of string;
{****************************DO NOT TOUCH**************************************}
const{***********************DO NOT TOUCH**************************************}
RTLength = 179;{*************DO NOT TOUCH**************************************}
{****************************DO NOT TOUCH**************************************}
{*********************SET THESE CONSTANTS IF NEEDED****************************}
Const
Furnace = 0; //leave at zero for auto pick!
Bank = 0; //leave at zero for auto pick!
StartPlayer = 0; // Determines who will play first
Loads = 3000; // Number of loads to do before switching players.
AmountFurnace = 2;//how many times you want to check for furnace before
//logging out and trying again.
//----------------------------------------------------------------------------//
procedure LoadBmpAndDTM;
begin
EnterAmount := BitmapFromString(44, 14, 'z78DADD964B0E802' +
'00C44AF8424445896C4FB5FC9051B9232503E25288B8969AA769E' +
'D81203397FC59D4A143D0D6AA427D8C2B59EEE27B396980681FD6' +
'42698986C7D7E874CEC0A750EFB990CF58D6E0EE9DEECBD46B010' +
'07985FCD6CC499AFC2F3938B4C1B952356A0069ED951FFAA38E00' +
'0BD300E9C527D87373868FB157380DF14FD17F2D97A0207B9DF89' +
'F8111C7AEB57E0A3CDA1B74F4EF555B1DFB13E7990AE9AECE804C' +
'E3B279B9BBFE2C099D4D586703B919EE97191BE832944F3');
TextStar := BitmapFromString(12, 11, 'z78DA73B27434B53074A2' +
'84747474B270244A0D312AE9421A0081850184A4A139469696E6A' +
'6F8751143D2D35FB47303B5C29C6A2424769049245900D09EAE6C' +
'');
rock := DTMFromString('78DA638C66626008604001D9EE8A609A11CA6' +
'70C05AAF14755737C6311AA9A58A01A6F026A12806A4250D59CDA' +
'5C8CAA261A530D86396140356104D4C463FA0BDD2E001D6C112D');
cactus := DTMFromString('78DA639CC1C4C050C280029CCBACC1342394C' +
'F3895083533816A0A08A89903545389AAE6F8C622543553885033' +
'1BA8A608BF1A00FF670F00');
ladder := DTMFromString('78DA636C64626098CE800242F539194480342' +
'310FF0702C63AA09A49986A18A06AC0740B116A5A816AA6115003' +
'72CF44026AEAB0BB19590D006E210DF7');
end;
//----------------------------------------------------------------------------//
Procedure DeclarePlayers;
begin
HowManyPlayers :=1; // Set Number of Players here.
NumberOfPlayers(HowManyPlayers); // Sets the Players Array Length;
CurrentPlayer:=StartPlayer; // CurrentPlayer = Array Index
Players[0].Name :=''; // your username
Players[0].Pass :=''; // your password
Players[0].Nick :=''; // 3 or 4 letters from your username
Players[0].Loc :='Bank'; // location. put "Bank"
Players[0].Skill:='Smithing'; // skill to use if a lamp is found.
Players[0].Active:=True; // is the player active?
Players[0].String1:='cball'; // what type of bar to smelt.
Players[0].String3:='';// BANK PIN IF YOU HAVE ONE
end;
//----------------------------------------------------------------------------//
//-----------------------BEGIN ANTI BAN FUNCTIONS/PROCEDURES------------------//
//----------------------------------------------------------------------------//
procedure RandomWalkingActivities;
begin
Case Random(127) of
1 : TypeSend('Hello everyone.');
2 : TypeSend('I love this game.');
3 : TypeSend('I''m an expirenced player.');
4 : TypeSend('I''ve never cheated.');
5 : TypeSend('I''ve never broken any rules.');
6 : TypeSend('My real name''s chris.');
7 : TypeSend('I don''t ever use bad words.');
8 : TypeSend('I''m 2.5 years old. LOL');
9 : TypeSend('Everyone besides me is a noob.
even zezima. lol');
10 : TypeSend('If u need rune essence, just ask Zeta Aran.');
11 : TypeSend('I need free god armour.
');
12 : TypeSend('I need a. l.o.t of free laws!
.');
13 : TypeSend('read: N.O.O.B.S. jk');
14 : TypeSend('red:shake: Anyone here got a brain?');
15 : TypeSend('glow2:scroll: Want free rune armour?.. Well i wont give you!');
16 : TypeSend('flash1:slide: I''m looking for a noob to be my friend!');
17 : TypeSend('My main''s lvl 126
. i wish.');
18 : TypeSend('This ain''t my main.');
19 : TypeSend('If u wanna do some macroing...I''LL REPORT YOU!!!');
20 : TypeSend('Zeta Aran sells cheap rune ess...Just 20 gp each!');
21 : TypeSend('Zeta Aran is your friend, so put him on your list!');
22 : TypeSend('flash2:wave2: I need friends...rich friends.');
23 : TypeSend('I''m smart.
');
24 : TypeSend('You''re speaking to a dummy!');
25 : TypeSend('Hi, if you want stuff, go get it!');
26 : TypeSend('I''m a dummy.Really.');
27 : TypeSend('I need a free guthix full...');
28 : TypeSend('I''m a thinking machine.
');
29 : TypeSend('Did u know i''m a computer master?');
30 : TypeSend('I can hack you when i want! jk');
31 : TypeSend('When u wanna buy something: put Zeta Aran on your list.');
32 : TypeSend('Zeta Aran...He''s a smart guy...');
33 : TypeSend('I''m gonna kill you! lol. jk');
34 : TypeSend('i think im gonna go pking after this.');
35 : TypeSend('I can own you without any weapons!
');
36 : TypeSend('I''m seeking problems...');
37 : TypeSend('This is my account No. 17653. lol');
38 : TypeSend('Wanna talk to me? Then give me 20k.');
39 : TypeSend('Got money?');
40 : TypeSend('i need a life
.');
41 : TypeSend('Giving away free chaos runes! jk!');
42 : TypeSend('Giving away free laws! jk!');
43 : TypeSend('just smithing
')
44 : TypeSend('Hi everyone')
45 : TypeSend('hmmm im gonna be doing this for ages')
46 : TypeSend('dang i need to get a life')
47 : TypeSend('lalalalalallalla')
48 : TypeSend('boorrring')
49 : TypeSend('im tired')
50 : TypeSend('allmost done smelting, then on to the smithing
')
51 : TypeSend('just a few more trips');
52 : TypeSend('anyone here play WoW? (World of Warcraft)');
53 : TypeSend('world of warcraft has way better graphics than RS');
54 : TypeSend('smithing is a boring skill');
55 : TypeSend('mining is a boring skill');
56 : TypeSend('I hate smithing, but good money
');
57 : TypeSend('Zezima is a freak');
58 : TypeSend('i want n0valyfe to beat zezima');
59 : TypeSend('I''m gonna smelt/smith rune one day');
60 : TypeSend('do you think zezima has any freinds irl? (in real life).');
61 : TypeSend('this game is fun, but the graphics are terrible.');
62 : TypeSend('im gonna mine 10k p ess when im done fletching.');
63 : TypeSend('i feel like going pking');
64 : TypeSend('has anyone seen monty python? thts a great movie');
65 : TypeSend('spongebob squarepants is awesome! lol jk');
66 : TypeSend('im going to Colorado for spring break.
');
67 : TypeSend('anybody here ski/snowboard?');
68 : TypeSend('yawn... this is boring');
69 : TypeSend('hey');
70 : TypeSend('yo');
71 : TypeSend('hello everyone!');
72 : TypeSend('i think im gonna go pcing after this. get me some exp.
');
73 : TypeSend('<>< <>< <>< <>< <>< <>< <>< <>< <>< <>< i like fishies
');
74 : TypeSend('have you ever noticed that when you type 2 colons it doesnt show?');
75 : TypeSend('When do you think jagex will have another update?');
76 : TypeSend('Whats the new mini-game like?');
77 : TypeSend('has anyone done the new quest, Contact?');
78 : TypeSend('Hello noobs!');
79 : TypeSend('I welcome all noobs to get killed.');
80 : TypeSend('i hope they make more quests for F2P and P2P.');
81 : TypeSend('Am I a nob?');
82 : TypeSend('I''m not a noob!');
83 : TypeSend('Noobs!!! jk');
84 : TypeSend('Don''t u notice something weird?');
85 : TypeSend('Give me 100k and i''ll talk to you! lol');
86 : TypeSend('I''m from Alaska... not really.');
87 : TypeSend('I think i''m 15 years old... lol, i think.');
88 : TypeSend('I hate Britney Spears! lol, i know its random.');
89 : TypeSend('Put me on your friends list.');
90 : TypeSend('I never answer.');
91 : TypeSend('I''m a geek');
92 : TypeSend('Joke:you''re smart.');
93 : TypeSend('Hi!');
94 : TypeSend('Flash3:slide: !!!!!!!!!!!!!!!!!!!!!!!');
95 : TypeSend('I''m gone nuts.');
96 : TypeSend('Gone fishin.
but not really, cause im playing RS.');
97 : TypeSend('My favorite armor is bronze.
');
98 : TypeSend('You''re a noob?');
99 : TypeSend('You forgot your brain in my house.');
100 : TypeSend('My brain''s gone fishin.');
101 : TypeSend('Yo! What''s up?');
102 : TypeSend('Zeta Aran sells cheap rune ess.');
103 : TypeSend('Got my money punk? lol, jk');
104 : TypeSend('I remember u... actually i have no idea who you are.');
105 : TypeSend('U owe me 6 mill! lol jk');
106 : TypeSend('Wanna hear a joke? srry dont know any
');
107 : TypeSend('Where''s your main?');
108 : TypeSend('Is this your main?');
109 : TypeSend('I''ve never multiple logged in.');
110 : TypeSend('U know an easy way to make money?');
111 : TypeSend('I know how to become rich! MERCHANT!');
112 : TypeSend('I know a way to get about 10 gp for an hour of very hard work. lol');
113 : TypeSend('I''ll make you a superstar, in your dreams...');
114 : TypeSend('I dream of being poor...');
115 : TypeSend('I bet you 80m rs gp that you couldnt kill a dwarf! lol');
116 : TypeSend('Buying lobbies:5 gp each!');
117 : TypeSend('I need very expensive free stuff, got hacked.');
118 : TypeSend('I just hacked myself!');
119 : TypeSend('Hello everyone...bye...');
120 : TypeSend('I''m so bored that i would rather die!');
121 : TypeSend('Wanna know my pass? its none-of-your-business!');
122 : TypeSend('My password is none-of-your-business!');
123 : TypeSend('My real name is stanislocariryvanofedererovich.');
124 : TypeSend('My mom''s younger than yours!');
125 : TypeSend('I hate this game.');
126 : TypeSend('Scaperune is better than Runescape
');
End;
End;
//----------------------------------------------------------------------------//
Procedure RandomTab; // All credits go to Yohojo
Begin
Case Random(26) Of
1:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Fletching',False)
GameTab(4)
End;
2: Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Random',False)
GameTab(4);
End;
3:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Attack',False)
GameTab(4)
End;
4:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Hitpoints',False)
GameTab(4)
End;
5:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Mining',False)
GameTab(4)
End;
6:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Strength',False)
GameTab(4)
End;
7:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Agility',False)
GameTab(4)
End;
8:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Smithing',False)
GameTab(4)
End;
9:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Defense',False)
GameTab(4)
End;
10:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Herblore',False)
GameTab(4)
End;
11:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Fishing',False)
GameTab(4)
End;
12:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Ranged',False)
GameTab(4)
End;
13:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Thieving',False)
GameTab(4)
End;
14:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Cooking',False)
GameTab(4)
End;
15:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Prayer',False)
GameTab(4)
End;
16:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Crafting',False)
GameTab(4)
End;
17:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Firemaking',False)
GameTab(4)
End;
18:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Magic',False)
GameTab(4)
End;
19:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Woodcutting',False)
GameTab(4)
End;
20:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Runecrafting',False)
GameTab(4)
End;
21:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Slayer',False)
GameTab(4)
End;
22:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Farming',False)
GameTab(4)
End;
23:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Construction',False)
GameTab(4)
End;
24:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Hunter',False)
GameTab(4)
End;
25:Begin
Gametab(4)
N:=0
Wait(500+random(500))
N:=N+1+random(2)
MMouseItem(N)
Wait(Random(500))
If IsUpText('Eat') Or IsUpText( 'Wield') Or IsUpText ('Use') Then
Begin
Getmousepos(x,y)
Mouse(x,y,2,2,False)
Wait(Random(550))
Clickoption('Examine',2)
End Else
If (Not(IsUpText('Eat'))) Or (Not(IsUpText( 'Wield'))) Or (Not(IsUpText('Use'))) Then
Begin
Exit;
End;
End;
End;
End;
//----------------------------------------------------------------------------//
procedure BoredHuman1;
var
i: Integer;
begin
for i := 1 to (3 + Random(11)) do
begin
MMouse(Random(MSX2), Random(MSY2), 0, 0);
if IsUpText('opti') then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
ChooseOption(x, y, 'Examine');
end;
FindNormalRandoms;
case Random(6) of
0: SendArrowSilentWait(((Random(2) * 2) + 1), 1000 + Random(200));
1: SendArrowSilentWait(((Random(2) * 2)), 1000 + Random(200));
2: SendArrowSilentWait(((Random(2) * 2) + 1), 200 + Random(200));
3: SendArrowSilentWait(((Random(2) * 2)), 200 + Random(200));
4: SendArrowSilentWait(((Random(2) * 2) + 1), 20 + Random(20));
5: SendArrowSilentWait(((Random(2) * 2)), 20 + Random(20));
end;
FindNormalRandoms;
end;
SendArrowSilentWait(0, 750 + Random(500));
end;
//----------------------------------------------------------------------------//
procedure RandomMovement1;
begin
if ((Random(3) + 1) > 1) then
begin
if (Random(2) = 1) then
begin
if (Random(2) = 1) then
begin
KeyDown(VK_UP);
end else
KeyDown(VK_DOWN);
Wait(15 + Random(15));
KeyDown(VK_LEFT);
Wait(15 + Random(15));
KeyUp(VK_UP);
KeyUp(VK_DOWN);
Wait(300 + Random(500));
KeyUp(VK_LEFT);
end else ;
begin
if (Random(2) = 1) then
begin
KeyDown(VK_UP);
end else
KeyDown(VK_DOWN);
Wait(Random(15));
KeyDown(VK_RIGHT);
Wait(300 + Random(500))
KeyUp(VK_UP);
KeyUp(VK_DOWN);
Wait(Random(15));
KeyUp(VK_RIGHT);
end;
end else ;
MMouse((Random(330) + 8), (Random(490) + 8), 3, 3);
end;
//----------------------------------------------------------------------------//
procedure FTWait1(Time: Integer);
var
t: Integer;
begin
for T := 1 to Time do
begin
Wait(1000);
FindTalk;
end;
end;
//----------------------------------------------------------------------------//
Procedure LoadMem; //thanks to infantry, too lazy to make my own
begin
setarraylength(RespondTxt,RTLength);
//What doin
RespondTxt[1] := 'just smelting';
RespondTxt[2] := 'smelting...';
RespondTxt[3] := 'wat does it look like?';
RespondTxt[4] := 'tryin to raise my smelting lol';
RespondTxt[5] := 'just smelting away :/';
RespondTxt[6] := 'im gunna smelt rune one day! =p';
RespondTxt[7] := 'tryin to be able to smelt some rune lol';
RespondTxt[8] := 'i need to make a living somehow, right?';
RespondTxt[9] := 'i am going to need this dumb skill one day
';
RespondTxt[10] := 'ownin u at e.v.e.r.y.t.h.i.n.g lol ';
//lol
RespondTxt[11] := 'lolol';
RespondTxt[12] := 'lol';
RespondTxt[13] := 'heh';
RespondTxt[14] := 'haha';
RespondTxt[15] := 'lmao';
RespondTxt[16] := 'lmfao';
RespondTxt[17] := 'rofl';
//lvl
RespondTxt[18] := IntToStr(10 + random(20));
RespondTxt[19] := IntToStr(15 + random(45));
RespondTxt[20] := IntToStr(30 + random(30));
RespondTxt[21] := IntToStr(45 + random(25));
RespondTxt[22] := IntToStr(50 + random(15));
RespondTxt[23] := IntToStr(20 + random(40));
RespondTxt[24] := IntToStr(35 + random(30));
//how doin
RespondTxt[25] := 'good u?';
RespondTxt[26] := 'fine thnx';
RespondTxt[27] := 'doin good thanks';
RespondTxt[28] := 'great';
RespondTxt[29] := 'pretty good';
RespondTxt[30] := 'awesome';
RespondTxt[31] := 'pretty nice';
RespondTxt[32] := 'good';
RespondTxt[33] := 'pretty good';
//brb/bbl
RespondTxt[34] := 'k';
RespondTxt[35] := 'k have fun lol';
RespondTxt[36] := '=p k';
RespondTxt[37] := 'kk';
RespondTxt[38] := 'kayz';
RespondTxt[39] := 'c ya';
RespondTxt[40] := 'bye';
RespondTxt[41] := 'k byebye';
RespondTxt[42] := 'k c ya';
RespondTxt[43] := 'bibi';
//watsup
RespondTxt[44] := 'nm';
RespondTxt[45] := 'nm u?';
RespondTxt[46] := 'nuthin much';
RespondTxt[47] := 'same ol same ol';
RespondTxt[48] := 'the ceiling!!! rofl';
RespondTxt[49] := 'the ceiling! lmao';
RespondTxt[50] := 'im good';
RespondTxt[51] := 'eh not much';
//wanna be friends?
RespondTxt[52] := 'no ty';
RespondTxt[53] := 'nah';
RespondTxt[54] := 'my friends list is full lol';
RespondTxt[55] := 'no thnx';
RespondTxt[56] := 'nah dont need cyber strangers';
RespondTxt[57] := 'eh... not really';
RespondTxt[58] := 'not really...';
//hi, yo, junk like that
RespondTxt[59] := 'hey';
RespondTxt[60] := 'yo';
RespondTxt[61] := 'hello';
RespondTxt[62] := 'hi';
RespondTxt[63] := 'hey wassup?';
RespondTxt[64] := 'yo wats up?';
RespondTxt[65] := 'hi how u doin?';
//More AutoTalk for Hidden Features
//Wanna buy
RespondTxt[66] := 'no ty';
RespondTxt[67] := 'nah';
RespondTxt[68] := 'no thnx';
RespondTxt[69] := 'not rlly';
RespondTxt[70] := 'no...';
RespondTxt[71] := 'hehe no way';
RespondTxt[72] := 'eh nah';
RespondTxt[73] := 'nope';
//nice,cool,awesome
RespondTxt[74] := 'nice';
RespondTxt[75] := 'nicest';
RespondTxt[76] := 'cool';
RespondTxt[77] := 'coolio';
RespondTxt[78] := 'awesome';
//noob
RespondTxt[79] := 'no u noob';
RespondTxt[80] := 'shut up';
RespondTxt[81] := 'im not a noob';
RespondTxt[82] := 'noobs are cool';
RespondTxt[83] := 'i no noob';
RespondTxt[84] := 'noobs own u';
RespondTxt[85] := 'i aint noob u the noob';
RespondTxt[86] := 'i refuse to be called a noob!!! lol';
//curse word
RespondTxt[87] := 'shame on you for cursing lol';
RespondTxt[88] := 'wash your mouth out with soap!
';
RespondTxt[89] := 'dont talk like that haha';
RespondTxt[90] := 'kids these days... tsk tsk tsk';
RespondTxt[91] := 'you guys stop cursin';
RespondTxt[92] := 'jeez stop that cursing i dont like it
';
RespondTxt[93] := 'want me to report you for cursing? didnt think so... lol';
RespondTxt[94] := 'thats why the world is messed up... its because of your cursing lol';
//comprehensive lvls
begin
RespondTxt[95] := 'Mining lvls';
RespondTxt[96] := 'Mining lvls?';
RespondTxt[97] := 'Mine lvls';
RespondTxt[98] := 'Mine lvls?';
RespondTxt[99] := 'Wc lvls';
RespondTxt[100] := 'Wc lvls?';
RespondTxt[101] := 'Woodcut lvls';
RespondTxt[102] := 'Woodcut lvls?';
RespondTxt[103] := 'Woodcutting lvls';
RespondTxt[104] := 'Woodcutting lvls?';
RespondTxt[105] := 'Fish lvls';
RespondTxt[106] := 'Fish lvls?';
RespondTxt[107] := 'Fishin lvls';
RespondTxt[108] := 'Fishin lvls?';
RespondTxt[109] := 'Fishing lvls';
RespondTxt[110] := 'Fishing lvls?';
RespondTxt[111] := 'Attack lvls';
RespondTxt[112] := 'Attack lvls?';
RespondTxt[113] := 'Atack lvls';
RespondTxt[114] := 'Atack lvls?';
RespondTxt[115] := 'Attac lvls';
RespondTxt[116] := 'Attac lvls?';
RespondTxt[117] := 'Strengh lvls';
RespondTxt[118] := 'Strengh lvls?';
RespondTxt[119] := 'Defenc lvls';
RespondTxt[120] := 'Defenc lvls?';
RespondTxt[121] := 'Defence lvls';
RespondTxt[122] := 'Defence lvls?';
RespondTxt[123] := 'Hp lvls';
RespondTxt[124] := 'Hp lvls?';
RespondTxt[125] := 'Hitpoint lvls';
RespondTxt[126] := 'Hitpoint lvls?';
RespondTxt[127] := 'Hitpoints lvls';
RespondTxt[128] := 'Hitpoints lvls?';
RespondTxt[129] := 'Hitp lvls';
RespondTxt[130] := 'Hitp lvls?';
RespondTxt[131] := 'Range lvls';
RespondTxt[132] := 'Range lvls?';
RespondTxt[133] := 'Rangin lvls';
RespondTxt[134] := 'Rangin lvls?';
RespondTxt[135] := 'Ranged lvls';
RespondTxt[136] := 'Ranged lvls?';
RespondTxt[137] := 'Ranging lvls';
RespondTxt[138] := 'Ranging lvls?';
RespondTxt[139] := 'Pray lvls';
RespondTxt[140] := 'Pray lvls?';
RespondTxt[141] := 'Prayer lvls';
RespondTxt[142] := 'Prayer lvls?';
RespondTxt[143] := 'Mage lvls';
RespondTxt[144] := 'Mage lvls?';
RespondTxt[145] := 'Mag lvls';
RespondTxt[146] := 'Mag lvls?';
RespondTxt[147] := 'Magic lvls';
RespondTxt[148] := 'Magic lvls?';
RespondTxt[149] := 'Cook lvls';
RespondTxt[150] := 'Cook lvls?';
RespondTxt[151] := 'Cookin lvls';
RespondTxt[152] := 'Cookin lvls?';
RespondTxt[153] := 'Cooking lvls';
RespondTxt[154] := 'Cooking lvls?';
RespondTxt[155] := 'Fletch lvls';
RespondTxt[156] := 'Fletch lvls?';
RespondTxt[157] := 'Fletching lvls';
RespondTxt[158] := 'Fletching lvls?';
RespondTxt[159] := 'Firemaking lvls';
RespondTxt[160] := 'FireMaking lvls?';
RespondTxt[161] := 'Fire making lvls';
RespondTxt[162] := 'Fire making lvls';
RespondTxt[163] := 'Craft lvls';
RespondTxt[164] := 'Craftt lvls?';
RespondTxt[165] := 'Craftin lvls';
RespondTxt[166] := 'Crafting lvls?';
RespondTxt[167] := 'Crafting lvls';
RespondTxt[168] := 'Crafting lvls?';
RespondTxt[169] := 'Smelt lvls';
RespondTxt[170] := 'Smelt lvls?';
RespondTxt[171] := 'Smelting lvls';
RespondTxt[172] := 'Smelting lvls?';
RespondTxt[173] := 'Rc lvls';
RespondTxt[174] := 'Rc lvls?';
RespondTxt[175] := 'Runecraft lvls';
RespondTxt[176] := 'Runecraft lvls?';
RespondTxt[177] := 'Runecrafting lvls';
RespondTxt[178] := 'Runecrafting lvls?';
end;
end;
//----------------------------------------------------------------------------//
function MyInChat(str : string) : boolean;//thanks to infantry
begin
if InChat(str) or InChat(lowercase(str)) then
result := true;
end;
//----------------------------------------------------------------------------//
Procedure AutoRespond; //thanks to infantry, i was too lazy to make my own
var
wat,lol,how,brb,watsup,friends,hi,buy,nice,noob,curse : integer;
i : integer;
TheResponce : string;
begin
OldLine := TheLine;
TheName := lowercase(trim(GetTextAtEx(20, 415, 45, SmallChars, False, False, 0, 2, 0, 40, True, tr_NormalChars)));
TheLine := lowercase(trim(GetTextAtEx(20, 415, 45, SmallChars, False, False, 0, 2, 16711680, 40, False, tr_NormalChars)));
NewLine := TheLine;
if OldLine <> NewLine then
if (pos('yo', TheName) <> 0) or (pos(Players[CurrentPlayer].Nick, TheName) <> 0) or (InChat('urrent'))then
begin
end
else
begin
if ((MyInChat('What') or MyInChat('Wat')) and (MyInChat('doin') or MyInChat('oin')))then
begin
TheResponce := RespondTxt[1 + wat];
Wait(1000 + random(500));
TypeSend(TheResponce);
wat := wat + 1;
if wat > 9 then
wat := 0;
end;
if (MyInChat('Lol') or MyInChat('Hah') or MyInChat('Lmao') or MyInChat('Rofl')) then
begin
TheResponce := RespondTxt[11 + lol];
Wait(1000 + random(500));
TypeSend(TheResponce);
lol := lol + 1;
if lol > 6 then
lol := 0;
end;
//Levels responce
begin
for i := 101 to 104 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Mining')));
for i := 105 to 110 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Woodcutting')));
for i := 111 to 116 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Fishing')));
for i := 117 to 122 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Attack')));
for i := 123 to 124 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Strengh')));
for i := 125 to 128 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Defence')));
for i := 129 to 136 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Hitpoints')));
for i := 137 to 144 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Ranged')));
for i := 145 to 148 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Prayer')));
for i := 149 to 154 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Magic')));
for i := 155 to 160 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Cooking')));
for i := 161 to 164 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Fletching')));
for i := 165 to 168 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Firemaking')));
for i := 169 to 174 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Crafting')));
for i := 175 to 178 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Smelting')));
for i := 179 to 184 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Runecraft')));
end;
if (MyInChat('How') and (MyInChat('doin') or MyInChat('oin')))then
begin
TheResponce := RespondTxt[25 + how];
Wait(1000 + random(500));
TypeSend(TheResponce);
how := how + 1;
if how > 8 then
how := 0;
end;
if (MyInChat('Brb') or MyInChat('Bbl') or MyInChat('G2g')) then
begin
TheResponce := RespondTxt[34 + brb];
Wait(1000 + random(500));
TypeSend(TheResponce);
brb := brb + 1;
if brb > 9 then
brb := 0;
end;
if ((MyInChat('Watsup') or MyInChat('Wassup') or MyInChat('Sup')) or ((MyInChat('Wats') or MyInChat('wat')) and MyInChat('up'))) then
begin
TheResponce := RespondTxt[44 + watsup];
Wait(1000 + random(500));
TypeSend(TheResponce);
watsup := watsup + 1;
if watsup > 7 then
watsup := 0;
end;
if ((MyInChat('Wanna') or MyInChat('Want to')) and (MyInChat('be') or MyInChat('b')) and (MyInChat('friends'))) then
begin
TheResponce := RespondTxt[52 + friends];
Wait(1000 + random(500));
TypeSend(TheResponce);
friends := friends + 1;
if friends > 6 then
friends := 0;
end;
if (MyInChat('Hi') or MyInChat('Yo')or MyInChat('Hey') or MyInChat('Hello')) then
begin
TheResponce := RespondTxt[59 + hi];
Wait(1000 + random(500));
TypeSend(TheResponce);
hi := hi + 1;
if hi > 6 then
hi := 0;
end;
if MyInChat('Noob') or MyInChat('Newb') or MyInChat('Nub') then
begin
TheResponce := RespondTxt[79 + noob];
Wait(1000 + random(500));
noob := noob + 1;
if noob > 7 then
noob := 0;
end;
if ((MyInChat('Wanna') or MyInChat('Want')) and MyInChat('buy')) then
begin
TheResponce := RespondTxt[66 + buy];
Wait(1000 + random(500));
TypeSend(TheResponce);
buy := buy + 1;
if buy > 7 then
buy := 0;
end;
if (MyInChat('Nice') or MyInChat('Cool') or MyInChat('wesom')) then
begin
TheResponce := RespondTxt[74 + nice];
Wait(1000 + random(500));
TypeSend(TheResponce);
nice := nice + 1;
if nice > 4 then
nice := 0;
end;
if InChat('*') then
begin
TheResponce := RespondTxt[87 + curse];
Wait(1000 + random(500));
TypeSend(TheResponce);
curse := curse + 1;
if curse > 7 then
curse := 0;
end;
end;
if TheResponce<>'' then Writeln('Responded with "'+TheResponce+'"');
end;
//----------------------------------------------------------------------------//
//------------------------END ANTI-BAN FUNCTIONS/PROCEDURES-------------------//
//----------------------------------------------------------------------------//
procedure WalkToFurnace1;
begin
Mouse(693,113,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(675,74,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
FurnaceCol:= GetSymbolColor(x,y,'Furnace');
if(findcolorspiraltolerance(x,y,1450881,MSX1,MSY1,MSX2,MSY2,2))then
begin
MMouse(x,y,3,3);
If(IsUpTextMulti('elt','urn','ace'))then
begin
Players[CurrentPlayer].loc:='Furnace';
end else
begin
Players[CurrentPlayer].loc:='Lost';
end;
end;
end;
//----------------------------------------------------------------------------//
procedure WalkToFurnace2;
begin
Mouse(664,120,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(701,103,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(648,58,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
FurnaceCol:= GetSymbolColor(x,y,'Furnace');
if(findcolorspiraltolerance(x,y,1450881,MSX1,MSY1,MSX2,MSY2,2))then
begin
MMouse(x,y,3,3);
If(IsUpTextMulti('elt','urn','ace'))then
begin
Players[CurrentPlayer].loc:='Furnace';
end else
begin
Players[CurrentPlayer].loc:='Lost';
end;
end;
end;
//----------------------------------------------------------------------------//
procedure WalkToFurnace3;
begin
Mouse(679,111,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(690,89,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
FurnaceCol:= GetSymbolColor(x,y,'Furnace');
if(findcolorspiraltolerance(x,y,1450881,MSX1,MSY1,MSX2,MSY2,2))then
begin
MMouse(x,y,3,3);
If(IsUpTextMulti('elt','urn','ace'))then
begin
Players[CurrentPlayer].loc:='Furnace';
end else
begin
Players[CurrentPlayer].loc:='Lost';
end;
end;
end;
//----------------------------------------------------------------------------//
procedure WalkToFurnace4;
begin
MakeCompass('N');
Mouse(673,15,1,1,true);
if Random(5) < 1 then RandomWalkingActivities;
WaitTillFlag;
Flag;
MakeCompass('W');
FurnaceCol:= GetSymbolColor(x,y,'Furnace');
if(findcolorspiraltolerance(x,y,1450881,MSX1,MSY1,MSX2,MSY2,2))then
begin
MMouse(x,y,3,3);
If(IsUpTextMulti('elt','urn','ace'))then
begin
Players[CurrentPlayer].loc:='Furnace';
end else
begin
Players[CurrentPlayer].loc:='Lost';
end;
end;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank1;
begin
MakeCompass('W');
Mouse(578,62,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank2;
begin
MakeCompass('W');
Mouse(624,102,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(590,75,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(651,48,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank3;
begin
MakeCompass('W');
Mouse(593,94,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(629,43,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank4;
begin
MakeCompass('W');
Mouse(605,76,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(623,55,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank5;
begin
MakeCompass('W');
Mouse(588,51,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure LogAndRetry;
begin
Writeln('Couldnt find the furnace!'+chr(13)+'Coming back in about a minute.');
Mouse(650,483,2,2,true);
wait(100+random(23));
Mouse(648,375,2,2,true);
Wait(60000+random(6000));
LoginPlayer;
end;
//----------------------------------------------------------------------------//
function SmeltIt: Boolean;
begin
FurnaceCheck:=0;
repeat
begin
if(Players[CurrentPlayer].String1='cball') OR (Players[CurrentPlayer].String1='cball')then
begin
wait(50);
if(FindObj(x,y,'urn',1452174,4))then
begin
Mouse(x,y,3,3,true);
Flag;
wait(50+random(13));
mouse(832,392,4,4,true);
wait(900+random(13));
Mouse(252,431,4,4,true);
wait(700+random(24));
ClickOption('smeltX',1)
wait(750);
TypeSend('27');
BoredHuman1;
AutoRespond;
RandomMovement1;
FindNormalRandoms;
MakeCompass('W');
end;
if(not(FindObj(x,y,'urn',1452174,4)))then
begin
Result:=false;
FurnaceCheck:=FurnaceCheck+1;
end;
If(FurnaceCheck=AmountFurnace) AND (Result=false)then
begin
LogAndRetry;
SmeltIt;
Exit;
walktobank5;
end;
end;
end;
//----------------------------------------------------------------------------//
procedure Randomwalkselecter;
var c:integer;
Begin
c:= random(4)+1
begin
If(c= 1)then
WalkToFurnace1;
If(c= 2)then
WalkToFurnace2;
If(c= 3)then
WalkToFurnace3;
If(c= 4)then
WalkToFurnace4;
end;
end;
//----------------------------------------------------------------------------//
procedure RandomBankselecter;
var c:integer;
Begin
c:= random(5)+1
begin
If(c= 1)then
WalkToBank1;
If(c= 2)then
WalkToBank2;
If(c= 3)then
WalkToBank3;
If(c= 4)then
WalkToBank4;
If(c= 5)then
WalkToBank5;
end;
end;
//----------------------------------------------------------------------------//
procedure OpenMyBank;
Var
Tries: Integer;
BankOpen: Boolean;
Begin
WindowColor:=7829110;
WindowColor2:=7631222
Repeat
If(FindColorSpiralTolerance(x,y,WindowColor,5,5,512,334,2))or
(FindColorSpiralTolerance(x,y,WindowColor2,5,5,512,334,2))then
MMouse(x,y,2,2);
If(IsUpTextMulti('e Bank', 'Use Ba', 'ooth'))then
Begin
Mouse(x,y,2,2,false);
Wait(10+Random(50));
If(ChooseOption(x, y, 'uickly'))then
Begin
MarkTime(Mark);
Repeat
Wait(10+Random(5));
If(TimeFromMark(Mark) > 20000)then
Begin
Mouse(650,478,1,2,true);
wait(500);
Mouse(648,377,1,2,true);
End
Until(BankScreen)OR (PinScreen)
If(PinScreen)then
InPin(Players[CurrentPlayer].string3);
If(BankScreen)then
BankOpen:=true
End
End
Else
Begin
Wait(1);
Tries:= Tries + 1;
End;
Until(Tries >= 8) OR (BankOpen=true);
End;
//----------------------------------------------------------------------------//
procedure PlayerStats;
var Active: string;
var i: Integer;
begin
writeln('**********************************************');
writeln('Name : '+ Players[CurrentPlayer].Name);
writeln('Number : '+ inttostr(CurrentPlayer));
writeln('Mining Level : '+ inttostr(Players[CurrentPlayer].Level[15]));
writeln('Select Skill : '+ Players[CurrentPlayer].Skill);
writeln('Worked for : '+ inttostr(Players[CurrentPlayer].Worked)+' minutes.');
writeln('Banked : '+ inttostr(Players[CurrentPlayer].Banked) + ' times.');
if Players[CurrentPlayer].Active=True then Active:='True' else Active:='False';
writeln('Active : '+ Active);
writeln('Location : '+ Players[CurrentPlayer].loc);
writeln('**********************************************');
for i := 0 to HowManyPlayers-1 do
begin
if Players.Active=True then Active:='True' else Active:='False';
writeln( (inttostr(i))+' : '+Players.name+ ' = '+Active+'. - Lvl : '+inttostr(Players.Level[15])+
'. - B :'+inttostr(Players.Banked)+' Times.'+
' - : '+IntToStr(Players[i].Worked)+' mins.'+' - Loc: '+Players[i].loc);
end
writeln('**********************************************');
end;
//----------------------------------------------------------------------------//
procedure ProgressReport;
begin
begin
WriteLn(' ');
WriteLn('<============== -'+VersionNumber+'- Progress Report ===============>');
SRLRandomsReport;
Writeln(' ');
end;
PlayerStats;
end;
//----------------------------------------------------------------------------//
Procedure SetUp;
begin
SetupSRL;
SetupSRLSmithing;
ActivateClient;
DeclarePlayers;
If(not(LoggedIn))then LoginPlayer;
SetChat('On',1);
SetChat('Off',2);
SetChat('On',3);
FindNormalRandoms;
MakeCompass('W');
NickNameBMP:=CreateBitmapMaskFromText(Players[CurrentPlayer].Nick,UpChars);
GetAllLevels;
end;
//----------------------------------------------------------------------------//
Procedure WithdrawBmpAmmount(Bitmap, Amount : Integer); // Thanks to fawki
var
TimesChecked : Integer;
Begin
if(BankScreen)and(TimesChecked < 4)then
Begin
TimesChecked := TimesChecked+1;
if(FindBitMapToleranceIn(Bitmap, X, Y, 5, 5, 498, 323, 10))then
Begin
Wait(200+Random(300));
MMouse(X, Y, 8, 8);
wait(200);
Mouse(X, Y, 8, 8, False);
wait(200);
ClickOption('Withdraw X',1);
wait(1000);
Begin
Wait(400);
TypeSEnd(IntToStr(Amount));
Wait(400);
End;
End;
End;
End;
//----------------------------------------------------------------------------//
Procedure BarsInfo;
Begin
begin
if(Players[CurrentPlayer].String1='cball') OR (Players[CurrentPlayer].String1='cball')then
BarExp:=22.5;
end;
End;
//----------------------------------------------------------------------------//
procedure AmountOfOres;
begin
if(Players[CurrentPlayer].String1='cball') OR (Players[CurrentPlayer].String1='cball')then
begin
WithdrawBmpAmmount(SteelBar, 26);
end;
End;
//----------------------------------------------------------------------------//
procedure WithdrawifEmpty;
begin
if InvEmpty then
OpenMyBank;
FixBank;
AmountOfOres;
CloseBank;
end;
//----------------------------------------------------------------------------//
procedure DepositBars;
begin
OpenMyBank;
AmountOfOres;
LoadsDone:=LoadsDone+1;
end;
//----------------------------------------------------------------------------//
//----------------------------------MAIN LOOP---------------------------------//
//----------------------------------------------------------------------------//
begin
repeat
SetUp;
LoadMem;
LoadBmpAndDtm;
WithdrawifEmpty;
Randomwalkselecter;
Writeln(Players[CurrentPlayer].loc);
GameTab(4);
SmeltIt;
RandomBankSelecter;
DepositBars;
until(LoadsDone=Loads);
end.
the antiban talker is extensive and youl probally want to get right down to the main loop near the end of the coding
o and was origionally made for multi players and i should put it back in there but i took out for testing purposes
thanks sincerely
burnout
program CannonBallMaker;
{.include SRL/SRL.scar}
{.include SRL\SRL\Skill\Smithing.scar}
//************************************************************************//
const VersionNumber = '1';
//*************************** Variables and Constants *******************//
Var
WindowColor, WindowColor2, BankCol, FurnaceCol, EnterAmount:integer;
BarExp: extended;
TextStar, N, rock, cactus, Ladder, furnacecheck, loadsdone:integer;
RespondTxt : array of string;
{****************************DO NOT TOUCH**************************************}
const{***********************DO NOT TOUCH**************************************}
RTLength = 179;{*************DO NOT TOUCH**************************************}
{****************************DO NOT TOUCH**************************************}
{*********************SET THESE CONSTANTS IF NEEDED****************************}
Const
Furnace = 0; //leave at zero for auto pick!
Bank = 0; //leave at zero for auto pick!
StartPlayer = 0; // Determines who will play first
Loads = 3000; // Number of loads to do before switching players.
AmountFurnace = 2;//how many times you want to check for furnace before
//logging out and trying again.
//----------------------------------------------------------------------------//
procedure LoadBmpAndDTM;
begin
EnterAmount := BitmapFromString(44, 14, 'z78DADD964B0E802' +
'00C44AF8424445896C4FB5FC9051B9232503E25288B8969AA769E' +
'D81203397FC59D4A143D0D6AA427D8C2B59EEE27B396980681FD6' +
'42698986C7D7E874CEC0A750EFB990CF58D6E0EE9DEECBD46B010' +
'07985FCD6CC499AFC2F3938B4C1B952356A0069ED951FFAA38E00' +
'0BD300E9C527D87373868FB157380DF14FD17F2D97A0207B9DF89' +
'F8111C7AEB57E0A3CDA1B74F4EF555B1DFB13E7990AE9AECE804C' +
'E3B279B9BBFE2C099D4D586703B919EE97191BE832944F3');
TextStar := BitmapFromString(12, 11, 'z78DA73B27434B53074A2' +
'84747474B270244A0D312AE9421A0081850184A4A139469696E6A' +
'6F8751143D2D35FB47303B5C29C6A2424769049245900D09EAE6C' +
'');
rock := DTMFromString('78DA638C66626008604001D9EE8A609A11CA6' +
'70C05AAF14755737C6311AA9A58A01A6F026A12806A4250D59CDA' +
'5C8CAA261A530D86396140356104D4C463FA0BDD2E001D6C112D');
cactus := DTMFromString('78DA639CC1C4C050C280029CCBACC1342394C' +
'F3895083533816A0A08A89903545389AAE6F8C622543553885033' +
'1BA8A608BF1A00FF670F00');
ladder := DTMFromString('78DA636C64626098CE800242F539194480342' +
'310FF0702C63AA09A49986A18A06AC0740B116A5A816AA6115003' +
'72CF44026AEAB0BB19590D006E210DF7');
end;
//----------------------------------------------------------------------------//
Procedure DeclarePlayers;
begin
HowManyPlayers :=1; // Set Number of Players here.
NumberOfPlayers(HowManyPlayers); // Sets the Players Array Length;
CurrentPlayer:=StartPlayer; // CurrentPlayer = Array Index
Players[0].Name :=''; // your username
Players[0].Pass :=''; // your password
Players[0].Nick :=''; // 3 or 4 letters from your username
Players[0].Loc :='Bank'; // location. put "Bank"
Players[0].Skill:='Smithing'; // skill to use if a lamp is found.
Players[0].Active:=True; // is the player active?
Players[0].String1:='cball'; // what type of bar to smelt.
Players[0].String3:='';// BANK PIN IF YOU HAVE ONE
end;
//----------------------------------------------------------------------------//
//-----------------------BEGIN ANTI BAN FUNCTIONS/PROCEDURES------------------//
//----------------------------------------------------------------------------//
procedure RandomWalkingActivities;
begin
Case Random(127) of
1 : TypeSend('Hello everyone.');
2 : TypeSend('I love this game.');
3 : TypeSend('I''m an expirenced player.');
4 : TypeSend('I''ve never cheated.');
5 : TypeSend('I''ve never broken any rules.');
6 : TypeSend('My real name''s chris.');
7 : TypeSend('I don''t ever use bad words.');
8 : TypeSend('I''m 2.5 years old. LOL');
9 : TypeSend('Everyone besides me is a noob.
10 : TypeSend('If u need rune essence, just ask Zeta Aran.');
11 : TypeSend('I need free god armour.
12 : TypeSend('I need a. l.o.t of free laws!
13 : TypeSend('read: N.O.O.B.S. jk');
14 : TypeSend('red:shake: Anyone here got a brain?');
15 : TypeSend('glow2:scroll: Want free rune armour?.. Well i wont give you!');
16 : TypeSend('flash1:slide: I''m looking for a noob to be my friend!');
17 : TypeSend('My main''s lvl 126
18 : TypeSend('This ain''t my main.');
19 : TypeSend('If u wanna do some macroing...I''LL REPORT YOU!!!');
20 : TypeSend('Zeta Aran sells cheap rune ess...Just 20 gp each!');
21 : TypeSend('Zeta Aran is your friend, so put him on your list!');
22 : TypeSend('flash2:wave2: I need friends...rich friends.');
23 : TypeSend('I''m smart.
24 : TypeSend('You''re speaking to a dummy!');
25 : TypeSend('Hi, if you want stuff, go get it!');
26 : TypeSend('I''m a dummy.Really.');
27 : TypeSend('I need a free guthix full...');
28 : TypeSend('I''m a thinking machine.
29 : TypeSend('Did u know i''m a computer master?');
30 : TypeSend('I can hack you when i want! jk');
31 : TypeSend('When u wanna buy something: put Zeta Aran on your list.');
32 : TypeSend('Zeta Aran...He''s a smart guy...');
33 : TypeSend('I''m gonna kill you! lol. jk');
34 : TypeSend('i think im gonna go pking after this.');
35 : TypeSend('I can own you without any weapons!
36 : TypeSend('I''m seeking problems...');
37 : TypeSend('This is my account No. 17653. lol');
38 : TypeSend('Wanna talk to me? Then give me 20k.');
39 : TypeSend('Got money?');
40 : TypeSend('i need a life
41 : TypeSend('Giving away free chaos runes! jk!');
42 : TypeSend('Giving away free laws! jk!');
43 : TypeSend('just smithing
44 : TypeSend('Hi everyone')
45 : TypeSend('hmmm im gonna be doing this for ages')
46 : TypeSend('dang i need to get a life')
47 : TypeSend('lalalalalallalla')
48 : TypeSend('boorrring')
49 : TypeSend('im tired')
50 : TypeSend('allmost done smelting, then on to the smithing
51 : TypeSend('just a few more trips');
52 : TypeSend('anyone here play WoW? (World of Warcraft)');
53 : TypeSend('world of warcraft has way better graphics than RS');
54 : TypeSend('smithing is a boring skill');
55 : TypeSend('mining is a boring skill');
56 : TypeSend('I hate smithing, but good money
57 : TypeSend('Zezima is a freak');
58 : TypeSend('i want n0valyfe to beat zezima');
59 : TypeSend('I''m gonna smelt/smith rune one day');
60 : TypeSend('do you think zezima has any freinds irl? (in real life).');
61 : TypeSend('this game is fun, but the graphics are terrible.');
62 : TypeSend('im gonna mine 10k p ess when im done fletching.');
63 : TypeSend('i feel like going pking');
64 : TypeSend('has anyone seen monty python? thts a great movie');
65 : TypeSend('spongebob squarepants is awesome! lol jk');
66 : TypeSend('im going to Colorado for spring break.
67 : TypeSend('anybody here ski/snowboard?');
68 : TypeSend('yawn... this is boring');
69 : TypeSend('hey');
70 : TypeSend('yo');
71 : TypeSend('hello everyone!');
72 : TypeSend('i think im gonna go pcing after this. get me some exp.
73 : TypeSend('<>< <>< <>< <>< <>< <>< <>< <>< <>< <>< i like fishies
74 : TypeSend('have you ever noticed that when you type 2 colons it doesnt show?');
75 : TypeSend('When do you think jagex will have another update?');
76 : TypeSend('Whats the new mini-game like?');
77 : TypeSend('has anyone done the new quest, Contact?');
78 : TypeSend('Hello noobs!');
79 : TypeSend('I welcome all noobs to get killed.');
80 : TypeSend('i hope they make more quests for F2P and P2P.');
81 : TypeSend('Am I a nob?');
82 : TypeSend('I''m not a noob!');
83 : TypeSend('Noobs!!! jk');
84 : TypeSend('Don''t u notice something weird?');
85 : TypeSend('Give me 100k and i''ll talk to you! lol');
86 : TypeSend('I''m from Alaska... not really.');
87 : TypeSend('I think i''m 15 years old... lol, i think.');
88 : TypeSend('I hate Britney Spears! lol, i know its random.');
89 : TypeSend('Put me on your friends list.');
90 : TypeSend('I never answer.');
91 : TypeSend('I''m a geek');
92 : TypeSend('Joke:you''re smart.');
93 : TypeSend('Hi!');
94 : TypeSend('Flash3:slide: !!!!!!!!!!!!!!!!!!!!!!!');
95 : TypeSend('I''m gone nuts.');
96 : TypeSend('Gone fishin.
97 : TypeSend('My favorite armor is bronze.
98 : TypeSend('You''re a noob?');
99 : TypeSend('You forgot your brain in my house.');
100 : TypeSend('My brain''s gone fishin.');
101 : TypeSend('Yo! What''s up?');
102 : TypeSend('Zeta Aran sells cheap rune ess.');
103 : TypeSend('Got my money punk? lol, jk');
104 : TypeSend('I remember u... actually i have no idea who you are.');
105 : TypeSend('U owe me 6 mill! lol jk');
106 : TypeSend('Wanna hear a joke? srry dont know any
107 : TypeSend('Where''s your main?');
108 : TypeSend('Is this your main?');
109 : TypeSend('I''ve never multiple logged in.');
110 : TypeSend('U know an easy way to make money?');
111 : TypeSend('I know how to become rich! MERCHANT!');
112 : TypeSend('I know a way to get about 10 gp for an hour of very hard work. lol');
113 : TypeSend('I''ll make you a superstar, in your dreams...');
114 : TypeSend('I dream of being poor...');
115 : TypeSend('I bet you 80m rs gp that you couldnt kill a dwarf! lol');
116 : TypeSend('Buying lobbies:5 gp each!');
117 : TypeSend('I need very expensive free stuff, got hacked.');
118 : TypeSend('I just hacked myself!');
119 : TypeSend('Hello everyone...bye...');
120 : TypeSend('I''m so bored that i would rather die!');
121 : TypeSend('Wanna know my pass? its none-of-your-business!');
122 : TypeSend('My password is none-of-your-business!');
123 : TypeSend('My real name is stanislocariryvanofedererovich.');
124 : TypeSend('My mom''s younger than yours!');
125 : TypeSend('I hate this game.');
126 : TypeSend('Scaperune is better than Runescape
End;
End;
//----------------------------------------------------------------------------//
Procedure RandomTab; // All credits go to Yohojo
Begin
Case Random(26) Of
1:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Fletching',False)
GameTab(4)
End;
2: Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Random',False)
GameTab(4);
End;
3:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Attack',False)
GameTab(4)
End;
4:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Hitpoints',False)
GameTab(4)
End;
5:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Mining',False)
GameTab(4)
End;
6:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Strength',False)
GameTab(4)
End;
7:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Agility',False)
GameTab(4)
End;
8:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Smithing',False)
GameTab(4)
End;
9:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Defense',False)
GameTab(4)
End;
10:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Herblore',False)
GameTab(4)
End;
11:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Fishing',False)
GameTab(4)
End;
12:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Ranged',False)
GameTab(4)
End;
13:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Thieving',False)
GameTab(4)
End;
14:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Cooking',False)
GameTab(4)
End;
15:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Prayer',False)
GameTab(4)
End;
16:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Crafting',False)
GameTab(4)
End;
17:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Firemaking',False)
GameTab(4)
End;
18:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Magic',False)
GameTab(4)
End;
19:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Woodcutting',False)
GameTab(4)
End;
20:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Runecrafting',False)
GameTab(4)
End;
21:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Slayer',False)
GameTab(4)
End;
22:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Farming',False)
GameTab(4)
End;
23:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Construction',False)
GameTab(4)
End;
24:Begin
Gametab(2)
Wait(500+Random(250))
Hoverskill('Hunter',False)
GameTab(4)
End;
25:Begin
Gametab(4)
N:=0
Wait(500+random(500))
N:=N+1+random(2)
MMouseItem(N)
Wait(Random(500))
If IsUpText('Eat') Or IsUpText( 'Wield') Or IsUpText ('Use') Then
Begin
Getmousepos(x,y)
Mouse(x,y,2,2,False)
Wait(Random(550))
Clickoption('Examine',2)
End Else
If (Not(IsUpText('Eat'))) Or (Not(IsUpText( 'Wield'))) Or (Not(IsUpText('Use'))) Then
Begin
Exit;
End;
End;
End;
End;
//----------------------------------------------------------------------------//
procedure BoredHuman1;
var
i: Integer;
begin
for i := 1 to (3 + Random(11)) do
begin
MMouse(Random(MSX2), Random(MSY2), 0, 0);
if IsUpText('opti') then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
ChooseOption(x, y, 'Examine');
end;
FindNormalRandoms;
case Random(6) of
0: SendArrowSilentWait(((Random(2) * 2) + 1), 1000 + Random(200));
1: SendArrowSilentWait(((Random(2) * 2)), 1000 + Random(200));
2: SendArrowSilentWait(((Random(2) * 2) + 1), 200 + Random(200));
3: SendArrowSilentWait(((Random(2) * 2)), 200 + Random(200));
4: SendArrowSilentWait(((Random(2) * 2) + 1), 20 + Random(20));
5: SendArrowSilentWait(((Random(2) * 2)), 20 + Random(20));
end;
FindNormalRandoms;
end;
SendArrowSilentWait(0, 750 + Random(500));
end;
//----------------------------------------------------------------------------//
procedure RandomMovement1;
begin
if ((Random(3) + 1) > 1) then
begin
if (Random(2) = 1) then
begin
if (Random(2) = 1) then
begin
KeyDown(VK_UP);
end else
KeyDown(VK_DOWN);
Wait(15 + Random(15));
KeyDown(VK_LEFT);
Wait(15 + Random(15));
KeyUp(VK_UP);
KeyUp(VK_DOWN);
Wait(300 + Random(500));
KeyUp(VK_LEFT);
end else ;
begin
if (Random(2) = 1) then
begin
KeyDown(VK_UP);
end else
KeyDown(VK_DOWN);
Wait(Random(15));
KeyDown(VK_RIGHT);
Wait(300 + Random(500))
KeyUp(VK_UP);
KeyUp(VK_DOWN);
Wait(Random(15));
KeyUp(VK_RIGHT);
end;
end else ;
MMouse((Random(330) + 8), (Random(490) + 8), 3, 3);
end;
//----------------------------------------------------------------------------//
procedure FTWait1(Time: Integer);
var
t: Integer;
begin
for T := 1 to Time do
begin
Wait(1000);
FindTalk;
end;
end;
//----------------------------------------------------------------------------//
Procedure LoadMem; //thanks to infantry, too lazy to make my own
begin
setarraylength(RespondTxt,RTLength);
//What doin
RespondTxt[1] := 'just smelting';
RespondTxt[2] := 'smelting...';
RespondTxt[3] := 'wat does it look like?';
RespondTxt[4] := 'tryin to raise my smelting lol';
RespondTxt[5] := 'just smelting away :/';
RespondTxt[6] := 'im gunna smelt rune one day! =p';
RespondTxt[7] := 'tryin to be able to smelt some rune lol';
RespondTxt[8] := 'i need to make a living somehow, right?';
RespondTxt[9] := 'i am going to need this dumb skill one day
RespondTxt[10] := 'ownin u at e.v.e.r.y.t.h.i.n.g lol ';
//lol
RespondTxt[11] := 'lolol';
RespondTxt[12] := 'lol';
RespondTxt[13] := 'heh';
RespondTxt[14] := 'haha';
RespondTxt[15] := 'lmao';
RespondTxt[16] := 'lmfao';
RespondTxt[17] := 'rofl';
//lvl
RespondTxt[18] := IntToStr(10 + random(20));
RespondTxt[19] := IntToStr(15 + random(45));
RespondTxt[20] := IntToStr(30 + random(30));
RespondTxt[21] := IntToStr(45 + random(25));
RespondTxt[22] := IntToStr(50 + random(15));
RespondTxt[23] := IntToStr(20 + random(40));
RespondTxt[24] := IntToStr(35 + random(30));
//how doin
RespondTxt[25] := 'good u?';
RespondTxt[26] := 'fine thnx';
RespondTxt[27] := 'doin good thanks';
RespondTxt[28] := 'great';
RespondTxt[29] := 'pretty good';
RespondTxt[30] := 'awesome';
RespondTxt[31] := 'pretty nice';
RespondTxt[32] := 'good';
RespondTxt[33] := 'pretty good';
//brb/bbl
RespondTxt[34] := 'k';
RespondTxt[35] := 'k have fun lol';
RespondTxt[36] := '=p k';
RespondTxt[37] := 'kk';
RespondTxt[38] := 'kayz';
RespondTxt[39] := 'c ya';
RespondTxt[40] := 'bye';
RespondTxt[41] := 'k byebye';
RespondTxt[42] := 'k c ya';
RespondTxt[43] := 'bibi';
//watsup
RespondTxt[44] := 'nm';
RespondTxt[45] := 'nm u?';
RespondTxt[46] := 'nuthin much';
RespondTxt[47] := 'same ol same ol';
RespondTxt[48] := 'the ceiling!!! rofl';
RespondTxt[49] := 'the ceiling! lmao';
RespondTxt[50] := 'im good';
RespondTxt[51] := 'eh not much';
//wanna be friends?
RespondTxt[52] := 'no ty';
RespondTxt[53] := 'nah';
RespondTxt[54] := 'my friends list is full lol';
RespondTxt[55] := 'no thnx';
RespondTxt[56] := 'nah dont need cyber strangers';
RespondTxt[57] := 'eh... not really';
RespondTxt[58] := 'not really...';
//hi, yo, junk like that
RespondTxt[59] := 'hey';
RespondTxt[60] := 'yo';
RespondTxt[61] := 'hello';
RespondTxt[62] := 'hi';
RespondTxt[63] := 'hey wassup?';
RespondTxt[64] := 'yo wats up?';
RespondTxt[65] := 'hi how u doin?';
//More AutoTalk for Hidden Features
//Wanna buy
RespondTxt[66] := 'no ty';
RespondTxt[67] := 'nah';
RespondTxt[68] := 'no thnx';
RespondTxt[69] := 'not rlly';
RespondTxt[70] := 'no...';
RespondTxt[71] := 'hehe no way';
RespondTxt[72] := 'eh nah';
RespondTxt[73] := 'nope';
//nice,cool,awesome
RespondTxt[74] := 'nice';
RespondTxt[75] := 'nicest';
RespondTxt[76] := 'cool';
RespondTxt[77] := 'coolio';
RespondTxt[78] := 'awesome';
//noob
RespondTxt[79] := 'no u noob';
RespondTxt[80] := 'shut up';
RespondTxt[81] := 'im not a noob';
RespondTxt[82] := 'noobs are cool';
RespondTxt[83] := 'i no noob';
RespondTxt[84] := 'noobs own u';
RespondTxt[85] := 'i aint noob u the noob';
RespondTxt[86] := 'i refuse to be called a noob!!! lol';
//curse word
RespondTxt[87] := 'shame on you for cursing lol';
RespondTxt[88] := 'wash your mouth out with soap!
RespondTxt[89] := 'dont talk like that haha';
RespondTxt[90] := 'kids these days... tsk tsk tsk';
RespondTxt[91] := 'you guys stop cursin';
RespondTxt[92] := 'jeez stop that cursing i dont like it
RespondTxt[93] := 'want me to report you for cursing? didnt think so... lol';
RespondTxt[94] := 'thats why the world is messed up... its because of your cursing lol';
//comprehensive lvls
begin
RespondTxt[95] := 'Mining lvls';
RespondTxt[96] := 'Mining lvls?';
RespondTxt[97] := 'Mine lvls';
RespondTxt[98] := 'Mine lvls?';
RespondTxt[99] := 'Wc lvls';
RespondTxt[100] := 'Wc lvls?';
RespondTxt[101] := 'Woodcut lvls';
RespondTxt[102] := 'Woodcut lvls?';
RespondTxt[103] := 'Woodcutting lvls';
RespondTxt[104] := 'Woodcutting lvls?';
RespondTxt[105] := 'Fish lvls';
RespondTxt[106] := 'Fish lvls?';
RespondTxt[107] := 'Fishin lvls';
RespondTxt[108] := 'Fishin lvls?';
RespondTxt[109] := 'Fishing lvls';
RespondTxt[110] := 'Fishing lvls?';
RespondTxt[111] := 'Attack lvls';
RespondTxt[112] := 'Attack lvls?';
RespondTxt[113] := 'Atack lvls';
RespondTxt[114] := 'Atack lvls?';
RespondTxt[115] := 'Attac lvls';
RespondTxt[116] := 'Attac lvls?';
RespondTxt[117] := 'Strengh lvls';
RespondTxt[118] := 'Strengh lvls?';
RespondTxt[119] := 'Defenc lvls';
RespondTxt[120] := 'Defenc lvls?';
RespondTxt[121] := 'Defence lvls';
RespondTxt[122] := 'Defence lvls?';
RespondTxt[123] := 'Hp lvls';
RespondTxt[124] := 'Hp lvls?';
RespondTxt[125] := 'Hitpoint lvls';
RespondTxt[126] := 'Hitpoint lvls?';
RespondTxt[127] := 'Hitpoints lvls';
RespondTxt[128] := 'Hitpoints lvls?';
RespondTxt[129] := 'Hitp lvls';
RespondTxt[130] := 'Hitp lvls?';
RespondTxt[131] := 'Range lvls';
RespondTxt[132] := 'Range lvls?';
RespondTxt[133] := 'Rangin lvls';
RespondTxt[134] := 'Rangin lvls?';
RespondTxt[135] := 'Ranged lvls';
RespondTxt[136] := 'Ranged lvls?';
RespondTxt[137] := 'Ranging lvls';
RespondTxt[138] := 'Ranging lvls?';
RespondTxt[139] := 'Pray lvls';
RespondTxt[140] := 'Pray lvls?';
RespondTxt[141] := 'Prayer lvls';
RespondTxt[142] := 'Prayer lvls?';
RespondTxt[143] := 'Mage lvls';
RespondTxt[144] := 'Mage lvls?';
RespondTxt[145] := 'Mag lvls';
RespondTxt[146] := 'Mag lvls?';
RespondTxt[147] := 'Magic lvls';
RespondTxt[148] := 'Magic lvls?';
RespondTxt[149] := 'Cook lvls';
RespondTxt[150] := 'Cook lvls?';
RespondTxt[151] := 'Cookin lvls';
RespondTxt[152] := 'Cookin lvls?';
RespondTxt[153] := 'Cooking lvls';
RespondTxt[154] := 'Cooking lvls?';
RespondTxt[155] := 'Fletch lvls';
RespondTxt[156] := 'Fletch lvls?';
RespondTxt[157] := 'Fletching lvls';
RespondTxt[158] := 'Fletching lvls?';
RespondTxt[159] := 'Firemaking lvls';
RespondTxt[160] := 'FireMaking lvls?';
RespondTxt[161] := 'Fire making lvls';
RespondTxt[162] := 'Fire making lvls';
RespondTxt[163] := 'Craft lvls';
RespondTxt[164] := 'Craftt lvls?';
RespondTxt[165] := 'Craftin lvls';
RespondTxt[166] := 'Crafting lvls?';
RespondTxt[167] := 'Crafting lvls';
RespondTxt[168] := 'Crafting lvls?';
RespondTxt[169] := 'Smelt lvls';
RespondTxt[170] := 'Smelt lvls?';
RespondTxt[171] := 'Smelting lvls';
RespondTxt[172] := 'Smelting lvls?';
RespondTxt[173] := 'Rc lvls';
RespondTxt[174] := 'Rc lvls?';
RespondTxt[175] := 'Runecraft lvls';
RespondTxt[176] := 'Runecraft lvls?';
RespondTxt[177] := 'Runecrafting lvls';
RespondTxt[178] := 'Runecrafting lvls?';
end;
end;
//----------------------------------------------------------------------------//
function MyInChat(str : string) : boolean;//thanks to infantry
begin
if InChat(str) or InChat(lowercase(str)) then
result := true;
end;
//----------------------------------------------------------------------------//
Procedure AutoRespond; //thanks to infantry, i was too lazy to make my own
var
wat,lol,how,brb,watsup,friends,hi,buy,nice,noob,curse : integer;
i : integer;
TheResponce : string;
begin
OldLine := TheLine;
TheName := lowercase(trim(GetTextAtEx(20, 415, 45, SmallChars, False, False, 0, 2, 0, 40, True, tr_NormalChars)));
TheLine := lowercase(trim(GetTextAtEx(20, 415, 45, SmallChars, False, False, 0, 2, 16711680, 40, False, tr_NormalChars)));
NewLine := TheLine;
if OldLine <> NewLine then
if (pos('yo', TheName) <> 0) or (pos(Players[CurrentPlayer].Nick, TheName) <> 0) or (InChat('urrent'))then
begin
end
else
begin
if ((MyInChat('What') or MyInChat('Wat')) and (MyInChat('doin') or MyInChat('oin')))then
begin
TheResponce := RespondTxt[1 + wat];
Wait(1000 + random(500));
TypeSend(TheResponce);
wat := wat + 1;
if wat > 9 then
wat := 0;
end;
if (MyInChat('Lol') or MyInChat('Hah') or MyInChat('Lmao') or MyInChat('Rofl')) then
begin
TheResponce := RespondTxt[11 + lol];
Wait(1000 + random(500));
TypeSend(TheResponce);
lol := lol + 1;
if lol > 6 then
lol := 0;
end;
//Levels responce
begin
for i := 101 to 104 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Mining')));
for i := 105 to 110 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Woodcutting')));
for i := 111 to 116 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Fishing')));
for i := 117 to 122 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Attack')));
for i := 123 to 124 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Strengh')));
for i := 125 to 128 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Defence')));
for i := 129 to 136 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Hitpoints')));
for i := 137 to 144 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Ranged')));
for i := 145 to 148 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Prayer')));
for i := 149 to 154 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Magic')));
for i := 155 to 160 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Cooking')));
for i := 161 to 164 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Fletching')));
for i := 165 to 168 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Firemaking')));
for i := 169 to 174 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Crafting')));
for i := 175 to 178 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Smelting')));
for i := 179 to 184 do
if MyInChat(RespondTxt) then
TypeSend(IntToStr(GetSkillLevel('Runecraft')));
end;
if (MyInChat('How') and (MyInChat('doin') or MyInChat('oin')))then
begin
TheResponce := RespondTxt[25 + how];
Wait(1000 + random(500));
TypeSend(TheResponce);
how := how + 1;
if how > 8 then
how := 0;
end;
if (MyInChat('Brb') or MyInChat('Bbl') or MyInChat('G2g')) then
begin
TheResponce := RespondTxt[34 + brb];
Wait(1000 + random(500));
TypeSend(TheResponce);
brb := brb + 1;
if brb > 9 then
brb := 0;
end;
if ((MyInChat('Watsup') or MyInChat('Wassup') or MyInChat('Sup')) or ((MyInChat('Wats') or MyInChat('wat')) and MyInChat('up'))) then
begin
TheResponce := RespondTxt[44 + watsup];
Wait(1000 + random(500));
TypeSend(TheResponce);
watsup := watsup + 1;
if watsup > 7 then
watsup := 0;
end;
if ((MyInChat('Wanna') or MyInChat('Want to')) and (MyInChat('be') or MyInChat('b')) and (MyInChat('friends'))) then
begin
TheResponce := RespondTxt[52 + friends];
Wait(1000 + random(500));
TypeSend(TheResponce);
friends := friends + 1;
if friends > 6 then
friends := 0;
end;
if (MyInChat('Hi') or MyInChat('Yo')or MyInChat('Hey') or MyInChat('Hello')) then
begin
TheResponce := RespondTxt[59 + hi];
Wait(1000 + random(500));
TypeSend(TheResponce);
hi := hi + 1;
if hi > 6 then
hi := 0;
end;
if MyInChat('Noob') or MyInChat('Newb') or MyInChat('Nub') then
begin
TheResponce := RespondTxt[79 + noob];
Wait(1000 + random(500));
noob := noob + 1;
if noob > 7 then
noob := 0;
end;
if ((MyInChat('Wanna') or MyInChat('Want')) and MyInChat('buy')) then
begin
TheResponce := RespondTxt[66 + buy];
Wait(1000 + random(500));
TypeSend(TheResponce);
buy := buy + 1;
if buy > 7 then
buy := 0;
end;
if (MyInChat('Nice') or MyInChat('Cool') or MyInChat('wesom')) then
begin
TheResponce := RespondTxt[74 + nice];
Wait(1000 + random(500));
TypeSend(TheResponce);
nice := nice + 1;
if nice > 4 then
nice := 0;
end;
if InChat('*') then
begin
TheResponce := RespondTxt[87 + curse];
Wait(1000 + random(500));
TypeSend(TheResponce);
curse := curse + 1;
if curse > 7 then
curse := 0;
end;
end;
if TheResponce<>'' then Writeln('Responded with "'+TheResponce+'"');
end;
//----------------------------------------------------------------------------//
//------------------------END ANTI-BAN FUNCTIONS/PROCEDURES-------------------//
//----------------------------------------------------------------------------//
procedure WalkToFurnace1;
begin
Mouse(693,113,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(675,74,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
FurnaceCol:= GetSymbolColor(x,y,'Furnace');
if(findcolorspiraltolerance(x,y,1450881,MSX1,MSY1,MSX2,MSY2,2))then
begin
MMouse(x,y,3,3);
If(IsUpTextMulti('elt','urn','ace'))then
begin
Players[CurrentPlayer].loc:='Furnace';
end else
begin
Players[CurrentPlayer].loc:='Lost';
end;
end;
end;
//----------------------------------------------------------------------------//
procedure WalkToFurnace2;
begin
Mouse(664,120,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(701,103,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(648,58,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
FurnaceCol:= GetSymbolColor(x,y,'Furnace');
if(findcolorspiraltolerance(x,y,1450881,MSX1,MSY1,MSX2,MSY2,2))then
begin
MMouse(x,y,3,3);
If(IsUpTextMulti('elt','urn','ace'))then
begin
Players[CurrentPlayer].loc:='Furnace';
end else
begin
Players[CurrentPlayer].loc:='Lost';
end;
end;
end;
//----------------------------------------------------------------------------//
procedure WalkToFurnace3;
begin
Mouse(679,111,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(690,89,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
FurnaceCol:= GetSymbolColor(x,y,'Furnace');
if(findcolorspiraltolerance(x,y,1450881,MSX1,MSY1,MSX2,MSY2,2))then
begin
MMouse(x,y,3,3);
If(IsUpTextMulti('elt','urn','ace'))then
begin
Players[CurrentPlayer].loc:='Furnace';
end else
begin
Players[CurrentPlayer].loc:='Lost';
end;
end;
end;
//----------------------------------------------------------------------------//
procedure WalkToFurnace4;
begin
MakeCompass('N');
Mouse(673,15,1,1,true);
if Random(5) < 1 then RandomWalkingActivities;
WaitTillFlag;
Flag;
MakeCompass('W');
FurnaceCol:= GetSymbolColor(x,y,'Furnace');
if(findcolorspiraltolerance(x,y,1450881,MSX1,MSY1,MSX2,MSY2,2))then
begin
MMouse(x,y,3,3);
If(IsUpTextMulti('elt','urn','ace'))then
begin
Players[CurrentPlayer].loc:='Furnace';
end else
begin
Players[CurrentPlayer].loc:='Lost';
end;
end;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank1;
begin
MakeCompass('W');
Mouse(578,62,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank2;
begin
MakeCompass('W');
Mouse(624,102,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(590,75,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(651,48,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank3;
begin
MakeCompass('W');
Mouse(593,94,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(629,43,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank4;
begin
MakeCompass('W');
Mouse(605,76,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
Mouse(623,55,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure WalkToBank5;
begin
MakeCompass('W');
Mouse(588,51,2,2,true);
if Random(5) < 1 then RandomWalkingActivities;
MakeCompass('W');
WaitTillFlag;
Flag;
end;
//----------------------------------------------------------------------------//
procedure LogAndRetry;
begin
Writeln('Couldnt find the furnace!'+chr(13)+'Coming back in about a minute.');
Mouse(650,483,2,2,true);
wait(100+random(23));
Mouse(648,375,2,2,true);
Wait(60000+random(6000));
LoginPlayer;
end;
//----------------------------------------------------------------------------//
function SmeltIt: Boolean;
begin
FurnaceCheck:=0;
repeat
begin
if(Players[CurrentPlayer].String1='cball') OR (Players[CurrentPlayer].String1='cball')then
begin
wait(50);
if(FindObj(x,y,'urn',1452174,4))then
begin
Mouse(x,y,3,3,true);
Flag;
wait(50+random(13));
mouse(832,392,4,4,true);
wait(900+random(13));
Mouse(252,431,4,4,true);
wait(700+random(24));
ClickOption('smeltX',1)
wait(750);
TypeSend('27');
BoredHuman1;
AutoRespond;
RandomMovement1;
FindNormalRandoms;
MakeCompass('W');
end;
if(not(FindObj(x,y,'urn',1452174,4)))then
begin
Result:=false;
FurnaceCheck:=FurnaceCheck+1;
end;
If(FurnaceCheck=AmountFurnace) AND (Result=false)then
begin
LogAndRetry;
SmeltIt;
Exit;
walktobank5;
end;
end;
end;
//----------------------------------------------------------------------------//
procedure Randomwalkselecter;
var c:integer;
Begin
c:= random(4)+1
begin
If(c= 1)then
WalkToFurnace1;
If(c= 2)then
WalkToFurnace2;
If(c= 3)then
WalkToFurnace3;
If(c= 4)then
WalkToFurnace4;
end;
end;
//----------------------------------------------------------------------------//
procedure RandomBankselecter;
var c:integer;
Begin
c:= random(5)+1
begin
If(c= 1)then
WalkToBank1;
If(c= 2)then
WalkToBank2;
If(c= 3)then
WalkToBank3;
If(c= 4)then
WalkToBank4;
If(c= 5)then
WalkToBank5;
end;
end;
//----------------------------------------------------------------------------//
procedure OpenMyBank;
Var
Tries: Integer;
BankOpen: Boolean;
Begin
WindowColor:=7829110;
WindowColor2:=7631222
Repeat
If(FindColorSpiralTolerance(x,y,WindowColor,5,5,512,334,2))or
(FindColorSpiralTolerance(x,y,WindowColor2,5,5,512,334,2))then
MMouse(x,y,2,2);
If(IsUpTextMulti('e Bank', 'Use Ba', 'ooth'))then
Begin
Mouse(x,y,2,2,false);
Wait(10+Random(50));
If(ChooseOption(x, y, 'uickly'))then
Begin
MarkTime(Mark);
Repeat
Wait(10+Random(5));
If(TimeFromMark(Mark) > 20000)then
Begin
Mouse(650,478,1,2,true);
wait(500);
Mouse(648,377,1,2,true);
End
Until(BankScreen)OR (PinScreen)
If(PinScreen)then
InPin(Players[CurrentPlayer].string3);
If(BankScreen)then
BankOpen:=true
End
End
Else
Begin
Wait(1);
Tries:= Tries + 1;
End;
Until(Tries >= 8) OR (BankOpen=true);
End;
//----------------------------------------------------------------------------//
procedure PlayerStats;
var Active: string;
var i: Integer;
begin
writeln('**********************************************');
writeln('Name : '+ Players[CurrentPlayer].Name);
writeln('Number : '+ inttostr(CurrentPlayer));
writeln('Mining Level : '+ inttostr(Players[CurrentPlayer].Level[15]));
writeln('Select Skill : '+ Players[CurrentPlayer].Skill);
writeln('Worked for : '+ inttostr(Players[CurrentPlayer].Worked)+' minutes.');
writeln('Banked : '+ inttostr(Players[CurrentPlayer].Banked) + ' times.');
if Players[CurrentPlayer].Active=True then Active:='True' else Active:='False';
writeln('Active : '+ Active);
writeln('Location : '+ Players[CurrentPlayer].loc);
writeln('**********************************************');
for i := 0 to HowManyPlayers-1 do
begin
if Players.Active=True then Active:='True' else Active:='False';
writeln( (inttostr(i))+' : '+Players.name+ ' = '+Active+'. - Lvl : '+inttostr(Players.Level[15])+
'. - B :'+inttostr(Players.Banked)+' Times.'+
' - : '+IntToStr(Players[i].Worked)+' mins.'+' - Loc: '+Players[i].loc);
end
writeln('**********************************************');
end;
//----------------------------------------------------------------------------//
procedure ProgressReport;
begin
begin
WriteLn(' ');
WriteLn('<============== -'+VersionNumber+'- Progress Report ===============>');
SRLRandomsReport;
Writeln(' ');
end;
PlayerStats;
end;
//----------------------------------------------------------------------------//
Procedure SetUp;
begin
SetupSRL;
SetupSRLSmithing;
ActivateClient;
DeclarePlayers;
If(not(LoggedIn))then LoginPlayer;
SetChat('On',1);
SetChat('Off',2);
SetChat('On',3);
FindNormalRandoms;
MakeCompass('W');
NickNameBMP:=CreateBitmapMaskFromText(Players[CurrentPlayer].Nick,UpChars);
GetAllLevels;
end;
//----------------------------------------------------------------------------//
Procedure WithdrawBmpAmmount(Bitmap, Amount : Integer); // Thanks to fawki
var
TimesChecked : Integer;
Begin
if(BankScreen)and(TimesChecked < 4)then
Begin
TimesChecked := TimesChecked+1;
if(FindBitMapToleranceIn(Bitmap, X, Y, 5, 5, 498, 323, 10))then
Begin
Wait(200+Random(300));
MMouse(X, Y, 8, 8);
wait(200);
Mouse(X, Y, 8, 8, False);
wait(200);
ClickOption('Withdraw X',1);
wait(1000);
Begin
Wait(400);
TypeSEnd(IntToStr(Amount));
Wait(400);
End;
End;
End;
End;
//----------------------------------------------------------------------------//
Procedure BarsInfo;
Begin
begin
if(Players[CurrentPlayer].String1='cball') OR (Players[CurrentPlayer].String1='cball')then
BarExp:=22.5;
end;
End;
//----------------------------------------------------------------------------//
procedure AmountOfOres;
begin
if(Players[CurrentPlayer].String1='cball') OR (Players[CurrentPlayer].String1='cball')then
begin
WithdrawBmpAmmount(SteelBar, 26);
end;
End;
//----------------------------------------------------------------------------//
procedure WithdrawifEmpty;
begin
if InvEmpty then
OpenMyBank;
FixBank;
AmountOfOres;
CloseBank;
end;
//----------------------------------------------------------------------------//
procedure DepositBars;
begin
OpenMyBank;
AmountOfOres;
LoadsDone:=LoadsDone+1;
end;
//----------------------------------------------------------------------------//
//----------------------------------MAIN LOOP---------------------------------//
//----------------------------------------------------------------------------//
begin
repeat
SetUp;
LoadMem;
LoadBmpAndDtm;
WithdrawifEmpty;
Randomwalkselecter;
Writeln(Players[CurrentPlayer].loc);
GameTab(4);
SmeltIt;
RandomBankSelecter;
DepositBars;
until(LoadsDone=Loads);
end.

