SRL Archive - RS3 Outdated / Broken Scripts

Clay Softner and Bucket Filler


BazzBarrett

2008-08-15 14:39:02

Clay Softner and Bucket Filler!


All feedback good or bad is gladly exsepted and any problems/things i can do to improve i will do asap.

(and any good guides on how to add stat reports out there?)

V 1.1


1. Add FFlag(0) for walking
2. Used much better dtms for the roads
3. Improved standerds
4. Used ChooseOption instead of alot of mouse functions
5. It's now alot less likly to just walk into the anvil shop

V 1.2


1. More bug fixes
2. Even better DTM's
3. Neater
4. Faster Clay withdrawal
5. New inventory failsafe

//Notes:
//you must have all the clay and buckets(empty or full) to start with
//buckets and clay must be in the first 4 rows of your bank
//(A good idear is to have all Buckets and clay in a new tab)
//no bankpin (or already entered) i havent got a bank pin but the findbank
//function has 1 built in can any1 tell me if it works[please enter your
//under players[0].pin]).
//you need atleast a couple hundred buckets other wise your realy
//increasing the chance of a slight error
//please have your man standing next to the counter in varrock east
//bank and press run. (this defantly insent un stoppable i dont
//segest any more than 20-30 lodes (280-420 clay) to be left alone as it
//dont seem to like randoms.)
//
//Fill out lines 26-29!

program New;
{.include SRL/SRL.scar}

var
Fullbucket, Emptybucket, Clay: Integer;//DTMs
SoftClay, Road, road2 : Integer;//I like DTMs =P
X, Y, XX, YY, lodesdone, BBuckets : Integer;

const
LodesToDo = 72; //number of lodes to do (14 clay to a lode)
fountaincolor = 8870726; // the color of the water in the fountian
dofillbuckets = true; //weather to fill emptybuckets or not
BucketToDo = 24; //number of bucket lodes to do (28 buckets to a lode)


procedure DeclarePlayers;//not nessasery only used for findnormalrandoms;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := 'aplayer123';
Players[0].Pass := '1234';
Players[0].Nick := 'p123';
Players[0].pin := '';
Players[0].Active := True;

end;

procedure checkrandoms;
begin
FindNormalRandoms;
FindNonInventoryRandoms;
end;

procedure setup;
begin
setupsrl;
Disguise('Windows Media Player');
ActivateClient;
declareplayers;
wait(1000);
makecompass('S');
makecompass('N');
lodesdone := 0
Fullbucket := DTMFromString('78DA63EC6360602862400153CB6C194480342' +
'310FF0702C6E940463A031A60442281740B116ADA804419013593' +
'804409AA8A96CA4AB87BC06ABA8144257E73000D7D0CE2');
Emptybucket := DTMFromString('78DA637CCAC0C090CF80025A33CD194480342' +
'310FF0702C6F740461A031A60442281F41D22D4DC0312A504D4BC' +
'05122504D480DC93835F0D00A2740D41');
Clay := DTMFromString('78DA639CC2C4C010CCC8800C26947B33B0026' +
'990E87F20609C0954E38DAA06220B2381F40CA09A30026A2610A1' +
'A60FA82610BF1A00050809EF');
SoftClay := DTMFromString('78DA639CCAC4C010C0C8800CE25C381852803' +
'448F43F10302E00AAF142550391859140BA17A8C687809A6EA09A' +
'70026AA603D5441350331FA8260CBF1A004D3D0A9F');
road := DTMFromString('78DA630C666260D061400155E5050C5C409A1' +
'188FF03016312508D26A61A06A81A301D0854638DAAA6A52C0455' +
'8D33508D067E7300EF8B0B89');
road2 := DTMFromString('78DA635CCBC4C090CF8002AACA0B18B880342' +
'310FF0702C62EFC6A4080713B76350CC86AA603D5641250B31EA8' +
'260A554D729831AA9A6EA09A5654352D6521286A004E33123B');
checkrandoms;
end;

procedure report;
var
timetm, timets : Integer;
begin
writeln('############################################');
writeln('BazzBarretts Soft Clay Maker');
writeln('Lodes done = ' + IntToStr(lodesdone));
writeln('Soft Clay made = ' + IntToStr(lodesdone*14));
writeln('Buckets filled = ' + IntToStr(BBuckets*28));
timetm := (GetTimeRunning/60000);
timets := (GetTimeRunning-(timetm*60000))/1000
writeln('Time taken = ' + IntToStr(timetm) + ' Minuets And ' + IntToStr(timets)+ ' Secounds');
writeln('Money Earnt = ~' + IntToStr(lodesdone*900) + ' Gp!');
writeln('############################################');
end;

procedure scriptterminate;
begin
freedtm(Fullbucket);
freedtm(Emptybucket);
freedtm(Clay);
freedtm(SoftClay);
freedtm(road);
freedtm(road2);
report;
end;

procedure closebank2;
begin
if bankscreen then
begin
mouse(488, 35, 3, 4, true);
checkrandoms;
end;
end;

procedure bankclay;
begin
if not loggedin then terminatescript;
if not bankscreen then FindBank('veb');
if finddtm(SoftClay, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ll')
end;
if finddtm(Emptybucket, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ll')
end;
checkrandoms;
if not InvEmpty then DepositAll;
end;

procedure withdrawclay;
begin
if not loggedin then terminatescript;
if not bankscreen then FindBank('veb');
if finddtm(clay, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
mouse(x, y, 3, 3, false);
if chooseoption('14') then else
begin
mouse(x, y, 3, 3, false);
ChooseOption('w-X');
wait(300+random(200));
typesend('14');
end;
end;
if finddtm(Fullbucket, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
mouse(x, y, 3, 3, false);
ChooseOption('ll')
end;
checkrandoms;
end;

procedure Fillbuckets; forward;

procedure MakeSoftClay;
begin
if not loggedin then terminatescript;
if finddtm(Fullbucket, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
mouse(x, y, 3, 3, true);
if finddtm(Clay, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
mouse(x, y, 3, 3, true);
wait(100+random(50));
mouse(255, 415, 5, 5, false);
if ChooseOption('ll') then
begin
wait(18000+random(2000));
inc(lodesdone);
end;
end else
begin
writeln('couldent find clay logging out');
terminatescript;
end;
end else
begin
writeln('couldent find any more buckets making more');
FillBuckets;
end;
end;

procedure WalkToFountain;
begin
MakeCompass('N');
if finddtm(road, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
mouse(x, y, 0, 0, true);
FFlag(0);
if FindSymbol(x, y, 'water') then
begin
mouse(x, y, 0, 0, true);
FFlag(0);
end else
begin
writeln('couldent find fountain, guessing insted.');
mouse(588, 53, 4, 4, true);
FFlag(0);
end;
end else
begin
mouse(584, 38, 0, 0, true);
FFlag(0);
if FindSymbol(x, y, 'water') then
begin
mouse(x, y, 0, 0, true);
fflag(0);
end else
begin
writeln('couldent find fountain, assuming your on top of it.');
exit;
end;
end;
end;

procedure FillFromFountain;
begin
wait(1500+random(500));
if not findcolor(x, y, fountaincolor, MSX1, MSY1, MSX2, MSY2) then
begin
wait(3000+random(2000));
if not findcolor(x, y, fountaincolor, MSX1, MSY1, MSX2, MSY2) then
begin
writeln('couldent fill buckets going back 2 bank');
exit;
end;
end;
if findcolor(x, y, fountaincolor, MSX1, MSY1, MSX2, MSY2) then
begin
if finddtm(emptyBucket, xx, yy, MIX1, MIY1, MIX2, MIY2) then
begin
mouse(xx, yy, 3, 3, true);
mouse(x, y, 0, 0, true);
wait(19000+random(2000));
end else writeln('no buckets going back to bank');
end;
end;

procedure WalkToBank;
begin
if finddtm(road2, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
mouse(x, y, 2, 2, true);
wait(3000);
FFlag(0);
end else
begin
writeln('couldent find road guessing');
mouse(677, 111, 3, 3, true);
wait(3000);
FFlag(0);
end;
end;

procedure bankbuckets;
begin
if finddtm(FullBucket, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
mouse(x, y, 3, 3, false);
ChooseOption('ll');
end else
begin
writeln('couldent bank buckets ammusing theres 1 in secound slot');
deposit(2, 2, true);
end;
if not InvEmpty then DepositAll;
end;

procedure FillBuckets;
begin
if dofillbuckets then
begin
if not bankscreen then findbank('veb');
if not InvEmpty then DepositAll;
while finddtm(emptybucket, x, y, MSX1, MSY1, MSX2, MSY2) and (BucketToDo > BBuckets) Do
begin
mouse(x, y, 3, 3, false);
ChooseOption('ll');
closebank2;
WalkToFountain;
FillFromFountain;
WalkToBank;
findbank('veb');
wait(100+random(200));
bankbuckets;
inc(BBuckets);
wait(100+random(200));
end;
writeln('No more empty buckets! started making soft clay!');
end;
end;

begin
setup;
FillBuckets;
repeat
if not bankscreen then findbank('veb');
bankclay;
withdrawclay;
closebank2;
MakeSoftClay;
until(LodesDone = LodesToDo);
end.

Proggy's

My First long(ish) proggy ran for 48 mins with no errors (exsept an instant of lag witch is now covered in the new failsafe but all it did was make my script go and make more buckets =\)
############################################
BazzBarretts Soft Clay Maker
Lodes done = 55
Soft Clay made = 770
Buckets filled = 392
Time taken = 47 Minuets And 56 Secounds
Money Earnt = ~49500 Gp!
############################################

sirlaughsalot

2008-08-15 15:08:19

I havent tried running it but there are some things wrong with your standards

Instead of

procedure bankclay;
begin
if(not(loggedin))then
begin;
terminatescript;
end;
if(bankscreen = false)then
begin
OpenBankFast('veb');;
end;
if(finddtm(SoftClay, x, y, MIX1, MIY1, MIX2, MIY2) = true)then
begin
mouse(x, y, 3, 3, false);
mouse(x, y+93, 3, 0, true);
end;
if(finddtm(Emptybucket, x, y, MIX1, MIY1, MIX2, MIY2) = true)then
begin
mouse(x, y, 3, 3, false);
mouse(x, y+100, 3, 0, true);
end;
checkrandoms;
end;


Do this


procedure bankclay;
begin
if not loggedin then
terminatescript;
if not bankscreen then
OpenBankFast('veb');;
if finddtm(SoftClay, x, y, MIX1, MIY1, MIX2, MIY2)then
begin
mouse(x, y, 3, 3, false);
mouse(x, y+93, 3, 0, true); //what is this supposed to do? use chooseoption instead i think is what you are getting at
end;
if finddtm(Emptybucket, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
mouse(x, y, 3, 3, false);
mouse(x, y+100, 3, 0, true);
end;
checkrandoms;
end;

things like finddtm findcolorspiraltolerance, they do things if it returns true defaultly you dont have to declare it to return true, and if you have only 1 line after an if/then statement, you dont have to have begin/end but you still have to have 2 spaces before with official standards

jakeyboy29

2008-08-15 15:21:10

is it working as well as the others did?

sirlaughsalot

2008-08-15 15:24:09

Try it out for youself, i doubt it does because he hasnt developed his scripting skills yet, but it eventually will be, but i dont get why you made at varrock east…

BazzBarrett

2008-08-15 17:10:03

From: sirlaughsalot
Try it out for youself, i doubt it does because he hasnt developed his scripting skills yet, but it eventually will be, but i dont get why you made at varrock east…


as much as im still developing my skills it does actuly work and quite well.
as for why i did it at varrock east
no.1 cuz its close 2 ge
no.2 its close to a water supply
no.3 im macroing on a lvl3 money making pure XD so i cant use teleports

sirlaughsalot

2008-08-15 17:14:20

Im sure it works fine, but the other 2 *were* amazing, im pretty sure the water supply at edgeville is closer… and kudos to you because most people here arent even making things just leeching off of people and complaining…

BazzBarrett

2008-08-15 17:58:31

From: sirlaughsalot
Im sure it works fine, but the other 2 *were* amazing, im pretty sure the water supply at edgeville is closer… and kudos to you because most people here arent even making things just leeching off of people and complaining…


THERE WERE OTHERS! o well still a good script and ive learnt alot making it =)
and ur right the water suply at edgvil is closer =\ dident think about that 1 o well 2 late now and im sure this 1 isent 2 far behind it..

tarajunky

2008-08-16 00:25:16

IIRC, closest water supply in all of RS is Falador West bank, which is the one mine uses. ;)

jakeyboy29

2008-08-16 08:27:48

says i have no empty buckets.

BazzBarrett

2008-08-16 14:27:21

From: jakeyboy29
says i have no empty buckets.


it eather can see the bucket in your bank or the dtm for the buckets might b a bit out or your not using safe mode…
make sure its on safe mode and if still getting problems tell me but try if making a new dtm works.

lordsaturn

2008-08-17 17:58:18

Isn't this posted in the wrong section?

BazzBarrett

2008-08-22 19:34:56

From: lordsaturn
Isn't this posted in the wrong section?


not 2 my knolage cant think of anywere else to put it..

MylesMadness

2008-08-22 19:39:34

From: bazzbarrett
not 2 my knolage cant think of anywere else to put it..
Crafting

Chemonk

2008-08-26 17:18:29

From: Mylesmadness
Crafting


Actually, this belongs in the "Collecting/Banking" section. The process of making soft clay doesn't require crafting.

Oh, and by the way, Bazzbarrett, you have horrible spelling and grammar.

BazzBarrett

2008-10-11 07:24:50

From: Chemonk
Actually, this belongs in the "Collecting/Banking" section. The process of making soft clay doesn't require crafting.

Oh, and by the way, Bazzbarrett, you have horrible spelling and grammar.


lol i know give me a math paper and ill get 100% give me a spelling test and ill b lucky to get 10% XD

Note: forgot about this script and 2bh i woldent use it. its out if date and was my first Rs script and was defonatly not scripted very well =\ the other 2 are much better altough once ive finished my current progect i may update this fully (and give u a choice of locations)

joelster134

2008-11-02 06:14:09

for ur anti randoms, you might want
 procedure AntiRandoms;
begin
findnormalrandoms;
if findfight=true then
begin
runaway('E',true,1,5000+random(1000));
end;
end;

so if you get a random itl at least run away.

gimillii1592

2008-11-23 14:17:46

this should be cool…trying……..

snoker

2009-04-30 21:04:20

this is still working but when it open the bank windows it says no more buckets and clays :S though there is ….