just read some tutorials
Printable View
made a short video about this script, should check it out ;)
how do i get it to attack moss giants it just searches for monster over and over
solved.
few things i notice, i don't know if it because i'm low level, but it tries to attack another monster while already in a fight. makes i real easy to detect it as a bot.
did 15mins of pretty buggy as stated above. then got this :You passed a wrong xs to a finder function: -2. That is below 0, thus out of bounds. Setting the value to 0 for now.
if there a way to fix i regard it as flawless.
You can use up to 2 different names like: spider and experiment. You can put at every name 3 colors (not every npc have the same color, for example: you have a brown spider, red spider and a green spider) if you want to use a second npc with a different name put secondairymonster on true. And below that you can fill out the colors of the monster and the name :)
Can someone help me! Im trying to run this script at rock crabs but I dont know the number for the colors... and whenever I try with the red coloring it gives me this "[Error] C:\Simba\Includes\SRL-OSR/SRL/misc/SmartParams.Simba(229:202): Invalid number of parameters at line 228" plz help this is my first time using a script
ok bro,your not a bad Scripture, it nearly flawless tbh, just thought i would give feedback on what i found. see if u can get advise of someone to solve it. (im a bad scripter took me 10mins to find colour lol).
Everytime after 10 minits it turns my pray melee of (when using ppots to) and i keep teleporting ring of life.. it doesnt mather if i restart script or start the client again it keeps doing this can you please help hoodz??
Ok this is my first time using a script but should i start with my acc logged in at the monsters? also i keep getting this whenever i try to run it: "[Error] C:\Simba\Includes\SRL-OSR/SRL/misc/SmartParams.Simba(237:9): Assignment expected at line 236"' any suggestions I have been reading though earlier posts and havent seen any mention to this but if i missed im sorry..
Really well done on this script! :)
anybody got this working for caged ogres? I can't seem to get it to work, it just keeps searching for the npc
Thanks, I tried what you said and it still just searches. I think the problem might be that when it hovers over the ogre "ogre level 63" doesn't show up in the left hand corner of the screen, so it doesn't know that it has found it. Think it might be because i'm a lower level than the ogre
ever since the fight caves update, there is no combat script that can run past an hour. :/
HpToEat = 57; // enter the amount of hitpoints where you want to eat at, example: HpToEat = 35;
foodname = 'shark'; //lobster, salmon, trout, shark
use_prayer = 'false';
USEPOTS = true;
POTSTODRINK = 2; // when do you want to drink it pots (your level + number)
SUPER = true;
ATTACKPOT = true;
STRENGTHPOT = true;
DEFENCEPOT = true;
monstername1 = 'Og'; //enter some letters of the name of the npc you want to attack (not all), example: monstername = 'oblin';
monstercolor1 = 9680843; //enter the monster colors here (dont pick colors that match other things alot (black, grey etc)).
monstercolor2 = 8563135;
monstercolor3 = 11257558;
secondairymonster = false; // true if you want to attack a second npc (with different name)
monstername2 = 'os';
monstercolor4 = 5272940;
monstercolor5 = 4743019;
monstercolor6 = 5405553;
RIGHTCLICKONLY = false;
//LOOTING NOT SUGGESTED, UPDATED IN THE FUTURE!
looting = 'false'; // if you want to loot items set to 'true' . if you dont want to loot items use: 'false'
// item to loot number 1
lootname1 = 'seed'; //use some letters of the item you want to loot.
lootcolor1 = 1134136; //color of loot here. Do ! > NOT < ! use colors that match with the background or the bot will stay stuck in the take_loot procedure!
lootcolor2 = 1333055; //and here. also make sure to ONLY pickup notes and runes, make sure you have enough space in your inventory before botting or it will keep looting if you dont even have inventory space left.
// item to loot number 2
lootname2 = 'seed';
lootcolor3 = 1134136;
lootcolor4 = 1333055;
//item to loot number 3
lootname3 = 'seed';
lootcolor5 = 1134136;
lootcolor6 = 1333055;
//note: if you want to loot only 1 item then you just copy your colors and name to the next item to loot.
trainingmode = 2; //use here what mode you want to use, leftupcorner: 1 rightupcorner: 2 leftundercorner:3 rightundercorner: 4, example: trainingmode: 2;
antibantrainingmode = skill_strength; //or skill_defence, skill_attack, skill_range, skill_magic
//END OF USER CONFIGURATIONS DONT TOUCH ANYTHING AFTER THIS!
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name := username;
Pass := password;
nick := nickname;
Active := True;
end;
end;
procedure foodsetup;
begin
if foodname = 'lobster' then
begin
FoodDTM := DTMFromString('m6wAAAHic42ZgYHBhYmDwgmJPIHYEYhsgNo diOyB2BWIfIA5gZGCIAeIoIPYD4lAoDoPyfYDYC4idgHhHshjQ dEaisAaQJBYTZyIEIwEA/ycJgA==');
end;
if foodname = 'salmon' then
begin
FoodDTM := DTMFromString('mggAAAHicY2NgYOCGYhDgA2IJIBYGYi4gFg JifiBmhMqDxA44SkBFUDErAyZgxaoSYR4DAwCTLQG6');
end;
if foodname = 'trout' then
begin
FoodDTM := DTMFromString('mggAAAHicY2NgYOAGYmEglgBiPgYIAIlxQT EIMAIxPxALAXF5UhxUBBWzAklWBkyAqRKCIQAAnDwB2A==');
end;
if foodname = 'shark' then
begin
FoodDTM := DTMFromString('mlwAAAHicY2dgYOACYkYgZgViESCWYoAALi iWgfKZoXK8QCwMxDnBtlCdmJidATfArgOCoQAAsEwBww==');
end;
end;
procedure LoadDTMS;
begin
NormalStrengthPot1 := DTMFromString('mlwAAAHicY2dgYOAAYmEgZmWAAH4g5oSKiw KxBBDzQNkCUDWyQLx1sy6QZMSKWaHmYcPYdUAwFAAA8p8CiA== ');
NormalStrengthPot2:= DTMFromString('mlwAAAHicY2dgYGAFYgEg5gFiTiBmYoAADi AWBGIJIOaDirFB1coA8bKlmkCSEStmhZqLDWPXAcFQAADZCAJJ ');
NormalStrengthPot3:= DTMFromString('mlwAAAHicY2dgYGAHYkYgFgRiPiDmYIAALi AWAmJpIJaEyoOAMBDLArHqtNlQnZiYFUjiwth1QDAUAADcfgJO ');
NormalStrengthPot4:= DTMFromString('mlwAAAHicY2dgYHBmYmBwBGJrILZngvA9gd gLiNkZGRjEgZgbiP8A1f4CYh4gWwSIlyzWBPIYsWJWIIkLY9cB wVAAAHvkBc4=');
SuperStrengthPot1:= DTMFromString('mggAAAHicY2NgYGADYh4gZmGAAH4gZgViQS BmhIrxArEAEEsC8folS6AyqJgNahY6xlSJMJeBAQDO8AKf');
SuperStrengthpot2:= DTMFromString('mbQAAAHicY2VgYGAHYh4g5maAACYonwvKB8 mLAPGhnTuBJCMKZgaSrGiYEQsGAwCvBAKr');
SuperStrengthpot3:= DTMFromString('mggAAAHicY2NgYGABYj4g5gRiHiBmYoAAEF scyuaHyksC8fkzZ4AkIwZmBZLYMKZKCIYAAPROAxQ=');
SuperStrengthpot4:= DTMFromString('mlwAAAHicY2fidgYGAHYkYgFgRiPiDmYIAA LiAWAmJpIJaEyoOAMBDLArHqtNlQnZiYFUjiwth1QDAUAADcfg JO');
NormalAttackPot1:= DTMFromString('mlwAAAHicY2dgYOAAYh4gZgJiQQYI4IBiMS DmBWIZKFsIKi8LxLrrtwJJRqyYlQE3wK4DgqEAAOlZAmY=');
NormalAttackPot2:= DTMFromString('mlwAAAHicY2dgYGAHYkYgFgRiPiDmYIAALi AWAmJpIJaEyoOAMBDLArHqtNlQnZiYFUjiwth1QDAUAADcfgJO ');
NormalAttackPot3:= DTMFromString('mggAAAHicY2NgYGAHYk4gZgNiRiDmY4AAfi CWhbIFgFgYiKWB2PDYGahKVMzFgB1gqoRgCAAAxSACbg==');
NormalAttackPot4:= DTMFromString('mlwAAAHicY2dgYOBggAAQzQPEQkDMBMScUL YkVJ4biMWBWACIZYE45vwVIMmIFXMx4AbYdUAwFAAADP8C0Q== ');
SuperAttackPot1:= DTMFromString('mbQAAAHicY2VgYGABYjYg5mOAABBfFMoWgY rLArGOwRYgyYiCWYEkOmbEgsEAAG5MAag=');
SuperAttackPot2:= DTMFromString('mbQAAAHicY2VgYOAEYg4g5meAABBfEMoG0S JALAvEwsIBQJIRBbMCSXTMiAWDAQBMhwEa');
SuperAttackPot3:= DTMFromString('mbQAAAHicY2VgYGCFYn4GCGBHYosCsRAQyw Kxq8clIMmIglmR9MMwIxYMBgCC6gH6');
SuperAttackPot4:= DTMFromString('mlwAAAHicY2dgYiOAAYh4gZgkJiQQYI4IBi MSDmBWIZKFsIKi8LxLrrtwJJRhwYN8ClA0kXAOgeAmE=');
NormalDefencePot1:= DTMFromString('mrAAAAHic42BgYOAEYnYg5gViNiDmA2IOBg gQgWIQYIKKcwOxDBCLQ7HOFgMgyYgH4wf4dCLrBgDZygHo');
NormalDefencePot2:= DTMFromString('mrAAAAHic42BgYOACYnYozQPErAwQIAQVE2 JAAE4oFgVicSCWBWK5BgUgyYgH4wf4dCLrBgCyxgGL');
NormalDefencePot3:= DTMFromString('mrAAAAHic42BgYOACYl4gZgdiNiDmY4AAES DmBmIeBgTgAGJOqJwoEEsBseFpUyDJiAfjB/h0IusGAOAZAfo=');
NormalDefencePot4:= DTMFromString('mrAAAAHic42BgYOAEYnYg5gNiViDmZ4AAES DmAWIuKJ8RyuYGYlEolgLipCspUFlcGD/ApxNZNwAMnQJo');
SuperDefencePot1:= DTMFromString('mrAAAAHic42BgYHBjYmDwA2IrIHYBYk8gdg BiJyaInBYjA4MOFBsCsRIQKwCxCBCLAvGWqTpAUxjxYPwAn05k 3QCBZwTm');
SuperDefencePot2:= DTMFromString('mrAAAAHic42BgYOAAYjYg5gFiFiDmZYAAIa icMJTPCJUDYUkglgBiGSC+t80cKosL4wf4dCLrBgAkeQKj');
SuperDefencePot3:= DTMFromString('mrAAAAHic42BgYOAEYiYg5gdiDiBmB2JuBg gQhorDaFkgZoTKSQCxJBBfWmcMFcWF8QN8OpF1AwAgFQKS');
SuperDefencePot4:= DTMFromString('mrAAAAHic42BgYOACYjYg5gFiViDmZYAAYS DmhmIY4ILyxYFYDIilgXhJuwaQZMSD8QN8OpF1AwDuvwIf');
PrayerPot1:= DTMFromString('mggAAAHicY2NgYGAFYj4g5gJiFgYIANGiUM wDFQOpkQVi/W2dQJIRA7NiFcWNIQAAqN4CEA==');
PrayerPot2:= DTMFromString('mggAAAHicY2NgYGAFYm4g5oGyQYAJiHmBWA aIBaBi/FB+6pU1QJIRA7NiFcWNIQAAzNICiA==');
PrayerPot3:= DTMFromString('mggAAAHicY2NgYGBngAAOIOYHYkYg5oSypa FyIkAsCMSyQGx+aT5UFSpmBZLYMKZKCIYAAMHeAmw=');
PrayerPot4:= DTMFromString('mggAAAHicY2NgYGBngAABIOYDYk4gZgRiXi CWAmJpqDgICANx6pU1UBWomBWrKG4MAQDSJAKT');
end;
procedure loggingout;
begin
TabDTM := DTMFromString('m1gAAAHic42JgYOAFYmkg5gJiESBmBWJ+Bg SQhmKQOh4kvjRUXgKqlw2IRYE4KykJSDISxP8ZiAOETYJgBAAA z9MDgg==');
if FindDTM(TabDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
MouseBox(X+1, Y+1, X+1, Y+1, mouse_left);
sleep(10000+random(4000))
logout;
FreeDTM(TabDTM);
terminatescript;
end;
end;
procedure AntiBan;
begin
case random(1000) of
0..1: begin
hoverskill(antibantrainingmode, false)
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: hovering skill'
sleep(800+random(500)) end;
2..3: begin hoverskill(skill_hitpoints, false)
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: hovering skill'
sleep(800+random(500)) end;
4..10: begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: moving camera'
makecompass(randomrange(0, 360))
sleep(800+random(500)) end;
11..26: begin
MMouse(x, y, 4, 4);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: random mouse movement'
sleep(800+random(500)) end;
17: begin
if (use_prayer = 'false') then
case random(2) of
1: begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: afk mode'
wait(80000+ random(40000))
end
end
else
if use_prayer = 'true' then
antiban;
end;
18: begin adjustmousespeed(2, 10, 20)
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: changing mouse speed'
sleep(800+random(500)) end;
19: begin randomRClick;
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: random right click'
sleep(800+random(500)) end;
20: begin hovermovingobject;
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: hovering random object'
sleep(800+random(500)) end;
21: begin MMouseOffClient('top');
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' moving mouse off client'
sleep(800+random(500)) end;
22: begin MMouseOffClient('left');
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: moving mouse off client'
sleep(800+random(500)) end;
23: begin MMouseOffClient('right');
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: moving mouse off client'
sleep(800+random(500)) end;
24:begin MMouseOffClient('bottom');
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: moving mouse off client'
sleep(800+random(500)) end;
25..26: begin if isrunon(false) then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: checking if run is on'
setrun(true);
end
end;
29..31: begin randomtab(false);
sleep(1000+random(500))
GameTab(tab_stats)
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' antiban: checking random tab'
end;
end
end;
procedure checkcount;
begin
if (not loggedin) then
begin
loginplayer;
setangle(0)
setrun(true)
setfightmode(trainingmode)
gametab(tab_stats)
if count = 20 then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' no monsters found for a long time - log out'
logout;
terminatescript;
end
end
else
begin
if count = 20 then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' no monsters found for a long time - log out'
logout;
terminatescript;
end
end
end;
Function Attackmonster6: Boolean;
Var
TPAA: T2DPointArray;
TPA: TPointArray;
CTS, I, Retry, x, y: Integer;
MP: Tpoint;
Box: Tbox;
t: integer;
Begin
pbox2 := IntToBox(188, 23, 379, 64);
PBox := IntToBox(223, 127, 295, 196);
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
marktime(t)
repeat
FindColorsSpiralTolerance(MSCX, MSCY, TPA, monstercolor6, MSX1, MSY1, MSX2, MSY2, 15);
ColorToleranceSpeed(CTS);
TPAA := TPAToATPAEx(TPA, 3, 3);
SortATPASize(TPAA, True);
For I := 0 To High(TPAA) Do
If GetArraylength(TPAA[i]) > 5 Then
Begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monster'
inc(Retry);
MiddleTPAEx(TPAA[i], x, y);
MP := MiddleTPA(TPAA[i]);
Box := IntToBox(MP.x-12, MP.y-17, MP.x+12, MP.y+17);
if (not (FindColor(X, Y, 255, mp.x-12, mp.y-17, mp.x+12, mp.y+17) or FindColor(X, Y, 65280, mp.x-12, mp.y-17, mp.x+12, mp.y+17))) THEN
begin
MMouse(x, y, 3, 3);
sleep(100);
if (IsUpTextMultiCustom([monstername2])) then
begin
if RIGHTCLICKONLY = true then
begin
result := True;
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end
else
Begin
Result := True;
case random(6) of
0..4 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_left);
count := 0
flag;
wait(2500+random(500))
exit;
end;
5 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end;
end;
End;
end
else
begin
findnoninventoryrandoms();
exit;
end;
end
else
begin
findnoninventoryrandoms();
exit;
end;
end
else
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' no monsters found - moving camera'
makecompass(randomrange(0, 360))
wait(100+random(230))
FindNonInventoryRandoms();
inc(count)
writeln('count: ' + inttostr(count))
checkcount;
findnoninventoryrandoms;
exit;
end;
until (timefrommark(t) > (3000))
if (timefrommark(t) > (3000)) then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' no monsters found - moving camera'
makecompass(randomrange(0, 360))
wait(100+random(230))
FindNonInventoryRandoms();
inc(count)
writeln('count: ' + inttostr(count))
checkcount;
findnoninventoryrandoms;
exit;
end;
end;
Function Attackmonster5: Boolean;
Var
TPAA: T2DPointArray;
TPA: TPointArray;
CTS, I, Retry, x, y: Integer;
MP: Tpoint;
Box: Tbox;
t: integer;
Begin
pbox2 := IntToBox(188, 23, 379, 64);
PBox := IntToBox(223, 127, 295, 196);
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
marktime(t)
repeat
FindColorsSpiralTolerance(MSCX, MSCY, TPA, monstercolor5, MSX1, MSY1, MSX2, MSY2, 15);
ColorToleranceSpeed(CTS);
TPAA := TPAToATPAEx(TPA, 3, 3);
SortATPASize(TPAA, True);
For I := 0 To High(TPAA) Do
If GetArraylength(TPAA[i]) > 5 Then
Begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monster'
inc(Retry);
MiddleTPAEx(TPAA[i], x, y);
MP := MiddleTPA(TPAA[i]);
Box := IntToBox(MP.x-12, MP.y-17, MP.x+12, MP.y+17);
if (not (FindColor(X, Y, 255, mp.x-12, mp.y-17, mp.x+12, mp.y+17) or FindColor(X, Y, 65280, mp.x-12, mp.y-17, mp.x+12, mp.y+17))) THEN
begin
MMouse(x, y, 3, 3);
sleep(100);
if (IsUpTextMultiCustom([monstername2])) then
begin
if RIGHTCLICKONLY = true then
begin
result := True;
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end
else
Begin
Result := True;
case random(6) of
0..4 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_left);
count := 0
flag;
wait(2500+random(500))
exit;
end;
5 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end;
end;
End;
end
else
begin
findnoninventoryrandoms();
exit;
end;
end
else
begin
findnoninventoryrandoms();
exit;
end;
end
else
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monsters'
attackmonster6;
exit;
end;
until (timefrommark(t) > (3000))
if (timefrommark(t) > (3000)) then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monsters'
attackmonster6;
exit;
end;
end;
Function Attackmonster4: Boolean;
Var
TPAA: T2DPointArray;
TPA: TPointArray;
CTS, I, Retry, x, y: Integer;
MP: Tpoint;
Box: Tbox;
t: integer;
Begin
pbox2 := IntToBox(188, 23, 379, 64);
PBox := IntToBox(223, 127, 295, 196);
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
marktime(t)
repeat
FindColorsSpiralTolerance(MSCX, MSCY, TPA, monstercolor4, MSX1, MSY1, MSX2, MSY2, 15);
ColorToleranceSpeed(CTS);
TPAA := TPAToATPAEx(TPA, 3, 3);
SortATPASize(TPAA, True);
For I := 0 To High(TPAA) Do
If GetArraylength(TPAA[i]) > 5 Then
Begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monster'
inc(Retry);
MiddleTPAEx(TPAA[i], x, y);
MP := MiddleTPA(TPAA[i]);
Box := IntToBox(MP.x-12, MP.y-17, MP.x+12, MP.y+17);
if (not (FindColor(X, Y, 255, mp.x-12, mp.y-17, mp.x+12, mp.y+17) or FindColor(X, Y, 65280, mp.x-12, mp.y-17, mp.x+12, mp.y+17))) THEN
begin
MMouse(x, y, 3, 3);
sleep(100);
if (IsUpTextMultiCustom([monstername2])) then
begin
if RIGHTCLICKONLY = true then
begin
result := True;
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end
else
Begin
Result := True;
case random(6) of
0..4 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_left);
count := 0
flag;
wait(2500+random(500))
exit;
end;
5 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end;
end;
End;
end
else
begin
findnoninventoryrandoms();
exit;
end;
end
else
begin
findnoninventoryrandoms();
exit;
end;
end
else
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monsters'
attackmonster5;
exit;
end;
until (timefrommark(t) > (3000))
if (timefrommark(t) > (3000)) then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monsters'
attackmonster5;
exit;
end;
end;
Function Attackmonster3: Boolean;
Var
TPAA: T2DPointArray;
TPA: TPointArray;
CTS, I, Retry, x, y: Integer;
MP: Tpoint;
Box: Tbox;
t: integer;
Begin
pbox2 := IntToBox(188, 23, 379, 64);
PBox := IntToBox(223, 127, 295, 196);
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
marktime(t)
repeat
FindColorsSpiralTolerance(MSCX, MSCY, TPA, monstercolor3, MSX1, MSY1, MSX2, MSY2, 15);
ColorToleranceSpeed(CTS);
TPAA := TPAToATPAEx(TPA, 3, 3);
SortATPASize(TPAA, True);
For I := 0 To High(TPAA) Do
If GetArraylength(TPAA[i]) > 5 Then
Begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monster'
inc(Retry);
MiddleTPAEx(TPAA[i], x, y);
MP := MiddleTPA(TPAA[i]);
Box := IntToBox(MP.x-12, MP.y-17, MP.x+12, MP.y+17);
if (not (FindColor(X, Y, 255, mp.x-12, mp.y-17, mp.x+12, mp.y+17) or FindColor(X, Y, 65280, mp.x-12, mp.y-17, mp.x+12, mp.y+17))) THEN
begin
MMouse(x, y, 3, 3);
sleep(100);
if (IsUpTextMultiCustom([monstername1])) then
begin
if RIGHTCLICKONLY = true then
begin
result := True;
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end
else
Begin
Result := True;
case random(6) of
0..4 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_left);
count := 0
flag;
wait(2500+random(500))
exit;
end;
5 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end;
end;
End;
end
else
begin
findnoninventoryrandoms();
end;
end
else
begin
findnoninventoryrandoms();
end;
end
else
begin
if secondairymonster = false then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' no monsters found - moving camera'
makecompass(randomrange(0, 360))
wait(100+random(230))
FindNonInventoryRandoms();
inc(count)
writeln('count: ' + inttostr(count))
checkcount;
findnoninventoryrandoms;
exit;
end
else
begin
attackmonster4;
end;
end;
until (timefrommark(t) > (3000))
if (timefrommark(t) > (3000)) then
begin
if secondairymonster = false then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' no monsters found - moving camera'
makecompass(randomrange(0, 360))
wait(100+random(230))
FindNonInventoryRandoms();
inc(count)
writeln('count: ' + inttostr(count))
checkcount;
findnoninventoryrandoms;
exit;
end
else
begin
attackmonster4;
end;
end;
end;
Function Attackmonster2: Boolean;
Var
TPAA: T2DPointArray;
TPA: TPointArray;
CTS, I, Retry, x, y: Integer;
MP: Tpoint;
Box: Tbox;
t: integer;
Begin
pbox2 := IntToBox(188, 23, 379, 64);
PBox := IntToBox(223, 127, 295, 196);
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
marktime(t)
repeat
FindColorsSpiralTolerance(MSCX, MSCY, TPA, monstercolor2, MSX1, MSY1, MSX2, MSY2, 15);
ColorToleranceSpeed(CTS);
TPAA := TPAToATPAEx(TPA, 3, 3);
SortATPASize(TPAA, True);
For I := 0 To High(TPAA) Do
If GetArraylength(TPAA[i]) > 5 Then
Begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monster'
inc(Retry);
MiddleTPAEx(TPAA[i], x, y);
MP := MiddleTPA(TPAA[i]);
Box := IntToBox(MP.x-12, MP.y-17, MP.x+12, MP.y+17);
if (not (FindColor(X, Y, 255, mp.x-12, mp.y-17, mp.x+12, mp.y+17) or FindColor(X, Y, 65280, mp.x-12, mp.y-17, mp.x+12, mp.y+17))) THEN
begin
MMouse(x, y, 3, 3);
sleep(100);
if (IsUpTextMultiCustom([monstername1])) then
begin
if RIGHTCLICKONLY = true then
begin
result := True;
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end
else
Begin
Result := True;
case random(6) of
0..4 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_left);
count := 0
flag;
wait(2500+random(500))
exit;
end;
5 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end;
end;
End;
end
else
begin
findnoninventoryrandoms();
end;
end
else
begin
findnoninventoryrandoms();
end;
end
else
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monsters'
attackmonster3;
exit;
end;
until (timefrommark(t) > (3000))
if (timefrommark(t) > (3000)) then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monsters'
attackmonster3;
exit;
end;
end;
Function Attackmonster1: Boolean;
Var
TPAA: T2DPointArray;
TPA: TPointArray;
CTS, I, Retry, x, y: Integer;
MP: Tpoint;
Box: Tbox;
t: integer;
Begin
pbox2 := IntToBox(188, 23, 379, 64);
PBox := IntToBox(223, 127, 295, 196);
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
marktime(t)
repeat
FindColorsSpiralTolerance(MSCX, MSCY, TPA, monstercolor1, MSX1, MSY1, MSX2, MSY2, 15);
ColorToleranceSpeed(CTS);
TPAA := TPAToATPAEx(TPA, 3, 3);
SortATPASize(TPAA, True);
For I := 0 To High(TPAA) Do
If GetArraylength(TPAA[i]) > 5 Then
Begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monster'
inc(Retry);
MiddleTPAEx(TPAA[i], x, y);
MP := MiddleTPA(TPAA[i]);
Box := IntToBox(MP.x-12, MP.y-17, MP.x+12, MP.y+17);
if (not (FindColor(X, Y, 255, mp.x-12, mp.y-17, mp.x+12, mp.y+17) or FindColor(X, Y, 65280, mp.x-12, mp.y-17, mp.x+12, mp.y+17))) THEN
begin
MMouse(x, y, 3, 3);
sleep(100);
if (IsUpTextMultiCustom([monstername1])) then
begin
if RIGHTCLICKONLY = true then
begin
result := True;
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end
else
Begin
Result := True;
case random(6) of
0..4 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_left);
count := 0
flag;
wait(2500+random(500))
exit;
end;
5 : begin
smart_clearcanvas;
smart_drawdots(TPA);
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' attacking'
MouseBox(X, Y, X, Y, mouse_right);
wait(200+random(100));
ChooseOptionMulti(['tta']);
count := 0
Flag;
wait(2500+random(500))
exit;
end;
end;
End;
end
else
begin
findnoninventoryrandoms();
end;
end
else
begin
findnoninventoryrandoms();
end;
end
else
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monsters'
attackmonster2;
exit;
end;
until (timefrommark(t) > (3000))
if (timefrommark(t) > (3000)) then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' searching monsters'
attackmonster2;
exit;
end;
end;
procedure eating_food;
begin
if GetSkillInfo('hitpoints', true) > HpToEat then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' in fight - checking hp'
wait(700+random(200))
findnoninventoryrandoms;
antiban;
end
else
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' eating'
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if FindDtm(foodDTM, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
findnormalrandoms();
sleep(1000+random(1000))
gametab(tab_stats)
end
else
begin
loggingout;
end
end
end
end;
procedure IsInCombat;
begin
if FindColor(X, Y, 255, 223, 127, 295, 175) or FindColor(X, Y, 65280, 223, 127, 295, 175) THEN
begin
smart_clearcanvas;
findnoninventoryrandoms;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' in fight - checking hp'
begin
eating_food;
end
end
else
begin
attackmonster1;
end
end;
procedure skill_failsafe;
begin
pbox2 := IntToBox(188, 23, 379, 64);
PBox := IntToBox(223, 127, 295, 196);
if FindColor(X, Y, 8042720, 485, 11, 515, 32) then
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' found a skill interface, closing'
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
wait(400+random(300))
end
else
begin
isincombat;
end
end;
procedure take_loot;
begin
pbox2 := IntToBox(188, 23, 379, 64);
PBox := IntToBox(223, 127, 295, 196);
if (looting = 'true') then
begin
if FindObjEx(X, Y, [lootname1], [lootcolor1, lootcolor2], 10, 50, MSX1, MSY1, MSX2, MSY2) or FindObjEx(X, Y, [lootname2], [lootcolor3, lootcolor4], 10, 50, MSX1, MSY1, MSX2, MSY2) or FindObjEx(X, Y, [lootname3], [lootcolor5, lootcolor6], 10, 50, MSX1, MSY1, MSX2, MSY2) THEN
case random(3) of
0..1 : begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := 'looting'
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
wait(3000+ random(250))
end;
2 : begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := 'looting'
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
wait(200+random(100));
ChooseOptionMulti(['ake']);
wait(3000+ random(250))
end;
end
else
begin
isincombat;
end;
end;
if looting = 'false' then
begin
isincombat;
end
end;
function IsPraying: Boolean;
begin
if not loggedin then
exit;
result := (FindColorsTolerance(monster, 63226, MSX1, MSY1, MSX2, MSY2, 10) or
FindColorsTolerance(monster, 621348, MSX1, MSY1, MSX2, MSY2, 10))
end;
procedure prayercheck;
begin
if (use_prayer = 'true') then
begin
if (not(ispraying)) then
begin
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if findDTM(prayerpot1, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' prayer points low, drinking prayer potion'
sleep(1000+random(1000))
gametab(tab_stats)
end
else
if findDTM(prayerpot2, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' prayer points low, drinking prayer potion'
sleep(1000+random(1000))
gametab(tab_stats)
end
else
if findDTM(prayerpot3, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' prayer points low, drinking prayer potion'
sleep(1000+random(1000))
gametab(tab_stats)
end
else
if findDTM(prayerpot4, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' prayer points low, drinking prayer potion'
sleep(1000+random(1000))
gametab(tab_stats)
end
else
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' out of prayer potions, logging out after 20 seconds'
TabDTM := DTMFromString('m1gAAAHic42JgYOAFYmkg5gJiESBmBWJ+Bg SQhmKQOh4kvjRUXgKqlw2IRYE4KykJSDISxP8ZiAOETYJgBAAA z9MDgg==');
if FindDTM(TabDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(10000+random(4000))
logout;
FreeDTM(TabDTM);
terminatescript;
end;
end
end;
gametab(tab_prayer)
wait(100+ random(300));
mouse(RandomRange(672, 689),RandomRange(331, 353), random(3),random(3),true)
wait(randomrange(500,800))
end
else
begin
if (GetSkillInfo('prayer', true)) < 10 then
begin
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if findDTM(prayerpot1, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' prayer points low, drinking prayer potion'
sleep(1000+random(1000))
gametab(tab_stats)
end
else
if findDTM(prayerpot2, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' prayer points low, drinking prayer potion'
sleep(1000+random(1000))
gametab(tab_stats)
end
else
if findDTM(prayerpot3, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' prayer points low, drinking prayer potion'
sleep(1000+random(1000))
gametab(tab_stats)
end
else
if findDTM(prayerpot4, x, y, MIX1, MIY1, MIX2, MIY2) THEN
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := ' prayer points low, drinking prayer potion'
sleep(1000+random(1000))
gametab(tab_stats)
end
else
begin
smart_clearcanvas;
SMART_DrawText(190,75-50,statchars, 'time running: '+ MsToTime(GetTimeRunning,3) ,clWhite);
SMART_DrawText(190,95-50,StatChars, 'Status: '+ status ,clWhite);
status := 'out of prayer potions, logging out after 20 seconds'
loggingout;
end
end
else
begin
take_loot;
end
end
end
end
else
if (use_prayer = 'false') then
begin
take_loot;
end
end;
procedure DefencePotCheck;
begin
if USEPOTS = True then
begin
if DEFENCEPOT = True then
begin
if GetSkillInfo('Defence', true) > (GetSkillInfo('Defence', false) + POTSTODRINK) then
begin
DefencePotCheck;
end
else
begin
if SUPER = False then
begin
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if FindDTM(NormalDefencePot1, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalDefencePot2, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalDefencePot3, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalDefencePot4, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
begin
loggingout;
end
end
end // end of normal Defence pots
else
begin // begin of super Defence pots
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if FindDTM(SuperDefencePot1, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperDefencePot2, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperDefencePot3, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperDefencePot4, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
procedure StrengthPotCheck;
begin
if USEPOTS = True then
begin
if STRENGTHPOT = True then
begin
if GetSkillInfo('STRENGTH', true) > (GetSkillInfo('STRENGTH', false) + POTSTODRINK) then
begin
isincombat;
end
else
begin
if SUPER = False then
begin
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if FindDTM(NormalStrengthPot1, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalStrengthPot2, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalStrengthPot3, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalStrengthPot4, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
begin
loggingout;
end
end
end // end of normal attack pots
else
begin // begin of super attack pots
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if FindDTM(SuperStrengthPot1, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperStrengthPot2, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperStrengthPot3, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperStrengthPot4, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
begin
loggingout;
end // if no pot is found it banks
end // search for pots
end // search for inv
end // end of normal and super pots
end // end of strength pots procedure
else
begin
prayercheck;
end
end
else
begin
prayercheck;
end;
begin
prayercheck;
end
end;
procedure AttackPotCheck;
begin
if USEPOTS = True then
begin
if ATTACKPOT = True then
begin
if GetSkillInfo('Attack', true) > (GetSkillInfo('Attack', false) + POTSTODRINK) then
begin
StrengthPotCheck;
end
else
begin
if SUPER = False then
begin
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if FindDTM(NormalAttackPot1, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalAttackPot2, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalAttackPot3, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(NormalAttackPot4, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
begin
loggingout;
end
end
end // end of normal attack pots
else
begin // begin of super attack pots
gametab(tab_inv)
wait(120+ random (200))
if gametab(tab_inv) Then
begin
if FindDTM(SuperAttackPot1, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperAttackPot2, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperAttackPot3, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
if FindDTM(SuperAttackPot4, x , y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 3, 3);
clickmouse2(mouse_left);
sleep(500+random(500))
gametab(tab_stats);
end
else
begin
loggingout;
end // if no pot is found it banks
end // search for pots
end // search for inv
end // end of normal and super pots
end // end of attack pots procedure
else
begin
StrengthPotCheck;
end
end
else
begin
StrengthPotCheck;
end;
begin
StrengthPotCheck;
end
end;
procedure FreeTheDTMs;
begin
FreeDTMs(['NormalAttackpot1', 'NormalAttackpot2', 'NormalAttackpot3', 'NormalAttackpot4', 'SuperAttackPot1', 'SuperAttackPot2', 'SuperAttackPot3', 'SuperAttackPot4', 'NormalStrengthPot1', 'NormalStrengthPot2', 'NormalStrengthPot3', 'NormalStrengthPot4', 'SuperStrengthPot1', 'SuperStrengthPot2', 'SuperStrengthPot3', 'SuperStrengthPot4', 'FoodDTM']);
end;
begin
DeclarePlayers;
foodsetup;
loaddtms;
SetupSRL();
disguise('HoodzFighter v2,5')
SRL_CombatRandoms := False;
ActivateClient;
ClearDebug;
writeln('HoodzFighter version 2,5')
repeat
if (not LoggedIn) then
begin
LogInPlayer;
setangle(0)
setrun(true)
setfightmode(trainingmode)
gametab(tab_stats)
end;
if (LoggedIn) then
begin
skill_failsafe;
attackpotcheck;
FindNonInventoryRandoms();
end;
until(false);
addonterminate('FreeTheDTMs')
end.
help me out will u mate. trying to get those def pots added
I'm not able to get the bot to run. I opened it but im not really sure what do after that. Could you post a video showing how to set it up? Would greatly appreciate it brother.
Why does it keep putting exp lamps/books on attack? Is there a way to make it so that it puts it on strength?
How will i ever run this longer as 1 hour? it gets stuck at every random event..
Im having trouble getting the bot to eat trout or any other food. I entered 24 as Hp to eat and wrote 'trout' in there, but it wont eat any of it, even when my hp is at 24 or below...?
Few things:
-do you have runescape's in-game brightness set to highest?.
-do you have the latest SRL_OSR include revision?.
The DTM's hoodz uses are solid for food finding, but encase they do not work you can work around it in two methods:
A) Create your own DTM for the Trout (not hard, easy; lots of tutorials about it).
Can be edited at like 100:
Simba Code:if foodname = 'trout' then
begin
B) Switching from DTM to color finding.
At line 1061 Change the line that reads
toSimba Code:if FindDtm(foodDTM, x, y, MIX1, MIY1, MIX2, MIY2) THEN
Simba Code:if FindObjEx(x,y,['rout'],[YourFoodColorHere],YourFooDTolerancehere,50,MIX1, MIY1, MIX2, MIY2) then
then you can use the Eye-Drop Tool to pick a color for the trout, and set Tolerance to around 3-10.
So it looks like
Simba Code:if gametab(tab_inv) Then
begin
if FindObjEx(x,y,['rout'],[198215],1,50,MIX1, MIY1, MIX2, MIY2) then
begin
clickmouse2(mouse_left);
findnormalrandoms();
sleep(1000+random(1000))
gametab(tab_stats)
WHen i runned this script it works great, but when i came back on i was hacked. All my money is gone.
Cant tell if trolling or serious, thousands of downloads and nothing evil. Obvious troll.
@hoodz
I'd be more than glad to help you with whatever it is you need me to do :-).