well i fixed them both, heres the powerminer
program RockSmasher;
{Made By R0B0T1 Be sure to set up variables and players below.
-you can add more than the specified players, if you know how.
-You can also use less. Might need to change colors....}
{.Include SRL/SRL.scar}
{.Include SRL/SRL/Skill/Mining.scar}
{.Include SRL/SRL/extended/xAntiBan.scar}
Const
TPlayers= 5;//How many? remember player 0 counts as 1
MaxTimeWait= 10;//Max time to wait to mine. Seconds
RunDirection= 'N';//Set depending on location
LoadsPerPlayer= 25;//Well....
Wield= False;//Yo pick wielded homey?
RockColor= 2832993;//*caugh* (current Iron)
RockColor2= 0;//
RockColor3= 0;//
RockTol= 10;//Rock tolerance
Rounds= 30;//Times declared players will be looped through
TimeToWait= 5;//Seconds. Not MS
Var
mined, missedore,looped, i, MaskColor:Integer;
DidRandomHappen{, Result}, UnKnown, Pmod{, Mime}:Boolean;
Info:String;
Procedure DeclarePlayers;
begin;
HowManyPlayers:= TPlayers;
NumberOfPlayers(TPlayers);
CurrentPlayer:=1;
Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].Active:=True;
Players[1].Name :='';
Players[1].Pass :='';
Players[1].Nick :='';
Players[1].Active:=True;
Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].Active:=True;
Players[3].Name :='';
Players[3].Pass :='';
Players[3].Nick :='';
Players[3].Active:=True;
Players[4].Name :='';
Players[4].Pass :='';
Players[4].Nick :='';
Players[4].Active:=True;
end;
Procedure Sig;
begin;
WriteLn('R0b0t1 made this');
end;
Procedure FreeBMPs;
begin;
Freebitmap(mined);
Freebitmap(missedore);
end;
Function FindFastRandoms:Boolean; //WT-Fakawi... I think. I edited
Var i:Integer;
begin;
For i := 1 to 12 Do
begin;
Case I of
1: If FindDead then
begin
UnKnown:= True;
Result:= True;
end;
2: If FindMod then
begin
Pmod := True;
Result:= True;
end;
3: If FindMime then
begin
UnKnown := True;
Result := True;
Players[CurrentPlayer].loc:= 'Mime';
end;
4: If FindMaze then
begin
Result := True;
UnKnown := True;
Players[CurrentPlayer].loc:= 'Maze';
end;
5: If FindQuiz then
begin;
Result := True;
SolveQuiz;
end;
6: If FindDemon then
Result := True;
7: If NoGameTab then
begin
UnKnown := True;
Players[CurrentPlayer].loc := 'No GameTab';
end;
8: If InBlack then
begin
Result:= True;
UnKnown := True;
Players[CurrentPlayer].loc := 'InBlack';
end;
9: If FindFrogCave Then
begin
SolveFrogSwamp;
end;
10: if FindScapeRune then
begin
Result := True;
UnKnown:= True;
Players[CurrentPlayer].loc:= 'ScapeRune';
end;
11: if FindTalk then // Call it twice
Result := True;
end;
Wait(1);
end;
If (Result = True) Then
DidRandomHappen := True;
If (UnKnown = True) Then
begin;
Info:= Players[CurrentPlayer].loc;
WriteLn('Lost Player. Reason: ' + Info);
Logout;
NextPlayer(false);
end;
If (Pmod = true) Then
begin;
Logout;
Wait(60000);
NextPlayer(true);
end;
end;
Procedure AntiRandoms;
begin;
FindPick;
FindTalk;
FindNormalRandoms;
FindFastRandoms;
FindLamp('mining');
If (FindFight = True) Then
begin;
RunAwayDirection(RunDirection);
Wait(10000+random(2000));
RunBack;
end;
If (ClickToContinue = True) Then
begin;
TalkToRand;
end;
If (FindNewBox = True) Then
begin;
OpenBox;
Wait(3000);
SolveBox;
end;
If FindCerter Then
begin
CerterLoadBmps;
Wait(500);
SolveCerter;
Wait(500);
end;
end;
Procedure AntiBans; //Yakman, edit by me.
begin;
case Random(10) of
0: IdleTime(1000 + Random(200), 500, 1.0);
1: IdleTime(1000 + Random(350), 1075, 1.0);
2: SleepAndMoveMouse(2500 + Random(2500));
3: SleepAndMoveMouse(2500 + Random(1500));
4: SleepAndmoveMouse(500 + Random(500));
5: IdleTime(100 + Random(250), 750, 0.5);
6: RotateEvery(0+Random(5));
7: BoredEvery(0+Random(5));
8: LeaveScreenEvery(0+Random(5));
9: HoverSkill('mining', False);
end;
end;
Procedure LookGas;
begin;
If FindGas(x, y) Then
begin;
RunAwayDirection(RunDirection);
Wait(10000 + Random(2000));
RunBack;
end;
end;
Procedure RotateDirection(Direction:String);//Anyone Can use this, just credit me
begin;
WriteLn('Rotating screen.');
If (Direction = 'right') Then
begin
WriteLn('Condition selected is: RIGHT');
KeyDown(37);
Wait(1000+Random(500));
KeyUp(37);
end;
If (Direction = 'left') Then
begin;
WriteLn('Condition selected is: LEFT');
KeyDown(39);
Wait(1000+Random(500));
KeyUp(39);
end;
If (Direction = 'random') Then
begin;
WriteLn('Condition selected is: RANDOM')
case Random(2) of
0: begin;
KeyDown(37);
Wait(1000+Random(500));
KeyUp(37);
end;
1: begin;
KeyDown(39);
Wait(1000+Random(500));
KeyUp(39);
end;
end;
end;
end;
Procedure Mine;
Var
v:Integer;
begin;
repeat;
LookGas;
If not (LoggedIn) Then
NextPlayer(true);
If (FindColorTolerance(x, y, RockColor, 0, 0, 500, 300, RockTol)) Or
(FindColorTolerance(x, y, RockColor2, 0, 0, 500, 300, RockTol)) Or
(FindColorTolerance(x, y, RockColor3, 0, 0, 500, 300, RockTol)) Then
MMouse(x, y, 5, 1);
If (IsUpTextMulti('ine', 'ock', 'Min')) Then
Mouse(x, y, 3, 3, True);
Wait(TimeToWait*1000 + Random(2000));
until (invfull);
end;
Procedure Drop;
begin;
If (Wield = True) Then
begin;
DropAll;
i:= i + 1;
end;
If (Wield = False) Then
begin;
DropTo(2, 28);
i:= i + 1;
end;
end;
Procedure ProgressReport;
begin;
ClearDebug;
WriteLn('______________________________________');
WriteLn('RockSmasher by r0b0t1 ');
WriteLn(' Progress Report ');
WriteLn(' Did '+InttoStr(i)+' Loads on ');
WriteLn(' '+Players[CurrentPlayer].Name);
WriteLn('Worked For: ' + ScriptTime2(2) + ' ');
WriteLn('Loops Worked: ' + InttoStr(Looped) );
WriteLn('Loops Left: '+InttoStr(Rounds-Looped) );
SRLRandomsReport;
end;
Procedure All;
begin;
Looped := Looped+1
i:= 0
SetUpSRL;
FindPickHeadColor;
FreeBMPs;
repeat;
Antibans;
Mine;
AntiRandoms;
Drop;
until(i = LoadsPerPlayer);
NextPlayer(True);
i:= 0;
ProgressReport;
end;
begin
Looped:=0
repeat
All;
until(looped = Rounds)
end.
see what i have changed? the main thing is that u need to close the " ( ) " and for every Begin; there needs to be and End; and for every Repeat; there needs to be an Until;
and for the autofighter
program KungfooFightin;
{Created for SRL mems app. You can't use this. Don't ask. }
{Be sure to set up all stuff. NO LEECHING - May be pay Script }
{Only allowed to use if I approve of testing - please don't leech }
{.Include SRL/SRL.scar}
{.Include SRL/SRL/Skill/Fighting.scar}
{.Include SRL/SRL/extended/xAntiBan.scar}
Const {PLAYER}
VerNum= '1.0'; //You shouldn't need to change.
Roundz= 10; //Total times to cycle players.
TPlayers= 4; //How many players?
BuryBones= False; //Recomended False
Kills= 50; //Kills per player please?
Eat= True; //Well?
HpToEat= 5; //HP to eat at.
HpToStp= 10; //Hp to eat to.
RunDir= 'N'; //You should change this dep on location
LampSkl= 'hitpoints'; //Self-explanitory?
AtkNPC= False; //Color-Finding Only? Not recomended
TimeKill= 15; //Time to kill NPC if above True. Sec.
Skill= 'Atk'; //Atk, Str, or Def.
CustomEat= False; //Use my custom eat procedure?
Foodlogout= False; //Logout when food gone?
Const {COLORS+GLOBAL STUFF}
FoodColor= 0; //Food color if your eating
FoodColor2= 0; //Only if two diff colors.
TheBoneColor= 0; //Put this in even if not burying.
MonsterName= 'Chicken'; //Name of monster to fight
MColor1= 3954534; //A color. These can be the same
MColor2= 8497344; //
MColor3= 462453; //
MColor4= 0; //Below is only needed if useing AtkNPC
MColor5= 0; //
MColor6= 0; //
EnemTol= 10; //Fill out below this line
FoodTol= 5; //
BoneTol= 5; //Set to 1 if fighting chikens
Var
DidRandomHappen{, Result}, UnKnown, Pmod{, Mime}:Boolean;
Info:String;
i, xx, yy, Rounds:Integer;
Procedure DeclarePlayers;
begin
HowManyPlayers :=TPlayers;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer:=0;
Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].String1 := 'Atk'; //Attack setting.
Players[0].Active:=True;
Players[1].Name :='';
Players[1].Pass :='';
Players[1].Nick :='';
Players[1].String1 := 'Str';
Players[1].Active:=True;
Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].String1 := 'Def';
Players[2].Active:=True;
Players[3].Name :='';
Players[3].Pass :='';
Players[3].Nick :='';
Players[3].String1 := 'Atk';
Players[3].Active:=True;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
end;
Procedure SetUpPlayer;
begin;
If not (LoggedIn) Then
begin;
LoginPlayer;
SetChat('On', 1);
SetChat('Off', 2);
SetChat('Off', 3);
SetRun(True);
HighestAngle;
PerfectNorth;
end;
end;
//-------------------------------------------------------------------//
//------------------------RANDOMS-BAN--------------------------------//
//-------------------------------------------------------------------//
Function FindFastRandoms:Boolean; //WT-Fakawi... I think. I edited
Var i:Integer;
begin;
For i := 1 to 12 Do
begin;
Case I of
1: If FindDead then
begin
UnKnown:= True;
Result:= True;
end;
2: If FindMod then
begin
Pmod := True;
Result:= True;
end;
3: If FindMime then
begin
UnKnown := True;
Result := True;
Players[CurrentPlayer].loc:= 'Mime';
end;
4: If FindMaze then
begin
Result := True;
UnKnown := True;
Players[CurrentPlayer].loc:= 'Maze';
end;
5: If FindQuiz then
begin;
Result := True;
SolveQuiz;
end;
6: If FindDemon then
Result := True;
7: If NoGameTab then
begin
UnKnown := True;
Players[CurrentPlayer].loc := 'No GameTab';
end;
8: If InBlack then
begin
Result:= True;
UnKnown := True;
Players[CurrentPlayer].loc := 'InBlack';
end;
9: If FindFrogCave Then
begin
SolveFrogSwamp;
Result:= True;
end;
10: if FindScapeRune then
begin
Result := True;
UnKnown:= True;
Players[CurrentPlayer].loc:= 'ScapeRune';
end;
11: if FindTalk then // Call it twice
Result := True;
end;
Wait(1);
end;
If (Result = True) Then
DidRandomHappen := True;
If (UnKnown = True) Then
begin;
Info:= Players[CurrentPlayer].loc;
WriteLn('Lost Player. Reason: ' + Info);
Logout;
NextPlayer(false);
end;
If (Pmod = true) Then
begin;
Logout;
Wait(60000);
NextPlayer(true);
end;
end;
Procedure AutoRespond;
begin;
If (InChat(Skill + ' lvls') or
InChat(Skill + ' lvls?') or
InChat(Skill + ' levels') or
InChat(Skill + ' levels?')) Then
begin;
TypeSend(IntToStr(GetSkillLevel('Attack')));
end;
end;
Procedure Heal;
begin;
If (CustomEat = True) Then
begin;
WriteLn('Checking health.');
If (Eat = True) Then
begin;
If (GetHp > HpToEat) Then
WriteLn('Health is ' + IntToStr(GetHp) + ', just fine');
If (GetHp <= HpToEat) Then
begin;
repeat;
WriteLn('Hp is too low. Eating');
If (GameTab(4)) Then
begin;
If (FindColorTolerance(x, y, FoodColor, MIX1, MIY1, MIX2, MIY2, FoodTol)or
FindColorTolerance(x, y, FoodColor2, MIX1, MIY1, MIX2, MIY2, FoodTol)) Then
begin;
MMouse(x, y, 2, 3);
If (IsUpText('Eat')) Then
begin;
MMouse(x, y, 2, 3);
Mouse(x, y, 2, 3, True);
end;
end;
end else;
begin;
GameTab(4);
end;
until(GetHp >= HpToStp);
end;
end;
end;
If (CustomEat = False) and (Eat = True) Then
begin;
repeat;
RealEatIfNeeded(FoodColor, HpToEat, False);
until(GetHp >= HpToStp);
end;
If (FoodLogout = True) Then
begin;
If not (FindColorTolerance(x, y, FoodColor, 560, 205, 735, 460, FoodTol)and
FindColorTolerance(x, y, FoodColor2, 560, 205, 735, 460, FoodTol)) Then
NextPlayer(False);
end;
end;
Procedure AntiRandoms;
begin;
FindTalk;
FindNormalRandoms;
FindFastRandoms;
FindLamp(Lampskl);
If (GetHp <= HpToEat) Then
begin;
RunAwayDirection(RunDir);
Heal;
RunBack;
end;
If (ClickToContinue = True) Then
begin;
TalkToRand;
end;
If (FindNewBox = True) Then
begin;
OpenBox;
Wait(3000);
SolveBox;
end;
If FindCerter Then
begin
CerterLoadBmps;
Wait(500);
SolveCerter;
Wait(500);
end;
If FindTalk Then
AutoRespond;
end;
Procedure SetMode;
begin;
If (Players[CurrentPlayer].String1 = 'Atk') Then
SetFightMode(1);
If (Players[CurrentPlayer].String1 = 'Str') Then
SetFightMode(2);
If (Players[CurrentPlayer].String1 = 'Def') Then
SetFightMode(3);
end;
Procedure AntiBans; //Yakman, edit by me.
begin;
case Random(10) of
0: IdleTime(1000 + Random(200), 500, 1.0);
1: IdleTime(1000 + Random(350), 1075, 1.0);
2: SleepAndMoveMouse(2500 + Random(2500));
3: SleepAndMoveMouse(2500 + Random(1500));
4: SleepAndmoveMouse(500 + Random(500));
5: IdleTime(100 + Random(250), 750, 0.5);
6: RotateEvery(0+Random(5));
7: BoredEvery(0+Random(5));
8: LeaveScreenEvery(0+Random(5));
9: HoverSkill('mining', False);
end;
end;
Procedure FightIt;
begin;
If (AtkNPC = False) Then
begin;
FindMonster(MColor1, MColor2, MColor3, EnemTol, MonsterName);
OutFight;
AntiRandoms;
end;
If (AtkNPC = True) Then
begin;
FightNPC(MColor1, MColor2, MColor3, MColor4, MColor5, MColor6, EnemTol, TimeKill);
OutFight;
AntiRandoms;
end;
AntiBans;
If (FindColorTolerance(x, y, TheBoneColor, 0, 0, 500, 800, BoneTol)) Then
begin;
Mouse(x, y, 2, 3, True);
end
else
WriteLn('BONE NOT FOUND');
end;
Procedure ProgressReport;
begin;
SRLRandomsReport;
end;
Procedure Main;
begin;
Rounds:= 0
SetUpSRL;
DeclarePlayers;
Repeat;
SetUpPlayer;
SetMode;
i:=0;
repeat;
AntiBans;
FightIt;
i:= i+1;
until(i = Kills);
NextPlayer(True);
Rounds:= Rounds+1
until(Rounds = Roundz);
end;
begin
Main;
end.
this one was a little harder to fix… but most of it is just spelling errors :p ;) really nice job on these tho :) keep workin on it :D