SRL Archive - First Scripts

[07SCAPE] Lumbridge Flax Spinner - UNCOMPLETED


SmellyPenguin

2013-03-08 23:54:25

Been at this for like 3-4 hours and so far, I've got:

program new;
//{$DEFINE SMART8}
{$I SRL/SRL.simba}
{$I P07Include.simba}


Procedure P07_DeclarePlayer;
begin
P07_PlayerName:='';
P07_PlayerPass:='';
end;


Var
flax, bowstring, BowstringInInv, FlaxInInv, BankStairsDTM, BankStairsColor, X, Y: Integer;


Procedure DefineAll;
Begin

BankColor := 607067;

BankStairsColor := 603985;

BankStairsDTM := DTMFromString('mbQAAAHicY2VgYKhnYmCoAuJqIG4H4kYg7gCJA3EXEDcDcRMQB8sxMLx8+4EBBEA0iM/PgIkZsWAwAAAyRQvg');

bowstring := BitmapFromString(15, 16, 'meJxtkUsKwkAQRJMjBDxATiCCuP' +
'ETjCBMCC7ceQLX7tx7cktqrFR6ArWYz+ua6p66quol7br003mQ9pf' +
'x8f4sKvNz2N3G5wtyXiUgobbdUDhvmhX5sgRkP9yB6SHyXqIq8p6K' +
'vJeQxBqH2dZSMRjzexJGJSZYnYqc2RZY2SBtt8drwMK0Zbs+JcDh0' +
'fJrlBatBZ8gpWVf4SposrXB+lUQAyAwFuFK09agCKNBze2Qbvl3uj' +
'Rt/yewJfwF1pSd5Q==');

flax := BitmapFromString(18, 14, 'meJxtkr9KA0EQxtdyiinyBnkCEc' +
'I1Ro5jweRCKv9wCoI2FilSWFj4JD5GUPEPIQh2Fj6Fhe/ht/vtzW1' +
'O4WNZZuc38+3sinfinV6IXomM3Y4LkiOhsB8O97Du+zlVlPXo4FCb' +
'kAwKR66IyFyowY0O7hSRr89LgkU1I0uKXUBBHQLd6vPDycfm/Of7H' +
'glGBSctpdcCyVR0qdDr0+n6pdm8Ne/rM4B0SypYGqd7hatNI7UIIH' +
'oRhB5Xxz0KJjvKp4GY4NAQCCahgEQqXco7t+sshwPsIaQY/0tZTo5' +
'w+JwDaxK0yniXlFbNuC+qSVjLmtPgc9iT/YOUtb0yxC7mwcBUHDmt' +
'T8Mtnt8id7jVpU3IP0keZBGjeplxP8lPO8VfuhVpKcR/AadsjoU=');


End;

Procedure bitmapTest;
Begin


If (FindBitmapToleranceIn(bowstring, X, Y, 560, 210, 725, 460, 15)) Then //This will search the screen for the bitmap
Writeln('Found the bowstring bitmap') //Tells us we found it
Else
Writeln('Could not find bowstring'); //Tells us we didn't find it
FreeBitmap(bowstring);



If (FindBitmapToleranceIn(flax, X, Y, 560, 210, 725, 460, 15)) Then //This will search the screen for the bitmap
Writeln('Found the flax bitmap') //Tells us we found it
Else
Writeln('Could not find flax'); //Tells us we didn't find it
FreeBitmap(flax);
End;



Procedure WaitHumanClick;
begin
case random(600) of
1..450: Wait(RandomRange(0, 100));
451..570: Wait(RandomRange(0, 200));
571..590: Wait(RandomRange(0, 600));
591..600: Wait(RandomRange(400, 1100));
end;
end;

Procedure CloseBankBooth;
begin
Repeat

if (P07_BankScreen) then
Mouse(485, 40, 8, 8, Mouse_Left);

until(Not P07_BankScreen);

end;

Procedure DefineFlaxInInv;
begin
If (FindBitmapToleranceIn(flax, X, Y, 560, 210, 725, 460, 15)) Then
FlaxInInv := 1 //True
else
FlaxInInv := 0; //False
end;

Procedure DefineBowstringInInv;
begin
If (FindBitmapToleranceIn(bowstring, X, Y, 560, 210, 725, 460, 15)) Then
BowstringInInv := 1 //True
else
BowstringInInv := 0; //False
end;

procedure OpenBankBooth;
begin
Repeat
If P07_FindObj(x, y, 'ank booth', BankColor, 0) Then
begin
WaitHumanClick;
Mouse(RandomRange(X - 5, x + 5), RandomRange(Y - 5, Y + 5), random(3), random(3), false);
WaitHumanClick;
P07_ChooseOptionMulti(['se-q']);
Wait(2000 + random(1000));
end
else
begin
P07_MakeCameraAngleHigh;
P07_MakeCompassNorth;
//GoToBank;
end;
P07_FFlag;
until(P07_BankScreen)
end;




Procedure BankAndTake;
begin
P07_Deposit(1, 1, True);
WaitHumanClick;
FindBitmapToleranceIn(flax, X, Y, 75, 55, 465, 285, 15);
Writeln('Found the flax bitmap in the bank');
Mouse(X, Y, 0, 0, Mouse_Right);
P07_ChooseOptionMulti(['All Flax']);
end;

Procedure GoToTopStairs;
begin
P07_MakeCompassNorth;
RandomAngle(1);
ClickDTMRotatedIn(BankStairsDTM, MMX1,MMY1, MMX2,MMY2, Pi, 2*Pi, Pi/30, [], mouse_Left);
Wait(2500);
while (IsMoving) do
wait(100);
end;

Procedure ClimbDownTopStairs;
begin
If P07_FindObj(x, y, 'taircase', BankStairsColor, 0) Then
begin
WaitHumanClick;
Mouse(x, y, 5, 5, Mouse_Left);
end;
end;




begin
ClearDebug;
//SetupSRL;
SetupP07Include;
DefineAll;
ActivateClient;
P07_DeclarePlayer;
P07_LoginPlayer;

//repeat
if (not P07_LoggedIn) then
begin
P07_LogInPlayer;
P07_MakeCameraAngleHigh;
P07_MakeCompassNorth;
end;

if (P07_LoggedIn) then
begin
//DefineLocation
// if location = SecondFloor, then GoToFirstFloor, etc
//GoToBank
//(*
if Not P07_BankScreen then
OpenBankBooth
else
Writeln('Bank is open');

BankAndTake;
Writeln('Deposited all and withdrew flax');
WaitHumanClick;
CloseBankBooth;
Writeln('Closed bank');
WaitHumanClick; //*)
GoToTopStairs;
Writeln('Walked to bank stairs');
WaitHumanClick;
ClimbDownTopStairs;
WaitHumanClick;

end;
//until(isKeyDown(113)); //F2 Key
FreeBitmap(flax);
FreeBitmap(bowstring);
FreeDTM(BankStairsDTM);
end.

Some things are notes for me and some things were/are for testing that I've yet to take out.

Any suggestions? Any way I can improve and implement better walking/object/item detection methods?

Update:

program SmellyFlaxSpinner;
//{$DEFINE SMART8}
{$I SRL/SRL.simba}
{$I P07Include.simba}


Procedure P07_DeclarePlayer;
begin
P07_PlayerName:='';
P07_PlayerPass:='';
end;


Var
Flax, Bowstring, CraftingLevelUp, BankStairsDTM, BankStairsColor, SpinnerColor, MiddleStairsDTM, MiddleStairsColor, a, x, y: Integer;
FlaxInInv: String;


Procedure DefineAll;
Begin P07_ClickToContinue;

BankColor := 607067;

SpinnerColor := 874368;

BankStairsColor := 603985;

MiddleStairsColor := 606303;

BankStairsDTM := DTMFromString('mbQAAAHicY2VgYKhnYmCoAuJqIG4H4kYg7gCJA3EXEDcDcRMQB8sxMLx8+4EBBEA0iM/PgIkZsWAwAAAyRQvg');

MiddleStairsDTM := DTMFromString('mggAAAHicY2NgYGhgYmCoAeJqIO4A4kYoPxgoFwHEgUDsA2WHAHGwHAS/e/eO4Q0Sn58BO2bEgSEAAJvBCt0=');

CraftingLevelUp := BitmapFromString(64, 60, 'meJylWmFrXEUU3a/9C34plBJCKS' +
'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');

Flax := BitmapFromString(18, 14, 'meJxtkr9KA0EQxtdyiinyBnkCEc' +
'I1Ro5jweRCKv9wCoI2FilSWFj4JD5GUPEPIQh2Fj6Fhe/ht/vtzW1' +
'O4WNZZuc38+3sinfinV6IXomM3Y4LkiOhsB8O97Du+zlVlPXo4FCb' +
'kAwKR66IyFyowY0O7hSRr89LgkU1I0uKXUBBHQLd6vPDycfm/Of7H' +
'glGBSctpdcCyVR0qdDr0+n6pdm8Ne/rM4B0SypYGqd7hatNI7UIIH' +
'oRhB5Xxz0KJjvKp4GY4NAQCCahgEQqXco7t+sshwPsIaQY/0tZTo5' +
'w+JwDaxK0yniXlFbNuC+qSVjLmtPgc9iT/YOUtb0yxC7mwcBUHDmt' +
'T8Mtnt8id7jVpU3IP0keZBGjeplxP8lPO8VfuhVpKcR/AadsjoU=');

Bowstring := BitmapFromString(15, 16, 'meJxtkUsKwkAQRJMjBDxATiCCuP' +
'ETjCBMCC7ceQLX7tx7cktqrFR6ArWYz+ua6p66quol7br003mQ9pf' +
'x8f4sKvNz2N3G5wtyXiUgobbdUDhvmhX5sgRkP9yB6SHyXqIq8p6K' +
'vJeQxBqH2dZSMRjzexJGJSZYnYqc2RZY2SBtt8drwMK0Zbs+JcDh0' +
'fJrlBatBZ8gpWVf4SposrXB+lUQAyAwFuFK09agCKNBze2Qbvl3uj' +
'Rt/yewJfwF1pSd5Q==');

End;

Procedure WaitHumanClick;
begin
case random(600) of
1..450: Wait(RandomRange(0, 100));
451..570: Wait(RandomRange(0, 200));
571..590: Wait(RandomRange(0, 600));
591..600: Wait(RandomRange(400, 1100));
end;
end;

Procedure DefineFlaxInInv;
begin
If (FindBitmapToleranceIn(Flax, x, y, 560, 210, 725, 460, 20)) Then
FlaxInInv := 'Flax found in inventory'
else
FlaxInInv := 'Flax not found in inventory';
end;

procedure OpenBankBooth;
begin
Repeat
If P07_FindObj(x, y, 'ank booth', BankColor, 0) Then
begin
WaitHumanClick;
Mouse(RandomRange(x - 5, x + 5), RandomRange(y - 5, Y + 5), random(3), random(3), false);
WaitHumanClick;
P07_ChooseOptionMulti(['se-q']);
Wait(2000 + random(1000));
end;
until(P07_BankScreen)
end;

Procedure BankAndTake;
begin
P07_Deposit(1, 1, True);
WaitHumanClick;

Repeat
Wait(1000 + random(500));
FindBitmapToleranceIn(Flax, X, Y, 75, 55, 465, 285, 15);
Writeln('Found the flax in the bank');
Mouse(X, Y, 0, 0, Mouse_Right);
WaitHumanClick;
P07_ChooseOptionMulti(['All Flax']);
DefineFlaxInInv;
WaitHumanClick;
WaitHumanClick;
Until(FlaxInInv = 'Flax found in inventory');
end;

Procedure WalkToBankStairs;
begin
P07_MakeCompassNorth;
P07_MakeCameraAngleHigh;
ClickDTMRotatedIn(BankStairsDTM, MMX1,MMY1, MMX2,MMY2, Pi, 2*Pi, Pi/30, [], Mouse_Left);
Wait(2000 + random(500));
While (IsMoving) do
wait(100);
end;

Procedure ClimbDownBankStairs;
begin
If P07_FindObj(x, y, 'taircase', BankStairsColor, 2) Then
begin
WaitHumanClick;
Mouse(x, y, random(5), random(5), Mouse_Left);
WaitHumanClick;
WaitHumanClick;
WaitHumanClick;
end;
end;

Procedure WalkNearSpinner;
begin
WaitHumanClick;
Mouse(250 + random(5), 30 + random(5), random(20), random(13), Mouse_Right);
WaitHumanClick;
P07_ChooseOptionMulti(['alk here']);
WaitHumanClick;
end;

Procedure SpinFlax;
begin
Wait(2000 + random(1000));
If P07_FindObj(x, y, 'inning wheel', SpinnerColor, 2) Then
Wait(500 + random(250));
Mouse(x, y, 0, 0, Mouse_Right);
Wait(1000 + random(500));
P07_ChooseOptionMulti(['pin Spin']);
Wait(1000 + random(500));
Mouse(260, 115, random(15), random(15), Mouse_Right);
Wait(7500 + random(250));
P07_ChooseOptionMulti(['ake X']);
Wait(1000 + random(1000));
a := random(5000) + 30;
TypeSend(IntToStr(a));
Writeln('Starting to spin flax into bowstring');

Repeat
If FindBitmapToleranceIn(CraftingLevelUp, X, Y, 50, 350, 200, 425, 15) Then
P07_ClickToContinue;
DefineFlaxInInv;
Wait(2000 + random(500));
Writeln('Still spinning');
Until(FlaxInInv = 'Flax not found in inventory');

Writeln('Done spinning flax into bowstring');

end;

Procedure GoToMiddleStairs;
begin
Wait(2000 + random(500));
ClickDTMRotatedIn(MiddleStairsDTM, MMX1,MMY1, MMX2,MMY2, Pi, 2*Pi, Pi/30, [], Mouse_Left);
Wait(4000 + random(500));
While (IsMoving) do
wait(100);
end;

Procedure ClimbUpMiddleStairs;
begin
Wait(1000 + random(500));
If P07_FindObj(x, y, 'taircase', MiddleStairsColor, 2) Then
begin
WaitHumanClick;
WaitHumanClick;
Mouse(x, y, random(5), random(5), Mouse_Right);
WaitHumanClick;
P07_ChooseOptionMulti(['imb-up ']);
end;
end;

Procedure WalkToBank;
begin
Wait(1500 + random(1000));
Mouse(260, 10, random(5), random(5), Mouse_Left);
Wait(1000 + random(1000));
Mouse(335, 90, random(5), random(5), Mouse_Left);
WaitHumanClick;
end;

begin
ClearDebug;
//SetupSRL;
SetupP07Include;
P07_DeclarePlayer;
DefineAll;
ActivateClient;
P07_LoginPlayer;
AddOnTerminate('FreeDTMss');

Repeat

if (not P07_LoggedIn) then
begin
P07_LogInPlayer;
P07_MakeCameraAngleHigh;
P07_MakeCompassNorth;
end;


if (P07_LoggedIn) then
begin
P07_MakeCameraAngleHigh;
P07_MakeCompassNorth;

if Not P07_BankScreen then
OpenBankBooth
else
Writeln('Bank is open');

BankAndTake;
Writeln('Deposited all and withdrew flax');
WaitHumanClick;
WalkToBankStairs;
Writeln('Walked to bank stairs');
WaitHumanClick;
ClimbDownBankStairs;
Writeln('Climbed down bank stairs');
Wait(1500 + random(1000));
WalkNearSpinner;
Writeln('Walked near the spinner');
WaitHumanClick;
SpinFlax;
WaitHumanClick;
GoToMiddleStairs;
Writeln('Walked to middle stairs');
WaitHumanClick;
ClimbUpMiddleStairs;
Writeln('Climbed up middle stairs');
WaitHumanClick;
WalkToBank;
Writeln('Arrived at bank');
WaitHumanClick;
end;

Until(Not P07_LoggedIn);

FreeBitmap(Flax);
FreeBitmap(Bowstring);
TerminateScript;
end.


Credits to ineedbot for WaitHumanClick and OpenBankBooth (slightly changed).

killyoulol

2013-03-10 17:42:03

Haven't looked at the code but I'll test it in a bit

Zorgatone

2013-03-12 23:40:39

Please complete this! I need it :D

zackthewack

2013-03-13 15:08:44

May I ask how you are getting the color ID's and the DTM to work? I cannot seem to get the DTM manager to get past saying that I am not logged in, but I definitely am… lmao.

SmellyPenguin

2013-03-15 01:31:53

Sorry but I haven't been working on it lately. Too busy with school and sports.

@zack Feel free to look at my code and copy snippets. If you still have questions, please ask :).

Brid Mayhem

2013-03-15 03:56:59

Just finished mine and then simba got an error and all of it got deleted -.-

Then I saw this thread :D



Haven't tried it, but looks pretty promising. You should use DTM's instead of Bitmaps, they'll take a lot less memory.

SmellyPenguin

2013-03-15 17:54:11

Thanks for the tip :)

Haven't tried it, but looks pretty promising. You should use DTM's instead of Bitmaps, they'll take a lot less memory.

Neodymium

2013-03-15 18:16:17

From: Brid Mayhem
Just finished mine and then simba got an error and all of it got deleted -.-

Then I saw this thread :D



Haven't tried it, but looks pretty promising. You should use DTM's instead of Bitmaps, they'll take a lot less memory.

That what the Recovery extension is for… I at least thought it was enabled by default. I have it on at least.

ninemarrow

2013-03-15 23:30:48

get it done man

Brid Mayhem

2013-03-16 03:57:07

Only works to a certain point. I have the outline of the scripts, but nothing besides the first things I did.

Wopey

2013-03-17 00:26:03

Hey brother, Glad to see more people are doing request scripts. :P

I was working on the same thing, Flax Spinner at lumby, My first script…
here it is, I hope you don't mind I tried using one of your procedures, I will give you credit. But I'm Not releasing the script to public view. This one here is broken, Any tips?

program FlaxSpinner; //By Wopey, PLEASE DO NOT USE OR COPY! THIS SCRIPT IS BROKEN. 
{$DEFINE SMART8}
{$I SRL/SRL.Simba}
{$I P07Include.Simba}
{$I SRL/srl/misc/SmartGraphics.simba}
Var
a, x, y, HighStairsMM, HighStairsMS: Integer;
CheckDoor, LowStairsMM, SpinnerColor: Integer;
bankcol, LowStairsColor: Integer;

Procedure P07_DeclarePlayer;
begin
P07_PlayerName:='';
P07_PlayerPass:='';
end;

procedure LoadDTMs;
begin
HighStairsMM := DTMFromString('mggAAAHicY2OAABYgZgNiDiibEYiZoHLMUDlOIGYFYj8Z7JiRgTQMAQDAVgK/');
HighStairsMS := DTMFromString('maQEAAHiczc1dCoAgEATg7QcpK6KCoqP0tIk+CHX/8zQbWwhdIOFD2Rl1IKIaVpiVrB5aMNDBCJOSrNEsh1LvVGCh0NmSIO0a/c8mKs2iZwq80RkDRYfd7+Qdv/PHEfnuyFly6QnpZXjnDz7rApFHDuY=');
CheckDoor := DTMFromString('mJgIAAHicvc7LDsFQEAbgv+5h4RZNiGrR9gGIWhCXSEhYuCUSC6wsEHsRK/EGXtjfGkk3tp3ky5wzOTNzSgAylKMSGWSSJWzf2VWjirx1+1TKU4oS+EaYQhSVe9xXi/m49SSlZUaRNKrKP37cfbovl2VuVvqLMk+ReqOj4fVY4n3f4jqp47yzcaHnoYH5ysR8qqKq5rHe2DjuTGYL7aHh5cVM9fKo14PDml7IodXXvT5nYGB/3OB2GqPZrSDCXUFQAvI/PsQFGQg=');
LowStairsMM := DTMFromString('mggAAAHicY2OAABYgZgNiDiibEYiZoHLMUDlOIGYFYj8Z7JiRgTQMAQDAVgK/');
SpinnerColor := 940676
LowStairsColor := 606560
end;

procedure FreeDTMs2;
begin
FreeDTM(HighStairsMM);
FreeDTM(HighStairsMS);
FreeDTM(CheckDoor);
FreeDTM(LowStairsMM);

end;

procedure bank; //Taken From [url]http://villavu.com/forum/showthread.php?t=97148[/url] by "kiwiownage"
begin
P07_MakeCameraAngleHigh;
P07_MakeCompassNorth;
bankcol:= 6194321
Writeln('Banking');
repeat
if P07_FindObj(x, y, 'Use', bankcol, 5) then
begin
ClickMouse2(mouse_right);
wait(randomrange(100,200));
P07_ChooseOptionMulti(['se-q']);
wait(randomrange(600,1000));
end;
if(P07_BankScreen) then
P07_Deposit(2,28,true);
wait(randomrange(400,700));
until(p07_InvCount <2);
MMouse(422,74,5,5);
wait(randomrange(15,50));
ClickMouse2(mouse_right);
wait(randomrange(400,600));
P07_chooseOptionMulti(['Withdraw All']);
wait(randomrange(500,800));
Mmouse(484,39,5,5);
wait(randomrange(15,100));
ClickMouse2(Mouse_Left);
end;

procedure MoveToHighStairs;
begin
writeln('Done Banking, Looking For High Stairs');
if findDTM(HighStairsMM, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
writeln('Found Found High Stairs');
Mmouse(x, y, 3, 3);
Mouse(x, y, 0, 0, True);
P07_MakeCompassEast;
end;
end;

procedure MoveToWheel;
begin
Mmouse(312, 131, 1, 1);
ClickMouse(312, 131, 1);
end;

procedure CheckDoor2;
begin
if findDTM(CheckDoor, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
writeln('Door Closed, Opening');
Mmouse(x, y, 3, 3);
Mouse(x, y, 0, 0, True);

end;
end;

Procedure SpinFlax; //Taken From SmellyPenguin @ [url]http://villavu.com/forum/showthread.php?t=98241&highlight=flax[/url]
begin
Wait(2000 + random(1000));
If P07_FindObj(x, y, 'inning wheel', SpinnerColor, 2) Then
Wait(500 + random(250));
Mouse(x, y, 0, 0, Mouse_Right);
Wait(1000 + random(500));
P07_ChooseOptionMulti(['pin Spin']);
Wait(1000 + random(500));
Mouse(260, 115, random(15), random(15), Mouse_Right);
Wait(7500 + random(250));
P07_ChooseOptionMulti(['ake X']);
Wait(1000 + random(1000));
a := random(5000) + 30;
TypeSend(IntToStr(a));
Writeln('Starting to spin flax into bowstring');
end;

procedure MoveToLowStairsMM;
begin
writeln('Done Flaxing');
writeln('Trying To find To Low Stairs On MM');
if findDTM(LowStairsMM, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
Mmouse(x, y, 3, 3);
Mouse(x, y, 0, 0, True);
writeln('Found Stairs');
end;
end;

procedure MoveToLowStairsMS;
begin
Wait(1000 + random(500));
If P07_FindObj(x, y, 'taircase', LowStairsColor, 2) Then
begin MoveToHighStairs;

Mouse(x, y, random(5), random(5), Mouse_Right);

P07_ChooseOptionMulti(['imb-up ']);
end;
end;

procedure Movetobank;
begin
MoveMouse(434, 343);
ClickMouse(323, 232, 1);
end;
begin
SetupSrl;
Setupp07Include;
ActivateClient;
ClearDebug;
LoadDTMs;
Addonterminate('FreeDTMs2');
FreeDTMs2
repeat;
bank;
MoveToHighStairs;
wait(9000);
MoveToHighStairs;
wait(1000);
MoveToWheel;
wait(1000);
CheckDoor2;
SpinFlax;
wait(50000)
CheckDoor2;
wait(2000)
MoveToLowStairsMM;
wait(500)
MoveToLowStairsMS;
wait(300)
Movetobank;
Addonterminate('FreeDTMs2');
FreeDTMs2
until(false);
end.








fluffycluffy

2013-03-21 19:28:26

Compiling failed for me.

cherzing

2013-03-30 23:08:23

cant get it to work

i joey i

2013-04-03 18:25:50

i wish this worked..

ilikehacks

2013-04-09 11:32:46

Lol this would be great if it worked. I will look into seeing what I can do to fix it and any errors within it.