Here is a couple autofighters because I have recieved a couple PM on where to find them, all credit goes to the scripters (mentioned in scripts
).
Code:
{*****************************************+
+ Ch33pFighter +
+ v2.5 +
+ Powerfighter by Ch33pSh33p +
+ <3 Kaitnieks Creator of SCAR +
+*****************************************+
+ How to Use: +
+ 1.Setup at lines 54-66 +
+ 2.Highest angle of view +
+ 3.Needs OSi 4.011 +
+ 4.KillerBz's Boxbreaker +
+ 5.Silent Mouse off, Drag Cross into +
+ client +
+ 6.Dont run for more than 2 hours +
+ 7.Make sure the monster is a +
+ 3rd of your level +
+*****************************************+
+ Credits: +
+ Odie5533: For his OSi and his tut that +
+ really helped me start scripting +
+ <3 Odie +
+ KillerBz: His Boxbreaker since +
+ Odie's shutdown +
+*****************************************+
Log:
v0.1 - Beta Test
v1.0 - Finalization
v1.1 - Public Release
v1.11 - Added Mod Detection Changed a few things
Silver and Gold Thanks to Mindping's bitmaps
v1.2 - Various Small Changes Now incorporates 4 monster colors
for total randomness
v2.0 - Added Eat Food Feature Have food in Inv
v2.1 - Added Mime Detection
v2.11 - Little Glitch not worth mentioning
v2.111 - Did a little Procedure Compacting
Main Loop Only 3 LINES!
v2.5 - Eat food Should work now
Notes: Cannot rub lamps
Will Talk to most randoms
Will Speak to Genie but not open lamp
If you dont want to eat dont have food in Inv
Will be adding bone burier soon
}
program Ch33pFighter;
var FT,ax,ay,Style,foodinvcolor:Integer;
MC1,MC2,MC3,MC4,Monster,tol,Attack1,Attackpat,TalkW,TalkY:integer;
Att,Attacking:boolean;
US,PW:string;
{.include OSi.txt}
{.include BoxBreaker2.txt}
Procedure Install;
begin
US:=''; //Username
PW:=''; //Password
MC1:=9344153; //Monster Color (Lightest)
MC2:=8423050; //Monster Color (Different Color Lightst)
MC3:=12567495; //Monster Color (Different Color Lightest)
MC4:=11975872; //Any color on monster (Peferably Lightest)
tol:=0; //Leave Alone
Style:=1; //Set fight style 1-4 top to bottom
FT:=25; //Fight Time in ms.
FoodInvColor:=1932007; //1202340 for lobbys 11170978 for swordys 6847895 for sharks and 1854166 for salmons
end;
Procedure LoginCheck;
var tab:integer;
begin
if(IsTextAt2(290,251,'Us',0))and(NotLogedIn)then
Mouse(447,322,10,2,true);
if(IsTextAt2(306,241,'We',0))and(NotLogedIn)then
begin
Mouse(461,292,125,20,true);
if(IsTextAt2(268,214,'En',50))then
begin
Mouse(400,256,20,5,true);
SendKeysSilentsmooth(US,50);
Mouse(400,270,20,5,true);
SendKeysSilentsmooth(PW,50);
Mouse(300,322,20,5,true);
repeat
tab:=tab+1;
wait(100+random(50));
until(FindColor(x,y,8421504,0,0,515,338))
end;
end;
if(FindColor(x,y,8421504,400,0,515,338))then
begin
Mouse(x+5,y+1,15,5,true);
sendarrowsilentwait(0,900+random(200))
wait(200+random(100));
SetFightMode(Style);
end;
end;
procedure FindNPC; //Based Off Odie's
var tab,c:integer; Spoken:boolean;
begin
if(FindColor(x,y,65535,5,5,514,337))then wait(200)
if(FindColor(x,y,65535,5,5,514,337))and(LogedIn)then
begin
repeat
if((x+tab) < 515)and((y+18) < 338)then
MoveMouseSmoothEx(x+tab,y+15+random(3),1,6,15,20,20);
wait(5);
if(IsTextAt2(9,9,'Talk',100))then
begin
GetMousePos(x,y);
Mouse(x,y,0,0,false);
Wait(200+random(100));
if(FindBitmap(TalkW,x,y))or(FindBitmap(TalkY,x,y))then
begin
Mouse(x,y,40,5,true);
MapFlag;
wait(1000+random(1000));
while((FindColor(x,y,16711680,5,345,510,465))or
(FindColor(x,y,16777215,5,345,510,465)))and
(not(GetColor(20,434)=0))and(c<=10)do
begin
Mouse(x,y,50,2,true);
wait(2000+random(1000));
end;
Spoken:=true;
end;
end;
until(tab>=250)or(Spoken);
end;
end;
procedure FindrareRandoms;
var ax,ay:integer;
begin
if(FindColor(ax,ay,786423,10,350,150,433))then
begin
LogOut('Mod Found');
end;
If(findcolor(ax,ay,10658466,10,350,150,433))then
begin
logout('Mod Found')
end;
if(GetColor(30,418)=0)and(GetColor(72,429)=0)then
begin
LogOut('You died!');
end;
if(FindColor(ax,ay,11503238,10,350,479,433))then
begin
LogOut('Mime Found');
end;
end;
Procedure DetectRandom;
begin
LoginCheck;
FindNPC;
FindStrangeBox;
FindrareRandoms;
end;
Procedure Eat;
var c:integer;
begin
Writeln('You have low hp')
wait(500+random(500));
OpenBag;
if(FindColorSpiral(x,y,FoodInvColor,560,210,730,460))then
repeat
OpenBag;
if(FindColorSpiral(x,y,FoodInvColor,560,210,730,460))then
begin
Mouse(x,y,2,2,true);
wait(3000+random(250));
end;
c:=c+1;
until(GetHp>80)or(c>4)
OpenBag;
end;
Procedure Attack;
var c:integer;
begin
Monster:=random(4);
case Monster of
0:Monster:=MC1;
1:Monster:=MC2;
2:Monster:=MC3;
3:Monster:=MC4;
end;
x:=25+random(230);
y:=25+random(230);
if(FindColorSpiralTolerance(x,y,Monster,5,5,514,337,tol))then
begin
status('Ch33pFighting');
MoveMouseSmooth(x,y);
GetMousePos(ax,ay);
if(not FindColor(ax,ay,65280,ax-15,ay-30,ax+10,ay+15))and
(not(FindColor(ax,ay,65280,240,125,270,180)))then
begin
Mouse(ax,ay,1,1,false);
wait(150+random(50));
if(FindBitmapIn(Attack1,x,y,10,12,516,342))or
(FindBitmapIn(Attackpat,x,y,10,12,516,342))then
begin
Attacking:=true;
wait(50+random(25));
Mouse(x,y,5,3,true);
for c:=0 to 3 do
if(not (FindColorSpiral(ax,ay,65280,240,125,270,180)))then
begin
MapFlag;
wait(300+random(125));
DetectRandom;
end;
end
end;
end;
end;
Procedure AttackAll;
begin
DetectRandom;
wait(300+random(200));
Att:=False;
Attack;
Wait(FT+random(2000));
Gethp;
if(Gethp<35)then
Eat;
end;
Procedure LoadBmps;
begin
Attack1 := BitmapFromString(10, 6,
'FFFFFF5D54475D54475D5447FFFFFFFFFFFF5D54475D54475D5447' +
'5D5447FFFFFFFFFFFF5D54475D5447FFFFFFFFFFFF0000005D5447' +
'5D54475D5447FFFFFFFFFFFF0000005D5447FFFFFFFFFFFF000000' +
'5D54475D54475D5447FFFFFFFFFFFF0000005D5447FFFFFFFFFFFF' +
'FFFFFFFFFFFF5D54475D5447FFFFFFFFFFFF0000005D5447FFFFFF' +
'FFFFFF0000000000000000005D5447FFFFFFFFFFFF0000005D5447' +
'FFFFFFFFFFFF0000005D54475D54475D5447');
Attackpat := BitmapFromString(21, 7,
'5D5447FFFF00FFFF000000005D54475D54475D54475D54475D5447' +
'5D54475D54475D54475D54475D54475D54475D54475D54475D5447' +
'5D54475D54475D54475D5447FFFF00FFFF00FFFF00FFFF005D5447' +
'5D54475D5447FFFF00FFFF00FFFF00FFFF005D54475D54475D5447' +
'5D5447FFFF00FFFF00FFFF00FFFF005D54475D5447FFFF00FFFF00' +
'0000000000000000005D5447FFFF00FFFF00000000000000FFFF00' +
'FFFF005D54475D5447FFFF00FFFF00000000000000000000000000' +
'5D5447FFFF00FFFF000000005D54475D54475D54475D5447FFFF00' +
'FFFF00FFFF00FFFF00FFFF000000005D5447FFFF00FFFF00000000' +
'5D54475D54475D54475D5447FFFF00FFFF000000005D54475D5447' +
'5D5447FFFF00FFFF00000000000000FFFF00FFFF000000005D5447' +
'FFFF00FFFF000000005D54475D54475D54475D5447FFFF00FFFF00' +
'0000005D54475D54475D5447FFFF00FFFF000000005D5447FFFF00' +
'FFFF000000005D5447FFFF00FFFF000000005D54475D54475D5447' +
'5D54475D5447FFFF00FFFF00FFFF005D54475D54475D5447FFFF00' +
'FFFF00FFFF00FFFF00FFFF000000005D54475D5447FFFF00FFFF00' +
'FFFF00FFFF005D5447');
TalkW := BitmapFromString(17, 10,
'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000' +
'000000000000000000000000000000000000FFFFFFFFFFFF000000' +
'000000FFFFFFFFFFFF000000000000000000000000000000000000' +
'000000000000000000000000000000FFFFFFFFFFFF000000000000' +
'FFFFFFFFFFFF000000000000000000000000000000000000000000' +
'000000000000000000000000FFFFFFFFFFFF000000000000FFFFFF' +
'FFFFFF000000000000000000000000000000000000000000000000' +
'000000000000000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF' +
'000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF000000' +
'000000000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000' +
'000000000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000' +
'000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000000000' +
'000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000' +
'FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000000000000000' +
'FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000000000FFFFFF' +
'FFFFFF000000000000FFFFFFFFFFFF000000000000000000FFFFFF' +
'FFFFFF000000000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF' +
'000000000000FFFFFFFFFFFF000000000000000000000000FFFFFF' +
'FFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFFFFFFFF');
TalkY := BitmapFromString(17, 10,
'FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00000000000000000000' +
'000000000000000000000000000000000000FFFF00FFFF00000000' +
'000000FFFF00FFFF00000000000000000000000000000000000000' +
'000000000000000000000000000000FFFF00FFFF00000000000000' +
'FFFF00FFFF00000000000000000000000000000000000000000000' +
'000000000000000000000000FFFF00FFFF00000000000000FFFF00' +
'FFFF00000000000000000000000000000000000000000000000000' +
'000000000000000000FFFF00FFFF00000000000000FFFF00FFFF00' +
'000000000000000000000000FFFF00FFFF00FFFF00FFFF00000000' +
'000000000000FFFF00FFFF00000000000000FFFF00FFFF00000000' +
'000000000000FFFF00FFFF00000000000000FFFF00FFFF00000000' +
'000000FFFF00FFFF00000000000000FFFF00FFFF00000000000000' +
'000000000000FFFF00FFFF00FFFF00FFFF00FFFF00000000000000' +
'FFFF00FFFF00000000000000FFFF00FFFF00000000000000000000' +
'FFFF00FFFF00000000000000FFFF00FFFF00000000000000FFFF00' +
'FFFF00000000000000FFFF00FFFF00000000000000000000FFFF00' +
'FFFF00000000000000FFFF00FFFF00000000000000FFFF00FFFF00' +
'000000000000FFFF00FFFF00000000000000000000000000FFFF00' +
'FFFF00FFFF00FFFF00FFFF00000000000000FFFF00FFFF00');
end;
Procedure LoopCompacter;
begin
Install;
SetupOSi;
BoxOpenerSetup;
LoadBmps;
LoginCheck;
Setfightmode(style);
Chatfixer;
repeat
Attackall;
until(false);
LogOut('Fighting Over');
Writeln('Plz Report Bugs to hellzwing@gmail.com');
end;
begin
LoopCompacter;
end.
Here is another:
Code:
program RenaxFighter;
{.include RSCI.txt}
var
x,y,FoodColor,FoodColor2,TotalRands,Levels,Ate: Integer;
Bones,BonesB,Killed: Integer;
RT,ET,SST: Longint;
GotFoodColors,RunAway: Boolean;
const
{++++++++++Color-Setup++++++++++}
MonsterColor= 86664; //monster color 1
MonsterColor2= 76875; //monster color 2
MonsterColor3= 7865321; // monster color 3
Tol= 5; //small tolerance
Tol2= 25; //big tolerance
AutoGetFoodColors= True; //true to have me get your food colors false if not
FoodColor3= 66546496; //only needed if not using auto get food colors
FoodColor4= 7765867; //only needed if not using auto get food colors
{++++++++++Fighting-Setup++++++++++}
AttackText= True; //true if you see 'Attack' when your mouse is over the monster false if not
MaxFightTime= 30; //maximum time in seconds to be in a fight (will run if over)
EatFood= True; // true to eat food when dieing
MinHp= 50; // percent of health to eat at
RunDirection= 'S'; //direction to run when your getting owned
{++++++++++Misc-Setup++++++++++}
LampSkil= 'Mining'; //skill to use lamp on
ReportTime= 5; //set the time in minutes for progress report
CollectBones= False; //true to collect bones and bury em false to not
RFar= True; //true to run far away for when dieing/randoms good for open spaces false for running only a short way away
UserSet= 1; //user and pass set in RSCI
BoneGround= 8176715; //bone color on the ground
BoneInvin= 43713254; //bone color in inventory
FightMode= 1; //1 to 4 up to down i think...
Procedure ProgressReport;
var
RHours, Minutes, Seconds, RMinutes, RSeconds:LongInt;
Time:String;
begin
Seconds:= (GetSystemTime-SST) div 1000;
Minutes:= Seconds div 60;
RHours:= Minutes div 60;
Time:= inttostr(Seconds) + ' Seconds';
if Minutes <> 0 then
begin
RSeconds:= Seconds Mod (Minutes * 60);
Time:= inttostr(Minutes) +' Minutes and ' + inttostr(RSeconds) + ' Seconds';
end;
if RHours <> 0 then
begin
RMinutes:= Minutes Mod (RHours * 60);
RSeconds:= Seconds Mod (Minutes * 60);
Time:= inttostr(RHours) + ' Hours, ' + inttostr(RMinutes) + ' Minutes and ' + inttostr(RSeconds) +' Seconds';
end;
begin
Writeln(' ');
Writeln('<=================Progress Report================>');
Writeln('Worked for ' + Time);
Writeln('Fought ' + inttostr(Killed) + ' time[s]');
Writeln('Gained ' + inttostr(Levels) + ' level[s]')
if(EatFood)then
Writeln('Ate ' + inttostr(ate) + ' pieces of food')
if(CollectBones)then
Writeln('Collected ' + inttostr(Bones) + ', and buried ' + inttostr(BonesB) + ' bones');
Writeln('Handled: ' + inttostr(TotalRands) + ' Randoms all together')
Writeln('<================================================>');
end;
end;
procedure FindText2;
var
x, y, tmpx, tmpy: Integer;
begin
if(FindColor(tmpx, tmpy, 65535, 10, 25, 511, 334))then
begin
if(FindBitmapMaskTolerance(AntiUse, x, y, 3, 3, 515, 336, 0, 40))then
begin
Writeln('Your Name has been spotted on the screen');
TalkToRand;
RandomItemHandler(LampSkil, True)
end;
end;
wait(50);
end;
procedure FindRandoms;
begin
Login(UserSet)
if(Findforester)then
TotalRands := TotalRands + 1;
if(FindFrog)then
TotalRands := TotalRands + 1;
EyeTest;
if(FindPlant)then
TotalRands := TotalRands + 1;
FindMiscRandoms;
if(CheckLeveled)then
Levels := Levels + 1;
FindText2;
end;
function TakeBone: Boolean;
var ox, oy: Integer;
begin
if(FindColorSpiralTolerance(x, y, BoneGround, 4, 4, 515, 337, 5))then
begin
repeat
if(FindColorSpiralTolerance(x, y, BoneGround, 4, 4, 515, 337, 5))then
begin
MMouse(x, y, 4, 4)
Wait(250 + Random(250))
if(IsUpText('Take')) and
(not(IsUpText('Take bone')))then
begin
GetMousePos(x, y)
Mouse(x, y, 0, 0, False)
Wait(250 + Random(250))
if(SearchForText(x - 100, y-100, x + 100, y + 100, 'Take bones', Font2))then
begin
if(ClickText('Take bones'))then
begin
GetEmptyItemPosition(ox, oy)
Flag;
Wait(1500 + Random(500))
MMouse(ox, oy, 0, 0)
Wait(250 + Random(250))
if(IsUpText('Bury'))then
Bones := Bones + 1;
end;
end else
MMouse(5, 5, 60, 60)
end else
begin
if(IsUpText('Take bone'))then
begin
GetMousePos(x, y)
GetEmptyItemPosition(ox, oy)
Mouse(x, y, 0, 0, True)
Flag;
Wait(1500 + Random(500))
MMouse(ox, oy, 0, 0)
Wait(250 + Random(250))
if(IsUpText('Bury'))then
Bones := Bones + 1;
end;
end;
end;
until(not(FindColorSpiralTolerance(x, y, BoneGround, 4, 4, 515, 337, 5))) or (InvCount = 28)
end;
if(InvCount = 28)then
Result := True;
end;
procedure Eat; forward;
procedure BuryBones;
begin
while(FindColor(x, y, BoneInvin, 560, 210, 740, 460))do
begin
Mouse(x, y, 5, 5, True)
Wait(1500 + Random(300))
BonesB := BonesB + 1;
if(FindFight)then
begin
RunWhere(RunDirection, RFar, True)
Eat;
GameTab(4)
end;
end;
end;
procedure WaitColor(Color, Tol: Integer);
begin
if(not(FindColorTolerance(x, y, Color, 0, 0, 517, 337, Tol)))then
begin
repeat
Wait(250)
FindRandoms;
until(FindColorTolerance(x, y, Color, 0, 0, 517, 337, Tol))
end;
end;
function FindMonster(Color1, Color2, Color3, STol, BTol: Integer): Boolean;
var
c, Color, i: Integer;
Clicked, Fighting: Boolean;
begin
Result:= False;
Fighting:= False;
repeat
Color:= random(3);
case Color of
0: Color:= Color1;
1: Color:= Color2;
2: Color:= Color3;
end;
WaitColor(Color, BTol);
repeat
repeat
for c:= STol to BTol do
begin
x:= 260;
y:= 170;
if(FindColorSpiralTolerance(x, y, Color, 4, 4, 517, 337, c))and
(not(FindColor(x, y, 65280, x - 30, y - 30, x + 30, y + 30)))and
(not(FindColor(x, y, 65280, 240, 125, 270, 180)))then
begin
if(AttackText)then
begin
MMouse(x,y,5,5)
Wait(150 + random(150));
if(IsUpText('Attack'))then
begin
GetMousePos(x,y)
Mouse(x, y, 0, 0, False);
Wait(250 + Random(250));
if(SearchForText(4, 4, 517, 337, 'Attack', 1))then
Break
else
MMouse(5, 5, 60, 60);
end else
begin
Mouse(x, y, 0, 0, False);
Wait(200 + Random(100));
if(SearchForText(4, 4, 517, 337, 'Attack', 1))then
begin
Break;
end else
MMouse(5, 5, 60, 60);
end;
end;
end;
end;
until(SearchForText(4, 4, 517, 337, 'Attack', 1));
if(ClickText('Attack'))then
Clicked:= True;
until(Clicked)
for i:= 1 to 5 do
begin
if(IsFlag)then
Flag;
Wait(500);
if(FindColorSpiral(x, y, 65280, 240, 125, 270, 180))then
begin
Fighting:= True;
Break;
end;
FindRandoms;
end;
if(fighting)then
Result:= True;
until(Result)
end;
procedure MMouseItem(i: Integer);
var
Point: TPoint;
begin
Point := ItemCoords(i);
GameTab(4);
MMouse(Point.X, Point.Y, 0, 0);
end;
procedure GetFoodColors;
var
i, c: Integer;
begin
if(AutoGetFoodColors)Then
if(EatFood)then
begin
FoodColor := 0;
FoodColor2 := 0;
C := 0;
GotFoodColors := False;
repeat
for i :=1 to 28 do
begin
MMouseItem(i)
wait(350 + random(150))
If(IsUpText('Eat'))Then
begin
GetMousePos(x, y)
If(GetColor(x, y) <> 65535)and(GetColor(x, y) <> 0)and(IsUpText('Eat'))then
begin
If(FoodColor = 0)Then
begin
FoodColor := GetColor(x, y)
end else
begin
If(GetColor(x, y) <> FoodColor)Then
FoodColor2 := GetColor(x, y)
end;
end;
end;
end;
c :=c + 1;
until(not(FoodColor = 0))and(not(FoodColor2 = 0))or(c >=5)
if(not(FoodColor = 0))and(not(FoodColor2 = 0))then
GotFoodColors := True;
end;
end;
procedure Eat;
var
NoFood, Eaten: Boolean;
begin
GameTab(2)
If(GetHp < MinHp)Then
begin
NoFood := False;
Eaten := False;
repeat
GameTab(4)
If(not(FindColor(x, y, FoodColor, 560, 210, 740, 460)))and(not(FindColor(x, y, FoodColor2, 560, 210, 740, 460)))Then
begin
NoFood := True
Logout;
Writeln('Out of Food')
TerminateScript;
end else
begin
If(FindColor(x, y, FoodColor, 560, 210, 740, 460))Or(FindColor(x, y, FoodColor3, 560, 210, 740, 460))Then
begin
MMouse(x + 3, y, 2, 2)
Wait(300 + Random(200))
If(IsUpText('Eat'))then
begin
GetMousePos(x, y)
Mouse(x, y, 2, 2, True)
wait(3000 + random(500));
Ate := Ate + 1;
GameTab(2)
end;
end;
end;
if(GetHp > MinHp)then
Eaten := True;
until(Eaten)or(NoFood)
end;
end;
procedure CheckTimeOut;
begin
ET := (GetSystemTime - RT) / 1000;
if(ET > MaxFightTime)then
begin
RunAway := True;
end;
if(EatFood)then
begin
Eat;
end;
end;
procedure Attack;
begin
if(FindColorSpiral(x, y, 65280, 240, 125, 270, 180))then
begin
Status('Fighting')
RT := GetSystemTime;
RunAway := False;
repeat
CheckTimeOut;
FindRandoms;
until(not(FindColorSpiral(x, y, 65280, 240, 125, 270, 180)))or(RunAway)
if(RunAway)then
begin
RunWhere(RunDirection, RFar, True)
FindRandoms;
Eat;
end;
end;
GameTab(4)
Killed := Killed + 1;
if(collectBones)then
begin
if(TakeBone)then
BuryBones;
end;
end;
begin
LoadLibrary('Ultimate Fighter')
GotFoodColors := True;
SST := GetSystemTime;
SetTimeOut(ReportTime * 60000, 'ProgressReport')
SetFightMode(FightMode)
if(not(AutoGetFoodColors))Then
begin
FoodColor := FoodColor3;
FoodColor2 := FoodColor4;
end;
GetFoodColors;
if(GotFoodColors)then
repeat
if(FindMonster(MonsterColor, MonsterColor2, monsterColor3, Tol, Tol2))then
Attack;
until(false)
end.