SRL Archive - OSR Help

help please read this


tombow

2012-04-15 23:40:39

iv made a script works perfect iv put it on smart its powerminer and now it doesnt drop any ore at all but if i log on rsclient without smart n run it works?
heres the script

Gucci

2012-04-15 23:42:28

It would be easier if you posted with simba tags. Just makes the code more available. Are you using the built in DropAll; function?

tombow

2012-04-15 23:46:50

not using that didnt kno i folowed yohojo tut on yt il post code

tombow

2012-04-15 23:48:32

program copperminer;
{$DEFINE SMART}
{.include SRL\SRL.simba}
{.Include SRL\SRL\Misc\Debug.simba}
//{$i SRL\SRL\Misc\paintsmart.simba}


Const

SRLStats_Username = ''; // Your SRL Stats Username
SRLStats_Password = ''; // Your SRL Stats Password
NumbOfPlayers= 1; //How many players are you using
StartPlayer= 0; //Player to start auoting with! (0 means first char)
LoadsTotal= 999999; //How Many Total Lods To Do Per Character!
Version= '1.0'; //NO TOUCHY! program new;


{*******************************************************************************
procedure DeclarePlayers;
By: SRL
Description: SRL's Player Setup
*******************************************************************************}
procedure DeclarePlayers;
var i:integer;
begin
NumberOfPlayers(NumbOfPlayers);
CurrentPlayer := StartPlayer;
for i := 0 to NumbOfPlayers-1 do
Players[i].BoxRewards := ['mote', 'ostume', 'XP', 'Gem', 'ithril', 'oal', 'une', 'oins'];

with Players[0] do
begin
Name := ''; //Player username.
Pass := ''; //Player password.
Active := True;
Integers[1] := 4; //1=BrightCopper,2=DarkCopper,3=Tin,4=Iron.
Integers[2] := 4; //Seconds to try mining rock before clicking another.
end;

end;


{*******************************************************************************
Procedure StatsGuise(wat:String);
By: YoHoJo
Description: Combination of Status & Diguise
*******************************************************************************}
Procedure StatsGuise(wat:String);
Begin
Status(wat);
Disguise(wat);
End;


{*******************************************************************************
Function CheckAndClick(X,Y:Integer):Boolean;
By: YoHoJo
Description: Moves mouse to x,y, checks for uptext, and clikcs if found
*******************************************************************************}
Function CheckAndClick(UpText:String; X,Y:Integer; RClick:String):Boolean;
Begin
MMouse(x, y, 5, 5);
If WaitUptext(UpText, 5000) Then
Begin
Result:=True;
GetMousePos(x, y);

Case RClick Of

'R':
Begin
Mouse(x, y, 0, 0, False);
WaitOption('ine', 2000);
FFlag(0);
End;

'L':
Begin
Mouse(x, y, 0, 0,True);
Wait(100+Random(50));
FFlag(0);
End;

End;
End;

End;


Procedure Antiban;
Begin
Case Random(2000) Of

0:
Begin
//PaintReport;
HoverSkill('Mining', False);
//PaintReport;
GameTab(Tab_Inv);
//PaintReport;
End;
1:
Begin
//PaintReport;
PickUpMouse;
SleepAndMoveMouse(3000 + Random(500));
//PaintReport;
PickUpMouse;
End;
2: ExamineInv;
3:
Begin
//PaintReport;
RandomAngle(SRL_ANGLE_HIGH);
//PaintReport;
SetAngle(SRL_ANGLE_HIGH);
//PaintReport;
End;
4:
Begin
//PaintReport;
GameTab(Tab_Stats);
//PaintReport;
Wait(3000 + Random(500));
//PaintReport;
GameTab(Tab_Inv);
End;
5:
Begin
//PaintReport;
HoverSkill('random', False);
//PaintReport;
GameTab(Tab_Inv);
End;

End;
End;

Procedure Failsafe (reason:string);
begin
players[currentplayer].Loc:=reason;
logout;
stats_commit;
terminatescript;
end;



Function mineore:boolean;
var
x, y, Plusone, treecounter: integer;
begin
FindNormalRandoms;
plusone:= Invcount + 1;
If FindObjcustom(x, y, ['Mine', 'copper', 'e c'], [4687337, 4291285, 4943530], 7) Then
begin
StatsGuise('hooray we found the bastard');
getmousepos(x, y);

case random(1) of
0: mouse (x, y, 5, 5, true);
1: begin
mouse (x, y, 5, 5, false);
WaitOption ('mine', 1000);
end;
end;

flag;
marktime(treecounter);

Repeat
FindNormalRandoms;
statsGuise('Antiban and waiting');
Antiban;
wait(100);
if invcount=plusone then
writeln('we got one');
until (invcount=plusone) or (timefrommark(treecounter) > 9000)

End;
end;

Procedure dropore;
var
x, y, oreDTM, I:integer;
Slotbox:Tbox;
orePattern:TintegerArray;



begin
oreDTM := DTMFromString('mbQAAAHicY2VgYEhlZmCIAuIUIC4A4iwgVmdkYFAGYhMg1gViOSDekm7O4GWtyZASYAHUxcRwrNCGAR38B2JGLBgMABwkCEU=');
orePattern:=[1,5,9,13,17,21,25,2,6,10,14,18,22,26,3,7,11,15,19,23,27,4,8,12,16,20,24,28];
for I:=0 to 27 do
begin
slotbox:=invbox(orePattern[I]);
If FindDTM(oreDTM,x,y,slotbox.x1,slotbox.y1, slotbox.x2, slotbox.y2) Then
begin
MouseItem(orePattern[I],Mouse_Right);
chooseoption('op');
end;
end;

end;

begin
Smart_Server := 54;
Smart_Members := true;
Smart_Signed := false;
Smart_SuperDetail := false;
SetupSRL;
DeclarePlayers;
repeat
mineore;
if InvFull Then
dropore;
Until(false);
End.[simba]

tehq

2012-04-15 23:49:55

the closing tag should be . I'd try using DropAll; like Gucci mentioned.

tombow

2012-04-15 23:51:27

how would i change it to dropall?any ideas sorry im really new

tehq

2012-04-15 23:54:14

From: tombow
how would i change it to dropall?any ideas sorry im really new


Here's what DropAll; does. You just call it as DropAll; in your script :)
procedure DropAll;
var i: integer;
begin
for i:= 0 to 2 do
begin
DropPattern(Random(2) + 1);
if InvCount = 0 then
break;
end;
end;

tombow

2012-04-16 00:05:04

done that i get this error?

[Error] (184:11): Duplicate identifier 'DROPALL' at line 183
Compiling failed.

tehq

2012-04-16 00:07:28

From: tombow
done that i get this error?

[Error] (184:11): Duplicate identifier 'DROPALL' at line 183
Compiling failed.


Could you show how you added it?

Gucci

2012-04-16 00:08:40

You must have called the procedure dropall and then called dropall;

tombow

2012-04-16 00:12:15

program copperminer;
{$DEFINE SMART}
{.include SRL\SRL.simba}
{.Include SRL\SRL\Misc\Debug.simba}
//{$i SRL\SRL\Misc\paintsmart.simba}


Const

SRLStats_Username = ''; // Your SRL Stats Username
SRLStats_Password = ''; // Your SRL Stats Password
NumbOfPlayers= 1; //How many players are you using
StartPlayer= 0; //Player to start auoting with! (0 means first char)
LoadsTotal= 999999; //How Many Total Lods To Do Per Character!
Version= '1.0'; //NO TOUCHY! program new;


{*******************************************************************************
procedure DeclarePlayers;
By: SRL
Description: SRL's Player Setup
*******************************************************************************}
procedure DeclarePlayers;
var i:integer;
begin
NumberOfPlayers(NumbOfPlayers);
CurrentPlayer := StartPlayer;
for i := 0 to NumbOfPlayers-1 do
Players[i].BoxRewards := ['mote', 'ostume', 'XP', 'Gem', 'ithril', 'oal', 'une', 'oins'];

with Players[0] do
begin
Name := ''; //Player username.
Pass := ''; //Player password.
Active := True;
Integers[1] := 4; //1=BrightCopper,2=DarkCopper,3=Tin,4=Iron.
Integers[2] := 4; //Seconds to try mining rock before clicking another.
end;

end;


{*******************************************************************************
Procedure StatsGuise(wat:String);
By: YoHoJo
Description: Combination of Status & Diguise
*******************************************************************************}
Procedure StatsGuise(wat:String);
Begin
Status(wat);
Disguise(wat);
End;


{*******************************************************************************
Function CheckAndClick(X,Y:Integer):Boolean;
By: YoHoJo
Description: Moves mouse to x,y, checks for uptext, and clikcs if found
*******************************************************************************}
Function CheckAndClick(UpText:String; X,Y:Integer; RClick:String):Boolean;
Begin
MMouse(x, y, 5, 5);
If WaitUptext(UpText, 5000) Then
Begin
Result:=True;
GetMousePos(x, y);

Case RClick Of

'R':
Begin
Mouse(x, y, 0, 0, False);
WaitOption('ine', 2000);
FFlag(0);
End;

'L':
Begin
Mouse(x, y, 0, 0,True);
Wait(100+Random(50));
FFlag(0);
End;

End;
End;

End;


Procedure Antiban;
Begin
Case Random(2000) Of

0:
Begin
//PaintReport;
HoverSkill('Mining', False);
//PaintReport;
GameTab(Tab_Inv);
//PaintReport;
End;
1:
Begin
//PaintReport;
PickUpMouse;
SleepAndMoveMouse(3000 + Random(500));
//PaintReport;
PickUpMouse;
End;
2: ExamineInv;
3:
Begin
//PaintReport;
RandomAngle(SRL_ANGLE_HIGH);
//PaintReport;
SetAngle(SRL_ANGLE_HIGH);
//PaintReport;
End;
4:
Begin
//PaintReport;
GameTab(Tab_Stats);
//PaintReport;
Wait(3000 + Random(500));
//PaintReport;
GameTab(Tab_Inv);
End;
5:
Begin
//PaintReport;
HoverSkill('random', False);
//PaintReport;
GameTab(Tab_Inv);
End;

End;
End;

Procedure Failsafe (reason:string);
begin
players[currentplayer].Loc:=reason;
logout;
stats_commit;
terminatescript;
end;



Function mineore:boolean;
var
x, y, Plusone, treecounter: integer;
begin
FindNormalRandoms;
plusone:= Invcount + 1;
If FindObjcustom(x, y, ['Mine', 'copper', 'e c'], [4687337, 4291285, 4943530], 7) Then
begin
StatsGuise('hooray we found the bastard');
getmousepos(x, y);

case random(1) of
0: mouse (x, y, 5, 5, true);
1: begin
mouse (x, y, 5, 5, false);
WaitOption ('mine', 1000);
end;
end;

flag;
marktime(treecounter);

Repeat
FindNormalRandoms;
statsGuise('Antiban and waiting');
Antiban;
wait(100);
if invcount=plusone then
writeln('we got one');
until (invcount=plusone) or (timefrommark(treecounter) > 9000)

End;
end;

procedure DropAll;
var i: integer;
begin
for i:= 0 to 2 do
begin
DropPattern(Random(2) + 1);
if InvCount = 0 then
mineore;
end;
end;

begin
Smart_Server := 54;
Smart_Members := true;
Smart_Signed := false;
Smart_SuperDetail := false;
SetupSRL;
DeclarePlayers;
repeat
mineore;
if InvFull Then
DropAll;
Until(false);
End.

tehq

2012-04-16 00:23:24

From: tombow
program copperminer;
{$DEFINE SMART}
{.include SRL\SRL.simba}
{.Include SRL\SRL\Misc\Debug.simba}
//{$i SRL\SRL\Misc\paintsmart.simba}


Const

SRLStats_Username = ''; // Your SRL Stats Username
SRLStats_Password = ''; // Your SRL Stats Password
NumbOfPlayers= 1; //How many players are you using
StartPlayer= 0; //Player to start auoting with! (0 means first char)
LoadsTotal= 999999; //How Many Total Lods To Do Per Character!
Version= '1.0'; //NO TOUCHY! program new;


{*******************************************************************************
procedure DeclarePlayers;
By: SRL
Description: SRL's Player Setup
*******************************************************************************}
procedure DeclarePlayers;
var i:integer;
begin
NumberOfPlayers(NumbOfPlayers);
CurrentPlayer := StartPlayer;
for i := 0 to NumbOfPlayers-1 do
Players[i].BoxRewards := ['mote', 'ostume', 'XP', 'Gem', 'ithril', 'oal', 'une', 'oins'];

with Players[0] do
begin
Name := ''; //Player username.
Pass := ''; //Player password.
Active := True;
Integers[1] := 4; //1=BrightCopper,2=DarkCopper,3=Tin,4=Iron.
Integers[2] := 4; //Seconds to try mining rock before clicking another.
end;

end;


{*******************************************************************************
Procedure StatsGuise(wat:String);
By: YoHoJo
Description: Combination of Status & Diguise
*******************************************************************************}
Procedure StatsGuise(wat:String);
Begin
Status(wat);
Disguise(wat);
End;


{*******************************************************************************
Function CheckAndClick(X,Y:Integer):Boolean;
By: YoHoJo
Description: Moves mouse to x,y, checks for uptext, and clikcs if found
*******************************************************************************}
Function CheckAndClick(UpText:String; X,Y:Integer; RClick:String):Boolean;
Begin
MMouse(x, y, 5, 5);
If WaitUptext(UpText, 5000) Then
Begin
Result:=True;
GetMousePos(x, y);

Case RClick Of

'R':
Begin
Mouse(x, y, 0, 0, False);
WaitOption('ine', 2000);
FFlag(0);
End;

'L':
Begin
Mouse(x, y, 0, 0,True);
Wait(100+Random(50));
FFlag(0);
End;

End;
End;

End;


Procedure Antiban;
Begin
Case Random(2000) Of

0:
Begin
//PaintReport;
HoverSkill('Mining', False);
//PaintReport;
GameTab(Tab_Inv);
//PaintReport;
End;
1:
Begin
//PaintReport;
PickUpMouse;
SleepAndMoveMouse(3000 + Random(500));
//PaintReport;
PickUpMouse;
End;
2: ExamineInv;
3:
Begin
//PaintReport;
RandomAngle(SRL_ANGLE_HIGH);
//PaintReport;
SetAngle(SRL_ANGLE_HIGH);
//PaintReport;
End;
4:
Begin
//PaintReport;
GameTab(Tab_Stats);
//PaintReport;
Wait(3000 + Random(500));
//PaintReport;
GameTab(Tab_Inv);
End;
5:
Begin
//PaintReport;
HoverSkill('random', False);
//PaintReport;
GameTab(Tab_Inv);
End;

End;
End;

Procedure Failsafe (reason:string);
begin
players[currentplayer].Loc:=reason;
logout;
stats_commit;
terminatescript;
end;



Function mineore:boolean;
var
x, y, Plusone, treecounter: integer;
begin
FindNormalRandoms;
plusone:= Invcount + 1;
If FindObjcustom(x, y, ['Mine', 'copper', 'e c'], [4687337, 4291285, 4943530], 7) Then
begin
StatsGuise('hooray we found the bastard');
getmousepos(x, y);

case random(1) of
0: mouse (x, y, 5, 5, true);
1: begin
mouse (x, y, 5, 5, false);
WaitOption ('mine', 1000);
end;
end;

flag;
marktime(treecounter);

Repeat
FindNormalRandoms;
statsGuise('Antiban and waiting');
Antiban;
wait(100);
if invcount=plusone then
writeln('we got one');
until (invcount=plusone) or (timefrommark(treecounter) > 9000)

End;
end;

procedure DropAll;
var i: integer;
begin
for i:= 0 to 2 do
begin
DropPattern(Random(2) + 1);
if InvCount = 0 then
mineore;
end;
end;

begin
Smart_Server := 54;
Smart_Members := true;
Smart_Signed := false;
Smart_SuperDetail := false;
SetupSRL;
DeclarePlayers;
repeat
mineore;
if InvFull Then
DropAll;
Until(false);
End.


Since DropAll is already in the include you don't need that procedure :) All you'd need is something like this
Procedure GoodbyeOres;
begin
repeat
DropAll;
until (invcount = 0);
end;

tombow

2012-04-16 02:04:04

thanks :) do you guys kno how i can add a progress report to it ?

tombow

2012-04-16 03:42:20

also,one problem with script it just keeps right clicking when i get a strange rock can anyone help to stop that need a function
i thought

if findobjcustom('trangerock')
mouseclick (x, y, 0)
'destroy

Gucci

2012-04-17 00:03:06

Use a function that finds the chat message for it and results in true or false then just make a procedure that starts when the result is true. So like this:

Function Rock: Boolean;
Begin
If FindBlackChatMessage('whatever comes up') then
Result := True
Else Result := False
End;

Then the procedure should be like:

Procedure DestroyRock;
Begin
If (Rock = True) then
Begin
//Find function here
// Uptext Check
//destroying rock part
End;
End;

Abu

2012-04-18 01:29:09

From: tombow
thanks :) do you guys kno how i can add a progress report to it ?


Erm *cough* check my sig *cough*