SRL Archive - Jr. Member RS3 Outdated Scripts

Ross's Tanner


Ross

2014-08-16 13:58:38





What it does

Tans hides in Burthorpe!


How to set it up

- Set up Preset 1 or 2 to be a full inventory of hides
- Start at Burthorpe Bank
- Run once to download the map.
- Press Play and Fill out Player Form








Version 1.0 Re-Released!

v1.0 Base re-release![HR][/HR]

Camel

2014-08-16 14:08:55

Nice release, everyone had been asking for this it seemed

You should add some failsafes to your script to increase its stability

Here is your openbank procedure, if it doesn't find the banker right away it will just exit

procedure findBankMan();
var
x, y, i: integer;
TPA: TPointArray;
ATPA: T2DPointArray;

begin

if not isLoggedIn() then
exit;

minimap.setAngle(MM_DIRECTION_NORTH);
mainScreen.setAngle(MS_ANGLE_HIGH);


findColorsSpiralTolerance(x, y, TPA, 2851656, mainScreen.getBounds(), 13, colorSetting(2, 1.12, 0.73));

if (Length(TPA) < 1) then
exit;

ATPA := TPA.toATPA(15, 30);
ATPA.sortFromMidPoint(mainscreen.playerPoint);
smartImage.debugATPA(ATPA);

for i := 0 to high(ATPA) do
begin
mouse(middleTPA(ATPA[i]), MOUSE_MOVE);
smartImage.clear();
writeLn('Opening Bank');
if isMouseOverText(['anker'], 500) then
begin
if not bankScreen.isOpen() then
begin
fastClick(MOUSE_LEFT);
wait (randomRange(1000,2000));
end;
end;
end;
end;

Maybe the walk to bank didn't work quite right randomly due to lag
You could add a failsafe for that

procedure findBankMan();
var
x, y, i: integer;
TPA: TPointArray;
ATPA: T2DPointArray;
BankTimer : TTimeMarker; // A timer to avoid infinite loops

begin
BankTimer.start();
repeat // It will repeat searching for the bank until it succeeds
if not isLoggedIn() then
exit;

minimap.setAngle(MM_DIRECTION_NORTH);
mainScreen.setAngle(MS_ANGLE_HIGH);


findColorsSpiralTolerance(x, y, TPA, 2851656, mainScreen.getBounds(), 13, colorSetting(2, 1.12, 0.73));

if (Length(TPA) < 1) then
walkToBank; // if it doesn't find the banker right away it will try walking to the bank again
//exit;

ATPA := TPA.toATPA(15, 30);
ATPA.sortFromMidPoint(mainscreen.playerPoint);
smartImage.debugATPA(ATPA);

for i := 0 to high(ATPA) do
begin
mouse(middleTPA(ATPA[i]), MOUSE_MOVE);
smartImage.clear();
writeLn('Opening Bank');
if isMouseOverText(['anker'], 500) then
begin
fastClick(MOUSE_LEFT);
wait (randomRange(1000,2000));
if bankScreen.isOpen() then
begin
exit; // if the bank is open it will just exit the procedure completely
end;
end;
until (bankScreen.isOpen()) or (BankTimer.getTime() > 30000);
// if it tries and fails for 30 seconds to open the bank it will just go on anyways, or you could end the script.
end;

"Continues to try to find the other Bankers mouseover text after bank opens." The changes here should fix that


Also I cut out an end; somewhere on accident I think….

Ross

2014-08-16 18:21:30

From: buttdestroyr
Nice release, everyone had been asking for this it seemed

You should add some failsafes to your script to increase its stability

Here is your openbank procedure, if it doesn't find the banker right away it will just exit

procedure findBankMan();
var
x, y, i: integer;
TPA: TPointArray;
ATPA: T2DPointArray;

begin

if not isLoggedIn() then
exit;

minimap.setAngle(MM_DIRECTION_NORTH);
mainScreen.setAngle(MS_ANGLE_HIGH);


findColorsSpiralTolerance(x, y, TPA, 2851656, mainScreen.getBounds(), 13, colorSetting(2, 1.12, 0.73));

if (Length(TPA) < 1) then
exit;

ATPA := TPA.toATPA(15, 30);
ATPA.sortFromMidPoint(mainscreen.playerPoint);
smartImage.debugATPA(ATPA);

for i := 0 to high(ATPA) do
begin
mouse(middleTPA(ATPA[i]), MOUSE_MOVE);
smartImage.clear();
writeLn('Opening Bank');
if isMouseOverText(['anker'], 500) then
begin
if not bankScreen.isOpen() then
begin
fastClick(MOUSE_LEFT);
wait (randomRange(1000,2000));
end;
end;
end;
end;

Maybe the walk to bank didn't work quite right randomly due to lag
You could add a failsafe for that

procedure findBankMan();
var
x, y, i: integer;
TPA: TPointArray;
ATPA: T2DPointArray;
BankTimer : TTimeMarker; // A timer to avoid infinite loops

begin
BankTimer.start();
repeat // It will repeat searching for the bank until it succeeds
if not isLoggedIn() then
exit;

minimap.setAngle(MM_DIRECTION_NORTH);
mainScreen.setAngle(MS_ANGLE_HIGH);


findColorsSpiralTolerance(x, y, TPA, 2851656, mainScreen.getBounds(), 13, colorSetting(2, 1.12, 0.73));

if (Length(TPA) < 1) then
walkToBank; // if it doesn't find the banker right away it will try walking to the bank again
//exit;

ATPA := TPA.toATPA(15, 30);
ATPA.sortFromMidPoint(mainscreen.playerPoint);
smartImage.debugATPA(ATPA);

for i := 0 to high(ATPA) do
begin
mouse(middleTPA(ATPA[i]), MOUSE_MOVE);
smartImage.clear();
writeLn('Opening Bank');
if isMouseOverText(['anker'], 500) then
begin
fastClick(MOUSE_LEFT);
wait (randomRange(1000,2000));
if bankScreen.isOpen() then
begin
exit; // if the bank is open it will just exit the procedure completely
end;
end;
until (bankScreen.isOpen()) or (BankTimer.getTime() > 30000);
// if it tries and fails for 30 seconds to open the bank it will just go on anyways, or you could end the script.
end;

"Continues to try to find the other Bankers mouseover text after bank opens." The changes here should fix that


Also I cut out an end; somewhere on accident I think….




I got the timer to work, however I couldn't get get the repeat…until loop to work because it kept expecting an "end." I'm going to tool around with that a bit more.

Also, how do I call on just the last point in the walkToBank procedure? Just putting "walkToBank;" or even "walkToBank();" gives me an unknown declaration error.

Camel

2014-08-17 01:18:00

From: therossity
I got the timer to work, however I couldn't get get the repeat…until loop to work because it kept expecting an "end." I'm going to tool around with that a bit more.

Also, how do I call on just the last point in the walkToBank procedure? Just putting "walkToBank;" or even "walkToBank();" gives me an unknown declaration error.


Yeah somewhere in the code I made I accidentally deleted an end and forgot where it was, you'll have to check for that.

Also, simba has some weird error where if you call a method in another method, the method you call within a method has to be declared before the other method

so just copy and past the code so its kinda like this

procedure WalkToBank(); <=== Before findbanker
// code

procedure FindBanker();
// code
if (thing) then walktobank();

The Mayor

2014-08-17 02:01:47

From: buttdestroyr
Yeah somewhere in the code I made I accidentally deleted an end and forgot where it was, you'll have to check for that.

Also, simba has some weird error where if you call a method in another method, the method you call within a method has to be declared before the other method

so just copy and past the code so its kinda like this

procedure WalkToBank(); <=== Before findbanker
// code

procedure FindBanker();
// code
if (thing) then walktobank();


Or you can just call forward on the procedure/function


procedure walkToBank(); forward;

procedure FindBanker();
begin
walkToBank();
end;


procedure walkToBank();
begin

end;

twirap

2014-08-17 04:08:23

I got this to work after re-writing the script using a different script but I used your find ellis function and it works great but sometimes it gets stuck because it can't right click ellis and spawn the menu option….

This is the error I get:

– TRSChooseOption._select():
—- ERROR: Failed to find any options



I tried to fix this by trying to left click a dragon hide in my inventory and then left click on ellis but I don't know how to left click an item in my inventory….Anyone know how to fix the above error OR left click an item in inventory?

The Mayor

2014-08-17 04:11:27

From: twirap
left click an item in inventory?


tabBackpack.mouseSlot(1, MOUSE_LEFT);

twirap

2014-08-17 04:45:15

Ah stupid of me. I realized shortly after I posted that is how you do it. It was in your tutorial -_-. My bad.

So now what I am doing instead of doing the left click method is if it cannot find the menu after 3 tries then using lodestone teleport and then retry converting the hides.

Seems to be fully fail safe now but IDK if I should post code since I heavily modified someone's else's script.

Ross

2014-08-17 07:11:46

From: twirap
Ah stupid of me. I realized shortly after I posted that is how you do it. It was in your tutorial -_-. My bad.

So now what I am doing instead of doing the left click method is if it cannot find the menu after 3 tries then using lodestone teleport and then retry converting the hides.

Seems to be fully fail safe now but IDK if I should post code since I heavily modified someone's else's script.


You could post it here to help me out instead :p

Ross

2014-08-17 07:20:13

From: The Mayor
Or you can just call forward on the procedure/function


procedure walkToBank(); forward;

procedure FindBanker();
begin
walkToBank();
end;


procedure walkToBank();
begin

end;


Thank you, this worked great!

Ross

2014-08-17 07:21:56

From: buttdestroyr
Yeah somewhere in the code I made I accidentally deleted an end and forgot where it was, you'll have to check for that.

Also, simba has some weird error where if you call a method in another method, the method you call within a method has to be declared before the other method

so just copy and past the code so its kinda like this

procedure WalkToBank(); <=== Before findbanker
// code

procedure FindBanker();
// code
if (thing) then walktobank();




I implemented all of the suggested changes, but the script still keeps looking for the other TPAs after the bank screen is open.

mitchell li

2014-08-17 09:40:52

If you use the tanner in canifis the script should run smoother because the canifis tanner doesn't move. He has a red hat. You could use the bank booth glass to click the bank there.

Ross

2014-08-17 11:15:25

From: mitchell li
If you use the tanner in canifis the script should run smoother because the canifis tanner doesn't move. He has a red hat. You could use the bank booth glass to click the bank there.


I will probably get around to making that eventually but Al Kharid is the most requested place as it has no requirements.

Edit: I've released a new version with progress reports, let me know what you guys think!

The Spark

2014-08-17 13:32:13

From: therossity
I will probably get around to making that eventually but Al Kharid is the most requested place as it has no requirements.

Edit: I've released a new version with progress reports, let me know what you guys think!


There may or may not be a canifis tanner in the higher up sections ^_^

Ross

2014-08-17 13:34:57

From: sparkyownage
There may or may not be a canifis tanner in the higher up sections ^_^


One of these days I'll get there! Looking at the reqs make me think I have a little while longer (in terms of scripting progress) before I should apply.

The Spark

2014-08-17 13:37:52

From: therossity
One of these days I'll get there! Looking at the reqs make me think I have a little while longer (in terms of scripting progress) before I should apply.


Apply? That specific script may or may not be a little lower than you think :) Maybe if you got a light green name you could view it ^_^

Ross

2014-08-17 13:40:31

From: sparkyownage
Apply? That specific script may or may not be a little lower than you think :) Maybe if you got a light green name you could view it ^_^


:eek::eek::eek::eek:

WOW. This whole time I've been looking at the members reqs thinking it meant applying for Junior Member………..

Edit: Looks like I'll be eligible for junior members after one more post. Someone give me good feedback that I can reply to!

Tuskyman

2014-08-17 14:15:37

Dude, love this tanner, finally I can start profiting again :D

Tuskyman

2014-08-17 14:44:23

So far I've noticed it stops tanning after a while and just runs back and forth from the bank to the tanner placing and taking cowhides in and out of the bank :/


Edit: Monitored it and watched it for a while, sometimes instead of clicking the tan button it will just start walking back to the bank.

Ross

2014-08-17 14:50:43

From: Tuskyman
So far I've noticed it stops tanning after a while and just runs back and forth from the bank to the tanner placing and taking cowhides in and out of the bank :/


Yeah that's the bug that keeps happening. It fails to find Ellis and instead of retrying just skips it and moves on to walking back to the bank. I'm working on trying to get rid of it now!

Tuskyman

2014-08-17 15:22:30

From: therossity
Yeah that's the bug that keeps happening. It fails to find Ellis and instead of retrying just skips it and moves on to walking back to the bank. I'm working on trying to get rid of it now!


Oh right, well I thought inputting would help haha, hope you fix it soon, other than the occasional fail it's working pretty smooth, tanned over 1000 hides so far :D

Ross

2014-08-17 15:33:34

From: Tuskyman
Oh right, well I thought inputting would help haha, hope you fix it soon, other than the occasional fail it's working pretty smooth, tanned over 1000 hides so far :D


Okay so I'm pretty sure I killed two bugs with the last update! Give it a try and tell me how it goes!

Edit: Ah still seems like it's walking back after 2-3 tries at Ellis. This is really stumping me.

Edit2: Also I broke the progress report in 1.2, so I need to uncomment that in the next one.

Tuskyman

2014-08-17 15:39:24

From: therossity
Okay so I'm pretty sure I killed two bugs with the last update! Give it a try and tell me how it goes!

Edit: Ah still seems like it's walking back after 2-3 tries at Ellis. This is really stumping me.

Edit2: Also I broke the progress report in 1.2, so I need to uncomment that in the next one.


Downloaded it now :) I'll tell you how stuff goes

Edit: Aaaaaand it didn't find Ellis on it's first try X'D

Ross

2014-08-17 15:40:38

From: Tuskyman
Downloaded it now :) I'll tell you how stuff goes

Edit: Aaaaaand it didn't find Ellis on it's first try X'D


Reuploaded it, try again. Debugging is on this time so tell me if what errors pop up if it doesn't find Ellis.

Edit: It's doing well on my end. I'm at about 2100 hides/hour and 1.5m gp/hr

Tuskyman

2014-08-17 15:44:26

From: therossity
Reuploaded it, try again. Debugging is on this time so tell me if what errors pop up if it doesn't find Ellis.


Will do :)

Edit 1: Hasn't failed in a while now, working pretty soundly however ellis has not been outside yet.

Edit 2: Here's when it bugs, it just seems to skip the step which is strange

Walking to Ellis
– sps.getPlayerPos(): result = {X = 78, Y = 262}, took 187 ms
– sps.getPlayerPos(): result = {X = 102, Y = 222}, took 187 ms
—- Waiting while the player is moving…
– sps.walkPath(): result = True
==========TheRossity Al Kharid Tanner=========
Trips completed: 11
Leather Tanned: 308
Profit: 35728
Hides tanned per hour: 1817
ProfitPerHour 210772
==============================================
Walking back to Bank
– sps.getPlayerPos(): result = {X = 102, Y = 146}, took 172 ms
– Succesfully freed SMART[4812]
Successfully executed.

mitchell li

2014-08-17 15:48:45

From: therossity
I will probably get around to making that eventually but Al Kharid is the most requested place as it has no requirements.

Edit: I've released a new version with progress reports, let me know what you guys think!


You can use ring of recoil. You just have to be a member.

Ross

2014-08-17 15:51:34

You can use ring of recoil. You just have to be a member.


Huh?

Tuskyman

2014-08-17 15:59:23

From: therossity
Huh?


Check my last post, edited it with results.

Ross

2014-08-17 16:03:52

From: Tuskyman
Will do :)

Edit 1: Hasn't failed in a while now, working pretty soundly however ellis has not been outside yet.

Edit 2: Here's when it bugs, it just seems to skip the step which is strange

Walking to Ellis
– sps.getPlayerPos(): result = {X = 78, Y = 262}, took 187 ms
– sps.getPlayerPos(): result = {X = 102, Y = 222}, took 187 ms
—- Waiting while the player is moving…
– sps.walkPath(): result = True
==========TheRossity Al Kharid Tanner=========
Trips completed: 11
Leather Tanned: 308
Profit: 35728
Hides tanned per hour: 1817
ProfitPerHour 210772
==============================================
Walking back to Bank
– sps.getPlayerPos(): result = {X = 102, Y = 146}, took 172 ms
– Succesfully freed SMART[4812]
Successfully executed.



Okay, yeah that's what's weird to me. It seems like if the script finds him but misses, it tries again. However, if it just can't find him at all it just continues on. Maybe I can do a camera rotation if it can't find him, but I'm not sure how to fit that into a for…do.

Can anyone smarter than me chime in?

Tuskyman

2014-08-17 16:07:36

From: therossity
Okay, yeah that's what's weird to me. It seems like if the script finds him but misses, it tries again. However, if it just can't find him at all it just continues on. Maybe I can do a camera rotation if it can't find him, but I'm not sure how to fit that into a for…do.

Can anyone smarter than me chime in?


Rotating wont help when you are stood on ellis, you should just make it wait before trying to find ellis again.

Ross

2014-08-17 16:09:41

From: Tuskyman
Rotating wont help when you are stood on ellis, you should just make it wait before trying to find ellis again.


Good call.

KeepBotting

2014-08-17 16:16:26

Wow, already two pages. That's pretty cool.

Script is pretty solid, looked through it earlier. There are a few things you could be doing differently, and a few failsafes you could add.

Skype me later, I'm about to go out for a bit but I'll be back before the day is out.

Ross

2014-08-17 16:24:23

From: Tuskyman
Rotating wont help when you are stood on ellis, you should just make it wait before trying to find ellis again.



Okay, I just reuploaded the latest version. Ellis should be fixed. Let's just say I had something really stupid still left in my findEllis function. If it still bugs, then I honestly am lost!



From: KeepBotting
Wow, already two pages. That's pretty cool.

Script is pretty solid, looked through it earlier. There are a few things you could be doing differently, and a few failsafes you could add.

Skype me later, I'm about to go out for a bit but I'll be back before the day is out.



Thank you! I will definitely take you up on that. (Thank God we're both on the East Coast)

Tuskyman

2014-08-17 16:47:55

From: therossity
Okay, I just reuploaded the latest version. Ellis should be fixed. Let's just say I had something really stupid still left in my findEllis function. If it still bugs, then I honestly am lost!

I'm still using the version from before and it is working perfectly, tanned 2800 cowhides so far, got 2500 left :P

Ross

2014-08-17 17:04:05

From: Tuskyman

I'm still using the version from before and it is working perfectly, tanned 2800 cowhides so far, got 2500 left :P


That's great! In the newest version, though, it waits until Ellis can be found so you'll never have the issue of running back to the bank without tanning the leather.

pipos1

2014-08-17 17:25:35

this is really good for a novice scripter
sometime it go to Ellis right click him but it doesnt tan and go back to bank

Ross

2014-08-17 17:34:51

From: pipos1
this is really good for a novice scripter
sometime it go to Ellis right click him but it doesnt tan and go back to bank


interesting. do you mean it actually opens the production screen and doesn't click tan? I'll have to add a failsafe for that.

The Mayor

2014-08-17 18:09:33

Instead of making people scroll half way down the script to input an option, you should have a constant at the top. Something like:

const
(* VALID HIDE_TYPE OPTIONS: *)
(* 'Leather', 'Hard', 'Green', 'Blue', Red, 'Black', or 'Royal' *)

HIDE_TYPE = 'Leather';

and then in your convertProfits you can do something like:


procedure convertProfits();
begin
//we convert HIDE_TYPE to lowercase incase some noobs type 'leather' instead of 'Leather'
case lowercase(HIDE_TYPE) of
'leather': LeatherProfit := LeatherProfit;
'hard': LeatherProfit := HardProfit;
'green': LeatherProfit := GreenProfit;
'blue': LeatherProfit := BlueProfit;
'red': LeatherProfit := RedProfit;
'black': LeatherProfit := BlackProfit;
'royal': LeatherProfit := RoyalProfit;
else begin
writeLn('You didn''t enter a valid HIDE_TYPE');
terminateScript();
end;

end;

end;

Or if you wanted to get rid of all of those price variables altogether you could do it in one go:

leather - (raw material + cost to make)


procedure convertProfits();
begin

case lowercase(HIDE_TYPE) of
'leather': LeatherProfit := getGEPrice('Leather') - getGEPrice('Cowhide');
'hard': LeatherProfit := getGEPrice('Hard_leather') - (getGEPrice('Cowhide') + 3);
'green': LeatherProfit := getGEPrice('Green_dragonhide') - (getGEPrice('Green_d-leather') + 20);
'blue': LeatherProfit := getGEPrice('Blue_dragonhide') - (getGEPrice('Blue_d-leather') + 20);

//etc

else begin
writeLn('You didn''t enter a valid HIDE_TYPE');
terminateScript();
end;

end;

end;

and if you didn't want it to walk back to the bank without tanning hides, you could restructure your mainLoop so it ONLY walks to the bank if it has leather in the backpack:


repeat
if isLeatherInPack() then
begin
walkToBank();
findBankMan();
bankHides();
end;

walkToEllis();
findEllis();
tanHides();

progressReport();
until (false);

but then you would need write the isLeatherInPack() function. Easiest way is probably using DTMs, but you would have to make quite a few since there is heaps of leather types. Instead of writing something like


if findDTM(redLeatherDTM, x, y etc..) or findDTM(blueLeatherDTM, etc..) or findDTM(blackLeatherDTM, etc...) etc.. then
begin
writeLn('We have leather in our pack');
result := true;
end;

What you could do is put your leather DTMs into an array, and loop through them. If it finds any of the leather DTMs, function results true, and it will know it has to run to bank.


function isLeatherInPack(): boolean;
var
i, x, y: integer;
leatherDTMs: array [0..6] of integer;
begin

leatherDTMs[0] := DTMFromString('mrAAAAHic42BgYGhkYmBoA'); //Leather (these are made-up strings)
leatherDTMs[1] := DTMFromString('mrAAAAHic42BgYGhkYmBoA'); // Hard leather
leatherDTMs[2] := DTMFromString('mrAAAAHic42BgYGhkYmBoA'); // Green
leatherDTMs[3] := DTMFromString('mrAAAAHic42BgYGhkYmBoA'); // Blue
leatherDTMs[4] := DTMFromString('mrAAAAHic42BgYGhkYmBoA'); // Red
leatherDTMs[5] := DTMFromString('mrAAAAHic42BgYGhkYmBoA'); // Black
leatherDTMs[6] := DTMFromString('mrAAAAHic42BgYGhkYmBoA'); // Royal

for i := 0 to high(leatherDTMs) do //looping from 0 to 6
if findDTM(leatherDTMs[i], x, y, tabBackpack.getBounds()) then
begin
writeLn('Found leather in backpack');
result := true;
break; //break from the loop if found
end;

freeDTMs(leatherDTMs);
end;


You could also make leatherDTMs a global variable, load the DTMs at the start of the script (and free them on terminate), so you don't have to load/free them each time you check the backpack.

Xiiiii

2014-08-17 19:49:36

Doesn't seem to be working for me. The script doesn't print anything in the simba client and doesn't do anything. I've got the image saved in the C:\Simba\Includes\SPS\img\runescape_other folder, and the 'LeatherProfit := BlackProfit;' has been changed. Did I miss something?
I've got a screenshot of my setup, though I don't have the postcount to post it

Ross

2014-08-17 20:07:54

From: The Mayor
Instead of making people scroll half way down the script to input an option, you should have a constant at the top. Something like:



Or if you wanted to get rid of all of those price variables altogether you could do it in one go:

leather - (raw material + cost to make)



and if you didn't want it to walk back to the bank without tanning hides, you could restructure your mainLoop so it ONLY walks to the bank if it has leather in the backpack:



but then you would need write the isLeatherInPack() function. Easiest way is probably using DTMs, but you would have to make quite a few since there is heaps of leather types. Instead of writing something like



What you could do is put your leather DTMs into an array, and loop through them. If it finds any of the leather DTMs, function results true, and it will know it has to run to bank.


You could also make leatherDTMs a global variable, load the DTMs at the start of the script (and free them on terminate), so you don't have to load/free them each time you check the backpack.



I could cry, thank you for this.

Ross

2014-08-17 20:16:34

From: Xiiiii
Doesn't seem to be working for me. The script doesn't print anything in the simba client and doesn't do anything. I've got the image saved in the C:\Simba\Includes\SPS\img\runescape_other folder, and the 'LeatherProfit := BlackProfit;' has been changed. Did I miss something?
I've got a screenshot of my setup, though I don't have the postcount to post it


Did you start at the bank? Did you follow the setup instructions for the Simba client? Is this the first script you've used?

pipos1

2014-08-17 20:34:12

yeah a failsafe would be perfect it does open the production and just click on minimap to walkback

Xiiiii

2014-08-17 20:35:26

From: therossity
Did you start at the bank? Did you follow the setup instructions for the Simba client? Is this the first script you've used?


I've started the script at the bank, without a client open (doesn't auto login), with/without hides in inventory, and with the bank screen open/closed. I've followed the setup instructions, uninstalled/reinstalled simba and followed them again (didn't work). I've run multiple scripts before (bonsai fighter, VEB Miner). I'm using DirectX with the DirectX plugin though, which may be the problem (my laptop can't run OpenGL)

Ross

2014-08-17 20:38:25

From: Xiiiii
I've started the script at the bank, without a client open (doesn't auto login), with/without hides in inventory, and with the bank screen open/closed. I've followed the setup instructions, uninstalled/reinstalled simba and followed them again (didn't work). I've run multiple scripts before (bonsai fighter, VEB Miner). I'm using DirectX with the DirectX plugin though, which may be the problem (my laptop can't run OpenGL)



Yeah that's the problem. Is the problem with OpenGL on your laptop that the minimap won't load? What I did was home tele to Yanille, home to Al Kharid, exit to lobby, logoff and login and the minimap came back. Sucks but that was the only way I was able to code on my laptop when I was away from home today.

Xiiiii

2014-08-17 20:42:18

Switching to OpenGL crashes RS, it seems to be an issue with Intel integrated graphics cards or something.

Ross

2014-08-17 21:00:08

From: Xiiiii
Switching to OpenGL crashes RS, it seems to be an issue with Intel integrated graphics cards or something.


Like the whitescreen? That's because you're in RS on directx first. Try configuring it to OpenGL before you even log in.

Xiiiii

2014-08-17 21:20:30

From: therossity
Like the whitescreen? That's because you're in RS on directx first. Try configuring it to OpenGL before you even log in.


Unfortunately, that still crashes my game. Just a suggestion though, have you thought of adding in spirit terrobird/tireless run scroll support?

Ross

2014-08-17 21:27:54

From: Xiiiii
Unfortunately, that still crashes my game. Just a suggestion though, have you thought of adding in spirit terrobird/tireless run scroll support?


Haha, that could be in the far future, but right now I'd like to focus on script optimization and maybe adding directX support before adding too many more features.

pipos1

2014-08-17 21:58:02

here i did 1k hides while i was in shower :) i did 500k profit in about 30min

the script only did 6 fail run thats why on the picture its 1204 hides –>[ATTACH=CONFIG]23828[/ATTACH]

normally 1k hides is 37 run :p

Xiiiii

2014-08-17 22:17:14

From: therossity
Haha, that could be in the far future, but right now I'd like to focus on script optimization and maybe adding directX support before adding too many more features.


I see, fair enough. Tried your script on another computer and it's been running well. Ill post a proggy once it's done.
Also, it sometimes doesn't see Elis when he's standing under the doorway, which causes the bot to take ~twice as long for that run. The failsafe means it isn't that much of a problem, but making it change the camera angle/etc. instead would probably make it more efficeint, if you ever get around to it.
http://puu.sh/aX4xi/c644ff87a7.jpg

The Mayor

2014-08-17 23:18:42

From: pipos1
i was in shower :) about 30min


Damn you take long showers. What do you do in there?

The Spark

2014-08-17 23:35:11

From: The Mayor


but then you would need write the isLeatherInPack() function. Easiest way is probably using DTMs, but you would have to make quite a few since there is heaps of leather types.


Isn't it easier just to check for a change in pixels in the backpack?


function TRSTabBackPack.waitSlotPixelChange(slot, waitTime: integer): boolean;

Ross

2014-08-17 23:42:16

From: sparkyownage
Isn't it easier just to check for a change in pixels in the backpack?


function TRSTabBackPack.waitSlotPixelChange(slot, waitTime: integer): boolean;




Lol, if so I just wasted a TON of time with DTMs :P

About to release version 2.0

pipos1

2014-08-17 23:42:53

From: The Mayor
Damn you take long showers. What do you do in there?

hehe i love long warm shower

The Mayor

2014-08-17 23:52:16

From: sparkyownage
Isn't it easier just to check for a change in pixels in the backpack?


function TRSTabBackPack.waitSlotPixelChange(slot, waitTime: integer): boolean;


No, because we are not waiting for a change, we want to see what is currently in the backpack, so the script knows how to proceed.

From: therossity
Lol, if so I just wasted a TON of time with DTMs :P

About to release version 2.0

Ross

2014-08-17 23:55:33

From: The Mayor
No, because we are not waiting for a change, we want to see what is currently in the backpack, so the script knows how to proceed.


For some reason I can't get the script to free the DTMs.

I even created a freeDTMs procedure and still can't get it to work. The one in your suggestion doesn't work either.

procedure freeTheDTMs
begin
freeDTMs(leatherDTMs);
end;

addOnTerminate('freeTheDTMs');


No compiling error, the script just says "the following not freed" when I terminate.

The Mayor

2014-08-17 23:56:59

From: therossity
For some reason I can't get the script to free the DTMs.

I even created a freeDTMs procedure and still can't get it to work. The one in your suggestion doesn't work either.

procedure freeTheDTMs
begin
freeDTMs(leatherDTMs);
end;

addOnTerminate('freeTheDTMs');


No compiling error, the script just says "the following not freed" when I terminate.


Well what's the error?

Ross

2014-08-17 23:58:37

From: The Mayor
Well what's the error?


There is no error.

"The following DTMs were not freed: [0, 1, 2, 3, 4, 5]" displays after terminating the script. Let me check the debug.

Edit: Yeah nothing in the debug either. Any ideas? I don't want to release the next version without freed DTMs.

The Mayor

2014-08-18 00:10:34

From: therossity
There is no error.

"The following DTMs were not freed: [0, 1, 2, 3, 4, 5]" displays after terminating the script. Let me check the debug.

Edit: Yeah nothing in the debug either. Any ideas? I don't want to release the next version without freed DTMs.


Don't worry too much about it, I won't be able to see without seeing all your code.

mitchell li

2014-08-19 15:47:29

I could not get the script to work properly. I tried getting new colors to search for but my rs man would just walk back and forth on the mini map. Any help?

Ross

2014-08-19 19:47:39

From: mitchell li
I could not get the script to work properly. I tried getting new colors to search for but my rs man would just walk back and forth on the mini map. Any help?


Version 2.0 has been released. Give that a whirl and report back!

Tel Riker

2014-08-20 04:19:45

Script works up until the point of finding Ellis. It will collect hides then walk to the tanning shop and just stand there. The script seems to think that it is completing runs although it doesn't even run back to the bank to collect more.

Ross

2014-08-20 10:58:37

From: Tel Riker
Script works up until the point of finding Ellis. It will collect hides then walk to the tanning shop and just stand there. The script seems to think that it is completing runs although it doesn't even run back to the bank to collect more.


What hide are you using?

Hei

2014-08-20 13:21:44

From: therossity
What hide are you using?


Not the original poster of this comment, but I've done about 10000 of each hide, and I've noticed this mainly on Red Dhides.

Ross

2014-08-20 13:28:25

From: Hei
Not the original poster of this comment, but I've done about 10000 of each hide, and I've noticed this mainly on Red Dhides.


Interesting. I haven't tested anything besides red dhide haha.

His error seems like that's all his script did, did yours only happen every once in a while? And are you using v2.0? Because I was pretty sure that fail safe for that should have kicked in.

Hei

2014-08-20 13:34:48

From: therossity
Interesting. I haven't tested anything besides red dhide haha.

His error seems like that's all his script did, did yours only happen every once in a while? And are you using v2.0? Because I was pretty sure that fail safe for that should have kicked in.


Woah, you work fast, I didn't even notice that you released 2.0. Will continue testing.

(The issue was in the last build and happened from time to time, so my problem was probably only a small issue)

e: New build is amazing, you've outdone yourself.

Ross

2014-08-20 14:08:45

From: Hei
Woah, you work fast, I didn't even notice that you released 2.0. Will continue testing.

(The issue was in the last build and happened from time to time, so my problem was probably only a small issue)

e: New build is amazing, you've outdone yourself.



Thank you, like I said in the OP the community here has helped me immensely.

pipos1

2014-08-20 14:24:19

im having issue whem im tanning black dragonhides (didnt tried any other atm) it do walk to Ellis it does tan the hides but it doesnt go to bank and in the debug it doesnt say i tanned the hides… it just finding Ellis and click tan again

im in directx mode

edit: tried OpenGL and its only ''Pressing tan'' even when the hide is already tanned

Ross

2014-08-20 19:07:14

From: pipos1
im having issue whem im tanning black dragonhides (didnt tried any other atm) it do walk to Ellis it does tan the hides but it doesnt go to bank and in the debug it doesnt say i tanned the hides… it just finding Ellis and click tan again

im in directx mode

edit: tried OpenGL and its only ''Pressing tan'' even when the hide is already tanned



Which version are you using? Can you put what exactly is in the debug box?

Tel Riker

2014-08-20 19:46:34

I have 3k green dragonhide in my bank. The script will take out the dragonhide, walk to the tanning shop where Ellis IS (at some points literally standing beside him) but he won't click on him to tan the hides. Then when I checked simba it showed that runs were being completed, with the amount of hides supposedly tanned, even though my character was standing in exactly the same place. He didn't even run back to the bank to get more hides

Ross

2014-08-20 21:14:19

From: Tel Riker
I have 3k green dragonhide in my bank. The script will take out the dragonhide, walk to the tanning shop where Ellis IS (at some points literally standing beside him) but he won't click on him to tan the hides. Then when I checked simba it showed that runs were being completed, with the amount of hides supposedly tanned, even though my character was standing in exactly the same place. He didn't even run back to the bank to get more hides


As asked above, what version are you using? And paste what it says in the debug when the error occurs. It's working fine for me, so I don't know how to help you based solely on the error you are having.

Tel Riker

2014-08-20 23:18:45

From: therossity
As asked above, what version are you using? And paste what it says in the debug when the error occurs. It's working fine for me, so I don't know how to help you based solely on the error you are having.


That's the thing. As far as I can tell it doesn't come up with an error, it just thinks it's completing the trips when it's not.

Edit: version 2 afaik. The original link n the first post.

Ross

2014-08-20 23:38:55

From: Tel Riker
That's the thing. As far as I can tell it doesn't come up with an error, it just thinks it's completing the trips when it's not.

Edit: version 2 afaik. The original link n the first post.


Make sure it's v2.0, if you look at the simba window it will tell you what version it is. Also make sure that you are filling in the correct hide at the top of the script. I just bought 1k green d'hides and cannot replicate your issue. Are you sure that you've set up Simba properly?

Xiiiii

2014-08-21 02:11:26

2.0 on DirectX seems to register tanned hides as untanned hides, and will stay inside the tanning place trying to re-tan the already tanned hides (tried with black d'hide)

pipos1

2014-08-21 09:57:08

From: therossity
Which version are you using? Can you put what exactly is in the debug box?

im using the new 2.0 version and the debug box is saying
''Pressing tan''
''Pressing tan''
''Pressing tan''
…

Ross

2014-08-21 10:15:34

From: Tel Riker
That's the thing. As far as I can tell it doesn't come up with an error, it just thinks it's completing the trips when it's not.

Edit: version 2 afaik. The original link n the first post.


From: Xiiiii
2.0 on DirectX seems to register tanned hides as untanned hides, and will stay inside the tanning place trying to re-tan the already tanned hides (tried with black d'hide)


From: pipos1
im using the new 2.0 version and the debug box is saying
''Pressing tan''
''Pressing tan''
''Pressing tan''
…



If you are all using black hides I was able to recreate the issue. I'm about to post an update.

Edit: Update 2.1 has been posted.

pipos1

2014-08-21 17:16:02

From: therossity
If you are all using black hides I was able to recreate the issue. I'm about to post an update.

Edit: Update 2.1 has been posted.


trying v2.1 i will give you feedback soon :)

Ross

2014-08-21 17:21:10

From: pipos1
trying v2.1 i will give you feedback soon :)


Thanks! Need all I can get.

pipos1

2014-08-21 17:34:06

From: therossity
Thanks! Need all I can get.


atm its working like a charm did about 200 hides and i have 3k left and atm not even 1 inv failed :D

Ross

2014-08-21 17:47:41

From: pipos1
atm its working like a charm did about 200 hides and i have 3k left and atm not even 1 inv failed :D


That's great! Glad it's working out.

pipos1

2014-08-21 19:08:35

i babysitted the script the whole time and it was flawless you did an awesome script :D [ATTACH=CONFIG]23869[/ATTACH]

nutta124

2014-08-29 13:18:17

where do i download the map picture? ~.~

Ross

2014-08-29 15:35:33

From: nutta124
where do i download the map picture? ~.~



Sorry, just restored the script and it didn't come with it. Check again.

nutta124

2014-08-29 16:36:29

thank. it ran flawlessly

==========TheRossity Al Kharid Tanner=========
Trips completed: 43
Leather Tanned: 1204
Profit: 633304
Hides tanned per hour: 2295
Profit per hour: 1207170
Time running: 31m 29s
==============================================

Ross

2014-08-29 16:40:06

From: nutta124
thank. it ran flawlessly


Thanks for the proggy :)

The Mayor

2014-08-29 16:51:51

This is better in Juniors I think

Ross

2014-08-29 17:00:23

From: The Mayor
This is better in Juniors I think


Agreed.

P.S. Your help would be greatly appreciated here. :D

toxjq

2014-08-30 02:35:15

+1 juniors :)

pipos1

2014-09-08 00:07:28

hey ! :) i was about to use your script and i saw that u had a know bug with the walking so i decided to give it a try i think i made it flawless walking/running
i babysitted it for 10min running and 10min walking and never landed outside of bank or tanner area :)
so here the code if you want to give it a try :)
 procedure walkToEllis();
var
pathToEllis: TPointArray;
begin
pathToEllis := [Point(85, 262), Point(108, 253), Point(108, 221), Point(121, 194), Point(101, 158)];

writeLn('Walking to Ellis');

if SPS.walkPath(pathToEllis) then
minimap.waitPlayerMoving(250)
else
writeLn('Path to Ellis failed.');
end;

____________________________________________________________________________________________


procedure walkToBank();
var
pathToBank: TPointArray;
begin
minimap.setAngle(MM_DIRECTION_NORTH);
pathToBank := [Point(100, 155), Point(124, 156), Point(131, 184), Point(113, 206), Point(106, 230), Point(87, 260)];

writeLn('Walking back to Bank');

if SPS.walkPath(pathToBank) then
minimap.waitPlayerMoving(250)
else
writeLn('Path to Bank failed.');
end

Ross

2014-09-08 08:41:59

From: pipos1
hey ! :) i was about to use your script and i saw that u had a know bug with the walking so i decided to give it a try i think i made it flawless walking/running
i babysitted it for 10min running and 10min walking and never landed outside of bank or tanner area :)
so here the code if you want to give it a try :)
 procedure walkToEllis();
var
pathToEllis: TPointArray;
begin
pathToEllis := [Point(85, 262), Point(108, 253), Point(108, 221), Point(121, 194), Point(101, 158)];

writeLn('Walking to Ellis');

if SPS.walkPath(pathToEllis) then
minimap.waitPlayerMoving(250)
else
writeLn('Path to Ellis failed.');
end;

____________________________________________________________________________________________


procedure walkToBank();
var
pathToBank: TPointArray;
begin
minimap.setAngle(MM_DIRECTION_NORTH);
pathToBank := [Point(100, 155), Point(124, 156), Point(131, 184), Point(113, 206), Point(106, 230), Point(87, 260)];

writeLn('Walking back to Bank');

if SPS.walkPath(pathToBank) then
minimap.waitPlayerMoving(250)
else
writeLn('Path to Bank failed.');
end


Hmm, yeah I'll test this out later this evening. So you just adjusted the SPS points?

pipos1

2014-09-08 10:35:26

From: therossity
Hmm, yeah I'll test this out later this evening. So you just adjusted the SPS points?

yeah i adjusted the sps points with the sps path generator until i saw that it was flawless :p

nkd2009

2014-09-12 18:32:54

After opening up the bank, it's mousing over the hides but not withdrawing them. Did I set something up wrong?

Ross

2014-09-12 21:49:00

From: nkd2009
After opening up the bank, it's mousing over the hides but not withdrawing them. Did I set something up wrong?


Not sure, I haven't used this in a while. Although I don't think that should be an issue. Did you enter the right hide type? Is the hide in the first bank slot? I'm going to edit this later to have presets and update the SPS paths.

nkd2009

2014-09-12 23:31:01

It's something with my directx plugin, i switched over to openGL and it worked great. although you might want to add regular tanned hides not just hard leather as they do not cost 3 coins (which is nothing) and they sell for just as much (and sell more easily in the GE). Good script, thank you for posting it.

On a side note, do you have any idea what could be causing my problems with directx? All i needed to do was put it in my plugins folder? Right?

Ross

2014-09-13 10:04:43

From: nkd2009
It's something with my directx plugin, i switched over to openGL and it worked great. although you might want to add regular tanned hides not just hard leather as they do not cost 3 coins (which is nothing) and they sell for just as much (and sell more easily in the GE). Good script, thank you for posting it.

On a side note, do you have any idea what could be causing my problems with directx? All i needed to do was put it in my plugins folder? Right?



I'll look into that as well. I'm currently working on a very big script for myself but should get around to it soon!

And that should be it, maybe you grabbed an outdated plugin? Do you have the newest Simba rc-3? Simba may say you're up to date, but you might not be! Lot's of bugs flying around atm.

Lipcot

2014-09-30 15:24:48

in regards to the SPS bugging, (just imagining here really) cant it be that as the player is moving, the minimap moves and as the mouse is slow it missclicks outside of the bank/tanner? maybe if you mousespeed := 30 + random 10 or sth like that you could get it fixed?

Have you thought about adding familiar support? (with the new bank to BoB its easier) and energy pots?

Ross

2014-09-30 16:52:09

From: undorak7
in regards to the SPS bugging, (just imagining here really) cant it be that as the player is moving, the minimap moves and as the mouse is slow it missclicks outside of the bank/tanner? maybe if you mousespeed := 30 + random 10 or sth like that you could get it fixed?

Have you thought about adding familiar support? (with the new bank to BoB its easier) and energy pots?


Sorry, I haven't looked at or worked on this script in a long time.
I will fix the bugs and add familiar support soon, I have just been working on more personal and public scripts.

Sorry to neglect the Jrs!
I will get to this soon. :)

Lipcot

2014-09-30 17:12:51

From: Ross
Sorry, I haven't looked at or worked on this script in a long time.
I will fix the bugs and add familiar support soon, I have just been working on more personal and public scripts.

Sorry to neglect the Jrs!
I will get to this soon. :)


hah no probs! i just used it for a bit to try it and give some feedback :P , didnt check any dates, its an awesome script anyways!

masterBB

2014-11-14 11:10:37

Moved to outdated on request

xCrazyGuyNL

2014-12-01 17:24:59

Don't know why it's in the outdated version, works great for me :D

Ross

2014-12-01 19:44:03

From: xCrazyGuyNL
Don't know why it's in the outdated version, works great for me :D


I just haven't supported it for a while. It needs major work, glad it's working for you though!

Ross

2014-12-23 21:00:49

Updated and re-released!

Now tans in Burthorpe. Cleaned this script up a good bit, but it's still very simple. Not intended for gold-farming. It was very funny looking at how I used to code not too long ago. Enjoy!

masterBB

2014-12-24 03:49:03

Not sure what tanning is, but I think it belongs in money making, right?

Harrier

2014-12-24 07:43:45

From: masterBB
Not sure what tanning is, but I think it belongs in money making, right?

Yes, Mr. Nooblet.

Cyanempire

2014-12-24 09:27:03

Grats on Re-release :)

Ross

2014-12-24 16:54:01

From: masterBB
Not sure what tanning is, but I think it belongs in money making, right?


Yes but the section you moved it to is a hidden section basically. Just move it to Jr. Members RS3 scripts.

masterBB

2014-12-24 17:29:22

From: Ross
Yes but the section you moved it to is a hidden section basically. Just move it to Jr. Members RS3 scripts.


yo!

Dark_Flame

2014-12-24 22:11:28

From: masterBB
yo!


There's also scripts there are in a sub-section of the section Jr. Members RS3 Scripts:

https://villavu.com/forum/showthread.php?t=89820
https://villavu.com/forum/showthread.php?t=109924

Will those be moved?

masterBB

2014-12-25 08:49:13

From: Dark_Flame
There's also scripts there are in a sub-section of the section Jr. Members RS3 Scripts:

https://villavu.com/forum/showthread.php?t=89820
https://villavu.com/forum/showthread.php?t=109924

Will those be moved?


Done. I will do a more complete check later on.

warlord94

2014-12-26 20:55:44

Familiar support possible?

Ross

2014-12-27 00:20:56

From: warlord94
Familiar support possible?


Explain the steps and I might be able to implement them!

warlord94

2014-12-27 01:53:54

Was just wondering if it's possible and if so what I could do to help since I have access to terrorbird and war tortoise. Anyway, I'm having an issue where I start the script, it looks up prices, then the debug window goes blank and nothing happens for about 20 seconds then it just says "Successfully executed."

Tried this standing at Burthope bank both with and without hides already in inventory.


Edit: it appears the script is struggling to find the color of the bank since it hovers around the arch between the banker and Fara with a little o and x box. If you zoom in to where the arch isn't visible, the script runs fine but eventually gets stuck at the banking phase or at the tanner phase because it keeps adjusting the camera angles in ways that seem to prevent it from finding what it needs to proceed. Have to manually adjust the camera.

Ross

2014-12-27 02:39:12

From: warlord94
Was just wondering if it's possible and if so what I could do to help since I have access to terrorbird and war tortoise. Anyway, I'm having an issue where I start the script, it looks up prices, then the debug window goes blank and nothing happens for about 20 seconds then it just says "Successfully executed."

Tried this standing at Burthope bank both with and without hides already in inventory.


Edit: it appears the script is struggling to find the color of the bank since it hovers around the arch between the banker and Fara with a little o and x box. If you zoom in to where the arch isn't visible, the script runs fine but eventually gets stuck at the banking phase or at the tanner phase because it keeps adjusting the camera angles in ways that seem to prevent it from finding what it needs to proceed. Have to manually adjust the camera.


Odd, it shouldn't move the camera at all since I didn't write that as part of the script. Try it on an emptier world though, that bank is buggy when lots of people are around.

warlord94

2014-12-27 10:41:31

From: Ross
Odd, it shouldn't move the camera at all since I didn't write that as part of the script. Try it on an emptier world though, that bank is buggy when lots of people are around.


Are you 100% sure there isn't some old code in there or something? It just clicked the compass to adjust it to North.

Ross

2014-12-27 11:35:21

From: warlord94
Are you 100% sure there isn't some old code in there or something? It just clicked the compass to adjust it to North.


Oh, no it should always be north. I guess I misunderstood you. If you adjust the camera it will fix it to be north. Make sure you're also zooomed all the way out.

Machu

2014-12-27 15:43:36

Get stuck either at bank or at tanner. Need help :/

Im New Sry

2015-01-04 12:10:46

I can't get it to run :( I've tried both DirectX and OGL plugins. It just logs me in and then stands there, does nothing, eventually logs out.

---- TPlayer.loginToLobby()
------ *****************()
------ Entering username...
------ Entering password...
-------- Saving screenshot: IP_address.png
------ Found lobby screen
---- TPlayer.loginToLobby(): True
------ TRSLobby.findPlayButton(): result = True

No debug after that whatsoever. At the same time I'm running Sin's Superheater just fine, on DirectX.