SRL Archive - First Scripts

Summer Pie Maker 0.1 (200-300k/hr)


masterg174

2012-02-13 06:04:01

Well this is my very first script. A summer pie maker.
I admit that, some of this code was based off others scripts as I was not completely familiar with banking and with using the inventory. But In the end I had to make my own way of opening the bank anyway. This is not the ideal way that a script would run, when I figure out DTM's, I will implement it to my script as it will also allow me to fail safe my script.

What it does:
It combines the ingredients: Pie Shell, Strawberry, Watermelon and Cooking apple together to form a Raw Summer Pie and then banks them.

What are these used for?

These are used for awesome cooking experience, and even magic experience if using the "Bake Pie" spell. They are also used as an Okayish money maker, making around 200-300k an hour.

Requirements:
  • 95 Cooking
  • Ingredients (Pie shell, Strawberry, Watermelon, Cooking Apple)
  • Runescape Membership

How to set up the script:

  1. You must be at a bank with an NPC (NOT Grand Exchange). I've only tested Camelot.
  2. Your ingredients must be in the positions below and in that order.
  3. Preferebly, you would be at the far left hand corner of the bank (If at camelot) as thats where it works best.
  4. Make sure you are facing North, and are at about mid upwards camera angle. This probably doesn't matter too much but it will make sure the script can find the bank.
  5. If all is set up correctly, the script will open the bank and start making the pies. You can see a progress report and the current action of the script in the simba debug box.

NOTE: USE THIS AT YOUR OWN RISK!
This script contains NO anti ban (Other than randomization in clicking ,waiting times, and mouse speeds)
However, as you gain no XP from doing this and there is no animation associated with making the summer pies, its unlikely you will get banned or reported, but don't take my word for it. I've been running this script for a while and haven't had any problems, but you have been warned.

Also this script has no fail safes yet, so make sure you have enough ingredients or else it will start mixing monkfish and strawberries lol.
I will get to adding fail-safes eventually, as well as some basic antiban but for now you need to keep a good eye on the script.

You'll be glad to know, as you gain no XP, you won't get any randoms either. I've NEVER had a random when i'm not gaining experience so there should not be any problems with randoms.

Also Don't be surprised if you have like 7 apple pies in your bank lol, I still am yet to add fail safes as I said before, so it will occasionally forget an ingredient or something (Usually due to lag). But it rarely happens.

program SummerPies;
// Includes...
{$i srl/srl/misc/smart.scar}
{$loadlib sps}
{$i srl/srl.simba}
{$i sps/sps.simba}

const
// ----------------SETUP-----------------------------
// Must be in a bank that has a NPC (NOT Grand Exchnage. Only tested at Camelot)
// Note this works best at the far left banker at camelot.
colps= 1; // Pie shell Collumn
rowps= 1; // Pie Shell Row
colsb= 2; // Strawberry Collumn
rowsb= 1; // Strawberry Row
colwm= 3; // Watermelon Collumn
rowwm= 1; // Watermelon Row
colca= 4; // Cooking Apple Collumn
rowca= 1; // Cooking Apple Row

Var
X, Y, T, W, Loads, Summerpiesmade: Integer;


procedure DeclarePlayers;
begin
HowManyPlayers := 1; //
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0; // This is the player to start with; the first player will always be 0
Players[0].Name := ''; // Username
Players[0].Pass := ''; // Password
Players[0].Active := True; // Set to true if you want to use Player 0
Players[0].Pin := ''; // Not sure if this works.
end;
procedure SetupLogin;
begin
ClearDebug;
// Setting up SMART;
Smart_Server := 49;
Smart_Members := True;
Smart_Signed := False;
Smart_SuperDetail := False;
SetupSRL;
DeclarePlayers;
LoginPlayer; // Logging in...
end;
Procedure BankOpener; //Procedure to find and open the bank
var
x,y: Integer;
begin
x:=MSCX
y:=MSCY

FindObjCustom(x, y, ['ank'], [4416632, 9937313], 5);
WriteLn('Bank: Finding Banker');
Mouse(x, y, 0, 0, True);
end;



procedure Banking; //Procedure to withdraw items from bank interface
//If you read the Writln's its pretty self explanitory.
var
p, t: Integer;

begin
begin

Wait(RandomRange(900, 1200));

end;
Inc(t);
MakeCompass('n');
BankOpener;

Wait(RandomRange(700, 1000));
Depositall
Writeln ('Bank: Deposit All')
Wait(RandomRange(700, 1000));
Depositall

Writeln ('Withdrawing Items: Pie Shells...');
WithdrawEx(colps,rowps,7,[]);
Wait(RandomRange(900, 800));

Writeln ('Withdrawing Items: Strawberries...');
WithdrawEx (colsb, rowsb, 7, []);
Wait(RandomRange(500, 800));

Writeln ('Withdrawing Items: Watermelons...');
WithdrawEx (colwm, rowwm, 7, []);
Wait(RandomRange(500, 800));

Writeln ('Withdrawing Items: Cooking Apples...');
WithdrawEx (colca, rowca, 7, []);

Writeln ('Closing bank interface...');
CloseBank;
end;


procedure summerpiemake; //Procedure to make Raw summer pies
//If you read the Writln's its pretty self explanitory.
begin
mousespeed:=(7+random(2));

wait(1800+random(500));
invmouse((1)+random(6),1)
Writeln ('Inventory: Clicking Pie Dish...');

wait(700+random(300));
invmouse((8)+random(6),1)
Writeln ('Inventory: Use Pie Dish->Strawberry');

wait(1300+random(600))
mouse(216, 454, 78, -43,true);
Writeln ('==== Make: Part Summer Pie (1) ====');

wait(9000+random(2000));
Writeln ('Inventory: Clicking Part Summer Pie (1)...');
invmouse((1)+random(6),1)

wait(1200+random(1300));
invmouse((15)+random(6),1)
Writeln ('Inventory: Use Part Summer Pie (1)->Watermelon');

wait(1300+random(400));
mouse(216, 454, 78, -43,true);
Writeln ('==== Make: Part Summer Pie (2) ====');

wait(9000+random(1189));
invmouse((1)+random(6),1)
Writeln ('Inventory: Clicking Part Summer Pie (2)...');

wait(1200+random(1300));
invmouse((22)+random(6),1)
Writeln ('Inventory: Use Part Summer Pie (2)->Watermelon');

wait(1300+random(400));
Writeln ('==== Make: Raw Summer Pies ====');
mouse(216, 454, 78, -43,true);

//Progress Report
wait(8938+random(898));
Summerpiesmade := Summerpiesmade + 7;
Writeln('=========Progress Report=========')
Writeln('Summer Pies Made: ' + IntToStr(Summerpiesmade) );
Writeln('Time Update: ' + TimeRunning );
Loads := Loads +1;
Writeln('Inventories Made: ' + IntToStr(Loads));
Writeln('=================================')
end;


procedure MainLoop; // Note this is an infinite Loop, it will never stop!
var ii:integer; // (Unless defined to stop by making ii =2)
begin

repeat
Banking;
summerpiemake;
until (ii=2)

end;

begin
SetupLogin
MainLoop
end.


tehq

2012-02-13 13:24:48

Why don't you just change the pie dish to bank row 0, bank col 0 and then use bank col+1 for strawberry, bankcol+2 for watermelon, etc.

masterg174

2012-02-13 15:09:40

From: tehq
Why don't you just change the pie dish to bank row 0, bank col 0 and then use bank col+1 for strawberry, bankcol+2 for watermelon, etc.


That would work I suppose, but I kinda got a bit confused when I was defining it. But anyways, I'll most likely just use DTMS or something for the bank, so that you can have it in any row or column.

Edit: Oh wait now I get why it's in those positions…most variables start at "0", no wonder I was getting confused when declaring them. Thanks for telling me.

restest

2012-07-09 17:30:07

how to i use this bot?

shstiger2009

2012-07-09 17:51:08

From: restest
how to i use this bot?




Requirements:
95 Cooking
Ingredients (Pie shell, Strawberry, Watermelon, Cooking Apple)
Runescape Membership

How to set up the script:
You must be at a bank with an NPC (NOT Grand Exchange). I've only tested Camelot.
Your ingredients must be in the positions below and in that order.
Preferebly, you would be at the far left hand corner of the bank (If at camelot) as thats where it works best.
Make sure you are facing North, and are at about mid upwards camera angle. This probably doesn't matter too much but it will make sure the script can find the bank.
If all is set up correctly, the script will open the bank and start making the pies. You can see a progress report and the current action of the script in the simba debug box.

…

BGXD

2012-08-07 17:36:36

Good script: D
I converted this script.

masterBB

2012-08-08 05:04:09

Very nice first script!

I suggest removing the random mouse speed though. In the mouse function itself it will already be randomized in a very human way. I am afraid this will have an opposite effect of what you wanted.