SRL Archive - Archive

fastler - SRL Member Application


fastler

2014-11-27 10:21:13

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


Are you affilated in anyway with Jagex LTD?
No

Were you Referred to SRL?



What is your general programming knowledge?
I started programming with SCAR way back when
mIRC Scripts
html + javascript + php
java
and last some years C++


Are you a member of any other communities?
Inactive account at RSBot


Tell us about yourself…
From: fastler
The first online game I ever registered for was RuneScape back in 2002, and I've been playing it on and off ever since. I have used, or attempted to use, SCAR to "enhance" game-play in other games as well. Lately I've used my knowledge to script privately and I haven't released a single script for RS as I always build them to fit my needs and fidget with the code on a daily basis. I'm currently 22 years old and studying Computer Science. I have never done anything noteworthy, but I do command a decent understanding of many world languages as I've lived in various countries. I'm a first generation American and I currently live in the US. If I were to be lax about naming my interests, I'd say I have a passion for all things internet, computers, atheism, and 420. Oh and I hate p2p, I'm an f2p pure. And as such I only play RS3.



Please show us one (or multiple) of your scripts.
program Prayer3;
{$DEFINE SMART}
{$I SRL-6/SRL.simba}

{*
Since the release of cremation I've been
working towards 99 prayer on my main.
I set SMART to use a custom width and height
(mimicking my browser) and the script
takes into account my interface layout.
Login, bankpin, camera angle are to be done manually.
I used to have comments, but as I fiddle
with the script daily the comments, over time,
got deleted or overwritten along with
the bits of code they described.
*}

procedure myPushButton(id: Integer)
begin
wait(gaussRangeInt(50, 100));
KeyDown(id);
wait(gaussRangeInt(85, 150));
KeyUp(id);
wait(gaussRangeInt(50, 100));
end

procedure myMMove(x, y: Integer)
begin
if not gaussRangeInt(-10, 10) = 0 then
mouse(x + RandomRange(-10, 10), y + RandomRange(-10, 10))
else
missMouse(Point(x + RandomRange(-10, 10), y + RandomRange(-10, 10)));
end

function bpUnlocked(): boolean
var
x, y: Integer;
lock := DTMFromString ('mLgAAAHicY2JgYFjNxMAwH4irGSHYMSSGQUrHmIELKAfCjFDMwAAAdl4DyQ==');
begin
result := true;
wait(gaussRangeInt(85, 150));
if findDTM(lock, x, y, IntToBox(1256, 309, 1587, 452)) then
result := false;
FreeDTM(lock);
end

procedure optClose
var
x, y: Integer;
opt := DTMFromString ('mQwAAAHicY2ZgYLjFyMBwHYgfA7EgEHMCsQAQCwtxM/z//5/h79+/DEAuHDMhYSAAAGhACPU=');
begin
if findDTM(opt, x, y, IntToBox(576, 1, 1247, 788)) then
mouseBox(IntToBox(1256, 309, 1587, 452));
FreeDTM(opt);
end

procedure randomMove
begin
if RandomRange(RandomRange(0, 10), RandomRange(15, 30)) < 4 then
mouse(Point(800 + gaussRangeInt(-200, 200), 420 + gaussRangeInt(-200, 200)));
end

procedure bank
var
x, y: Integer;
banker := DTMFromString ('mQwAAAHicY2aAAEYoLQClxYG4ra6eoTlNjGHvxo0MrEA+DDMjYSAAAKWCBOU=');
begin
if findDTM(banker, x, y, IntToBox(576, 1, 1150, 450)) then begin
if not IsArrInStr(['Bank'], getMouseOverText(true)) then
myMMove(x, y);
wait(gaussRangeInt(150, 250));
if IsArrInStr(['Bank'], getMouseOverText(true)) then
fastClick(mouse_Left);
wait(gaussRangeInt(250, 450));
end
FreeDTM(banker);
if not bpUnlocked then begin
myPushButton(49);
WaitFunc(@bpUnlocked, 50, 750);
end
end

function burn(): boolean
var
selected: Boolean;
x, y: Integer;
bone := DTMFromString ('mQwAAAHicY2ZgYFjLxMCwBIi3APFcRgaG+YwQemp/H0NfRztDUW4OAz9QHQwzImEgAABzMwi1');
begin
result := false;
if findDTM(bone, x, y, IntToBox(1256, 309, 1587, 452)) then
result := true;
if result then begin
wait(2850 + gaussRangeInt(-250, 250));
if not SimilarColors(GetColor(x, y), 2366475, 30) then begin
if y > 420 then
exit(false);
if (x > 1422) and (y > 383) then
exit(false);
findDTM(bone, x, y, IntToBox(1256, 309, 1296, 452));
myMMove(x, y);
fastClick(mouse_Right);
wait(gaussRangeInt(150, 250));
chooseOption.select(['Use Big bones']);
selected := true;
wait(gaussRangeInt(150, 250));
repeat
repeat
optClose;
randomMove;
wait(gaussRangeInt(150, 250));
if not findColorTolerance(x, y, 16777215, IntToBox(1256, 309, 1587, 452), 10) then
selected := false;
until (not selected or mainscreen.findObject(x, y,
[944279, 945050, 3763578, 1541059, 2386321, 2450827],
[3, 3, 3, 3, 3, 3],
colorSetting(2, 0.16, 0.61),
Point(800, 420),
40, 40, 75,
['Use Big', 'ig bo'],
IntToBox(576, 200, 933, 650),
mouse_Right));
wait(gaussRangeInt(150, 250));
until (not selected or chooseOption.select(['Use Big bones -> Fire']));
end else randomMove;
end
FreeDTM(bone);
end

procedure Pray
begin
while getColor(1594, 5) = 16240 do begin
wait(gaussRangeInt(85, 150));
if not burn then
bank;
end
end

begin
smartPlugins := ['d3d9.dll'];
disableSRLDebug := true;
mouseSpeed := 18;
initSmart(false);
Pray;
end.

NKN

2014-11-27 10:25:54

No, sorry.


The script is rather simple and you're not particularly active in the community.

Ross

2014-11-27 10:52:53

Same opinion as NKN, sorry.

Make some more recent contributions to the community and submit with a more advanced script next time :)

Hoodz

2014-11-27 11:37:11

no, same reason as nkn.

Kevin

2014-11-27 13:37:38

Hello fastler. While I have to agree with the above NKN's reasons, I feel like you need some direction to help you with future applications.

As for activity, the Member's position is actually more activity related than it is anything else (don't get me wrong, some scripting is required, but community position is the most important as there are other higher ranks where scripting becomes the focus). You've had 2 posts (outside of this application) in the past two years. Try and be more active in the community. You don't necessarily need to create public scripts, but things like simply helping out with questions or joining in on community direction threads goes an incredibly long way.

As for your script, it is fairly simple (sorry), and has a few bad design principles. As for design, I'll offer some advice here:

function bpUnlocked(): boolean
var
x, y: Integer;
lock := DTMFromString ('mLgAAAHicY2JgYFjNxMAwH4irGSHYMSSGQUrHmIELKAfCjFDMwAAAdl4DyQ==');//Every time you call this function will result in a new DTM being created and allocated.
Creating a DTM over and over isn't explicitly bad as you are freeing them, however it simply isn't necessary as DTM creation and freeing isn't exactly the simplest and fastest activity. As these are commonly called functions, I recommend making them created an individual time globally and simply reusing them (and freeing them at script end).


if findDTM(banker, x, y, IntToBox(576, 1, 1150, 450)) then begin
This has issues for a couple reasons. First, because you're using a dtm to find the banker, when a tpa would be significantly faster and more accurate. Actually, DTMs should really only be reasonably used for inventory and bank inventory related activities. And second, because you're using hard-coded values for mainscreen searching (the IntToBox) instead of just using the mainscreen bounds: mainScreen.getBounds().

Overall, to determine that a bank is actually open is really simple:
Bankscreen.isOpen(5000)//Checks constantly for 5 seconds and returns true as soon as the bank screen is open - false if never determined to be open

And finally, just overall the script complexity is fairly simple. It doesn't have any walking and there are no TPAs. Overall, there is nothing that even shows you have a solid grasp of the SRL include either. While those things are not always needed, there needs to be a case of incredible community activity or extreme community contributions otherwise in order to earn Member.

All in all, I'm sorry that I'm saying no right now, however you should be able to reapply in the future after having taken this into account and hopefully you'll get an improved reaction from the application. Also keep in mind, that technically the application isn't over yet and plenty of others could still vote yes after us. Good luck!

The Mayor

2014-11-27 23:05:27

If I don't recogise your forum name, it's not a good sign (in most cases). Looks like you've got the basics down, but more advanced colour-related stuff would be nice.

fastler

2014-11-28 07:08:32

I fully understand. I lack the community interaction that's undeniable. As for the script though, I have been been programming simple scripts in a similar fashion for over a year now. No matter their simplicity they got the job done. Believe it or not this one of the more complex scripts I've made recently. I write these scripts solely for myself and cut corners as much as possible. I wouldn't call this script an ideal display of my scripting/SRL knowledge at all, yet it is the best I have to offer.

I could defend my non-usage of certain SRL functions, for example, in my customized interface layout xp pop-ups often cover the bank interface in a way that slows down the detection of Bankscreen.isOpen and so I found it faster to detect the backpack being locked/unlocked. Also, it is more accurate to detect the lock symbol in the backback and not the actual bankscreen interface itself as the backpack lock symbol comes up only after the bankscreen interface is fully ready to use. (ie. quickwithdraw)

I prefer not to spam click 1 until the bank interface disappears, so I set the script up in that way. But in no way am I satisfied with the script, literally some hours after I posted this application I was toying with the idea of moving some dtms up a level, but rather for the reason of simplifying cleanup.

I know I don't talk much, I never really have, and I thought that being able to see more of the forums would give me access to higher level scripting examples to learn from. I applied too quickly before getting better situated in the community and I see that now. Thank you for your consideration nonetheless. ^_^ I'll be seeing you all.
Maybe I can release some proper public scripts for fun as a way to improve my coding and get to know the community better?

EDIT: Blockoftext and simplification

Hoodz

2014-11-28 07:23:53

From: fastler

Maybe I can release some proper public scripts for fun as a way to improve my coding and get to know the community better?


yes do that!
you will improve your scripting abilities + you get more active.

im sure if you are more active and use some more advanced color finding methods you'll get in.

Ross

2014-11-28 11:34:30

From: fastler
I fully understand. I lack the community interaction that's undeniable. As for the script though, I have been been programming simple scripts in a similar fashion for over a year now. No matter their simplicity they got the job done. Believe it or not this one of the more complex scripts I've made recently. I write these scripts solely for myself and cut corners as much as possible. I wouldn't call this script an ideal display of my scripting/SRL knowledge at all, yet it is the best I have to offer.

I could defend my non-usage of certain SRL functions, for example, in my customized interface layout xp pop-ups often cover the bank interface in a way that slows down the detection of Bankscreen.isOpen and so I found it faster to detect the backpack being locked/unlocked. Also, it is more accurate to detect the lock symbol in the backback and not the actual bankscreen interface itself as the backpack lock symbol comes up only after the bankscreen interface is fully ready to use. (ie. quickwithdraw)

I prefer not to spam click 1 until the bank interface disappears, so I set the script up in that way. But in no way am I satisfied with the script, literally some hours after I posted this application I was toying with the idea of moving some dtms up a level, but rather for the reason of simplifying cleanup.

I know I don't talk much, I never really have, and I thought that being able to see more of the forums would give me access to higher level scripting examples to learn from. I applied too quickly before getting better situated in the community and I see that now. Thank you for your consideration nonetheless. ^_^ I'll be seeing you all.
Maybe I can release some proper public scripts for fun as a way to improve my coding and get to know the community better?

EDIT: Blockoftext and simplification


Absolutely, great attitude! Looking forward to your contributions and next app :)

bonsai

2014-11-28 11:39:48

From: hoodz
yes do that!
you will improve but your scripting abilities + you get more active.

im sure if you are more active and use some more advanced color finding methods then you'll get in.


I agree, and I would add, just do one script. Supporting a script can be work and if you pick a decent task it should showcase your abilities.

There's plenty of new people that post for help. If you see one, jump in and offer what you've learned!

Janilabo

2014-11-28 12:55:49

From: fastler
I fully understand. I lack the community interaction that's undeniable. As for the script though, I have been been programming simple scripts in a similar fashion for over a year now. No matter their simplicity they got the job done. Believe it or not this one of the more complex scripts I've made recently. I write these scripts solely for myself and cut corners as much as possible. I wouldn't call this script an ideal display of my scripting/SRL knowledge at all, yet it is the best I have to offer.

I could defend my non-usage of certain SRL functions, for example, in my customized interface layout xp pop-ups often cover the bank interface in a way that slows down the detection of Bankscreen.isOpen and so I found it faster to detect the backpack being locked/unlocked. Also, it is more accurate to detect the lock symbol in the backback and not the actual bankscreen interface itself as the backpack lock symbol comes up only after the bankscreen interface is fully ready to use. (ie. quickwithdraw)

I prefer not to spam click 1 until the bank interface disappears, so I set the script up in that way. But in no way am I satisfied with the script, literally some hours after I posted this application I was toying with the idea of moving some dtms up a level, but rather for the reason of simplifying cleanup.

I know I don't talk much, I never really have, and I thought that being able to see more of the forums would give me access to higher level scripting examples to learn from. I applied too quickly before getting better situated in the community and I see that now. Thank you for your consideration nonetheless. ^_^ I'll be seeing you all.
Maybe I can release some proper public scripts for fun as a way to improve my coding and get to know the community better?

EDIT: Blockoftext and simplification
Hey man,

I voted no, because:
1. You had less than 10 recent posts (activity-wise)
2. Script was a bit too simple, as @Kevin already pointed out above (with nice guidelines aswell).

Just keep developing stuff (contribute code/projects to the community) + stick with that positive attitude and you'll definitely make it through in the future!
I am really looking forward to your contributions in the future, because I can smell great deal of potential with those skills you mentioned in the OP (C++/Java/PHP).

Daniel

2014-11-30 21:17:12

Hi fastler.

It seems like you won't be getting in this time. :(

Don't feel disheartened though! Take into account what each member here has said and use that information to improve your next application.

You may apply again in two weeks or any later date whenever you think you're ready.

Regards,
~ Daniel. :)