SRL Archive - Archive

hamster31 - SRL Member Application


hamster31

2011-12-11 23:12:08

How Long have You Played Runescape?
9 Year(s)


Are you affilated in anyway with Jagex LTD?
No

Were you Referred to SRL?



What is your general programming knowledge?
Visual Basic, learning Java, learning to program using simba


Are you a member of any other communities?
Robotzindisguise. I have used the scripts over there but this is much more interesting as you can program your own.


Tell us about yourself…
From: hamster31
My name is Ham. I live in PA, and love working with computers. Going to university for a finance degree. Messing around with computers is my hobby and learning something new is my passion. I enjoy a challange and try to think outside the box if i have to to get something to work.



Please show us one (or multiple) of your scripts.
//THIS IS A BETA POUCH MAKER! PLEASE BABY SIT FOR NOW!!!
//Working towards perfecting summoning script
program PouchMaker;
{$DEFINE SMART}
{$i srl/srl.scar}
{$i sps/sps.simba}

procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := ''; // Username
Players[0].Pass := ''; // Password
Players[0].Nick := ''; // 3-4 lowercase letters from username; used for random event detection
Players[0].Active := True; // Set to true if you want to use Player 0
Players[0].Pin := ''; // Leave blank if the player doesn't have a bank pin
end;
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
//////////////////////////// SETUP ENDS HERE ////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////


procedure SummonWalk; //Map walks to the Location
var
Gate: TPointArray;
Summon: TPointArray;
x,y: Integer;
begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else

SPS_Areas := ['8_7', '9_7'];

Gate := [Point(3634, 3149), Point(3685, 3123), Point(3698, 3078), Point(3696, 3043),
Point(3700, 3014), Point(3672, 2980), Point(3638, 2959), Point(3631, 2910),
Point(3627, 2873), Point(3555, 2845)];


Summon := [Point(3545, 2848), Point(3536, 2875), Point(3535, 2875), Point(3535, 2875), Point(3534, 2874)];

Writeln('Walking to Gate');
SetupSRL;
SPS_WalkPath(Gate);
findcolor(x,y,197102,MMX1,MMY1,MMX2,MMY2)
if x<MMCX then
begin
If (findobjcustom(x,y,['Open'],[8420225,8354175,7959417],5)) then //Finds gate to see if its open or not
begin
mouse(x,y,0,0,true);
SPS_WalkPath(Summon);
end
end else
SPS_WalkPath(Summon);
end;

procedure BacktoBank; //Return Path to the Bank After teleport

var
x,y:integer;
t:integer;
begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
t := t+100;
MakeCompass('N');
Mouse(565,96,2,2,true);
wait(500);
repeat
wait(t);
until (Not IsMoving)
if findsymbol(x,y,'bank') then
begin
Mouse(x,y,5,5,true);
Writeln('Bank found');
t:=0;
end;
end;

procedure TrapDoor;

var
x,y,t: integer;

begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
t:=t+1000;
Makecompass(115+random(5));
setangle(true);
wait(1000 + random(500));
repeat
wait(t);
until (Not IsMoving)
if (findobjcustom(x,y,['Open','Climb'],[855309, 921102, 798517],5))then
begin
Writeln('TrapDoor found');
movemouse(x,y);
If(WaitUptext('Open', 300)) then
begin
Mouse(x, y, 0, 0, true);
repeat
wait(t);
until (not IsMoving)
wait(300);
mousebox(232,154,251,152,1);
t:=0;
end else
If(WaitUptext('Climb', 300)) then
begin
Mouse(x, y, 0, 0, true);
t:=0;
end;
end;
end;

procedure MakePouch;

var
x,y,c,t,a,b:integer;

begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
c := 105 + random(30);
t := t+1000;
makecompass(c);
repeat
wait(t);
until (not IsMoving)
wait(1000 + random(500));
if (findobjcustom(x,y,['Infuse','pouch'],[2389103, 2058596, 2058082,1992032],5)) then
begin
writeln('Obilisk Found');
movemouse(x,y);
wait(500+ random(250));
mouse(x,y,0,0,true);
wait(2000 + random(1000));
if (findcolor(a,b,105157,200,35,210,45)) then
Writeln('Color Found');
begin
Mousebox(50,71,75,80,3);
GetMousePos(x, y);
Mouse(x, y, 0, 0, false);
Wait(1000 + random(50));
ChooseOption('use-All');
Wait(1000 + random(500));
mousebox(690,222,710,227,1);
end else
begin
Mousebox(200,35,210,45,1);
Mousebox(50,71,75,80,3);
GetMousePos(x, y);
Mouse(x, y, 0, 0, false);
Wait(1000 + random(50));
ChooseOption('use-All');
Wait(1000 + random(500));
mousebox(690,222,710,227,1);
end;
end;
end;

procedure WithdrawItems;
var
x,y: integer;

begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
makecompass('N');
if OpenBank(Players[CurrentPlayer].Loc, False, False) then
begin
MouseBox(45, 100, 60, 113, 3);
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, false);
Wait(380 + random(50));
ChooseOption('raw-All');
end;
end;
CloseBank;
MMouse(711,438,2,2);
wait(1000);
if (Waituptext('pouch',1000)) then
begin
logout;
TerminateScript;
end;
Wait(750 + random(200));
end;

procedure WithdrawBank; //Finding Bank Procedure

var
Tr, Bo: integer;
x, y: integer;
begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
if BankScreen = false then
begin
writeln('Trying to open bank..');
MakeCompass('N');
SetAngle(true);
OpenBankFast('fwb');
end;
repeat
wait(10);
Tr := Tr +1;
until (Tr = 1000) or (BankScreen = true);
if BankScreen = True then
begin
Writeln('Bank successfully Opened');
wait(1000 + random(1000));
if BankScreen then
begin
Wait (200 + Random(300));
FixBank;
if (InvFull) then
Mousebox(570, 260, 585, 265, 3);
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, false);
Wait(380 + random(50));
ChooseOption('sit-All');
end;
ActivateClient;
WithdrawItems;
end;
end else
if BankScreen = False then
begin
Bo := Bo +1;
writeln('Lets Try that again' + IntToStr(Bo) + ' Times');
if (Bo >= 5) then
begin
writeln('Could not Find Bank, Logging Out Now'); //Logout;
NextPlayer(false);
end;
end;
CloseBank;
end;


begin
smart_server := 1;
smart_members := true;
smart_signed := true;
smart_superDetail := false;

clearDebug();
setupSRL();
ActivateClient;
DeclarePlayers;
if not loggedin then
loginplayer;
repeat
withdrawbank; //Withdraws the Item
SummonWalk; //Walks to the Gate between Falador and Tavelery and then to the trapdoor
TrapDoor; //Finds and Enters Trapdoor
MakePouch; //Infuses Pouch
wait(6000 + random(2000)); //Random Wait
BacktoBank; //Walks back to Bank
until(false); //KEEPS ON GOING
end.

Flight

2011-12-11 23:19:44

Job well done I think. If I were to recommend anything I'd say get to know DTMs for item-handling. Banking and inventory checking works hand-in-hand with DTMs, and they would work like a charm here. I'm probably gonna vote Yes but I'll wait and see what the others say, they might bring up some good points I over-looked.

Either way, you're doing great. :)

hamster31

2011-12-11 23:25:48

Thank you for that generous comment. This is just the beginning of this script…I can not update it until i can get more charms :) lol but i will definitely get on that :) Thank you for your input :)

Hobbit

2011-12-11 23:50:47

Short but full of juicy goodness :) + I like your attitude !

Yes.

hamster31

2011-12-11 23:57:32

From: Hobbit
Short but full of juicy goodness :) + I like your attitude !

Yes.


Thank you Hobbit :) Like i said, the moment i have more charms :) read my post on First Scripts sections :) i plan to make it flawless…Im not an amazing scripter but i like to think outside the box…you can never learn enough..

Jakkle

2011-12-12 00:37:34

Seems like a decent script, a little messy but that's easily changed.
As flight said have a go with dtm finding, will help a lot with this script to make sure you have the right things in your inventory/bank. Also a progress report would be nice.

Not sure how anyone else feels about your code but like I said it seems rather messy to me, some bits are ok tho.
Have a look see if you can see what I mean

Instead of

procedure WithdrawBank; //Finding Bank Procedure

var
Tr, Bo: integer;
x, y: integer;
begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
if BankScreen = false then
begin
writeln('Trying to open bank..');
MakeCompass('N');
SetAngle(true);
OpenBankFast('fwb');
end;
repeat
wait(10);
Tr := Tr +1;
until (Tr = 1000) or (BankScreen = true);
if BankScreen = True then
begin
Writeln('Bank successfully Opened');
wait(1000 + random(1000));
if BankScreen then
begin
Wait (200 + Random(300));
FixBank;
if (InvFull) then
Mousebox(570, 260, 585, 265, 3);
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, false);
Wait(380 + random(50));
ChooseOption('sit-All');
end;
ActivateClient;
WithdrawItems;
end;
end else
if BankScreen = False then
begin
Bo := Bo +1;
writeln('Lets Try that again' + IntToStr(Bo) + ' Times');
if (Bo >= 5) then
begin
writeln('Could not Find Bank, Logging Out Now'); //Logout;
NextPlayer(false);
end;
end;
CloseBank;
end;


begin
smart_server := 1;
smart_members := true;
smart_signed := true;
smart_superDetail := false;

clearDebug();
setupSRL();
ActivateClient;
DeclarePlayers;
if not loggedin then
loginplayer;
repeat
withdrawbank; //Withdraws the Item
SummonWalk; //Walks to the Gate between Falador and Tavelery and then to the trapdoor
TrapDoor; //Finds and Enters Trapdoor
MakePouch; //Infuses Pouch
wait(6000 + random(2000)); //Random Wait
BacktoBank; //Walks back to Bank
until(false); //KEEPS ON GOING
end.

I would make it look more like this.

procedure WithdrawBank; //Finding Bank Procedure

var
Tr, Bo: integer;
x, y: integer;
begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
if BankScreen = false then
begin
writeln('Trying to open bank..');
MakeCompass('N');
SetAngle(true);
OpenBankFast('fwb');
end;
repeat
wait(10);
Tr := Tr +1;
until (Tr = 1000) or (BankScreen = true);
if BankScreen = True then
begin
Writeln('Bank successfully Opened');
wait(1000 + random(1000));
if BankScreen then
begin
Wait (200 + Random(300));
FixBank;
if (InvFull) then
Mousebox(570, 260, 585, 265, 3);
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, false);
Wait(380 + random(50));
ChooseOption('sit-All');
end;
ActivateClient;
WithdrawItems;
end;
end else
if BankScreen = False then
begin
Bo := Bo +1;
writeln('Lets Try that again' + IntToStr(Bo) + ' Times');
if (Bo >= 5) then
begin
writeln('Could not Find Bank, Logging Out Now'); //Logout;
NextPlayer(false);
end;
end;
CloseBank;
end;


begin
smart_server := 1;
smart_members := true;
smart_signed := true;
smart_superDetail := false;

clearDebug();
setupSRL();
ActivateClient;
DeclarePlayers;
if not loggedin then
loginplayer;
repeat
withdrawbank; //Withdraws the Item
SummonWalk; //Walks to the Gate between Falador and Tavelery and then to the trapdoor
TrapDoor; //Finds and Enters Trapdoor
MakePouch; //Infuses Pouch
wait(6000 + random(2000)); //Random Wait
BacktoBank; //Walks back to Bank
until(false); //KEEPS ON GOING
end.

You could also make a Main loop
Like this,

Procedure Mainloop;
begin
Writeln('starting the main loop');
repeat
withdrawbank; //Withdraws the Item
SummonWalk; //Walks to the Gate between Falador and Tavelery and then to the trapdoor
TrapDoor; //Finds and Enters Trapdoor
MakePouch; //Infuses Pouch
wait(6000 + random(2000)); //Random Wait
BacktoBank; //Walks back to Bank
until(false); //KEEPS ON GOING
end;

begin
smart_server := 1;
smart_members := true;
smart_signed := true;
smart_superDetail := false;

clearDebug();
setupSRL();
ActivateClient;
DeclarePlayers;
if not loggedin then
loginplayer;
Mainloop;
TerminateScript;
end.

I'm voting yes btw, great start keep it up ;)

hamster31

2011-12-12 00:57:15

From: Jakkle
Seems like a decent script, a little messy but that's easily changed.
As flight said have a go with dtm finding, will help a lot with this script to make sure you have the right things in your inventory/bank. Also a progress report would be nice.

Not sure how anyone else feels about your code but like I said it seems rather messy to me, some bits are ok tho.
Have a look see if you can see what I mean

Instead of

procedure WithdrawBank; //Finding Bank Procedure

var
Tr, Bo: integer;
x, y: integer;
begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
if BankScreen = false then
begin
writeln('Trying to open bank..');
MakeCompass('N');
SetAngle(true);
OpenBankFast('fwb');
end;
repeat
wait(10);
Tr := Tr +1;
until (Tr = 1000) or (BankScreen = true);
if BankScreen = True then
begin
Writeln('Bank successfully Opened');
wait(1000 + random(1000));
if BankScreen then
begin
Wait (200 + Random(300));
FixBank;
if (InvFull) then
Mousebox(570, 260, 585, 265, 3);
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, false);
Wait(380 + random(50));
ChooseOption('sit-All');
end;
ActivateClient;
WithdrawItems;
end;
end else
if BankScreen = False then
begin
Bo := Bo +1;
writeln('Lets Try that again' + IntToStr(Bo) + ' Times');
if (Bo >= 5) then
begin
writeln('Could not Find Bank, Logging Out Now'); //Logout;
NextPlayer(false);
end;
end;
CloseBank;
end;


begin
smart_server := 1;
smart_members := true;
smart_signed := true;
smart_superDetail := false;

clearDebug();
setupSRL();
ActivateClient;
DeclarePlayers;
if not loggedin then
loginplayer;
repeat
withdrawbank; //Withdraws the Item
SummonWalk; //Walks to the Gate between Falador and Tavelery and then to the trapdoor
TrapDoor; //Finds and Enters Trapdoor
MakePouch; //Infuses Pouch
wait(6000 + random(2000)); //Random Wait
BacktoBank; //Walks back to Bank
until(false); //KEEPS ON GOING
end.

I would make it look more like this.

procedure WithdrawBank; //Finding Bank Procedure

var
Tr, Bo: integer;
x, y: integer;
begin
if FindNormalRandoms then //finds randoms and if in random, logs out if
if not LoggedIn then
begin
TerminateScript;
end else
if BankScreen = false then
begin
writeln('Trying to open bank..');
MakeCompass('N');
SetAngle(true);
OpenBankFast('fwb');
end;
repeat
wait(10);
Tr := Tr +1;
until (Tr = 1000) or (BankScreen = true);
if BankScreen = True then
begin
Writeln('Bank successfully Opened');
wait(1000 + random(1000));
if BankScreen then
begin
Wait (200 + Random(300));
FixBank;
if (InvFull) then
Mousebox(570, 260, 585, 265, 3);
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, false);
Wait(380 + random(50));
ChooseOption('sit-All');
end;
ActivateClient;
WithdrawItems;
end;
end else
if BankScreen = False then
begin
Bo := Bo +1;
writeln('Lets Try that again' + IntToStr(Bo) + ' Times');
if (Bo >= 5) then
begin
writeln('Could not Find Bank, Logging Out Now'); //Logout;
NextPlayer(false);
end;
end;
CloseBank;
end;


begin
smart_server := 1;
smart_members := true;
smart_signed := true;
smart_superDetail := false;

clearDebug();
setupSRL();
ActivateClient;
DeclarePlayers;
if not loggedin then
loginplayer;
repeat
withdrawbank; //Withdraws the Item
SummonWalk; //Walks to the Gate between Falador and Tavelery and then to the trapdoor
TrapDoor; //Finds and Enters Trapdoor
MakePouch; //Infuses Pouch
wait(6000 + random(2000)); //Random Wait
BacktoBank; //Walks back to Bank
until(false); //KEEPS ON GOING
end.

You could also make a Main loop
Like this,

Procedure Mainloop;
begin
Writeln('starting the main loop');
repeat
withdrawbank; //Withdraws the Item
SummonWalk; //Walks to the Gate between Falador and Tavelery and then to the trapdoor
TrapDoor; //Finds and Enters Trapdoor
MakePouch; //Infuses Pouch
wait(6000 + random(2000)); //Random Wait
BacktoBank; //Walks back to Bank
until(false); //KEEPS ON GOING
end;

begin
smart_server := 1;
smart_members := true;
smart_signed := true;
smart_superDetail := false;

clearDebug();
setupSRL();
ActivateClient;
DeclarePlayers;
if not loggedin then
loginplayer;
Mainloop;
TerminateScript;
end.

I'm voting yes btw, great start keep it up ;)


Will change that…Im trying to figure out what you changed lol…sorry i need to go through the whole thing line by line :) will definitely keep changing it for the better

Kyle Undefined

2011-12-12 01:02:18

I'm going to vote yes, you know how to use the SRL include. It could use some improvements, but those will come as you learn. Great job! :)

Jakkle

2011-12-12 01:13:16

From: hamster31
Will change that…Im trying to figure out what you changed lol…sorry i need to go through the whole thing line by line :) will definitely keep changing it for the better


It's to do with your spacing/how the code should be.

I will point out 1 little bit and you might see better.

Yours

repeat
wait(10);
Tr := Tr +1;
until (Tr = 1000) or (BankScreen = true);

Mine

repeat
wait(10);
Tr := Tr +1;
until (Tr = 1000) or (BankScreen = true);

Make sure after begin when you go to the next line you put 2 spaces then start your code. begin and end, repeat and until, things like that should line up with each other.

KingKong

2011-12-12 01:15:29

One of the few scripts in the past few weeks thats worth looking at:thumbsup:. But the script shows no support for multiplayer(which imo is required), has quite a few infinite loops(loops that could never end), and the standards aren't that good either. You don't use tpa's/atpa's and other advanced color finding techniques. I recommend you learn about them, make a script that utilises them and reapply. I think you have what it takes to become a member but you're not quite there yet. :)

Emaziz

2011-12-12 07:12:32

Banking .. Check!
Walking .. Check!
Failsafes .. Check! (Saw at least one infinite loop, but minor)
Randoms .. Check!
Standards .. Check! (Very minor flaws)

Better than the recent applicants I've looked at .. Check!
I'm in a good mood today .. Check!
Voting yes .. Check!
Posting this reply .. Check!

Sir R. M8gic1an

2011-12-12 08:07:13

Im going to say no. You use a lot a coordinate clicking, it doesn't have multiplayer, banking is by coords, walking with coords, if not LoggedIn then TerminateScript seems a bit excessive, standards are off, there's no progress report, no bitmaps, no dtms, no TPAs…


MMouse(711,438,2,2);
wait(1000);
if (Waituptext('pouch',1000)) then
begin
logout;
TerminateScript;
end;

And it seems to me, that if it does find the pouch then it terminates the script.

-RM

kanah

2011-12-12 08:32:11

I second what Sir R. said.. Being an SRL member means you know and have demonstrated all those skills; this is a good first attempt but you need to improve more to get a yes from me.

Sabzi

2011-12-12 09:32:16

From: Sir R. M8gic1an
standards are off, there's no progress report, no bitmaps, no dtms, no TPAs…

Thanks god you said it. I was about to say "Am I the only one thinking ^that?", but I pussied out because everyone was voting super yes and I thought I just didn't recognize something brilliant.

No from me as well, btw.

Sorry but I would like to see something more advanced, mentioned above.

You can say that he will got the time to learn and advance after he gets in, but if he really wants to advance he can do so just as fine as a registered user then come back after a week with a much better application.

hamster31

2011-12-12 13:11:22

Fine…I completely understand what you guys actually want and are looking for. I will take back my application and make this script better and then reapply when i have everything you need.

As i stated before, i like a challange and i will take it head on. If a mod would please reject my application and i will reapply when im done with my script completely with better everything.

Thank you :)

Sabzi

2011-12-12 13:32:27

From: hamster31
Fine…I completely understand what you guys actually want and are looking for. I will take back my application and make this script better and then reapply when i have everything you need.

As i stated before, i like a challange and i will take it head on. If a mod would please reject my application and i will reapply when im done with my script completely with better everything.

Thank you :)


These kind of posts makes me happy.
I didn't wanted to sound rude(and I hope I didn't) previously and now I am really looking forward your improvement. Although with this attitude all I can say that it's only a matter of time before you get in(but let's see some proof, ya know).

hamster31

2011-12-12 13:45:11

From: Sabzi
These kind of posts makes me happy.
I didn't wanted to sound rude(and I hope I didn't) previously and now I am really looking forward your improvement. Although with this attitude all I can say that it's only a matter of time before you get in(but let's see some proof, ya know).


lol kinda felt that post but no hardfeelings…always have a space for improvement. Like i said u will have your proof

Silent

2011-12-12 18:04:50

Sorry man, I'm going to vote no this time. You're really close, but once you get some Anti-Ban + Anti-Randoms you will be a lot more likely to be accepted.

Not to mention you could use some DTMs. I'm not going to say TPAs are a must because I didn't have any with my script that got my in (not that long ago). But DTMs are something that will really help you improve and make your life easier as a scripter.

Good luck with your next application man, can't wait to see the improvement you make, I like your attitude. :)

Sir R. M8gic1an

2011-12-12 18:22:15

Closed.

-RM