////////////////////////////////////////////////////////////
//// // //
/// Catherby Fisher /// SETUP IS DOWN //
// By: HatlessCow //// ___ //
/////////////////////////////////////////// |#| //
// |#| //
// <Features> |#| //
// -Full Anti-Randoms |#| //
// -Fishes Lobbies or Swordies ~~~~~~~ //
// -Totally undetectable \#####/ //
// -Runs Overnight \###/ //
// -This is just a nice overnighter version \#/ //
// and there are a lot of updates coming. ' //
// //
// <Setup> //
// -Low Detail! //
// -V-bright, Highest angle of view //
// -Harpoon or Lobby Pot in first invin slot //
// -Start in catherby bank //
// -Open bank and enter your pin orelse it cant bank //
// -REMEMBER TO DO SETUP WHICH IS BELOW! //
// //
// <Versions> //
// b.1 - Tested all pathing //
// b.2 - Fixed a few pathing bugs //
// b.3 - Fishing fixed //
// b.4 - Added normal randoms //
// b.5 - Added the fishing randoms //
// b.6 - Made a lots of final testing and touch-ups //
// 1.0 - Release, script will run overnight //
// //
// <Updates Coming> //
// 1.1 - Progress report (Monday, Nov 7) //
// 1.2 - Prolly add debug box proggy report //
// //
// <Customer Support> //
// Aim: HatlessCow //
// Msn:
HatlessCow@gmail.com //
// Email:
HatlessCow@gmail.com //
// Website: Coming Soon! (
www.runesc.net) <-- Uber Site //
// //
////////////////////////////////////////////////////////////
program CatherbyFisher;
{.include rsci.txt}
////////////////////////////////////////////////////////////
// //
// ##### ##### ####### # # ##### //
// # # # # # # # //
// #### ### # # # ##### //
// # # # # # # //
// ##### ##### # ##### # //
// //
////////////////////////////////////////////////////////////
const
////////////////////////////////////////////////////////////
MinRunFor = 108; //Minutes to run script for //
Cage = true; //Using Lobby Pot? If harpoon set //
//false... //
BankerDot = 195836; //Dot of Banker on mini-map //
FishingSpot = 15315080; //Actual little light blue dots in//
//water //
RoadColor = 6513515; //Color of roar on mini-map //
BankSymbol = 5628662; //Gold/Yellow of banksymbol $ sign//
FishSymbol = 15225109; //Darkest blue of fish on fishing //
//symbol //
MMRock = 4804427; //Darkest color of rocks in ocean //
//on mini-map //
////////////////////////////////////////////////////////////
Version = '1.3'; //Don't edit this... //
////////////////////////////////////////////////////////////
var tsx,tsy, fx, fy, FishSpot, FishToolColor, WhirlPool, sst, cst: integer;
ForceBank, Stop: boolean;
Procedure FishToolColorGet;
begin
GameTab(4);
if(cage)then
FishToolColor:= GetColor(591, 266);
if(not cage)then
FishToolColor:= GetColor(587, 261);
end;
Function FishToolGone:boolean;
begin
if(cage)then
if(not GetColor(591, 266) = FishToolColor)then
Result:= true;
if(not cage)then
if(not GetColor(587, 261) = FishToolColor)then
Result:= true;
end;
Function FindWhirlpool:boolean;
begin
if(FindBitmapToleranceIn(WhirlPool, tsx,tsy, fx - 20, fy - 20, fx+ 20, fy + 20, 30))then
begin
Result:= true;
Stop:= true;
end;
end;
function FindFight2:Boolean;
var ChinchillaX, ChinchillaY: integer;
begin
if(FindColor(ChinchillaX, ChinchillaY, 65280, 235, 121, 297, 146)) then
Result:=True;
end;
Procedure SwitchFish; forward;
Procedure FindRandoms;
begin
If(FindFight2)then
begin
RunTo('N',false);
Stop:= true;
end;
If(FindColorSpiral(tsx,tsy,65535,3,3,515,336))Then
begin
FindText;
Stop:= true;
end;
wait(10+Random(20));
if(FindWhirlpool)then
begin
SwitchFish;
Stop:= true;
end;
If(DoTalking)Then
begin
EyeTest;
Stop:= true;
end;
wait(10+Random(20));
if(CheckLeveled)then
Stop:= true;
wait(10+Random(20));
FindFrog;
wait(10+Random(20));
FindForester;
wait(10+Random(20));
FindPlant;
FindMiscRandoms;
GameTab(4);
RandomItemHandler('Fishing',False);
if(FishToolGone)then
ForceBank:= true;
end;
procedure ToFish;
var iTemp, iX, iY, sY: integer;
begin
Run(true);
GameTab(4);
MakeCompass('n');
For iTemp:= 0 to 2 do
begin
sY:= 147;
repeat
sY:= Sy - 1;
until(FindColor(tsx, tsy, RoadColor, 675, sY, 701, 147))
MouseFlag(tsx, tsy + (2 - random(3)), 2, 2);
end;
if(FindColor(ix, iY, MMRock, 666, 72, 721, 158))then
if(FindColor(tsx, tsy, FishSymbol, iX - 20, iY - 20, iX + 20, iY + 20))then
MouseFlag(tsx, tsy - (3 + random(2)), 2, 2) else SetLoop;
FishSpot:= 1;
FindRandoms;
end;
Procedure SwitchFish;
begin
FindRandoms;
MakeCompass('n');
if(FishSpot = 1)then
begin
if(FindColor(tsx, tsy, FishSymbol, 671, 61, 720, 153))then
MouseFlag(tsx, tsy, 2, 2);
FishSpot:= 2;
end else
if(FishSpot = 2)then
begin
if(FindColor(tsx, tsy, FishSymbol, 667, 75, 705, 156))then
MouseFlag(tsx, tsy, 2, 2);
FishSpot:= 3;
end else
if(FishSpot = 3)then
begin
if(FindColor(tsx, tsy, FishSymbol, 601, 51, 640, 138))then
MouseFlag(tsx + 3, tsy, 2, 2);
FishSpot:= 2;
end;
FindRandoms;
end;
function FindFish: boolean;
begin
if(FindObjCenter(tsx, tsy, 'Cage', FishingSpot, 20))then
result:= true else SwitchFish;
end;
procedure Fish;
var tx, ty, ifail, itrack: integer;
begin
FindRandoms;
ifail:= 0;
if(FindFish)then
begin
MouseFlag(tsx, tsy - 35, 1, 1);
wait(1200);
FindFish;
if(cage)then
Mouse(tsx, tsy, 1, 1, true);
if(not cage)then
begin
Mouse(tsx, tsy, 1, 1, false);
ClickText('Harpoon');
Flag;
end;
tx:= tsx; ty:= tsy;
fx:= tsx; fy:= tsy;
repeat
FindRandoms;
wait(100);
FindColorSpiralTolerance(tx, ty, FishingSpot, tx - 20, ty - 20, tx + 20, ty + 20, 20);
if(not Flag)then
itrack:= itrack + 1;
until(not Flag)and(itrack >= 20)
repeat
FindRandoms;
ifail:= ifail + 1;
wait(150);
if(random(5) = 3)then
MMouse((25+random(430)), 25+random(270), 3, 3);
until(ifail>35)or(ForceBank)or(Stop)or(not FindColorSpiralTolerance(tx,ty,FishingSpot,tx-20,ty-20,tx+20,ty+20,20))
Stop:= false;
end;
end;
Procedure ToBank;
var sY: integer;
begin
FindRandoms;
Run(true);
GameTab(4);
MakeCompass('n');
If(FishSpot = 1)then
begin
sY:= 107;
repeat
sY:= Sy - 1;
until(FindColor(tsx, tsy, RoadColor, 570, sY, 635, 107))
if(FindColor(tsx, tsy, RoadColor, 570, sY, 635, 107))then
MouseFlag(tsx + 4, tsy + (2 - random(3)), 2, 2) else
begin
if(FindColor(tsx, tsy, FishSymbol, 570, 8, 725, 160))then
MouseFlag(tsx, tsy, 2, 2);
end;
end else
If(FishSpot = 2)then
begin
sY:= 107;
repeat
sY:= Sy - 1;
until(FindColor(tsx, tsy, RoadColor, 570, sY, 635, 107))
if(FindColor(tsx, tsy, RoadColor, 570, sY, 635, 107))then
MouseFlag(tsx + 4, tsy + (2 - random(3)), 2, 2) else
begin
if(FindColor(tsx, tsy, FishSymbol, 570, 8, 725, 160))then
MouseFlag(tsx, tsy, 2, 2);
end;
end else
If(FishSpot = 3)then
begin
SwitchFish;
sY:= 107;
repeat
sY:= Sy - 1;
until(FindColor(tsx, tsy, RoadColor, 570, sY, 635, 107))
if(FindColor(tsx, tsy, RoadColor, 570, sY, 635, 107))then
MouseFlag(tsx + 4, tsy + (2 - random(3)), 2, 2) else
begin
if(FindColor(tsx, tsy, FishSymbol, 570, 8, 725, 160))then
MouseFlag(tsx, tsy, 2, 2);
end;
end;
if(FishSpot = 1)then
begin
if(FindColor(tsx, tsy, BankSymbol, 570, 8, 725, 160))then
begin
if(FindColor(tsx, tsy, BankerDot, tsx - 20, tsy - 20, tsx + 20, tsy + 20))then
MouseFlag(tsx, tsy + 8, 2, 0)
end else
if(FindColor(tsx, tsy, RoadColor, 574, 73, 599, 105))then
begin
MouseFlag(tsx + 4, tsy, 2, 2);
if(FindColor(tsx, tsy, BankSymbol, 570, 8, 725, 160))then
if(FindColor(tsx, tsy, BankerDot, tsx - 20, tsy - 20, tsx + 20, tsy + 20))then
MouseFlag(tsx, tsy + 13, 2, 0);
end;
end else
begin
if(FindColor(tsx, tsy, RoadColor, 574, 73, 599, 105))then
MouseFlag(tsx + 4, tsy, 2, 2);
if(FindColor(tsx, tsy, BankSymbol, 570, 8, 725, 160))then
if(FindColor(tsx, tsy, BankerDot, tsx - 20, tsy - 20, tsx + 20, tsy + 20))then
MouseFlag(tsx, tsy + 8, 2, 0);
end;
FindRandoms;
end;
procedure NewFishTool;
begin
DepositAll;
Mouse(474, 80, 2, 2, true);
Mouse(98, 77, 3, 3, false);
wait(250);
if(SearchForText(tsx, tsy, 22, 30, 246, 215, 'pot', Font2))then
MMouse(312, 47, 3, 3);
Withdraw(1, 1);
ForceBank:= false;
end;
procedure Bank;
begin
if(not FindColor(tsx, tsy, BankSymbol, 570, 8, 725, 160))then
SetLoop;
FindRandoms;
OpenBank;
wait(1000);
if(not BankScreen)then
SetLoop;
if(ForceBank)then
NewFishTool;
DepositArea(613, 217, 730, 454);
DepositArea(573, 259, 728, 452);
CloseWindow;
FindRandoms;
end;
procedure CheckVersion;
begin
if(GetPage('http://www.geocities.com/meowiswhatkittenssay/version.txt') = Version)then
Writeln('Script is up to date! You are good to go!') else
begin
Writeln(GetPage('http://www.geocities.com/meowiswhatkittenssay/version.txt') + ' is the latest version, you have version ' + version);
Writeln('I suggest getting the latest version so it will open that page now!');
OpenWebPage('http://www.geocities.com/meowiswhatkittenssay/cathfisher.txt');
TerminateScript;
end
end;
begin
CheckVersion;
LoadInclude('Internet Explorer');
WhirlPool := BitmapFromString(1, 1, 'BFC0C6');
SetChat('Off', 1);
SetChat('Off', 2);
fx:= 90; fy:= 90;
FishToolColorGet;
sst:= getsystemtime;
repeat
ToFish;
repeat
Fish;
until(ForceBank)or(invcount>=28)
ToBank;
Bank;
cst:= getsystemtime;
until(((cst-sst)/1000)/60 >= MinRunFor)
Logout;
Writeln('Script Done');
end.