SRL Archive - First Scripts

Edgeville Bucket Filler And Clay Softner


trojan

2008-12-18 17:08:20

Edgeville Bucket Filler And Clay Softner

The Walking to the bank needs some serious help for the bucket filler but the clay softner is working quite well.


INFORMATION
This script gets your empty buckets from the bank in Edgeville and fills them. Then after filling them it withdraws clay and water from the bank and makes soft clay.
The reason for this is because clay in g.e. is around 90gp
and soft clay is around 180gp.
which is 90gp profit per clay.
and 90k profit per 1000 clay
but the good thing is that no skills are needed, so a level 3 could do this.

Known Bugs
o Very Poor Banking (need new DTM but when i make one it doesnt work)
o Doesnt Send SrlStats properly
o Poor Walking to well

INSTRUCTIONS

set your bank in that order (soft clay doesnt matter)

Start your character here. (important for the autocolor)

{.Script Info:
# ScriptName = Edgeville Bucket Filler
# Author = Trojan
# Description = Fills Buckets In Bank In Edgeville
# Version = 0.2
# Date = 17/12/2008
# Comments = First Script :P
/Script Info}
////////////////////////////////////////////////////////////////////////////////
// _______ ______ ______ _____ _ _____ ___ //
// |_ _| | O _| | _ | |_ _| /O\ | |\ \ | | //
// | | | |\ \ | |_|| __|| / _ \ | | \ \| | //
// |_| |_| \_\ |____| |__| /_/ \_\ |_| \___| Bucket Filler //
////////////////////////////////////////////////////////////////////////////////

//////////////////////////////////-INFORMATION-/////////////////////////////////
// This script will get your empty buckets from the bank and then fill them //
// with water. //
////////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////-SETUP-////////////////////////////////////
// 1.Load Runescape 32-bit low detail. //
// 2.Place your character in Edgeville bank with empty buckets in the first //
// slot, Full Buckets 2nd slot and then clay 3rd slot. //
// 3.Must start your character in the southern 2 bank slots. //
// 4.Drag the crosshair onto the client. //
// 5.Run the script. //
////////////////////////////////////////////////////////////////////////////////

////////////////////////////////-Later Versions-////////////////////////////////
// Better Walking //
// Multiplayer //
// More Functions
////////////////////////////////////////////////////////////////////////////////

Program EdgevilleBucketFiller;
{.Include SRL/SRL.Scar}

var
EBucketDTM, BankDTM :integer;
SClayDTM, ClayDTM :integer;
FBucketDTM :integer;
LoadsDoneB, LoadsDoneC :integer;
x, y :integer;
TimeM, TimeS :integer;
ERoadColor :integer;

Const
LoadsToDoB = 2; //How many Loads to do 28 buckets per load
WellColour = 2768714; //If doesnt work, change to new colour on well
LoadsToDoC = 5; //Loads of soft clay to make 14 per load
YourSRLID = ''; //PLEASE FILL THIS find at [url]http://www.stats.srl-forums.com/[/url]
YourSRLPassword = '';
version = '0.02'; //DONT TOUCH

Procedure DeclarePlayers;
Begin
HowManyPlayers:=1;
CurrentPlayer:=0;
NumberOfPlayers(HowManyPlayers);

Players[0].Name := 'username'; //your username
Players[0].Pass := 'password'; //your password
Players[0].Nick := 'olly'; //3-4 letters of username
Players[0].Active := True; //use this player?
Players[0].Strings[1] := ''; //bank pin?
end;

Procedure Signature;
begin
ClearDebug
WriteLn('Hello');
Wait(200)
WriteLn(' _______ ______ ______ _____ _ _____ ___ ');
Wait(200);
WriteLn(' |_ _| | O _| | _ | |_ _| /O\ | |\ \ | | ');
Wait(200);
WriteLn(' | | | |\ \ | |_|| __|| / _ \ | | \ \| | ');
Wait(200);
WriteLn(' |_| |_| \_\ |____| |__| /_/ \_\ |_| \___| ');
Wait(1000);
end;

procedure LoadDTM;
begin
EBucketDTM := DTMFromString('78DA6314626060906040015D85F60CFF81342' +
'310FF0702466920831F22C70C57C5C820005503E681CCE124A086' +
'0348881150C305241409A8910412F2F8D500001B900796');
BankDTM := DTMFromString('78DA630C66606088624001FFFFFF67F80FA41' +
'921ECFF8C31404638448E19AAE6E5D72F0CFC503520C0988A3007' +
'A79A04201142404D1C904824A0C61548C41050E305241208A8090' +
'512F1F8D50000588C21D6');
SClayDTM := DTMFromString('78DA632C65606050604001F9217C0CFF81342' +
'310FF0702C63220430C22C70C57C5C8C00F5503E61501092D026A' +
'3281842A0135B940428A809A3A20A142404D3D9090C4AF0600783' +
'F0A59');
ClayDTM := DTMFromString('78DA635CC0C0C0A0CC80021675C532FC07D28' +
'C40FC1F08186720D430C3553132F043D58079B381843C01358B80' +
'841A0135CB80842C11E6481150B394B09B01CEE30C4C');
FBucketDTM := DTMFromString('78DA636C666060F06440011D050E0CFF81342' +
'310FF0702C62A841A66B82A46067EA81A30AF1748381150D30924' +
'8209A8A901124104D4F400096FFC6A00FD6B0B7E');
end;

procedure getroadcolor;
begin
ERoadColor := GetColor(595, 74);
writeln('MMap Road Color = ' + IntToStr(ERoadColor) + '');
end;

procedure Setup;
begin
SetUpSrl;
ScriptID := '1120';
SRLID := YourSRLID;
SRLPassword := YourSRLPassword;
if (SRLID = '') or (SRLPassword = '') then
begin
SRLID := '2391'
SRLPassword := 'default';
end;
ActivateClient;
declareplayers;
wait(1000);
makecompass('N');
if not InvEmpty then
begin
OpenBankFast('eb');
DepositAll;
end;
end;

procedure antirandom;
begin
findnormalrandoms;
if (FindFight) then
begin
runaway('S', true, 1, 5000+random(1000));
end;
end;

procedure antiban;
begin
if not loggedin then exit;
case Random(20) of
0: RandomRClick;
1: BoredHuman;
2: HoverSkill('random', False);
3: DoEmote(1 + Random(10));
4: PickUpMouse;
end;
end;

procedure CloseBS;
begin
if bankscreen then
begin
CloseBank;
antirandom;
end;
end;

procedure WithdrawEBuckets;
begin
if not bankscreen then
OpenBankFast('eb');
if PinScreen then
InPin(Players[CurrentPlayer].Strings[1]);
if bankscreen then
begin
if(FindDTM(EBucketDTM, x, y, 32, 88, 75, 128))then
Withdraw(1,1,28);
if not(FindDTM(EBucketDTM, x, y, 32, 88, 75, 128)) then
begin
if(FindDTM(EBucketDTM, x, y, MSx1, MSy1, MSx2, MSy2)) then
Withdraw(x, y, 28);
if not(FindDTM(EBucketDTM, x, y, MSx1, MSy1, MSx2, MSy2)) then
logout;
writeln ('Couldn''t Find Empty Buckets in Bank So Logging out!!');
end;
end;
end;

procedure DepositInv;
begin
If not LoggedIn then
Exit;
antirandom;
OpenBankFast('eb');
wait(500+random(500));
If Not(BankScreen) or Not(PinScreen)Then
begin
wait(2000+random(1000));
If Not(BankScreen) or Not(PinScreen)Then
begin
logout;
writeln('couldn''t open bank');
end;
if PinScreen then
InPin(Players[CurrentPlayer].Strings[1]);
if bankscreen then
begin
DepositAll;
ReportVars[0] := 28;
ReportVars[1] := 1;
ReportVars[2] := (GetTimeRunning/60000);
SrlRandomsReport;
SendSrlReport;
end;
end;
end;

procedure DepositInv2;
begin
If not LoggedIn then Exit;
antirandom;
OpenBankFast('eb');
wait(500+random(500));
If Not(BankScreen) or Not(PinScreen)Then
begin
wait(2000+random(1000));
If Not(BankScreen) or Not(PinScreen)Then
begin
logout;
writeln('couldn''t open bank');
end;
if PinScreen then
InPin(Players[CurrentPlayer].Strings[1]);
if bankscreen then
begin
DepositAll;
ReportVars[2] := (GetTimeRunning/60000);
ReportVars[3] := 14;
SrlRandomsReport;
SendSrlReport;
end;
end;
end;

procedure Proggy;
begin
writeln('====================================');
writeln('TROJANS EDGEVILLE BUCKET FILLER VERSION = ' + Version + '!');
writeln('Made ' + IntToStr(LoadsDoneC*14) + ' Soft Clay');
writeln('Filled ' + IntToStr(LoadsDoneB*28) + ' Buckets');
TimeM := (GetTimeRunning/60000);
TimeS := (GetTimeRunning-(TimeM*60000))/1000;
writeln('Ran For ' + IntToStr(TimeM) + ' Minutes And ' + IntToStr(TimeS)+ ' Seconds');
writeln('====================================');
end;

procedure WalkToBank;
begin
if not findsymbol(x, y, 'Bank') then
begin
writeln('Couldnt find bank Symbol');
proggy;
exit;
end else
begin
mouse(x, y, 3, 3, true);
flag;
if finddtm(BankDTM, x, y, MMx1, MMy1, MMx2, MMy2) then
begin
mouse(x, y, 3, 3, true);
flag;
end;
end;
end;

procedure FillBuckets;
begin
If not LoggedIn then
begin
Writeln('Not logged on...');
Exit;
end else
begin
RadialWalk(ERoadColor, 270, 290, 35, 0, 5);
Flag;
RadialWalk(ERoadColor, 359, 1, 50, 0, 0);
Flag;
if finddtm(EBucketDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
mouse(x, y, 3, 3, true);
wait(200+random(100));
if FindObjCustom(x, y, ['ell'], [WellColour], 5)then
mouse(x, y, 3, 3, true);
wait(18000+random(1000));
writeln('Filled all buckets, going back to bank');
end;
end;

procedure withdrawclaybucket;
begin
if not bankscreen then
OpenBankFast('eb');
if PinScreen then InPin(Players[CurrentPlayer].Strings[1]);
if bankscreen then
begin
DepositAll;
if(FindDTM(FBucketDTM, x, y, 79, 88, 114, 126))then
Withdraw(2,1,14);
if not(FindDTM(FBucketDTM, x, y, 32, 88, 75, 128)) then
begin
if(FindDTM(FBucketDTM, x, y, MSx1, MSy1, MSx2, MSy2)) then
Withdraw(x, y, 14);
if not(FindDTM(FBucketDTM, x, y, MSx1, MSy1, MSx2, MSy2)) then
logout;
writeln ('Couldn''t Find Full Buckets in Bank So Logging out!!');
end;
end;
begin
if(FindDTM(ClayDTM, x, y, 123, 89, 147, 121))then
Withdraw(3, 1, 14);
if not(FindDTM(ClayDTM, x, y, 123, 89, 147, 121)) then
begin
if(FindDTM(ClayDTM, x, y, MSx1, MSy1, MSx2, MSy2)) then
Withdraw(x, y, 28);
if not(FindDTM(ClayDTM, x, y, MSx1, MSy1, MSx2, MSy2)) then
logout;
writeln ('Couldn''t Find Clay in Bank So Logging out!!');
end;
end;
end;

procedure MakeSoftClay;
begin
if (FindDTM(FBucketDTM, x, y, MIx1, MIy1, MIx2, MIy2))then
begin
Mouse(x, y, 3, 3, true);
wait(100+random(200))
if (FindDTM(ClayDTM, x, y, 562, 211, 725, 464))then
begin
Mouse(662, 337, 3, 3, true);
wait(500+random(500));
Mouse(256, 412, 3, 3, false);
ChooseOption('ll');
wait(14000+random(1000));
end;
end;
end;

begin
Signature;
Setup;
LoadDTM;
if not loggedin then
begin
LoginPlayer;
end;
GetRoadColor;
repeat
WithdrawEBuckets;
CloseBS;
AntiBan;
AntiRandom;
FillBuckets;
AntiBan;
AntiRandom;
WalkToBank;
DepositInv;
LoadsDoneB := LoadsDoneB + 1;
until(LoadsDoneB = LoadsToDoB);
FreeDTM(EBucketDTM);
FreeDTM(BankDTM);
proggy;
SrlRandomsReport;
SendSrlReport;
repeat
WithdrawClayBucket;
CloseBS;
AntiBan;
MakesoftClay;
AntiRandom;
AntiBan;
DepositInv2;
LoadsDoneC := LoadsDoneC + 1;
until(LoadsDoneC = LoadsToDoC);
Proggy;
FreeDTM(FBucketDTM);
FreeDTM(ClayDTM);
FreeDTM(SClayDTM);
SrlRandomsReport;
SendSrlReport;
end.

p.s. Bucket filler now has auto road color :)

trojan

2008-12-18 17:39:16

=============================================
TROJANS EDGEVILLE BUCKET FILLER VERSION 0.02!
Made 280 Soft Clay
Ran For 18 Minutes And 49 Seconds
=============================================

Raskolnikov

2008-12-18 21:32:30

Nice script. You have some standards issues, look at my signature link to learn standards. The script overall looks good, good job!

Cut em2 it

D1zl3

2008-12-19 00:53:23

Yeah I agree with cutem, the only problem I see is standards, which is common for first scripts. Keep up the great work!

senrath

2008-12-19 01:20:59

For the road, I'm pretty sure that one can be found with FindVarrockRoadColor.

dre_bro11

2008-12-19 04:07:27

it is so cooool all the cripts now out.

trojan

2008-12-19 04:07:51

kk i will use that thanks :D
ill sort out the standards tonight because im at school atm lol

trojan

2008-12-19 14:00:19

Bucket filler now has autocolor for the road script has also been updated for banking. (both the bucket script and the hybrid script have been updated)

trojan

2008-12-19 14:47:01

From: senrath
For the road, I'm pretty sure that one can be found with FindVarrockRoadColor.


I tried using it and it just found the bank floor lol can i search a certain area for the color?

senrath

2008-12-19 15:25:07

From: trojan
I tried using it and it just found the bank floor lol can i search a certain area for the color?


Not with those, sorry. You can always try FindFallyRoadColor or FindLumbyRoadColor, to see if either of those get it.

trojan

2008-12-20 09:40:10

ok can someone help me with walking from the well to the bank please? and clicking the symbol isnt accurate as the symbol moves around too much. I need a DTM or something that will click the bottom of the bank (where my character is stood on the picture at the top)

Raskolnikov

2008-12-22 13:15:40

From: trojan
ok can someone help me with walking from the well to the bank please? and clicking the symbol isnt accurate as the symbol moves around too much. I need a DTM or something that will click the bottom of the bank (where my character is stood on the picture at the top)


I see the problem. Many people in this situation would make a DTM of the bankers, but that never works for me for some reason (lucky bastards :p)

Anyways, do you know how to autocolor? By making your own procedure? Here's the link:

http://www.villavu.com/forum/showthread.php?t=9550?t=10762

Good luck with that, I would use autocoloring, dtm, or try to find a procedure in srl that is suitable.

Cut em2 it